@pnp/cli-microsoft365 6.0.0-beta.78fdd2c → 6.0.0-beta.7a78ebe

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