@pnp/cli-microsoft365 12.0.0-beta.d654135 → 12.0.0-beta.e3af9f8

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 (241) 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 +19 -2
  5. package/dist/cli/cli.js +3 -0
  6. package/dist/googleAnalytics.js +96 -0
  7. package/dist/m365/cli/commands/cli-consent.js +9 -2
  8. package/dist/m365/entra/commands/m365group/m365group-add.js +52 -97
  9. package/dist/m365/entra/commands/m365group/m365group-conversation-list.js +20 -33
  10. package/dist/m365/entra/commands/m365group/m365group-conversation-post-list.js +20 -39
  11. package/dist/m365/entra/commands/m365group/m365group-get.js +20 -41
  12. package/dist/m365/entra/commands/m365group/m365group-list.js +11 -31
  13. package/dist/m365/entra/commands/m365group/m365group-recyclebinitem-clear.js +8 -22
  14. package/dist/m365/entra/commands/m365group/m365group-recyclebinitem-list.js +9 -25
  15. package/dist/m365/entra/commands/m365group/m365group-recyclebinitem-remove.js +21 -43
  16. package/dist/m365/entra/commands/m365group/m365group-recyclebinitem-restore.js +21 -41
  17. package/dist/m365/entra/commands/m365group/m365group-remove.js +25 -46
  18. package/dist/m365/entra/commands/m365group/m365group-renew.js +19 -32
  19. package/dist/m365/entra/commands/m365group/m365group-set.js +86 -141
  20. package/dist/m365/entra/commands/m365group/m365group-teamify.js +20 -43
  21. package/dist/m365/entra/commands/m365group/m365group-user-add.js +44 -77
  22. package/dist/m365/entra/commands/m365group/m365group-user-list.js +28 -55
  23. package/dist/m365/entra/commands/m365group/m365group-user-remove.js +37 -74
  24. package/dist/m365/entra/commands/m365group/m365group-user-set.js +45 -77
  25. package/dist/m365/spe/commands/container/container-permission-remove.js +94 -0
  26. package/dist/m365/spe/commands.js +1 -0
  27. package/dist/m365/spfx/commands/SpfxCompatibilityMatrix.js +15 -0
  28. package/dist/m365/spfx/commands/project/project-doctor/doctor-1.24.0.js +19 -0
  29. package/dist/m365/spfx/commands/project/project-doctor.js +2 -1
  30. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN012021_TSC_excludeDirectories.js +43 -0
  31. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN027002_OVERRIDES_qs.js +33 -0
  32. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN027003_OVERRIDES_uuid.js +33 -0
  33. package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.24.0.js +77 -0
  34. package/dist/m365/spfx/commands/project/project-upgrade.js +2 -1
  35. package/dist/m365/spo/commands/app/app-add.js +35 -56
  36. package/dist/m365/spo/commands/app/app-deploy.js +41 -59
  37. package/dist/m365/spo/commands/app/app-get.js +40 -56
  38. package/dist/m365/spo/commands/app/app-install.js +20 -41
  39. package/dist/m365/spo/commands/app/app-instance-list.js +12 -24
  40. package/dist/m365/spo/commands/app/app-list.js +26 -44
  41. package/dist/m365/spo/commands/app/app-remove.js +32 -52
  42. package/dist/m365/spo/commands/app/app-retract.js +32 -51
  43. package/dist/m365/spo/commands/app/app-teamspackage-download.js +35 -54
  44. package/dist/m365/spo/commands/app/app-uninstall.js +21 -44
  45. package/dist/m365/spo/commands/app/app-upgrade.js +20 -41
  46. package/dist/m365/spo/commands/commandset/commandset-add.js +17 -59
  47. package/dist/m365/spo/commands/commandset/commandset-get.js +24 -62
  48. package/dist/m365/spo/commands/commandset/commandset-list.js +11 -34
  49. package/dist/m365/spo/commands/commandset/commandset-remove.js +21 -54
  50. package/dist/m365/spo/commands/commandset/commandset-set.js +30 -83
  51. package/dist/m365/spo/commands/feature/feature-disable.js +20 -50
  52. package/dist/m365/spo/commands/feature/feature-enable.js +22 -50
  53. package/dist/m365/spo/commands/feature/feature-list.js +11 -36
  54. package/dist/m365/spo/commands/field/field-add.js +33 -62
  55. package/dist/m365/spo/commands/field/field-get.js +30 -57
  56. package/dist/m365/spo/commands/field/field-list.js +21 -46
  57. package/dist/m365/spo/commands/field/field-remove.js +32 -63
  58. package/dist/m365/spo/commands/field/field-set.js +34 -66
  59. package/dist/m365/spo/commands/file/file-get.js +4 -3
  60. package/dist/m365/spo/commands/folder/folder-unarchive.js +90 -0
  61. package/dist/m365/spo/commands/hubsite/hubsite-connect.js +38 -63
  62. package/dist/m365/spo/commands/hubsite/hubsite-data-get.js +11 -27
  63. package/dist/m365/spo/commands/hubsite/hubsite-disconnect.js +25 -47
  64. package/dist/m365/spo/commands/hubsite/hubsite-get.js +25 -37
  65. package/dist/m365/spo/commands/hubsite/hubsite-list.js +12 -24
  66. package/dist/m365/spo/commands/hubsite/hubsite-register.js +10 -18
  67. package/dist/m365/spo/commands/hubsite/hubsite-rights-grant.js +14 -32
  68. package/dist/m365/spo/commands/hubsite/hubsite-rights-revoke.js +12 -29
  69. package/dist/m365/spo/commands/hubsite/hubsite-set.js +19 -46
  70. package/dist/m365/spo/commands/hubsite/hubsite-unregister.js +11 -27
  71. package/dist/m365/spo/commands/listitem/listitem-add.js +27 -55
  72. package/dist/m365/spo/commands/listitem/listitem-attachment-add.js +30 -58
  73. package/dist/m365/spo/commands/listitem/listitem-attachment-get.js +27 -52
  74. package/dist/m365/spo/commands/listitem/listitem-attachment-list.js +26 -50
  75. package/dist/m365/spo/commands/listitem/listitem-attachment-remove.js +28 -55
  76. package/dist/m365/spo/commands/listitem/listitem-attachment-set.js +30 -57
  77. package/dist/m365/spo/commands/listitem/listitem-batch-add.js +36 -58
  78. package/dist/m365/spo/commands/listitem/listitem-batch-remove.js +68 -92
  79. package/dist/m365/spo/commands/listitem/listitem-batch-set.js +37 -57
  80. package/dist/m365/spo/commands/listitem/listitem-get.js +45 -79
  81. package/dist/m365/spo/commands/listitem/listitem-isrecord.js +31 -55
  82. package/dist/m365/spo/commands/listitem/listitem-list.js +47 -81
  83. package/dist/m365/spo/commands/listitem/listitem-record-declare.js +37 -60
  84. package/dist/m365/spo/commands/listitem/listitem-record-lock.js +30 -52
  85. package/dist/m365/spo/commands/listitem/listitem-record-undeclare.js +31 -52
  86. package/dist/m365/spo/commands/listitem/listitem-record-unlock.js +30 -52
  87. package/dist/m365/spo/commands/listitem/listitem-remove.js +33 -61
  88. package/dist/m365/spo/commands/listitem/listitem-retentionlabel-ensure.js +46 -67
  89. package/dist/m365/spo/commands/listitem/listitem-retentionlabel-remove.js +33 -56
  90. package/dist/m365/spo/commands/listitem/listitem-roleassignment-add.js +55 -98
  91. package/dist/m365/spo/commands/listitem/listitem-roleassignment-remove.js +48 -74
  92. package/dist/m365/spo/commands/listitem/listitem-roleinheritance-break.js +33 -56
  93. package/dist/m365/spo/commands/listitem/listitem-roleinheritance-reset.js +31 -53
  94. package/dist/m365/spo/commands/listitem/listitem-set.js +33 -58
  95. package/dist/m365/spo/commands/navigation/navigation-node-add.js +74 -120
  96. package/dist/m365/spo/commands/navigation/navigation-node-get.js +4 -13
  97. package/dist/m365/spo/commands/navigation/navigation-node-set.js +53 -114
  98. package/dist/m365/spo/commands/page/page-unpublish.js +53 -0
  99. package/dist/m365/spo/commands/sitescript/sitescript-add.js +22 -37
  100. package/dist/m365/spo/commands/sitescript/sitescript-get.js +9 -26
  101. package/dist/m365/spo/commands/sitescript/sitescript-list.js +5 -0
  102. package/dist/m365/spo/commands/sitescript/sitescript-remove.js +9 -33
  103. package/dist/m365/spo/commands/sitescript/sitescript-set.js +29 -56
  104. package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-add.js +8 -1
  105. package/dist/m365/spo/commands/tenant/tenant-commandset-add.js +8 -1
  106. package/dist/m365/spo/commands.js +3 -1
  107. package/dist/m365/spp/commands/contentcenter/contentcenter-list.js +5 -0
  108. package/dist/m365/spp/commands/model/model-get.js +25 -45
  109. package/dist/m365/spp/commands/model/model-list.js +12 -23
  110. package/dist/m365/spp/commands/model/model-remove.js +25 -45
  111. package/dist/m365/teams/commands/channel/channel-add.js +46 -57
  112. package/dist/m365/teams/commands/channel/channel-get.js +41 -48
  113. package/dist/m365/teams/commands/channel/channel-list.js +28 -42
  114. package/dist/m365/teams/commands/channel/channel-member-add.js +53 -54
  115. package/dist/m365/teams/commands/channel/channel-member-list.js +47 -55
  116. package/dist/m365/teams/commands/channel/channel-member-remove.js +62 -62
  117. package/dist/m365/teams/commands/channel/channel-member-set.js +61 -65
  118. package/dist/m365/teams/commands/channel/channel-remove.js +47 -49
  119. package/dist/m365/teams/commands/channel/channel-set.js +47 -54
  120. package/dist/m365/teams/commands/chat/chat-get.js +30 -45
  121. package/dist/m365/teams/commands/chat/chat-list.js +22 -42
  122. package/dist/m365/teams/commands/chat/chat-member-add.js +43 -64
  123. package/dist/m365/teams/commands/chat/chat-member-list.js +10 -23
  124. package/dist/m365/teams/commands/chat/chat-member-remove.js +28 -50
  125. package/dist/m365/teams/commands/chat/chat-message-send.js +32 -55
  126. package/dist/m365/teams/commands/meeting/meeting-add.js +57 -68
  127. package/dist/m365/teams/commands/meeting/meeting-attendancereport-get.js +33 -58
  128. package/dist/m365/teams/commands/meeting/meeting-attendancereport-list.js +14 -38
  129. package/dist/m365/teams/commands/meeting/meeting-get.js +14 -38
  130. package/dist/m365/teams/commands/meeting/meeting-list.js +34 -59
  131. package/dist/m365/teams/commands/meeting/meeting-transcript-get.js +34 -58
  132. package/dist/m365/teams/commands/meeting/meeting-transcript-list.js +29 -50
  133. package/dist/m365/teams/commands/message/message-get.js +19 -30
  134. package/dist/m365/teams/commands/message/message-list.js +26 -43
  135. package/dist/m365/teams/commands/message/message-remove.js +43 -58
  136. package/dist/m365/teams/commands/message/message-reply-list.js +19 -30
  137. package/dist/m365/teams/commands/message/message-restore.js +40 -50
  138. package/dist/m365/teams/commands/message/message-send.js +19 -30
  139. package/dist/m365/teams/commands/report/report-deviceusagedistributionusercounts.js +10 -0
  140. package/dist/m365/teams/commands/report/report-deviceusageusercounts.js +10 -0
  141. package/dist/m365/teams/commands/report/report-deviceusageuserdetail.js +22 -0
  142. package/dist/m365/teams/commands/report/report-directroutingcalls.js +19 -39
  143. package/dist/m365/teams/commands/report/report-pstncalls.js +19 -39
  144. package/dist/m365/teams/commands/report/report-useractivitycounts.js +10 -0
  145. package/dist/m365/teams/commands/report/report-useractivityusercounts.js +10 -0
  146. package/dist/m365/teams/commands/report/report-useractivityuserdetail.js +22 -0
  147. package/dist/m365/teams/commands/tab/tab-add.js +23 -49
  148. package/dist/m365/teams/commands/tab/tab-get.js +55 -56
  149. package/dist/m365/teams/commands/tab/tab-list.js +17 -28
  150. package/dist/m365/teams/commands/tab/tab-remove.js +23 -42
  151. package/dist/m365/teams/commands/team/team-add.js +76 -114
  152. package/dist/m365/teams/commands/team/team-app-list.js +23 -36
  153. package/dist/m365/teams/commands/team/team-archive.js +24 -39
  154. package/dist/m365/teams/commands/team/team-clone.js +28 -62
  155. package/dist/m365/teams/commands/team/team-get.js +23 -36
  156. package/dist/m365/teams/commands/team/team-list.js +43 -57
  157. package/dist/m365/teams/commands/team/team-remove.js +24 -37
  158. package/dist/m365/teams/commands/team/team-set.js +23 -52
  159. package/dist/m365/teams/commands/team/team-unarchive.js +23 -28
  160. package/dist/m365/teams/commands/user/user-app-add.js +40 -49
  161. package/dist/m365/teams/commands/user/user-app-list.js +26 -39
  162. package/dist/m365/teams/commands/user/user-app-remove.js +37 -49
  163. package/dist/m365/teams/commands/user/user-app-upgrade.js +36 -52
  164. package/dist/m365/teams/commands/user/user-list.js +17 -39
  165. package/dist/m365/tenant/commands/report/report-activeusercounts.js +2 -1
  166. package/dist/m365/tenant/commands/report/report-activeuserdetail.js +2 -1
  167. package/dist/m365/tenant/commands/report/report-office365activationcounts.js +9 -0
  168. package/dist/m365/tenant/commands/report/report-office365activationsusercounts.js +9 -0
  169. package/dist/m365/tenant/commands/report/report-office365activationsuserdetail.js +9 -0
  170. package/dist/m365/tenant/commands/report/report-servicesusercounts.js +2 -1
  171. package/dist/m365/tenant/commands/report/report-settings-get.js +5 -0
  172. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-health-get.js +9 -20
  173. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-health-list.js +8 -20
  174. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-healthissue-get.js +8 -15
  175. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-healthissue-list.js +8 -15
  176. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-message-get.js +12 -26
  177. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-message-list.js +8 -22
  178. package/dist/m365/util/commands/accesstoken/accesstoken-get.js +10 -28
  179. package/dist/telemetry.js +7 -11
  180. package/dist/utils/spo.js +40 -3
  181. package/dist/utils/urlUtil.js +2 -2
  182. package/dist/utils/zod.js +4 -4
  183. package/docs/docs/cmd/login.mdx +15 -2
  184. package/docs/docs/cmd/spe/container/container-permission-remove.mdx +78 -0
  185. package/docs/docs/cmd/spfx/project/project-upgrade.mdx +1 -1
  186. package/docs/docs/cmd/spo/file/file-archive.mdx +1 -1
  187. package/docs/docs/cmd/spo/file/file-checkin.mdx +2 -2
  188. package/docs/docs/cmd/spo/file/file-checkout-undo.mdx +1 -1
  189. package/docs/docs/cmd/spo/file/file-checkout.mdx +2 -2
  190. package/docs/docs/cmd/spo/file/file-copy.mdx +2 -2
  191. package/docs/docs/cmd/spo/file/file-get.mdx +6 -6
  192. package/docs/docs/cmd/spo/file/file-retentionlabel-ensure.mdx +1 -1
  193. package/docs/docs/cmd/spo/file/file-retentionlabel-remove.mdx +1 -1
  194. package/docs/docs/cmd/spo/file/file-roleassignment-add.mdx +1 -1
  195. package/docs/docs/cmd/spo/file/file-roleassignment-remove.mdx +1 -1
  196. package/docs/docs/cmd/spo/file/file-roleinheritance-break.mdx +3 -3
  197. package/docs/docs/cmd/spo/file/file-roleinheritance-reset.mdx +2 -2
  198. package/docs/docs/cmd/spo/file/file-sharinginfo-get.mdx +2 -2
  199. package/docs/docs/cmd/spo/file/file-sharinglink-add.mdx +22 -1
  200. package/docs/docs/cmd/spo/file/file-sharinglink-clear.mdx +24 -1
  201. package/docs/docs/cmd/spo/file/file-sharinglink-get.mdx +22 -1
  202. package/docs/docs/cmd/spo/file/file-sharinglink-list.mdx +22 -1
  203. package/docs/docs/cmd/spo/file/file-sharinglink-remove.mdx +24 -1
  204. package/docs/docs/cmd/spo/file/file-sharinglink-set.mdx +22 -1
  205. package/docs/docs/cmd/spo/file/file-unarchive.mdx +1 -1
  206. package/docs/docs/cmd/spo/file/file-version-clear.mdx +1 -1
  207. package/docs/docs/cmd/spo/file/file-version-get.mdx +1 -1
  208. package/docs/docs/cmd/spo/file/file-version-keep.mdx +1 -1
  209. package/docs/docs/cmd/spo/file/file-version-list.mdx +1 -1
  210. package/docs/docs/cmd/spo/file/file-version-remove.mdx +1 -1
  211. package/docs/docs/cmd/spo/file/file-version-restore.mdx +1 -1
  212. package/docs/docs/cmd/spo/folder/folder-archive.mdx +1 -1
  213. package/docs/docs/cmd/spo/folder/folder-copy.mdx +1 -1
  214. package/docs/docs/cmd/spo/folder/folder-get.mdx +2 -2
  215. package/docs/docs/cmd/spo/folder/folder-retentionlabel-ensure.mdx +1 -1
  216. package/docs/docs/cmd/spo/folder/folder-retentionlabel-remove.mdx +1 -1
  217. package/docs/docs/cmd/spo/folder/folder-sharinglink-add.mdx +22 -1
  218. package/docs/docs/cmd/spo/folder/folder-sharinglink-clear.mdx +23 -0
  219. package/docs/docs/cmd/spo/folder/folder-sharinglink-get.mdx +21 -0
  220. package/docs/docs/cmd/spo/folder/folder-sharinglink-list.mdx +22 -1
  221. package/docs/docs/cmd/spo/folder/folder-sharinglink-remove.mdx +24 -1
  222. package/docs/docs/cmd/spo/folder/folder-sharinglink-set.mdx +21 -0
  223. package/docs/docs/cmd/spo/folder/folder-unarchive.mdx +76 -0
  224. package/docs/docs/cmd/spo/listitem/listitem-get.mdx +0 -6
  225. package/docs/docs/cmd/spo/navigation/navigation-node-add.mdx +45 -30
  226. package/docs/docs/cmd/spo/navigation/navigation-node-get.mdx +64 -42
  227. package/docs/docs/cmd/spo/navigation/navigation-node-set.mdx +10 -8
  228. package/docs/docs/cmd/spo/page/page-unpublish.mdx +63 -0
  229. package/docs/docs/cmd/spp/model/model-get.mdx +1 -1
  230. package/docs/docs/cmd/spp/model/model-remove.mdx +1 -1
  231. package/docs/docs/cmd/teams/tab/tab-add.mdx +19 -0
  232. package/docs/docs/cmd/teams/tab/tab-get.mdx +19 -0
  233. package/docs/docs/cmd/teams/tab/tab-list.mdx +19 -0
  234. package/docs/docs/cmd/teams/tab/tab-remove.mdx +21 -0
  235. package/docs/docs/cmd/viva/engage/engage-message-add.mdx +17 -0
  236. package/docs/docs/cmd/viva/engage/engage-message-get.mdx +17 -0
  237. package/docs/docs/cmd/viva/engage/engage-message-list.mdx +17 -0
  238. package/docs/docs/cmd/viva/engage/engage-message-remove.mdx +19 -0
  239. package/npm-shrinkwrap.json +324 -3116
  240. package/package.json +18 -35
  241. package/dist/appInsights.js +0 -43
@@ -1,17 +1,21 @@
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 _SpoHubSiteRightsRevokeCommand_instances, _SpoHubSiteRightsRevokeCommand_initTelemetry, _SpoHubSiteRightsRevokeCommand_initOptions, _SpoHubSiteRightsRevokeCommand_initValidators;
1
+ import { z } from 'zod';
7
2
  import { cli } from '../../../../cli/cli.js';
8
3
  import config from '../../../../config.js';
4
+ import { globalOptionsZod } from '../../../../Command.js';
9
5
  import request from '../../../../request.js';
10
6
  import { formatting } from '../../../../utils/formatting.js';
11
7
  import { spo } from '../../../../utils/spo.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
+ hubSiteUrl: z.string().refine(url => validation.isValidSharePointUrl(url) === true, {
14
+ error: e => `'${e.input}' is not a valid SharePoint Online site URL.`
15
+ }).alias('u'),
16
+ principals: z.string().alias('p'),
17
+ force: z.boolean().optional().alias('f')
18
+ });
15
19
  class SpoHubSiteRightsRevokeCommand extends SpoCommand {
16
20
  get name() {
17
21
  return commands.HUBSITE_RIGHTS_REVOKE;
@@ -19,12 +23,8 @@ class SpoHubSiteRightsRevokeCommand extends SpoCommand {
19
23
  get description() {
20
24
  return 'Revokes rights to join sites to the specified hub site for one or more principals';
21
25
  }
22
- constructor() {
23
- super();
24
- _SpoHubSiteRightsRevokeCommand_instances.add(this);
25
- __classPrivateFieldGet(this, _SpoHubSiteRightsRevokeCommand_instances, "m", _SpoHubSiteRightsRevokeCommand_initTelemetry).call(this);
26
- __classPrivateFieldGet(this, _SpoHubSiteRightsRevokeCommand_instances, "m", _SpoHubSiteRightsRevokeCommand_initOptions).call(this);
27
- __classPrivateFieldGet(this, _SpoHubSiteRightsRevokeCommand_instances, "m", _SpoHubSiteRightsRevokeCommand_initValidators).call(this);
26
+ get schema() {
27
+ return options;
28
28
  }
29
29
  async commandAction(logger, args) {
30
30
  const revokeRights = async () => {
@@ -67,22 +67,5 @@ class SpoHubSiteRightsRevokeCommand extends SpoCommand {
67
67
  }
68
68
  }
69
69
  }
70
- _SpoHubSiteRightsRevokeCommand_instances = new WeakSet(), _SpoHubSiteRightsRevokeCommand_initTelemetry = function _SpoHubSiteRightsRevokeCommand_initTelemetry() {
71
- this.telemetry.push((args) => {
72
- Object.assign(this.telemetryProperties, {
73
- force: (!(!args.options.force)).toString()
74
- });
75
- });
76
- }, _SpoHubSiteRightsRevokeCommand_initOptions = function _SpoHubSiteRightsRevokeCommand_initOptions() {
77
- this.options.unshift({
78
- option: '-u, --hubSiteUrl <hubSiteUrl>'
79
- }, {
80
- option: '-p, --principals <principals>'
81
- }, {
82
- option: '-f, --force'
83
- });
84
- }, _SpoHubSiteRightsRevokeCommand_initValidators = function _SpoHubSiteRightsRevokeCommand_initValidators() {
85
- this.validators.push(async (args) => validation.isValidSharePointUrl(args.options.hubSiteUrl));
86
- };
87
70
  export default new SpoHubSiteRightsRevokeCommand();
88
71
  //# sourceMappingURL=hubsite-rights-revoke.js.map
@@ -1,16 +1,21 @@
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 _SpoHubSiteSetCommand_instances, _SpoHubSiteSetCommand_initTelemetry, _SpoHubSiteSetCommand_initOptions, _SpoHubSiteSetCommand_initValidators, _SpoHubSiteSetCommand_initTypes;
1
+ import { z } from 'zod';
7
2
  import config from '../../../../config.js';
3
+ import { globalOptionsZod } from '../../../../Command.js';
8
4
  import request from '../../../../request.js';
9
5
  import { formatting } from '../../../../utils/formatting.js';
10
6
  import { spo } from '../../../../utils/spo.js';
11
7
  import { validation } from '../../../../utils/validation.js';
12
8
  import SpoCommand from '../../../base/SpoCommand.js';
13
9
  import commands from '../../commands.js';
10
+ export const options = z.strictObject({
11
+ ...globalOptionsZod.shape,
12
+ id: z.string().refine(id => validation.isValidGuid(id), {
13
+ error: e => `${e.input} is not a valid GUID`
14
+ }).alias('i'),
15
+ title: z.string().optional().alias('t'),
16
+ description: z.string().optional().alias('d'),
17
+ logoUrl: z.string().optional().alias('l')
18
+ });
14
19
  class SpoHubSiteSetCommand extends SpoCommand {
15
20
  get name() {
16
21
  return commands.HUBSITE_SET;
@@ -18,13 +23,14 @@ class SpoHubSiteSetCommand extends SpoCommand {
18
23
  get description() {
19
24
  return 'Updates properties of the specified hub site';
20
25
  }
21
- constructor() {
22
- super();
23
- _SpoHubSiteSetCommand_instances.add(this);
24
- __classPrivateFieldGet(this, _SpoHubSiteSetCommand_instances, "m", _SpoHubSiteSetCommand_initTelemetry).call(this);
25
- __classPrivateFieldGet(this, _SpoHubSiteSetCommand_instances, "m", _SpoHubSiteSetCommand_initOptions).call(this);
26
- __classPrivateFieldGet(this, _SpoHubSiteSetCommand_instances, "m", _SpoHubSiteSetCommand_initValidators).call(this);
27
- __classPrivateFieldGet(this, _SpoHubSiteSetCommand_instances, "m", _SpoHubSiteSetCommand_initTypes).call(this);
26
+ get schema() {
27
+ return options;
28
+ }
29
+ getRefinedSchema(schema) {
30
+ return schema
31
+ .refine(opts => opts.title !== undefined || opts.description !== undefined || opts.logoUrl !== undefined, {
32
+ error: 'Specify title, description or logoUrl to update'
33
+ });
28
34
  }
29
35
  async commandAction(logger, args) {
30
36
  try {
@@ -62,38 +68,5 @@ class SpoHubSiteSetCommand extends SpoCommand {
62
68
  }
63
69
  }
64
70
  }
65
- _SpoHubSiteSetCommand_instances = new WeakSet(), _SpoHubSiteSetCommand_initTelemetry = function _SpoHubSiteSetCommand_initTelemetry() {
66
- this.telemetry.push((args) => {
67
- Object.assign(this.telemetryProperties, {
68
- title: typeof args.options.title === 'string',
69
- description: typeof args.options.description === 'string',
70
- logoUrl: typeof args.options.logoUrl === 'string'
71
- });
72
- });
73
- }, _SpoHubSiteSetCommand_initOptions = function _SpoHubSiteSetCommand_initOptions() {
74
- this.options.unshift({
75
- option: '-i, --id <id>'
76
- }, {
77
- option: '-t, --title [title]'
78
- }, {
79
- option: '-d, --description [description]'
80
- }, {
81
- option: '-l, --logoUrl [logoUrl]'
82
- });
83
- }, _SpoHubSiteSetCommand_initValidators = function _SpoHubSiteSetCommand_initValidators() {
84
- this.validators.push(async (args) => {
85
- if (!validation.isValidGuid(args.options.id)) {
86
- return `${args.options.id} is not a valid GUID`;
87
- }
88
- if (!args.options.title &&
89
- !args.options.description &&
90
- !args.options.logoUrl) {
91
- return 'Specify title, description or logoUrl to update';
92
- }
93
- return true;
94
- });
95
- }, _SpoHubSiteSetCommand_initTypes = function _SpoHubSiteSetCommand_initTypes() {
96
- this.types.string.push('t', 'title', 'd', 'description', 'l', 'logoUrl');
97
- };
98
71
  export default new SpoHubSiteSetCommand();
99
72
  //# sourceMappingURL=hubsite-set.js.map
@@ -1,15 +1,18 @@
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 _SpoHubSiteUnregisterCommand_instances, _SpoHubSiteUnregisterCommand_initTelemetry, _SpoHubSiteUnregisterCommand_initOptions, _SpoHubSiteUnregisterCommand_initValidators;
1
+ import { z } from 'zod';
7
2
  import { cli } from '../../../../cli/cli.js';
3
+ import { globalOptionsZod } from '../../../../Command.js';
8
4
  import request from '../../../../request.js';
9
5
  import { spo } from '../../../../utils/spo.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
+ url: z.string().refine(url => validation.isValidSharePointUrl(url) === true, {
12
+ error: e => `'${e.input}' is not a valid SharePoint Online site URL.`
13
+ }).alias('u'),
14
+ force: z.boolean().optional().alias('f')
15
+ });
13
16
  class SpoHubSiteUnregisterCommand extends SpoCommand {
14
17
  get name() {
15
18
  return commands.HUBSITE_UNREGISTER;
@@ -17,12 +20,8 @@ class SpoHubSiteUnregisterCommand extends SpoCommand {
17
20
  get description() {
18
21
  return 'Unregisters the specified site collection as a hub site';
19
22
  }
20
- constructor() {
21
- super();
22
- _SpoHubSiteUnregisterCommand_instances.add(this);
23
- __classPrivateFieldGet(this, _SpoHubSiteUnregisterCommand_instances, "m", _SpoHubSiteUnregisterCommand_initTelemetry).call(this);
24
- __classPrivateFieldGet(this, _SpoHubSiteUnregisterCommand_instances, "m", _SpoHubSiteUnregisterCommand_initOptions).call(this);
25
- __classPrivateFieldGet(this, _SpoHubSiteUnregisterCommand_instances, "m", _SpoHubSiteUnregisterCommand_initValidators).call(this);
23
+ get schema() {
24
+ return options;
26
25
  }
27
26
  async commandAction(logger, args) {
28
27
  const unregisterHubSite = async () => {
@@ -56,20 +55,5 @@ class SpoHubSiteUnregisterCommand extends SpoCommand {
56
55
  }
57
56
  }
58
57
  }
59
- _SpoHubSiteUnregisterCommand_instances = new WeakSet(), _SpoHubSiteUnregisterCommand_initTelemetry = function _SpoHubSiteUnregisterCommand_initTelemetry() {
60
- this.telemetry.push((args) => {
61
- Object.assign(this.telemetryProperties, {
62
- force: args.options.force || false
63
- });
64
- });
65
- }, _SpoHubSiteUnregisterCommand_initOptions = function _SpoHubSiteUnregisterCommand_initOptions() {
66
- this.options.unshift({
67
- option: '-u, --url <url>'
68
- }, {
69
- option: '-f, --force'
70
- });
71
- }, _SpoHubSiteUnregisterCommand_initValidators = function _SpoHubSiteUnregisterCommand_initValidators() {
72
- this.validators.push(async (args) => validation.isValidSharePointUrl(args.options.url));
73
- };
74
58
  export default new SpoHubSiteUnregisterCommand();
75
59
  //# sourceMappingURL=hubsite-unregister.js.map
@@ -1,10 +1,6 @@
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 _SpoListItemAddCommand_instances, _SpoListItemAddCommand_initTelemetry, _SpoListItemAddCommand_initOptions, _SpoListItemAddCommand_initValidators, _SpoListItemAddCommand_initTypes, _SpoListItemAddCommand_initOptionSets;
7
1
  import os from 'os';
2
+ import { z } from 'zod';
3
+ import { globalOptionsZod } from '../../../../Command.js';
8
4
  import request from '../../../../request.js';
9
5
  import { basic } from '../../../../utils/basic.js';
10
6
  import { formatting } from '../../../../utils/formatting.js';
@@ -13,6 +9,19 @@ import { urlUtil } from '../../../../utils/urlUtil.js';
13
9
  import { validation } from '../../../../utils/validation.js';
14
10
  import SpoCommand from '../../../base/SpoCommand.js';
15
11
  import commands from '../../commands.js';
12
+ export const options = z.object({
13
+ ...globalOptionsZod.shape,
14
+ webUrl: z.string().refine(url => validation.isValidSharePointUrl(url) === true, {
15
+ error: e => `'${e.input}' is not a valid SharePoint Online site URL.`
16
+ }).alias('u'),
17
+ listId: z.string().refine(id => validation.isValidGuid(id), {
18
+ error: e => `${e.input} in option listId is not a valid GUID`
19
+ }).optional().alias('l'),
20
+ listTitle: z.string().optional().alias('t'),
21
+ listUrl: z.string().optional(),
22
+ contentType: z.string().optional().alias('c'),
23
+ folder: z.string().optional()
24
+ }).catchall(z.unknown());
16
25
  class SpoListItemAddCommand extends SpoCommand {
17
26
  allowUnknownOptions() {
18
27
  return true;
@@ -23,14 +32,18 @@ class SpoListItemAddCommand extends SpoCommand {
23
32
  get description() {
24
33
  return 'Creates a list item in the specified list';
25
34
  }
26
- constructor() {
27
- super();
28
- _SpoListItemAddCommand_instances.add(this);
29
- __classPrivateFieldGet(this, _SpoListItemAddCommand_instances, "m", _SpoListItemAddCommand_initTelemetry).call(this);
30
- __classPrivateFieldGet(this, _SpoListItemAddCommand_instances, "m", _SpoListItemAddCommand_initOptions).call(this);
31
- __classPrivateFieldGet(this, _SpoListItemAddCommand_instances, "m", _SpoListItemAddCommand_initValidators).call(this);
32
- __classPrivateFieldGet(this, _SpoListItemAddCommand_instances, "m", _SpoListItemAddCommand_initTypes).call(this);
33
- __classPrivateFieldGet(this, _SpoListItemAddCommand_instances, "m", _SpoListItemAddCommand_initOptionSets).call(this);
35
+ get schema() {
36
+ return options;
37
+ }
38
+ getRefinedSchema(schema) {
39
+ return schema
40
+ .refine(opts => [opts.listId, opts.listTitle, opts.listUrl].filter(o => o !== undefined).length === 1, {
41
+ error: 'Use one of the following options: listId, listTitle, listUrl.',
42
+ params: {
43
+ customCode: 'optionSet',
44
+ options: ['listId', 'listTitle', 'listUrl']
45
+ }
46
+ });
34
47
  }
35
48
  async commandAction(logger, args) {
36
49
  try {
@@ -177,46 +190,5 @@ class SpoListItemAddCommand extends SpoCommand {
177
190
  return requestBody;
178
191
  }
179
192
  }
180
- _SpoListItemAddCommand_instances = new WeakSet(), _SpoListItemAddCommand_initTelemetry = function _SpoListItemAddCommand_initTelemetry() {
181
- this.telemetry.push((args) => {
182
- Object.assign(this.telemetryProperties, {
183
- listId: typeof args.options.listId !== 'undefined',
184
- listTitle: typeof args.options.listTitle !== 'undefined',
185
- listUrl: typeof args.options.listUrl !== 'undefined',
186
- contentType: typeof args.options.contentType !== 'undefined',
187
- folder: typeof args.options.folder !== 'undefined'
188
- });
189
- });
190
- }, _SpoListItemAddCommand_initOptions = function _SpoListItemAddCommand_initOptions() {
191
- this.options.unshift({
192
- option: '-u, --webUrl <webUrl>'
193
- }, {
194
- option: '-l, --listId [listId]'
195
- }, {
196
- option: '-t, --listTitle [listTitle]'
197
- }, {
198
- option: '--listUrl [listUrl]'
199
- }, {
200
- option: '-c, --contentType [contentType]'
201
- }, {
202
- option: '--folder [folder]'
203
- });
204
- }, _SpoListItemAddCommand_initValidators = function _SpoListItemAddCommand_initValidators() {
205
- this.validators.push(async (args) => {
206
- const isValidSharePointUrl = validation.isValidSharePointUrl(args.options.webUrl);
207
- if (isValidSharePointUrl !== true) {
208
- return isValidSharePointUrl;
209
- }
210
- if (args.options.listId &&
211
- !validation.isValidGuid(args.options.listId)) {
212
- return `${args.options.listId} in option listId is not a valid GUID`;
213
- }
214
- return true;
215
- });
216
- }, _SpoListItemAddCommand_initTypes = function _SpoListItemAddCommand_initTypes() {
217
- this.types.string.push('webUrl', 'listId', 'listTitle', 'listUrl', 'contentType', 'folder');
218
- }, _SpoListItemAddCommand_initOptionSets = function _SpoListItemAddCommand_initOptionSets() {
219
- this.optionSets.push({ options: ['listId', 'listTitle', 'listUrl'] });
220
- };
221
193
  export default new SpoListItemAddCommand();
222
194
  //# sourceMappingURL=listitem-add.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 _SpoListItemAttachmentAddCommand_instances, _SpoListItemAttachmentAddCommand_initTelemetry, _SpoListItemAttachmentAddCommand_initOptions, _SpoListItemAttachmentAddCommand_initValidators, _SpoListItemAttachmentAddCommand_initOptionSets;
1
+ import { z } from 'zod';
2
+ import { globalOptionsZod } from '../../../../Command.js';
7
3
  import request from '../../../../request.js';
8
4
  import { formatting } from '../../../../utils/formatting.js';
9
5
  import { urlUtil } from '../../../../utils/urlUtil.js';
@@ -11,6 +7,22 @@ import { validation } from '../../../../utils/validation.js';
11
7
  import SpoCommand from '../../../base/SpoCommand.js';
12
8
  import commands from '../../commands.js';
13
9
  import fs from 'fs';
10
+ export const options = z.strictObject({
11
+ ...globalOptionsZod.shape,
12
+ webUrl: z.string().refine(url => validation.isValidSharePointUrl(url) === true, {
13
+ error: e => `'${e.input}' is not a valid SharePoint Online site URL.`
14
+ }).alias('u'),
15
+ listId: z.string().refine(id => validation.isValidGuid(id), {
16
+ error: e => `${e.input} in option listId is not a valid GUID.`
17
+ }).optional(),
18
+ listTitle: z.string().optional(),
19
+ listUrl: z.string().optional(),
20
+ listItemId: z.number().int().positive(),
21
+ filePath: z.string().refine(path => fs.existsSync(path), {
22
+ error: e => `File with path '${e.input}' was not found.`
23
+ }).alias('p'),
24
+ fileName: z.string().optional().alias('n')
25
+ });
14
26
  class SpoListItemAttachmentAddCommand extends SpoCommand {
15
27
  get name() {
16
28
  return commands.LISTITEM_ATTACHMENT_ADD;
@@ -18,13 +30,18 @@ class SpoListItemAttachmentAddCommand extends SpoCommand {
18
30
  get description() {
19
31
  return 'Adds an attachment to a list item';
20
32
  }
21
- constructor() {
22
- super();
23
- _SpoListItemAttachmentAddCommand_instances.add(this);
24
- __classPrivateFieldGet(this, _SpoListItemAttachmentAddCommand_instances, "m", _SpoListItemAttachmentAddCommand_initTelemetry).call(this);
25
- __classPrivateFieldGet(this, _SpoListItemAttachmentAddCommand_instances, "m", _SpoListItemAttachmentAddCommand_initOptions).call(this);
26
- __classPrivateFieldGet(this, _SpoListItemAttachmentAddCommand_instances, "m", _SpoListItemAttachmentAddCommand_initValidators).call(this);
27
- __classPrivateFieldGet(this, _SpoListItemAttachmentAddCommand_instances, "m", _SpoListItemAttachmentAddCommand_initOptionSets).call(this);
33
+ get schema() {
34
+ return options;
35
+ }
36
+ getRefinedSchema(schema) {
37
+ return schema
38
+ .refine(opts => [opts.listId, opts.listTitle, opts.listUrl].filter(o => o !== undefined).length === 1, {
39
+ error: 'Use one of the following options: listId, listTitle, listUrl.',
40
+ params: {
41
+ customCode: 'optionSet',
42
+ options: ['listId', 'listTitle', 'listUrl']
43
+ }
44
+ });
28
45
  }
29
46
  async commandAction(logger, args) {
30
47
  if (this.verbose) {
@@ -78,50 +95,5 @@ class SpoListItemAttachmentAddCommand extends SpoCommand {
78
95
  }
79
96
  }
80
97
  }
81
- _SpoListItemAttachmentAddCommand_instances = new WeakSet(), _SpoListItemAttachmentAddCommand_initTelemetry = function _SpoListItemAttachmentAddCommand_initTelemetry() {
82
- this.telemetry.push((args) => {
83
- Object.assign(this.telemetryProperties, {
84
- listId: typeof args.options.listId !== 'undefined',
85
- listTitle: typeof args.options.listTitle !== 'undefined',
86
- listUrl: typeof args.options.listUrl !== 'undefined',
87
- fileName: typeof args.options.fileName !== 'undefined'
88
- });
89
- });
90
- }, _SpoListItemAttachmentAddCommand_initOptions = function _SpoListItemAttachmentAddCommand_initOptions() {
91
- this.options.unshift({
92
- option: '-u, --webUrl <webUrl>'
93
- }, {
94
- option: '--listId [listId]'
95
- }, {
96
- option: '--listTitle [listTitle]'
97
- }, {
98
- option: '--listUrl [listUrl]'
99
- }, {
100
- option: '--listItemId <listItemId>'
101
- }, {
102
- option: '-p, --filePath <filePath>'
103
- }, {
104
- option: '-n, --fileName [fileName]'
105
- });
106
- }, _SpoListItemAttachmentAddCommand_initValidators = function _SpoListItemAttachmentAddCommand_initValidators() {
107
- this.validators.push(async (args) => {
108
- const isValidSharePointUrl = validation.isValidSharePointUrl(args.options.webUrl);
109
- if (isValidSharePointUrl !== true) {
110
- return isValidSharePointUrl;
111
- }
112
- if (isNaN(args.options.listItemId)) {
113
- return `${args.options.listItemId} in option listItemId is not a valid number.`;
114
- }
115
- if (args.options.listId && !validation.isValidGuid(args.options.listId)) {
116
- return `${args.options.listId} in option listId is not a valid GUID.`;
117
- }
118
- if (!fs.existsSync(args.options.filePath)) {
119
- return `File with path '${args.options.filePath}' was not found.`;
120
- }
121
- return true;
122
- });
123
- }, _SpoListItemAttachmentAddCommand_initOptionSets = function _SpoListItemAttachmentAddCommand_initOptionSets() {
124
- this.optionSets.push({ options: ['listId', 'listTitle', 'listUrl'] });
125
- };
126
98
  export default new SpoListItemAttachmentAddCommand();
127
99
  //# sourceMappingURL=listitem-attachment-add.js.map
@@ -1,15 +1,24 @@
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 _SpoListItemAttachmentGetCommand_instances, _SpoListItemAttachmentGetCommand_initTelemetry, _SpoListItemAttachmentGetCommand_initOptions, _SpoListItemAttachmentGetCommand_initValidators, _SpoListItemAttachmentGetCommand_initOptionSets;
1
+ import { z } from 'zod';
2
+ import { globalOptionsZod } from '../../../../Command.js';
7
3
  import request from '../../../../request.js';
8
4
  import { formatting } from '../../../../utils/formatting.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
+ webUrl: z.string().refine(url => validation.isValidSharePointUrl(url) === true, {
12
+ error: e => `'${e.input}' is not a valid SharePoint Online site URL.`
13
+ }).alias('u'),
14
+ listId: z.string().refine(id => validation.isValidGuid(id), {
15
+ error: e => `${e.input} in option listId is not a valid GUID.`
16
+ }).optional(),
17
+ listTitle: z.string().optional(),
18
+ listUrl: z.string().optional(),
19
+ listItemId: z.number().int().positive(),
20
+ fileName: z.string().alias('n')
21
+ });
13
22
  class SpoListItemAttachmentGetCommand extends SpoCommand {
14
23
  get name() {
15
24
  return commands.LISTITEM_ATTACHMENT_GET;
@@ -17,13 +26,18 @@ class SpoListItemAttachmentGetCommand extends SpoCommand {
17
26
  get description() {
18
27
  return 'Gets an attachment from a list item';
19
28
  }
20
- constructor() {
21
- super();
22
- _SpoListItemAttachmentGetCommand_instances.add(this);
23
- __classPrivateFieldGet(this, _SpoListItemAttachmentGetCommand_instances, "m", _SpoListItemAttachmentGetCommand_initTelemetry).call(this);
24
- __classPrivateFieldGet(this, _SpoListItemAttachmentGetCommand_instances, "m", _SpoListItemAttachmentGetCommand_initOptions).call(this);
25
- __classPrivateFieldGet(this, _SpoListItemAttachmentGetCommand_instances, "m", _SpoListItemAttachmentGetCommand_initValidators).call(this);
26
- __classPrivateFieldGet(this, _SpoListItemAttachmentGetCommand_instances, "m", _SpoListItemAttachmentGetCommand_initOptionSets).call(this);
29
+ get schema() {
30
+ return options;
31
+ }
32
+ getRefinedSchema(schema) {
33
+ return schema
34
+ .refine(opts => [opts.listId, opts.listTitle, opts.listUrl].filter(o => o !== undefined).length === 1, {
35
+ error: 'Use one of the following options: listId, listTitle, listUrl.',
36
+ params: {
37
+ customCode: 'optionSet',
38
+ options: ['listId', 'listTitle', 'listUrl']
39
+ }
40
+ });
27
41
  }
28
42
  async commandAction(logger, args) {
29
43
  let requestUrl = `${args.options.webUrl}/_api/web`;
@@ -54,44 +68,5 @@ class SpoListItemAttachmentGetCommand extends SpoCommand {
54
68
  }
55
69
  }
56
70
  }
57
- _SpoListItemAttachmentGetCommand_instances = new WeakSet(), _SpoListItemAttachmentGetCommand_initTelemetry = function _SpoListItemAttachmentGetCommand_initTelemetry() {
58
- this.telemetry.push((args) => {
59
- Object.assign(this.telemetryProperties, {
60
- listId: typeof args.options.listId !== 'undefined',
61
- listTitle: typeof args.options.listTitle !== 'undefined',
62
- listUrl: typeof args.options.listUrl !== 'undefined'
63
- });
64
- });
65
- }, _SpoListItemAttachmentGetCommand_initOptions = function _SpoListItemAttachmentGetCommand_initOptions() {
66
- this.options.unshift({
67
- option: '-u, --webUrl <webUrl>'
68
- }, {
69
- option: '--listId [listId]'
70
- }, {
71
- option: '--listTitle [listTitle]'
72
- }, {
73
- option: '--listUrl [listUrl]'
74
- }, {
75
- option: '--listItemId <listItemId>'
76
- }, {
77
- option: '-n, --fileName <fileName>'
78
- });
79
- }, _SpoListItemAttachmentGetCommand_initValidators = function _SpoListItemAttachmentGetCommand_initValidators() {
80
- this.validators.push(async (args) => {
81
- const isValidSharePointUrl = validation.isValidSharePointUrl(args.options.webUrl);
82
- if (isValidSharePointUrl !== true) {
83
- return isValidSharePointUrl;
84
- }
85
- if (args.options.listId && !validation.isValidGuid(args.options.listId)) {
86
- return `${args.options.listId} in option listId is not a valid GUID.`;
87
- }
88
- if (isNaN(args.options.listItemId)) {
89
- return `${args.options.listItemId} is not a number.`;
90
- }
91
- return true;
92
- });
93
- }, _SpoListItemAttachmentGetCommand_initOptionSets = function _SpoListItemAttachmentGetCommand_initOptionSets() {
94
- this.optionSets.push({ options: ['listId', 'listTitle', 'listUrl'] });
95
- };
96
71
  export default new SpoListItemAttachmentGetCommand();
97
72
  //# sourceMappingURL=listitem-attachment-get.js.map
@@ -1,15 +1,23 @@
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 _SpoListItemAttachmentListCommand_instances, _SpoListItemAttachmentListCommand_initTelemetry, _SpoListItemAttachmentListCommand_initOptions, _SpoListItemAttachmentListCommand_initValidators, _SpoListItemAttachmentListCommand_initOptionSets;
1
+ import { z } from 'zod';
2
+ import { globalOptionsZod } from '../../../../Command.js';
7
3
  import request from '../../../../request.js';
8
4
  import { formatting } from '../../../../utils/formatting.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
+ webUrl: z.string().refine(url => validation.isValidSharePointUrl(url) === true, {
12
+ error: e => `'${e.input}' is not a valid SharePoint Online site URL.`
13
+ }).alias('u'),
14
+ listId: z.string().refine(id => validation.isValidGuid(id), {
15
+ error: e => `${e.input} in option listId is not a valid GUID`
16
+ }).optional(),
17
+ listTitle: z.string().optional(),
18
+ listUrl: z.string().optional(),
19
+ listItemId: z.number().int().positive()
20
+ });
13
21
  class SpoListItemAttachmentListCommand extends SpoCommand {
14
22
  get name() {
15
23
  return commands.LISTITEM_ATTACHMENT_LIST;
@@ -17,13 +25,18 @@ class SpoListItemAttachmentListCommand extends SpoCommand {
17
25
  get description() {
18
26
  return 'Gets the attachments associated to a list item';
19
27
  }
20
- constructor() {
21
- super();
22
- _SpoListItemAttachmentListCommand_instances.add(this);
23
- __classPrivateFieldGet(this, _SpoListItemAttachmentListCommand_instances, "m", _SpoListItemAttachmentListCommand_initTelemetry).call(this);
24
- __classPrivateFieldGet(this, _SpoListItemAttachmentListCommand_instances, "m", _SpoListItemAttachmentListCommand_initOptions).call(this);
25
- __classPrivateFieldGet(this, _SpoListItemAttachmentListCommand_instances, "m", _SpoListItemAttachmentListCommand_initValidators).call(this);
26
- __classPrivateFieldGet(this, _SpoListItemAttachmentListCommand_instances, "m", _SpoListItemAttachmentListCommand_initOptionSets).call(this);
28
+ get schema() {
29
+ return options;
30
+ }
31
+ getRefinedSchema(schema) {
32
+ return schema
33
+ .refine(opts => [opts.listId, opts.listTitle, opts.listUrl].filter(o => o !== undefined).length === 1, {
34
+ error: 'Use one of the following options: listId, listTitle, listUrl.',
35
+ params: {
36
+ customCode: 'optionSet',
37
+ options: ['listId', 'listTitle', 'listUrl']
38
+ }
39
+ });
27
40
  }
28
41
  defaultProperties() {
29
42
  return ['FileName', 'ServerRelativeUrl'];
@@ -57,42 +70,5 @@ class SpoListItemAttachmentListCommand extends SpoCommand {
57
70
  }
58
71
  }
59
72
  }
60
- _SpoListItemAttachmentListCommand_instances = new WeakSet(), _SpoListItemAttachmentListCommand_initTelemetry = function _SpoListItemAttachmentListCommand_initTelemetry() {
61
- this.telemetry.push((args) => {
62
- Object.assign(this.telemetryProperties, {
63
- listId: typeof args.options.listId !== 'undefined',
64
- listTitle: typeof args.options.listTitle !== 'undefined',
65
- listUrl: typeof args.options.listUrl !== 'undefined'
66
- });
67
- });
68
- }, _SpoListItemAttachmentListCommand_initOptions = function _SpoListItemAttachmentListCommand_initOptions() {
69
- this.options.unshift({
70
- option: '-u, --webUrl <webUrl>'
71
- }, {
72
- option: '--listItemId <listItemId>'
73
- }, {
74
- option: '--listId [listId]'
75
- }, {
76
- option: '--listTitle [listTitle]'
77
- }, {
78
- option: '--listUrl [listUrl]'
79
- });
80
- }, _SpoListItemAttachmentListCommand_initValidators = function _SpoListItemAttachmentListCommand_initValidators() {
81
- this.validators.push(async (args) => {
82
- const isValidSharePointUrl = validation.isValidSharePointUrl(args.options.webUrl);
83
- if (isValidSharePointUrl !== true) {
84
- return isValidSharePointUrl;
85
- }
86
- if (args.options.listId && !validation.isValidGuid(args.options.listId)) {
87
- return `${args.options.listId} in option listId is not a valid GUID`;
88
- }
89
- if (isNaN(parseInt(args.options.listItemId))) {
90
- return `${args.options.listItemId} is not a number`;
91
- }
92
- return true;
93
- });
94
- }, _SpoListItemAttachmentListCommand_initOptionSets = function _SpoListItemAttachmentListCommand_initOptionSets() {
95
- this.optionSets.push({ options: ['listId', 'listTitle', 'listUrl'] });
96
- };
97
73
  export default new SpoListItemAttachmentListCommand();
98
74
  //# sourceMappingURL=listitem-attachment-list.js.map