@pnp/cli-microsoft365 7.2.0-beta.54705a9 → 7.2.0-beta.6775e3a

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 (192) hide show
  1. package/.devcontainer/Dockerfile +0 -1
  2. package/.eslintrc.cjs +4 -0
  3. package/Dockerfile +0 -1
  4. package/dist/Command.js +7 -24
  5. package/dist/chili/chili.js +40 -51
  6. package/dist/cli/Cli.js +27 -14
  7. package/dist/m365/aad/commands/administrativeunit/administrativeunit-add.js +61 -0
  8. package/dist/m365/aad/commands/administrativeunit/administrativeunit-get.js +80 -0
  9. package/dist/m365/aad/commands/administrativeunit/administrativeunit-list.js +25 -0
  10. package/dist/m365/aad/commands/administrativeunit/administrativeunit-remove.js +91 -0
  11. package/dist/m365/aad/commands/app/app-remove.js +2 -7
  12. package/dist/m365/aad/commands/app/app-role-remove.js +2 -7
  13. package/dist/m365/aad/commands/approleassignment/approleassignment-remove.js +2 -7
  14. package/dist/m365/aad/commands/group/group-remove.js +2 -7
  15. package/dist/m365/aad/commands/groupsetting/groupsetting-remove.js +2 -7
  16. package/dist/m365/aad/commands/m365group/m365group-recyclebinitem-clear.js +2 -7
  17. package/dist/m365/aad/commands/m365group/m365group-recyclebinitem-remove.js +2 -7
  18. package/dist/m365/aad/commands/m365group/m365group-remove.js +2 -7
  19. package/dist/m365/aad/commands/m365group/m365group-user-remove.js +2 -7
  20. package/dist/m365/aad/commands/oauth2grant/oauth2grant-remove.js +2 -7
  21. package/dist/m365/aad/commands/siteclassification/siteclassification-disable.js +2 -7
  22. package/dist/m365/aad/commands/user/user-license-remove.js +2 -7
  23. package/dist/m365/aad/commands/user/user-recyclebinitem-clear.js +2 -7
  24. package/dist/m365/aad/commands/user/user-recyclebinitem-remove.js +2 -7
  25. package/dist/m365/aad/commands/user/user-remove.js +2 -7
  26. package/dist/m365/aad/commands.js +4 -0
  27. package/dist/m365/base/AppCommand.js +3 -12
  28. package/dist/m365/commands/setup.js +31 -37
  29. package/dist/m365/context/commands/context-remove.js +2 -7
  30. package/dist/m365/context/commands/option/option-remove.js +2 -7
  31. package/dist/m365/{search/commands/externalconnection/externalconnection-add.js → external/commands/connection/connection-add.js} +16 -13
  32. package/dist/m365/{search/commands/externalconnection/externalconnection-get.js → external/commands/connection/connection-get.js} +16 -13
  33. package/dist/m365/{search/commands/externalconnection/externalconnection-list.js → external/commands/connection/connection-list.js} +7 -4
  34. package/dist/m365/{search/commands/externalconnection/externalconnection-remove.js → external/commands/connection/connection-remove.js} +19 -21
  35. package/dist/m365/{search/commands/externalconnection/externalconnection-schema-add.js → external/commands/connection/connection-schema-add.js} +14 -11
  36. package/dist/m365/external/commands.js +15 -0
  37. package/dist/m365/flow/commands/flow-remove.js +2 -7
  38. package/dist/m365/flow/commands/owner/owner-remove.js +2 -7
  39. package/dist/m365/flow/commands/run/run-cancel.js +2 -7
  40. package/dist/m365/flow/commands/run/run-resubmit.js +2 -7
  41. package/dist/m365/graph/commands/schemaextension/schemaextension-remove.js +2 -7
  42. package/dist/m365/pa/commands/app/app-consent-set.js +2 -7
  43. package/dist/m365/pa/commands/app/app-permission-remove.js +2 -7
  44. package/dist/m365/pa/commands/app/app-remove.js +2 -7
  45. package/dist/m365/planner/commands/bucket/bucket-remove.js +2 -7
  46. package/dist/m365/planner/commands/plan/plan-remove.js +2 -7
  47. package/dist/m365/planner/commands/roster/roster-member-remove.js +4 -14
  48. package/dist/m365/planner/commands/roster/roster-remove.js +2 -7
  49. package/dist/m365/planner/commands/task/task-checklistitem-remove.js +2 -7
  50. package/dist/m365/planner/commands/task/task-reference-remove.js +2 -7
  51. package/dist/m365/planner/commands/task/task-remove.js +2 -7
  52. package/dist/m365/pp/commands/aibuildermodel/aibuildermodel-remove.js +2 -7
  53. package/dist/m365/pp/commands/card/card-remove.js +2 -7
  54. package/dist/m365/pp/commands/chatbot/chatbot-remove.js +2 -7
  55. package/dist/m365/pp/commands/dataverse/dataverse-table-remove.js +2 -7
  56. package/dist/m365/pp/commands/dataverse/dataverse-table-row-remove.js +2 -7
  57. package/dist/m365/pp/commands/solution/solution-publisher-remove.js +2 -7
  58. package/dist/m365/pp/commands/solution/solution-remove.js +2 -7
  59. package/dist/m365/purview/commands/retentionevent/retentionevent-remove.js +2 -7
  60. package/dist/m365/purview/commands/retentioneventtype/retentioneventtype-remove.js +2 -7
  61. package/dist/m365/purview/commands/retentionlabel/retentionlabel-remove.js +2 -7
  62. package/dist/m365/spfx/commands/project/project-doctor/doctor-1.18.1-rc.0.js +21 -0
  63. package/dist/m365/spfx/commands/project/project-doctor.js +2 -1
  64. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN014010_CODE_settings_filesexclude_jest.js +44 -0
  65. package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.18.1-rc.0.js +57 -0
  66. package/dist/m365/spfx/commands/project/project-upgrade.js +16 -13
  67. package/dist/m365/spfx/commands/spfx-doctor.js +15 -0
  68. package/dist/m365/spo/commands/app/app-remove.js +2 -7
  69. package/dist/m365/spo/commands/app/app-retract.js +2 -7
  70. package/dist/m365/spo/commands/app/app-uninstall.js +2 -7
  71. package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-remove.js +2 -7
  72. package/dist/m365/spo/commands/cdn/cdn-origin-remove.js +2 -7
  73. package/dist/m365/spo/commands/commandset/commandset-remove.js +2 -7
  74. package/dist/m365/spo/commands/contenttype/contenttype-field-remove.js +2 -7
  75. package/dist/m365/spo/commands/contenttype/contenttype-remove.js +2 -2
  76. package/dist/m365/spo/commands/customaction/customaction-clear.js +2 -7
  77. package/dist/m365/spo/commands/customaction/customaction-remove.js +2 -7
  78. package/dist/m365/spo/commands/eventreceiver/eventreceiver-remove.js +2 -7
  79. package/dist/m365/spo/commands/field/field-remove.js +2 -7
  80. package/dist/m365/spo/commands/file/file-checkout-undo.js +2 -7
  81. package/dist/m365/spo/commands/file/file-remove.js +2 -7
  82. package/dist/m365/spo/commands/file/file-retentionlabel-remove.js +2 -7
  83. package/dist/m365/spo/commands/file/file-roleassignment-remove.js +2 -7
  84. package/dist/m365/spo/commands/file/file-roleinheritance-break.js +2 -7
  85. package/dist/m365/spo/commands/file/file-roleinheritance-reset.js +2 -7
  86. package/dist/m365/spo/commands/file/file-sharinglink-clear.js +2 -7
  87. package/dist/m365/spo/commands/file/file-sharinglink-remove.js +2 -7
  88. package/dist/m365/spo/commands/file/file-version-clear.js +2 -7
  89. package/dist/m365/spo/commands/file/file-version-remove.js +2 -7
  90. package/dist/m365/spo/commands/file/file-version-restore.js +2 -7
  91. package/dist/m365/spo/commands/folder/folder-remove.js +2 -7
  92. package/dist/m365/spo/commands/folder/folder-retentionlabel-remove.js +2 -7
  93. package/dist/m365/spo/commands/folder/folder-roleassignment-remove.js +2 -7
  94. package/dist/m365/spo/commands/folder/folder-roleinheritance-break.js +2 -7
  95. package/dist/m365/spo/commands/folder/folder-roleinheritance-reset.js +2 -7
  96. package/dist/m365/spo/commands/group/group-member-remove.js +2 -7
  97. package/dist/m365/spo/commands/group/group-remove.js +2 -7
  98. package/dist/m365/spo/commands/homesite/homesite-remove.js +2 -7
  99. package/dist/m365/spo/commands/hubsite/hubsite-disconnect.js +2 -7
  100. package/dist/m365/spo/commands/hubsite/hubsite-rights-revoke.js +2 -7
  101. package/dist/m365/spo/commands/hubsite/hubsite-unregister.js +2 -7
  102. package/dist/m365/spo/commands/knowledgehub/knowledgehub-remove.js +2 -7
  103. package/dist/m365/spo/commands/list/list-contenttype-remove.js +2 -7
  104. package/dist/m365/spo/commands/list/list-remove.js +2 -7
  105. package/dist/m365/spo/commands/list/list-retentionlabel-remove.js +2 -7
  106. package/dist/m365/spo/commands/list/list-roleassignment-remove.js +2 -7
  107. package/dist/m365/spo/commands/list/list-roleinheritance-break.js +2 -7
  108. package/dist/m365/spo/commands/list/list-roleinheritance-reset.js +2 -7
  109. package/dist/m365/spo/commands/list/list-view-field-remove.js +2 -7
  110. package/dist/m365/spo/commands/list/list-view-remove.js +2 -7
  111. package/dist/m365/spo/commands/list/list-webhook-remove.js +2 -7
  112. package/dist/m365/spo/commands/listitem/listitem-attachment-remove.js +2 -7
  113. package/dist/m365/spo/commands/listitem/listitem-remove.js +2 -7
  114. package/dist/m365/spo/commands/listitem/listitem-retentionlabel-remove.js +2 -7
  115. package/dist/m365/spo/commands/listitem/listitem-roleassignment-remove.js +2 -7
  116. package/dist/m365/spo/commands/listitem/listitem-roleinheritance-break.js +2 -7
  117. package/dist/m365/spo/commands/listitem/listitem-roleinheritance-reset.js +2 -7
  118. package/dist/m365/spo/commands/navigation/navigation-node-remove.js +2 -7
  119. package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-remove.js +2 -7
  120. package/dist/m365/spo/commands/orgnewssite/orgnewssite-remove.js +2 -7
  121. package/dist/m365/spo/commands/page/page-remove.js +2 -7
  122. package/dist/m365/spo/commands/propertybag/propertybag-remove.js +2 -7
  123. package/dist/m365/spo/commands/roledefinition/roledefinition-remove.js +2 -7
  124. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-set.js +2 -7
  125. package/dist/m365/spo/commands/site/site-apppermission-remove.js +2 -7
  126. package/dist/m365/spo/commands/site/site-hubsite-disconnect.js +2 -7
  127. package/dist/m365/spo/commands/site/site-recyclebinitem-clear.js +2 -7
  128. package/dist/m365/spo/commands/site/site-recyclebinitem-move.js +2 -7
  129. package/dist/m365/spo/commands/site/site-recyclebinitem-remove.js +2 -7
  130. package/dist/m365/spo/commands/site/site-remove.js +2 -7
  131. package/dist/m365/spo/commands/site/site-set.js +33 -1
  132. package/dist/m365/spo/commands/sitedesign/sitedesign-remove.js +2 -7
  133. package/dist/m365/spo/commands/sitedesign/sitedesign-rights-revoke.js +2 -7
  134. package/dist/m365/spo/commands/sitedesign/sitedesign-task-remove.js +2 -7
  135. package/dist/m365/spo/commands/sitescript/sitescript-remove.js +2 -7
  136. package/dist/m365/spo/commands/storageentity/storageentity-remove.js +2 -7
  137. package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-remove.js +2 -7
  138. package/dist/m365/spo/commands/tenant/tenant-commandset-remove.js +2 -7
  139. package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-remove.js +2 -7
  140. package/dist/m365/spo/commands/theme/theme-remove.js +2 -7
  141. package/dist/m365/spo/commands/user/user-remove.js +2 -7
  142. package/dist/m365/spo/commands/web/web-remove.js +2 -7
  143. package/dist/m365/spo/commands/web/web-roleassignment-remove.js +2 -7
  144. package/dist/m365/spo/commands/web/web-roleinheritance-break.js +2 -7
  145. package/dist/m365/spo/commands/web/web-roleinheritance-reset.js +2 -7
  146. package/dist/m365/teams/commands/app/app-remove.js +2 -7
  147. package/dist/m365/teams/commands/app/app-uninstall.js +2 -7
  148. package/dist/m365/teams/commands/app/app-update.js +9 -6
  149. package/dist/m365/teams/commands/cache/cache-remove.js +2 -7
  150. package/dist/m365/teams/commands/channel/channel-member-remove.js +2 -7
  151. package/dist/m365/teams/commands/channel/channel-remove.js +2 -7
  152. package/dist/m365/teams/commands/chat/chat-member-remove.js +2 -7
  153. package/dist/m365/teams/commands/tab/tab-remove.js +2 -7
  154. package/dist/m365/teams/commands/team/team-remove.js +2 -7
  155. package/dist/m365/teams/commands/user/user-app-remove.js +2 -7
  156. package/dist/m365/tenant/commands/people/people-profilecardproperty-add.js +131 -0
  157. package/dist/m365/tenant/commands/people/people-profilecardproperty-get.js +75 -0
  158. package/dist/m365/tenant/commands/people/people-profilecardproperty-list.js +53 -0
  159. package/dist/m365/tenant/commands/people/people-profilecardproperty-remove.js +79 -0
  160. package/dist/m365/tenant/commands/people/people-profilecardproperty-set.js +118 -0
  161. package/dist/m365/tenant/commands/people/profileCardProperties.js +24 -0
  162. package/dist/m365/tenant/commands.js +5 -0
  163. package/dist/m365/todo/commands/list/list-remove.js +2 -7
  164. package/dist/m365/todo/commands/task/task-remove.js +2 -7
  165. package/dist/m365/yammer/commands/group/group-user-remove.js +2 -7
  166. package/dist/m365/yammer/commands/message/message-like-set.js +3 -8
  167. package/dist/m365/yammer/commands/message/message-remove.js +2 -7
  168. package/dist/utils/aadAdministrativeUnit.js +25 -0
  169. package/dist/utils/aadGroup.js +3 -1
  170. package/dist/utils/prompt.js +26 -7
  171. package/docs/docs/cmd/aad/administrativeunit/administrativeunit-add.mdx +119 -0
  172. package/docs/docs/cmd/aad/administrativeunit/administrativeunit-get.mdx +102 -0
  173. package/docs/docs/cmd/aad/administrativeunit/administrativeunit-list.mdx +87 -0
  174. package/docs/docs/cmd/aad/administrativeunit/administrativeunit-remove.mdx +56 -0
  175. package/docs/docs/cmd/{search/externalconnection/externalconnection-add.mdx → external/connection/connection-add.mdx} +16 -10
  176. package/docs/docs/cmd/{search/externalconnection/externalconnection-get.mdx → external/connection/connection-get.mdx} +16 -11
  177. package/docs/docs/cmd/{search/externalconnection/externalconnection-list.mdx → external/connection/connection-list.mdx} +12 -7
  178. package/docs/docs/cmd/external/connection/connection-remove.mdx +54 -0
  179. package/docs/docs/cmd/external/connection/connection-schema-add.mdx +41 -0
  180. package/docs/docs/cmd/spfx/project/project-upgrade.mdx +1 -1
  181. package/docs/docs/cmd/spo/file/file-rename.mdx +2 -0
  182. package/docs/docs/cmd/spo/site/site-set.mdx +15 -0
  183. package/docs/docs/cmd/tenant/people/people-profilecardproperty-add.mdx +126 -0
  184. package/docs/docs/cmd/tenant/people/people-profilecardproperty-get.mdx +101 -0
  185. package/docs/docs/cmd/tenant/people/people-profilecardproperty-list.mdx +98 -0
  186. package/docs/docs/cmd/tenant/people/people-profilecardproperty-remove.mdx +61 -0
  187. package/docs/docs/cmd/tenant/people/people-profilecardproperty-set.mdx +120 -0
  188. package/npm-shrinkwrap.json +262 -186
  189. package/package.json +7 -8
  190. package/dist/m365/search/commands.js +0 -9
  191. package/docs/docs/cmd/search/externalconnection/externalconnection-remove.mdx +0 -48
  192. package/docs/docs/cmd/search/externalconnection/externalconnection-schema-add.mdx +0 -35
@@ -35,13 +35,8 @@ class AadM365GroupRecycleBinItemClearCommand extends GraphCommand {
35
35
  await clearM365GroupRecycleBinItems();
36
36
  }
37
37
  else {
38
- const response = await Cli.prompt({
39
- type: 'confirm',
40
- name: 'continue',
41
- default: false,
42
- message: `Are you sure you want to clear all M365 Groups from recycle bin ?`
43
- });
44
- if (response.continue) {
38
+ const response = await Cli.promptForConfirmation({ message: `Are you sure you want to clear all M365 Groups from recycle bin?` });
39
+ if (response) {
45
40
  await clearM365GroupRecycleBinItems();
46
41
  }
47
42
  }
@@ -46,13 +46,8 @@ class AadM365GroupRecycleBinItemRemoveCommand extends GraphCommand {
46
46
  await removeGroup();
47
47
  }
48
48
  else {
49
- const result = await Cli.prompt({
50
- type: 'confirm',
51
- name: 'continue',
52
- default: false,
53
- message: `Are you sure you want to remove the group '${args.options.id || args.options.displayName || args.options.mailNickname}'?`
54
- });
55
- if (result.continue) {
49
+ const result = await Cli.promptForConfirmation({ message: `Are you sure you want to remove the group '${args.options.id || args.options.displayName || args.options.mailNickname}'?` });
50
+ if (result) {
56
51
  await removeGroup();
57
52
  }
58
53
  }
@@ -56,13 +56,8 @@ class AadM365GroupRemoveCommand extends GraphCommand {
56
56
  await removeGroup();
57
57
  }
58
58
  else {
59
- const result = await Cli.prompt({
60
- type: 'confirm',
61
- name: 'continue',
62
- default: false,
63
- message: `Are you sure you want to remove the group ${args.options.id}?`
64
- });
65
- if (result.continue) {
59
+ const result = await Cli.promptForConfirmation({ message: `Are you sure you want to remove the group ${args.options.id}?` });
60
+ if (result) {
66
61
  await removeGroup();
67
62
  }
68
63
  }
@@ -92,13 +92,8 @@ class AadM365GroupUserRemoveCommand extends GraphCommand {
92
92
  await removeUser();
93
93
  }
94
94
  else {
95
- const result = await Cli.prompt({
96
- type: 'confirm',
97
- name: 'continue',
98
- default: false,
99
- message: `Are you sure you want to remove ${args.options.userName} from the ${(typeof args.options.groupId !== 'undefined' ? 'group' : 'team')} ${groupId}?`
100
- });
101
- if (result.continue) {
95
+ const result = await Cli.promptForConfirmation({ message: `Are you sure you want to remove ${args.options.userName} from the ${(typeof args.options.groupId !== 'undefined' ? 'group' : 'team')} ${groupId}?` });
96
+ if (result) {
102
97
  await removeUser();
103
98
  }
104
99
  }
@@ -44,13 +44,8 @@ class AadOAuth2GrantRemoveCommand extends GraphCommand {
44
44
  await removeOauth2Grant();
45
45
  }
46
46
  else {
47
- const result = await Cli.prompt({
48
- type: 'confirm',
49
- name: 'continue',
50
- default: false,
51
- message: `Are you sure you want to remove the OAuth2 permissions for ${args.options.grantId}?`
52
- });
53
- if (result.continue) {
47
+ const result = await Cli.promptForConfirmation({ message: `Are you sure you want to remove the OAuth2 permissions for ${args.options.grantId}?` });
48
+ if (result) {
54
49
  await removeOauth2Grant();
55
50
  }
56
51
  }
@@ -63,13 +63,8 @@ class AadSiteClassificationDisableCommand extends GraphCommand {
63
63
  await disableSiteClassification();
64
64
  }
65
65
  else {
66
- const result = await Cli.prompt({
67
- type: 'confirm',
68
- name: 'continue',
69
- default: false,
70
- message: `Are you sure you want to disable site classification?`
71
- });
72
- if (result.continue) {
66
+ const result = await Cli.promptForConfirmation({ message: `Are you sure you want to disable site classification?` });
67
+ if (result) {
73
68
  await disableSiteClassification();
74
69
  }
75
70
  }
@@ -32,13 +32,8 @@ class AadUserLicenseRemoveCommand extends GraphCommand {
32
32
  await this.deleteUserLicenses(args);
33
33
  }
34
34
  else {
35
- const result = await Cli.prompt({
36
- type: 'confirm',
37
- name: 'continue',
38
- default: false,
39
- message: `Are you sure you want to remove the licenses for the user '${args.options.userId || args.options.userName}'?`
40
- });
41
- if (result.continue) {
35
+ const result = await Cli.promptForConfirmation({ message: `Are you sure you want to remove the licenses for the user '${args.options.userId || args.options.userName}'?` });
36
+ if (result) {
42
37
  await this.deleteUserLicenses(args);
43
38
  }
44
39
  }
@@ -63,13 +63,8 @@ class AadUserRecycleBinItemClearCommand extends GraphCommand {
63
63
  await clearRecycleBinUsers();
64
64
  }
65
65
  else {
66
- const result = await Cli.prompt({
67
- type: 'confirm',
68
- name: 'continue',
69
- default: false,
70
- message: 'Are you sure you want to permanently delete all deleted users?'
71
- });
72
- if (result.continue) {
66
+ const result = await Cli.promptForConfirmation({ message: 'Are you sure you want to permanently delete all deleted users?' });
67
+ if (result) {
73
68
  await clearRecycleBinUsers();
74
69
  }
75
70
  }
@@ -43,13 +43,8 @@ class AadUserRecycleBinItemRemoveCommand extends GraphCommand {
43
43
  await clearRecycleBinItem();
44
44
  }
45
45
  else {
46
- const result = await Cli.prompt({
47
- type: 'confirm',
48
- name: 'continue',
49
- default: false,
50
- message: `Are you sure you want to permanently delete the user with id ${args.options.id}?`
51
- });
52
- if (result.continue) {
46
+ const result = await Cli.promptForConfirmation({ message: `Are you sure you want to permanently delete the user with id ${args.options.id}?` });
47
+ if (result) {
53
48
  await clearRecycleBinItem();
54
49
  }
55
50
  }
@@ -32,13 +32,8 @@ class AadUserRemoveCommand extends GraphCommand {
32
32
  await this.deleteUser(args);
33
33
  }
34
34
  else {
35
- const result = await Cli.prompt({
36
- type: 'confirm',
37
- name: 'continue',
38
- default: false,
39
- message: `Are you sure you want to remove user '${args.options.id || args.options.userName}'?`
40
- });
41
- if (result.continue) {
35
+ const result = await Cli.promptForConfirmation({ message: `Are you sure you want to remove user '${args.options.id || args.options.userName}'?` });
36
+ if (result) {
42
37
  await this.deleteUser(args);
43
38
  }
44
39
  }
@@ -1,5 +1,9 @@
1
1
  const prefix = 'aad';
2
2
  export default {
3
+ ADMINISTRATIVEUNIT_ADD: `${prefix} administrativeunit add`,
4
+ ADMINISTRATIVEUNIT_GET: `${prefix} administrativeunit get`,
5
+ ADMINISTRATIVEUNIT_LIST: `${prefix} administrativeunit list`,
6
+ ADMINISTRATIVEUNIT_REMOVE: `${prefix} administrativeunit remove`,
3
7
  APP_ADD: `${prefix} app add`,
4
8
  APP_GET: `${prefix} app get`,
5
9
  APP_LIST: `${prefix} app list`,
@@ -8,6 +8,7 @@ import fs from 'fs';
8
8
  import { Cli } from '../../cli/Cli.js';
9
9
  import Command, { CommandError } from '../../Command.js';
10
10
  import { validation } from '../../utils/validation.js';
11
+ import { formatting } from '../../utils/formatting.js';
11
12
  class AppCommand extends Command {
12
13
  get resource() {
13
14
  return 'https://graph.microsoft.com';
@@ -52,18 +53,8 @@ class AppCommand extends Command {
52
53
  return super.action(logger, args);
53
54
  }
54
55
  if (this.m365rcJson.apps.length > 1) {
55
- const result = await Cli.prompt({
56
- message: `Multiple Azure AD apps found in ${m365rcJsonPath}. Which app would you like to use?`,
57
- type: 'list',
58
- choices: this.m365rcJson.apps.map((app, i) => {
59
- return {
60
- name: `${app.name} (${app.appId})`,
61
- value: i
62
- };
63
- }),
64
- default: 0,
65
- name: 'appIdIndex'
66
- });
56
+ const resultAsKeyValuePair = formatting.convertArrayToHashTable('appIdIndex', this.m365rcJson.apps);
57
+ const result = await Cli.handleMultipleResultsFound(`Multiple Azure AD apps found in ${m365rcJsonPath}.`, resultAsKeyValuePair);
67
58
  this.appId = this.m365rcJson.apps[result.appIdIndex].appId;
68
59
  await super.action(logger, args);
69
60
  }
@@ -12,7 +12,6 @@ import { pid } from '../../utils/pid.js';
12
12
  import AnonymousCommand from '../base/AnonymousCommand.js';
13
13
  import commands from './commands.js';
14
14
  import { interactivePreset, powerShellPreset, scriptingPreset } from './setupPresets.js';
15
- import { prompt } from '../../utils/prompt.js';
16
15
  class SetupCommand extends AnonymousCommand {
17
16
  get name() {
18
17
  return commands.SETUP;
@@ -23,8 +22,6 @@ class SetupCommand extends AnonymousCommand {
23
22
  constructor() {
24
23
  super();
25
24
  _SetupCommand_instances.add(this);
26
- // used for injecting answers from tests
27
- this.answers = {};
28
25
  __classPrivateFieldGet(this, _SetupCommand_instances, "m", _SetupCommand_initTelemetry).call(this);
29
26
  __classPrivateFieldGet(this, _SetupCommand_instances, "m", _SetupCommand_initOptions).call(this);
30
27
  __classPrivateFieldGet(this, _SetupCommand_instances, "m", _SetupCommand_initValidators).call(this);
@@ -51,43 +48,40 @@ class SetupCommand extends AnonymousCommand {
51
48
  await logger.logToStderr(`This command will guide you through the process of configuring the CLI for your needs.`);
52
49
  await logger.logToStderr(`Please, answer the following questions and we'll define a set of settings to best match how you intend to use the CLI.`);
53
50
  await logger.logToStderr('');
54
- const preferences = await prompt.forInput([
55
- {
56
- type: 'list',
57
- name: 'usageMode',
58
- message: 'How do you plan to use the CLI?',
59
- choices: [
60
- 'Interactively',
61
- 'Scripting'
62
- ]
63
- },
64
- {
65
- type: 'confirm',
66
- name: 'usedInPowerShell',
51
+ const preferences = {};
52
+ const usageModeConfig = {
53
+ message: 'How do you plan to use the CLI?',
54
+ choices: [
55
+ { name: 'Interactively', value: 'Interactively' },
56
+ { name: 'Scripting', value: 'Scripting' }
57
+ ]
58
+ };
59
+ preferences.usageMode = await Cli.promptForSelection(usageModeConfig);
60
+ if (preferences.usageMode === 'Scripting') {
61
+ const usedInPowerShellConfig = {
67
62
  message: 'Are you going to use the CLI in PowerShell?',
68
- when: (answers) => answers.usageMode === 'Scripting',
69
63
  default: pid.isPowerShell()
70
- },
71
- {
72
- type: 'list',
73
- name: 'experience',
74
- message: 'How experienced are you in using the CLI?',
75
- choices: [
76
- 'Beginner',
77
- 'Proficient'
78
- ]
79
- },
80
- {
81
- type: 'confirm',
82
- name: 'summary',
83
- // invoked by inquirer
84
- /* c8 ignore next 4 */
85
- message: (answers) => {
86
- settings = this.getSettings(answers);
87
- return this.getSummaryMessage(settings);
88
- }
64
+ };
65
+ preferences.usedInPowerShell = await Cli.promptForConfirmation(usedInPowerShellConfig);
66
+ }
67
+ const experienceConfig = {
68
+ message: 'How experienced are you in using the CLI?',
69
+ choices: [
70
+ { name: 'Beginner', value: 'Beginner' },
71
+ { name: 'Proficient', value: 'Proficient' }
72
+ ]
73
+ };
74
+ preferences.experience = await Cli.promptForSelection(experienceConfig);
75
+ const summaryConfig = {
76
+ // invoked by inquirer
77
+ /* c8 ignore next 6 */
78
+ message: async () => {
79
+ settings = this.getSettings(preferences);
80
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
81
+ return this.getSummaryMessage(settings);
89
82
  }
90
- ], this.answers);
83
+ };
84
+ preferences.summary = await Cli.promptForConfirmation(summaryConfig);
91
85
  if (preferences.summary) {
92
86
  // used only for testing. Normally, we'd get the settings from the answers
93
87
  /* c8 ignore next 3 */
@@ -27,13 +27,8 @@ class ContextRemoveCommand extends AnonymousCommand {
27
27
  await this.removeContext();
28
28
  }
29
29
  else {
30
- const result = await Cli.prompt({
31
- type: 'confirm',
32
- name: 'continue',
33
- default: false,
34
- message: `Are you sure you want to remove the context?`
35
- });
36
- if (result.continue) {
30
+ const result = await Cli.promptForConfirmation({ message: `Are you sure you want to remove the context?` });
31
+ if (result) {
37
32
  await this.removeContext();
38
33
  }
39
34
  }
@@ -30,13 +30,8 @@ class ContextOptionRemoveCommand extends ContextCommand {
30
30
  await this.removeContextOption(args.options.name, logger);
31
31
  }
32
32
  else {
33
- const result = await Cli.prompt({
34
- type: 'confirm',
35
- name: 'continue',
36
- default: false,
37
- message: `Are you sure you want to remove the context option ${args.options.name}?`
38
- });
39
- if (result.continue) {
33
+ const result = await Cli.promptForConfirmation({ message: `Are you sure you want to remove the context option ${args.options.name}?` });
34
+ if (result) {
40
35
  await this.removeContextOption(args.options.name, logger);
41
36
  }
42
37
  }
@@ -3,23 +3,26 @@ 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 _SearchExternalConnectionAddCommand_instances, _SearchExternalConnectionAddCommand_initTelemetry, _SearchExternalConnectionAddCommand_initOptions, _SearchExternalConnectionAddCommand_initValidators;
6
+ var _ExternalConnectionAddCommand_instances, _ExternalConnectionAddCommand_initTelemetry, _ExternalConnectionAddCommand_initOptions, _ExternalConnectionAddCommand_initValidators;
7
7
  import request from '../../../../request.js';
8
8
  import GraphCommand from '../../../base/GraphCommand.js';
9
9
  import commands from '../../commands.js';
10
- class SearchExternalConnectionAddCommand extends GraphCommand {
10
+ class ExternalConnectionAddCommand extends GraphCommand {
11
11
  get name() {
12
- return commands.EXTERNALCONNECTION_ADD;
12
+ return commands.CONNECTION_ADD;
13
13
  }
14
14
  get description() {
15
- return 'Adds a new External Connection for Microsoft Search';
15
+ return 'Adds a new external connection';
16
+ }
17
+ alias() {
18
+ return [commands.EXTERNALCONNECTION_ADD];
16
19
  }
17
20
  constructor() {
18
21
  super();
19
- _SearchExternalConnectionAddCommand_instances.add(this);
20
- __classPrivateFieldGet(this, _SearchExternalConnectionAddCommand_instances, "m", _SearchExternalConnectionAddCommand_initTelemetry).call(this);
21
- __classPrivateFieldGet(this, _SearchExternalConnectionAddCommand_instances, "m", _SearchExternalConnectionAddCommand_initOptions).call(this);
22
- __classPrivateFieldGet(this, _SearchExternalConnectionAddCommand_instances, "m", _SearchExternalConnectionAddCommand_initValidators).call(this);
22
+ _ExternalConnectionAddCommand_instances.add(this);
23
+ __classPrivateFieldGet(this, _ExternalConnectionAddCommand_instances, "m", _ExternalConnectionAddCommand_initTelemetry).call(this);
24
+ __classPrivateFieldGet(this, _ExternalConnectionAddCommand_instances, "m", _ExternalConnectionAddCommand_initOptions).call(this);
25
+ __classPrivateFieldGet(this, _ExternalConnectionAddCommand_instances, "m", _ExternalConnectionAddCommand_initValidators).call(this);
23
26
  }
24
27
  async commandAction(logger, args) {
25
28
  let appIds = [];
@@ -51,13 +54,13 @@ class SearchExternalConnectionAddCommand extends GraphCommand {
51
54
  }
52
55
  }
53
56
  }
54
- _SearchExternalConnectionAddCommand_instances = new WeakSet(), _SearchExternalConnectionAddCommand_initTelemetry = function _SearchExternalConnectionAddCommand_initTelemetry() {
57
+ _ExternalConnectionAddCommand_instances = new WeakSet(), _ExternalConnectionAddCommand_initTelemetry = function _ExternalConnectionAddCommand_initTelemetry() {
55
58
  this.telemetry.push((args) => {
56
59
  Object.assign(this.telemetryProperties, {
57
60
  authorizedAppIds: typeof args.options.authorizedAppIds !== 'undefined'
58
61
  });
59
62
  });
60
- }, _SearchExternalConnectionAddCommand_initOptions = function _SearchExternalConnectionAddCommand_initOptions() {
63
+ }, _ExternalConnectionAddCommand_initOptions = function _ExternalConnectionAddCommand_initOptions() {
61
64
  this.options.unshift({
62
65
  option: '-i, --id <id>'
63
66
  }, {
@@ -67,7 +70,7 @@ _SearchExternalConnectionAddCommand_instances = new WeakSet(), _SearchExternalCo
67
70
  }, {
68
71
  option: '--authorizedAppIds [authorizedAppIds]'
69
72
  });
70
- }, _SearchExternalConnectionAddCommand_initValidators = function _SearchExternalConnectionAddCommand_initValidators() {
73
+ }, _ExternalConnectionAddCommand_initValidators = function _ExternalConnectionAddCommand_initValidators() {
71
74
  this.validators.push(async (args) => {
72
75
  const id = args.options.id;
73
76
  if (id.length < 3 || id.length > 32) {
@@ -104,5 +107,5 @@ _SearchExternalConnectionAddCommand_instances = new WeakSet(), _SearchExternalCo
104
107
  return true;
105
108
  });
106
109
  };
107
- export default new SearchExternalConnectionAddCommand();
108
- //# sourceMappingURL=externalconnection-add.js.map
110
+ export default new ExternalConnectionAddCommand();
111
+ //# sourceMappingURL=connection-add.js.map
@@ -3,24 +3,27 @@ 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 _SearchExternalConnectionGetCommand_instances, _SearchExternalConnectionGetCommand_initTelemetry, _SearchExternalConnectionGetCommand_initOptions, _SearchExternalConnectionGetCommand_initOptionSets;
6
+ var _ExternalConnectionGetCommand_instances, _ExternalConnectionGetCommand_initTelemetry, _ExternalConnectionGetCommand_initOptions, _ExternalConnectionGetCommand_initOptionSets;
7
7
  import request from '../../../../request.js';
8
8
  import { formatting } from '../../../../utils/formatting.js';
9
9
  import GraphCommand from '../../../base/GraphCommand.js';
10
10
  import commands from '../../commands.js';
11
- class SearchExternalConnectionGetCommand extends GraphCommand {
11
+ class ExternalConnectionGetCommand extends GraphCommand {
12
12
  get name() {
13
- return commands.EXTERNALCONNECTION_GET;
13
+ return commands.CONNECTION_GET;
14
14
  }
15
15
  get description() {
16
- return 'Get a specific external connection for use in Microsoft Search';
16
+ return 'Get a specific external connection';
17
+ }
18
+ alias() {
19
+ return [commands.EXTERNALCONNECTION_GET];
17
20
  }
18
21
  constructor() {
19
22
  super();
20
- _SearchExternalConnectionGetCommand_instances.add(this);
21
- __classPrivateFieldGet(this, _SearchExternalConnectionGetCommand_instances, "m", _SearchExternalConnectionGetCommand_initTelemetry).call(this);
22
- __classPrivateFieldGet(this, _SearchExternalConnectionGetCommand_instances, "m", _SearchExternalConnectionGetCommand_initOptions).call(this);
23
- __classPrivateFieldGet(this, _SearchExternalConnectionGetCommand_instances, "m", _SearchExternalConnectionGetCommand_initOptionSets).call(this);
23
+ _ExternalConnectionGetCommand_instances.add(this);
24
+ __classPrivateFieldGet(this, _ExternalConnectionGetCommand_instances, "m", _ExternalConnectionGetCommand_initTelemetry).call(this);
25
+ __classPrivateFieldGet(this, _ExternalConnectionGetCommand_instances, "m", _ExternalConnectionGetCommand_initOptions).call(this);
26
+ __classPrivateFieldGet(this, _ExternalConnectionGetCommand_instances, "m", _ExternalConnectionGetCommand_initOptionSets).call(this);
24
27
  }
25
28
  async commandAction(logger, args) {
26
29
  let url = `${this.resource}/v1.0/external/connections`;
@@ -52,21 +55,21 @@ class SearchExternalConnectionGetCommand extends GraphCommand {
52
55
  }
53
56
  }
54
57
  }
55
- _SearchExternalConnectionGetCommand_instances = new WeakSet(), _SearchExternalConnectionGetCommand_initTelemetry = function _SearchExternalConnectionGetCommand_initTelemetry() {
58
+ _ExternalConnectionGetCommand_instances = new WeakSet(), _ExternalConnectionGetCommand_initTelemetry = function _ExternalConnectionGetCommand_initTelemetry() {
56
59
  this.telemetry.push((args) => {
57
60
  Object.assign(this.telemetryProperties, {
58
61
  id: typeof args.options.id !== 'undefined',
59
62
  name: typeof args.options.name !== 'undefined'
60
63
  });
61
64
  });
62
- }, _SearchExternalConnectionGetCommand_initOptions = function _SearchExternalConnectionGetCommand_initOptions() {
65
+ }, _ExternalConnectionGetCommand_initOptions = function _ExternalConnectionGetCommand_initOptions() {
63
66
  this.options.unshift({
64
67
  option: '-i, --id [id]'
65
68
  }, {
66
69
  option: '-n, --name [name]'
67
70
  });
68
- }, _SearchExternalConnectionGetCommand_initOptionSets = function _SearchExternalConnectionGetCommand_initOptionSets() {
71
+ }, _ExternalConnectionGetCommand_initOptionSets = function _ExternalConnectionGetCommand_initOptionSets() {
69
72
  this.optionSets.push({ options: ['id', 'name'] });
70
73
  };
71
- export default new SearchExternalConnectionGetCommand();
72
- //# sourceMappingURL=externalconnection-get.js.map
74
+ export default new ExternalConnectionGetCommand();
75
+ //# sourceMappingURL=connection-get.js.map
@@ -1,13 +1,16 @@
1
1
  import { odata } from '../../../../utils/odata.js';
2
2
  import GraphCommand from '../../../base/GraphCommand.js';
3
3
  import commands from '../../commands.js';
4
- class SearchExternalConnectionListCommand extends GraphCommand {
4
+ class ExternalConnectionListCommand extends GraphCommand {
5
5
  get name() {
6
- return commands.EXTERNALCONNECTION_LIST;
6
+ return commands.CONNECTION_LIST;
7
7
  }
8
8
  get description() {
9
9
  return 'Lists external connections defined in the Microsoft Search';
10
10
  }
11
+ alias() {
12
+ return [commands.EXTERNALCONNECTION_LIST];
13
+ }
11
14
  defaultProperties() {
12
15
  return ['id', 'name', 'state'];
13
16
  }
@@ -21,5 +24,5 @@ class SearchExternalConnectionListCommand extends GraphCommand {
21
24
  }
22
25
  }
23
26
  }
24
- export default new SearchExternalConnectionListCommand();
25
- //# sourceMappingURL=externalconnection-list.js.map
27
+ export default new ExternalConnectionListCommand();
28
+ //# sourceMappingURL=connection-list.js.map
@@ -3,25 +3,28 @@ 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 _SearchExternalConnectionRemoveCommand_instances, _SearchExternalConnectionRemoveCommand_initTelemetry, _SearchExternalConnectionRemoveCommand_initOptions, _SearchExternalConnectionRemoveCommand_initOptionSets;
6
+ var _ExternalConnectionRemoveCommand_instances, _ExternalConnectionRemoveCommand_initTelemetry, _ExternalConnectionRemoveCommand_initOptions, _ExternalConnectionRemoveCommand_initOptionSets;
7
7
  import { Cli } from '../../../../cli/Cli.js';
8
8
  import request from '../../../../request.js';
9
9
  import { formatting } from '../../../../utils/formatting.js';
10
10
  import GraphCommand from '../../../base/GraphCommand.js';
11
11
  import commands from '../../commands.js';
12
- class SearchExternalConnectionRemoveCommand extends GraphCommand {
12
+ class ExternalConnectionRemoveCommand extends GraphCommand {
13
13
  get name() {
14
- return commands.EXTERNALCONNECTION_REMOVE;
14
+ return commands.CONNECTION_REMOVE;
15
15
  }
16
16
  get description() {
17
- return 'Removes a specific External Connection from Microsoft Search';
17
+ return 'Removes a specific external connection';
18
+ }
19
+ alias() {
20
+ return [commands.EXTERNALCONNECTION_REMOVE];
18
21
  }
19
22
  constructor() {
20
23
  super();
21
- _SearchExternalConnectionRemoveCommand_instances.add(this);
22
- __classPrivateFieldGet(this, _SearchExternalConnectionRemoveCommand_instances, "m", _SearchExternalConnectionRemoveCommand_initTelemetry).call(this);
23
- __classPrivateFieldGet(this, _SearchExternalConnectionRemoveCommand_instances, "m", _SearchExternalConnectionRemoveCommand_initOptions).call(this);
24
- __classPrivateFieldGet(this, _SearchExternalConnectionRemoveCommand_instances, "m", _SearchExternalConnectionRemoveCommand_initOptionSets).call(this);
24
+ _ExternalConnectionRemoveCommand_instances.add(this);
25
+ __classPrivateFieldGet(this, _ExternalConnectionRemoveCommand_instances, "m", _ExternalConnectionRemoveCommand_initTelemetry).call(this);
26
+ __classPrivateFieldGet(this, _ExternalConnectionRemoveCommand_instances, "m", _ExternalConnectionRemoveCommand_initOptions).call(this);
27
+ __classPrivateFieldGet(this, _ExternalConnectionRemoveCommand_instances, "m", _ExternalConnectionRemoveCommand_initOptionSets).call(this);
25
28
  }
26
29
  async getExternalConnectionId(args) {
27
30
  if (args.options.id) {
@@ -39,7 +42,7 @@ class SearchExternalConnectionRemoveCommand extends GraphCommand {
39
42
  return res.value[0].id;
40
43
  }
41
44
  if (res.value.length === 0) {
42
- throw `The specified connection does not exist in Microsoft Search`;
45
+ throw `The specified connection does not exist`;
43
46
  }
44
47
  const resultAsKeyValuePair = formatting.convertArrayToHashTable('id', res.value);
45
48
  const result = await Cli.handleMultipleResultsFound(`Multiple external connections with name ${args.options.name} found.`, resultAsKeyValuePair);
@@ -50,13 +53,8 @@ class SearchExternalConnectionRemoveCommand extends GraphCommand {
50
53
  await this.removeExternalConnection(args);
51
54
  }
52
55
  else {
53
- const result = await Cli.prompt({
54
- type: 'confirm',
55
- name: 'continue',
56
- default: false,
57
- message: `Are you sure you want to remove the external connection '${args.options.id || args.options.name}'?`
58
- });
59
- if (result.continue) {
56
+ const result = await Cli.promptForConfirmation({ message: `Are you sure you want to remove the external connection '${args.options.id || args.options.name}'?` });
57
+ if (result) {
60
58
  await this.removeExternalConnection(args);
61
59
  }
62
60
  }
@@ -78,7 +76,7 @@ class SearchExternalConnectionRemoveCommand extends GraphCommand {
78
76
  }
79
77
  }
80
78
  }
81
- _SearchExternalConnectionRemoveCommand_instances = new WeakSet(), _SearchExternalConnectionRemoveCommand_initTelemetry = function _SearchExternalConnectionRemoveCommand_initTelemetry() {
79
+ _ExternalConnectionRemoveCommand_instances = new WeakSet(), _ExternalConnectionRemoveCommand_initTelemetry = function _ExternalConnectionRemoveCommand_initTelemetry() {
82
80
  this.telemetry.push((args) => {
83
81
  Object.assign(this.telemetryProperties, {
84
82
  id: typeof args.options.id !== 'undefined',
@@ -86,10 +84,10 @@ _SearchExternalConnectionRemoveCommand_instances = new WeakSet(), _SearchExterna
86
84
  force: (!(!args.options.force)).toString()
87
85
  });
88
86
  });
89
- }, _SearchExternalConnectionRemoveCommand_initOptions = function _SearchExternalConnectionRemoveCommand_initOptions() {
87
+ }, _ExternalConnectionRemoveCommand_initOptions = function _ExternalConnectionRemoveCommand_initOptions() {
90
88
  this.options.unshift({ option: '--id [id]' }, { option: '--name [name]' }, { option: '-f, --force' });
91
- }, _SearchExternalConnectionRemoveCommand_initOptionSets = function _SearchExternalConnectionRemoveCommand_initOptionSets() {
89
+ }, _ExternalConnectionRemoveCommand_initOptionSets = function _ExternalConnectionRemoveCommand_initOptionSets() {
92
90
  this.optionSets.push({ options: ['id', 'name'] });
93
91
  };
94
- export default new SearchExternalConnectionRemoveCommand();
95
- //# sourceMappingURL=externalconnection-remove.js.map
92
+ export default new ExternalConnectionRemoveCommand();
93
+ //# sourceMappingURL=connection-remove.js.map