@pnp/cli-microsoft365 6.0.0-beta.c5b75e1 → 6.0.0-beta.c63e3b2

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 (565) hide show
  1. package/.eslintrc.js +17 -2
  2. package/README.md +5 -0
  3. package/dist/Command.js +16 -2
  4. package/dist/appInsights.js +2 -0
  5. package/dist/cli/Cli.js +7 -10
  6. package/dist/m365/aad/commands/app/app-add.js +40 -17
  7. package/dist/m365/aad/commands/app/app-get.js +3 -2
  8. package/dist/m365/aad/commands/app/app-list.js +38 -0
  9. package/dist/m365/aad/commands/app/app-remove.js +3 -2
  10. package/dist/m365/aad/commands/app/app-role-add.js +3 -2
  11. package/dist/m365/aad/commands/app/app-role-list.js +3 -2
  12. package/dist/m365/aad/commands/app/app-role-remove.js +3 -2
  13. package/dist/m365/aad/commands/app/app-set.js +3 -2
  14. package/dist/m365/aad/commands/approleassignment/approleassignment-add.js +5 -4
  15. package/dist/m365/aad/commands/approleassignment/approleassignment-list.js +3 -2
  16. package/dist/m365/aad/commands/approleassignment/approleassignment-remove.js +5 -4
  17. package/dist/m365/aad/commands/o365group/o365group-conversation-post-list.js +2 -1
  18. package/dist/m365/aad/commands/o365group/o365group-list.js +3 -2
  19. package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-list.js +3 -2
  20. package/dist/m365/aad/commands/o365group/o365group-teamify.js +3 -2
  21. package/dist/m365/aad/commands/o365group/o365group-user-add.js +2 -1
  22. package/dist/m365/aad/commands/o365group/o365group-user-remove.js +2 -1
  23. package/dist/m365/aad/commands/oauth2grant/oauth2grant-list.js +2 -1
  24. package/dist/m365/aad/commands/oauth2grant/oauth2grant-remove.js +2 -1
  25. package/dist/m365/aad/commands/oauth2grant/oauth2grant-set.js +2 -1
  26. package/dist/m365/aad/commands/sp/sp-add.js +3 -2
  27. package/dist/m365/aad/commands/sp/sp-get.js +3 -2
  28. package/dist/m365/aad/commands/user/user-get.js +6 -4
  29. package/dist/m365/aad/commands/user/user-guest-add.js +103 -0
  30. package/dist/m365/aad/commands/user/user-hibp.js +2 -1
  31. package/dist/m365/aad/commands/user/user-list.js +2 -1
  32. package/dist/m365/aad/commands/user/user-set.js +2 -1
  33. package/dist/m365/aad/commands/user/user-signin-list.js +5 -4
  34. package/dist/m365/aad/commands.js +2 -0
  35. package/dist/m365/adaptivecard/commands/adaptivecard-send.js +4 -4
  36. package/dist/m365/base/DateAndPeriodBasedReport.js +3 -2
  37. package/dist/m365/base/PeriodBasedReport.js +2 -1
  38. package/dist/m365/base/SpoCommand.js +12 -11
  39. package/dist/m365/booking/commands/business/business-get.js +2 -1
  40. package/dist/m365/cli/commands/config/config-set.js +1 -0
  41. package/dist/m365/commands/login.js +6 -1
  42. package/dist/m365/commands/status.js +6 -1
  43. package/dist/m365/file/commands/file-list.js +2 -1
  44. package/dist/m365/flow/commands/environment/environment-get.js +2 -1
  45. package/dist/m365/flow/commands/flow-disable.js +2 -1
  46. package/dist/m365/flow/commands/flow-enable.js +2 -1
  47. package/dist/m365/flow/commands/flow-export.js +5 -4
  48. package/dist/m365/flow/commands/flow-get.js +2 -1
  49. package/dist/m365/flow/commands/flow-list.js +2 -1
  50. package/dist/m365/flow/commands/flow-remove.js +2 -1
  51. package/dist/m365/flow/commands/run/run-cancel.js +2 -1
  52. package/dist/m365/flow/commands/run/run-get.js +2 -1
  53. package/dist/m365/flow/commands/run/run-list.js +2 -1
  54. package/dist/m365/flow/commands/run/run-resubmit.js +3 -2
  55. package/dist/m365/outlook/commands/mail/mail-send.js +57 -32
  56. package/dist/m365/outlook/commands/message/message-get.js +97 -0
  57. package/dist/m365/outlook/commands/message/message-list.js +2 -1
  58. package/dist/m365/outlook/commands/message/message-move.js +2 -1
  59. package/dist/m365/outlook/commands.js +1 -0
  60. package/dist/m365/pa/commands/app/app-get.js +2 -1
  61. package/dist/m365/pa/commands/app/app-list.js +2 -1
  62. package/dist/m365/pa/commands/app/app-remove.js +2 -1
  63. package/dist/m365/pa/commands/connector/connector-export.js +2 -1
  64. package/dist/m365/pa/commands/connector/connector-list.js +2 -1
  65. package/dist/m365/pa/commands/environment/environment-get.js +2 -1
  66. package/dist/m365/planner/commands/bucket/bucket-get.js +5 -8
  67. package/dist/m365/planner/commands/plan/plan-get.js +11 -31
  68. package/dist/m365/planner/commands/task/task-add.js +1 -1
  69. package/dist/m365/planner/commands/task/task-checklistitem-add.js +3 -2
  70. package/dist/m365/planner/commands/task/task-checklistitem-list.js +2 -1
  71. package/dist/m365/planner/commands/task/task-checklistitem-remove.js +2 -1
  72. package/dist/m365/planner/commands/task/task-get.js +2 -1
  73. package/dist/m365/planner/commands/task/task-list.js +4 -3
  74. package/dist/m365/planner/commands/task/task-reference-add.js +2 -2
  75. package/dist/m365/planner/commands/task/task-reference-list.js +2 -1
  76. package/dist/m365/planner/commands/task/task-reference-remove.js +1 -1
  77. package/dist/m365/planner/commands/task/task-set.js +2 -2
  78. package/dist/m365/pp/commands/Environment.js +3 -0
  79. package/dist/m365/pp/commands/card/card-clone.js +122 -0
  80. package/dist/m365/pp/commands/card/card-get.js +110 -0
  81. package/dist/m365/pp/commands/card/card-list.js +68 -0
  82. package/dist/m365/pp/commands/card/card-remove.js +130 -0
  83. package/dist/m365/pp/commands/dataverse/dataverse-table-get.js +77 -0
  84. package/dist/m365/pp/commands/dataverse/dataverse-table-list.js +69 -0
  85. package/dist/m365/pp/commands/dataverse/dataverse-table-remove.js +95 -0
  86. package/dist/m365/pp/commands/environment/environment-get.js +75 -0
  87. package/dist/m365/pp/commands/gateway/gateway-get.js +71 -0
  88. package/dist/m365/pp/commands/managementapp/managementapp-add.js +3 -2
  89. package/dist/m365/pp/commands/solution/Solution.js +3 -0
  90. package/dist/m365/pp/commands/solution/solution-get.js +117 -0
  91. package/dist/m365/pp/commands/solution/solution-list.js +81 -0
  92. package/dist/m365/pp/commands/solution/solution-publisher-get.js +107 -0
  93. package/dist/m365/pp/commands/solution/solution-publisher-list.js +78 -0
  94. package/dist/m365/pp/commands/solution/solution-publisher-remove.js +130 -0
  95. package/dist/m365/pp/commands/solution/solution-remove.js +130 -0
  96. package/dist/m365/pp/commands/tenant/tenant-settings-list.js +45 -0
  97. package/dist/m365/pp/commands.js +17 -1
  98. package/dist/m365/search/commands/externalconnection/externalconnection-get.js +3 -2
  99. package/dist/m365/search/commands/externalconnection/externalconnection-remove.js +3 -2
  100. package/dist/m365/spfx/commands/project/project-doctor/{doctor-1.16.0-beta.1.js → doctor-1.16.0.js} +6 -6
  101. package/dist/m365/spfx/commands/project/project-doctor.js +5 -2
  102. package/dist/m365/spfx/commands/project/project-externalize.js +4 -1
  103. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010001_YORC_version.js +2 -1
  104. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010002_YORC_isCreatingSolution.js +2 -1
  105. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010003_YORC_packageManager.js +2 -1
  106. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010004_YORC_componentType.js +2 -1
  107. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010005_YORC_environment.js +2 -1
  108. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010006_YORC_framework.js +3 -2
  109. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010007_YORC_isDomainIsolated.js +2 -1
  110. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010008_YORC_nodeVersion.js +2 -1
  111. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010009_YORC_sdkVersions_microsoft_graph_client.js +56 -0
  112. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010010_YORC_sdkVersions_teams_js.js +56 -0
  113. package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.14.0.js +0 -2
  114. package/dist/m365/spfx/commands/project/project-upgrade/{upgrade-1.16.0-beta.1.js → upgrade-1.16.0.js} +44 -28
  115. package/dist/m365/spfx/commands/project/project-upgrade.js +17 -16
  116. package/dist/m365/spfx/commands/spfx-doctor.js +54 -9
  117. package/dist/m365/spo/commands/app/app-get.js +2 -1
  118. package/dist/m365/spo/commands/app/app-install.js +2 -1
  119. package/dist/m365/spo/commands/app/app-remove.js +2 -1
  120. package/dist/m365/spo/commands/app/app-retract.js +2 -1
  121. package/dist/m365/spo/commands/app/app-teamspackage-download.js +2 -1
  122. package/dist/m365/spo/commands/app/app-uninstall.js +2 -1
  123. package/dist/m365/spo/commands/app/app-upgrade.js +2 -1
  124. package/dist/m365/spo/commands/contenttype/contenttype-add.js +82 -43
  125. package/dist/m365/spo/commands/contenttype/contenttype-field-remove.js +53 -21
  126. package/dist/m365/spo/commands/contenttype/contenttype-field-set.js +2 -2
  127. package/dist/m365/spo/commands/contenttype/contenttype-get.js +35 -14
  128. package/dist/m365/spo/commands/contenttype/contenttype-list.js +2 -1
  129. package/dist/m365/spo/commands/contenttype/contenttype-remove.js +3 -2
  130. package/dist/m365/spo/commands/customaction/customaction-get.js +3 -2
  131. package/dist/m365/spo/commands/customaction/customaction-remove.js +3 -2
  132. package/dist/m365/spo/commands/customaction/customaction-set.js +2 -1
  133. package/dist/m365/spo/commands/eventreceiver/EventReceiver.js +3 -0
  134. package/dist/m365/spo/commands/eventreceiver/eventreceiver-get.js +43 -27
  135. package/dist/m365/spo/commands/eventreceiver/eventreceiver-list.js +4 -3
  136. package/dist/m365/spo/commands/eventreceiver/eventreceiver-remove.js +167 -0
  137. package/dist/m365/spo/commands/field/field-add.js +26 -1
  138. package/dist/m365/spo/commands/field/field-set.js +23 -13
  139. package/dist/m365/spo/commands/file/file-add.js +14 -13
  140. package/dist/m365/spo/commands/file/file-checkin.js +4 -3
  141. package/dist/m365/spo/commands/file/file-checkout.js +3 -2
  142. package/dist/m365/spo/commands/file/file-copy.js +27 -40
  143. package/dist/m365/spo/commands/file/file-get.js +3 -2
  144. package/dist/m365/spo/commands/file/file-move.js +26 -38
  145. package/dist/m365/spo/commands/file/file-remove.js +3 -2
  146. package/dist/m365/spo/commands/file/file-rename.js +22 -18
  147. package/dist/m365/spo/commands/file/file-roleassignment-add.js +217 -0
  148. package/dist/m365/spo/commands/file/file-roleassignment-remove.js +180 -0
  149. package/dist/m365/spo/commands/file/file-roleinheritance-break.js +129 -0
  150. package/dist/m365/spo/commands/file/file-roleinheritance-reset.js +1 -1
  151. package/dist/m365/spo/commands/file/file-sharinginfo-get.js +1 -1
  152. package/dist/m365/spo/commands/file/file-version-clear.js +114 -0
  153. package/dist/m365/spo/commands/file/file-version-get.js +104 -0
  154. package/dist/m365/spo/commands/file/file-version-list.js +96 -0
  155. package/dist/m365/spo/commands/file/file-version-remove.js +119 -0
  156. package/dist/m365/spo/commands/file/file-version-restore.js +119 -0
  157. package/dist/m365/spo/commands/folder/folder-get.js +3 -2
  158. package/dist/m365/spo/commands/folder/folder-list.js +35 -12
  159. package/dist/m365/spo/commands/folder/folder-remove.js +2 -1
  160. package/dist/m365/spo/commands/folder/folder-roleassignment-add.js +215 -0
  161. package/dist/m365/spo/commands/folder/folder-roleassignment-remove.js +169 -0
  162. package/dist/m365/spo/commands/folder/folder-roleinheritance-break.js +104 -0
  163. package/dist/m365/spo/commands/folder/folder-roleinheritance-reset.js +100 -0
  164. package/dist/m365/spo/commands/group/AssociatedGroupPropertiesCollection.js +3 -0
  165. package/dist/m365/spo/commands/group/group-get.js +3 -2
  166. package/dist/m365/spo/commands/group/group-list.js +49 -10
  167. package/dist/m365/spo/commands/group/{group-user-add.js → group-member-add.js} +17 -16
  168. package/dist/m365/spo/commands/group/{group-user-list.js → group-member-list.js} +19 -18
  169. package/dist/m365/spo/commands/group/{group-user-remove.js → group-member-remove.js} +18 -17
  170. package/dist/m365/spo/commands/hubsite/hubsite-connect.js +93 -18
  171. package/dist/m365/spo/commands/hubsite/hubsite-disconnect.js +69 -13
  172. package/dist/m365/spo/commands/list/list-contenttype-add.js +21 -18
  173. package/dist/m365/spo/commands/list/list-contenttype-default-set.js +59 -47
  174. package/dist/m365/spo/commands/list/list-contenttype-list.js +16 -8
  175. package/dist/m365/spo/commands/list/list-contenttype-remove.js +16 -8
  176. package/dist/m365/spo/commands/list/list-get.js +1 -1
  177. package/dist/m365/spo/commands/list/list-roleassignment-add.js +14 -32
  178. package/dist/m365/spo/commands/list/list-roleassignment-remove.js +12 -23
  179. package/dist/m365/spo/commands/list/list-roleinheritance-break.js +14 -6
  180. package/dist/m365/spo/commands/list/list-roleinheritance-reset.js +14 -6
  181. package/dist/m365/spo/commands/list/list-set.js +31 -8
  182. package/dist/m365/spo/commands/list/list-view-field-add.js +20 -6
  183. package/dist/m365/spo/commands/list/list-view-field-remove.js +19 -5
  184. package/dist/m365/spo/commands/list/list-view-field-set.js +19 -5
  185. package/dist/m365/spo/commands/list/list-view-list.js +14 -10
  186. package/dist/m365/spo/commands/list/list-view-remove.js +17 -8
  187. package/dist/m365/spo/commands/list/list-view-set.js +19 -7
  188. package/dist/m365/spo/commands/list/list-webhook-add.js +19 -11
  189. package/dist/m365/spo/commands/list/list-webhook-get.js +17 -10
  190. package/dist/m365/spo/commands/list/list-webhook-list.js +17 -42
  191. package/dist/m365/spo/commands/list/list-webhook-remove.js +19 -11
  192. package/dist/m365/spo/commands/list/list-webhook-set.js +27 -20
  193. package/dist/m365/spo/commands/listitem/listitem-add.js +24 -14
  194. package/dist/m365/spo/commands/listitem/listitem-attachment-list.js +18 -8
  195. package/dist/m365/spo/commands/listitem/listitem-get.js +18 -8
  196. package/dist/m365/spo/commands/listitem/listitem-isrecord.js +20 -10
  197. package/dist/m365/spo/commands/listitem/listitem-list.js +24 -17
  198. package/dist/m365/spo/commands/listitem/listitem-record-declare.js +19 -12
  199. package/dist/m365/spo/commands/listitem/listitem-record-undeclare.js +24 -21
  200. package/dist/m365/spo/commands/listitem/listitem-remove.js +19 -11
  201. package/dist/m365/spo/commands/listitem/listitem-roleassignment-add.js +239 -0
  202. package/dist/m365/spo/commands/listitem/listitem-roleassignment-remove.js +12 -23
  203. package/dist/m365/spo/commands/listitem/listitem-roleinheritance-break.js +13 -5
  204. package/dist/m365/spo/commands/listitem/listitem-roleinheritance-reset.js +13 -5
  205. package/dist/m365/spo/commands/listitem/listitem-set.js +52 -44
  206. package/dist/m365/spo/commands/page/Page.js +3 -2
  207. package/dist/m365/spo/commands/page/page-add.js +2 -1
  208. package/dist/m365/spo/commands/page/page-clientsidewebpart-add.js +8 -10
  209. package/dist/m365/spo/commands/page/page-control-get.js +2 -1
  210. package/dist/m365/spo/commands/page/page-control-list.js +2 -1
  211. package/dist/m365/spo/commands/page/page-control-set.js +3 -2
  212. package/dist/m365/spo/commands/page/page-get.js +2 -1
  213. package/dist/m365/spo/commands/page/page-header-set.js +6 -5
  214. package/dist/m365/spo/commands/page/page-section-add.js +4 -3
  215. package/dist/m365/spo/commands/page/page-set.js +2 -1
  216. package/dist/m365/spo/commands/roledefinition/roledefinition-list.js +15 -2
  217. package/dist/m365/spo/commands/site/site-add.js +4 -11
  218. package/dist/m365/spo/commands/site/site-apppermission-add.js +3 -2
  219. package/dist/m365/spo/commands/site/site-hubsite-connect.js +76 -0
  220. package/dist/m365/spo/commands/site/site-hubsite-disconnect.js +93 -0
  221. package/dist/m365/spo/commands/{hubsite/hubsite-theme-sync.js → site/site-hubsite-theme-sync.js} +11 -11
  222. package/dist/m365/spo/commands/site/site-rename.js +2 -1
  223. package/dist/m365/spo/commands/site/site-set.js +1 -1
  224. package/dist/m365/spo/commands/sitedesign/sitedesign-get.js +4 -7
  225. package/dist/m365/spo/commands/sitescript/sitescript-add.js +2 -1
  226. package/dist/m365/spo/commands/spo-search.js +3 -2
  227. package/dist/m365/spo/commands/storageentity/storageentity-get.js +2 -1
  228. package/dist/m365/spo/commands/user/user-get.js +4 -3
  229. package/dist/m365/spo/commands/user/user-remove.js +2 -1
  230. package/dist/m365/spo/commands/userprofile/userprofile-get.js +2 -1
  231. package/dist/m365/spo/commands/web/web-add.js +2 -1
  232. package/dist/m365/spo/commands/web/web-roleassignment-add.js +14 -25
  233. package/dist/m365/spo/commands/web/web-roleassignment-remove.js +12 -16
  234. package/dist/m365/spo/commands/web/web-roleinheritance-break.js +100 -0
  235. package/dist/m365/spo/commands.js +21 -4
  236. package/dist/m365/teams/commands/Meeting.js +3 -0
  237. package/dist/m365/teams/commands/app/app-install.js +3 -2
  238. package/dist/m365/teams/commands/app/app-list.js +2 -1
  239. package/dist/m365/teams/commands/app/app-publish.js +14 -15
  240. package/dist/m365/teams/commands/app/app-update.js +2 -1
  241. package/dist/m365/teams/commands/cache/cache-remove.js +41 -10
  242. package/dist/m365/teams/commands/channel/channel-add.js +9 -9
  243. package/dist/m365/teams/commands/channel/channel-get.js +6 -5
  244. package/dist/m365/teams/commands/channel/channel-member-add.js +4 -3
  245. package/dist/m365/teams/commands/channel/channel-member-list.js +2 -1
  246. package/dist/m365/teams/commands/channel/channel-member-remove.js +2 -1
  247. package/dist/m365/teams/commands/channel/channel-member-set.js +2 -1
  248. package/dist/m365/teams/commands/channel/channel-remove.js +57 -39
  249. package/dist/m365/teams/commands/channel/channel-set.js +58 -19
  250. package/dist/m365/teams/commands/chat/chat-get.js +2 -1
  251. package/dist/m365/teams/commands/chat/chatUtil.js +2 -1
  252. package/dist/m365/teams/commands/funsettings/funsettings-list.js +2 -1
  253. package/dist/m365/teams/commands/funsettings/funsettings-set.js +2 -1
  254. package/dist/m365/teams/commands/guestsettings/guestsettings-list.js +2 -1
  255. package/dist/m365/teams/commands/guestsettings/guestsettings-set.js +2 -1
  256. package/dist/m365/teams/commands/meeting/meeting-list.js +153 -0
  257. package/dist/m365/teams/commands/membersettings/membersettings-list.js +2 -1
  258. package/dist/m365/teams/commands/membersettings/membersettings-set.js +2 -1
  259. package/dist/m365/teams/commands/messagingsettings/messagingsettings-list.js +2 -1
  260. package/dist/m365/teams/commands/messagingsettings/messagingsettings-set.js +2 -1
  261. package/dist/m365/teams/commands/report/report-directroutingcalls.js +3 -2
  262. package/dist/m365/teams/commands/report/report-pstncalls.js +3 -2
  263. package/dist/m365/teams/commands/tab/tab-add.js +2 -1
  264. package/dist/m365/teams/commands/tab/tab-get.js +4 -3
  265. package/dist/m365/teams/commands/tab/tab-list.js +2 -1
  266. package/dist/m365/teams/commands/tab/tab-remove.js +2 -1
  267. package/dist/m365/teams/commands/team/team-archive.js +6 -8
  268. package/dist/m365/teams/commands/team/team-clone.js +2 -1
  269. package/dist/m365/teams/commands/team/team-get.js +2 -1
  270. package/dist/m365/teams/commands/team/team-remove.js +5 -4
  271. package/dist/m365/teams/commands/team/team-set.js +2 -8
  272. package/dist/m365/teams/commands/team/team-unarchive.js +5 -4
  273. package/dist/m365/teams/commands/user/user-app-list.js +3 -2
  274. package/dist/m365/teams/commands.js +1 -0
  275. package/dist/m365/tenant/commands/security/security-alerts-list.js +2 -1
  276. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-healthissue-get.js +2 -1
  277. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-healthissue-list.js +2 -1
  278. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-message-list.js +2 -1
  279. package/dist/m365/todo/commands/list/list-get.js +89 -0
  280. package/dist/m365/todo/commands/task/task-add.js +55 -3
  281. package/dist/m365/todo/commands/task/task-get.js +108 -0
  282. package/dist/m365/todo/commands/task/task-set.js +55 -2
  283. package/dist/m365/todo/commands.js +2 -0
  284. package/dist/m365/yammer/commands/group/group-list.js +12 -27
  285. package/dist/m365/yammer/commands/user/user-get.js +3 -2
  286. package/dist/m365/yammer/commands/yammer-search.js +6 -2
  287. package/dist/utils/aadGroup.js +2 -1
  288. package/dist/utils/cache.js +81 -0
  289. package/dist/utils/md.js +8 -1
  290. package/dist/utils/pid.js +57 -0
  291. package/dist/utils/powerPlatform.js +43 -0
  292. package/dist/utils/spo.js +3 -2
  293. package/docs/docs/_clisettings.md +18 -0
  294. package/docs/docs/cmd/aad/app/app-add.md +19 -19
  295. package/docs/docs/cmd/aad/app/app-list.md +149 -0
  296. package/docs/docs/cmd/aad/user/user-guest-add.md +107 -0
  297. package/docs/docs/cmd/adaptivecard/adaptivecard-send.md +12 -5
  298. package/docs/docs/cmd/app/app-get.md +156 -0
  299. package/docs/docs/cmd/app/app-open.md +21 -1
  300. package/docs/docs/cmd/app/permission/permission-list.md +43 -0
  301. package/docs/docs/cmd/booking/business/business-get.md +107 -0
  302. package/docs/docs/cmd/booking/business/business-list.md +34 -0
  303. package/docs/docs/cmd/flow/flow-get.md +1 -1
  304. package/docs/docs/cmd/graph/schemaextension/schemaextension-add.md +4 -11
  305. package/docs/docs/cmd/graph/schemaextension/schemaextension-set.md +4 -10
  306. package/docs/docs/cmd/outlook/mail/mail-send.md +13 -0
  307. package/docs/docs/cmd/outlook/message/message-get.md +48 -0
  308. package/docs/docs/cmd/pa/app/app-get.md +184 -0
  309. package/docs/docs/cmd/pa/app/app-list.md +181 -0
  310. package/docs/docs/cmd/pa/app/app-remove.md +4 -0
  311. package/docs/docs/cmd/pa/connector/connector-export.md +4 -0
  312. package/docs/docs/cmd/pa/connector/connector-list.md +89 -0
  313. package/docs/docs/cmd/pa/environment/environment-get.md +113 -0
  314. package/docs/docs/cmd/pa/environment/environment-list.md +109 -0
  315. package/docs/docs/cmd/pa/pcf/pcf-init.md +4 -0
  316. package/docs/docs/cmd/pa/solution/solution-init.md +5 -0
  317. package/docs/docs/cmd/pa/solution/solution-reference-add.md +4 -0
  318. package/docs/docs/cmd/planner/bucket/bucket-add.md +29 -0
  319. package/docs/docs/cmd/planner/bucket/bucket-get.md +29 -0
  320. package/docs/docs/cmd/planner/bucket/bucket-list.md +30 -0
  321. package/docs/docs/cmd/planner/bucket/bucket-remove.md +4 -0
  322. package/docs/docs/cmd/planner/bucket/bucket-set.md +4 -0
  323. package/docs/docs/cmd/planner/plan/plan-add.md +123 -0
  324. package/docs/docs/cmd/planner/plan/plan-get.md +77 -8
  325. package/docs/docs/cmd/planner/plan/plan-list.md +45 -0
  326. package/docs/docs/cmd/planner/plan/plan-remove.md +4 -0
  327. package/docs/docs/cmd/planner/task/task-get.md +0 -3
  328. package/docs/docs/cmd/pp/card/card-clone.md +77 -0
  329. package/docs/docs/cmd/pp/card/card-get.md +122 -0
  330. package/docs/docs/cmd/pp/card/card-list.md +104 -0
  331. package/docs/docs/cmd/pp/card/card-remove.md +82 -0
  332. package/docs/docs/cmd/pp/dataverse/dataverse-table-get.md +120 -0
  333. package/docs/docs/cmd/pp/dataverse/dataverse-table-list.md +118 -0
  334. package/docs/docs/cmd/pp/dataverse/dataverse-table-remove.md +49 -0
  335. package/docs/docs/cmd/pp/environment/environment-get.md +346 -0
  336. package/docs/docs/cmd/pp/environment/environment-list.md +313 -1
  337. package/docs/docs/cmd/pp/gateway/gateway-get.md +56 -0
  338. package/docs/docs/cmd/pp/gateway/gateway-list.md +35 -0
  339. package/docs/docs/cmd/pp/managementapp/managementapp-add.md +23 -0
  340. package/docs/docs/cmd/pp/managementapp/managementapp-list.md +27 -0
  341. package/docs/docs/cmd/pp/solution/solution-get.md +86 -0
  342. package/docs/docs/cmd/pp/solution/solution-list.md +70 -0
  343. package/docs/docs/cmd/pp/solution/solution-publisher-get.md +83 -0
  344. package/docs/docs/cmd/pp/solution/solution-publisher-list.md +71 -0
  345. package/docs/docs/cmd/pp/solution/solution-publisher-remove.md +58 -0
  346. package/docs/docs/cmd/pp/solution/solution-remove.md +82 -0
  347. package/docs/docs/cmd/pp/tenant/tenant-settings-list.md +88 -0
  348. package/docs/docs/cmd/spfx/project/project-rename.md +1 -14
  349. package/docs/docs/cmd/spfx/project/project-upgrade.md +1 -1
  350. package/docs/docs/cmd/spfx/spfx-doctor.md +10 -1
  351. package/docs/docs/cmd/spo/contenttype/contenttype-add.md +20 -2
  352. package/docs/docs/cmd/spo/contenttype/contenttype-field-remove.md +22 -4
  353. package/docs/docs/cmd/spo/contenttype/contenttype-get.md +21 -3
  354. package/docs/docs/cmd/spo/customaction/customaction-add.md +3 -0
  355. package/docs/docs/cmd/spo/customaction/customaction-set.md +3 -2
  356. package/docs/docs/cmd/spo/eventreceiver/eventreceiver-get.md +44 -4
  357. package/docs/docs/cmd/spo/eventreceiver/eventreceiver-remove.md +74 -0
  358. package/docs/docs/cmd/spo/field/field-add.md +20 -2
  359. package/docs/docs/cmd/spo/field/field-set.md +15 -3
  360. package/docs/docs/cmd/spo/file/file-roleassignment-add.md +57 -0
  361. package/docs/docs/cmd/spo/file/file-roleassignment-remove.md +54 -0
  362. package/docs/docs/cmd/spo/file/file-roleinheritance-break.md +54 -0
  363. package/docs/docs/cmd/spo/file/file-version-clear.md +55 -0
  364. package/docs/docs/cmd/spo/file/file-version-get.md +76 -0
  365. package/docs/docs/cmd/spo/file/file-version-list.md +76 -0
  366. package/docs/docs/cmd/spo/file/file-version-remove.md +58 -0
  367. package/docs/docs/cmd/spo/file/file-version-restore.md +58 -0
  368. package/docs/docs/cmd/spo/folder/folder-list.md +45 -0
  369. package/docs/docs/cmd/spo/folder/folder-roleassignment-add.md +59 -0
  370. package/docs/docs/cmd/spo/folder/folder-roleassignment-remove.md +57 -0
  371. package/docs/docs/cmd/spo/folder/folder-roleinheritance-break.md +45 -0
  372. package/docs/docs/cmd/spo/folder/folder-roleinheritance-reset.md +42 -0
  373. package/docs/docs/cmd/spo/group/group-list.md +10 -1
  374. package/docs/docs/cmd/spo/group/{group-user-add.md → group-member-add.md} +11 -11
  375. package/docs/docs/cmd/spo/group/{group-user-list.md → group-member-list.md} +5 -5
  376. package/docs/docs/cmd/spo/group/group-member-remove.md +39 -0
  377. package/docs/docs/cmd/spo/hubsite/hubsite-connect.md +36 -14
  378. package/docs/docs/cmd/spo/hubsite/hubsite-data-get.md +0 -3
  379. package/docs/docs/cmd/spo/hubsite/hubsite-disconnect.md +28 -12
  380. package/docs/docs/cmd/spo/hubsite/hubsite-get.md +3 -3
  381. package/docs/docs/cmd/spo/hubsite/hubsite-register.md +2 -2
  382. package/docs/docs/cmd/spo/hubsite/hubsite-rights-grant.md +2 -5
  383. package/docs/docs/cmd/spo/hubsite/hubsite-rights-revoke.md +2 -5
  384. package/docs/docs/cmd/spo/hubsite/hubsite-set.md +2 -5
  385. package/docs/docs/cmd/spo/hubsite/hubsite-unregister.md +2 -2
  386. package/docs/docs/cmd/spo/list/list-contenttype-add.md +15 -6
  387. package/docs/docs/cmd/spo/list/list-contenttype-default-set.md +16 -7
  388. package/docs/docs/cmd/spo/list/list-contenttype-list.md +15 -6
  389. package/docs/docs/cmd/spo/list/list-contenttype-remove.md +16 -7
  390. package/docs/docs/cmd/spo/list/list-roleassignment-add.md +9 -9
  391. package/docs/docs/cmd/spo/list/list-roleassignment-remove.md +8 -8
  392. package/docs/docs/cmd/spo/list/list-roleinheritance-break.md +11 -8
  393. package/docs/docs/cmd/spo/list/list-roleinheritance-reset.md +16 -7
  394. package/docs/docs/cmd/spo/list/list-set.md +18 -6
  395. package/docs/docs/cmd/spo/list/list-view-field-add.md +14 -4
  396. package/docs/docs/cmd/spo/list/list-view-field-remove.md +11 -2
  397. package/docs/docs/cmd/spo/list/list-view-field-set.md +18 -2
  398. package/docs/docs/cmd/spo/list/list-view-list.md +16 -7
  399. package/docs/docs/cmd/spo/list/list-view-remove.md +12 -3
  400. package/docs/docs/cmd/spo/list/list-view-set.md +20 -6
  401. package/docs/docs/cmd/spo/list/list-webhook-add.md +15 -16
  402. package/docs/docs/cmd/spo/list/list-webhook-get.md +16 -7
  403. package/docs/docs/cmd/spo/list/list-webhook-list.md +13 -10
  404. package/docs/docs/cmd/spo/list/list-webhook-remove.md +12 -10
  405. package/docs/docs/cmd/spo/list/list-webhook-set.md +21 -12
  406. package/docs/docs/cmd/spo/listitem/listitem-add.md +17 -2
  407. package/docs/docs/cmd/spo/listitem/listitem-attachment-list.md +11 -2
  408. package/docs/docs/cmd/spo/listitem/listitem-get.md +11 -2
  409. package/docs/docs/cmd/spo/listitem/listitem-isrecord.md +12 -2
  410. package/docs/docs/cmd/spo/listitem/listitem-list.md +17 -8
  411. package/docs/docs/cmd/spo/listitem/listitem-record-declare.md +7 -4
  412. package/docs/docs/cmd/spo/listitem/listitem-record-undeclare.md +11 -2
  413. package/docs/docs/cmd/spo/listitem/listitem-remove.md +11 -2
  414. package/docs/docs/cmd/spo/listitem/listitem-roleassignment-add.md +81 -0
  415. package/docs/docs/cmd/spo/listitem/listitem-roleassignment-remove.md +8 -8
  416. package/docs/docs/cmd/spo/listitem/listitem-roleinheritance-break.md +7 -4
  417. package/docs/docs/cmd/spo/listitem/listitem-roleinheritance-reset.md +8 -5
  418. package/docs/docs/cmd/spo/listitem/listitem-set.md +13 -4
  419. package/docs/docs/cmd/spo/page/page-add.md +2 -2
  420. package/docs/docs/cmd/spo/page/page-clientsidewebpart-add.md +14 -19
  421. package/docs/docs/cmd/spo/page/page-control-set.md +2 -1
  422. package/docs/docs/cmd/spo/page/page-set.md +2 -2
  423. package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-grant-add.md +3 -1
  424. package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-grant-list.md +3 -1
  425. package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-grant-revoke.md +3 -3
  426. package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-permissionrequest-approve.md +3 -3
  427. package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-permissionrequest-deny.md +3 -3
  428. package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-permissionrequest-list.md +3 -1
  429. package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-set.md +3 -3
  430. package/docs/docs/cmd/spo/site/site-add.md +0 -3
  431. package/docs/docs/cmd/spo/site/site-hubsite-connect.md +37 -0
  432. package/docs/docs/cmd/spo/site/site-hubsite-disconnect.md +37 -0
  433. package/docs/docs/cmd/spo/site/site-hubsite-theme-sync.md +28 -0
  434. package/docs/docs/cmd/spo/sitedesign/sitedesign-get.md +2 -2
  435. package/docs/docs/cmd/spo/spo-get.md +23 -0
  436. package/docs/docs/cmd/spo/spo-search.md +29 -0
  437. package/docs/docs/cmd/spo/spo-set.md +4 -0
  438. package/docs/docs/cmd/spo/term/term-add.md +5 -0
  439. package/docs/docs/cmd/spo/term/term-set-add.md +6 -1
  440. package/docs/docs/cmd/spo/user/user-get.md +49 -2
  441. package/docs/docs/cmd/spo/user/user-list.md +41 -0
  442. package/docs/docs/cmd/spo/user/user-remove.md +4 -0
  443. package/docs/docs/cmd/spo/userprofile/userprofile-get.md +586 -0
  444. package/docs/docs/cmd/spo/userprofile/userprofile-set.md +4 -0
  445. package/docs/docs/cmd/spo/web/web-add.md +43 -0
  446. package/docs/docs/cmd/spo/web/web-clientsidewebpart-list.md +29 -0
  447. package/docs/docs/cmd/spo/web/web-get.md +127 -0
  448. package/docs/docs/cmd/spo/web/web-installedlanguage-list.md +29 -0
  449. package/docs/docs/cmd/spo/web/web-list.md +81 -0
  450. package/docs/docs/cmd/spo/web/web-reindex.md +4 -0
  451. package/docs/docs/cmd/spo/web/web-remove.md +4 -0
  452. package/docs/docs/cmd/spo/web/web-roleassignment-add.md +10 -6
  453. package/docs/docs/cmd/spo/web/web-roleassignment-remove.md +8 -4
  454. package/docs/docs/cmd/spo/web/web-roleinheritance-break.md +44 -0
  455. package/docs/docs/cmd/spo/web/web-roleinheritance-reset.md +4 -0
  456. package/docs/docs/cmd/spo/web/web-set.md +4 -0
  457. package/docs/docs/cmd/teams/app/app-install.md +4 -0
  458. package/docs/docs/cmd/teams/app/app-list.md +30 -0
  459. package/docs/docs/cmd/teams/app/app-publish.md +31 -1
  460. package/docs/docs/cmd/teams/app/app-remove.md +4 -0
  461. package/docs/docs/cmd/teams/app/app-uninstall.md +4 -0
  462. package/docs/docs/cmd/teams/app/app-update.md +4 -0
  463. package/docs/docs/cmd/teams/cache/cache-remove.md +4 -0
  464. package/docs/docs/cmd/teams/channel/channel-add.md +41 -4
  465. package/docs/docs/cmd/teams/channel/channel-get.md +46 -7
  466. package/docs/docs/cmd/teams/channel/channel-list.md +35 -0
  467. package/docs/docs/cmd/teams/channel/channel-member-add.md +4 -0
  468. package/docs/docs/cmd/teams/channel/channel-member-list.md +37 -0
  469. package/docs/docs/cmd/teams/channel/channel-member-remove.md +4 -0
  470. package/docs/docs/cmd/teams/channel/channel-member-set.md +35 -0
  471. package/docs/docs/cmd/teams/channel/channel-remove.md +16 -9
  472. package/docs/docs/cmd/teams/channel/channel-set.md +16 -6
  473. package/docs/docs/cmd/teams/chat/chat-get.md +42 -0
  474. package/docs/docs/cmd/teams/chat/chat-list.md +38 -0
  475. package/docs/docs/cmd/teams/chat/chat-member-list.md +35 -0
  476. package/docs/docs/cmd/teams/chat/chat-message-list.md +60 -0
  477. package/docs/docs/cmd/teams/chat/chat-message-send.md +4 -0
  478. package/docs/docs/cmd/teams/funsettings/funsettings-list.md +29 -0
  479. package/docs/docs/cmd/teams/funsettings/funsettings-set.md +4 -0
  480. package/docs/docs/cmd/teams/guestsettings/guestsettings-list.md +25 -0
  481. package/docs/docs/cmd/teams/guestsettings/guestsettings-set.md +4 -0
  482. package/docs/docs/cmd/teams/meeting/meeting-list.md +149 -0
  483. package/docs/docs/cmd/teams/membersettings/membersettings-list.md +33 -0
  484. package/docs/docs/cmd/teams/membersettings/membersettings-set.md +4 -0
  485. package/docs/docs/cmd/teams/message/message-get.md +80 -0
  486. package/docs/docs/cmd/teams/message/message-list.md +63 -0
  487. package/docs/docs/cmd/teams/message/message-reply-list.md +63 -0
  488. package/docs/docs/cmd/teams/messagingsettings/messagingsettings-list.md +31 -0
  489. package/docs/docs/cmd/teams/messagingsettings/messagingsettings-set.md +4 -0
  490. package/docs/docs/cmd/teams/report/report-deviceusagedistributionusercounts.md +35 -0
  491. package/docs/docs/cmd/teams/report/report-deviceusageusercounts.md +36 -0
  492. package/docs/docs/cmd/teams/report/report-deviceusageuserdetail.md +41 -0
  493. package/docs/docs/cmd/teams/report/report-directroutingcalls.md +49 -0
  494. package/docs/docs/cmd/teams/report/report-pstncalls.md +49 -0
  495. package/docs/docs/cmd/teams/report/report-useractivitycounts.md +39 -0
  496. package/docs/docs/cmd/teams/report/report-useractivityusercounts.md +33 -0
  497. package/docs/docs/cmd/teams/report/report-useractivityuserdetail.md +58 -0
  498. package/docs/docs/cmd/teams/tab/tab-add.md +35 -0
  499. package/docs/docs/cmd/teams/tab/tab-get.md +35 -0
  500. package/docs/docs/cmd/teams/tab/tab-list.md +43 -0
  501. package/docs/docs/cmd/teams/tab/tab-remove.md +4 -0
  502. package/docs/docs/cmd/teams/team/team-add.md +145 -0
  503. package/docs/docs/cmd/teams/team/team-archive.md +7 -3
  504. package/docs/docs/cmd/teams/team/team-clone.md +4 -3
  505. package/docs/docs/cmd/teams/team/team-get.md +78 -0
  506. package/docs/docs/cmd/teams/team/team-list.md +30 -0
  507. package/docs/docs/cmd/teams/team/team-remove.md +7 -3
  508. package/docs/docs/cmd/teams/team/team-set.md +4 -3
  509. package/docs/docs/cmd/teams/team/team-unarchive.md +5 -2
  510. package/docs/docs/cmd/teams/user/user-app-add.md +4 -0
  511. package/docs/docs/cmd/teams/user/user-app-list.md +40 -0
  512. package/docs/docs/cmd/teams/user/user-app-remove.md +4 -0
  513. package/docs/docs/cmd/teams/user/user-list.md +31 -0
  514. package/docs/docs/cmd/tenant/id/id-get.md +20 -0
  515. package/docs/docs/cmd/tenant/report/report-activeusercounts.md +35 -0
  516. package/docs/docs/cmd/tenant/report/report-activeuserdetail.md +49 -0
  517. package/docs/docs/cmd/tenant/report/report-office365activationcounts.md +32 -0
  518. package/docs/docs/cmd/tenant/report/report-office365activationsusercounts.md +30 -0
  519. package/docs/docs/cmd/tenant/report/report-office365activationsuserdetail.md +36 -0
  520. package/docs/docs/cmd/tenant/report/report-servicesusercounts.md +41 -0
  521. package/docs/docs/cmd/tenant/security/security-alerts-list.md +105 -0
  522. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-health-get.md +87 -0
  523. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-health-list.md +91 -0
  524. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-healthissue-get.md +62 -0
  525. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-healthissue-list.md +51 -0
  526. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-message-get.md +64 -0
  527. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-message-list.md +52 -0
  528. package/docs/docs/cmd/todo/list/list-add.md +32 -1
  529. package/docs/docs/cmd/todo/list/list-get.md +61 -0
  530. package/docs/docs/cmd/todo/list/list-list.md +31 -0
  531. package/docs/docs/cmd/todo/list/list-remove.md +10 -6
  532. package/docs/docs/cmd/todo/list/list-set.md +9 -5
  533. package/docs/docs/cmd/todo/task/task-add.md +88 -5
  534. package/docs/docs/cmd/todo/task/task-get.md +75 -0
  535. package/docs/docs/cmd/todo/task/task-list.md +47 -0
  536. package/docs/docs/cmd/todo/task/task-remove.md +9 -4
  537. package/docs/docs/cmd/todo/task/task-set.md +88 -7
  538. package/docs/docs/cmd/util/accesstoken/accesstoken-get.md +20 -0
  539. package/docs/docs/cmd/viva/connections/connections-app-create.md +4 -0
  540. package/docs/docs/cmd/yammer/group/group-list.md +65 -0
  541. package/docs/docs/cmd/yammer/group/group-user-add.md +4 -0
  542. package/docs/docs/cmd/yammer/group/group-user-remove.md +4 -0
  543. package/docs/docs/cmd/yammer/message/message-add.md +55 -0
  544. package/docs/docs/cmd/yammer/message/message-get.md +64 -0
  545. package/docs/docs/cmd/yammer/message/message-like-set.md +4 -0
  546. package/docs/docs/cmd/yammer/message/message-list.md +60 -0
  547. package/docs/docs/cmd/yammer/message/message-remove.md +4 -0
  548. package/docs/docs/cmd/yammer/network/network-list.md +96 -0
  549. package/docs/docs/cmd/yammer/report/report-activitycounts.md +31 -0
  550. package/docs/docs/cmd/yammer/report/report-activityusercounts.md +31 -0
  551. package/docs/docs/cmd/yammer/report/report-activityuserdetail.md +36 -0
  552. package/docs/docs/cmd/yammer/report/report-deviceusagedistributionusercounts.md +33 -0
  553. package/docs/docs/cmd/yammer/report/report-deviceusageusercounts.md +34 -0
  554. package/docs/docs/cmd/yammer/report/report-deviceusageuserdetail.md +38 -0
  555. package/docs/docs/cmd/yammer/report/report-groupsactivitycounts.md +31 -0
  556. package/docs/docs/cmd/yammer/report/report-groupsactivitydetail.md +37 -0
  557. package/docs/docs/cmd/yammer/report/report-groupsactivitygroupcounts.md +30 -0
  558. package/docs/docs/cmd/yammer/user/user-get.md +99 -0
  559. package/docs/docs/cmd/yammer/user/user-list.md +97 -0
  560. package/docs/docs/cmd/yammer/yammer-search.md +77 -0
  561. package/npm-shrinkwrap.json +405 -442
  562. package/package.json +39 -25
  563. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN006006_CFG_PS_features.js +0 -60
  564. package/docs/docs/cmd/spo/group/group-user-remove.md +0 -39
  565. package/docs/docs/cmd/spo/hubsite/hubsite-theme-sync.md +0 -33
@@ -13,7 +13,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
13
13
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
14
14
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
15
15
  };
16
- var _SpfxDoctorCommand_instances, _SpfxDoctorCommand_initTelemetry, _SpfxDoctorCommand_initOptions, _SpfxDoctorCommand_initValidators, _SpfxDoctorCommand_initTypes;
16
+ var _SpfxDoctorCommand_instances, _SpfxDoctorCommand_initTelemetry, _SpfxDoctorCommand_initOptions, _SpfxDoctorCommand_initValidators;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const chalk = require("chalk");
19
19
  const child_process = require("child_process");
@@ -428,12 +428,29 @@ class SpfxDoctorCommand extends AnonymousCommand_1.default {
428
428
  range: '^4',
429
429
  fix: 'npm i -g yo@4'
430
430
  }
431
+ },
432
+ '1.16.0': {
433
+ gulpCli: {
434
+ range: '^1 || ^2',
435
+ fix: 'npm i -g gulp-cli@2'
436
+ },
437
+ node: {
438
+ range: '>=16.13.0 <17.0.0',
439
+ fix: 'Install Node.js >=16.13.0 <17.0.0'
440
+ },
441
+ sp: SharePointVersion.SPO,
442
+ yo: {
443
+ range: '^4',
444
+ fix: 'npm i -g yo@4'
445
+ }
431
446
  }
432
447
  };
433
448
  __classPrivateFieldGet(this, _SpfxDoctorCommand_instances, "m", _SpfxDoctorCommand_initTelemetry).call(this);
434
449
  __classPrivateFieldGet(this, _SpfxDoctorCommand_instances, "m", _SpfxDoctorCommand_initOptions).call(this);
435
450
  __classPrivateFieldGet(this, _SpfxDoctorCommand_instances, "m", _SpfxDoctorCommand_initValidators).call(this);
436
- __classPrivateFieldGet(this, _SpfxDoctorCommand_instances, "m", _SpfxDoctorCommand_initTypes).call(this);
451
+ }
452
+ get allowedOutputs() {
453
+ return ['text'];
437
454
  }
438
455
  get name() {
439
456
  return commands_1.default.DOCTOR;
@@ -442,6 +459,7 @@ class SpfxDoctorCommand extends AnonymousCommand_1.default {
442
459
  return 'Verifies environment configuration for using the specific version of the SharePoint Framework';
443
460
  }
444
461
  commandAction(logger, args) {
462
+ var _a;
445
463
  return __awaiter(this, void 0, void 0, function* () {
446
464
  if (!args.options.output) {
447
465
  args.options.output = 'text';
@@ -454,7 +472,7 @@ class SpfxDoctorCommand extends AnonymousCommand_1.default {
454
472
  let prerequisites;
455
473
  const fixes = [];
456
474
  try {
457
- spfxVersion = yield this.getSharePointFrameworkVersion(logger);
475
+ spfxVersion = (_a = args.options.spfxVersion) !== null && _a !== void 0 ? _a : yield this.getSharePointFrameworkVersion(logger);
458
476
  if (!spfxVersion) {
459
477
  logger.log(this.getStatus(CheckStatus.Failure, `SharePoint Framework`));
460
478
  throw `SharePoint Framework not found`;
@@ -464,7 +482,13 @@ class SpfxDoctorCommand extends AnonymousCommand_1.default {
464
482
  logger.log(this.getStatus(CheckStatus.Failure, `SharePoint Framework v${spfxVersion}`));
465
483
  throw `spfx doctor doesn't support SPFx v${spfxVersion} at this moment`;
466
484
  }
467
- logger.log(this.getStatus(CheckStatus.Success, `SharePoint Framework v${spfxVersion}`));
485
+ if (args.options.spfxVersion) {
486
+ yield this.checkSharePointFrameworkVersion(args.options.spfxVersion, fixes, logger);
487
+ }
488
+ else {
489
+ // spfx was detected and if we are here, it means that we support it
490
+ logger.log(this.getStatus(CheckStatus.Success, `SharePoint Framework v${spfxVersion}`));
491
+ }
468
492
  yield this.checkSharePointCompatibility(spfxVersion, prerequisites, args, fixes, logger);
469
493
  yield this.checkNodeVersion(prerequisites, fixes, logger);
470
494
  yield this.checkYo(prerequisites, fixes, logger);
@@ -517,6 +541,23 @@ class SpfxDoctorCommand extends AnonymousCommand_1.default {
517
541
  this.checkStatus('Node', nodeVersion, prerequisites.node, OptionalOrRequired.Required, fixes, logger);
518
542
  });
519
543
  }
544
+ checkSharePointFrameworkVersion(spfxVersionRequested, fixes, logger) {
545
+ return this
546
+ .getPackageVersion('@microsoft/generator-sharepoint', PackageSearchMode.GlobalOnly, HandlePromise.Continue, logger)
547
+ .then((spfxVersionDetected) => {
548
+ const versionCheck = {
549
+ range: spfxVersionRequested,
550
+ fix: `npm i -g @microsoft/generator-sharepoint@${spfxVersionRequested}`
551
+ };
552
+ if (spfxVersionDetected) {
553
+ this.checkStatus(`SharePoint Framework`, spfxVersionDetected, versionCheck, OptionalOrRequired.Required, fixes, logger);
554
+ }
555
+ else {
556
+ logger.log(this.getStatus(CheckStatus.Failure, `SharePoint Framework v${spfxVersionRequested} not found`));
557
+ fixes.push(versionCheck.fix);
558
+ }
559
+ });
560
+ }
520
561
  checkYo(prerequisites, fixes, logger) {
521
562
  return this
522
563
  .getPackageVersion('yo', PackageSearchMode.GlobalOnly, HandlePromise.Continue, logger)
@@ -695,13 +736,17 @@ class SpfxDoctorCommand extends AnonymousCommand_1.default {
695
736
  _SpfxDoctorCommand_instances = new WeakSet(), _SpfxDoctorCommand_initTelemetry = function _SpfxDoctorCommand_initTelemetry() {
696
737
  this.telemetry.push((args) => {
697
738
  Object.assign(this.telemetryProperties, {
698
- env: args.options.env
739
+ env: args.options.env,
740
+ spfxVersion: args.options.spfxVersion
699
741
  });
700
742
  });
701
743
  }, _SpfxDoctorCommand_initOptions = function _SpfxDoctorCommand_initOptions() {
702
744
  this.options.unshift({
703
745
  option: '-e, --env [env]',
704
746
  autocomplete: ['sp2016', 'sp2019', 'spo']
747
+ }, {
748
+ option: '-v, --spfxVersion [spfxVersion]',
749
+ autocomplete: Object.keys(this.versions)
705
750
  });
706
751
  }, _SpfxDoctorCommand_initValidators = function _SpfxDoctorCommand_initValidators() {
707
752
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
@@ -711,13 +756,13 @@ _SpfxDoctorCommand_instances = new WeakSet(), _SpfxDoctorCommand_initTelemetry =
711
756
  return `${args.options.env} is not a valid SharePoint version. Valid versions are sp2016, sp2019 or spo`;
712
757
  }
713
758
  }
714
- if (args.options.output && args.options.output !== 'text') {
715
- return `The output option only accepts the type 'text'`;
759
+ if (args.options.spfxVersion) {
760
+ if (!this.versions[args.options.spfxVersion]) {
761
+ return `${args.options.spfxVersion} is not a supported SharePoint Framework version. Supported versions are ${Object.keys(this.versions).join(', ')}`;
762
+ }
716
763
  }
717
764
  return true;
718
765
  }));
719
- }, _SpfxDoctorCommand_initTypes = function _SpfxDoctorCommand_initTypes() {
720
- this.types.string.push('e', 'env');
721
766
  };
722
767
  module.exports = new SpfxDoctorCommand();
723
768
  //# sourceMappingURL=spfx-doctor.js.map
@@ -16,6 +16,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
16
16
  var _SpoAppGetCommand_instances, _SpoAppGetCommand_initTelemetry, _SpoAppGetCommand_initOptions, _SpoAppGetCommand_initValidators, _SpoAppGetCommand_initOptionSets;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const request_1 = require("../../../../request");
19
+ const formatting_1 = require("../../../../utils/formatting");
19
20
  const spo_1 = require("../../../../utils/spo");
20
21
  const validation_1 = require("../../../../utils/validation");
21
22
  const commands_1 = require("../../commands");
@@ -63,7 +64,7 @@ class SpoAppGetCommand extends SpoAppBaseCommand_1.SpoAppBaseCommand {
63
64
  logger.logToStderr(`Retrieving information for app ${appId}...`);
64
65
  }
65
66
  const requestOptions = {
66
- url: `${appCatalogSiteUrl}/_api/web/${scope}appcatalog/AvailableApps/GetById('${encodeURIComponent(appId)}')`,
67
+ url: `${appCatalogSiteUrl}/_api/web/${scope}appcatalog/AvailableApps/GetById('${formatting_1.formatting.encodeQueryParameter(appId)}')`,
67
68
  headers: {
68
69
  accept: 'application/json;odata=nometadata'
69
70
  },
@@ -16,6 +16,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
16
16
  var _SpoAppInstallCommand_instances, _SpoAppInstallCommand_initTelemetry, _SpoAppInstallCommand_initOptions, _SpoAppInstallCommand_initValidators;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const request_1 = require("../../../../request");
19
+ const formatting_1 = require("../../../../utils/formatting");
19
20
  const validation_1 = require("../../../../utils/validation");
20
21
  const SpoCommand_1 = require("../../../base/SpoCommand");
21
22
  const commands_1 = require("../../commands");
@@ -40,7 +41,7 @@ class SpoAppInstallCommand extends SpoCommand_1.default {
40
41
  logger.logToStderr(`Installing app '${args.options.id}' in site '${args.options.siteUrl}'...`);
41
42
  }
42
43
  const requestOptions = {
43
- url: `${args.options.siteUrl}/_api/web/${scope}appcatalog/AvailableApps/GetById('${encodeURIComponent(args.options.id)}')/install`,
44
+ url: `${args.options.siteUrl}/_api/web/${scope}appcatalog/AvailableApps/GetById('${formatting_1.formatting.encodeQueryParameter(args.options.id)}')/install`,
44
45
  headers: {
45
46
  accept: 'application/json;odata=nometadata'
46
47
  }
@@ -17,6 +17,7 @@ var _SpoAppRemoveCommand_instances, _SpoAppRemoveCommand_initTelemetry, _SpoAppR
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const Cli_1 = require("../../../../cli/Cli");
19
19
  const request_1 = require("../../../../request");
20
+ const formatting_1 = require("../../../../utils/formatting");
20
21
  const spo_1 = require("../../../../utils/spo");
21
22
  const validation_1 = require("../../../../utils/validation");
22
23
  const commands_1 = require("../../commands");
@@ -46,7 +47,7 @@ class SpoAppRemoveCommand extends SpoAppBaseCommand_1.SpoAppBaseCommand {
46
47
  logger.logToStderr(`Retrieved app catalog URL ${appCatalogUrl}. Removing app from the app catalog...`);
47
48
  }
48
49
  const requestOptions = {
49
- url: `${appCatalogUrl}/_api/web/${scope}appcatalog/AvailableApps/GetById('${encodeURIComponent(args.options.id)}')/remove`,
50
+ url: `${appCatalogUrl}/_api/web/${scope}appcatalog/AvailableApps/GetById('${formatting_1.formatting.encodeQueryParameter(args.options.id)}')/remove`,
50
51
  headers: {
51
52
  accept: 'application/json;odata=nometadata'
52
53
  }
@@ -17,6 +17,7 @@ var _SpoAppRetractCommand_instances, _SpoAppRetractCommand_initTelemetry, _SpoAp
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const Cli_1 = require("../../../../cli/Cli");
19
19
  const request_1 = require("../../../../request");
20
+ const formatting_1 = require("../../../../utils/formatting");
20
21
  const spo_1 = require("../../../../utils/spo");
21
22
  const validation_1 = require("../../../../utils/validation");
22
23
  const commands_1 = require("../../commands");
@@ -46,7 +47,7 @@ class SpoAppRetractCommand extends SpoAppBaseCommand_1.SpoAppBaseCommand {
46
47
  logger.logToStderr(`Retracting app...`);
47
48
  }
48
49
  const requestOptions = {
49
- url: `${appCatalogSiteUrl}/_api/web/${scope}appcatalog/AvailableApps/GetById('${encodeURIComponent(args.options.id)}')/retract`,
50
+ url: `${appCatalogSiteUrl}/_api/web/${scope}appcatalog/AvailableApps/GetById('${formatting_1.formatting.encodeQueryParameter(args.options.id)}')/retract`,
50
51
  headers: {
51
52
  accept: 'application/json;odata=nometadata'
52
53
  }
@@ -18,6 +18,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const fs = require("fs");
19
19
  const path = require("path");
20
20
  const request_1 = require("../../../../request");
21
+ const formatting_1 = require("../../../../utils/formatting");
21
22
  const spo_1 = require("../../../../utils/spo");
22
23
  const urlUtil_1 = require("../../../../utils/urlUtil");
23
24
  const validation_1 = require("../../../../utils/validation");
@@ -103,7 +104,7 @@ class SpoAppTeamsPackageDownloadCommand extends SpoAppBaseCommand_1.SpoAppBaseCo
103
104
  url += `GetList('${serverRelativeAppCatalogListUrl}')/GetItemById(${args.options.appItemId})?$expand=File&$select=File/Name`;
104
105
  }
105
106
  else if (args.options.appName) {
106
- url += `getfolderbyserverrelativeurl('${appCatalogListName}')/files('${encodeURIComponent(args.options.appName)}')/ListItemAllFields?$select=Id`;
107
+ url += `getfolderbyserverrelativeurl('${appCatalogListName}')/files('${formatting_1.formatting.encodeQueryParameter(args.options.appName)}')/ListItemAllFields?$select=Id`;
107
108
  }
108
109
  const requestOptions = {
109
110
  url,
@@ -17,6 +17,7 @@ var _SpoAppUninstallCommand_instances, _SpoAppUninstallCommand_initTelemetry, _S
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const Cli_1 = require("../../../../cli/Cli");
19
19
  const request_1 = require("../../../../request");
20
+ const formatting_1 = require("../../../../utils/formatting");
20
21
  const validation_1 = require("../../../../utils/validation");
21
22
  const SpoCommand_1 = require("../../../base/SpoCommand");
22
23
  const commands_1 = require("../../commands");
@@ -42,7 +43,7 @@ class SpoAppUninstallCommand extends SpoCommand_1.default {
42
43
  logger.logToStderr(`Uninstalling app '${args.options.id}' from the site '${args.options.siteUrl}'...`);
43
44
  }
44
45
  const requestOptions = {
45
- url: `${args.options.siteUrl}/_api/web/${scope}appcatalog/AvailableApps/GetById('${encodeURIComponent(args.options.id)}')/uninstall`,
46
+ url: `${args.options.siteUrl}/_api/web/${scope}appcatalog/AvailableApps/GetById('${formatting_1.formatting.encodeQueryParameter(args.options.id)}')/uninstall`,
46
47
  headers: {
47
48
  accept: 'application/json;odata=nometadata'
48
49
  }
@@ -16,6 +16,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
16
16
  var _SpoAppUpgradeCommand_instances, _SpoAppUpgradeCommand_initTelemetry, _SpoAppUpgradeCommand_initOptions, _SpoAppUpgradeCommand_initValidators;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const request_1 = require("../../../../request");
19
+ const formatting_1 = require("../../../../utils/formatting");
19
20
  const validation_1 = require("../../../../utils/validation");
20
21
  const SpoCommand_1 = require("../../../base/SpoCommand");
21
22
  const commands_1 = require("../../commands");
@@ -40,7 +41,7 @@ class SpoAppUpgradeCommand extends SpoCommand_1.default {
40
41
  logger.logToStderr(`Upgrading app '${args.options.id}' in site '${args.options.siteUrl}'...`);
41
42
  }
42
43
  const requestOptions = {
43
- url: `${args.options.siteUrl}/_api/web/${scope}appcatalog/AvailableApps/GetById('${encodeURIComponent(args.options.id)}')/upgrade`,
44
+ url: `${args.options.siteUrl}/_api/web/${scope}appcatalog/AvailableApps/GetById('${formatting_1.formatting.encodeQueryParameter(args.options.id)}')/upgrade`,
44
45
  headers: {
45
46
  accept: 'application/json;odata=nometadata'
46
47
  }
@@ -20,6 +20,7 @@ const config_1 = require("../../../../config");
20
20
  const request_1 = require("../../../../request");
21
21
  const formatting_1 = require("../../../../utils/formatting");
22
22
  const spo_1 = require("../../../../utils/spo");
23
+ const urlUtil_1 = require("../../../../utils/urlUtil");
23
24
  const validation_1 = require("../../../../utils/validation");
24
25
  const SpoCommand_1 = require("../../../base/SpoCommand");
25
26
  const commands_1 = require("../../commands");
@@ -42,7 +43,13 @@ class SpoContentTypeAddCommand extends SpoCommand_1.default {
42
43
  commandAction(logger, args) {
43
44
  return __awaiter(this, void 0, void 0, function* () {
44
45
  try {
45
- const parentInfo = yield this.getParentInfo(args.options.listTitle, args.options.webUrl, logger);
46
+ let parentInfo = '';
47
+ if (!args.options.listId && !args.options.listTitle && !args.options.listUrl) {
48
+ parentInfo = '<Property Id="5" ParentId="3" Name="Web" /><StaticProperty Id="3" TypeId="{3747adcd-a3c3-41b9-bfab-4a64dd2f1e0a}" Name="Current" />';
49
+ }
50
+ else {
51
+ parentInfo = yield this.getParentInfo(args.options, logger);
52
+ }
46
53
  if (this.verbose) {
47
54
  logger.logToStderr(`Retrieving request digest...`);
48
55
  }
@@ -69,6 +76,8 @@ class SpoContentTypeAddCommand extends SpoCommand_1.default {
69
76
  const options = {
70
77
  webUrl: args.options.webUrl,
71
78
  listTitle: args.options.listTitle,
79
+ listUrl: args.options.listUrl,
80
+ listId: args.options.listId,
72
81
  id: args.options.id,
73
82
  output: 'json',
74
83
  debug: this.debug,
@@ -90,60 +99,79 @@ class SpoContentTypeAddCommand extends SpoCommand_1.default {
90
99
  }
91
100
  });
92
101
  }
93
- getParentInfo(listTitle, webUrl, logger) {
94
- return new Promise((resolve, reject) => {
95
- if (!listTitle) {
96
- resolve('<Property Id="5" ParentId="3" Name="Web" /><StaticProperty Id="3" TypeId="{3747adcd-a3c3-41b9-bfab-4a64dd2f1e0a}" Name="Current" />');
97
- return;
102
+ getParentInfo(options, logger) {
103
+ return __awaiter(this, void 0, void 0, function* () {
104
+ const siteId = yield this.getSiteId(options.webUrl, logger);
105
+ const webId = yield this.getWebId(options.webUrl, logger);
106
+ const listId = yield this.getListId(options, logger);
107
+ return `<Identity Id="5" Name="1a48869e-c092-0000-1f61-81ec89809537|740c6a0b-85e2-48a0-a494-e0f1759d4aa7:site:${siteId}:web:${webId}:list:${listId}" />`;
108
+ });
109
+ }
110
+ getSiteId(webUrl, logger) {
111
+ return __awaiter(this, void 0, void 0, function* () {
112
+ if (this.verbose) {
113
+ logger.logToStderr(`Retrieving site collection id...`);
98
114
  }
99
- let siteId = '';
100
- let webId = '';
101
- (() => {
102
- if (this.verbose) {
103
- logger.logToStderr(`Retrieving site collection id...`);
104
- }
105
- const requestOptions = {
106
- url: `${webUrl}/_api/site?$select=Id`,
107
- headers: {
108
- accept: 'application/json;odata=nometadata'
109
- },
110
- responseType: 'json'
111
- };
112
- return request_1.default.get(requestOptions);
113
- })()
114
- .then((res) => {
115
- siteId = res.Id;
116
- if (this.verbose) {
117
- logger.logToStderr(`Retrieving site id...`);
118
- }
115
+ const requestOptions = {
116
+ url: `${webUrl}/_api/site?$select=Id`,
117
+ headers: {
118
+ accept: 'application/json;odata=nometadata'
119
+ },
120
+ responseType: 'json'
121
+ };
122
+ const siteResponse = yield request_1.default.get(requestOptions);
123
+ return siteResponse.Id;
124
+ });
125
+ }
126
+ getWebId(webUrl, logger) {
127
+ return __awaiter(this, void 0, void 0, function* () {
128
+ if (this.verbose) {
129
+ logger.logToStderr(`Retrieving web id...`);
130
+ }
131
+ const requestOptions = {
132
+ url: `${webUrl}/_api/web?$select=Id`,
133
+ headers: {
134
+ accept: 'application/json;odata=nometadata'
135
+ },
136
+ responseType: 'json'
137
+ };
138
+ const webResponse = yield request_1.default.get(requestOptions);
139
+ return webResponse.Id;
140
+ });
141
+ }
142
+ getListId(options, logger) {
143
+ return __awaiter(this, void 0, void 0, function* () {
144
+ if (this.verbose) {
145
+ logger.logToStderr(`Retrieving list id...`);
146
+ }
147
+ let listId = '';
148
+ if (options.listId) {
149
+ return options.listId;
150
+ }
151
+ else if (options.listTitle) {
119
152
  const requestOptions = {
120
- url: `${webUrl}/_api/web?$select=Id`,
153
+ url: `${options.webUrl}/_api/web/lists/getByTitle('${formatting_1.formatting.encodeQueryParameter(options.listTitle)}')?$select=Id`,
121
154
  headers: {
122
155
  accept: 'application/json;odata=nometadata'
123
156
  },
124
157
  responseType: 'json'
125
158
  };
126
- return request_1.default.get(requestOptions);
127
- })
128
- .then((res) => {
129
- webId = res.Id;
130
- if (this.verbose) {
131
- logger.logToStderr(`Retrieving list id...`);
132
- }
159
+ const listResponse = yield request_1.default.get(requestOptions);
160
+ listId = listResponse.Id;
161
+ }
162
+ else if (options.listUrl) {
163
+ const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(options.webUrl, options.listUrl);
133
164
  const requestOptions = {
134
- url: `${webUrl}/_api/web/lists/getByTitle('${formatting_1.formatting.encodeQueryParameter(listTitle)}')?$select=Id`,
165
+ url: `${options.webUrl}/_api/web/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')?$select=Id`,
135
166
  headers: {
136
167
  accept: 'application/json;odata=nometadata'
137
168
  },
138
169
  responseType: 'json'
139
170
  };
140
- return request_1.default.get(requestOptions);
141
- })
142
- .then((res) => {
143
- resolve(`<Identity Id="5" Name="1a48869e-c092-0000-1f61-81ec89809537|740c6a0b-85e2-48a0-a494-e0f1759d4aa7:site:${siteId}:web:${webId}:list:${res.Id}" />`);
144
- }, (error) => {
145
- reject(error);
146
- });
171
+ const listResponse = yield request_1.default.get(requestOptions);
172
+ listId = listResponse.Id;
173
+ }
174
+ return listId;
147
175
  });
148
176
  }
149
177
  }
@@ -160,6 +188,10 @@ _SpoContentTypeAddCommand_instances = new WeakSet(), _SpoContentTypeAddCommand_i
160
188
  option: '-u, --webUrl <webUrl>'
161
189
  }, {
162
190
  option: '-l, --listTitle [listTitle]'
191
+ }, {
192
+ option: '--listId [listId]'
193
+ }, {
194
+ option: '--listUrl [listUrl]'
163
195
  }, {
164
196
  option: '-i, --id <id>'
165
197
  }, {
@@ -170,7 +202,14 @@ _SpoContentTypeAddCommand_instances = new WeakSet(), _SpoContentTypeAddCommand_i
170
202
  option: '-g, --group [group]'
171
203
  });
172
204
  }, _SpoContentTypeAddCommand_initValidators = function _SpoContentTypeAddCommand_initValidators() {
173
- this.validators.push((args) => __awaiter(this, void 0, void 0, function* () { return validation_1.validation.isValidSharePointUrl(args.options.webUrl); }));
205
+ this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
206
+ if (args.options.listId) {
207
+ if (!validation_1.validation.isValidGuid(args.options.listId)) {
208
+ return `${args.options.listId} is not a valid GUID`;
209
+ }
210
+ }
211
+ return validation_1.validation.isValidSharePointUrl(args.options.webUrl);
212
+ }));
174
213
  }, _SpoContentTypeAddCommand_initTypes = function _SpoContentTypeAddCommand_initTypes() {
175
214
  this.types.string.push('id', 'i');
176
215
  };
@@ -19,6 +19,7 @@ const Cli_1 = require("../../../../cli/Cli");
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");
@@ -72,30 +73,25 @@ class SpoContentTypeFieldRemoveCommand extends SpoCommand_1.default {
72
73
  logger.logToStderr(`WebId: ${webId}`);
73
74
  }
74
75
  let listId = undefined;
75
- // If ListTitle is provided
76
- if (args.options.listTitle) {
77
- // Request for the ListId
78
- const requestOptions = {
79
- url: `${args.options.webUrl}/_api/lists/GetByTitle('${formatting_1.formatting.encodeQueryParameter(args.options.listTitle)}')?$select=Id`,
80
- headers: {
81
- accept: 'application/json;odata=nometadata'
82
- },
83
- responseType: 'json'
84
- };
85
- const list = yield request_1.default.get(requestOptions);
86
- listId = list.Id;
87
- if (this.debug) {
88
- logger.logToStderr(`ListId: ${listId}`);
89
- }
76
+ if (args.options.listId) {
77
+ listId = args.options.listId;
78
+ }
79
+ else if (args.options.listTitle) {
80
+ listId = yield this.getListIdFromListTitle(args.options.webUrl, args.options.listTitle);
81
+ }
82
+ else if (args.options.listUrl) {
83
+ listId = yield this.getListIdFromListUrl(args.options.webUrl, args.options.listUrl);
84
+ }
85
+ if (this.debug) {
86
+ logger.logToStderr(`ListId: ${listId}`);
90
87
  }
91
88
  const reqDigest = yield spo_1.spo.getRequestDigest(args.options.webUrl);
92
89
  const requestDigest = reqDigest.FormDigestValue;
93
- const updateChildContentTypes = args.options.listTitle ? false : args.options.updateChildContentTypes === true;
90
+ const updateChildContentTypes = args.options.listTitle || args.options.listId || args.options.listUrl ? false : args.options.updateChildContentTypes === true;
94
91
  if (this.debug) {
95
- const additionalLog = args.options.listTitle ? `; ListTitle='${args.options.listTitle}'` : ` ; UpdateChildContentTypes='${updateChildContentTypes}`;
92
+ const additionalLog = args.options.listTitle ? `; ListTitle='${args.options.listTitle}'` : args.options.listId ? `; ListId='${args.options.listId}'` : args.options.listUrl ? `; ListUrl='${args.options.listUrl}'` : ` ; UpdateChildContentTypes='${updateChildContentTypes}`;
96
93
  logger.logToStderr(`Remove FieldLink from ContentType. FieldLinkId='${args.options.fieldLinkId}' ; ContentTypeId='${args.options.contentTypeId}' ${additionalLog}`);
97
94
  logger.logToStderr(`Execute ProcessQuery.`);
98
- logger.logToStderr('');
99
95
  }
100
96
  let requestBody = '';
101
97
  if (listId) {
@@ -138,13 +134,42 @@ class SpoContentTypeFieldRemoveCommand extends SpoCommand_1.default {
138
134
  }
139
135
  });
140
136
  }
137
+ getListIdFromListTitle(webUrl, listTitle) {
138
+ return __awaiter(this, void 0, void 0, function* () {
139
+ const requestOptions = {
140
+ url: `${webUrl}/_api/lists/GetByTitle('${formatting_1.formatting.encodeQueryParameter(listTitle)}')?$select=Id`,
141
+ headers: {
142
+ accept: 'application/json;odata=nometadata'
143
+ },
144
+ responseType: 'json'
145
+ };
146
+ const list = yield request_1.default.get(requestOptions);
147
+ return list.Id;
148
+ });
149
+ }
150
+ getListIdFromListUrl(webUrl, listUrl) {
151
+ return __awaiter(this, void 0, void 0, function* () {
152
+ const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(webUrl, listUrl);
153
+ const requestOptions = {
154
+ url: `${webUrl}/_api/web/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')?$select=Id`,
155
+ headers: {
156
+ accept: 'application/json;odata=nometadata'
157
+ },
158
+ responseType: 'json'
159
+ };
160
+ const list = yield request_1.default.get(requestOptions);
161
+ return list.Id;
162
+ });
163
+ }
141
164
  }
142
165
  _SpoContentTypeFieldRemoveCommand_instances = new WeakSet(), _SpoContentTypeFieldRemoveCommand_initTelemetry = function _SpoContentTypeFieldRemoveCommand_initTelemetry() {
143
166
  this.telemetry.push((args) => {
144
167
  Object.assign(this.telemetryProperties, {
145
- listTitle: (!(!args.options.listTitle)).toString(),
146
- updateChildContentTypes: (!(!args.options.updateChildContentTypes)).toString(),
147
- confirm: (!(!args.options.confirm)).toString()
168
+ listTitle: typeof args.options.listTitle !== 'undefined',
169
+ listId: typeof args.options.listId !== 'undefined',
170
+ listUrl: typeof args.options.listUrl !== 'undefined',
171
+ updateChildContentTypes: !!args.options.updateChildContentTypes,
172
+ confirm: !!args.options.confirm
148
173
  });
149
174
  });
150
175
  }, _SpoContentTypeFieldRemoveCommand_initOptions = function _SpoContentTypeFieldRemoveCommand_initOptions() {
@@ -152,6 +177,10 @@ _SpoContentTypeFieldRemoveCommand_instances = new WeakSet(), _SpoContentTypeFiel
152
177
  option: '-u, --webUrl <webUrl>'
153
178
  }, {
154
179
  option: '-l, --listTitle [listTitle]'
180
+ }, {
181
+ option: '--listId [listId]'
182
+ }, {
183
+ option: '--listUrl [listUrl]'
155
184
  }, {
156
185
  option: '-i, --contentTypeId <contentTypeId>'
157
186
  }, {
@@ -166,6 +195,9 @@ _SpoContentTypeFieldRemoveCommand_instances = new WeakSet(), _SpoContentTypeFiel
166
195
  if (!validation_1.validation.isValidGuid(args.options.fieldLinkId)) {
167
196
  return `${args.options.fieldLinkId} is not a valid GUID`;
168
197
  }
198
+ if (args.options.listId && !validation_1.validation.isValidGuid(args.options.listId)) {
199
+ return `${args.options.listId} is not a valid GUID`;
200
+ }
169
201
  return validation_1.validation.isValidSharePointUrl(args.options.webUrl);
170
202
  }));
171
203
  }, _SpoContentTypeFieldRemoveCommand_initTypes = function _SpoContentTypeFieldRemoveCommand_initTypes() {
@@ -49,7 +49,7 @@ class SpoContentTypeFieldSetCommand extends SpoCommand_1.default {
49
49
  logger.logToStderr(`Retrieving field link for field ${args.options.id}...`);
50
50
  }
51
51
  let requestOptions = {
52
- url: `${args.options.webUrl}/_api/web/contenttypes('${encodeURIComponent(args.options.contentTypeId)}')/fieldlinks('${args.options.id}')`,
52
+ url: `${args.options.webUrl}/_api/web/contenttypes('${formatting_1.formatting.encodeQueryParameter(args.options.contentTypeId)}')/fieldlinks('${args.options.id}')`,
53
53
  headers: {
54
54
  accept: 'application/json;odata=nometadata'
55
55
  },
@@ -83,7 +83,7 @@ class SpoContentTypeFieldSetCommand extends SpoCommand_1.default {
83
83
  logger.logToStderr(`Retrieving information about field link for field ${args.options.id}...`);
84
84
  }
85
85
  requestOptions = {
86
- url: `${args.options.webUrl}/_api/web/contenttypes('${encodeURIComponent(args.options.contentTypeId)}')/fieldlinks('${args.options.id}')`,
86
+ url: `${args.options.webUrl}/_api/web/contenttypes('${formatting_1.formatting.encodeQueryParameter(args.options.contentTypeId)}')/fieldlinks('${args.options.id}')`,
87
87
  headers: {
88
88
  accept: 'application/json;odata=nometadata'
89
89
  },