@pnp/cli-microsoft365 6.0.0-beta.0b0fb88 → 6.0.0-beta.1cd4e45

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 (851) hide show
  1. package/.eslintrc.js +17 -2
  2. package/README.md +5 -0
  3. package/dist/Auth.js +3 -3
  4. package/dist/Command.js +72 -45
  5. package/dist/api.js +3 -3
  6. package/dist/appInsights.js +2 -0
  7. package/dist/cli/Cli.js +36 -31
  8. package/dist/index.js +2 -2
  9. package/dist/m365/aad/commands/app/app-add.js +71 -47
  10. package/dist/m365/aad/commands/app/app-get.js +18 -14
  11. package/dist/m365/aad/commands/app/app-list.js +38 -0
  12. package/dist/m365/aad/commands/app/app-remove.js +40 -40
  13. package/dist/m365/aad/commands/app/app-role-add.js +32 -28
  14. package/dist/m365/aad/commands/app/app-role-list.js +24 -11
  15. package/dist/m365/aad/commands/app/app-role-remove.js +28 -26
  16. package/dist/m365/aad/commands/app/app-set.js +15 -9
  17. package/dist/m365/aad/commands/approleassignment/approleassignment-add.js +93 -96
  18. package/dist/m365/aad/commands/approleassignment/approleassignment-list.js +44 -43
  19. package/dist/m365/aad/commands/approleassignment/approleassignment-remove.js +94 -95
  20. package/dist/m365/aad/commands/group/group-list.js +36 -24
  21. package/dist/m365/aad/commands/groupsetting/groupsetting-add.js +35 -34
  22. package/dist/m365/aad/commands/groupsetting/groupsetting-get.js +19 -16
  23. package/dist/m365/aad/commands/groupsetting/groupsetting-list.js +20 -8
  24. package/dist/m365/aad/commands/groupsetting/groupsetting-remove.js +33 -32
  25. package/dist/m365/aad/commands/groupsetting/groupsetting-set.js +35 -32
  26. package/dist/m365/aad/commands/groupsettingtemplate/groupsettingtemplate-get.js +17 -15
  27. package/dist/m365/aad/commands/groupsettingtemplate/groupsettingtemplate-list.js +20 -8
  28. package/dist/m365/aad/commands/o365group/o365group-add.js +87 -98
  29. package/dist/m365/aad/commands/o365group/o365group-conversation-list.js +13 -9
  30. package/dist/m365/aad/commands/o365group/o365group-conversation-post-list.js +16 -13
  31. package/dist/m365/aad/commands/o365group/o365group-get.js +22 -27
  32. package/dist/m365/aad/commands/o365group/o365group-list.js +40 -44
  33. package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-clear.js +34 -22
  34. package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-list.js +26 -13
  35. package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-remove.js +36 -38
  36. package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-restore.js +26 -22
  37. package/dist/m365/aad/commands/o365group/o365group-remove.js +41 -43
  38. package/dist/m365/aad/commands/o365group/o365group-renew.js +19 -14
  39. package/dist/m365/aad/commands/o365group/o365group-set.js +98 -116
  40. package/dist/m365/aad/commands/o365group/o365group-teamify.js +35 -31
  41. package/dist/m365/aad/commands/o365group/o365group-user-add.js +31 -27
  42. package/dist/m365/aad/commands/o365group/o365group-user-list.js +20 -21
  43. package/dist/m365/aad/commands/o365group/o365group-user-remove.js +62 -64
  44. package/dist/m365/aad/commands/o365group/o365group-user-set.js +65 -65
  45. package/dist/m365/aad/commands/oauth2grant/oauth2grant-add.js +28 -23
  46. package/dist/m365/aad/commands/oauth2grant/oauth2grant-list.js +24 -20
  47. package/dist/m365/aad/commands/oauth2grant/oauth2grant-remove.js +43 -32
  48. package/dist/m365/aad/commands/oauth2grant/oauth2grant-set.js +31 -16
  49. package/dist/m365/aad/commands/policy/policy-list.js +22 -23
  50. package/dist/m365/aad/commands/siteclassification/siteclassification-disable.js +61 -53
  51. package/dist/m365/aad/commands/siteclassification/siteclassification-enable.js +84 -72
  52. package/dist/m365/aad/commands/siteclassification/siteclassification-get.js +66 -57
  53. package/dist/m365/aad/commands/siteclassification/siteclassification-set.js +96 -93
  54. package/dist/m365/aad/commands/sp/sp-add.js +28 -26
  55. package/dist/m365/aad/commands/sp/sp-get.js +28 -26
  56. package/dist/m365/aad/commands/user/user-get.js +41 -39
  57. package/dist/m365/aad/commands/user/user-guest-add.js +103 -0
  58. package/dist/m365/aad/commands/user/user-hibp.js +24 -24
  59. package/dist/m365/aad/commands/user/user-list.js +34 -23
  60. package/dist/m365/aad/commands/user/user-password-validate.js +29 -17
  61. package/dist/m365/aad/commands/user/user-set.js +21 -15
  62. package/dist/m365/aad/commands/user/user-signin-list.js +29 -24
  63. package/dist/m365/aad/commands.js +2 -0
  64. package/dist/m365/adaptivecard/commands/adaptivecard-send.js +43 -41
  65. package/dist/m365/app/commands/app-get.js +28 -16
  66. package/dist/m365/app/commands/app-open.js +20 -5
  67. package/dist/m365/app/commands/permission/permission-list.js +19 -17
  68. package/dist/m365/base/AnonymousCommand.js +14 -3
  69. package/dist/m365/base/AppCommand.js +54 -47
  70. package/dist/m365/base/DateAndPeriodBasedReport.js +8 -5
  71. package/dist/m365/base/PeriodBasedReport.js +24 -16
  72. package/dist/m365/base/SpoCommand.js +25 -20
  73. package/dist/m365/base/YammerCommand.js +4 -4
  74. package/dist/m365/booking/commands/business/business-get.js +28 -17
  75. package/dist/m365/booking/commands/business/business-list.js +21 -12
  76. package/dist/m365/cli/commands/cli-consent.js +15 -12
  77. package/dist/m365/cli/commands/cli-doctor.js +37 -27
  78. package/dist/m365/cli/commands/cli-issue.js +15 -15
  79. package/dist/m365/cli/commands/cli-reconsent.js +31 -19
  80. package/dist/m365/cli/commands/completion/completion-clink-update.js +13 -3
  81. package/dist/m365/cli/commands/completion/completion-pwsh-setup.js +47 -38
  82. package/dist/m365/cli/commands/completion/completion-pwsh-update.js +16 -6
  83. package/dist/m365/cli/commands/completion/completion-sh-setup.js +21 -11
  84. package/dist/m365/cli/commands/completion/completion-sh-update.js +16 -6
  85. package/dist/m365/cli/commands/config/config-get.js +5 -4
  86. package/dist/m365/cli/commands/config/config-reset.js +10 -9
  87. package/dist/m365/cli/commands/config/config-set.js +21 -19
  88. package/dist/m365/commands/login.js +66 -63
  89. package/dist/m365/commands/logout.js +34 -23
  90. package/dist/m365/commands/request.js +56 -59
  91. package/dist/m365/commands/status.js +55 -28
  92. package/dist/m365/commands/version.js +13 -3
  93. package/dist/m365/file/commands/convert/convert-pdf.js +58 -53
  94. package/dist/m365/file/commands/file-add.js +17 -12
  95. package/dist/m365/file/commands/file-list.js +33 -34
  96. package/dist/m365/flow/commands/environment/environment-get.js +35 -22
  97. package/dist/m365/flow/commands/environment/environment-list.js +33 -21
  98. package/dist/m365/flow/commands/flow-disable.js +29 -14
  99. package/dist/m365/flow/commands/flow-enable.js +29 -14
  100. package/dist/m365/flow/commands/flow-export.js +105 -104
  101. package/dist/m365/flow/commands/flow-get.js +34 -21
  102. package/dist/m365/flow/commands/flow-list.js +29 -16
  103. package/dist/m365/flow/commands/flow-remove.js +42 -45
  104. package/dist/m365/flow/commands/run/run-cancel.js +36 -34
  105. package/dist/m365/flow/commands/run/run-get.js +34 -21
  106. package/dist/m365/flow/commands/run/run-list.js +32 -19
  107. package/dist/m365/flow/commands/run/run-resubmit.js +41 -41
  108. package/dist/m365/graph/commands/changelog/changelog-list.js +26 -22
  109. package/dist/m365/graph/commands/schemaextension/schemaextension-add.js +32 -29
  110. package/dist/m365/graph/commands/schemaextension/schemaextension-get.js +30 -17
  111. package/dist/m365/graph/commands/schemaextension/schemaextension-list.js +40 -36
  112. package/dist/m365/graph/commands/schemaextension/schemaextension-remove.js +43 -32
  113. package/dist/m365/graph/commands/schemaextension/schemaextension-set.js +59 -56
  114. package/dist/m365/graph/commands/subscription/subscription-add.js +30 -27
  115. package/dist/m365/onedrive/commands/onedrive-list.js +25 -15
  116. package/dist/m365/onenote/commands/notebook/notebook-list.js +15 -14
  117. package/dist/m365/outlook/commands/mail/mail-send.js +94 -46
  118. package/dist/m365/outlook/commands/message/message-get.js +97 -0
  119. package/dist/m365/outlook/commands/message/message-list.js +24 -13
  120. package/dist/m365/outlook/commands/message/message-move.js +35 -26
  121. package/dist/m365/outlook/commands/room/room-list.js +24 -12
  122. package/dist/m365/outlook/commands/roomlist/roomlist-list.js +20 -8
  123. package/dist/m365/outlook/commands.js +1 -0
  124. package/dist/m365/pa/commands/app/app-get.js +46 -46
  125. package/dist/m365/pa/commands/app/app-list.js +21 -17
  126. package/dist/m365/pa/commands/app/app-remove.js +42 -41
  127. package/dist/m365/pa/commands/connector/connector-export.js +103 -104
  128. package/dist/m365/pa/commands/connector/connector-list.js +30 -17
  129. package/dist/m365/pa/commands/environment/environment-get.js +35 -22
  130. package/dist/m365/pa/commands/environment/environment-list.js +33 -21
  131. package/dist/m365/pa/commands/pcf/pcf-init.js +39 -38
  132. package/dist/m365/pa/commands/solution/solution-init.js +50 -49
  133. package/dist/m365/pa/commands/solution/solution-reference-add.js +15 -14
  134. package/dist/m365/planner/commands/bucket/bucket-add.js +30 -28
  135. package/dist/m365/planner/commands/bucket/bucket-get.js +23 -22
  136. package/dist/m365/planner/commands/bucket/bucket-list.js +19 -14
  137. package/dist/m365/planner/commands/bucket/bucket-remove.js +39 -39
  138. package/dist/m365/planner/commands/bucket/bucket-set.js +31 -27
  139. package/dist/m365/planner/commands/plan/plan-add.js +35 -31
  140. package/dist/m365/planner/commands/plan/plan-get.js +37 -57
  141. package/dist/m365/planner/commands/plan/plan-list.js +19 -15
  142. package/dist/m365/planner/commands/plan/plan-remove.js +38 -40
  143. package/dist/m365/planner/commands/task/task-add.js +48 -51
  144. package/dist/m365/planner/commands/task/task-checklistitem-add.js +49 -38
  145. package/dist/m365/planner/commands/task/task-checklistitem-list.js +37 -22
  146. package/dist/m365/planner/commands/task/task-checklistitem-remove.js +54 -43
  147. package/dist/m365/planner/commands/task/task-get.js +21 -16
  148. package/dist/m365/planner/commands/task/task-list.js +52 -59
  149. package/dist/m365/planner/commands/task/task-reference-add.js +26 -25
  150. package/dist/m365/planner/commands/task/task-reference-list.js +32 -19
  151. package/dist/m365/planner/commands/task/task-reference-remove.js +42 -43
  152. package/dist/m365/planner/commands/task/task-remove.js +38 -37
  153. package/dist/m365/planner/commands/task/task-set.js +40 -43
  154. package/dist/m365/planner/commands/tenant/tenant-settings-list.js +26 -14
  155. package/dist/m365/planner/commands/tenant/tenant-settings-set.js +27 -24
  156. package/dist/m365/pp/commands/Environment.js +3 -0
  157. package/dist/m365/pp/commands/card/card-clone.js +122 -0
  158. package/dist/m365/pp/commands/card/card-get.js +110 -0
  159. package/dist/m365/pp/commands/card/card-list.js +68 -0
  160. package/dist/m365/pp/commands/card/card-remove.js +130 -0
  161. package/dist/m365/pp/commands/dataverse/dataverse-table-get.js +77 -0
  162. package/dist/m365/pp/commands/dataverse/dataverse-table-list.js +69 -0
  163. package/dist/m365/pp/commands/environment/environment-get.js +75 -0
  164. package/dist/m365/pp/commands/environment/environment-list.js +40 -28
  165. package/dist/m365/pp/commands/gateway/gateway-get.js +71 -0
  166. package/dist/m365/pp/commands/gateway/gateway-list.js +29 -17
  167. package/dist/m365/pp/commands/managementapp/managementapp-add.js +25 -23
  168. package/dist/m365/pp/commands/managementapp/managementapp-list.js +21 -9
  169. package/dist/m365/pp/commands/solution/Solution.js +3 -0
  170. package/dist/m365/pp/commands/solution/solution-get.js +117 -0
  171. package/dist/m365/pp/commands/solution/solution-list.js +81 -0
  172. package/dist/m365/pp/commands/solution/solution-publisher-get.js +107 -0
  173. package/dist/m365/pp/commands/solution/solution-publisher-list.js +78 -0
  174. package/dist/m365/pp/commands/solution/solution-publisher-remove.js +130 -0
  175. package/dist/m365/pp/commands/solution/solution-remove.js +130 -0
  176. package/dist/m365/pp/commands/tenant/tenant-settings-list.js +45 -0
  177. package/dist/m365/pp/commands.js +16 -1
  178. package/dist/m365/search/commands/externalconnection/externalconnection-add.js +29 -24
  179. package/dist/m365/search/commands/externalconnection/externalconnection-get.js +38 -28
  180. package/dist/m365/search/commands/externalconnection/externalconnection-list.js +20 -8
  181. package/dist/m365/search/commands/externalconnection/externalconnection-remove.js +42 -34
  182. package/dist/m365/spfx/commands/package/package-generate.js +105 -98
  183. package/dist/m365/spfx/commands/project/base-project-command.js +19 -18
  184. package/dist/m365/spfx/commands/project/project-doctor/{doctor-1.16.0-beta.1.js → doctor-1.16.0-rc.0.js} +6 -6
  185. package/dist/m365/spfx/commands/project/project-doctor/rules/FN001008_DEP_react.js +2 -2
  186. package/dist/m365/spfx/commands/project/project-doctor/rules/FN001009_DEP_react_dom.js +2 -2
  187. package/dist/m365/spfx/commands/project/project-doctor/rules/FN001022_DEP_office_ui_fabric_react.js +2 -2
  188. package/dist/m365/spfx/commands/project/project-doctor/rules/FN002015_DEVDEP_types_react.js +2 -2
  189. package/dist/m365/spfx/commands/project/project-doctor/rules/FN002016_DEVDEP_types_react_dom.js +2 -2
  190. package/dist/m365/spfx/commands/project/project-doctor.js +107 -107
  191. package/dist/m365/spfx/commands/project/project-externalize.js +49 -39
  192. package/dist/m365/spfx/commands/project/project-rename.js +38 -30
  193. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001005_DEP_types_react.js +2 -2
  194. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001006_DEP_types_react_dom.js +2 -2
  195. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001008_DEP_react.js +2 -2
  196. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001009_DEP_react_dom.js +2 -2
  197. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001015_DEP_types_react_addons_shallow_compare.js +2 -2
  198. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001016_DEP_types_react_addons_update.js +2 -2
  199. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001017_DEP_types_react_addons_update.js +2 -2
  200. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001019_DEP_knockout.js +2 -2
  201. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001020_DEP_types_knockout.js +2 -2
  202. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001022_DEP_office_ui_fabric_react.js +2 -2
  203. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002015_DEVDEP_types_react.js +2 -2
  204. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002016_DEVDEP_types_react_dom.js +2 -2
  205. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002025_DEVDEP_eslint_plugin_react_hooks.js +2 -2
  206. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010001_YORC_version.js +2 -1
  207. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010002_YORC_isCreatingSolution.js +2 -1
  208. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010003_YORC_packageManager.js +2 -1
  209. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010004_YORC_componentType.js +2 -1
  210. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010005_YORC_environment.js +2 -1
  211. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010006_YORC_framework.js +3 -2
  212. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010007_YORC_isDomainIsolated.js +2 -1
  213. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010008_YORC_nodeVersion.js +3 -2
  214. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010009_YORC_sdkVersions_microsoft_graph_client.js +56 -0
  215. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010010_YORC_sdkVersions_teams_js.js +56 -0
  216. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN015008_FILE_eslintrc_js.js +2 -2
  217. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN020001_RES_types_react.js +2 -2
  218. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN022001_SCSS_remove_fabric_react.js +2 -2
  219. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN022002_SCSS_add_fabric_react.js +2 -2
  220. package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.14.0.js +0 -2
  221. package/dist/m365/spfx/commands/project/project-upgrade/{upgrade-1.16.0-beta.1.js → upgrade-1.16.0-rc.0.js} +44 -28
  222. package/dist/m365/spfx/commands/project/project-upgrade.js +190 -192
  223. package/dist/m365/spfx/commands/spfx-doctor.js +96 -56
  224. package/dist/m365/spo/commands/app/app-add.js +34 -34
  225. package/dist/m365/spo/commands/app/app-deploy.js +41 -41
  226. package/dist/m365/spo/commands/app/app-get.js +44 -43
  227. package/dist/m365/spo/commands/app/app-install.js +22 -16
  228. package/dist/m365/spo/commands/app/app-instance-list.js +27 -23
  229. package/dist/m365/spo/commands/app/app-list.js +32 -34
  230. package/dist/m365/spo/commands/app/app-remove.js +39 -40
  231. package/dist/m365/spo/commands/app/app-retract.js +39 -40
  232. package/dist/m365/spo/commands/app/app-teamspackage-download.js +44 -44
  233. package/dist/m365/spo/commands/app/app-uninstall.js +36 -34
  234. package/dist/m365/spo/commands/app/app-upgrade.js +22 -16
  235. package/dist/m365/spo/commands/apppage/apppage-add.js +39 -40
  236. package/dist/m365/spo/commands/apppage/apppage-set.js +21 -16
  237. package/dist/m365/spo/commands/cdn/cdn-get.js +36 -42
  238. package/dist/m365/spo/commands/cdn/cdn-origin-add.js +31 -38
  239. package/dist/m365/spo/commands/cdn/cdn-origin-list.js +34 -40
  240. package/dist/m365/spo/commands/cdn/cdn-origin-remove.js +46 -59
  241. package/dist/m365/spo/commands/cdn/cdn-policy-list.js +42 -49
  242. package/dist/m365/spo/commands/cdn/cdn-policy-set.js +38 -46
  243. package/dist/m365/spo/commands/cdn/cdn-set.js +64 -68
  244. package/dist/m365/spo/commands/contenttype/contenttype-add.js +127 -91
  245. package/dist/m365/spo/commands/contenttype/contenttype-field-remove.js +134 -118
  246. package/dist/m365/spo/commands/contenttype/contenttype-field-set.js +127 -151
  247. package/dist/m365/spo/commands/contenttype/contenttype-get.js +59 -36
  248. package/dist/m365/spo/commands/contenttype/contenttype-list.js +24 -20
  249. package/dist/m365/spo/commands/contenttype/contenttype-remove.js +66 -69
  250. package/dist/m365/spo/commands/contenttype/contenttype-set.js +168 -0
  251. package/dist/m365/spo/commands/contenttypehub/contenttypehub-get.js +51 -48
  252. package/dist/m365/spo/commands/customaction/customaction-add.js +46 -43
  253. package/dist/m365/spo/commands/customaction/customaction-clear.js +30 -28
  254. package/dist/m365/spo/commands/customaction/customaction-get.js +46 -40
  255. package/dist/m365/spo/commands/customaction/customaction-list.js +30 -25
  256. package/dist/m365/spo/commands/customaction/customaction-remove.js +39 -37
  257. package/dist/m365/spo/commands/customaction/customaction-set.js +27 -21
  258. package/dist/m365/spo/commands/eventreceiver/EventReceiver.js +3 -0
  259. package/dist/m365/spo/commands/eventreceiver/eventreceiver-get.js +47 -42
  260. package/dist/m365/spo/commands/eventreceiver/eventreceiver-list.js +40 -35
  261. package/dist/m365/spo/commands/eventreceiver/eventreceiver-remove.js +182 -0
  262. package/dist/m365/spo/commands/externaluser/externaluser-list.js +55 -58
  263. package/dist/m365/spo/commands/feature/feature-disable.js +26 -21
  264. package/dist/m365/spo/commands/feature/feature-enable.js +28 -23
  265. package/dist/m365/spo/commands/feature/feature-list.js +25 -22
  266. package/dist/m365/spo/commands/field/field-add.js +54 -26
  267. package/dist/m365/spo/commands/field/field-get.js +41 -36
  268. package/dist/m365/spo/commands/field/field-list.js +33 -28
  269. package/dist/m365/spo/commands/field/field-remove.js +87 -88
  270. package/dist/m365/spo/commands/field/field-set.js +81 -75
  271. package/dist/m365/spo/commands/file/file-add.js +166 -184
  272. package/dist/m365/spo/commands/file/file-checkin.js +40 -34
  273. package/dist/m365/spo/commands/file/file-checkout.js +27 -21
  274. package/dist/m365/spo/commands/file/file-copy.js +93 -106
  275. package/dist/m365/spo/commands/file/file-get.js +68 -69
  276. package/dist/m365/spo/commands/file/file-list.js +17 -11
  277. package/dist/m365/spo/commands/file/file-move.js +91 -103
  278. package/dist/m365/spo/commands/file/file-remove.js +59 -60
  279. package/dist/m365/spo/commands/file/file-rename.js +54 -51
  280. package/dist/m365/spo/commands/file/file-roleassignment-add.js +217 -0
  281. package/dist/m365/spo/commands/file/file-roleassignment-remove.js +180 -0
  282. package/dist/m365/spo/commands/file/file-roleinheritance-break.js +129 -0
  283. package/dist/m365/spo/commands/file/file-roleinheritance-reset.js +125 -0
  284. package/dist/m365/spo/commands/file/file-sharinginfo-get.js +50 -47
  285. package/dist/m365/spo/commands/file/file-version-clear.js +114 -0
  286. package/dist/m365/spo/commands/file/file-version-get.js +104 -0
  287. package/dist/m365/spo/commands/file/file-version-list.js +96 -0
  288. package/dist/m365/spo/commands/file/file-version-remove.js +119 -0
  289. package/dist/m365/spo/commands/file/file-version-restore.js +119 -0
  290. package/dist/m365/spo/commands/folder/folder-add.js +29 -25
  291. package/dist/m365/spo/commands/folder/folder-copy.js +49 -44
  292. package/dist/m365/spo/commands/folder/folder-get.js +60 -28
  293. package/dist/m365/spo/commands/folder/folder-list.js +50 -23
  294. package/dist/m365/spo/commands/folder/folder-move.js +50 -45
  295. package/dist/m365/spo/commands/folder/folder-remove.js +45 -42
  296. package/dist/m365/spo/commands/folder/folder-rename.js +34 -38
  297. package/dist/m365/spo/commands/folder/folder-roleassignment-add.js +215 -0
  298. package/dist/m365/spo/commands/folder/folder-roleassignment-remove.js +169 -0
  299. package/dist/m365/spo/commands/folder/folder-roleinheritance-break.js +104 -0
  300. package/dist/m365/spo/commands/folder/folder-roleinheritance-reset.js +100 -0
  301. package/dist/m365/spo/commands/group/AssociatedGroupPropertiesCollection.js +3 -0
  302. package/dist/m365/spo/commands/group/group-add.js +28 -25
  303. package/dist/m365/spo/commands/group/group-get.js +43 -39
  304. package/dist/m365/spo/commands/group/group-list.js +64 -22
  305. package/dist/m365/spo/commands/group/group-remove.js +49 -52
  306. package/dist/m365/spo/commands/group/group-set.js +31 -26
  307. package/dist/m365/spo/commands/group/group-user-add.js +36 -39
  308. package/dist/m365/spo/commands/group/group-user-list.js +26 -22
  309. package/dist/m365/spo/commands/group/group-user-remove.js +43 -43
  310. package/dist/m365/spo/commands/hidedefaultthemes/hidedefaultthemes-get.js +30 -20
  311. package/dist/m365/spo/commands/hidedefaultthemes/hidedefaultthemes-set.js +23 -20
  312. package/dist/m365/spo/commands/homesite/homesite-get.js +29 -19
  313. package/dist/m365/spo/commands/homesite/homesite-remove.js +50 -49
  314. package/dist/m365/spo/commands/homesite/homesite-set.js +28 -31
  315. package/dist/m365/spo/commands/hubsite/hubsite-connect.js +101 -22
  316. package/dist/m365/spo/commands/hubsite/hubsite-data-get.js +27 -24
  317. package/dist/m365/spo/commands/hubsite/hubsite-disconnect.js +98 -42
  318. package/dist/m365/spo/commands/hubsite/hubsite-get.js +24 -37
  319. package/dist/m365/spo/commands/hubsite/hubsite-list.js +65 -63
  320. package/dist/m365/spo/commands/hubsite/hubsite-register.js +22 -20
  321. package/dist/m365/spo/commands/hubsite/hubsite-rights-grant.js +33 -36
  322. package/dist/m365/spo/commands/hubsite/hubsite-rights-revoke.js +48 -55
  323. package/dist/m365/spo/commands/hubsite/hubsite-set.js +38 -41
  324. package/dist/m365/spo/commands/hubsite/hubsite-unregister.js +35 -35
  325. package/dist/m365/spo/commands/knowledgehub/knowledgehub-get.js +35 -32
  326. package/dist/m365/spo/commands/knowledgehub/knowledgehub-remove.js +52 -53
  327. package/dist/m365/spo/commands/knowledgehub/knowledgehub-set.js +29 -33
  328. package/dist/m365/spo/commands/list/list-add.js +28 -25
  329. package/dist/m365/spo/commands/list/list-contenttype-add.js +47 -40
  330. package/dist/m365/spo/commands/list/list-contenttype-default-set.js +112 -100
  331. package/dist/m365/spo/commands/list/list-contenttype-list.js +43 -31
  332. package/dist/m365/spo/commands/list/list-contenttype-remove.js +56 -49
  333. package/dist/m365/spo/commands/list/list-get.js +37 -33
  334. package/dist/m365/spo/commands/list/list-label-get.js +51 -51
  335. package/dist/m365/spo/commands/list/list-label-set.js +51 -47
  336. package/dist/m365/spo/commands/list/list-list.js +26 -23
  337. package/dist/m365/spo/commands/list/list-remove.js +46 -47
  338. package/dist/m365/spo/commands/list/list-roleassignment-add.js +51 -68
  339. package/dist/m365/spo/commands/list/list-roleassignment-remove.js +64 -75
  340. package/dist/m365/spo/commands/list/list-roleinheritance-break.js +58 -48
  341. package/dist/m365/spo/commands/list/list-roleinheritance-reset.js +54 -44
  342. package/dist/m365/spo/commands/list/list-set.js +60 -34
  343. package/dist/m365/spo/commands/list/list-sitescript-get.js +54 -55
  344. package/dist/m365/spo/commands/list/list-view-add.js +37 -32
  345. package/dist/m365/spo/commands/list/list-view-field-add.js +70 -56
  346. package/dist/m365/spo/commands/list/list-view-field-remove.js +64 -52
  347. package/dist/m365/spo/commands/list/list-view-field-set.js +51 -33
  348. package/dist/m365/spo/commands/list/list-view-get.js +36 -31
  349. package/dist/m365/spo/commands/list/list-view-list.js +38 -30
  350. package/dist/m365/spo/commands/list/list-view-remove.js +56 -47
  351. package/dist/m365/spo/commands/list/list-view-set.js +44 -27
  352. package/dist/m365/spo/commands/list/list-webhook-add.js +56 -46
  353. package/dist/m365/spo/commands/list/list-webhook-get.js +46 -37
  354. package/dist/m365/spo/commands/list/list-webhook-list.js +52 -73
  355. package/dist/m365/spo/commands/list/list-webhook-remove.js +61 -55
  356. package/dist/m365/spo/commands/list/list-webhook-set.js +54 -45
  357. package/dist/m365/spo/commands/listitem/listitem-add.js +118 -114
  358. package/dist/m365/spo/commands/listitem/listitem-attachment-list.js +43 -29
  359. package/dist/m365/spo/commands/listitem/listitem-get.js +44 -30
  360. package/dist/m365/spo/commands/listitem/listitem-isrecord.js +78 -69
  361. package/dist/m365/spo/commands/listitem/listitem-list.js +77 -75
  362. package/dist/m365/spo/commands/listitem/listitem-record-declare.js +63 -56
  363. package/dist/m365/spo/commands/listitem/listitem-record-undeclare.js +59 -56
  364. package/dist/m365/spo/commands/listitem/listitem-remove.js +65 -57
  365. package/dist/m365/spo/commands/listitem/listitem-roleassignment-add.js +239 -0
  366. package/dist/m365/spo/commands/listitem/listitem-roleassignment-remove.js +65 -76
  367. package/dist/m365/spo/commands/listitem/listitem-roleinheritance-break.js +58 -48
  368. package/dist/m365/spo/commands/listitem/listitem-roleinheritance-reset.js +54 -44
  369. package/dist/m365/spo/commands/listitem/listitem-set.js +180 -189
  370. package/dist/m365/spo/commands/mail/mail-send.js +50 -45
  371. package/dist/m365/spo/commands/navigation/navigation-node-add.js +31 -28
  372. package/dist/m365/spo/commands/navigation/navigation-node-list.js +28 -25
  373. package/dist/m365/spo/commands/navigation/navigation-node-remove.js +38 -38
  374. package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-add.js +30 -33
  375. package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-list.js +49 -45
  376. package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-remove.js +50 -50
  377. package/dist/m365/spo/commands/orgnewssite/orgnewssite-list.js +35 -31
  378. package/dist/m365/spo/commands/orgnewssite/orgnewssite-remove.js +41 -50
  379. package/dist/m365/spo/commands/orgnewssite/orgnewssite-set.js +26 -29
  380. package/dist/m365/spo/commands/page/Page.js +4 -3
  381. package/dist/m365/spo/commands/page/page-add.js +198 -218
  382. package/dist/m365/spo/commands/page/page-clientsidewebpart-add.js +191 -196
  383. package/dist/m365/spo/commands/page/page-column-get.js +25 -22
  384. package/dist/m365/spo/commands/page/page-column-list.js +20 -17
  385. package/dist/m365/spo/commands/page/page-control-get.js +40 -36
  386. package/dist/m365/spo/commands/page/page-control-list.js +36 -32
  387. package/dist/m365/spo/commands/page/page-control-set.js +101 -100
  388. package/dist/m365/spo/commands/page/page-copy.js +53 -53
  389. package/dist/m365/spo/commands/page/page-get.js +53 -53
  390. package/dist/m365/spo/commands/page/page-header-set.js +232 -235
  391. package/dist/m365/spo/commands/page/page-list.js +42 -41
  392. package/dist/m365/spo/commands/page/page-remove.js +48 -47
  393. package/dist/m365/spo/commands/page/page-section-add.js +69 -70
  394. package/dist/m365/spo/commands/page/page-section-get.js +16 -13
  395. package/dist/m365/spo/commands/page/page-section-list.js +25 -22
  396. package/dist/m365/spo/commands/page/page-set.js +220 -238
  397. package/dist/m365/spo/commands/page/page-template-list.js +26 -27
  398. package/dist/m365/spo/commands/page/page-text-add.js +45 -43
  399. package/dist/m365/spo/commands/propertybag/propertybag-base.js +4 -3
  400. package/dist/m365/spo/commands/propertybag/propertybag-get.js +27 -24
  401. package/dist/m365/spo/commands/propertybag/propertybag-list.js +22 -19
  402. package/dist/m365/spo/commands/propertybag/propertybag-remove.js +36 -40
  403. package/dist/m365/spo/commands/propertybag/propertybag-set.js +25 -29
  404. package/dist/m365/spo/commands/roledefinition/roledefinition-add.js +117 -0
  405. package/dist/m365/spo/commands/roledefinition/roledefinition-get.js +27 -24
  406. package/dist/m365/spo/commands/roledefinition/roledefinition-list.js +35 -19
  407. package/dist/m365/spo/commands/roledefinition/roledefinition-remove.js +38 -37
  408. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-grant-add.js +40 -35
  409. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-grant-list.js +43 -39
  410. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-grant-revoke.js +35 -30
  411. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-approve.js +33 -36
  412. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-deny.js +28 -31
  413. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-list.js +45 -41
  414. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-set.js +47 -56
  415. package/dist/m365/spo/commands/site/site-add.js +189 -206
  416. package/dist/m365/spo/commands/site/site-appcatalog-add.js +33 -36
  417. package/dist/m365/spo/commands/site/site-appcatalog-remove.js +33 -36
  418. package/dist/m365/spo/commands/site/site-apppermission-add.js +72 -39
  419. package/dist/m365/spo/commands/site/site-apppermission-get.js +21 -18
  420. package/dist/m365/spo/commands/site/site-apppermission-list.js +17 -19
  421. package/dist/m365/spo/commands/site/site-apppermission-remove.js +33 -39
  422. package/dist/m365/spo/commands/site/site-apppermission-set.js +33 -32
  423. package/dist/m365/spo/commands/site/site-chrome-set.js +52 -47
  424. package/dist/m365/spo/commands/site/site-commsite-enable.js +30 -33
  425. package/dist/m365/spo/commands/site/site-ensure.js +46 -36
  426. package/dist/m365/spo/commands/site/site-get.js +19 -16
  427. package/dist/m365/spo/commands/site/site-groupify.js +37 -34
  428. package/dist/m365/spo/commands/site/site-hubsite-connect.js +76 -0
  429. package/dist/m365/spo/commands/site/site-hubsite-disconnect.js +93 -0
  430. package/dist/m365/spo/commands/site/site-hubsite-theme-sync.js +64 -0
  431. package/dist/m365/spo/commands/site/site-inplacerecordsmanagement-set.js +27 -22
  432. package/dist/m365/spo/commands/site/site-list.js +20 -20
  433. package/dist/m365/spo/commands/site/site-recyclebinitem-list.js +29 -26
  434. package/dist/m365/spo/commands/site/site-recyclebinitem-restore.js +36 -28
  435. package/dist/m365/spo/commands/site/site-remove.js +66 -73
  436. package/dist/m365/spo/commands/site/site-rename.js +67 -77
  437. package/dist/m365/spo/commands/site/site-set.js +48 -51
  438. package/dist/m365/spo/commands/sitedesign/sitedesign-add.js +40 -42
  439. package/dist/m365/spo/commands/sitedesign/sitedesign-apply.js +31 -29
  440. package/dist/m365/spo/commands/sitedesign/sitedesign-get.js +30 -35
  441. package/dist/m365/spo/commands/sitedesign/sitedesign-list.js +28 -18
  442. package/dist/m365/spo/commands/sitedesign/sitedesign-remove.js +38 -42
  443. package/dist/m365/spo/commands/sitedesign/sitedesign-rights-grant.js +29 -29
  444. package/dist/m365/spo/commands/sitedesign/sitedesign-rights-list.js +28 -30
  445. package/dist/m365/spo/commands/sitedesign/sitedesign-rights-revoke.js +41 -45
  446. package/dist/m365/spo/commands/sitedesign/sitedesign-run-list.js +30 -26
  447. package/dist/m365/spo/commands/sitedesign/sitedesign-run-status-get.js +25 -21
  448. package/dist/m365/spo/commands/sitedesign/sitedesign-set.js +53 -51
  449. package/dist/m365/spo/commands/sitedesign/sitedesign-task-get.js +25 -23
  450. package/dist/m365/spo/commands/sitedesign/sitedesign-task-list.js +19 -15
  451. package/dist/m365/spo/commands/sitedesign/sitedesign-task-remove.js +37 -37
  452. package/dist/m365/spo/commands/sitescript/sitescript-add.js +24 -26
  453. package/dist/m365/spo/commands/sitescript/sitescript-get.js +25 -27
  454. package/dist/m365/spo/commands/sitescript/sitescript-list.js +31 -25
  455. package/dist/m365/spo/commands/sitescript/sitescript-remove.js +38 -42
  456. package/dist/m365/spo/commands/sitescript/sitescript-set.js +38 -40
  457. package/dist/m365/spo/commands/spo-get.js +16 -6
  458. package/dist/m365/spo/commands/spo-search.js +26 -25
  459. package/dist/m365/spo/commands/spo-set.js +11 -9
  460. package/dist/m365/spo/commands/storageentity/storageentity-get.js +38 -27
  461. package/dist/m365/spo/commands/storageentity/storageentity-list.js +36 -38
  462. package/dist/m365/spo/commands/storageentity/storageentity-remove.js +43 -51
  463. package/dist/m365/spo/commands/storageentity/storageentity-set.js +33 -36
  464. package/dist/m365/spo/commands/tenant/tenant-appcatalog-add.js +21 -22
  465. package/dist/m365/spo/commands/tenant/tenant-appcatalogurl-get.js +32 -22
  466. package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-list.js +39 -35
  467. package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-remove.js +56 -62
  468. package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-restore.js +24 -22
  469. package/dist/m365/spo/commands/tenant/tenant-settings-list.js +57 -53
  470. package/dist/m365/spo/commands/tenant/tenant-settings-set.js +56 -66
  471. package/dist/m365/spo/commands/term/term-add.js +98 -103
  472. package/dist/m365/spo/commands/term/term-get.js +49 -53
  473. package/dist/m365/spo/commands/term/term-group-add.js +74 -81
  474. package/dist/m365/spo/commands/term/term-group-get.js +36 -39
  475. package/dist/m365/spo/commands/term/term-group-list.js +43 -39
  476. package/dist/m365/spo/commands/term/term-list.js +40 -43
  477. package/dist/m365/spo/commands/term/term-set-add.js +84 -89
  478. package/dist/m365/spo/commands/term/term-set-get.js +38 -41
  479. package/dist/m365/spo/commands/term/term-set-list.js +39 -42
  480. package/dist/m365/spo/commands/theme/theme-apply.js +56 -60
  481. package/dist/m365/spo/commands/theme/theme-get.js +39 -34
  482. package/dist/m365/spo/commands/theme/theme-list.js +36 -26
  483. package/dist/m365/spo/commands/theme/theme-remove.js +47 -39
  484. package/dist/m365/spo/commands/theme/theme-set.js +33 -34
  485. package/dist/m365/spo/commands/user/user-get.js +34 -30
  486. package/dist/m365/spo/commands/user/user-list.js +25 -22
  487. package/dist/m365/spo/commands/user/user-remove.js +43 -41
  488. package/dist/m365/spo/commands/userprofile/userprofile-get.js +26 -24
  489. package/dist/m365/spo/commands/userprofile/userprofile-set.js +42 -34
  490. package/dist/m365/spo/commands/web/web-add.js +75 -99
  491. package/dist/m365/spo/commands/web/web-clientsidewebpart-list.js +31 -28
  492. package/dist/m365/spo/commands/web/web-get.js +23 -20
  493. package/dist/m365/spo/commands/web/web-installedlanguage-list.js +22 -19
  494. package/dist/m365/spo/commands/web/web-list.js +26 -23
  495. package/dist/m365/spo/commands/web/web-reindex.js +44 -55
  496. package/dist/m365/spo/commands/web/web-remove.js +36 -35
  497. package/dist/m365/spo/commands/web/web-roleassignment-add.js +37 -49
  498. package/dist/m365/spo/commands/web/web-roleassignment-remove.js +50 -56
  499. package/dist/m365/spo/commands/web/web-roleinheritance-break.js +100 -0
  500. package/dist/m365/spo/commands/web/web-roleinheritance-reset.js +37 -36
  501. package/dist/m365/spo/commands/web/web-set.js +53 -48
  502. package/dist/m365/spo/commands.js +21 -1
  503. package/dist/m365/teams/commands/Meeting.js +3 -0
  504. package/dist/m365/teams/commands/app/app-install.js +34 -30
  505. package/dist/m365/teams/commands/app/app-list.js +21 -16
  506. package/dist/m365/teams/commands/app/app-publish.js +22 -20
  507. package/dist/m365/teams/commands/app/app-remove.js +32 -31
  508. package/dist/m365/teams/commands/app/app-uninstall.js +31 -30
  509. package/dist/m365/teams/commands/app/app-update.js +25 -21
  510. package/dist/m365/teams/commands/cache/cache-remove.js +25 -24
  511. package/dist/m365/teams/commands/channel/channel-add.js +22 -19
  512. package/dist/m365/teams/commands/channel/channel-get.js +31 -32
  513. package/dist/m365/teams/commands/channel/channel-list.js +20 -18
  514. package/dist/m365/teams/commands/channel/channel-member-add.js +24 -28
  515. package/dist/m365/teams/commands/channel/channel-member-list.js +26 -26
  516. package/dist/m365/teams/commands/channel/channel-member-remove.js +33 -31
  517. package/dist/m365/teams/commands/channel/channel-member-set.js +32 -36
  518. package/dist/m365/teams/commands/channel/channel-remove.js +76 -61
  519. package/dist/m365/teams/commands/channel/channel-set.js +75 -33
  520. package/dist/m365/teams/commands/chat/chat-get.js +13 -9
  521. package/dist/m365/teams/commands/chat/chat-list.js +13 -10
  522. package/dist/m365/teams/commands/chat/chat-member-list.js +14 -10
  523. package/dist/m365/teams/commands/chat/chat-message-list.js +30 -26
  524. package/dist/m365/teams/commands/chat/chat-message-send.js +15 -11
  525. package/dist/m365/teams/commands/chat/chatUtil.js +2 -1
  526. package/dist/m365/teams/commands/funsettings/funsettings-list.js +20 -16
  527. package/dist/m365/teams/commands/funsettings/funsettings-set.js +29 -23
  528. package/dist/m365/teams/commands/guestsettings/guestsettings-list.js +20 -16
  529. package/dist/m365/teams/commands/guestsettings/guestsettings-set.js +26 -20
  530. package/dist/m365/teams/commands/meeting/meeting-list.js +153 -0
  531. package/dist/m365/teams/commands/membersettings/membersettings-list.js +20 -16
  532. package/dist/m365/teams/commands/membersettings/membersettings-set.js +26 -20
  533. package/dist/m365/teams/commands/message/message-get.js +20 -17
  534. package/dist/m365/teams/commands/message/message-list.js +22 -18
  535. package/dist/m365/teams/commands/message/message-reply-list.js +19 -15
  536. package/dist/m365/teams/commands/messagingsettings/messagingsettings-list.js +20 -16
  537. package/dist/m365/teams/commands/messagingsettings/messagingsettings-set.js +27 -21
  538. package/dist/m365/teams/commands/report/report-directroutingcalls.js +22 -18
  539. package/dist/m365/teams/commands/report/report-pstncalls.js +22 -18
  540. package/dist/m365/teams/commands/tab/tab-add.js +24 -20
  541. package/dist/m365/teams/commands/tab/tab-get.js +28 -32
  542. package/dist/m365/teams/commands/tab/tab-list.js +19 -14
  543. package/dist/m365/teams/commands/tab/tab-remove.js +35 -31
  544. package/dist/m365/teams/commands/team/team-add.js +53 -55
  545. package/dist/m365/teams/commands/team/team-archive.js +29 -28
  546. package/dist/m365/teams/commands/team/team-clone.js +35 -29
  547. package/dist/m365/teams/commands/team/team-get.js +21 -19
  548. package/dist/m365/teams/commands/team/team-list.js +29 -19
  549. package/dist/m365/teams/commands/team/team-remove.js +37 -37
  550. package/dist/m365/teams/commands/team/team-set.js +21 -22
  551. package/dist/m365/teams/commands/team/team-unarchive.js +25 -21
  552. package/dist/m365/teams/commands/user/user-app-add.js +23 -18
  553. package/dist/m365/teams/commands/user/user-app-list.js +33 -32
  554. package/dist/m365/teams/commands/user/user-app-remove.js +33 -32
  555. package/dist/m365/teams/commands/user/user-list.js +21 -22
  556. package/dist/m365/teams/commands.js +1 -0
  557. package/dist/m365/tenant/commands/id/id-get.js +37 -26
  558. package/dist/m365/tenant/commands/report/report-office365activationcounts.js +38 -24
  559. package/dist/m365/tenant/commands/report/report-office365activationsusercounts.js +38 -24
  560. package/dist/m365/tenant/commands/report/report-office365activationsuserdetail.js +38 -24
  561. package/dist/m365/tenant/commands/security/security-alerts-list.js +21 -8
  562. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-health-get.js +19 -7
  563. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-health-list.js +19 -7
  564. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-healthissue-get.js +27 -14
  565. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-healthissue-list.js +25 -12
  566. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-message-get.js +20 -17
  567. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-message-list.js +25 -12
  568. package/dist/m365/todo/commands/list/list-add.js +31 -19
  569. package/dist/m365/todo/commands/list/list-get.js +89 -0
  570. package/dist/m365/todo/commands/list/list-list.js +20 -8
  571. package/dist/m365/todo/commands/list/list-remove.js +57 -49
  572. package/dist/m365/todo/commands/list/list-set.js +34 -22
  573. package/dist/m365/todo/commands/task/task-add.js +86 -24
  574. package/dist/m365/todo/commands/task/task-get.js +108 -0
  575. package/dist/m365/todo/commands/task/task-list.js +33 -23
  576. package/dist/m365/todo/commands/task/task-remove.js +57 -49
  577. package/dist/m365/todo/commands/task/task-set.js +76 -22
  578. package/dist/m365/todo/commands.js +2 -0
  579. package/dist/m365/util/commands/accesstoken/accesstoken-get.js +26 -14
  580. package/dist/m365/viva/commands/connections/connections-app-create.js +104 -106
  581. package/dist/m365/yammer/commands/group/group-list.js +11 -8
  582. package/dist/m365/yammer/commands/group/group-user-add.js +21 -16
  583. package/dist/m365/yammer/commands/group/group-user-remove.js +39 -38
  584. package/dist/m365/yammer/commands/message/message-add.js +27 -24
  585. package/dist/m365/yammer/commands/message/message-get.js +18 -15
  586. package/dist/m365/yammer/commands/message/message-like-set.js +45 -46
  587. package/dist/m365/yammer/commands/message/message-list.js +24 -21
  588. package/dist/m365/yammer/commands/message/message-remove.js +31 -30
  589. package/dist/m365/yammer/commands/network/network-list.js +29 -17
  590. package/dist/m365/yammer/commands/user/user-get.js +26 -22
  591. package/dist/m365/yammer/commands/user/user-list.js +11 -8
  592. package/dist/m365/yammer/commands/yammer-search.js +78 -74
  593. package/dist/request.js +4 -4
  594. package/dist/utils/aadGroup.js +2 -1
  595. package/dist/utils/cache.js +81 -0
  596. package/dist/utils/md.js +8 -1
  597. package/dist/utils/pid.js +57 -0
  598. package/dist/utils/powerPlatform.js +43 -0
  599. package/dist/utils/spo.js +10 -8
  600. package/docs/docs/_clisettings.md +18 -0
  601. package/docs/docs/cmd/aad/app/app-add.md +19 -19
  602. package/docs/docs/cmd/aad/app/app-list.md +149 -0
  603. package/docs/docs/cmd/aad/user/user-guest-add.md +107 -0
  604. package/docs/docs/cmd/aad/user/user-signin-list.md +1 -1
  605. package/docs/docs/cmd/adaptivecard/adaptivecard-send.md +12 -5
  606. package/docs/docs/cmd/app/app-get.md +156 -0
  607. package/docs/docs/cmd/app/app-open.md +20 -0
  608. package/docs/docs/cmd/app/permission/permission-list.md +43 -0
  609. package/docs/docs/cmd/booking/business/business-get.md +107 -0
  610. package/docs/docs/cmd/booking/business/business-list.md +34 -0
  611. package/docs/docs/cmd/flow/flow-get.md +1 -1
  612. package/docs/docs/cmd/graph/schemaextension/schemaextension-add.md +4 -11
  613. package/docs/docs/cmd/graph/schemaextension/schemaextension-set.md +4 -10
  614. package/docs/docs/cmd/onedrive/report/report-activityusercounts.md +1 -1
  615. package/docs/docs/cmd/outlook/mail/mail-send.md +38 -10
  616. package/docs/docs/cmd/outlook/message/message-get.md +48 -0
  617. package/docs/docs/cmd/pa/app/app-get.md +184 -0
  618. package/docs/docs/cmd/pa/app/app-list.md +181 -0
  619. package/docs/docs/cmd/pa/app/app-remove.md +4 -0
  620. package/docs/docs/cmd/pa/connector/connector-export.md +4 -0
  621. package/docs/docs/cmd/pa/connector/connector-list.md +89 -0
  622. package/docs/docs/cmd/pa/environment/environment-get.md +113 -0
  623. package/docs/docs/cmd/pa/environment/environment-list.md +109 -0
  624. package/docs/docs/cmd/pa/pcf/pcf-init.md +4 -0
  625. package/docs/docs/cmd/pa/solution/solution-init.md +5 -0
  626. package/docs/docs/cmd/pa/solution/solution-reference-add.md +4 -0
  627. package/docs/docs/cmd/planner/bucket/bucket-add.md +29 -0
  628. package/docs/docs/cmd/planner/bucket/bucket-get.md +29 -0
  629. package/docs/docs/cmd/planner/bucket/bucket-list.md +30 -0
  630. package/docs/docs/cmd/planner/bucket/bucket-remove.md +4 -0
  631. package/docs/docs/cmd/planner/bucket/bucket-set.md +4 -0
  632. package/docs/docs/cmd/planner/plan/plan-add.md +123 -0
  633. package/docs/docs/cmd/planner/plan/plan-get.md +77 -8
  634. package/docs/docs/cmd/planner/plan/plan-list.md +45 -0
  635. package/docs/docs/cmd/planner/plan/plan-remove.md +4 -0
  636. package/docs/docs/cmd/planner/task/task-checklistitem-list.md +1 -1
  637. package/docs/docs/cmd/planner/task/task-get.md +0 -3
  638. package/docs/docs/cmd/planner/task/task-reference-add.md +1 -1
  639. package/docs/docs/cmd/pp/card/card-clone.md +77 -0
  640. package/docs/docs/cmd/pp/card/card-get.md +122 -0
  641. package/docs/docs/cmd/pp/card/card-list.md +104 -0
  642. package/docs/docs/cmd/pp/card/card-remove.md +82 -0
  643. package/docs/docs/cmd/pp/dataverse/dataverse-table-get.md +120 -0
  644. package/docs/docs/cmd/pp/dataverse/dataverse-table-list.md +118 -0
  645. package/docs/docs/cmd/pp/environment/environment-get.md +346 -0
  646. package/docs/docs/cmd/pp/environment/environment-list.md +313 -1
  647. package/docs/docs/cmd/pp/gateway/gateway-get.md +56 -0
  648. package/docs/docs/cmd/pp/gateway/gateway-list.md +35 -0
  649. package/docs/docs/cmd/pp/managementapp/managementapp-add.md +23 -0
  650. package/docs/docs/cmd/pp/managementapp/managementapp-list.md +27 -0
  651. package/docs/docs/cmd/pp/solution/solution-get.md +86 -0
  652. package/docs/docs/cmd/pp/solution/solution-list.md +70 -0
  653. package/docs/docs/cmd/pp/solution/solution-publisher-get.md +83 -0
  654. package/docs/docs/cmd/pp/solution/solution-publisher-list.md +71 -0
  655. package/docs/docs/cmd/pp/solution/solution-publisher-remove.md +58 -0
  656. package/docs/docs/cmd/pp/solution/solution-remove.md +82 -0
  657. package/docs/docs/cmd/pp/tenant/tenant-settings-list.md +88 -0
  658. package/docs/docs/cmd/search/externalconnection/externalconnection-remove.md +1 -1
  659. package/docs/docs/cmd/spfx/project/project-rename.md +1 -14
  660. package/docs/docs/cmd/spfx/project/project-upgrade.md +1 -1
  661. package/docs/docs/cmd/spfx/spfx-doctor.md +10 -1
  662. package/docs/docs/cmd/spo/contenttype/contenttype-add.md +20 -2
  663. package/docs/docs/cmd/spo/contenttype/contenttype-field-remove.md +22 -4
  664. package/docs/docs/cmd/spo/contenttype/contenttype-get.md +21 -3
  665. package/docs/docs/cmd/spo/contenttype/contenttype-set.md +45 -0
  666. package/docs/docs/cmd/spo/customaction/customaction-add.md +3 -0
  667. package/docs/docs/cmd/spo/customaction/customaction-set.md +3 -2
  668. package/docs/docs/cmd/spo/eventreceiver/eventreceiver-get.md +2 -2
  669. package/docs/docs/cmd/spo/eventreceiver/eventreceiver-remove.md +69 -0
  670. package/docs/docs/cmd/spo/field/field-add.md +20 -2
  671. package/docs/docs/cmd/spo/field/field-set.md +15 -3
  672. package/docs/docs/cmd/spo/file/file-roleassignment-add.md +57 -0
  673. package/docs/docs/cmd/spo/file/file-roleassignment-remove.md +54 -0
  674. package/docs/docs/cmd/spo/file/file-roleinheritance-break.md +54 -0
  675. package/docs/docs/cmd/spo/file/file-roleinheritance-reset.md +39 -0
  676. package/docs/docs/cmd/spo/file/file-version-clear.md +55 -0
  677. package/docs/docs/cmd/spo/file/file-version-get.md +76 -0
  678. package/docs/docs/cmd/spo/file/file-version-list.md +76 -0
  679. package/docs/docs/cmd/spo/file/file-version-remove.md +58 -0
  680. package/docs/docs/cmd/spo/file/file-version-restore.md +58 -0
  681. package/docs/docs/cmd/spo/folder/folder-get.md +13 -4
  682. package/docs/docs/cmd/spo/folder/folder-list.md +45 -0
  683. package/docs/docs/cmd/spo/folder/folder-roleassignment-add.md +59 -0
  684. package/docs/docs/cmd/spo/folder/folder-roleassignment-remove.md +57 -0
  685. package/docs/docs/cmd/spo/folder/folder-roleinheritance-break.md +45 -0
  686. package/docs/docs/cmd/spo/folder/folder-roleinheritance-reset.md +42 -0
  687. package/docs/docs/cmd/spo/group/group-list.md +10 -1
  688. package/docs/docs/cmd/spo/hubsite/hubsite-connect.md +36 -14
  689. package/docs/docs/cmd/spo/hubsite/hubsite-data-get.md +0 -3
  690. package/docs/docs/cmd/spo/hubsite/hubsite-disconnect.md +28 -12
  691. package/docs/docs/cmd/spo/hubsite/hubsite-get.md +3 -3
  692. package/docs/docs/cmd/spo/hubsite/hubsite-register.md +2 -2
  693. package/docs/docs/cmd/spo/hubsite/hubsite-rights-grant.md +2 -5
  694. package/docs/docs/cmd/spo/hubsite/hubsite-rights-revoke.md +2 -5
  695. package/docs/docs/cmd/spo/hubsite/hubsite-set.md +2 -5
  696. package/docs/docs/cmd/spo/hubsite/hubsite-unregister.md +2 -2
  697. package/docs/docs/cmd/spo/list/list-contenttype-add.md +15 -6
  698. package/docs/docs/cmd/spo/list/list-contenttype-default-set.md +16 -7
  699. package/docs/docs/cmd/spo/list/list-contenttype-list.md +15 -6
  700. package/docs/docs/cmd/spo/list/list-contenttype-remove.md +16 -7
  701. package/docs/docs/cmd/spo/list/list-roleassignment-add.md +10 -10
  702. package/docs/docs/cmd/spo/list/list-roleassignment-remove.md +9 -9
  703. package/docs/docs/cmd/spo/list/list-roleinheritance-break.md +11 -8
  704. package/docs/docs/cmd/spo/list/list-roleinheritance-reset.md +16 -7
  705. package/docs/docs/cmd/spo/list/list-set.md +18 -6
  706. package/docs/docs/cmd/spo/list/list-view-field-add.md +14 -4
  707. package/docs/docs/cmd/spo/list/list-view-field-remove.md +11 -2
  708. package/docs/docs/cmd/spo/list/list-view-field-set.md +18 -2
  709. package/docs/docs/cmd/spo/list/list-view-list.md +16 -7
  710. package/docs/docs/cmd/spo/list/list-view-remove.md +12 -3
  711. package/docs/docs/cmd/spo/list/list-view-set.md +20 -6
  712. package/docs/docs/cmd/spo/list/list-webhook-add.md +15 -16
  713. package/docs/docs/cmd/spo/list/list-webhook-get.md +16 -7
  714. package/docs/docs/cmd/spo/list/list-webhook-list.md +13 -10
  715. package/docs/docs/cmd/spo/list/list-webhook-remove.md +12 -10
  716. package/docs/docs/cmd/spo/list/list-webhook-set.md +21 -12
  717. package/docs/docs/cmd/spo/listitem/listitem-add.md +11 -2
  718. package/docs/docs/cmd/spo/listitem/listitem-attachment-list.md +11 -2
  719. package/docs/docs/cmd/spo/listitem/listitem-get.md +11 -2
  720. package/docs/docs/cmd/spo/listitem/listitem-isrecord.md +12 -2
  721. package/docs/docs/cmd/spo/listitem/listitem-list.md +17 -8
  722. package/docs/docs/cmd/spo/listitem/listitem-record-declare.md +7 -4
  723. package/docs/docs/cmd/spo/listitem/listitem-record-undeclare.md +11 -2
  724. package/docs/docs/cmd/spo/listitem/listitem-remove.md +11 -2
  725. package/docs/docs/cmd/spo/listitem/listitem-roleassignment-add.md +81 -0
  726. package/docs/docs/cmd/spo/listitem/listitem-roleassignment-remove.md +9 -9
  727. package/docs/docs/cmd/spo/listitem/listitem-roleinheritance-break.md +7 -4
  728. package/docs/docs/cmd/spo/listitem/listitem-roleinheritance-reset.md +8 -5
  729. package/docs/docs/cmd/spo/listitem/listitem-set.md +7 -4
  730. package/docs/docs/cmd/spo/page/page-clientsidewebpart-add.md +14 -19
  731. package/docs/docs/cmd/spo/page/page-control-set.md +2 -1
  732. package/docs/docs/cmd/spo/roledefinition/roledefinition-add.md +43 -0
  733. package/docs/docs/cmd/spo/site/site-add.md +0 -3
  734. package/docs/docs/cmd/spo/site/site-apppermission-add.md +1 -1
  735. package/docs/docs/cmd/spo/site/site-apppermission-set.md +1 -1
  736. package/docs/docs/cmd/spo/site/site-hubsite-connect.md +37 -0
  737. package/docs/docs/cmd/spo/site/site-hubsite-disconnect.md +37 -0
  738. package/docs/docs/cmd/spo/site/site-hubsite-theme-sync.md +28 -0
  739. package/docs/docs/cmd/spo/sitedesign/sitedesign-get.md +2 -2
  740. package/docs/docs/cmd/spo/spo-get.md +23 -0
  741. package/docs/docs/cmd/spo/spo-search.md +29 -0
  742. package/docs/docs/cmd/spo/spo-set.md +4 -0
  743. package/docs/docs/cmd/spo/term/term-add.md +5 -0
  744. package/docs/docs/cmd/spo/term/term-set-add.md +6 -1
  745. package/docs/docs/cmd/spo/user/user-get.md +49 -2
  746. package/docs/docs/cmd/spo/user/user-list.md +41 -0
  747. package/docs/docs/cmd/spo/user/user-remove.md +4 -0
  748. package/docs/docs/cmd/spo/userprofile/userprofile-get.md +586 -0
  749. package/docs/docs/cmd/spo/userprofile/userprofile-set.md +4 -0
  750. package/docs/docs/cmd/spo/web/web-add.md +43 -0
  751. package/docs/docs/cmd/spo/web/web-clientsidewebpart-list.md +29 -0
  752. package/docs/docs/cmd/spo/web/web-get.md +127 -0
  753. package/docs/docs/cmd/spo/web/web-installedlanguage-list.md +29 -0
  754. package/docs/docs/cmd/spo/web/web-list.md +81 -0
  755. package/docs/docs/cmd/spo/web/web-reindex.md +4 -0
  756. package/docs/docs/cmd/spo/web/web-remove.md +4 -0
  757. package/docs/docs/cmd/spo/web/web-roleassignment-add.md +15 -11
  758. package/docs/docs/cmd/spo/web/web-roleassignment-remove.md +13 -9
  759. package/docs/docs/cmd/spo/web/web-roleinheritance-break.md +44 -0
  760. package/docs/docs/cmd/spo/web/web-roleinheritance-reset.md +5 -1
  761. package/docs/docs/cmd/spo/web/web-set.md +4 -0
  762. package/docs/docs/cmd/teams/app/app-install.md +4 -0
  763. package/docs/docs/cmd/teams/app/app-list.md +30 -0
  764. package/docs/docs/cmd/teams/app/app-publish.md +31 -1
  765. package/docs/docs/cmd/teams/app/app-remove.md +4 -0
  766. package/docs/docs/cmd/teams/app/app-uninstall.md +4 -0
  767. package/docs/docs/cmd/teams/app/app-update.md +4 -0
  768. package/docs/docs/cmd/teams/cache/cache-remove.md +5 -1
  769. package/docs/docs/cmd/teams/channel/channel-add.md +42 -5
  770. package/docs/docs/cmd/teams/channel/channel-get.md +46 -7
  771. package/docs/docs/cmd/teams/channel/channel-list.md +36 -1
  772. package/docs/docs/cmd/teams/channel/channel-member-add.md +9 -5
  773. package/docs/docs/cmd/teams/channel/channel-member-list.md +37 -0
  774. package/docs/docs/cmd/teams/channel/channel-member-remove.md +5 -1
  775. package/docs/docs/cmd/teams/channel/channel-member-set.md +37 -2
  776. package/docs/docs/cmd/teams/channel/channel-remove.md +16 -9
  777. package/docs/docs/cmd/teams/channel/channel-set.md +16 -6
  778. package/docs/docs/cmd/teams/chat/chat-get.md +42 -0
  779. package/docs/docs/cmd/teams/chat/chat-list.md +38 -0
  780. package/docs/docs/cmd/teams/chat/chat-member-list.md +35 -0
  781. package/docs/docs/cmd/teams/chat/chat-message-list.md +60 -0
  782. package/docs/docs/cmd/teams/chat/chat-message-send.md +4 -0
  783. package/docs/docs/cmd/teams/funsettings/funsettings-list.md +29 -0
  784. package/docs/docs/cmd/teams/funsettings/funsettings-set.md +10 -6
  785. package/docs/docs/cmd/teams/guestsettings/guestsettings-list.md +25 -0
  786. package/docs/docs/cmd/teams/guestsettings/guestsettings-set.md +4 -0
  787. package/docs/docs/cmd/teams/meeting/meeting-list.md +149 -0
  788. package/docs/docs/cmd/teams/membersettings/membersettings-list.md +33 -0
  789. package/docs/docs/cmd/teams/membersettings/membersettings-set.md +4 -0
  790. package/docs/docs/cmd/teams/message/message-get.md +80 -0
  791. package/docs/docs/cmd/teams/message/message-list.md +63 -0
  792. package/docs/docs/cmd/teams/message/message-reply-list.md +63 -0
  793. package/docs/docs/cmd/teams/messagingsettings/messagingsettings-list.md +31 -0
  794. package/docs/docs/cmd/teams/messagingsettings/messagingsettings-set.md +4 -0
  795. package/docs/docs/cmd/teams/report/report-deviceusagedistributionusercounts.md +35 -0
  796. package/docs/docs/cmd/teams/report/report-deviceusageusercounts.md +36 -0
  797. package/docs/docs/cmd/teams/report/report-deviceusageuserdetail.md +41 -0
  798. package/docs/docs/cmd/teams/report/report-directroutingcalls.md +49 -0
  799. package/docs/docs/cmd/teams/report/report-pstncalls.md +49 -0
  800. package/docs/docs/cmd/teams/report/report-useractivitycounts.md +39 -0
  801. package/docs/docs/cmd/teams/report/report-useractivityusercounts.md +33 -0
  802. package/docs/docs/cmd/teams/report/report-useractivityuserdetail.md +58 -0
  803. package/docs/docs/cmd/teams/tab/tab-add.md +35 -0
  804. package/docs/docs/cmd/teams/tab/tab-get.md +35 -0
  805. package/docs/docs/cmd/teams/tab/tab-list.md +43 -0
  806. package/docs/docs/cmd/teams/tab/tab-remove.md +4 -0
  807. package/docs/docs/cmd/teams/team/team-add.md +145 -0
  808. package/docs/docs/cmd/teams/team/team-archive.md +7 -3
  809. package/docs/docs/cmd/teams/team/team-clone.md +4 -3
  810. package/docs/docs/cmd/teams/team/team-get.md +78 -0
  811. package/docs/docs/cmd/teams/team/team-list.md +30 -0
  812. package/docs/docs/cmd/teams/team/team-remove.md +7 -3
  813. package/docs/docs/cmd/teams/team/team-set.md +4 -3
  814. package/docs/docs/cmd/teams/team/team-unarchive.md +5 -2
  815. package/docs/docs/cmd/teams/user/user-app-add.md +4 -0
  816. package/docs/docs/cmd/teams/user/user-app-list.md +40 -0
  817. package/docs/docs/cmd/teams/user/user-app-remove.md +4 -0
  818. package/docs/docs/cmd/teams/user/user-list.md +31 -0
  819. package/docs/docs/cmd/tenant/id/id-get.md +20 -0
  820. package/docs/docs/cmd/tenant/report/report-activeusercounts.md +35 -0
  821. package/docs/docs/cmd/tenant/report/report-activeuserdetail.md +49 -0
  822. package/docs/docs/cmd/tenant/report/report-office365activationcounts.md +32 -0
  823. package/docs/docs/cmd/tenant/report/report-office365activationsusercounts.md +30 -0
  824. package/docs/docs/cmd/tenant/report/report-office365activationsuserdetail.md +36 -0
  825. package/docs/docs/cmd/tenant/report/report-servicesusercounts.md +41 -0
  826. package/docs/docs/cmd/tenant/security/security-alerts-list.md +106 -1
  827. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-health-get.md +88 -1
  828. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-health-list.md +92 -1
  829. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-healthissue-get.md +62 -0
  830. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-healthissue-list.md +51 -0
  831. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-message-get.md +64 -0
  832. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-message-list.md +52 -0
  833. package/docs/docs/cmd/todo/list/list-add.md +32 -1
  834. package/docs/docs/cmd/todo/list/list-get.md +61 -0
  835. package/docs/docs/cmd/todo/list/list-list.md +31 -0
  836. package/docs/docs/cmd/todo/list/list-remove.md +10 -6
  837. package/docs/docs/cmd/todo/list/list-set.md +9 -5
  838. package/docs/docs/cmd/todo/task/task-add.md +88 -5
  839. package/docs/docs/cmd/todo/task/task-get.md +75 -0
  840. package/docs/docs/cmd/todo/task/task-list.md +47 -0
  841. package/docs/docs/cmd/todo/task/task-remove.md +9 -4
  842. package/docs/docs/cmd/todo/task/task-set.md +88 -7
  843. package/docs/docs/cmd/util/accesstoken/accesstoken-get.md +20 -0
  844. package/docs/docs/cmd/viva/connections/connections-app-create.md +4 -0
  845. package/npm-shrinkwrap.json +342 -357
  846. package/package.json +37 -20
  847. package/dist/cli/index.js +0 -21
  848. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN006006_CFG_PS_features.js +0 -60
  849. package/dist/m365/spo/commands/hubsite/hubsite-theme-sync.js +0 -59
  850. package/dist/utils/index.js +0 -31
  851. package/docs/docs/cmd/spo/hubsite/hubsite-theme-sync.md +0 -33
@@ -17,6 +17,7 @@ var _AadAppSetCommand_instances, _AadAppSetCommand_initTelemetry, _AadAppSetComm
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const fs = require("fs");
19
19
  const request_1 = require("../../../../request");
20
+ const formatting_1 = require("../../../../utils/formatting");
20
21
  const GraphCommand_1 = require("../../../base/GraphCommand");
21
22
  const commands_1 = require("../../commands");
22
23
  class AadAppSetCommand extends GraphCommand_1.default {
@@ -34,13 +35,18 @@ class AadAppSetCommand extends GraphCommand_1.default {
34
35
  get description() {
35
36
  return 'Updates Azure AD app registration';
36
37
  }
37
- commandAction(logger, args, cb) {
38
- this
39
- .getAppObjectId(args, logger)
40
- .then(objectId => this.configureUri(args, objectId, logger))
41
- .then(objectId => this.configureRedirectUris(args, objectId, logger))
42
- .then(objectId => this.configureCertificate(args, objectId, logger))
43
- .then(_ => cb(), (rawRes) => this.handleRejectedODataJsonPromise(rawRes, logger, cb));
38
+ commandAction(logger, args) {
39
+ return __awaiter(this, void 0, void 0, function* () {
40
+ try {
41
+ let objectId = yield this.getAppObjectId(args, logger);
42
+ objectId = yield this.configureUri(args, objectId, logger);
43
+ objectId = yield this.configureRedirectUris(args, objectId, logger);
44
+ yield this.configureCertificate(args, objectId, logger);
45
+ }
46
+ catch (err) {
47
+ this.handleRejectedODataJsonPromise(err);
48
+ }
49
+ });
44
50
  }
45
51
  getAppObjectId(args, logger) {
46
52
  if (args.options.objectId) {
@@ -51,8 +57,8 @@ class AadAppSetCommand extends GraphCommand_1.default {
51
57
  logger.logToStderr(`Retrieving information about Azure AD app ${appId ? appId : name}...`);
52
58
  }
53
59
  const filter = appId ?
54
- `appId eq '${encodeURIComponent(appId)}'` :
55
- `displayName eq '${encodeURIComponent(name)}'`;
60
+ `appId eq '${formatting_1.formatting.encodeQueryParameter(appId)}'` :
61
+ `displayName eq '${formatting_1.formatting.encodeQueryParameter(name)}'`;
56
62
  const requestOptions = {
57
63
  url: `${this.resource}/v1.0/myorganization/applications?$filter=${filter}&$select=id`,
58
64
  headers: {
@@ -17,7 +17,8 @@ var _AadAppRoleAssignmentAddCommand_instances, _AadAppRoleAssignmentAddCommand_i
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const os = require("os");
19
19
  const request_1 = require("../../../../request");
20
- const utils_1 = require("../../../../utils");
20
+ const formatting_1 = require("../../../../utils/formatting");
21
+ const validation_1 = require("../../../../utils/validation");
21
22
  const GraphCommand_1 = require("../../../base/GraphCommand");
22
23
  const commands_1 = require("../../commands");
23
24
  class AadAppRoleAssignmentAddCommand extends GraphCommand_1.default {
@@ -35,111 +36,107 @@ class AadAppRoleAssignmentAddCommand extends GraphCommand_1.default {
35
36
  get description() {
36
37
  return 'Adds service principal permissions also known as scopes and app role assignments for specified Azure AD application registration';
37
38
  }
38
- commandAction(logger, args, cb) {
39
- let objectId = '';
40
- let queryFilter = '';
41
- if (args.options.appId) {
42
- queryFilter = `$filter=appId eq '${encodeURIComponent(args.options.appId)}'`;
43
- }
44
- else if (args.options.appObjectId) {
45
- queryFilter = `$filter=id eq '${encodeURIComponent(args.options.appObjectId)}'`;
46
- }
47
- else {
48
- queryFilter = `$filter=displayName eq '${encodeURIComponent(args.options.appDisplayName)}'`;
49
- }
50
- const getServicePrinciplesRequestOptions = {
51
- url: `${this.resource}/v1.0/servicePrincipals?${queryFilter}`,
52
- headers: {
53
- accept: 'application/json'
54
- },
55
- responseType: 'json'
56
- };
57
- request_1.default
58
- .get(getServicePrinciplesRequestOptions)
59
- .then((servicePrincipalResult) => {
60
- if (servicePrincipalResult.value.length > 1) {
61
- return Promise.reject('More than one service principal found. Please use the appId or appObjectId option to make sure the right service principal is specified.');
39
+ commandAction(logger, args) {
40
+ return __awaiter(this, void 0, void 0, function* () {
41
+ let objectId = '';
42
+ let queryFilter = '';
43
+ if (args.options.appId) {
44
+ queryFilter = `$filter=appId eq '${formatting_1.formatting.encodeQueryParameter(args.options.appId)}'`;
62
45
  }
63
- objectId = servicePrincipalResult.value[0].id;
64
- let resource = encodeURIComponent(args.options.resource);
65
- // try resolve aliases that the user might enter since these are seen in the Azure portal
66
- switch (args.options.resource.toLocaleLowerCase()) {
67
- case 'sharepoint':
68
- resource = 'Office 365 SharePoint Online';
69
- break;
70
- case 'intune':
71
- resource = 'Microsoft Intune API';
72
- break;
73
- case 'exchange':
74
- resource = 'Office 365 Exchange Online';
75
- break;
46
+ else if (args.options.appObjectId) {
47
+ queryFilter = `$filter=id eq '${formatting_1.formatting.encodeQueryParameter(args.options.appObjectId)}'`;
76
48
  }
77
- // will perform resource name, appId or objectId search
78
- let filter = `$filter=(displayName eq '${resource}' or startswith(displayName,'${resource}'))`;
79
- if (utils_1.validation.isValidGuid(resource)) {
80
- filter += ` or appId eq '${resource}' or id eq '${resource}'`;
49
+ else {
50
+ queryFilter = `$filter=displayName eq '${formatting_1.formatting.encodeQueryParameter(args.options.appDisplayName)}'`;
81
51
  }
82
- const requestOptions = {
83
- url: `${this.resource}/v1.0/servicePrincipals?${filter}`,
52
+ const getServicePrinciplesRequestOptions = {
53
+ url: `${this.resource}/v1.0/servicePrincipals?${queryFilter}`,
84
54
  headers: {
85
- 'accept': 'application/json'
55
+ accept: 'application/json'
86
56
  },
87
57
  responseType: 'json'
88
58
  };
89
- return request_1.default.get(requestOptions);
90
- })
91
- .then((res) => {
92
- const result = [];
93
- // flatten the app roles found
94
- const appRolesFound = [];
95
- for (const servicePrincipal of res.value) {
96
- for (const role of servicePrincipal.appRoles) {
97
- appRolesFound.push({
98
- resourceId: servicePrincipal.id,
99
- objectId: role.id,
100
- value: role.value
59
+ try {
60
+ const servicePrincipalResult = yield request_1.default.get(getServicePrinciplesRequestOptions);
61
+ if (servicePrincipalResult.value.length > 1) {
62
+ throw 'More than one service principal found. Please use the appId or appObjectId option to make sure the right service principal is specified.';
63
+ }
64
+ objectId = servicePrincipalResult.value[0].id;
65
+ let resource = formatting_1.formatting.encodeQueryParameter(args.options.resource);
66
+ // try resolve aliases that the user might enter since these are seen in the Azure portal
67
+ switch (args.options.resource.toLocaleLowerCase()) {
68
+ case 'sharepoint':
69
+ resource = 'Office 365 SharePoint Online';
70
+ break;
71
+ case 'intune':
72
+ resource = 'Microsoft Intune API';
73
+ break;
74
+ case 'exchange':
75
+ resource = 'Office 365 Exchange Online';
76
+ break;
77
+ }
78
+ // will perform resource name, appId or objectId search
79
+ let filter = `$filter=(displayName eq '${resource}' or startswith(displayName,'${resource}'))`;
80
+ if (validation_1.validation.isValidGuid(resource)) {
81
+ filter += ` or appId eq '${resource}' or id eq '${resource}'`;
82
+ }
83
+ const requestOptions = {
84
+ url: `${this.resource}/v1.0/servicePrincipals?${filter}`,
85
+ headers: {
86
+ 'accept': 'application/json'
87
+ },
88
+ responseType: 'json'
89
+ };
90
+ const res = yield request_1.default.get(requestOptions);
91
+ const appRoles = [];
92
+ // flatten the app roles found
93
+ const appRolesFound = [];
94
+ for (const servicePrincipal of res.value) {
95
+ for (const role of servicePrincipal.appRoles) {
96
+ appRolesFound.push({
97
+ resourceId: servicePrincipal.id,
98
+ objectId: role.id,
99
+ value: role.value
100
+ });
101
+ }
102
+ }
103
+ if (!appRolesFound.length) {
104
+ throw `The resource '${args.options.resource}' does not have any application permissions available.`;
105
+ }
106
+ // search for match between the found app roles and the specified scope option value
107
+ for (const scope of args.options.scope.split(',')) {
108
+ const existingRoles = appRolesFound.filter((role) => {
109
+ return role.value.toLocaleLowerCase() === scope.toLocaleLowerCase().trim();
101
110
  });
111
+ if (!existingRoles.length) {
112
+ // the role specified in the scope option does not belong to the found service principles
113
+ // throw an error and show list with available roles (scopes)
114
+ let availableRoles = '';
115
+ appRolesFound.map((r) => availableRoles += `${os.EOL}${r.value}`);
116
+ throw `The scope value '${scope}' you have specified does not exist for ${args.options.resource}. ${os.EOL}Available scopes (application permissions) are: ${availableRoles}`;
117
+ }
118
+ appRoles.push(existingRoles[0]);
102
119
  }
103
- }
104
- if (!appRolesFound.length) {
105
- return Promise.reject(`The resource '${args.options.resource}' does not have any application permissions available.`);
106
- }
107
- // search for match between the found app roles and the specified scope option value
108
- for (const scope of args.options.scope.split(',')) {
109
- const existingRoles = appRolesFound.filter((role) => {
110
- return role.value.toLocaleLowerCase() === scope.toLocaleLowerCase().trim();
111
- });
112
- if (!existingRoles.length) {
113
- // the role specified in the scope option does not belong to the found service principles
114
- // throw an error and show list with available roles (scopes)
115
- let availableRoles = '';
116
- appRolesFound.map((r) => availableRoles += `${os.EOL}${r.value}`);
117
- return Promise.reject(`The scope value '${scope}' you have specified does not exist for ${args.options.resource}. ${os.EOL}Available scopes (application permissions) are: ${availableRoles}`);
120
+ const tasks = [];
121
+ for (const appRole of appRoles) {
122
+ tasks.push(this.addRoleToServicePrincipal(objectId, appRole));
123
+ }
124
+ const rolesAddedResponse = yield Promise.all(tasks);
125
+ if (args.options.output && args.options.output.toLowerCase() === 'json') {
126
+ logger.log(rolesAddedResponse);
127
+ }
128
+ else {
129
+ logger.log(rolesAddedResponse.map((result) => ({
130
+ objectId: result.id,
131
+ principalDisplayName: result.principalDisplayName,
132
+ resourceDisplayName: result.resourceDisplayName
133
+ })));
118
134
  }
119
- result.push(existingRoles[0]);
120
- }
121
- return Promise.resolve(result);
122
- })
123
- .then((appRoles) => {
124
- const tasks = [];
125
- for (const appRole of appRoles) {
126
- tasks.push(this.addRoleToServicePrincipal(objectId, appRole));
127
135
  }
128
- return Promise.all(tasks);
129
- })
130
- .then((rolesAddedResponse) => {
131
- if (args.options.output && args.options.output.toLowerCase() === 'json') {
132
- logger.log(rolesAddedResponse);
136
+ catch (err) {
137
+ this.handleRejectedODataJsonPromise(err);
133
138
  }
134
- else {
135
- logger.log(rolesAddedResponse.map((result) => ({
136
- objectId: result.id,
137
- principalDisplayName: result.principalDisplayName,
138
- resourceDisplayName: result.resourceDisplayName
139
- })));
140
- }
141
- cb();
142
- }, (rawRes) => this.handleRejectedODataJsonPromise(rawRes, logger, cb));
139
+ });
143
140
  }
144
141
  addRoleToServicePrincipal(objectId, appRole) {
145
142
  const requestOptions = {
@@ -180,10 +177,10 @@ _AadAppRoleAssignmentAddCommand_instances = new WeakSet(), _AadAppRoleAssignment
180
177
  });
181
178
  }, _AadAppRoleAssignmentAddCommand_initValidators = function _AadAppRoleAssignmentAddCommand_initValidators() {
182
179
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
183
- if (args.options.appId && !utils_1.validation.isValidGuid(args.options.appId)) {
180
+ if (args.options.appId && !validation_1.validation.isValidGuid(args.options.appId)) {
184
181
  return `${args.options.appId} is not a valid GUID`;
185
182
  }
186
- if (args.options.appObjectId && !utils_1.validation.isValidGuid(args.options.appObjectId)) {
183
+ if (args.options.appObjectId && !validation_1.validation.isValidGuid(args.options.appObjectId)) {
187
184
  return `${args.options.appObjectId} is not a valid GUID`;
188
185
  }
189
186
  return true;
@@ -16,7 +16,8 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
16
16
  var _AadAppRoleAssignmentListCommand_instances, _AadAppRoleAssignmentListCommand_initTelemetry, _AadAppRoleAssignmentListCommand_initOptions, _AadAppRoleAssignmentListCommand_initValidators, _AadAppRoleAssignmentListCommand_initOptionSets;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const request_1 = require("../../../../request");
19
- const utils_1 = require("../../../../utils");
19
+ const formatting_1 = require("../../../../utils/formatting");
20
+ const validation_1 = require("../../../../utils/validation");
20
21
  const GraphCommand_1 = require("../../../base/GraphCommand");
21
22
  const commands_1 = require("../../commands");
22
23
  class AadAppRoleAssignmentListCommand extends GraphCommand_1.default {
@@ -37,45 +38,45 @@ class AadAppRoleAssignmentListCommand extends GraphCommand_1.default {
37
38
  defaultProperties() {
38
39
  return ['resourceDisplayName', 'roleName'];
39
40
  }
40
- commandAction(logger, args, cb) {
41
- let spAppRoleAssignments;
42
- this.getAppRoleAssignments(args.options)
43
- .then((appRoleAssignments) => {
44
- spAppRoleAssignments = appRoleAssignments;
45
- // the role assignment has an appRoleId but no name. To get the name,
46
- // we need to get all the roles from the resource. the resource is
47
- // a service principal. Multiple roles may have same resource id.
48
- const resourceIds = appRoleAssignments.map((item) => item.resourceId);
49
- const tasks = [];
50
- for (let i = 0; i < resourceIds.length; i++) {
51
- tasks.push(this.getServicePrincipal(resourceIds[i]));
52
- }
53
- return Promise.all(tasks);
54
- })
55
- .then((resources) => {
56
- // loop through all appRoleAssignments for the servicePrincipal
57
- // and lookup the appRole.Id in the resources[resourceId].appRoles array...
58
- const results = [];
59
- spAppRoleAssignments.map((appRoleAssignment) => {
60
- const resource = resources.find((r) => r.id === appRoleAssignment.resourceId);
61
- if (resource) {
62
- const appRole = resource.appRoles.find((r) => r.id === appRoleAssignment.appRoleId);
63
- if (appRole) {
64
- results.push({
65
- appRoleId: appRoleAssignment.appRoleId,
66
- resourceDisplayName: appRoleAssignment.resourceDisplayName,
67
- resourceId: appRoleAssignment.resourceId,
68
- roleId: appRole.id,
69
- roleName: appRole.value,
70
- created: appRoleAssignment.createdDateTime,
71
- deleted: appRoleAssignment.deletedDateTime
72
- });
73
- }
41
+ commandAction(logger, args) {
42
+ return __awaiter(this, void 0, void 0, function* () {
43
+ try {
44
+ const spAppRoleAssignments = yield this.getAppRoleAssignments(args.options);
45
+ // the role assignment has an appRoleId but no name. To get the name,
46
+ // we need to get all the roles from the resource. the resource is
47
+ // a service principal. Multiple roles may have same resource id.
48
+ const resourceIds = spAppRoleAssignments.map((item) => item.resourceId);
49
+ const tasks = [];
50
+ for (let i = 0; i < resourceIds.length; i++) {
51
+ tasks.push(this.getServicePrincipal(resourceIds[i]));
74
52
  }
75
- });
76
- logger.log(results);
77
- cb();
78
- }, (err) => this.handleRejectedODataJsonPromise(err, logger, cb));
53
+ const resources = yield Promise.all(tasks);
54
+ // loop through all appRoleAssignments for the servicePrincipal
55
+ // and lookup the appRole.Id in the resources[resourceId].appRoles array...
56
+ const results = [];
57
+ spAppRoleAssignments.map((appRoleAssignment) => {
58
+ const resource = resources.find((r) => r.id === appRoleAssignment.resourceId);
59
+ if (resource) {
60
+ const appRole = resource.appRoles.find((r) => r.id === appRoleAssignment.appRoleId);
61
+ if (appRole) {
62
+ results.push({
63
+ appRoleId: appRoleAssignment.appRoleId,
64
+ resourceDisplayName: appRoleAssignment.resourceDisplayName,
65
+ resourceId: appRoleAssignment.resourceId,
66
+ roleId: appRole.id,
67
+ roleName: appRole.value,
68
+ created: appRoleAssignment.createdDateTime,
69
+ deleted: appRoleAssignment.deletedDateTime
70
+ });
71
+ }
72
+ }
73
+ });
74
+ logger.log(results);
75
+ }
76
+ catch (err) {
77
+ this.handleRejectedODataJsonPromise(err);
78
+ }
79
+ });
79
80
  }
80
81
  getAppRoleAssignments(argOptions) {
81
82
  return new Promise((resolve, reject) => {
@@ -95,10 +96,10 @@ class AadAppRoleAssignmentListCommand extends GraphCommand_1.default {
95
96
  // Use existing way to get service principal object
96
97
  let spMatchQuery = '';
97
98
  if (argOptions.appId) {
98
- spMatchQuery = `appId eq '${encodeURIComponent(argOptions.appId)}'`;
99
+ spMatchQuery = `appId eq '${formatting_1.formatting.encodeQueryParameter(argOptions.appId)}'`;
99
100
  }
100
101
  else {
101
- spMatchQuery = `displayName eq '${encodeURIComponent(argOptions.appDisplayName)}'`;
102
+ spMatchQuery = `displayName eq '${formatting_1.formatting.encodeQueryParameter(argOptions.appDisplayName)}'`;
102
103
  }
103
104
  this.getServicePrincipalForApp(spMatchQuery)
104
105
  .then((resp) => {
@@ -162,10 +163,10 @@ _AadAppRoleAssignmentListCommand_instances = new WeakSet(), _AadAppRoleAssignmen
162
163
  });
163
164
  }, _AadAppRoleAssignmentListCommand_initValidators = function _AadAppRoleAssignmentListCommand_initValidators() {
164
165
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
165
- if (args.options.appId && !utils_1.validation.isValidGuid(args.options.appId)) {
166
+ if (args.options.appId && !validation_1.validation.isValidGuid(args.options.appId)) {
166
167
  return `${args.options.appId} is not a valid GUID`;
167
168
  }
168
- if (args.options.appObjectId && !utils_1.validation.isValidGuid(args.options.appObjectId)) {
169
+ if (args.options.appObjectId && !validation_1.validation.isValidGuid(args.options.appObjectId)) {
169
170
  return `${args.options.appObjectId} is not a valid GUID`;
170
171
  }
171
172
  return true;
@@ -16,9 +16,10 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
16
16
  var _AadAppRoleAssignmentRemoveCommand_instances, _AadAppRoleAssignmentRemoveCommand_initTelemetry, _AadAppRoleAssignmentRemoveCommand_initOptions, _AadAppRoleAssignmentRemoveCommand_initValidators, _AadAppRoleAssignmentRemoveCommand_initOptionSets;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const os = require("os");
19
- const cli_1 = require("../../../../cli");
19
+ const Cli_1 = require("../../../../cli/Cli");
20
20
  const request_1 = require("../../../../request");
21
- const utils_1 = require("../../../../utils");
21
+ const formatting_1 = require("../../../../utils/formatting");
22
+ const validation_1 = require("../../../../utils/validation");
22
23
  const GraphCommand_1 = require("../../../base/GraphCommand");
23
24
  const commands_1 = require("../../commands");
24
25
  class AadAppRoleAssignmentRemoveCommand extends GraphCommand_1.default {
@@ -36,105 +37,103 @@ class AadAppRoleAssignmentRemoveCommand extends GraphCommand_1.default {
36
37
  get description() {
37
38
  return 'Deletes an app role assignment for the specified Azure AD Application Registration';
38
39
  }
39
- commandAction(logger, args, cb) {
40
- const removeAppRoleAssignment = () => {
41
- let sp;
42
- // get the service principal associated with the appId
43
- let spMatchQuery = '';
44
- if (args.options.appId) {
45
- spMatchQuery = `appId eq '${encodeURIComponent(args.options.appId)}'`;
46
- }
47
- else if (args.options.appObjectId) {
48
- spMatchQuery = `id eq '${encodeURIComponent(args.options.appObjectId)}'`;
49
- }
50
- else {
51
- spMatchQuery = `displayName eq '${encodeURIComponent(args.options.appDisplayName)}'`;
52
- }
53
- this
54
- .getServicePrincipalForApp(spMatchQuery)
55
- .then((resp) => {
56
- if (!resp.value.length) {
57
- return Promise.reject('app registration not found');
58
- }
59
- sp = resp.value[0];
60
- let resource = encodeURIComponent(args.options.resource);
61
- // try resolve aliases that the user might enter since these are seen in the Azure portal
62
- switch (args.options.resource.toLocaleLowerCase()) {
63
- case 'sharepoint':
64
- resource = 'Office 365 SharePoint Online';
65
- break;
66
- case 'intune':
67
- resource = 'Microsoft Intune API';
68
- break;
69
- case 'exchange':
70
- resource = 'Office 365 Exchange Online';
71
- break;
72
- }
73
- // will perform resource name, appId or objectId search
74
- let filter = `$filter=(displayName eq '${resource}' or startswith(displayName,'${resource}'))`;
75
- if (utils_1.validation.isValidGuid(resource)) {
76
- filter += ` or appId eq '${resource}' or id eq '${resource}'`;
40
+ commandAction(logger, args) {
41
+ return __awaiter(this, void 0, void 0, function* () {
42
+ const removeAppRoleAssignment = () => __awaiter(this, void 0, void 0, function* () {
43
+ let sp;
44
+ // get the service principal associated with the appId
45
+ let spMatchQuery = '';
46
+ if (args.options.appId) {
47
+ spMatchQuery = `appId eq '${formatting_1.formatting.encodeQueryParameter(args.options.appId)}'`;
77
48
  }
78
- const requestOptions = {
79
- url: `${this.resource}/v1.0/servicePrincipals?${filter}`,
80
- headers: {
81
- 'accept': 'application/json'
82
- },
83
- responseType: 'json'
84
- };
85
- return request_1.default.get(requestOptions);
86
- })
87
- .then((resp) => {
88
- if (!resp.value.length) {
89
- return Promise.reject('Resource not found');
49
+ else if (args.options.appObjectId) {
50
+ spMatchQuery = `id eq '${formatting_1.formatting.encodeQueryParameter(args.options.appObjectId)}'`;
90
51
  }
91
- const appRolesToBeDeleted = [];
92
- const appRolesFound = resp.value[0].appRoles;
93
- if (!appRolesFound.length) {
94
- return Promise.reject(`The resource '${args.options.resource}' does not have any application permissions available.`);
52
+ else {
53
+ spMatchQuery = `displayName eq '${formatting_1.formatting.encodeQueryParameter(args.options.appDisplayName)}'`;
95
54
  }
96
- for (const scope of args.options.scope.split(',')) {
97
- const existingRoles = appRolesFound.filter((role) => {
98
- return role.value.toLocaleLowerCase() === scope.toLocaleLowerCase().trim();
99
- });
100
- if (!existingRoles.length) {
101
- // the role specified in the scope option does not belong to the found service principles
102
- // throw an error and show list with available roles (scopes)
103
- let availableRoles = '';
104
- appRolesFound.map((r) => availableRoles += `${os.EOL}${r.value}`);
105
- return Promise.reject(`The scope value '${scope}' you have specified does not exist for ${args.options.resource}. ${os.EOL}Available scopes (application permissions) are: ${availableRoles}`);
55
+ try {
56
+ let resp = yield this.getServicePrincipalForApp(spMatchQuery);
57
+ if (!resp.value.length) {
58
+ throw 'app registration not found';
106
59
  }
107
- appRolesToBeDeleted.push(existingRoles[0]);
108
- }
109
- const tasks = [];
110
- for (const appRole of appRolesToBeDeleted) {
111
- const appRoleAssignment = sp.appRoleAssignments.filter((role) => role.appRoleId === appRole.id);
112
- if (!appRoleAssignment.length) {
113
- return Promise.reject('App role assignment not found');
60
+ sp = resp.value[0];
61
+ let resource = formatting_1.formatting.encodeQueryParameter(args.options.resource);
62
+ // try resolve aliases that the user might enter since these are seen in the Azure portal
63
+ switch (args.options.resource.toLocaleLowerCase()) {
64
+ case 'sharepoint':
65
+ resource = 'Office 365 SharePoint Online';
66
+ break;
67
+ case 'intune':
68
+ resource = 'Microsoft Intune API';
69
+ break;
70
+ case 'exchange':
71
+ resource = 'Office 365 Exchange Online';
72
+ break;
114
73
  }
115
- tasks.push(this.removeAppRoleAssignmentForServicePrincipal(sp.id, appRoleAssignment[0].id));
116
- }
117
- return Promise.all(tasks);
118
- }).then(_ => cb(), (res) => this.handleRejectedODataJsonPromise(res, logger, cb));
119
- };
120
- if (args.options.confirm) {
121
- removeAppRoleAssignment();
122
- }
123
- else {
124
- cli_1.Cli.prompt({
125
- type: 'confirm',
126
- name: 'continue',
127
- default: false,
128
- message: `Are you sure you want to remove the appRoleAssignment with scope ${args.options.scope} for resource ${args.options.resource}?`
129
- }, (result) => {
130
- if (!result.continue) {
131
- cb();
74
+ // will perform resource name, appId or objectId search
75
+ let filter = `$filter=(displayName eq '${resource}' or startswith(displayName,'${resource}'))`;
76
+ if (validation_1.validation.isValidGuid(resource)) {
77
+ filter += ` or appId eq '${resource}' or id eq '${resource}'`;
78
+ }
79
+ const requestOptions = {
80
+ url: `${this.resource}/v1.0/servicePrincipals?${filter}`,
81
+ headers: {
82
+ 'accept': 'application/json'
83
+ },
84
+ responseType: 'json'
85
+ };
86
+ resp = yield request_1.default.get(requestOptions);
87
+ if (!resp.value.length) {
88
+ throw 'Resource not found';
89
+ }
90
+ const appRolesToBeDeleted = [];
91
+ const appRolesFound = resp.value[0].appRoles;
92
+ if (!appRolesFound.length) {
93
+ throw `The resource '${args.options.resource}' does not have any application permissions available.`;
94
+ }
95
+ for (const scope of args.options.scope.split(',')) {
96
+ const existingRoles = appRolesFound.filter((role) => {
97
+ return role.value.toLocaleLowerCase() === scope.toLocaleLowerCase().trim();
98
+ });
99
+ if (!existingRoles.length) {
100
+ // the role specified in the scope option does not belong to the found service principles
101
+ // throw an error and show list with available roles (scopes)
102
+ let availableRoles = '';
103
+ appRolesFound.map((r) => availableRoles += `${os.EOL}${r.value}`);
104
+ throw `The scope value '${scope}' you have specified does not exist for ${args.options.resource}. ${os.EOL}Available scopes (application permissions) are: ${availableRoles}`;
105
+ }
106
+ appRolesToBeDeleted.push(existingRoles[0]);
107
+ }
108
+ const tasks = [];
109
+ for (const appRole of appRolesToBeDeleted) {
110
+ const appRoleAssignment = sp.appRoleAssignments.filter((role) => role.appRoleId === appRole.id);
111
+ if (!appRoleAssignment.length) {
112
+ throw 'App role assignment not found';
113
+ }
114
+ tasks.push(this.removeAppRoleAssignmentForServicePrincipal(sp.id, appRoleAssignment[0].id));
115
+ }
116
+ yield Promise.all(tasks);
132
117
  }
133
- else {
134
- removeAppRoleAssignment();
118
+ catch (err) {
119
+ this.handleRejectedODataJsonPromise(err);
135
120
  }
136
121
  });
137
- }
122
+ if (args.options.confirm) {
123
+ yield removeAppRoleAssignment();
124
+ }
125
+ else {
126
+ const result = yield Cli_1.Cli.prompt({
127
+ type: 'confirm',
128
+ name: 'continue',
129
+ default: false,
130
+ message: `Are you sure you want to remove the appRoleAssignment with scope ${args.options.scope} for resource ${args.options.resource}?`
131
+ });
132
+ if (result.continue) {
133
+ yield removeAppRoleAssignment();
134
+ }
135
+ }
136
+ });
138
137
  }
139
138
  getServicePrincipalForApp(filterParam) {
140
139
  const spRequestOptions = {
@@ -183,10 +182,10 @@ _AadAppRoleAssignmentRemoveCommand_instances = new WeakSet(), _AadAppRoleAssignm
183
182
  });
184
183
  }, _AadAppRoleAssignmentRemoveCommand_initValidators = function _AadAppRoleAssignmentRemoveCommand_initValidators() {
185
184
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
186
- if (args.options.appId && !utils_1.validation.isValidGuid(args.options.appId)) {
185
+ if (args.options.appId && !validation_1.validation.isValidGuid(args.options.appId)) {
187
186
  return `${args.options.appId} is not a valid GUID`;
188
187
  }
189
- if (args.options.appObjectId && !utils_1.validation.isValidGuid(args.options.appObjectId)) {
188
+ if (args.options.appObjectId && !validation_1.validation.isValidGuid(args.options.appObjectId)) {
190
189
  return `${args.options.appObjectId} is not a valid GUID`;
191
190
  }
192
191
  return true;