@pnp/cli-microsoft365 7.0.0-beta.f1037e1 → 7.0.0

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 (422) hide show
  1. package/.eslintrc.cjs +1 -3
  2. package/README.md +4 -4
  3. package/dist/Auth.js +12 -2
  4. package/dist/Command.js +3 -3
  5. package/dist/GlobalOptions.js +1 -7
  6. package/dist/cli/Cli.js +24 -7
  7. package/dist/m365/aad/commands/app/app-add.js +8 -8
  8. package/dist/m365/aad/commands/app/app-get.js +4 -1
  9. package/dist/m365/aad/commands/app/app-remove.js +3 -1
  10. package/dist/m365/aad/commands/app/app-role-add.js +9 -6
  11. package/dist/m365/aad/commands/app/app-role-list.js +4 -1
  12. package/dist/m365/aad/commands/app/app-role-remove.js +5 -2
  13. package/dist/m365/aad/commands/app/app-set.js +13 -10
  14. package/dist/m365/aad/commands/approleassignment/approleassignment-add.js +11 -6
  15. package/dist/m365/aad/commands/approleassignment/approleassignment-remove.js +4 -4
  16. package/dist/m365/aad/commands/group/group-get.js +4 -4
  17. package/dist/m365/aad/commands/group/group-list.js +1 -23
  18. package/dist/m365/aad/commands/group/group-remove.js +98 -0
  19. package/dist/m365/aad/commands/{o365group/o365group-add.js → m365group/m365group-add.js} +38 -29
  20. package/dist/m365/aad/commands/{o365group/o365group-conversation-list.js → m365group/m365group-conversation-list.js} +15 -10
  21. package/dist/m365/aad/commands/{o365group/o365group-conversation-post-list.js → m365group/m365group-conversation-post-list.js} +18 -14
  22. package/dist/m365/aad/commands/{o365group/o365group-get.js → m365group/m365group-get.js} +14 -10
  23. package/dist/m365/aad/commands/{o365group/o365group-list.js → m365group/m365group-list.js} +13 -28
  24. package/dist/m365/aad/commands/{o365group/o365group-recyclebinitem-clear.js → m365group/m365group-recyclebinitem-clear.js} +15 -15
  25. package/dist/m365/aad/commands/{o365group/o365group-recyclebinitem-list.js → m365group/m365group-recyclebinitem-list.js} +10 -10
  26. package/dist/m365/aad/commands/{o365group/o365group-recyclebinitem-remove.js → m365group/m365group-recyclebinitem-remove.js} +17 -15
  27. package/dist/m365/aad/commands/{o365group/o365group-recyclebinitem-restore.js → m365group/m365group-recyclebinitem-restore.js} +18 -15
  28. package/dist/m365/aad/commands/{o365group/o365group-remove.js → m365group/m365group-remove.js} +17 -12
  29. package/dist/m365/aad/commands/{o365group/o365group-renew.js → m365group/m365group-renew.js} +15 -10
  30. package/dist/m365/aad/commands/{o365group/o365group-report-activitycounts.js → m365group/m365group-report-activitycounts.js} +4 -4
  31. package/dist/m365/aad/commands/{o365group/o365group-report-activitydetail.js → m365group/m365group-report-activitydetail.js} +4 -4
  32. package/dist/m365/aad/commands/{o365group/o365group-report-activityfilecounts.js → m365group/m365group-report-activityfilecounts.js} +4 -4
  33. package/dist/m365/aad/commands/{o365group/o365group-report-activitygroupcounts.js → m365group/m365group-report-activitygroupcounts.js} +4 -4
  34. package/dist/m365/aad/commands/{o365group/o365group-report-activitystorage.js → m365group/m365group-report-activitystorage.js} +4 -4
  35. package/dist/m365/aad/commands/{o365group/o365group-set.js → m365group/m365group-set.js} +22 -17
  36. package/dist/m365/aad/commands/{o365group/o365group-teamify.js → m365group/m365group-teamify.js} +28 -20
  37. package/dist/m365/aad/commands/{o365group/o365group-user-add.js → m365group/m365group-user-add.js} +19 -14
  38. package/dist/m365/aad/commands/{o365group/o365group-user-list.js → m365group/m365group-user-list.js} +17 -12
  39. package/dist/m365/aad/commands/{o365group/o365group-user-remove.js → m365group/m365group-user-remove.js} +19 -14
  40. package/dist/m365/aad/commands/{o365group/o365group-user-set.js → m365group/m365group-user-set.js} +20 -15
  41. package/dist/m365/aad/commands/policy/policy-list.js +5 -5
  42. package/dist/m365/aad/commands/sp/sp-add.js +4 -1
  43. package/dist/m365/aad/commands/sp/sp-get.js +4 -1
  44. package/dist/m365/aad/commands/user/user-get.js +7 -2
  45. package/dist/m365/aad/commands.js +23 -22
  46. package/dist/m365/booking/commands/business/business-get.js +4 -1
  47. package/dist/m365/cli/commands/cli-issue.js +5 -5
  48. package/dist/m365/cli/commands/config/config-get.js +5 -5
  49. package/dist/m365/cli/commands/config/config-list.js +16 -0
  50. package/dist/m365/cli/commands/config/config-reset.js +5 -5
  51. package/dist/m365/cli/commands/config/config-set.js +5 -5
  52. package/dist/m365/cli/commands.js +1 -0
  53. package/dist/m365/commands/login.js +7 -7
  54. package/dist/m365/commands/request.js +1 -1
  55. package/dist/m365/flow/commands/flow-export.js +13 -13
  56. package/dist/m365/flow/commands/owner/owner-ensure.js +5 -5
  57. package/dist/m365/graph/commands/subscription/subscription-add.js +5 -5
  58. package/dist/m365/outlook/commands/message/message-list.js +4 -2
  59. package/dist/m365/outlook/commands/message/message-move.js +4 -2
  60. package/dist/m365/pa/commands/app/app-export.js +7 -7
  61. package/dist/m365/pa/commands/app/app-owner-set.js +5 -5
  62. package/dist/m365/pa/commands/app/app-permission-ensure.js +162 -0
  63. package/dist/m365/pa/commands/app/app-permission-list.js +2 -2
  64. package/dist/m365/pa/commands/app/app-permission-remove.js +153 -0
  65. package/dist/m365/pa/commands/connector/connector-export.js +5 -5
  66. package/dist/m365/pa/commands.js +3 -4
  67. package/dist/m365/planner/commands/bucket/bucket-add.js +6 -3
  68. package/dist/m365/planner/commands/bucket/bucket-get.js +11 -4
  69. package/dist/m365/planner/commands/bucket/bucket-list.js +6 -3
  70. package/dist/m365/planner/commands/bucket/bucket-remove.js +9 -4
  71. package/dist/m365/planner/commands/bucket/bucket-set.js +10 -4
  72. package/dist/m365/planner/commands/plan/plan-add.js +4 -1
  73. package/dist/m365/planner/commands/plan/plan-get.js +5 -3
  74. package/dist/m365/planner/commands/plan/plan-list.js +8 -6
  75. package/dist/m365/planner/commands/plan/plan-remove.js +4 -1
  76. package/dist/m365/planner/commands/plan/plan-set.js +6 -3
  77. package/dist/m365/planner/commands/roster/roster-get.js +4 -1
  78. package/dist/m365/planner/commands/roster/roster-member-add.js +4 -1
  79. package/dist/m365/planner/commands/roster/roster-member-get.js +4 -1
  80. package/dist/m365/planner/commands/roster/roster-member-list.js +4 -1
  81. package/dist/m365/planner/commands/roster/roster-member-remove.js +4 -1
  82. package/dist/m365/planner/commands/roster/roster-plan-list.js +4 -1
  83. package/dist/m365/planner/commands/roster/roster-remove.js +4 -1
  84. package/dist/m365/planner/commands/task/task-add.js +21 -12
  85. package/dist/m365/planner/commands/task/task-checklistitem-add.js +4 -1
  86. package/dist/m365/planner/commands/task/task-checklistitem-list.js +4 -1
  87. package/dist/m365/planner/commands/task/task-checklistitem-remove.js +4 -1
  88. package/dist/m365/planner/commands/task/task-get.js +46 -28
  89. package/dist/m365/planner/commands/task/task-list.js +34 -19
  90. package/dist/m365/planner/commands/task/task-reference-add.js +4 -1
  91. package/dist/m365/planner/commands/task/task-reference-list.js +4 -1
  92. package/dist/m365/planner/commands/task/task-reference-remove.js +4 -1
  93. package/dist/m365/planner/commands/task/task-remove.js +49 -38
  94. package/dist/m365/planner/commands/task/task-set.js +38 -23
  95. package/dist/m365/pp/commands/aibuildermodel/aibuildermodel-get.js +4 -1
  96. package/dist/m365/pp/commands/card/card-get.js +3 -5
  97. package/dist/m365/pp/commands/chatbot/chatbot-get.js +3 -1
  98. package/dist/m365/pp/commands/chatbot/chatbot-list.js +2 -2
  99. package/dist/m365/pp/commands/managementapp/managementapp-add.js +4 -1
  100. package/dist/m365/purview/commands/retentionlabel/retentionlabel-add.js +14 -14
  101. package/dist/m365/search/commands/externalconnection/externalconnection-remove.js +3 -1
  102. package/dist/m365/spfx/commands/package/package-generate.js +15 -15
  103. package/dist/m365/spfx/commands/project/DeployWorkflow.js +55 -0
  104. package/dist/m365/spfx/commands/project/project-doctor/{doctor-1.18.0-beta.1.js → doctor-1.18.0.js} +2 -2
  105. package/dist/m365/spfx/commands/project/project-doctor.js +9 -9
  106. package/dist/m365/spfx/commands/project/project-externalize/rules/PnPJsRule.js +2 -2
  107. package/dist/m365/spfx/commands/project/project-github-workflow-add.js +157 -0
  108. package/dist/m365/spfx/commands/project/project-github-workflow-model.js +2 -0
  109. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001022_DEP_office_ui_fabric_react.js +1 -1
  110. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002028_DEVDEP_microsoft_rush_stack_compiler_4_7.js +13 -0
  111. package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.15.2.js +1 -1
  112. package/dist/m365/spfx/commands/project/project-upgrade/{upgrade-1.18.0-beta.1.js → upgrade-1.18.0.js} +35 -27
  113. package/dist/m365/spfx/commands/project/project-upgrade.js +26 -28
  114. package/dist/m365/spfx/commands/spfx-doctor.js +76 -106
  115. package/dist/m365/spfx/commands.js +1 -0
  116. package/dist/m365/spo/commands/app/SpoAppBaseCommand.js +27 -26
  117. package/dist/m365/spo/commands/app/app-add.js +9 -9
  118. package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-add.js +5 -5
  119. package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-get.js +5 -3
  120. package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-list.js +5 -5
  121. package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-remove.js +2 -2
  122. package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-set.js +3 -2
  123. package/dist/m365/spo/commands/commandset/commandset-add.js +11 -11
  124. package/dist/m365/spo/commands/commandset/commandset-get.js +12 -10
  125. package/dist/m365/spo/commands/commandset/commandset-list.js +5 -5
  126. package/dist/m365/spo/commands/commandset/commandset-remove.js +7 -6
  127. package/dist/m365/spo/commands/commandset/commandset-set.js +14 -12
  128. package/dist/m365/spo/commands/customaction/customaction-get.js +5 -2
  129. package/dist/m365/spo/commands/customaction/customaction-remove.js +3 -1
  130. package/dist/m365/spo/commands/eventreceiver/eventreceiver-get.js +3 -1
  131. package/dist/m365/spo/commands/file/file-add.js +13 -13
  132. package/dist/m365/spo/commands/file/file-checkin.js +1 -1
  133. package/dist/m365/spo/commands/file/file-checkout.js +1 -1
  134. package/dist/m365/spo/commands/file/file-copy.js +36 -4
  135. package/dist/m365/spo/commands/file/file-get.js +11 -8
  136. package/dist/m365/spo/commands/file/file-list.js +4 -4
  137. package/dist/m365/spo/commands/file/file-move.js +74 -98
  138. package/dist/m365/spo/commands/file/file-remove.js +8 -8
  139. package/dist/m365/spo/commands/file/file-rename.js +2 -2
  140. package/dist/m365/spo/commands/file/file-retentionlabel-ensure.js +1 -1
  141. package/dist/m365/spo/commands/file/file-retentionlabel-remove.js +1 -1
  142. package/dist/m365/spo/commands/file/file-roleassignment-add.js +1 -1
  143. package/dist/m365/spo/commands/file/file-roleassignment-remove.js +1 -1
  144. package/dist/m365/spo/commands/file/file-roleinheritance-break.js +1 -1
  145. package/dist/m365/spo/commands/file/file-roleinheritance-reset.js +1 -1
  146. package/dist/m365/spo/commands/file/file-sharinglink-add.js +8 -8
  147. package/dist/m365/spo/commands/file/file-sharinglink-list.js +5 -5
  148. package/dist/m365/spo/commands/file/file-version-clear.js +3 -3
  149. package/dist/m365/spo/commands/file/file-version-get.js +3 -3
  150. package/dist/m365/spo/commands/file/file-version-list.js +3 -3
  151. package/dist/m365/spo/commands/file/file-version-remove.js +3 -3
  152. package/dist/m365/spo/commands/file/file-version-restore.js +3 -3
  153. package/dist/m365/spo/commands/folder/folder-add.js +2 -4
  154. package/dist/m365/spo/commands/folder/folder-copy.js +89 -45
  155. package/dist/m365/spo/commands/folder/folder-get.js +1 -1
  156. package/dist/m365/spo/commands/folder/folder-list.js +2 -2
  157. package/dist/m365/spo/commands/folder/folder-move.js +89 -47
  158. package/dist/m365/spo/commands/folder/folder-remove.js +7 -4
  159. package/dist/m365/spo/commands/folder/folder-rename.js +13 -17
  160. package/dist/m365/spo/commands/folder/folder-retentionlabel-ensure.js +1 -1
  161. package/dist/m365/spo/commands/folder/folder-retentionlabel-remove.js +1 -1
  162. package/dist/m365/spo/commands/folder/folder-roleassignment-add.js +1 -1
  163. package/dist/m365/spo/commands/folder/folder-roleassignment-remove.js +1 -1
  164. package/dist/m365/spo/commands/folder/folder-roleinheritance-break.js +1 -1
  165. package/dist/m365/spo/commands/folder/folder-roleinheritance-reset.js +1 -1
  166. package/dist/m365/spo/commands/group/group-list.js +0 -1
  167. package/dist/m365/spo/commands/group/group-member-add.js +24 -24
  168. package/dist/m365/spo/commands/hubsite/hubsite-connect.js +7 -4
  169. package/dist/m365/spo/commands/hubsite/hubsite-disconnect.js +4 -1
  170. package/dist/m365/spo/commands/hubsite/hubsite-get.js +3 -1
  171. package/dist/m365/spo/commands/list/list-add.js +4 -4
  172. package/dist/m365/spo/commands/list/list-retentionlabel-ensure.js +2 -24
  173. package/dist/m365/spo/commands/list/list-set.js +4 -4
  174. package/dist/m365/spo/commands/listitem/listitem-add.js +1 -0
  175. package/dist/m365/spo/commands/listitem/listitem-attachment-add.js +127 -0
  176. package/dist/m365/spo/commands/listitem/listitem-attachment-get.js +97 -0
  177. package/dist/m365/spo/commands/listitem/listitem-attachment-remove.js +121 -0
  178. package/dist/m365/spo/commands/listitem/listitem-attachment-set.js +115 -0
  179. package/dist/m365/spo/commands/listitem/listitem-set.js +3 -2
  180. package/dist/m365/spo/commands/navigation/navigation-node-set.js +2 -2
  181. package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-add.js +34 -5
  182. package/dist/m365/spo/commands/page/clientsidepages.js +19 -81
  183. package/dist/m365/spo/commands/page/page-get.js +1 -0
  184. package/dist/m365/spo/commands/page/page-list.js +4 -3
  185. package/dist/m365/spo/commands/page/page-section-add.js +56 -21
  186. package/dist/m365/spo/commands/page/page-set.js +13 -2
  187. package/dist/m365/spo/commands/propertybag/propertybag-base.js +63 -59
  188. package/dist/m365/spo/commands/propertybag/propertybag-remove.js +28 -31
  189. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-set.js +30 -32
  190. package/dist/m365/spo/commands/site/FlowsPolicy.js +7 -0
  191. package/dist/m365/spo/commands/site/site-add.js +114 -161
  192. package/dist/m365/spo/commands/site/site-apppermission-add.js +15 -18
  193. package/dist/m365/spo/commands/site/site-apppermission-remove.js +34 -38
  194. package/dist/m365/spo/commands/site/site-apppermission-set.js +11 -14
  195. package/dist/m365/spo/commands/site/site-commsite-enable.js +34 -5
  196. package/dist/m365/spo/commands/site/site-ensure.js +14 -67
  197. package/dist/m365/spo/commands/site/site-hubsite-disconnect.js +22 -22
  198. package/dist/m365/spo/commands/site/site-list.js +25 -43
  199. package/dist/m365/spo/commands/site/site-recyclebinitem-list.js +6 -6
  200. package/dist/m365/spo/commands/site/site-remove.js +166 -210
  201. package/dist/m365/spo/commands/site/site-set.js +178 -199
  202. package/dist/m365/spo/commands/tenant/tenant-appcatalog-add.js +1 -1
  203. package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-get.js +12 -7
  204. package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-list.js +3 -2
  205. package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-remove.js +2 -1
  206. package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-set.js +3 -2
  207. package/dist/m365/spo/commands/tenant/tenant-commandset-add.js +8 -8
  208. package/dist/m365/spo/commands/tenant/tenant-commandset-get.js +8 -3
  209. package/dist/m365/spo/commands/tenant/tenant-commandset-list.js +3 -2
  210. package/dist/m365/spo/commands/tenant/tenant-commandset-remove.js +3 -1
  211. package/dist/m365/spo/commands/tenant/tenant-commandset-set.js +8 -8
  212. package/dist/m365/spo/commands/tenant/tenant-settings-set.js +4 -4
  213. package/dist/m365/spo/commands/term/term-get.js +6 -6
  214. package/dist/m365/spo/commands/theme/theme-list.js +1 -9
  215. package/dist/m365/spo/commands/theme/theme-remove.js +24 -24
  216. package/dist/m365/spo/commands/theme/theme-set.js +0 -1
  217. package/dist/m365/spo/commands/user/user-get.js +10 -10
  218. package/dist/m365/spo/commands/user/user-remove.js +27 -27
  219. package/dist/m365/spo/commands/web/web-reindex.js +35 -42
  220. package/dist/m365/spo/commands/web/web-remove.js +21 -21
  221. package/dist/m365/spo/commands/web/web-roleassignment-add.js +16 -31
  222. package/dist/m365/spo/commands/web/web-roleassignment-remove.js +33 -44
  223. package/dist/m365/spo/commands/web/web-roleinheritance-break.js +18 -18
  224. package/dist/m365/spo/commands/web/web-roleinheritance-reset.js +19 -19
  225. package/dist/m365/spo/commands/web/web-set.js +5 -5
  226. package/dist/m365/spo/commands.js +4 -0
  227. package/dist/m365/teams/commands/app/app-list.js +5 -5
  228. package/dist/m365/teams/commands/app/app-remove.js +49 -15
  229. package/dist/m365/teams/commands/channel/channel-add.js +5 -1
  230. package/dist/m365/teams/commands/channel/channel-member-add.js +12 -10
  231. package/dist/m365/teams/commands/channel/channel-member-remove.js +3 -1
  232. package/dist/m365/teams/commands/channel/channel-member-set.js +4 -1
  233. package/dist/m365/teams/commands/chat/chat-get.js +7 -10
  234. package/dist/m365/teams/commands/chat/chat-member-add.js +5 -5
  235. package/dist/m365/teams/commands/chat/chat-message-send.js +8 -10
  236. package/dist/m365/teams/commands/funsettings/funsettings-set.js +4 -4
  237. package/dist/m365/teams/commands/guestsettings/guestsettings-set.js +4 -4
  238. package/dist/m365/teams/commands/meeting/meeting-list.js +101 -51
  239. package/dist/m365/teams/commands/membersettings/membersettings-set.js +4 -4
  240. package/dist/m365/teams/commands/messagingsettings/messagingsettings-set.js +5 -5
  241. package/dist/m365/teams/commands/team/team-clone.js +5 -10
  242. package/dist/m365/teams/commands/team/team-list.js +94 -30
  243. package/dist/m365/teams/commands/team/team-set.js +3 -3
  244. package/dist/m365/tenant/commands/info/info-get.js +83 -0
  245. package/dist/m365/tenant/commands.js +1 -0
  246. package/dist/m365/todo/commands/task/task-add.js +6 -6
  247. package/dist/m365/yammer/commands/message/message-like-set.js +27 -28
  248. package/dist/m365/yammer/commands/message/message-list.js +67 -86
  249. package/dist/m365/yammer/commands/message/message-remove.js +18 -18
  250. package/dist/m365/yammer/commands/yammer-search.js +58 -74
  251. package/dist/utils/aadGroup.js +39 -3
  252. package/dist/utils/formatting.js +7 -0
  253. package/dist/utils/fsUtil.js +5 -0
  254. package/dist/utils/planner.js +4 -3
  255. package/dist/utils/powerPlatform.js +1 -1
  256. package/dist/utils/spo.js +595 -54
  257. package/dist/utils/validation.js +0 -3
  258. package/docs/docs/_clisettings.mdx +2 -2
  259. package/docs/docs/cmd/_global.mdx +1 -1
  260. package/docs/docs/cmd/aad/app/app-set.mdx +15 -15
  261. package/docs/docs/cmd/aad/approleassignment/approleassignment-add.mdx +9 -9
  262. package/docs/docs/cmd/aad/approleassignment/approleassignment-remove.mdx +10 -10
  263. package/docs/docs/cmd/aad/group/group-get.mdx +5 -5
  264. package/docs/docs/cmd/aad/group/group-list.mdx +0 -11
  265. package/docs/docs/cmd/aad/group/group-remove.mdx +44 -0
  266. package/docs/docs/cmd/aad/{o365group/o365group-add.mdx → m365group/m365group-add.mdx} +25 -15
  267. package/docs/docs/cmd/aad/{o365group/o365group-conversation-list.mdx → m365group/m365group-conversation-list.mdx} +4 -4
  268. package/docs/docs/cmd/aad/{o365group/o365group-conversation-post-list.mdx → m365group/m365group-conversation-post-list.mdx} +8 -8
  269. package/docs/docs/cmd/aad/{o365group/o365group-get.mdx → m365group/m365group-get.mdx} +6 -6
  270. package/docs/docs/cmd/aad/{o365group/o365group-list.mdx → m365group/m365group-list.mdx} +12 -29
  271. package/docs/docs/cmd/aad/{o365group/o365group-recyclebinitem-clear.mdx → m365group/m365group-recyclebinitem-clear.mdx} +5 -5
  272. package/docs/docs/cmd/aad/{o365group/o365group-recyclebinitem-list.mdx → m365group/m365group-recyclebinitem-list.mdx} +8 -8
  273. package/docs/docs/cmd/aad/{o365group/o365group-recyclebinitem-remove.mdx → m365group/m365group-recyclebinitem-remove.mdx} +6 -6
  274. package/docs/docs/cmd/aad/{o365group/o365group-recyclebinitem-restore.mdx → m365group/m365group-recyclebinitem-restore.mdx} +6 -6
  275. package/docs/docs/cmd/aad/{o365group/o365group-remove.mdx → m365group/m365group-remove.mdx} +6 -6
  276. package/docs/docs/cmd/aad/{o365group/o365group-renew.mdx → m365group/m365group-renew.mdx} +4 -4
  277. package/docs/docs/cmd/aad/{o365group/o365group-report-activitycounts.mdx → m365group/m365group-report-activitycounts.mdx} +6 -6
  278. package/docs/docs/cmd/aad/{o365group/o365group-report-activitydetail.mdx → m365group/m365group-report-activitydetail.mdx} +7 -7
  279. package/docs/docs/cmd/aad/{o365group/o365group-report-activityfilecounts.mdx → m365group/m365group-report-activityfilecounts.mdx} +6 -6
  280. package/docs/docs/cmd/aad/{o365group/o365group-report-activitygroupcounts.mdx → m365group/m365group-report-activitygroupcounts.mdx} +6 -6
  281. package/docs/docs/cmd/aad/{o365group/o365group-report-activitystorage.mdx → m365group/m365group-report-activitystorage.mdx} +6 -6
  282. package/docs/docs/cmd/aad/{o365group/o365group-set.mdx → m365group/m365group-set.mdx} +8 -8
  283. package/docs/docs/cmd/aad/{o365group/o365group-teamify.mdx → m365group/m365group-teamify.mdx} +5 -5
  284. package/docs/docs/cmd/aad/{o365group/o365group-user-add.mdx → m365group/m365group-user-add.mdx} +5 -5
  285. package/docs/docs/cmd/aad/{o365group/o365group-user-list.mdx → m365group/m365group-user-list.mdx} +7 -7
  286. package/docs/docs/cmd/aad/{o365group/o365group-user-remove.mdx → m365group/m365group-user-remove.mdx} +5 -5
  287. package/docs/docs/cmd/aad/{o365group/o365group-user-set.mdx → m365group/m365group-user-set.mdx} +5 -5
  288. package/docs/docs/cmd/aad/policy/policy-list.mdx +5 -5
  289. package/docs/docs/cmd/aad/user/user-set.mdx +1 -1
  290. package/docs/docs/cmd/cli/config/config-list.mdx +78 -0
  291. package/docs/docs/cmd/flow/flow-enable.mdx +2 -2
  292. package/docs/docs/cmd/flow/flow-export.mdx +11 -11
  293. package/docs/docs/cmd/graph/subscription/subscription-add.mdx +10 -10
  294. package/docs/docs/cmd/login.mdx +6 -0
  295. package/docs/docs/cmd/pa/app/app-export.mdx +5 -5
  296. package/docs/docs/cmd/pa/app/app-permission-ensure.mdx +85 -0
  297. package/docs/docs/cmd/pa/app/app-permission-remove.mdx +74 -0
  298. package/docs/docs/cmd/pa/connector/connector-export.mdx +3 -3
  299. package/docs/docs/cmd/planner/plan/plan-add.mdx +1 -1
  300. package/docs/docs/cmd/planner/task/task-add.mdx +22 -7
  301. package/docs/docs/cmd/planner/task/task-get.mdx +13 -4
  302. package/docs/docs/cmd/planner/task/task-list.mdx +22 -7
  303. package/docs/docs/cmd/planner/task/task-remove.mdx +25 -8
  304. package/docs/docs/cmd/planner/task/task-set.mdx +22 -7
  305. package/docs/docs/cmd/pp/chatbot/chatbot-list.mdx +4 -4
  306. package/docs/docs/cmd/pp/dataverse/dataverse-table-get.mdx +2 -2
  307. package/docs/docs/cmd/pp/dataverse/dataverse-table-list.mdx +2 -2
  308. package/docs/docs/cmd/pp/dataverse/dataverse-table-remove.mdx +3 -3
  309. package/docs/docs/cmd/pp/solution/solution-publisher-get.mdx +2 -2
  310. package/docs/docs/cmd/pp/solution/solution-publisher-remove.mdx +2 -2
  311. package/docs/docs/cmd/spfx/project/project-github-workflow-add.mdx +94 -0
  312. package/docs/docs/cmd/spfx/project/project-upgrade.mdx +1 -1
  313. package/docs/docs/cmd/spo/file/file-add.mdx +1 -1
  314. package/docs/docs/cmd/spo/file/file-checkin.mdx +1 -1
  315. package/docs/docs/cmd/spo/file/file-checkout-undo.mdx +1 -9
  316. package/docs/docs/cmd/spo/file/file-checkout.mdx +1 -1
  317. package/docs/docs/cmd/spo/file/file-copy.mdx +20 -16
  318. package/docs/docs/cmd/spo/file/file-get.mdx +3 -3
  319. package/docs/docs/cmd/spo/file/file-list.mdx +2 -2
  320. package/docs/docs/cmd/spo/file/file-move.mdx +36 -18
  321. package/docs/docs/cmd/spo/file/file-remove.mdx +10 -10
  322. package/docs/docs/cmd/spo/file/file-rename.mdx +3 -3
  323. package/docs/docs/cmd/spo/file/file-retentionlabel-ensure.mdx +2 -2
  324. package/docs/docs/cmd/spo/file/file-retentionlabel-remove.mdx +3 -3
  325. package/docs/docs/cmd/spo/file/file-roleassignment-add.mdx +1 -1
  326. package/docs/docs/cmd/spo/file/file-roleassignment-remove.mdx +1 -1
  327. package/docs/docs/cmd/spo/file/file-roleinheritance-break.mdx +1 -1
  328. package/docs/docs/cmd/spo/file/file-roleinheritance-reset.mdx +1 -1
  329. package/docs/docs/cmd/spo/file/file-sharinginfo-get.mdx +1 -1
  330. package/docs/docs/cmd/spo/file/file-sharinglink-add.mdx +1 -1
  331. package/docs/docs/cmd/spo/file/file-sharinglink-clear.mdx +1 -1
  332. package/docs/docs/cmd/spo/file/file-sharinglink-get.mdx +1 -1
  333. package/docs/docs/cmd/spo/file/file-sharinglink-list.mdx +1 -1
  334. package/docs/docs/cmd/spo/file/file-sharinglink-remove.mdx +1 -1
  335. package/docs/docs/cmd/spo/file/file-sharinglink-set.mdx +1 -1
  336. package/docs/docs/cmd/spo/file/file-version-clear.mdx +3 -3
  337. package/docs/docs/cmd/spo/file/file-version-get.mdx +3 -3
  338. package/docs/docs/cmd/spo/file/file-version-list.mdx +3 -3
  339. package/docs/docs/cmd/spo/file/file-version-remove.mdx +3 -3
  340. package/docs/docs/cmd/spo/file/file-version-restore.mdx +3 -3
  341. package/docs/docs/cmd/spo/folder/folder-add.mdx +76 -1
  342. package/docs/docs/cmd/spo/folder/folder-copy.mdx +39 -12
  343. package/docs/docs/cmd/spo/folder/folder-get.mdx +1 -1
  344. package/docs/docs/cmd/spo/folder/folder-list.mdx +1 -1
  345. package/docs/docs/cmd/spo/folder/folder-move.mdx +40 -13
  346. package/docs/docs/cmd/spo/folder/folder-remove.mdx +1 -1
  347. package/docs/docs/cmd/spo/folder/folder-rename.mdx +5 -1
  348. package/docs/docs/cmd/spo/folder/folder-retentionlabel-ensure.mdx +1 -1
  349. package/docs/docs/cmd/spo/folder/folder-retentionlabel-remove.mdx +1 -1
  350. package/docs/docs/cmd/spo/folder/folder-roleassignment-add.mdx +2 -2
  351. package/docs/docs/cmd/spo/folder/folder-roleassignment-remove.mdx +1 -1
  352. package/docs/docs/cmd/spo/folder/folder-roleinheritance-break.mdx +1 -1
  353. package/docs/docs/cmd/spo/folder/folder-roleinheritance-reset.mdx +1 -1
  354. package/docs/docs/cmd/spo/group/group-member-add.mdx +27 -27
  355. package/docs/docs/cmd/spo/list/list-contenttype-remove.mdx +1 -1
  356. package/docs/docs/cmd/spo/list/list-retentionlabel-ensure.mdx +2 -11
  357. package/docs/docs/cmd/spo/listitem/listitem-add.mdx +2 -5
  358. package/docs/docs/cmd/spo/listitem/listitem-attachment-add.mdx +110 -0
  359. package/docs/docs/cmd/spo/listitem/listitem-attachment-get.mdx +104 -0
  360. package/docs/docs/cmd/spo/listitem/listitem-attachment-list.mdx +1 -1
  361. package/docs/docs/cmd/spo/listitem/listitem-attachment-remove.mdx +58 -0
  362. package/docs/docs/cmd/spo/listitem/listitem-attachment-set.mdx +58 -0
  363. package/docs/docs/cmd/spo/listitem/listitem-set.mdx +2 -5
  364. package/docs/docs/cmd/spo/orgassetslibrary/orgassetslibrary-add.mdx +14 -1
  365. package/docs/docs/cmd/spo/page/page-get.mdx +0 -1
  366. package/docs/docs/cmd/spo/page/page-list.mdx +0 -1
  367. package/docs/docs/cmd/spo/page/page-section-add.mdx +25 -1
  368. package/docs/docs/cmd/spo/page/page-set.mdx +23 -0
  369. package/docs/docs/cmd/spo/site/site-add.mdx +1 -1
  370. package/docs/docs/cmd/spo/site/site-commsite-enable.mdx +11 -2
  371. package/docs/docs/cmd/spo/site/site-ensure.mdx +1 -1
  372. package/docs/docs/cmd/spo/site/site-list.mdx +3 -78
  373. package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-add.mdx +1 -1
  374. package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-get.mdx +2 -2
  375. package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-list.mdx +3 -5
  376. package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-remove.mdx +1 -1
  377. package/docs/docs/cmd/spo/tenant/tenant-commandset-add.mdx +1 -1
  378. package/docs/docs/cmd/spo/tenant/tenant-commandset-list.mdx +2 -4
  379. package/docs/docs/cmd/spo/tenant/tenant-commandset-remove.mdx +1 -1
  380. package/docs/docs/cmd/spo/tenant/tenant-commandset-set.mdx +1 -1
  381. package/docs/docs/cmd/spo/user/user-get.mdx +8 -8
  382. package/docs/docs/cmd/teams/app/app-remove.mdx +9 -6
  383. package/docs/docs/cmd/teams/channel/channel-member-add.mdx +4 -4
  384. package/docs/docs/cmd/teams/meeting/meeting-list.mdx +135 -92
  385. package/docs/docs/cmd/teams/team/team-add.mdx +1 -1
  386. package/docs/docs/cmd/teams/team/team-clone.mdx +3 -3
  387. package/docs/docs/cmd/teams/team/team-list.mdx +47 -22
  388. package/docs/docs/cmd/tenant/info/info-get.mdx +101 -0
  389. package/docs/docs/cmd/yammer/network/network-list.mdx +1 -1
  390. package/npm-shrinkwrap.json +310 -1433
  391. package/package.json +23 -28
  392. package/dist/m365/pa/cds-project-mutator.js +0 -91
  393. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/dataset-template/generated/ManifestTypes.d.ts +0 -11
  394. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/dataset-template/template_ControlManifest.Input.xml +0 -31
  395. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/dataset-template/template_index.ts +0 -51
  396. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/field-template/generated/ManifestTypes.d.ts +0 -12
  397. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/field-template/template_ControlManifest.Input.xml +0 -37
  398. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/field-template/template_index.ts +0 -48
  399. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/index.ts +0 -0
  400. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/virtual-dataset-template/template_ControlManifest.Input.xml +0 -31
  401. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/virtual-dataset-template/template_index.tsx +0 -58
  402. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/virtual-field-template/template_ControlManifest.Input.xml +0 -37
  403. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/virtual-field-template/template_index.tsx +0 -55
  404. package/dist/m365/pa/commands/pcf/pcf-init/assets/package.json +0 -19
  405. package/dist/m365/pa/commands/pcf/pcf-init/assets/pcfconfig.json +0 -3
  406. package/dist/m365/pa/commands/pcf/pcf-init/assets/template_.gitignore +0 -14
  407. package/dist/m365/pa/commands/pcf/pcf-init/assets/template_pcfprojecttype.pcfproj +0 -45
  408. package/dist/m365/pa/commands/pcf/pcf-init/pcf-init-variables.js +0 -2
  409. package/dist/m365/pa/commands/pcf/pcf-init.js +0 -120
  410. package/dist/m365/pa/commands/solution/solution-init/assets/Other/Customizations.xml +0 -18
  411. package/dist/m365/pa/commands/solution/solution-init/assets/Other/Relationships.xml +0 -2
  412. package/dist/m365/pa/commands/solution/solution-init/assets/Other/template_Solution.xml +0 -94
  413. package/dist/m365/pa/commands/solution/solution-init/assets/template_.gitignore +0 -2
  414. package/dist/m365/pa/commands/solution/solution-init/assets/template_solutionprojecttype.cdsproj +0 -44
  415. package/dist/m365/pa/commands/solution/solution-init/solution-init-variables.js +0 -2
  416. package/dist/m365/pa/commands/solution/solution-init.js +0 -126
  417. package/dist/m365/pa/commands/solution/solution-reference-add.js +0 -88
  418. package/dist/m365/pa/template-instantiator.js +0 -57
  419. package/docs/docs/cmd/pa/pcf/pcf-init.mdx +0 -56
  420. package/docs/docs/cmd/pa/solution/solution-init.mdx +0 -46
  421. package/docs/docs/cmd/pa/solution/solution-reference-add.mdx +0 -42
  422. /package/dist/m365/aad/commands/{o365group → m365group}/GroupExtended.js +0 -0
@@ -24,36 +24,44 @@ import { FN002001_DEVDEP_microsoft_sp_build_web } from './rules/FN002001_DEVDEP_
24
24
  import { FN002002_DEVDEP_microsoft_sp_module_interfaces } from './rules/FN002002_DEVDEP_microsoft_sp_module_interfaces.js';
25
25
  import { FN002022_DEVDEP_microsoft_eslint_plugin_spfx } from './rules/FN002022_DEVDEP_microsoft_eslint_plugin_spfx.js';
26
26
  import { FN002023_DEVDEP_microsoft_eslint_config_spfx } from './rules/FN002023_DEVDEP_microsoft_eslint_config_spfx.js';
27
+ import { FN002026_DEVDEP_typescript } from './rules/FN002026_DEVDEP_typescript.js';
28
+ import { FN002028_DEVDEP_microsoft_rush_stack_compiler_4_7 } from './rules/FN002028_DEVDEP_microsoft_rush_stack_compiler_4_7.js';
27
29
  import { FN010001_YORC_version } from './rules/FN010001_YORC_version.js';
28
30
  import { FN010010_YORC_sdkVersions_teams_js } from './rules/FN010010_YORC_sdkVersions_teams_js.js';
31
+ import { FN012017_TSC_extends } from './rules/FN012017_TSC_extends.js';
32
+ import { FN021003_PKG_engines_node } from './rules/FN021003_PKG_engines_node.js';
29
33
  export default [
30
- new FN001001_DEP_microsoft_sp_core_library('1.18.0-beta.1'),
31
- new FN001002_DEP_microsoft_sp_lodash_subset('1.18.0-beta.1'),
32
- new FN001003_DEP_microsoft_sp_office_ui_fabric_core('1.18.0-beta.1'),
33
- new FN001004_DEP_microsoft_sp_webpart_base('1.18.0-beta.1'),
34
- new FN001011_DEP_microsoft_sp_dialog('1.18.0-beta.1'),
35
- new FN001012_DEP_microsoft_sp_application_base('1.18.0-beta.1'),
36
- new FN001014_DEP_microsoft_sp_listview_extensibility('1.18.0-beta.1'),
37
- new FN001021_DEP_microsoft_sp_property_pane('1.18.0-beta.1'),
34
+ new FN001001_DEP_microsoft_sp_core_library('1.18.0'),
35
+ new FN001002_DEP_microsoft_sp_lodash_subset('1.18.0'),
36
+ new FN001003_DEP_microsoft_sp_office_ui_fabric_core('1.18.0'),
37
+ new FN001004_DEP_microsoft_sp_webpart_base('1.18.0'),
38
+ new FN001011_DEP_microsoft_sp_dialog('1.18.0'),
39
+ new FN001012_DEP_microsoft_sp_application_base('1.18.0'),
40
+ new FN001014_DEP_microsoft_sp_listview_extensibility('1.18.0'),
41
+ new FN001021_DEP_microsoft_sp_property_pane('1.18.0'),
38
42
  new FN001022_DEP_office_ui_fabric_react('', false),
39
- new FN001023_DEP_microsoft_sp_component_base('1.18.0-beta.1'),
40
- new FN001024_DEP_microsoft_sp_diagnostics('1.18.0-beta.1'),
41
- new FN001025_DEP_microsoft_sp_dynamic_data('1.18.0-beta.1'),
42
- new FN001026_DEP_microsoft_sp_extension_base('1.18.0-beta.1'),
43
- new FN001027_DEP_microsoft_sp_http('1.18.0-beta.1'),
44
- new FN001028_DEP_microsoft_sp_list_subscription('1.18.0-beta.1'),
45
- new FN001029_DEP_microsoft_sp_loader('1.18.0-beta.1'),
46
- new FN001030_DEP_microsoft_sp_module_interfaces('1.18.0-beta.1'),
47
- new FN001031_DEP_microsoft_sp_odata_types('1.18.0-beta.1'),
48
- new FN001032_DEP_microsoft_sp_page_context('1.18.0-beta.1'),
43
+ new FN001023_DEP_microsoft_sp_component_base('1.18.0'),
44
+ new FN001024_DEP_microsoft_sp_diagnostics('1.18.0'),
45
+ new FN001025_DEP_microsoft_sp_dynamic_data('1.18.0'),
46
+ new FN001026_DEP_microsoft_sp_extension_base('1.18.0'),
47
+ new FN001027_DEP_microsoft_sp_http('1.18.0'),
48
+ new FN001028_DEP_microsoft_sp_list_subscription('1.18.0'),
49
+ new FN001029_DEP_microsoft_sp_loader('1.18.0'),
50
+ new FN001030_DEP_microsoft_sp_module_interfaces('1.18.0'),
51
+ new FN001031_DEP_microsoft_sp_odata_types('1.18.0'),
52
+ new FN001032_DEP_microsoft_sp_page_context('1.18.0'),
49
53
  new FN001035_DEP_fluentui_react('8.106.4'),
50
- new FN001013_DEP_microsoft_decorators('1.18.0-beta.1'),
51
- new FN001034_DEP_microsoft_sp_adaptive_card_extension_base('1.18.0-beta.1'),
52
- new FN002022_DEVDEP_microsoft_eslint_plugin_spfx('1.18.0-beta.1'),
53
- new FN002023_DEVDEP_microsoft_eslint_config_spfx('1.18.0-beta.1'),
54
- new FN002001_DEVDEP_microsoft_sp_build_web('1.18.0-beta.1'),
55
- new FN002002_DEVDEP_microsoft_sp_module_interfaces('1.18.0-beta.1'),
56
- new FN010001_YORC_version('1.18.0-beta.1'),
57
- new FN010010_YORC_sdkVersions_teams_js('2.12.0')
54
+ new FN001013_DEP_microsoft_decorators('1.18.0'),
55
+ new FN001034_DEP_microsoft_sp_adaptive_card_extension_base('1.18.0'),
56
+ new FN002001_DEVDEP_microsoft_sp_build_web('1.18.0'),
57
+ new FN002002_DEVDEP_microsoft_sp_module_interfaces('1.18.0'),
58
+ new FN002022_DEVDEP_microsoft_eslint_plugin_spfx('1.18.0'),
59
+ new FN002023_DEVDEP_microsoft_eslint_config_spfx('1.18.0'),
60
+ new FN002026_DEVDEP_typescript('4.7.4'),
61
+ new FN002028_DEVDEP_microsoft_rush_stack_compiler_4_7('0.1.0'),
62
+ new FN010001_YORC_version('1.18.0'),
63
+ new FN010010_YORC_sdkVersions_teams_js('2.12.0'),
64
+ new FN012017_TSC_extends('./node_modules/@microsoft/rush-stack-compiler-4.7/includes/tsconfig-web.json'),
65
+ new FN021003_PKG_engines_node('>=16.13.0 <17.0.0 || >=18.17.1 <19.0.0')
58
66
  ];
59
- //# sourceMappingURL=upgrade-1.18.0-beta.1.js.map
67
+ //# sourceMappingURL=upgrade-1.18.0.js.map
@@ -3,12 +3,10 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
3
3
  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");
4
4
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
5
  };
6
- var _SpfxProjectUpgradeCommand_instances, _SpfxProjectUpgradeCommand_initTelemetry, _SpfxProjectUpgradeCommand_initOptions, _SpfxProjectUpgradeCommand_initValidators;
6
+ var _SpfxProjectUpgradeCommand_instances, _a, _SpfxProjectUpgradeCommand_initTelemetry, _SpfxProjectUpgradeCommand_initOptions, _SpfxProjectUpgradeCommand_initValidators;
7
7
  import fs from 'fs';
8
8
  import os from 'os';
9
9
  import path from 'path';
10
- // uncomment to support upgrading to preview releases
11
- import { prerelease } from 'semver';
12
10
  import { CommandError } from '../../../../Command.js';
13
11
  import { fsUtil } from '../../../../utils/fsUtil.js';
14
12
  import { packageManager } from '../../../../utils/packageManager.js';
@@ -71,7 +69,7 @@ class SpfxProjectUpgradeCommand extends BaseProjectCommand {
71
69
  '1.17.2',
72
70
  '1.17.3',
73
71
  '1.17.4',
74
- '1.18.0-beta.1'
72
+ '1.18.0'
75
73
  ];
76
74
  __classPrivateFieldGet(this, _SpfxProjectUpgradeCommand_instances, "m", _SpfxProjectUpgradeCommand_initTelemetry).call(this);
77
75
  __classPrivateFieldGet(this, _SpfxProjectUpgradeCommand_instances, "m", _SpfxProjectUpgradeCommand_initOptions).call(this);
@@ -80,35 +78,35 @@ class SpfxProjectUpgradeCommand extends BaseProjectCommand {
80
78
  async commandAction(logger, args) {
81
79
  this.projectRootPath = this.getProjectRoot(process.cwd());
82
80
  if (this.projectRootPath === null) {
83
- throw new CommandError(`Couldn't find project root folder`, SpfxProjectUpgradeCommand.ERROR_NO_PROJECT_ROOT_FOLDER);
81
+ throw new CommandError(`Couldn't find project root folder`, _a.ERROR_NO_PROJECT_ROOT_FOLDER);
84
82
  }
85
83
  this.toVersion = args.options.toVersion ? args.options.toVersion : this.supportedVersions[this.supportedVersions.length - 1];
86
84
  // uncomment to support upgrading to preview releases
87
- if (!args.options.toVersion &&
88
- !args.options.preview &&
89
- prerelease(this.toVersion)) {
90
- // no version and no preview specified while the current version to
91
- // upgrade to is a prerelease so let's grab the first non-preview version
92
- // since we're supporting only one preview version, it's sufficient for
93
- // us to take second to last version
94
- this.toVersion = this.supportedVersions[this.supportedVersions.length - 2];
95
- }
85
+ // if (!args.options.toVersion &&
86
+ // !args.options.preview &&
87
+ // prerelease(this.toVersion)) {
88
+ // // no version and no preview specified while the current version to
89
+ // // upgrade to is a prerelease so let's grab the first non-preview version
90
+ // // since we're supporting only one preview version, it's sufficient for
91
+ // // us to take second to last version
92
+ // this.toVersion = this.supportedVersions[this.supportedVersions.length - 2];
93
+ // }
96
94
  this.packageManager = args.options.packageManager || 'npm';
97
95
  this.shell = args.options.shell || 'bash';
98
96
  if (this.supportedVersions.indexOf(this.toVersion) < 0) {
99
- throw new CommandError(`CLI for Microsoft 365 doesn't support upgrading SharePoint Framework projects to version ${this.toVersion}. Supported versions are ${this.supportedVersions.join(', ')}`, SpfxProjectUpgradeCommand.ERROR_UNSUPPORTED_TO_VERSION);
97
+ throw new CommandError(`CLI for Microsoft 365 doesn't support upgrading SharePoint Framework projects to version ${this.toVersion}. Supported versions are ${this.supportedVersions.join(', ')}`, _a.ERROR_UNSUPPORTED_TO_VERSION);
100
98
  }
101
99
  this.projectVersion = this.getProjectVersion();
102
100
  if (!this.projectVersion) {
103
- throw new CommandError(`Unable to determine the version of the current SharePoint Framework project`, SpfxProjectUpgradeCommand.ERROR_NO_VERSION);
101
+ throw new CommandError(`Unable to determine the version of the current SharePoint Framework project`, _a.ERROR_NO_VERSION);
104
102
  }
105
103
  const pos = this.supportedVersions.indexOf(this.projectVersion);
106
104
  if (pos < 0) {
107
- throw new CommandError(`CLI for Microsoft 365 doesn't support upgrading projects built using SharePoint Framework v${this.projectVersion}`, SpfxProjectUpgradeCommand.ERROR_UNSUPPORTED_FROM_VERSION);
105
+ throw new CommandError(`CLI for Microsoft 365 doesn't support upgrading projects built using SharePoint Framework v${this.projectVersion}`, _a.ERROR_UNSUPPORTED_FROM_VERSION);
108
106
  }
109
107
  const posTo = this.supportedVersions.indexOf(this.toVersion);
110
108
  if (pos > posTo) {
111
- throw new CommandError('You cannot downgrade a project', SpfxProjectUpgradeCommand.ERROR_NO_DOWNGRADE);
109
+ throw new CommandError('You cannot downgrade a project', _a.ERROR_NO_DOWNGRADE);
112
110
  }
113
111
  if (pos === posTo) {
114
112
  await logger.log(`Project doesn't need to be upgraded`);
@@ -470,7 +468,7 @@ ${f.resolution}
470
468
  };
471
469
  }
472
470
  }
473
- _SpfxProjectUpgradeCommand_instances = new WeakSet(), _SpfxProjectUpgradeCommand_initTelemetry = function _SpfxProjectUpgradeCommand_initTelemetry() {
471
+ _a = SpfxProjectUpgradeCommand, _SpfxProjectUpgradeCommand_instances = new WeakSet(), _SpfxProjectUpgradeCommand_initTelemetry = function _SpfxProjectUpgradeCommand_initTelemetry() {
474
472
  this.telemetry.push((args) => {
475
473
  Object.assign(this.telemetryProperties, {
476
474
  toVersion: args.options.toVersion || this.supportedVersions[this.supportedVersions.length - 1],
@@ -479,19 +477,19 @@ _SpfxProjectUpgradeCommand_instances = new WeakSet(), _SpfxProjectUpgradeCommand
479
477
  preview: args.options.preview
480
478
  });
481
479
  // uncomment to support upgrading to preview releases
482
- if (prerelease(this.telemetryProperties.toVersion) && !args.options.preview) {
483
- this.telemetryProperties.toVersion = this.supportedVersions[this.supportedVersions.length - 2];
484
- }
480
+ // if (prerelease(this.telemetryProperties.toVersion) && !args.options.preview) {
481
+ // this.telemetryProperties.toVersion = this.supportedVersions[this.supportedVersions.length - 2];
482
+ // }
485
483
  });
486
484
  }, _SpfxProjectUpgradeCommand_initOptions = function _SpfxProjectUpgradeCommand_initOptions() {
487
485
  this.options.unshift({
488
486
  option: '-v, --toVersion [toVersion]'
489
487
  }, {
490
488
  option: '--packageManager [packageManager]',
491
- autocomplete: SpfxProjectUpgradeCommand.packageManagers
489
+ autocomplete: _a.packageManagers
492
490
  }, {
493
491
  option: '--shell [shell]',
494
- autocomplete: SpfxProjectUpgradeCommand.shells
492
+ autocomplete: _a.shells
495
493
  }, {
496
494
  option: '--preview'
497
495
  });
@@ -503,13 +501,13 @@ _SpfxProjectUpgradeCommand_instances = new WeakSet(), _SpfxProjectUpgradeCommand
503
501
  }, _SpfxProjectUpgradeCommand_initValidators = function _SpfxProjectUpgradeCommand_initValidators() {
504
502
  this.validators.push(async (args) => {
505
503
  if (args.options.packageManager) {
506
- if (SpfxProjectUpgradeCommand.packageManagers.indexOf(args.options.packageManager) < 0) {
507
- return `${args.options.packageManager} is not a supported package manager. Supported package managers are ${SpfxProjectUpgradeCommand.packageManagers.join(', ')}`;
504
+ if (_a.packageManagers.indexOf(args.options.packageManager) < 0) {
505
+ return `${args.options.packageManager} is not a supported package manager. Supported package managers are ${_a.packageManagers.join(', ')}`;
508
506
  }
509
507
  }
510
508
  if (args.options.shell) {
511
- if (SpfxProjectUpgradeCommand.shells.indexOf(args.options.shell) < 0) {
512
- return `${args.options.shell} is not a supported shell. Supported shells are ${SpfxProjectUpgradeCommand.shells.join(', ')}`;
509
+ if (_a.shells.indexOf(args.options.shell) < 0) {
510
+ return `${args.options.shell} is not a supported shell. Supported shells are ${_a.shells.join(', ')}`;
513
511
  }
514
512
  }
515
513
  return true;
@@ -524,14 +524,14 @@ class SpfxDoctorCommand extends BaseProjectCommand {
524
524
  fix: 'npm i -g yo@4'
525
525
  }
526
526
  },
527
- '1.18.0-beta.1': {
527
+ '1.18.0': {
528
528
  gulpCli: {
529
529
  range: '^1 || ^2',
530
530
  fix: 'npm i -g gulp-cli@2'
531
531
  },
532
532
  node: {
533
- range: '>=16.13.0 <17.0.0',
534
- fix: 'Install Node.js >=16.13.0 <17.0.0'
533
+ range: '>=16.13.0 <17.0.0 || >=18.17.1 <19.0.0',
534
+ fix: 'Install Node.js >=16.13.0 <17.0.0 || >=18.17.1 <19.0.0'
535
535
  },
536
536
  sp: SharePointVersion.SPO,
537
537
  yo: {
@@ -603,31 +603,21 @@ class SpfxDoctorCommand extends BaseProjectCommand {
603
603
  this.handleRejectedPromise(err);
604
604
  }
605
605
  }
606
- checkSharePointCompatibility(spfxVersion, prerequisites, args, fixes, logger) {
607
- return new Promise(async (resolve, reject) => {
608
- if (args.options.env) {
609
- const sp = this.spVersionStringToEnum(args.options.env);
610
- if ((prerequisites.sp & sp) === sp) {
611
- await logger.log(formatting.getStatus(CheckStatus.Success, `Supported in ${SharePointVersion[sp]}`));
612
- resolve();
613
- }
614
- else {
615
- await logger.log(formatting.getStatus(CheckStatus.Failure, `Not supported in ${SharePointVersion[sp]}`));
616
- fixes.push(`Use SharePoint Framework v${(sp === SharePointVersion.SP2016 ? '1.1' : '1.4.1')}`);
617
- reject(`SharePoint Framework v${spfxVersion} is not supported in ${SharePointVersion[sp]}`);
618
- }
619
- }
620
- else {
621
- resolve();
606
+ async checkSharePointCompatibility(spfxVersion, prerequisites, args, fixes, logger) {
607
+ if (args.options.env) {
608
+ const sp = this.spVersionStringToEnum(args.options.env);
609
+ if ((prerequisites.sp & sp) === sp) {
610
+ await logger.log(formatting.getStatus(CheckStatus.Success, `Supported in ${SharePointVersion[sp]}`));
611
+ return;
622
612
  }
623
- });
613
+ await logger.log(formatting.getStatus(CheckStatus.Failure, `Not supported in ${SharePointVersion[sp]}`));
614
+ fixes.push(`Use SharePoint Framework v${(sp === SharePointVersion.SP2016 ? '1.1' : '1.4.1')}`);
615
+ throw `SharePoint Framework v${spfxVersion} is not supported in ${SharePointVersion[sp]}`;
616
+ }
624
617
  }
625
- checkNodeVersion(prerequisites, fixes, logger) {
626
- return Promise
627
- .resolve(this.getNodeVersion())
628
- .then((nodeVersion) => {
629
- this.checkStatus('Node', nodeVersion, prerequisites.node, OptionalOrRequired.Required, fixes, logger);
630
- });
618
+ async checkNodeVersion(prerequisites, fixes, logger) {
619
+ const nodeVersion = this.getNodeVersion();
620
+ this.checkStatus('Node', nodeVersion, prerequisites.node, OptionalOrRequired.Required, fixes, logger);
631
621
  }
632
622
  async checkSharePointFrameworkVersion(spfxVersionRequested, fixes, logger) {
633
623
  let spfxVersionDetected = await this.getSPFxVersionFromYoRcFile(logger);
@@ -646,54 +636,42 @@ class SpfxDoctorCommand extends BaseProjectCommand {
646
636
  fixes.push(versionCheck.fix);
647
637
  }
648
638
  }
649
- checkYo(prerequisites, fixes, logger) {
650
- return this
651
- .getPackageVersion('yo', PackageSearchMode.GlobalOnly, HandlePromise.Continue, logger)
652
- .then(async (yoVersion) => {
653
- if (yoVersion) {
654
- this.checkStatus('yo', yoVersion, prerequisites.yo, OptionalOrRequired.Required, fixes, logger);
655
- }
656
- else {
657
- await logger.log(formatting.getStatus(CheckStatus.Failure, `yo not found`));
658
- fixes.push(prerequisites.yo.fix);
659
- }
660
- });
639
+ async checkYo(prerequisites, fixes, logger) {
640
+ const yoVersion = await this.getPackageVersion('yo', PackageSearchMode.GlobalOnly, HandlePromise.Continue, logger);
641
+ if (yoVersion) {
642
+ this.checkStatus('yo', yoVersion, prerequisites.yo, OptionalOrRequired.Required, fixes, logger);
643
+ }
644
+ else {
645
+ await logger.log(formatting.getStatus(CheckStatus.Failure, `yo not found`));
646
+ fixes.push(prerequisites.yo.fix);
647
+ }
661
648
  }
662
- checkGulpCli(prerequisites, fixes, logger) {
663
- return this
664
- .getPackageVersion('gulp-cli', PackageSearchMode.GlobalOnly, HandlePromise.Continue, logger)
665
- .then(async (gulpCliVersion) => {
666
- if (gulpCliVersion) {
667
- this.checkStatus('gulp-cli', gulpCliVersion, prerequisites.gulpCli, OptionalOrRequired.Required, fixes, logger);
668
- }
669
- else {
670
- await logger.log(formatting.getStatus(CheckStatus.Failure, `gulp-cli not found`));
671
- fixes.push(prerequisites.gulpCli.fix);
672
- }
673
- });
649
+ async checkGulpCli(prerequisites, fixes, logger) {
650
+ const gulpCliVersion = await this.getPackageVersion('gulp-cli', PackageSearchMode.GlobalOnly, HandlePromise.Continue, logger);
651
+ if (gulpCliVersion) {
652
+ this.checkStatus('gulp-cli', gulpCliVersion, prerequisites.gulpCli, OptionalOrRequired.Required, fixes, logger);
653
+ }
654
+ else {
655
+ await logger.log(formatting.getStatus(CheckStatus.Failure, `gulp-cli not found`));
656
+ fixes.push(prerequisites.gulpCli.fix);
657
+ }
674
658
  }
675
- checkGulp(fixes, logger) {
676
- return this
677
- .getPackageVersion('gulp', PackageSearchMode.GlobalOnly, HandlePromise.Continue, logger)
678
- .then(async (gulpVersion) => {
679
- if (gulpVersion) {
680
- await logger.log(formatting.getStatus(CheckStatus.Failure, `gulp should be removed`));
681
- fixes.push('npm un -g gulp');
682
- }
683
- });
659
+ async checkGulp(fixes, logger) {
660
+ const gulpVersion = await this.getPackageVersion('gulp', PackageSearchMode.GlobalOnly, HandlePromise.Continue, logger);
661
+ if (gulpVersion) {
662
+ await logger.log(formatting.getStatus(CheckStatus.Failure, `gulp should be removed`));
663
+ fixes.push('npm un -g gulp');
664
+ }
684
665
  }
685
- checkTypeScript(fixes, logger) {
686
- return this
687
- .getPackageVersion('typescript', PackageSearchMode.LocalOnly, HandlePromise.Continue, logger)
688
- .then(async (typeScriptVersion) => {
689
- if (typeScriptVersion) {
690
- await logger.log(formatting.getStatus(CheckStatus.Failure, `typescript v${typeScriptVersion} installed in the project`));
691
- fixes.push('npm un typescript');
692
- }
693
- else {
694
- await logger.log(formatting.getStatus(CheckStatus.Success, `bundled typescript used`));
695
- }
696
- });
666
+ async checkTypeScript(fixes, logger) {
667
+ const typeScriptVersion = await this.getPackageVersion('typescript', PackageSearchMode.LocalOnly, HandlePromise.Continue, logger);
668
+ if (typeScriptVersion) {
669
+ await logger.log(formatting.getStatus(CheckStatus.Failure, `typescript v${typeScriptVersion} installed in the project`));
670
+ fixes.push('npm un typescript');
671
+ }
672
+ else {
673
+ await logger.log(formatting.getStatus(CheckStatus.Success, `bundled typescript used`));
674
+ }
697
675
  }
698
676
  spVersionStringToEnum(sp) {
699
677
  return SharePointVersion[sp.toUpperCase()];
@@ -742,43 +720,35 @@ class SpfxDoctorCommand extends BaseProjectCommand {
742
720
  }
743
721
  }
744
722
  }
745
- getPackageVersion(packageName, searchMode, handlePromise, logger) {
746
- return new Promise((resolve, reject) => {
747
- const args = ['ls', packageName, '--depth=0', '--json'];
748
- if (searchMode === PackageSearchMode.GlobalOnly) {
723
+ async getPackageVersion(packageName, searchMode, handlePromise, logger) {
724
+ const args = ['ls', packageName, '--depth=0', '--json'];
725
+ if (searchMode === PackageSearchMode.GlobalOnly) {
726
+ args.push('-g');
727
+ }
728
+ let version;
729
+ try {
730
+ version = await this.getPackageVersionFromNpm(args, logger);
731
+ }
732
+ catch {
733
+ if (searchMode === PackageSearchMode.LocalAndGlobal) {
749
734
  args.push('-g');
735
+ version = await this.getPackageVersionFromNpm(args, logger);
750
736
  }
751
- this
752
- .getPackageVersionFromNpm(args, logger)
753
- .then((version) => {
754
- return Promise.resolve(version);
755
- })
756
- .catch(() => {
757
- if (searchMode === PackageSearchMode.LocalAndGlobal) {
758
- args.push('-g');
759
- return this.getPackageVersionFromNpm(args, logger);
760
- }
761
- else {
762
- return Promise.resolve('');
763
- }
764
- })
765
- .then((version) => {
766
- if (version) {
767
- resolve(version);
768
- }
769
- else {
770
- if (handlePromise === HandlePromise.Continue) {
771
- resolve('');
772
- }
773
- else {
774
- reject();
775
- }
776
- }
777
- })
778
- .catch((err) => {
779
- reject(err);
780
- });
781
- });
737
+ else {
738
+ version = '';
739
+ }
740
+ }
741
+ if (version) {
742
+ return version;
743
+ }
744
+ else {
745
+ if (handlePromise === HandlePromise.Continue) {
746
+ return '';
747
+ }
748
+ else {
749
+ throw new Error();
750
+ }
751
+ }
782
752
  }
783
753
  getPackageVersionFromNpm(args, logger) {
784
754
  return new Promise(async (resolve, reject) => {
@@ -4,6 +4,7 @@ export default {
4
4
  PACKAGE_GENERATE: `${prefix} package generate`,
5
5
  PROJECT_DOCTOR: `${prefix} project doctor`,
6
6
  PROJECT_EXTERNALIZE: `${prefix} project externalize`,
7
+ PROJECT_GITHUB_WORKFLOW_ADD: `${prefix} project github workflow add`,
7
8
  PROJECT_PERMISSIONS_GRANT: `${prefix} project permissions grant`,
8
9
  PROJECT_RENAME: `${prefix} project rename`,
9
10
  PROJECT_UPGRADE: `${prefix} project upgrade`
@@ -1,33 +1,34 @@
1
1
  import request from '../../../../request.js';
2
2
  import SpoCommand from '../../../base/SpoCommand.js';
3
3
  export class SpoAppBaseCommand extends SpoCommand {
4
- getAppCatalogSiteUrl(logger, authSiteUrl, args) {
5
- return new Promise((resolve, reject) => {
6
- if (args.options.appCatalogScope === 'sitecollection') {
7
- return resolve(args.options.appCatalogUrl.toLowerCase().replace('/appcatalog', ''));
4
+ async getAppCatalogSiteUrl(logger, authSiteUrl, args) {
5
+ if (args.options.appCatalogScope === 'sitecollection') {
6
+ // trim trailing slashes if there are any
7
+ const appCatalogUrl = args.options.appCatalogUrl.replace(/\/$/, '');
8
+ const appCatalogUrlChunks = appCatalogUrl.split('/');
9
+ // Trim the last part of the URL if it ends on '/appcatalog', but don't trim it if the site URL is called like that (/sites/appcatalog).
10
+ if (appCatalogUrl.toLowerCase().endsWith('/appcatalog') && appCatalogUrlChunks.length !== 5) {
11
+ return appCatalogUrl.substring(0, appCatalogUrl.lastIndexOf('/'));
8
12
  }
9
- if (args.options.appCatalogUrl) {
10
- return resolve(args.options.appCatalogUrl);
11
- }
12
- const requestOptions = {
13
- url: `${authSiteUrl}/_api/SP_TenantSettings_Current`,
14
- headers: {
15
- accept: 'application/json;odata=nometadata'
16
- },
17
- responseType: 'json'
18
- };
19
- request
20
- .get(requestOptions)
21
- .then((res) => {
22
- if (res.CorporateCatalogUrl) {
23
- return resolve(res.CorporateCatalogUrl);
24
- }
25
- reject('Tenant app catalog is not configured.');
26
- })
27
- .catch((err) => {
28
- reject(err);
29
- });
30
- });
13
+ }
14
+ if (args.options.appCatalogUrl) {
15
+ return args.options.appCatalogUrl.replace(/\/$/, '');
16
+ }
17
+ if (this.verbose) {
18
+ await logger.logToStderr('Getting tenant app catalog url...');
19
+ }
20
+ const requestOptions = {
21
+ url: `${authSiteUrl}/_api/SP_TenantSettings_Current`,
22
+ headers: {
23
+ accept: 'application/json;odata=nometadata'
24
+ },
25
+ responseType: 'json'
26
+ };
27
+ const response = await request.get(requestOptions);
28
+ if (response.CorporateCatalogUrl) {
29
+ return response.CorporateCatalogUrl;
30
+ }
31
+ throw new Error('Tenant app catalog is not configured.');
31
32
  }
32
33
  }
33
34
  //# sourceMappingURL=SpoAppBaseCommand.js.map
@@ -22,6 +22,7 @@ class SpoAppAddCommand extends SpoAppBaseCommand {
22
22
  constructor() {
23
23
  super();
24
24
  _SpoAppAddCommand_instances.add(this);
25
+ this.appCatalogScopeOptions = ['tenant', 'sitecollection'];
25
26
  __classPrivateFieldGet(this, _SpoAppAddCommand_instances, "m", _SpoAppAddCommand_initTelemetry).call(this);
26
27
  __classPrivateFieldGet(this, _SpoAppAddCommand_instances, "m", _SpoAppAddCommand_initOptions).call(this);
27
28
  __classPrivateFieldGet(this, _SpoAppAddCommand_instances, "m", _SpoAppAddCommand_initValidators).call(this);
@@ -62,9 +63,9 @@ class SpoAppAddCommand extends SpoAppBaseCommand {
62
63
  _SpoAppAddCommand_instances = new WeakSet(), _SpoAppAddCommand_initTelemetry = function _SpoAppAddCommand_initTelemetry() {
63
64
  this.telemetry.push((args) => {
64
65
  Object.assign(this.telemetryProperties, {
65
- overwrite: (!(!args.options.overwrite)).toString(),
66
+ overwrite: !!args.options.overwrite,
66
67
  appCatalogScope: args.options.appCatalogScope || 'tenant',
67
- appCatalogUrl: (!(!args.options.appCatalogUrl)).toString()
68
+ appCatalogUrl: typeof args.options.appCatalogUrl !== 'undefined'
68
69
  });
69
70
  });
70
71
  }, _SpoAppAddCommand_initOptions = function _SpoAppAddCommand_initOptions() {
@@ -72,7 +73,7 @@ _SpoAppAddCommand_instances = new WeakSet(), _SpoAppAddCommand_initTelemetry = f
72
73
  option: '-p, --filePath <filePath>'
73
74
  }, {
74
75
  option: '-s, --appCatalogScope [appCatalogScope]',
75
- autocomplete: ['tenant', 'sitecollection']
76
+ autocomplete: this.appCatalogScopeOptions
76
77
  }, {
77
78
  option: '-u, --appCatalogUrl [appCatalogUrl]'
78
79
  }, {
@@ -80,14 +81,13 @@ _SpoAppAddCommand_instances = new WeakSet(), _SpoAppAddCommand_initTelemetry = f
80
81
  });
81
82
  }, _SpoAppAddCommand_initValidators = function _SpoAppAddCommand_initValidators() {
82
83
  this.validators.push(async (args) => {
83
- // verify either 'tenant' or 'sitecollection' specified if scope provided
84
84
  if (args.options.appCatalogScope) {
85
- const testScope = args.options.appCatalogScope.toLowerCase();
86
- if (!(testScope === 'tenant' || testScope === 'sitecollection')) {
87
- return `appCatalogScope must be either 'tenant' or 'sitecollection'`;
85
+ const appCatalogScope = args.options.appCatalogScope.toLowerCase();
86
+ if (this.appCatalogScopeOptions.indexOf(appCatalogScope) === -1) {
87
+ return `${args.options.appCatalogScope} is not a valid appCatalogScope. Allowed values are: ${this.appCatalogScopeOptions.join(', ')}`;
88
88
  }
89
- if (testScope === 'sitecollection' && !args.options.appCatalogUrl) {
90
- return `You must specify appCatalogUrl when the appCatalogScope is sitecollection`;
89
+ if (appCatalogScope === 'sitecollection' && !args.options.appCatalogUrl) {
90
+ return `You must specify appCatalogUrl when appCatalogScope is sitecollection`;
91
91
  }
92
92
  }
93
93
  const fullPath = path.resolve(args.options.filePath);
@@ -3,7 +3,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
3
3
  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");
4
4
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
5
  };
6
- var _SpoApplicationCustomizerAddCommand_instances, _SpoApplicationCustomizerAddCommand_initOptions, _SpoApplicationCustomizerAddCommand_initTelemetry, _SpoApplicationCustomizerAddCommand_initValidators;
6
+ var _SpoApplicationCustomizerAddCommand_instances, _a, _SpoApplicationCustomizerAddCommand_initOptions, _SpoApplicationCustomizerAddCommand_initTelemetry, _SpoApplicationCustomizerAddCommand_initValidators;
7
7
  import request from '../../../../request.js';
8
8
  import { validation } from '../../../../utils/validation.js';
9
9
  import SpoCommand from '../../../base/SpoCommand.js';
@@ -47,7 +47,7 @@ class SpoApplicationCustomizerAddCommand extends SpoCommand {
47
47
  await request.post(requestOptions);
48
48
  }
49
49
  }
50
- _SpoApplicationCustomizerAddCommand_instances = new WeakSet(), _SpoApplicationCustomizerAddCommand_initOptions = function _SpoApplicationCustomizerAddCommand_initOptions() {
50
+ _a = SpoApplicationCustomizerAddCommand, _SpoApplicationCustomizerAddCommand_instances = new WeakSet(), _SpoApplicationCustomizerAddCommand_initOptions = function _SpoApplicationCustomizerAddCommand_initOptions() {
51
51
  this.options.unshift({
52
52
  option: '-t, --title <title>'
53
53
  }, {
@@ -57,7 +57,7 @@ _SpoApplicationCustomizerAddCommand_instances = new WeakSet(), _SpoApplicationCu
57
57
  }, {
58
58
  option: '--clientSideComponentProperties [clientSideComponentProperties]'
59
59
  }, {
60
- option: '-s, --scope [scope]', autocomplete: SpoApplicationCustomizerAddCommand.scopes
60
+ option: '-s, --scope [scope]', autocomplete: _a.scopes
61
61
  });
62
62
  }, _SpoApplicationCustomizerAddCommand_initTelemetry = function _SpoApplicationCustomizerAddCommand_initTelemetry() {
63
63
  this.telemetry.push((args) => {
@@ -85,8 +85,8 @@ _SpoApplicationCustomizerAddCommand_instances = new WeakSet(), _SpoApplicationCu
85
85
  return `An error has occurred while parsing clientSideComponentProperties: ${e}`;
86
86
  }
87
87
  }
88
- if (args.options.scope && SpoApplicationCustomizerAddCommand.scopes.indexOf(args.options.scope) < 0) {
89
- return `${args.options.scope} is not a valid value for allowedMembers. Valid values are ${SpoApplicationCustomizerAddCommand.scopes.join(', ')}`;
88
+ if (args.options.scope && _a.scopes.indexOf(args.options.scope) < 0) {
89
+ return `${args.options.scope} is not a valid value for allowedMembers. Valid values are ${_a.scopes.join(', ')}`;
90
90
  }
91
91
  return true;
92
92
  });
@@ -9,6 +9,7 @@ import { spo } from '../../../../utils/spo.js';
9
9
  import { validation } from '../../../../utils/validation.js';
10
10
  import SpoCommand from '../../../base/SpoCommand.js';
11
11
  import commands from '../../commands.js';
12
+ import { Cli } from '../../../../cli/Cli.js';
12
13
  class SpoApplicationCustomizerGetCommand extends SpoCommand {
13
14
  get name() {
14
15
  return commands.APPLICATIONCUSTOMIZER_GET;
@@ -69,12 +70,13 @@ class SpoApplicationCustomizerGetCommand extends SpoCommand {
69
70
  if (customActions.length === 1) {
70
71
  return customActions[0];
71
72
  }
72
- const errorMessage = options.title ? `title '${options.title}'` : `Client Side Component Id '${options.clientSideComponentId}'`;
73
+ const identifier = options.title ? `title '${options.title}'` : `Client Side Component Id '${options.clientSideComponentId}'`;
73
74
  if (customActions.length === 0) {
74
- throw `No application customizer with ${errorMessage} found`;
75
+ throw `No application customizer with ${identifier} found`;
75
76
  }
76
77
  else {
77
- throw `Multiple application customizers with ${errorMessage} found. Please disambiguate using IDs: ${customActions.map(a => a.Id).join(', ')}`;
78
+ const resultAsKeyValuePair = formatting.convertArrayToHashTable('Id', customActions);
79
+ return await Cli.handleMultipleResultsFound(`Multiple application customizers with ${identifier} found.`, resultAsKeyValuePair);
78
80
  }
79
81
  }
80
82
  humanizeScope(scope) {