@pnp/cli-microsoft365 12.0.0-beta.c9bd7f3 → 12.0.0-beta.d58fb77

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 (179) hide show
  1. package/.devproxy/generate-openapi-spec.json +1 -1
  2. package/allCommands.json +1 -1
  3. package/allCommandsFull.json +1 -1
  4. package/dist/Auth.js +15 -1
  5. package/dist/googleAnalytics.js +96 -0
  6. package/dist/m365/cli/commands/cli-consent.js +9 -2
  7. package/dist/m365/entra/commands/m365group/m365group-remove.js +2 -8
  8. package/dist/m365/spfx/commands/SpfxCompatibilityMatrix.js +15 -0
  9. package/dist/m365/spfx/commands/project/project-doctor/doctor-1.24.0.js +19 -0
  10. package/dist/m365/spfx/commands/project/project-doctor.js +2 -1
  11. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN012021_TSC_excludeDirectories.js +43 -0
  12. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN027002_OVERRIDES_qs.js +33 -0
  13. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN027003_OVERRIDES_uuid.js +33 -0
  14. package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.24.0.js +77 -0
  15. package/dist/m365/spfx/commands/project/project-upgrade.js +2 -1
  16. package/dist/m365/spo/commands/app/app-add.js +35 -56
  17. package/dist/m365/spo/commands/app/app-deploy.js +41 -59
  18. package/dist/m365/spo/commands/app/app-get.js +40 -56
  19. package/dist/m365/spo/commands/app/app-install.js +20 -41
  20. package/dist/m365/spo/commands/app/app-instance-list.js +12 -24
  21. package/dist/m365/spo/commands/app/app-list.js +26 -44
  22. package/dist/m365/spo/commands/app/app-remove.js +32 -52
  23. package/dist/m365/spo/commands/app/app-retract.js +32 -51
  24. package/dist/m365/spo/commands/app/app-teamspackage-download.js +35 -54
  25. package/dist/m365/spo/commands/app/app-uninstall.js +21 -44
  26. package/dist/m365/spo/commands/app/app-upgrade.js +20 -41
  27. package/dist/m365/spo/commands/commandset/commandset-add.js +17 -59
  28. package/dist/m365/spo/commands/commandset/commandset-get.js +24 -62
  29. package/dist/m365/spo/commands/commandset/commandset-list.js +11 -34
  30. package/dist/m365/spo/commands/commandset/commandset-remove.js +21 -54
  31. package/dist/m365/spo/commands/commandset/commandset-set.js +30 -83
  32. package/dist/m365/spo/commands/feature/feature-disable.js +20 -50
  33. package/dist/m365/spo/commands/feature/feature-enable.js +22 -50
  34. package/dist/m365/spo/commands/feature/feature-list.js +11 -36
  35. package/dist/m365/spo/commands/field/field-add.js +33 -62
  36. package/dist/m365/spo/commands/field/field-get.js +30 -57
  37. package/dist/m365/spo/commands/field/field-list.js +21 -46
  38. package/dist/m365/spo/commands/field/field-remove.js +32 -63
  39. package/dist/m365/spo/commands/field/field-set.js +34 -66
  40. package/dist/m365/spo/commands/file/file-get.js +4 -3
  41. package/dist/m365/spo/commands/folder/folder-unarchive.js +90 -0
  42. package/dist/m365/spo/commands/hubsite/hubsite-connect.js +38 -63
  43. package/dist/m365/spo/commands/hubsite/hubsite-data-get.js +11 -27
  44. package/dist/m365/spo/commands/hubsite/hubsite-disconnect.js +25 -47
  45. package/dist/m365/spo/commands/hubsite/hubsite-get.js +25 -37
  46. package/dist/m365/spo/commands/hubsite/hubsite-list.js +12 -24
  47. package/dist/m365/spo/commands/hubsite/hubsite-register.js +10 -18
  48. package/dist/m365/spo/commands/hubsite/hubsite-rights-grant.js +14 -32
  49. package/dist/m365/spo/commands/hubsite/hubsite-rights-revoke.js +12 -29
  50. package/dist/m365/spo/commands/hubsite/hubsite-set.js +19 -46
  51. package/dist/m365/spo/commands/hubsite/hubsite-unregister.js +11 -27
  52. package/dist/m365/spo/commands/listitem/listitem-get.js +1 -12
  53. package/dist/m365/spo/commands/navigation/navigation-node-add.js +74 -120
  54. package/dist/m365/spo/commands/navigation/navigation-node-get.js +4 -13
  55. package/dist/m365/spo/commands/navigation/navigation-node-list.js +6 -4
  56. package/dist/m365/spo/commands/navigation/navigation-node-set.js +53 -114
  57. package/dist/m365/spo/commands/page/page-unpublish.js +53 -0
  58. package/dist/m365/spo/commands/site/site-remove.js +3 -9
  59. package/dist/m365/spo/commands/sitescript/sitescript-add.js +22 -37
  60. package/dist/m365/spo/commands/sitescript/sitescript-get.js +9 -26
  61. package/dist/m365/spo/commands/sitescript/sitescript-list.js +5 -0
  62. package/dist/m365/spo/commands/sitescript/sitescript-remove.js +9 -33
  63. package/dist/m365/spo/commands/sitescript/sitescript-set.js +29 -56
  64. package/dist/m365/spo/commands/tenant/tenant-appcatalog-add.js +1 -1
  65. package/dist/m365/spo/commands/web/web-rule-get.js +47 -0
  66. package/dist/m365/spo/commands/web/web-rule-list.js +113 -0
  67. package/dist/m365/spo/commands/web/web-rule-remove.js +54 -0
  68. package/dist/m365/spo/commands.js +6 -1
  69. package/dist/m365/spp/commands/contentcenter/contentcenter-list.js +5 -0
  70. package/dist/m365/spp/commands/model/model-get.js +25 -45
  71. package/dist/m365/spp/commands/model/model-list.js +12 -23
  72. package/dist/m365/spp/commands/model/model-remove.js +25 -45
  73. package/dist/m365/teams/commands/channel/channel-add.js +46 -57
  74. package/dist/m365/teams/commands/channel/channel-get.js +41 -48
  75. package/dist/m365/teams/commands/channel/channel-list.js +28 -42
  76. package/dist/m365/teams/commands/channel/channel-member-add.js +53 -54
  77. package/dist/m365/teams/commands/channel/channel-member-list.js +47 -55
  78. package/dist/m365/teams/commands/channel/channel-member-remove.js +62 -62
  79. package/dist/m365/teams/commands/channel/channel-member-set.js +61 -65
  80. package/dist/m365/teams/commands/channel/channel-remove.js +47 -49
  81. package/dist/m365/teams/commands/channel/channel-set.js +47 -54
  82. package/dist/m365/teams/commands/chat/chat-get.js +30 -45
  83. package/dist/m365/teams/commands/chat/chat-list.js +22 -42
  84. package/dist/m365/teams/commands/chat/chat-member-add.js +43 -64
  85. package/dist/m365/teams/commands/chat/chat-member-list.js +10 -23
  86. package/dist/m365/teams/commands/chat/chat-member-remove.js +28 -50
  87. package/dist/m365/teams/commands/chat/chat-message-send.js +32 -55
  88. package/dist/m365/teams/commands/meeting/meeting-add.js +57 -68
  89. package/dist/m365/teams/commands/meeting/meeting-attendancereport-get.js +33 -58
  90. package/dist/m365/teams/commands/meeting/meeting-attendancereport-list.js +14 -38
  91. package/dist/m365/teams/commands/meeting/meeting-get.js +14 -38
  92. package/dist/m365/teams/commands/meeting/meeting-list.js +34 -59
  93. package/dist/m365/teams/commands/meeting/meeting-transcript-get.js +34 -58
  94. package/dist/m365/teams/commands/meeting/meeting-transcript-list.js +29 -50
  95. package/dist/m365/teams/commands/message/message-get.js +19 -30
  96. package/dist/m365/teams/commands/message/message-list.js +26 -43
  97. package/dist/m365/teams/commands/message/message-remove.js +43 -58
  98. package/dist/m365/teams/commands/message/message-reply-list.js +19 -30
  99. package/dist/m365/teams/commands/message/message-restore.js +40 -50
  100. package/dist/m365/teams/commands/message/message-send.js +19 -30
  101. package/dist/m365/util/commands/accesstoken/accesstoken-get.js +10 -28
  102. package/dist/telemetry.js +7 -11
  103. package/dist/utils/spo.js +40 -3
  104. package/dist/utils/urlUtil.js +2 -2
  105. package/docs/docs/cmd/entra/m365group/m365group-remove.mdx +0 -3
  106. package/docs/docs/cmd/login.mdx +15 -2
  107. package/docs/docs/cmd/spfx/project/project-upgrade.mdx +1 -1
  108. package/docs/docs/cmd/spo/file/file-archive.mdx +1 -1
  109. package/docs/docs/cmd/spo/file/file-checkin.mdx +2 -2
  110. package/docs/docs/cmd/spo/file/file-checkout-undo.mdx +1 -1
  111. package/docs/docs/cmd/spo/file/file-checkout.mdx +2 -2
  112. package/docs/docs/cmd/spo/file/file-copy.mdx +2 -2
  113. package/docs/docs/cmd/spo/file/file-get.mdx +6 -6
  114. package/docs/docs/cmd/spo/file/file-retentionlabel-ensure.mdx +1 -1
  115. package/docs/docs/cmd/spo/file/file-retentionlabel-remove.mdx +1 -1
  116. package/docs/docs/cmd/spo/file/file-roleassignment-add.mdx +1 -1
  117. package/docs/docs/cmd/spo/file/file-roleassignment-remove.mdx +1 -1
  118. package/docs/docs/cmd/spo/file/file-roleinheritance-break.mdx +3 -3
  119. package/docs/docs/cmd/spo/file/file-roleinheritance-reset.mdx +2 -2
  120. package/docs/docs/cmd/spo/file/file-sharinginfo-get.mdx +2 -2
  121. package/docs/docs/cmd/spo/file/file-sharinglink-add.mdx +22 -1
  122. package/docs/docs/cmd/spo/file/file-sharinglink-clear.mdx +24 -1
  123. package/docs/docs/cmd/spo/file/file-sharinglink-get.mdx +22 -1
  124. package/docs/docs/cmd/spo/file/file-sharinglink-list.mdx +22 -1
  125. package/docs/docs/cmd/spo/file/file-sharinglink-remove.mdx +24 -1
  126. package/docs/docs/cmd/spo/file/file-sharinglink-set.mdx +22 -1
  127. package/docs/docs/cmd/spo/file/file-unarchive.mdx +1 -1
  128. package/docs/docs/cmd/spo/file/file-version-clear.mdx +1 -1
  129. package/docs/docs/cmd/spo/file/file-version-get.mdx +1 -1
  130. package/docs/docs/cmd/spo/file/file-version-keep.mdx +1 -1
  131. package/docs/docs/cmd/spo/file/file-version-list.mdx +1 -1
  132. package/docs/docs/cmd/spo/file/file-version-remove.mdx +1 -1
  133. package/docs/docs/cmd/spo/file/file-version-restore.mdx +1 -1
  134. package/docs/docs/cmd/spo/folder/folder-archive.mdx +1 -1
  135. package/docs/docs/cmd/spo/folder/folder-copy.mdx +1 -1
  136. package/docs/docs/cmd/spo/folder/folder-get.mdx +2 -2
  137. package/docs/docs/cmd/spo/folder/folder-retentionlabel-ensure.mdx +1 -1
  138. package/docs/docs/cmd/spo/folder/folder-retentionlabel-remove.mdx +1 -1
  139. package/docs/docs/cmd/spo/folder/folder-sharinglink-add.mdx +22 -1
  140. package/docs/docs/cmd/spo/folder/folder-sharinglink-clear.mdx +23 -0
  141. package/docs/docs/cmd/spo/folder/folder-sharinglink-get.mdx +21 -0
  142. package/docs/docs/cmd/spo/folder/folder-sharinglink-list.mdx +22 -1
  143. package/docs/docs/cmd/spo/folder/folder-sharinglink-remove.mdx +24 -1
  144. package/docs/docs/cmd/spo/folder/folder-sharinglink-set.mdx +21 -0
  145. package/docs/docs/cmd/spo/folder/folder-unarchive.mdx +76 -0
  146. package/docs/docs/cmd/spo/listitem/listitem-get.mdx +0 -6
  147. package/docs/docs/cmd/spo/navigation/navigation-node-add.mdx +45 -30
  148. package/docs/docs/cmd/spo/navigation/navigation-node-get.mdx +64 -42
  149. package/docs/docs/cmd/spo/navigation/navigation-node-list.mdx +37 -27
  150. package/docs/docs/cmd/spo/navigation/navigation-node-set.mdx +10 -8
  151. package/docs/docs/cmd/spo/page/page-unpublish.mdx +63 -0
  152. package/docs/docs/cmd/spo/site/site-remove.mdx +0 -3
  153. package/docs/docs/cmd/spo/web/web-rule-get.mdx +108 -0
  154. package/docs/docs/cmd/spo/web/web-rule-list.mdx +189 -0
  155. package/docs/docs/cmd/spo/web/web-rule-remove.mdx +65 -0
  156. package/docs/docs/cmd/spp/model/model-get.mdx +1 -1
  157. package/docs/docs/cmd/spp/model/model-remove.mdx +1 -1
  158. package/docs/docs/cmd/teams/tab/tab-add.mdx +19 -0
  159. package/docs/docs/cmd/teams/tab/tab-get.mdx +19 -0
  160. package/docs/docs/cmd/teams/tab/tab-list.mdx +19 -0
  161. package/docs/docs/cmd/teams/tab/tab-remove.mdx +21 -0
  162. package/docs/docs/cmd/tenant/people/people-profilecardproperty-add.mdx +19 -0
  163. package/docs/docs/cmd/tenant/people/people-profilecardproperty-get.mdx +19 -0
  164. package/docs/docs/cmd/tenant/people/people-profilecardproperty-list.mdx +19 -0
  165. package/docs/docs/cmd/tenant/people/people-profilecardproperty-remove.mdx +19 -0
  166. package/docs/docs/cmd/tenant/people/people-profilecardproperty-set.mdx +19 -0
  167. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-health-get.mdx +19 -0
  168. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-health-list.mdx +19 -0
  169. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-healthissue-get.mdx +19 -0
  170. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-healthissue-list.mdx +19 -0
  171. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-message-get.mdx +19 -0
  172. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-message-list.mdx +19 -0
  173. package/docs/docs/cmd/viva/engage/engage-message-add.mdx +17 -0
  174. package/docs/docs/cmd/viva/engage/engage-message-get.mdx +17 -0
  175. package/docs/docs/cmd/viva/engage/engage-message-list.mdx +17 -0
  176. package/docs/docs/cmd/viva/engage/engage-message-remove.mdx +19 -0
  177. package/npm-shrinkwrap.json +702 -3230
  178. package/package.json +21 -38
  179. package/dist/appInsights.js +0 -43
@@ -0,0 +1,47 @@
1
+ import { z } from 'zod';
2
+ import { globalOptionsZod } from '../../../../Command.js';
3
+ import request from '../../../../request.js';
4
+ import { formatting } from '../../../../utils/formatting.js';
5
+ import { validation } from '../../../../utils/validation.js';
6
+ import SpoCommand from '../../../base/SpoCommand.js';
7
+ import commands from '../../commands.js';
8
+ const options = z.strictObject({
9
+ ...globalOptionsZod.shape,
10
+ webUrl: z.string().alias('u')
11
+ .refine(url => validation.isValidSharePointUrl(url) === true, {
12
+ error: e => `'${e.input}' is not a valid SharePoint URL.`
13
+ }),
14
+ id: z.uuid()
15
+ });
16
+ class SpoWebRuleGetCommand extends SpoCommand {
17
+ get name() {
18
+ return commands.WEB_RULE_GET;
19
+ }
20
+ get description() {
21
+ return 'Retrieves details of a specific rule from a SharePoint site list';
22
+ }
23
+ get schema() {
24
+ return options;
25
+ }
26
+ async commandAction(logger, args) {
27
+ try {
28
+ if (this.verbose) {
29
+ await logger.logToStderr(`Retrieving rule with id '${args.options.id}' from site '${args.options.webUrl}'...`);
30
+ }
31
+ const requestOptions = {
32
+ url: `${args.options.webUrl}/_api/web/alerts/GetById('${formatting.encodeQueryParameter(args.options.id)}')?$expand=List,User,List/Rootfolder&$select=*,List/Id,List/Title,List/Rootfolder/ServerRelativeUrl`,
33
+ headers: {
34
+ accept: 'application/json;odata=nometadata'
35
+ },
36
+ responseType: 'json'
37
+ };
38
+ const res = await request.get(requestOptions);
39
+ await logger.log(res);
40
+ }
41
+ catch (err) {
42
+ this.handleRejectedODataJsonPromise(err);
43
+ }
44
+ }
45
+ }
46
+ export default new SpoWebRuleGetCommand();
47
+ //# sourceMappingURL=web-rule-get.js.map
@@ -0,0 +1,113 @@
1
+ import { z } from 'zod';
2
+ import { cli } from '../../../../cli/cli.js';
3
+ import { globalOptionsZod } from '../../../../Command.js';
4
+ import { entraUser } from '../../../../utils/entraUser.js';
5
+ import { formatting } from '../../../../utils/formatting.js';
6
+ import { odata } from '../../../../utils/odata.js';
7
+ import { spo } from '../../../../utils/spo.js';
8
+ import { validation } from '../../../../utils/validation.js';
9
+ import SpoCommand from '../../../base/SpoCommand.js';
10
+ import commands from '../../commands.js';
11
+ export const options = z.strictObject({
12
+ ...globalOptionsZod.shape,
13
+ webUrl: z.string().alias('u')
14
+ .refine(url => validation.isValidSharePointUrl(url) === true, {
15
+ error: e => `'${e.input}' is not a valid SharePoint site URL.`
16
+ }),
17
+ listId: z.uuid().optional(),
18
+ listUrl: z.string().optional(),
19
+ listTitle: z.string().optional(),
20
+ userName: z.string().optional().refine(upn => typeof upn === 'undefined' || validation.isValidUserPrincipalName(upn), {
21
+ error: e => `'${e.input}' is not a valid UPN.`
22
+ }),
23
+ userId: z.uuid().optional()
24
+ });
25
+ class SpoWebRuleListCommand extends SpoCommand {
26
+ get name() {
27
+ return commands.WEB_RULE_LIST;
28
+ }
29
+ get description() {
30
+ return 'Lists all SharePoint list alerts';
31
+ }
32
+ defaultProperties() {
33
+ return ['ID', 'Title', 'UserPrincipalName'];
34
+ }
35
+ get schema() {
36
+ return options;
37
+ }
38
+ getRefinedSchema(schema) {
39
+ return schema
40
+ .refine(options => [options.listId, options.listUrl, options.listTitle].filter(x => x !== undefined).length <= 1, {
41
+ error: `Specify either listId, listUrl, or listTitle, but not more than one.`,
42
+ params: {
43
+ customCode: 'optionSet',
44
+ options: ['listId', 'listUrl', 'listTitle']
45
+ }
46
+ })
47
+ .refine(options => [options.userName, options.userId].filter(x => x !== undefined).length <= 1, {
48
+ error: `Specify either userName or userId, but not both.`,
49
+ params: {
50
+ customCode: 'optionSet',
51
+ options: ['userName', 'userId']
52
+ }
53
+ });
54
+ }
55
+ async commandAction(logger, args) {
56
+ if (this.verbose) {
57
+ const listParams = args.options.listId || args.options.listTitle || args.options.listUrl;
58
+ const userParams = args.options.userName || args.options.userId;
59
+ let message = `Retrieving alerts from site '${args.options.webUrl}'`;
60
+ if (listParams) {
61
+ message += ` for list '${listParams}'`;
62
+ }
63
+ if (userParams) {
64
+ message += `${listParams ? ' and' : ''} for user '${userParams}'`;
65
+ }
66
+ await logger.logToStderr(`${message}...`);
67
+ }
68
+ let requestUrl = `${args.options.webUrl}/_api/web/alerts?$expand=List,User,List/Rootfolder,Item&$select=*,List/Id,List/Title,List/Rootfolder/ServerRelativeUrl,Item/ID,Item/FileRef,Item/Guid`;
69
+ const filters = [];
70
+ let listId;
71
+ if (args.options.listId) {
72
+ listId = args.options.listId;
73
+ }
74
+ else if (args.options.listUrl || args.options.listTitle) {
75
+ try {
76
+ listId = await spo.getListId(args.options.webUrl, args.options.listTitle, args.options.listUrl, logger, this.verbose);
77
+ }
78
+ catch (err) {
79
+ this.handleRejectedODataJsonPromise(err);
80
+ }
81
+ }
82
+ if (listId) {
83
+ filters.push(`List/Id eq guid'${formatting.encodeQueryParameter(listId)}'`);
84
+ }
85
+ if (args.options.userName) {
86
+ filters.push(`User/UserPrincipalName eq '${formatting.encodeQueryParameter(args.options.userName)}'`);
87
+ }
88
+ else if (args.options.userId) {
89
+ const userPrincipalName = await entraUser.getUpnByUserId(args.options.userId);
90
+ filters.push(`User/UserPrincipalName eq '${formatting.encodeQueryParameter(userPrincipalName)}'`);
91
+ }
92
+ if (filters.length > 0) {
93
+ requestUrl += `&$filter=${filters.join(' and ')}`;
94
+ }
95
+ try {
96
+ const res = await odata.getAllItems(requestUrl);
97
+ res.forEach(alert => {
98
+ if (alert.Item) {
99
+ delete alert.Item['ID'];
100
+ }
101
+ if (cli.shouldTrimOutput(args.options.output)) {
102
+ alert.UserPrincipalName = alert.User?.UserPrincipalName;
103
+ }
104
+ });
105
+ await logger.log(res);
106
+ }
107
+ catch (err) {
108
+ this.handleRejectedODataJsonPromise(err);
109
+ }
110
+ }
111
+ }
112
+ export default new SpoWebRuleListCommand();
113
+ //# sourceMappingURL=web-rule-list.js.map
@@ -0,0 +1,54 @@
1
+ import { z } from 'zod';
2
+ import { cli } from '../../../../cli/cli.js';
3
+ import { globalOptionsZod } from '../../../../Command.js';
4
+ import request from '../../../../request.js';
5
+ import { formatting } from '../../../../utils/formatting.js';
6
+ import { validation } from '../../../../utils/validation.js';
7
+ import SpoCommand from '../../../base/SpoCommand.js';
8
+ import commands from '../../commands.js';
9
+ const options = z.strictObject({
10
+ ...globalOptionsZod.shape,
11
+ webUrl: z.string().alias('u')
12
+ .refine(url => validation.isValidSharePointUrl(url) === true, {
13
+ error: e => `'${e.input}' is not a valid SharePoint URL.`
14
+ }),
15
+ id: z.uuid(),
16
+ force: z.boolean().optional().alias('f')
17
+ });
18
+ class SpoWebRuleRemoveCommand extends SpoCommand {
19
+ get name() {
20
+ return commands.WEB_RULE_REMOVE;
21
+ }
22
+ get description() {
23
+ return 'Removes an alert from a SharePoint list';
24
+ }
25
+ get schema() {
26
+ return options;
27
+ }
28
+ async commandAction(logger, args) {
29
+ if (!args.options.force) {
30
+ const result = await cli.promptForConfirmation({ message: `Are you sure you want to remove the alert with id '${args.options.id}' from site '${args.options.webUrl}'?` });
31
+ if (!result) {
32
+ return;
33
+ }
34
+ }
35
+ try {
36
+ if (this.verbose) {
37
+ await logger.logToStderr(`Removing alert with ID '${args.options.id}' from site '${args.options.webUrl}'...`);
38
+ }
39
+ const requestOptions = {
40
+ url: `${args.options.webUrl}/_api/web/Alerts/DeleteAlert('${formatting.encodeQueryParameter(args.options.id)}')`,
41
+ headers: {
42
+ accept: 'application/json;odata=nometadata'
43
+ },
44
+ responseType: 'json'
45
+ };
46
+ await request.delete(requestOptions);
47
+ }
48
+ catch (err) {
49
+ this.handleRejectedODataJsonPromise(err);
50
+ }
51
+ }
52
+ }
53
+ export default new SpoWebRuleRemoveCommand();
54
+ //# sourceMappingURL=web-rule-remove.js.map
@@ -72,6 +72,7 @@ export default {
72
72
  FILE_MOVE: `${prefix} file move`,
73
73
  FILE_REMOVE: `${prefix} file remove`,
74
74
  FILE_RENAME: `${prefix} file rename`,
75
+ FILE_UNARCHIVE: `${prefix} file unarchive`,
75
76
  FILE_RETENTIONLABEL_ENSURE: `${prefix} file retentionlabel ensure`,
76
77
  FILE_RETENTIONLABEL_REMOVE: `${prefix} file retentionlabel remove`,
77
78
  FILE_ROLEASSIGNMENT_ADD: `${prefix} file roleassignment add`,
@@ -85,7 +86,6 @@ export default {
85
86
  FILE_SHARINGLINK_LIST: `${prefix} file sharinglink list`,
86
87
  FILE_SHARINGLINK_REMOVE: `${prefix} file sharinglink remove`,
87
88
  FILE_SHARINGLINK_SET: `${prefix} file sharinglink set`,
88
- FILE_UNARCHIVE: `${prefix} file unarchive`,
89
89
  FILE_VERSION_CLEAR: `${prefix} file version clear`,
90
90
  FILE_VERSION_GET: `${prefix} file version get`,
91
91
  FILE_VERSION_KEEP: `${prefix} file version keep`,
@@ -112,6 +112,7 @@ export default {
112
112
  FOLDER_SHARINGLINK_LIST: `${prefix} folder sharinglink list`,
113
113
  FOLDER_SHARINGLINK_REMOVE: `${prefix} folder sharinglink remove`,
114
114
  FOLDER_SHARINGLINK_SET: `${prefix} folder sharinglink set`,
115
+ FOLDER_UNARCHIVE: `${prefix} folder unarchive`,
115
116
  GET: `${prefix} get`,
116
117
  GROUP_ADD: `${prefix} group add`,
117
118
  GROUP_GET: `${prefix} group get`,
@@ -235,6 +236,7 @@ export default {
235
236
  PAGE_TEMPLATE_LIST: `${prefix} page template list`,
236
237
  PAGE_TEMPLATE_REMOVE: `${prefix} page template remove`,
237
238
  PAGE_TEXT_ADD: `${prefix} page text add`,
239
+ PAGE_UNPUBLISH: `${prefix} page unpublish`,
238
240
  PROPERTYBAG_GET: `${prefix} propertybag get`,
239
241
  PROPERTYBAG_LIST: `${prefix} propertybag list`,
240
242
  PROPERTYBAG_REMOVE: `${prefix} propertybag remove`,
@@ -377,6 +379,9 @@ export default {
377
379
  WEB_ROLEASSIGNMENT_ADD: `${prefix} web roleassignment add`,
378
380
  WEB_ROLEINHERITANCE_BREAK: `${prefix} web roleinheritance break`,
379
381
  WEB_ROLEINHERITANCE_RESET: `${prefix} web roleinheritance reset`,
382
+ WEB_RULE_GET: `${prefix} web rule get`,
383
+ WEB_RULE_LIST: `${prefix} web rule list`,
384
+ WEB_RULE_REMOVE: `${prefix} web rule remove`,
380
385
  WEB_SET: `${prefix} web set`
381
386
  };
382
387
  //# sourceMappingURL=commands.js.map
@@ -1,8 +1,10 @@
1
+ import { globalOptionsZod } from '../../../../Command.js';
1
2
  import config from '../../../../config.js';
2
3
  import request from '../../../../request.js';
3
4
  import { spo } from '../../../../utils/spo.js';
4
5
  import SpoCommand from '../../../base/SpoCommand.js';
5
6
  import commands from '../../commands.js';
7
+ export const options = globalOptionsZod.strict();
6
8
  class SppContentCenterListCommand extends SpoCommand {
7
9
  get name() {
8
10
  return commands.CONTENTCENTER_LIST;
@@ -13,6 +15,9 @@ class SppContentCenterListCommand extends SpoCommand {
13
15
  defaultProperties() {
14
16
  return ['Title', 'Url'];
15
17
  }
18
+ get schema() {
19
+ return options;
20
+ }
16
21
  async commandAction(logger) {
17
22
  try {
18
23
  if (this.verbose) {
@@ -1,15 +1,22 @@
1
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
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
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
- };
6
- var _SppModelGetCommand_instances, _SppModelGetCommand_initTelemetry, _SppModelGetCommand_initOptions, _SppModelGetCommand_initValidators, _SppModelGetCommand_initOptionSets, _SppModelGetCommand_initTypes;
1
+ import { z } from 'zod';
2
+ import { globalOptionsZod } from '../../../../Command.js';
7
3
  import { odata } from '../../../../utils/odata.js';
8
4
  import { spp } from '../../../../utils/spp.js';
9
5
  import { urlUtil } from '../../../../utils/urlUtil.js';
10
6
  import { validation } from '../../../../utils/validation.js';
11
7
  import SpoCommand from '../../../base/SpoCommand.js';
12
8
  import commands from '../../commands.js';
9
+ export const options = z.strictObject({
10
+ ...globalOptionsZod.shape,
11
+ siteUrl: z.string()
12
+ .refine(url => validation.isValidSharePointUrl(url) === true, {
13
+ error: e => `'${e.input}' is not a valid SharePoint Online site URL.`
14
+ })
15
+ .alias('u'),
16
+ id: z.guid().optional().alias('i'),
17
+ title: z.string().optional().alias('t'),
18
+ withPublications: z.boolean().optional()
19
+ });
13
20
  class SppModelGetCommand extends SpoCommand {
14
21
  get name() {
15
22
  return commands.MODEL_GET;
@@ -17,14 +24,18 @@ class SppModelGetCommand extends SpoCommand {
17
24
  get description() {
18
25
  return 'Retrieves information about a document understanding model';
19
26
  }
20
- constructor() {
21
- super();
22
- _SppModelGetCommand_instances.add(this);
23
- __classPrivateFieldGet(this, _SppModelGetCommand_instances, "m", _SppModelGetCommand_initTelemetry).call(this);
24
- __classPrivateFieldGet(this, _SppModelGetCommand_instances, "m", _SppModelGetCommand_initOptions).call(this);
25
- __classPrivateFieldGet(this, _SppModelGetCommand_instances, "m", _SppModelGetCommand_initValidators).call(this);
26
- __classPrivateFieldGet(this, _SppModelGetCommand_instances, "m", _SppModelGetCommand_initOptionSets).call(this);
27
- __classPrivateFieldGet(this, _SppModelGetCommand_instances, "m", _SppModelGetCommand_initTypes).call(this);
27
+ get schema() {
28
+ return options;
29
+ }
30
+ getRefinedSchema(schema) {
31
+ return schema
32
+ .refine(opts => [opts.id, opts.title].filter(x => x !== undefined).length === 1, {
33
+ message: `Specify either 'id' or 'title', but not both.`,
34
+ params: {
35
+ customCode: 'optionSet',
36
+ options: ['id', 'title']
37
+ }
38
+ });
28
39
  }
29
40
  async commandAction(logger, args) {
30
41
  try {
@@ -56,36 +67,5 @@ class SppModelGetCommand extends SpoCommand {
56
67
  }
57
68
  }
58
69
  }
59
- _SppModelGetCommand_instances = new WeakSet(), _SppModelGetCommand_initTelemetry = function _SppModelGetCommand_initTelemetry() {
60
- this.telemetry.push((args) => {
61
- Object.assign(this.telemetryProperties, {
62
- id: typeof args.options.id !== 'undefined',
63
- title: typeof args.options.title !== 'undefined',
64
- withPublications: !!args.options.withPublications
65
- });
66
- });
67
- }, _SppModelGetCommand_initOptions = function _SppModelGetCommand_initOptions() {
68
- this.options.unshift({
69
- option: '-u, --siteUrl <siteUrl>'
70
- }, {
71
- option: '-i, --id [id]'
72
- }, {
73
- option: '-t, --title [title]'
74
- }, {
75
- option: '--withPublications'
76
- });
77
- }, _SppModelGetCommand_initValidators = function _SppModelGetCommand_initValidators() {
78
- this.validators.push(async (args) => {
79
- if (args.options.id && !validation.isValidGuid(args.options.id)) {
80
- return `${args.options.id} is not a valid GUID for option 'id'.`;
81
- }
82
- return validation.isValidSharePointUrl(args.options.siteUrl);
83
- });
84
- }, _SppModelGetCommand_initOptionSets = function _SppModelGetCommand_initOptionSets() {
85
- this.optionSets.push({ options: ['id', 'title'] });
86
- }, _SppModelGetCommand_initTypes = function _SppModelGetCommand_initTypes() {
87
- this.types.string.push('siteUrl', 'id', 'title');
88
- this.types.boolean.push('withPublications');
89
- };
90
70
  export default new SppModelGetCommand();
91
71
  //# sourceMappingURL=model-get.js.map
@@ -1,15 +1,19 @@
1
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
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
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
- };
6
- var _SppModelListCommand_instances, _SppModelListCommand_initOptions, _SppModelListCommand_initTypes, _SppModelListCommand_initValidators;
1
+ import { z } from 'zod';
2
+ import { globalOptionsZod } from '../../../../Command.js';
7
3
  import { odata } from '../../../../utils/odata.js';
8
4
  import { spp } from '../../../../utils/spp.js';
9
5
  import { urlUtil } from '../../../../utils/urlUtil.js';
10
6
  import { validation } from '../../../../utils/validation.js';
11
7
  import SpoCommand from '../../../base/SpoCommand.js';
12
8
  import commands from '../../commands.js';
9
+ export const options = z.strictObject({
10
+ ...globalOptionsZod.shape,
11
+ siteUrl: z.string()
12
+ .refine(url => validation.isValidSharePointUrl(url) === true, {
13
+ error: e => `'${e.input}' is not a valid SharePoint Online site URL.`
14
+ })
15
+ .alias('u')
16
+ });
13
17
  class SppModelListCommand extends SpoCommand {
14
18
  get name() {
15
19
  return commands.MODEL_LIST;
@@ -20,12 +24,8 @@ class SppModelListCommand extends SpoCommand {
20
24
  defaultProperties() {
21
25
  return ['AIBuilderHybridModelType', 'ContentTypeName', 'LastTrained', 'UniqueId'];
22
26
  }
23
- constructor() {
24
- super();
25
- _SppModelListCommand_instances.add(this);
26
- __classPrivateFieldGet(this, _SppModelListCommand_instances, "m", _SppModelListCommand_initOptions).call(this);
27
- __classPrivateFieldGet(this, _SppModelListCommand_instances, "m", _SppModelListCommand_initTypes).call(this);
28
- __classPrivateFieldGet(this, _SppModelListCommand_instances, "m", _SppModelListCommand_initValidators).call(this);
27
+ get schema() {
28
+ return options;
29
29
  }
30
30
  async commandAction(logger, args) {
31
31
  try {
@@ -42,16 +42,5 @@ class SppModelListCommand extends SpoCommand {
42
42
  }
43
43
  }
44
44
  }
45
- _SppModelListCommand_instances = new WeakSet(), _SppModelListCommand_initOptions = function _SppModelListCommand_initOptions() {
46
- this.options.unshift({
47
- option: '-u, --siteUrl <siteUrl>'
48
- });
49
- }, _SppModelListCommand_initTypes = function _SppModelListCommand_initTypes() {
50
- this.types.string.push('siteUrl');
51
- }, _SppModelListCommand_initValidators = function _SppModelListCommand_initValidators() {
52
- this.validators.push(async (args) => {
53
- return validation.isValidSharePointUrl(args.options.siteUrl);
54
- });
55
- };
56
45
  export default new SppModelListCommand();
57
46
  //# sourceMappingURL=model-list.js.map
@@ -1,9 +1,5 @@
1
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
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
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
- };
6
- var _SppModelRemoveCommand_instances, _SppModelRemoveCommand_initTelemetry, _SppModelRemoveCommand_initOptions, _SppModelRemoveCommand_initValidators, _SppModelRemoveCommand_initOptionSets, _SppModelRemoveCommand_initTypes;
1
+ import { z } from 'zod';
2
+ import { globalOptionsZod } from '../../../../Command.js';
7
3
  import { cli } from '../../../../cli/cli.js';
8
4
  import request from '../../../../request.js';
9
5
  import { formatting } from '../../../../utils/formatting.js';
@@ -12,6 +8,17 @@ import { urlUtil } from '../../../../utils/urlUtil.js';
12
8
  import { validation } from '../../../../utils/validation.js';
13
9
  import SpoCommand from '../../../base/SpoCommand.js';
14
10
  import commands from '../../commands.js';
11
+ export const options = z.strictObject({
12
+ ...globalOptionsZod.shape,
13
+ siteUrl: z.string()
14
+ .refine(url => validation.isValidSharePointUrl(url) === true, {
15
+ error: e => `'${e.input}' is not a valid SharePoint Online site URL.`
16
+ })
17
+ .alias('u'),
18
+ id: z.guid().optional().alias('i'),
19
+ title: z.string().optional().alias('t'),
20
+ force: z.boolean().optional().alias('f')
21
+ });
15
22
  class SppModelRemoveCommand extends SpoCommand {
16
23
  get name() {
17
24
  return commands.MODEL_REMOVE;
@@ -19,14 +26,18 @@ class SppModelRemoveCommand extends SpoCommand {
19
26
  get description() {
20
27
  return 'Deletes a document understanding model';
21
28
  }
22
- constructor() {
23
- super();
24
- _SppModelRemoveCommand_instances.add(this);
25
- __classPrivateFieldGet(this, _SppModelRemoveCommand_instances, "m", _SppModelRemoveCommand_initTelemetry).call(this);
26
- __classPrivateFieldGet(this, _SppModelRemoveCommand_instances, "m", _SppModelRemoveCommand_initOptions).call(this);
27
- __classPrivateFieldGet(this, _SppModelRemoveCommand_instances, "m", _SppModelRemoveCommand_initValidators).call(this);
28
- __classPrivateFieldGet(this, _SppModelRemoveCommand_instances, "m", _SppModelRemoveCommand_initOptionSets).call(this);
29
- __classPrivateFieldGet(this, _SppModelRemoveCommand_instances, "m", _SppModelRemoveCommand_initTypes).call(this);
29
+ get schema() {
30
+ return options;
31
+ }
32
+ getRefinedSchema(schema) {
33
+ return schema
34
+ .refine(opts => [opts.id, opts.title].filter(x => x !== undefined).length === 1, {
35
+ message: `Specify either 'id' or 'title', but not both.`,
36
+ params: {
37
+ customCode: 'optionSet',
38
+ options: ['id', 'title']
39
+ }
40
+ });
30
41
  }
31
42
  async commandAction(logger, args) {
32
43
  try {
@@ -70,36 +81,5 @@ class SppModelRemoveCommand extends SpoCommand {
70
81
  }
71
82
  }
72
83
  }
73
- _SppModelRemoveCommand_instances = new WeakSet(), _SppModelRemoveCommand_initTelemetry = function _SppModelRemoveCommand_initTelemetry() {
74
- this.telemetry.push((args) => {
75
- Object.assign(this.telemetryProperties, {
76
- id: typeof args.options.id !== 'undefined',
77
- title: typeof args.options.title !== 'undefined',
78
- force: !!args.options.force
79
- });
80
- });
81
- }, _SppModelRemoveCommand_initOptions = function _SppModelRemoveCommand_initOptions() {
82
- this.options.unshift({
83
- option: '-u, --siteUrl <siteUrl>'
84
- }, {
85
- option: '-i, --id [id]'
86
- }, {
87
- option: '-t, --title [title]'
88
- }, {
89
- option: '-f, --force'
90
- });
91
- }, _SppModelRemoveCommand_initValidators = function _SppModelRemoveCommand_initValidators() {
92
- this.validators.push(async (args) => {
93
- if (args.options.id && !validation.isValidGuid(args.options.id)) {
94
- return `${args.options.id} is not a valid GUID for option 'id'.`;
95
- }
96
- return validation.isValidSharePointUrl(args.options.siteUrl);
97
- });
98
- }, _SppModelRemoveCommand_initOptionSets = function _SppModelRemoveCommand_initOptionSets() {
99
- this.optionSets.push({ options: ['id', 'title'] });
100
- }, _SppModelRemoveCommand_initTypes = function _SppModelRemoveCommand_initTypes() {
101
- this.types.string.push('siteUrl', 'id', 'title');
102
- this.types.boolean.push('force');
103
- };
104
84
  export default new SppModelRemoveCommand();
105
85
  //# sourceMappingURL=model-remove.js.map
@@ -1,14 +1,30 @@
1
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
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
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
- };
6
- var _TeamsChannelAddCommand_instances, _TeamsChannelAddCommand_initTelemetry, _TeamsChannelAddCommand_initOptions, _TeamsChannelAddCommand_initValidators, _TeamsChannelAddCommand_initOptionSets;
7
1
  import request from '../../../../request.js';
8
2
  import { validation } from '../../../../utils/validation.js';
9
3
  import GraphCommand from "../../../base/GraphCommand.js";
10
4
  import commands from '../../commands.js';
11
5
  import { teams } from '../../../../utils/teams.js';
6
+ import { globalOptionsZod } from '../../../../Command.js';
7
+ import { z } from 'zod';
8
+ export const options = z.strictObject({
9
+ ...globalOptionsZod.shape,
10
+ teamId: z.string()
11
+ .refine(val => validation.isValidGuid(val), {
12
+ message: 'The value must be a valid GUID.'
13
+ })
14
+ .optional()
15
+ .alias('i'),
16
+ teamName: z.string()
17
+ .optional(),
18
+ name: z.string()
19
+ .alias('n'),
20
+ description: z.string()
21
+ .optional()
22
+ .alias('d'),
23
+ type: z.enum(['standard', 'private', 'shared'])
24
+ .optional(),
25
+ owner: z.string()
26
+ .optional()
27
+ });
12
28
  class TeamsChannelAddCommand extends GraphCommand {
13
29
  get name() {
14
30
  return commands.CHANNEL_ADD;
@@ -16,13 +32,30 @@ class TeamsChannelAddCommand extends GraphCommand {
16
32
  get description() {
17
33
  return 'Adds a channel to the specified Microsoft Teams team';
18
34
  }
19
- constructor() {
20
- super();
21
- _TeamsChannelAddCommand_instances.add(this);
22
- __classPrivateFieldGet(this, _TeamsChannelAddCommand_instances, "m", _TeamsChannelAddCommand_initTelemetry).call(this);
23
- __classPrivateFieldGet(this, _TeamsChannelAddCommand_instances, "m", _TeamsChannelAddCommand_initOptions).call(this);
24
- __classPrivateFieldGet(this, _TeamsChannelAddCommand_instances, "m", _TeamsChannelAddCommand_initValidators).call(this);
25
- __classPrivateFieldGet(this, _TeamsChannelAddCommand_instances, "m", _TeamsChannelAddCommand_initOptionSets).call(this);
35
+ get schema() {
36
+ return options;
37
+ }
38
+ getRefinedSchema(schema) {
39
+ return schema
40
+ .refine(opts => [opts.teamId, opts.teamName].filter(x => x !== undefined).length === 1, {
41
+ message: 'Specify either teamId or teamName, but not both.',
42
+ params: {
43
+ customCode: 'optionSet',
44
+ options: ['teamId', 'teamName']
45
+ }
46
+ })
47
+ .refine(opts => !((opts.type === 'private' || opts.type === 'shared') && !opts.owner), {
48
+ message: 'Specify owner when creating a private or shared channel.',
49
+ params: {
50
+ customCode: 'required'
51
+ }
52
+ })
53
+ .refine(opts => !((opts.type !== 'private' && opts.type !== 'shared') && opts.owner), {
54
+ message: 'Specify owner only when creating a private or shared channel.',
55
+ params: {
56
+ customCode: 'required'
57
+ }
58
+ });
26
59
  }
27
60
  async commandAction(logger, args) {
28
61
  try {
@@ -66,49 +99,5 @@ class TeamsChannelAddCommand extends GraphCommand {
66
99
  return request.post(requestOptions);
67
100
  }
68
101
  }
69
- _TeamsChannelAddCommand_instances = new WeakSet(), _TeamsChannelAddCommand_initTelemetry = function _TeamsChannelAddCommand_initTelemetry() {
70
- this.telemetry.push((args) => {
71
- Object.assign(this.telemetryProperties, {
72
- description: typeof args.options.description !== 'undefined',
73
- teamId: typeof args.options.teamId !== 'undefined',
74
- teamName: typeof args.options.teamName !== 'undefined',
75
- type: args.options.type || 'standard',
76
- owner: typeof args.options.owner !== 'undefined'
77
- });
78
- });
79
- }, _TeamsChannelAddCommand_initOptions = function _TeamsChannelAddCommand_initOptions() {
80
- this.options.unshift({
81
- option: '-i, --teamId [teamId]'
82
- }, {
83
- option: '--teamName [teamName]'
84
- }, {
85
- option: '-n, --name <name>'
86
- }, {
87
- option: '-d, --description [description]'
88
- }, {
89
- option: '--type [type]',
90
- autocomplete: ['standard', 'private', 'shared']
91
- }, {
92
- option: '--owner [owner]'
93
- });
94
- }, _TeamsChannelAddCommand_initValidators = function _TeamsChannelAddCommand_initValidators() {
95
- this.validators.push(async (args) => {
96
- if (args.options.teamId && !validation.isValidGuid(args.options.teamId)) {
97
- return `${args.options.teamId} is not a valid GUID`;
98
- }
99
- if (args.options.type && ['standard', 'private', 'shared'].indexOf(args.options.type) === -1) {
100
- return `${args.options.type} is not a valid type value. Allowed values standard|private|shared.`;
101
- }
102
- if ((args.options.type === 'private' || args.options.type === 'shared') && !args.options.owner) {
103
- return `Specify owner when creating a ${args.options.type} channel.`;
104
- }
105
- if ((args.options.type !== 'private' && args.options.type !== 'shared') && args.options.owner) {
106
- return `Specify owner only when creating a private or shared channel.`;
107
- }
108
- return true;
109
- });
110
- }, _TeamsChannelAddCommand_initOptionSets = function _TeamsChannelAddCommand_initOptionSets() {
111
- this.optionSets.push({ options: ['teamId', 'teamName'] });
112
- };
113
102
  export default new TeamsChannelAddCommand();
114
103
  //# sourceMappingURL=channel-add.js.map