@pnp/cli-microsoft365 6.0.0-beta.cd80a69 → 6.0.0-beta.d557a48

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 (261) hide show
  1. package/.eslintrc.js +4 -2
  2. package/dist/Command.js +16 -2
  3. package/dist/m365/aad/commands/app/app-add.js +40 -17
  4. package/dist/m365/aad/commands/app/app-list.js +38 -0
  5. package/dist/m365/aad/commands/user/user-guest-add.js +103 -0
  6. package/dist/m365/aad/commands.js +2 -0
  7. package/dist/m365/adaptivecard/commands/adaptivecard-send.js +4 -4
  8. package/dist/m365/base/SpoCommand.js +12 -11
  9. package/dist/m365/commands/status.js +6 -1
  10. package/dist/m365/outlook/commands/mail/mail-send.js +54 -30
  11. package/dist/m365/outlook/commands/message/message-get.js +97 -0
  12. package/dist/m365/outlook/commands.js +1 -0
  13. package/dist/m365/planner/commands/bucket/bucket-get.js +5 -8
  14. package/dist/m365/planner/commands/plan/plan-get.js +11 -31
  15. package/dist/m365/pp/commands/card/card-clone.js +122 -0
  16. package/dist/m365/pp/commands/card/card-get.js +110 -0
  17. package/dist/m365/pp/commands/card/card-remove.js +130 -0
  18. package/dist/m365/pp/commands/gateway/gateway-get.js +70 -0
  19. package/dist/m365/pp/commands/solution/solution-get.js +117 -0
  20. package/dist/m365/pp/commands.js +5 -0
  21. package/dist/m365/spfx/commands/project/project-doctor/{doctor-1.16.0-beta.1.js → doctor-1.16.0-rc.0.js} +6 -6
  22. package/dist/m365/spfx/commands/project/project-doctor.js +5 -2
  23. package/dist/m365/spfx/commands/project/project-externalize.js +4 -1
  24. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010001_YORC_version.js +2 -1
  25. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010002_YORC_isCreatingSolution.js +2 -1
  26. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010003_YORC_packageManager.js +2 -1
  27. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010004_YORC_componentType.js +2 -1
  28. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010005_YORC_environment.js +2 -1
  29. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010006_YORC_framework.js +3 -2
  30. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010007_YORC_isDomainIsolated.js +2 -1
  31. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010008_YORC_nodeVersion.js +2 -1
  32. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010009_YORC_sdkVersions_microsoft_graph_client.js +56 -0
  33. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010010_YORC_sdkVersions_teams_js.js +56 -0
  34. package/dist/m365/spfx/commands/project/project-upgrade/{upgrade-1.16.0-beta.1.js → upgrade-1.16.0-rc.0.js} +44 -28
  35. package/dist/m365/spfx/commands/project/project-upgrade.js +5 -2
  36. package/dist/m365/spfx/commands/spfx-doctor.js +6 -6
  37. package/dist/m365/spo/commands/contenttype/contenttype-add.js +82 -43
  38. package/dist/m365/spo/commands/contenttype/contenttype-field-remove.js +53 -21
  39. package/dist/m365/spo/commands/contenttype/contenttype-get.js +35 -14
  40. package/dist/m365/spo/commands/field/field-add.js +26 -1
  41. package/dist/m365/spo/commands/field/field-set.js +23 -13
  42. package/dist/m365/spo/commands/file/file-roleassignment-add.js +1 -15
  43. package/dist/m365/spo/commands/folder/folder-list.js +35 -12
  44. package/dist/m365/spo/commands/folder/folder-roleinheritance-break.js +11 -1
  45. package/dist/m365/spo/commands/folder/folder-roleinheritance-reset.js +12 -1
  46. package/dist/m365/spo/commands/hubsite/hubsite-connect.js +93 -18
  47. package/dist/m365/spo/commands/hubsite/hubsite-disconnect.js +69 -13
  48. package/dist/m365/spo/commands/list/list-roleassignment-add.js +5 -23
  49. package/dist/m365/spo/commands/list/list-roleassignment-remove.js +4 -15
  50. package/dist/m365/spo/commands/list/list-roleinheritance-break.js +14 -6
  51. package/dist/m365/spo/commands/list/list-roleinheritance-reset.js +14 -6
  52. package/dist/m365/spo/commands/list/list-set.js +31 -8
  53. package/dist/m365/spo/commands/list/list-view-field-add.js +19 -5
  54. package/dist/m365/spo/commands/list/list-view-field-remove.js +18 -4
  55. package/dist/m365/spo/commands/list/list-view-field-set.js +18 -4
  56. package/dist/m365/spo/commands/list/list-view-list.js +14 -10
  57. package/dist/m365/spo/commands/list/list-view-remove.js +17 -8
  58. package/dist/m365/spo/commands/list/list-view-set.js +19 -7
  59. package/dist/m365/spo/commands/list/list-webhook-get.js +2 -3
  60. package/dist/m365/spo/commands/list/list-webhook-list.js +4 -28
  61. package/dist/m365/spo/commands/list/list-webhook-set.js +11 -12
  62. package/dist/m365/spo/commands/listitem/listitem-add.js +24 -14
  63. package/dist/m365/spo/commands/listitem/listitem-attachment-list.js +18 -8
  64. package/dist/m365/spo/commands/listitem/listitem-get.js +18 -8
  65. package/dist/m365/spo/commands/listitem/listitem-isrecord.js +20 -10
  66. package/dist/m365/spo/commands/listitem/listitem-list.js +21 -14
  67. package/dist/m365/spo/commands/listitem/listitem-record-declare.js +19 -12
  68. package/dist/m365/spo/commands/listitem/listitem-record-undeclare.js +24 -21
  69. package/dist/m365/spo/commands/listitem/listitem-remove.js +19 -11
  70. package/dist/m365/spo/commands/listitem/listitem-roleassignment-add.js +239 -0
  71. package/dist/m365/spo/commands/listitem/listitem-roleassignment-remove.js +4 -15
  72. package/dist/m365/spo/commands/listitem/listitem-roleinheritance-break.js +13 -5
  73. package/dist/m365/spo/commands/listitem/listitem-roleinheritance-reset.js +13 -5
  74. package/dist/m365/spo/commands/listitem/listitem-set.js +52 -44
  75. package/dist/m365/spo/commands/page/page-clientsidewebpart-add.js +4 -7
  76. package/dist/m365/spo/commands/roledefinition/roledefinition-list.js +15 -2
  77. package/dist/m365/spo/commands/site/site-add.js +4 -11
  78. package/dist/m365/spo/commands/site/site-hubsite-connect.js +75 -0
  79. package/dist/m365/spo/commands/site/site-hubsite-disconnect.js +93 -0
  80. package/dist/m365/spo/commands/{hubsite/hubsite-theme-sync.js → site/site-hubsite-theme-sync.js} +11 -11
  81. package/dist/m365/spo/commands/sitedesign/sitedesign-get.js +4 -7
  82. package/dist/m365/spo/commands/web/web-roleassignment-add.js +4 -15
  83. package/dist/m365/spo/commands/web/web-roleassignment-remove.js +4 -8
  84. package/dist/m365/spo/commands/web/web-roleinheritance-break.js +100 -0
  85. package/dist/m365/spo/commands.js +5 -1
  86. package/dist/m365/teams/commands/channel/channel-get.js +2 -2
  87. package/dist/m365/teams/commands/channel/channel-remove.js +56 -39
  88. package/dist/m365/teams/commands/channel/channel-set.js +57 -19
  89. package/dist/m365/teams/commands/team/team-archive.js +4 -7
  90. package/dist/m365/teams/commands/team/team-remove.js +3 -3
  91. package/dist/m365/teams/commands/team/team-set.js +0 -7
  92. package/dist/m365/teams/commands/team/team-unarchive.js +3 -3
  93. package/dist/m365/todo/commands/list/list-get.js +89 -0
  94. package/dist/m365/todo/commands/task/task-add.js +55 -3
  95. package/dist/m365/todo/commands/task/task-get.js +108 -0
  96. package/dist/m365/todo/commands.js +2 -0
  97. package/dist/utils/md.js +8 -1
  98. package/docs/docs/_clisettings.md +18 -0
  99. package/docs/docs/cmd/aad/app/app-add.md +19 -19
  100. package/docs/docs/cmd/aad/app/app-list.md +149 -0
  101. package/docs/docs/cmd/aad/user/user-guest-add.md +107 -0
  102. package/docs/docs/cmd/adaptivecard/adaptivecard-send.md +12 -5
  103. package/docs/docs/cmd/app/app-get.md +156 -0
  104. package/docs/docs/cmd/app/app-open.md +20 -0
  105. package/docs/docs/cmd/app/permission/permission-list.md +43 -0
  106. package/docs/docs/cmd/booking/business/business-get.md +107 -0
  107. package/docs/docs/cmd/booking/business/business-list.md +34 -0
  108. package/docs/docs/cmd/graph/schemaextension/schemaextension-add.md +4 -11
  109. package/docs/docs/cmd/graph/schemaextension/schemaextension-set.md +4 -10
  110. package/docs/docs/cmd/outlook/mail/mail-send.md +13 -0
  111. package/docs/docs/cmd/outlook/message/message-get.md +48 -0
  112. package/docs/docs/cmd/pa/app/app-get.md +184 -0
  113. package/docs/docs/cmd/pa/app/app-list.md +181 -0
  114. package/docs/docs/cmd/pa/app/app-remove.md +4 -0
  115. package/docs/docs/cmd/pa/connector/connector-export.md +4 -0
  116. package/docs/docs/cmd/pa/connector/connector-list.md +89 -0
  117. package/docs/docs/cmd/pa/environment/environment-get.md +113 -0
  118. package/docs/docs/cmd/pa/environment/environment-list.md +109 -0
  119. package/docs/docs/cmd/pa/pcf/pcf-init.md +4 -0
  120. package/docs/docs/cmd/pa/solution/solution-init.md +5 -0
  121. package/docs/docs/cmd/pa/solution/solution-reference-add.md +4 -0
  122. package/docs/docs/cmd/planner/bucket/bucket-add.md +29 -0
  123. package/docs/docs/cmd/planner/bucket/bucket-get.md +29 -0
  124. package/docs/docs/cmd/planner/bucket/bucket-list.md +30 -0
  125. package/docs/docs/cmd/planner/bucket/bucket-remove.md +4 -0
  126. package/docs/docs/cmd/planner/bucket/bucket-set.md +4 -0
  127. package/docs/docs/cmd/planner/plan/plan-add.md +123 -0
  128. package/docs/docs/cmd/planner/plan/plan-get.md +77 -8
  129. package/docs/docs/cmd/planner/plan/plan-list.md +45 -0
  130. package/docs/docs/cmd/planner/plan/plan-remove.md +4 -0
  131. package/docs/docs/cmd/planner/task/task-get.md +0 -3
  132. package/docs/docs/cmd/pp/card/card-clone.md +77 -0
  133. package/docs/docs/cmd/pp/card/card-get.md +122 -0
  134. package/docs/docs/cmd/pp/card/card-list.md +71 -0
  135. package/docs/docs/cmd/pp/card/card-remove.md +82 -0
  136. package/docs/docs/cmd/pp/dataverse/dataverse-table-list.md +85 -0
  137. package/docs/docs/cmd/pp/environment/environment-get.md +308 -0
  138. package/docs/docs/cmd/pp/environment/environment-list.md +312 -0
  139. package/docs/docs/cmd/pp/gateway/gateway-get.md +56 -0
  140. package/docs/docs/cmd/pp/gateway/gateway-list.md +35 -0
  141. package/docs/docs/cmd/pp/managementapp/managementapp-add.md +23 -0
  142. package/docs/docs/cmd/pp/managementapp/managementapp-list.md +27 -0
  143. package/docs/docs/cmd/pp/solution/solution-get.md +86 -0
  144. package/docs/docs/cmd/pp/solution/solution-list.md +37 -0
  145. package/docs/docs/cmd/pp/tenant/tenant-settings-list.md +62 -0
  146. package/docs/docs/cmd/spfx/project/project-rename.md +1 -14
  147. package/docs/docs/cmd/spfx/project/project-upgrade.md +1 -1
  148. package/docs/docs/cmd/spo/contenttype/contenttype-add.md +20 -2
  149. package/docs/docs/cmd/spo/contenttype/contenttype-field-remove.md +22 -4
  150. package/docs/docs/cmd/spo/contenttype/contenttype-get.md +21 -3
  151. package/docs/docs/cmd/spo/customaction/customaction-add.md +3 -0
  152. package/docs/docs/cmd/spo/customaction/customaction-set.md +3 -2
  153. package/docs/docs/cmd/spo/field/field-add.md +20 -2
  154. package/docs/docs/cmd/spo/field/field-set.md +15 -3
  155. package/docs/docs/cmd/spo/file/file-roleassignment-add.md +9 -9
  156. package/docs/docs/cmd/spo/file/file-roleassignment-remove.md +3 -3
  157. package/docs/docs/cmd/spo/folder/folder-list.md +45 -0
  158. package/docs/docs/cmd/spo/folder/folder-roleinheritance-break.md +6 -0
  159. package/docs/docs/cmd/spo/folder/folder-roleinheritance-reset.md +6 -0
  160. package/docs/docs/cmd/spo/hubsite/hubsite-connect.md +36 -14
  161. package/docs/docs/cmd/spo/hubsite/hubsite-disconnect.md +28 -12
  162. package/docs/docs/cmd/spo/hubsite/hubsite-register.md +2 -2
  163. package/docs/docs/cmd/spo/hubsite/hubsite-unregister.md +2 -2
  164. package/docs/docs/cmd/spo/list/list-roleassignment-add.md +9 -9
  165. package/docs/docs/cmd/spo/list/list-roleassignment-remove.md +8 -8
  166. package/docs/docs/cmd/spo/list/list-roleinheritance-break.md +11 -8
  167. package/docs/docs/cmd/spo/list/list-roleinheritance-reset.md +16 -7
  168. package/docs/docs/cmd/spo/list/list-set.md +18 -6
  169. package/docs/docs/cmd/spo/list/list-view-field-add.md +14 -4
  170. package/docs/docs/cmd/spo/list/list-view-field-remove.md +11 -2
  171. package/docs/docs/cmd/spo/list/list-view-field-set.md +18 -2
  172. package/docs/docs/cmd/spo/list/list-view-list.md +16 -7
  173. package/docs/docs/cmd/spo/list/list-view-remove.md +12 -3
  174. package/docs/docs/cmd/spo/list/list-view-set.md +20 -6
  175. package/docs/docs/cmd/spo/list/list-webhook-get.md +1 -1
  176. package/docs/docs/cmd/spo/list/list-webhook-list.md +3 -9
  177. package/docs/docs/cmd/spo/list/list-webhook-set.md +11 -4
  178. package/docs/docs/cmd/spo/listitem/listitem-add.md +11 -2
  179. package/docs/docs/cmd/spo/listitem/listitem-attachment-list.md +11 -2
  180. package/docs/docs/cmd/spo/listitem/listitem-get.md +11 -2
  181. package/docs/docs/cmd/spo/listitem/listitem-isrecord.md +12 -2
  182. package/docs/docs/cmd/spo/listitem/listitem-list.md +17 -8
  183. package/docs/docs/cmd/spo/listitem/listitem-record-declare.md +7 -4
  184. package/docs/docs/cmd/spo/listitem/listitem-record-undeclare.md +11 -2
  185. package/docs/docs/cmd/spo/listitem/listitem-remove.md +11 -2
  186. package/docs/docs/cmd/spo/listitem/listitem-roleassignment-add.md +81 -0
  187. package/docs/docs/cmd/spo/listitem/listitem-roleassignment-remove.md +8 -8
  188. package/docs/docs/cmd/spo/listitem/listitem-roleinheritance-break.md +7 -4
  189. package/docs/docs/cmd/spo/listitem/listitem-roleinheritance-reset.md +8 -5
  190. package/docs/docs/cmd/spo/listitem/listitem-set.md +7 -4
  191. package/docs/docs/cmd/spo/page/page-clientsidewebpart-add.md +14 -19
  192. package/docs/docs/cmd/spo/page/page-control-set.md +2 -1
  193. package/docs/docs/cmd/spo/site/site-add.md +0 -3
  194. package/docs/docs/cmd/spo/site/site-hubsite-connect.md +40 -0
  195. package/docs/docs/cmd/spo/site/site-hubsite-disconnect.md +42 -0
  196. package/docs/docs/cmd/spo/{hubsite/hubsite-theme-sync.md → site/site-hubsite-theme-sync.md} +5 -5
  197. package/docs/docs/cmd/spo/sitedesign/sitedesign-get.md +2 -2
  198. package/docs/docs/cmd/spo/term/term-add.md +5 -0
  199. package/docs/docs/cmd/spo/term/term-set-add.md +6 -1
  200. package/docs/docs/cmd/spo/web/web-roleassignment-add.md +6 -6
  201. package/docs/docs/cmd/spo/web/web-roleassignment-remove.md +4 -4
  202. package/docs/docs/cmd/spo/web/web-roleinheritance-break.md +44 -0
  203. package/docs/docs/cmd/teams/channel/channel-get.md +7 -7
  204. package/docs/docs/cmd/teams/channel/channel-remove.md +12 -9
  205. package/docs/docs/cmd/teams/channel/channel-set.md +13 -6
  206. package/docs/docs/cmd/teams/message/message-get.md +80 -0
  207. package/docs/docs/cmd/teams/message/message-list.md +63 -0
  208. package/docs/docs/cmd/teams/message/message-reply-list.md +63 -0
  209. package/docs/docs/cmd/teams/messagingsettings/messagingsettings-list.md +31 -0
  210. package/docs/docs/cmd/teams/messagingsettings/messagingsettings-set.md +4 -0
  211. package/docs/docs/cmd/teams/report/report-deviceusagedistributionusercounts.md +35 -0
  212. package/docs/docs/cmd/teams/report/report-deviceusageusercounts.md +36 -0
  213. package/docs/docs/cmd/teams/report/report-deviceusageuserdetail.md +41 -0
  214. package/docs/docs/cmd/teams/report/report-directroutingcalls.md +49 -0
  215. package/docs/docs/cmd/teams/report/report-pstncalls.md +49 -0
  216. package/docs/docs/cmd/teams/report/report-useractivitycounts.md +39 -0
  217. package/docs/docs/cmd/teams/report/report-useractivityusercounts.md +33 -0
  218. package/docs/docs/cmd/teams/report/report-useractivityuserdetail.md +58 -0
  219. package/docs/docs/cmd/teams/tab/tab-add.md +35 -0
  220. package/docs/docs/cmd/teams/tab/tab-get.md +35 -0
  221. package/docs/docs/cmd/teams/tab/tab-list.md +43 -0
  222. package/docs/docs/cmd/teams/tab/tab-remove.md +4 -0
  223. package/docs/docs/cmd/teams/team/team-add.md +145 -0
  224. package/docs/docs/cmd/teams/team/team-archive.md +7 -3
  225. package/docs/docs/cmd/teams/team/team-clone.md +4 -3
  226. package/docs/docs/cmd/teams/team/team-get.md +78 -0
  227. package/docs/docs/cmd/teams/team/team-list.md +30 -0
  228. package/docs/docs/cmd/teams/team/team-remove.md +7 -3
  229. package/docs/docs/cmd/teams/team/team-set.md +4 -3
  230. package/docs/docs/cmd/teams/team/team-unarchive.md +5 -2
  231. package/docs/docs/cmd/teams/user/user-app-add.md +4 -0
  232. package/docs/docs/cmd/teams/user/user-app-list.md +40 -0
  233. package/docs/docs/cmd/teams/user/user-app-remove.md +4 -0
  234. package/docs/docs/cmd/teams/user/user-list.md +31 -0
  235. package/docs/docs/cmd/tenant/id/id-get.md +20 -0
  236. package/docs/docs/cmd/tenant/report/report-activeusercounts.md +35 -0
  237. package/docs/docs/cmd/tenant/report/report-activeuserdetail.md +49 -0
  238. package/docs/docs/cmd/tenant/report/report-office365activationcounts.md +32 -0
  239. package/docs/docs/cmd/tenant/report/report-office365activationsusercounts.md +30 -0
  240. package/docs/docs/cmd/tenant/report/report-office365activationsuserdetail.md +36 -0
  241. package/docs/docs/cmd/tenant/report/report-servicesusercounts.md +41 -0
  242. package/docs/docs/cmd/tenant/security/security-alerts-list.md +105 -0
  243. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-health-get.md +87 -0
  244. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-health-list.md +91 -0
  245. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-healthissue-get.md +62 -0
  246. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-healthissue-list.md +51 -0
  247. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-message-get.md +64 -0
  248. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-message-list.md +52 -0
  249. package/docs/docs/cmd/todo/list/list-add.md +32 -1
  250. package/docs/docs/cmd/todo/list/list-get.md +61 -0
  251. package/docs/docs/cmd/todo/list/list-list.md +31 -0
  252. package/docs/docs/cmd/todo/list/list-remove.md +10 -6
  253. package/docs/docs/cmd/todo/list/list-set.md +9 -5
  254. package/docs/docs/cmd/todo/task/task-add.md +88 -5
  255. package/docs/docs/cmd/todo/task/task-get.md +75 -0
  256. package/docs/docs/cmd/todo/task/task-list.md +47 -0
  257. package/docs/docs/cmd/todo/task/task-remove.md +9 -4
  258. package/docs/docs/cmd/todo/task/task-set.md +59 -5
  259. package/docs/docs/cmd/util/accesstoken/accesstoken-get.md +20 -0
  260. package/docs/docs/cmd/viva/connections/connections-app-create.md +4 -0
  261. package/package.json +13 -4
@@ -15,7 +15,6 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
15
15
  };
16
16
  var _SpoListWebhookListCommand_instances, _SpoListWebhookListCommand_initTelemetry, _SpoListWebhookListCommand_initOptions, _SpoListWebhookListCommand_initValidators, _SpoListWebhookListCommand_initOptionSets;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- const chalk = require("chalk");
19
18
  const request_1 = require("../../../../request");
20
19
  const formatting_1 = require("../../../../utils/formatting");
21
20
  const urlUtil_1 = require("../../../../utils/urlUtil");
@@ -42,28 +41,16 @@ class SpoListWebhookListCommand extends SpoCommand_1.default {
42
41
  }
43
42
  commandAction(logger, args) {
44
43
  return __awaiter(this, void 0, void 0, function* () {
45
- if (args.options.title && this.verbose) {
46
- logger.logToStderr(chalk.yellow(`Option 'title' is deprecated. Please use 'listTitle' instead`));
47
- }
48
- if (args.options.id && this.verbose) {
49
- logger.logToStderr(chalk.yellow(`Option 'id' is deprecated. Please use 'listId' instead`));
50
- }
51
44
  if (this.verbose) {
52
- logger.logToStderr(`Retrieving webhook information for list ${args.options.id || args.options.listId || args.options.listUrl} in site at ${args.options.webUrl}...`);
45
+ logger.logToStderr(`Retrieving webhook information for list ${args.options.listTitle || args.options.listId || args.options.listUrl} in site at ${args.options.webUrl}...`);
53
46
  }
54
47
  let requestUrl = `${args.options.webUrl}/_api/web`;
55
- if (args.options.id) {
56
- requestUrl += `/lists(guid'${formatting_1.formatting.encodeQueryParameter(args.options.id)}')/Subscriptions`;
57
- }
58
- else if (args.options.listId) {
48
+ if (args.options.listId) {
59
49
  requestUrl += `/lists(guid'${formatting_1.formatting.encodeQueryParameter(args.options.listId)}')/Subscriptions`;
60
50
  }
61
51
  else if (args.options.listTitle) {
62
52
  requestUrl += `/lists/GetByTitle('${formatting_1.formatting.encodeQueryParameter(args.options.listTitle)}')/Subscriptions`;
63
53
  }
64
- else if (args.options.title) {
65
- requestUrl += `/lists/GetByTitle('${formatting_1.formatting.encodeQueryParameter(args.options.title)}')/Subscriptions`;
66
- }
67
54
  else if (args.options.listUrl) {
68
55
  const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.listUrl);
69
56
  requestUrl += `/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')/Subscriptions`;
@@ -99,11 +86,9 @@ class SpoListWebhookListCommand extends SpoCommand_1.default {
99
86
  _SpoListWebhookListCommand_instances = new WeakSet(), _SpoListWebhookListCommand_initTelemetry = function _SpoListWebhookListCommand_initTelemetry() {
100
87
  this.telemetry.push((args) => {
101
88
  Object.assign(this.telemetryProperties, {
102
- id: typeof args.options.id !== 'undefined',
103
89
  listId: typeof args.options.listId !== 'undefined',
104
90
  listTitle: typeof args.options.listTitle !== 'undefined',
105
- listUrl: typeof args.options.listUrl !== 'undefined',
106
- title: typeof args.options.title !== 'undefined'
91
+ listUrl: typeof args.options.listUrl !== 'undefined'
107
92
  });
108
93
  });
109
94
  }, _SpoListWebhookListCommand_initOptions = function _SpoListWebhookListCommand_initOptions() {
@@ -115,10 +100,6 @@ _SpoListWebhookListCommand_instances = new WeakSet(), _SpoListWebhookListCommand
115
100
  option: '-t, --listTitle [listTitle]'
116
101
  }, {
117
102
  option: '--listUrl [listUrl]'
118
- }, {
119
- option: '--id [id]'
120
- }, {
121
- option: '--title [title]'
122
103
  });
123
104
  }, _SpoListWebhookListCommand_initValidators = function _SpoListWebhookListCommand_initValidators() {
124
105
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
@@ -126,11 +107,6 @@ _SpoListWebhookListCommand_instances = new WeakSet(), _SpoListWebhookListCommand
126
107
  if (isValidSharePointUrl !== true) {
127
108
  return isValidSharePointUrl;
128
109
  }
129
- if (args.options.id) {
130
- if (!validation_1.validation.isValidGuid(args.options.id)) {
131
- return `${args.options.id} is not a valid GUID`;
132
- }
133
- }
134
110
  if (args.options.listId) {
135
111
  if (!validation_1.validation.isValidGuid(args.options.listId)) {
136
112
  return `${args.options.listId} is not a valid GUID`;
@@ -139,7 +115,7 @@ _SpoListWebhookListCommand_instances = new WeakSet(), _SpoListWebhookListCommand
139
115
  return true;
140
116
  }));
141
117
  }, _SpoListWebhookListCommand_initOptionSets = function _SpoListWebhookListCommand_initOptionSets() {
142
- this.optionSets.push(['id', 'title', 'listId', 'listTitle', 'listUrl']);
118
+ this.optionSets.push(['listId', 'listTitle', 'listUrl']);
143
119
  };
144
120
  module.exports = new SpoListWebhookListCommand();
145
121
  //# sourceMappingURL=list-webhook-list.js.map
@@ -53,16 +53,13 @@ class SpoListWebhookSetCommand extends SpoCommand_1.default {
53
53
  const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.listUrl);
54
54
  requestUrl += `/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')/Subscriptions('${formatting_1.formatting.encodeQueryParameter(args.options.id)}')`;
55
55
  }
56
- const requestBody = {};
57
- if (args.options.notificationUrl) {
58
- requestBody.notificationUrl = args.options.notificationUrl;
59
- }
60
- if (args.options.expirationDateTime) {
61
- requestBody.expirationDateTime = args.options.expirationDateTime;
62
- }
56
+ const requestBody = {
57
+ notificationUrl: args.options.notificationUrl,
58
+ expirationDateTime: args.options.expirationDateTime,
59
+ clientState: args.options.clientState
60
+ };
63
61
  const requestOptions = {
64
62
  url: requestUrl,
65
- method: 'PATCH',
66
63
  headers: {
67
64
  'accept': 'application/json;odata=nometadata'
68
65
  },
@@ -71,7 +68,6 @@ class SpoListWebhookSetCommand extends SpoCommand_1.default {
71
68
  };
72
69
  try {
73
70
  yield request_1.default.patch(requestOptions);
74
- // REST patch call doesn't return anything
75
71
  }
76
72
  catch (err) {
77
73
  this.handleRejectedODataJsonPromise(err);
@@ -86,7 +82,8 @@ _SpoListWebhookSetCommand_instances = new WeakSet(), _SpoListWebhookSetCommand_i
86
82
  listTitle: typeof args.options.listTitle !== 'undefined',
87
83
  listUrl: typeof args.options.listUrl !== 'undefined',
88
84
  notificationUrl: typeof args.options.notificationUrl !== 'undefined',
89
- expirationDateTime: typeof args.options.expirationDateTime !== 'undefined'
85
+ expirationDateTime: typeof args.options.expirationDateTime !== 'undefined',
86
+ clientState: typeof args.options.clientState !== 'undefined'
90
87
  });
91
88
  });
92
89
  }, _SpoListWebhookSetCommand_initOptions = function _SpoListWebhookSetCommand_initOptions() {
@@ -104,6 +101,8 @@ _SpoListWebhookSetCommand_instances = new WeakSet(), _SpoListWebhookSetCommand_i
104
101
  option: '-n, --notificationUrl [notificationUrl]'
105
102
  }, {
106
103
  option: '-e, --expirationDateTime [expirationDateTime]'
104
+ }, {
105
+ option: '-c, --clientState [clientState]'
107
106
  });
108
107
  }, _SpoListWebhookSetCommand_initValidators = function _SpoListWebhookSetCommand_initValidators() {
109
108
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
@@ -119,8 +118,8 @@ _SpoListWebhookSetCommand_instances = new WeakSet(), _SpoListWebhookSetCommand_i
119
118
  return `${args.options.listId} is not a valid GUID`;
120
119
  }
121
120
  }
122
- if (!args.options.notificationUrl && !args.options.expirationDateTime) {
123
- return 'Specify notificationUrl, expirationDateTime or both, at least one is required';
121
+ if (!args.options.notificationUrl && !args.options.expirationDateTime && !args.options.clientState) {
122
+ return 'Specify notificationUrl, expirationDateTime, clientState or multiple, at least one is required';
124
123
  }
125
124
  const parsedDateTime = Date.parse(args.options.expirationDateTime);
126
125
  if (args.options.expirationDateTime && !(!parsedDateTime) !== true) {
@@ -44,18 +44,24 @@ class SpoListItemAddCommand extends SpoCommand_1.default {
44
44
  commandAction(logger, args) {
45
45
  return __awaiter(this, void 0, void 0, function* () {
46
46
  try {
47
- const listIdArgument = args.options.listId || '';
48
- const listTitleArgument = args.options.listTitle || '';
49
- const listRestUrl = (args.options.listId ?
50
- `${args.options.webUrl}/_api/web/lists(guid'${formatting_1.formatting.encodeQueryParameter(listIdArgument)}')`
51
- : `${args.options.webUrl}/_api/web/lists/getByTitle('${formatting_1.formatting.encodeQueryParameter(listTitleArgument)}')`);
47
+ let requestUrl = `${args.options.webUrl}/_api/web`;
48
+ if (args.options.listId) {
49
+ requestUrl += `/lists(guid'${formatting_1.formatting.encodeQueryParameter(args.options.listId)}')`;
50
+ }
51
+ else if (args.options.listTitle) {
52
+ requestUrl += `/lists/getByTitle('${formatting_1.formatting.encodeQueryParameter(args.options.listTitle)}')`;
53
+ }
54
+ else if (args.options.listUrl) {
55
+ const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.listUrl);
56
+ requestUrl += `/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')`;
57
+ }
52
58
  let contentTypeName = '';
53
59
  let targetFolderServerRelativeUrl = '';
54
60
  if (this.verbose) {
55
- logger.logToStderr(`Getting content types for list...`);
61
+ logger.logToStderr(`Getting content types for list ${args.options.listId || args.options.listTitle || args.options.listUrl}...`);
56
62
  }
57
63
  let requestOptions = {
58
- url: `${listRestUrl}/contenttypes?$select=Name,Id`,
64
+ url: `${requestUrl}/contenttypes?$select=Name,Id`,
59
65
  headers: {
60
66
  'accept': 'application/json;odata=nometadata'
61
67
  },
@@ -90,7 +96,7 @@ class SpoListItemAddCommand extends SpoCommand_1.default {
90
96
  logger.logToStderr('setting up folder lookup response ...');
91
97
  }
92
98
  requestOptions = {
93
- url: `${listRestUrl}/rootFolder`,
99
+ url: `${requestUrl}/rootFolder`,
94
100
  headers: {
95
101
  'accept': 'application/json;odata=nometadata'
96
102
  },
@@ -101,7 +107,7 @@ class SpoListItemAddCommand extends SpoCommand_1.default {
101
107
  yield spo_1.spo.ensureFolder(args.options.webUrl, targetFolderServerRelativeUrl, logger, this.debug);
102
108
  }
103
109
  if (this.verbose) {
104
- logger.logToStderr(`Creating item in list ${args.options.listId || args.options.listTitle} in site ${args.options.webUrl}...`);
110
+ logger.logToStderr(`Creating item in list ${args.options.listId || args.options.listTitle || args.options.listUrl} in site ${args.options.webUrl}...`);
105
111
  }
106
112
  const requestBody = {
107
113
  formValues: this.mapRequestBody(args.options)
@@ -123,7 +129,7 @@ class SpoListItemAddCommand extends SpoCommand_1.default {
123
129
  });
124
130
  }
125
131
  requestOptions = {
126
- url: `${listRestUrl}/AddValidateUpdateItemUsingPath()`,
132
+ url: `${requestUrl}/AddValidateUpdateItemUsingPath()`,
127
133
  headers: {
128
134
  'accept': 'application/json;odata=nometadata'
129
135
  },
@@ -142,10 +148,10 @@ class SpoListItemAddCommand extends SpoCommand_1.default {
142
148
  logger.logToStderr(`Id returned by AddValidateUpdateItemUsingPath: ${idField}`);
143
149
  }
144
150
  if (idField.length === 0) {
145
- return Promise.reject(`Item didn't add successfully`);
151
+ throw `Item didn't add successfully`;
146
152
  }
147
153
  requestOptions = {
148
- url: `${listRestUrl}/items(${idField[0].FieldValue})`,
154
+ url: `${requestUrl}/items(${idField[0].FieldValue})`,
149
155
  headers: {
150
156
  'accept': 'application/json;odata=nometadata'
151
157
  },
@@ -164,6 +170,7 @@ class SpoListItemAddCommand extends SpoCommand_1.default {
164
170
  const excludeOptions = [
165
171
  'listTitle',
166
172
  'listId',
173
+ 'listUrl',
167
174
  'webUrl',
168
175
  'contentType',
169
176
  'folder',
@@ -184,6 +191,7 @@ _SpoListItemAddCommand_instances = new WeakSet(), _SpoListItemAddCommand_initTel
184
191
  Object.assign(this.telemetryProperties, {
185
192
  listId: typeof args.options.listId !== 'undefined',
186
193
  listTitle: typeof args.options.listTitle !== 'undefined',
194
+ listUrl: typeof args.options.listUrl !== 'undefined',
187
195
  contentType: typeof args.options.contentType !== 'undefined',
188
196
  folder: typeof args.options.folder !== 'undefined'
189
197
  });
@@ -195,6 +203,8 @@ _SpoListItemAddCommand_instances = new WeakSet(), _SpoListItemAddCommand_initTel
195
203
  option: '-l, --listId [listId]'
196
204
  }, {
197
205
  option: '-t, --listTitle [listTitle]'
206
+ }, {
207
+ option: '--listUrl [listUrl]'
198
208
  }, {
199
209
  option: '-c, --contentType [contentType]'
200
210
  }, {
@@ -213,9 +223,9 @@ _SpoListItemAddCommand_instances = new WeakSet(), _SpoListItemAddCommand_initTel
213
223
  return true;
214
224
  }));
215
225
  }, _SpoListItemAddCommand_initTypes = function _SpoListItemAddCommand_initTypes() {
216
- this.types.string.push('webUrl', 'listId', 'listTitle', 'contentType', 'folder');
226
+ this.types.string.push('webUrl', 'listId', 'listTitle', 'listUrl', 'contentType', 'folder');
217
227
  }, _SpoListItemAddCommand_initOptionSets = function _SpoListItemAddCommand_initOptionSets() {
218
- this.optionSets.push(['listId', 'listTitle']);
228
+ this.optionSets.push(['listId', 'listTitle', 'listUrl']);
219
229
  };
220
230
  module.exports = new SpoListItemAddCommand();
221
231
  //# sourceMappingURL=listitem-add.js.map
@@ -17,6 +17,7 @@ var _SpoListItemAttachmentListCommand_instances, _SpoListItemAttachmentListComma
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const request_1 = require("../../../../request");
19
19
  const formatting_1 = require("../../../../utils/formatting");
20
+ const urlUtil_1 = require("../../../../utils/urlUtil");
20
21
  const validation_1 = require("../../../../utils/validation");
21
22
  const SpoCommand_1 = require("../../../base/SpoCommand");
22
23
  const commands_1 = require("../../commands");
@@ -40,13 +41,19 @@ class SpoListItemAttachmentListCommand extends SpoCommand_1.default {
40
41
  }
41
42
  commandAction(logger, args) {
42
43
  return __awaiter(this, void 0, void 0, function* () {
43
- const listIdArgument = args.options.listId || '';
44
- const listTitleArgument = args.options.listTitle || '';
45
- const listRestUrl = (args.options.listId ?
46
- `${args.options.webUrl}/_api/web/lists(guid'${formatting_1.formatting.encodeQueryParameter(listIdArgument)}')`
47
- : `${args.options.webUrl}/_api/web/lists/getByTitle('${formatting_1.formatting.encodeQueryParameter(listTitleArgument)}')`);
44
+ let requestUrl = `${args.options.webUrl}/_api/web`;
45
+ if (args.options.listId) {
46
+ requestUrl += `/lists(guid'${formatting_1.formatting.encodeQueryParameter(args.options.listId)}')`;
47
+ }
48
+ else if (args.options.listTitle) {
49
+ requestUrl += `/lists/getByTitle('${formatting_1.formatting.encodeQueryParameter(args.options.listTitle)}')`;
50
+ }
51
+ else if (args.options.listUrl) {
52
+ const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.listUrl);
53
+ requestUrl += `/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')`;
54
+ }
48
55
  const requestOptions = {
49
- url: `${listRestUrl}/items(${args.options.itemId})?$select=AttachmentFiles&$expand=AttachmentFiles`,
56
+ url: `${requestUrl}/items(${args.options.itemId})?$select=AttachmentFiles&$expand=AttachmentFiles`,
50
57
  method: 'GET',
51
58
  headers: {
52
59
  'accept': 'application/json;odata=nometadata'
@@ -74,7 +81,8 @@ _SpoListItemAttachmentListCommand_instances = new WeakSet(), _SpoListItemAttachm
74
81
  this.telemetry.push((args) => {
75
82
  Object.assign(this.telemetryProperties, {
76
83
  listId: typeof args.options.listId !== 'undefined',
77
- listTitle: typeof args.options.listTitle !== 'undefined'
84
+ listTitle: typeof args.options.listTitle !== 'undefined',
85
+ listUrl: typeof args.options.listUrl !== 'undefined'
78
86
  });
79
87
  });
80
88
  }, _SpoListItemAttachmentListCommand_initOptions = function _SpoListItemAttachmentListCommand_initOptions() {
@@ -86,6 +94,8 @@ _SpoListItemAttachmentListCommand_instances = new WeakSet(), _SpoListItemAttachm
86
94
  option: '--listId [listId]'
87
95
  }, {
88
96
  option: '--listTitle [listTitle]'
97
+ }, {
98
+ option: '--listUrl [listUrl]'
89
99
  });
90
100
  }, _SpoListItemAttachmentListCommand_initValidators = function _SpoListItemAttachmentListCommand_initValidators() {
91
101
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
@@ -102,7 +112,7 @@ _SpoListItemAttachmentListCommand_instances = new WeakSet(), _SpoListItemAttachm
102
112
  return true;
103
113
  }));
104
114
  }, _SpoListItemAttachmentListCommand_initOptionSets = function _SpoListItemAttachmentListCommand_initOptionSets() {
105
- this.optionSets.push(['listId', 'listTitle']);
115
+ this.optionSets.push(['listId', 'listTitle', 'listUrl']);
106
116
  };
107
117
  module.exports = new SpoListItemAttachmentListCommand();
108
118
  //# sourceMappingURL=listitem-attachment-list.js.map
@@ -17,6 +17,7 @@ var _SpoListItemGetCommand_instances, _SpoListItemGetCommand_initTelemetry, _Spo
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const request_1 = require("../../../../request");
19
19
  const formatting_1 = require("../../../../utils/formatting");
20
+ const urlUtil_1 = require("../../../../utils/urlUtil");
20
21
  const validation_1 = require("../../../../utils/validation");
21
22
  const SpoCommand_1 = require("../../../base/SpoCommand");
22
23
  const commands_1 = require("../../commands");
@@ -41,18 +42,24 @@ class SpoListItemGetCommand extends SpoCommand_1.default {
41
42
  }
42
43
  commandAction(logger, args) {
43
44
  return __awaiter(this, void 0, void 0, function* () {
44
- const listIdArgument = args.options.listId || '';
45
- const listTitleArgument = args.options.listTitle || '';
46
- const listRestUrl = (args.options.listId ?
47
- `${args.options.webUrl}/_api/web/lists(guid'${formatting_1.formatting.encodeQueryParameter(listIdArgument)}')` :
48
- `${args.options.webUrl}/_api/web/lists/getByTitle('${formatting_1.formatting.encodeQueryParameter(listTitleArgument)}')`);
45
+ let requestUrl = `${args.options.webUrl}/_api/web`;
46
+ if (args.options.listId) {
47
+ requestUrl += `/lists(guid'${formatting_1.formatting.encodeQueryParameter(args.options.listId)}')`;
48
+ }
49
+ else if (args.options.listTitle) {
50
+ requestUrl += `/lists/getByTitle('${formatting_1.formatting.encodeQueryParameter(args.options.listTitle)}')`;
51
+ }
52
+ else if (args.options.listUrl) {
53
+ const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.listUrl);
54
+ requestUrl += `/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')`;
55
+ }
49
56
  const propertiesSelect = args.options.properties ? args.options.properties.split(',') : [];
50
57
  const propertiesWithSlash = propertiesSelect.filter(item => item.includes('/'));
51
58
  const propertiesToExpand = propertiesWithSlash.map(e => e.split('/')[0]);
52
59
  const expandPropertiesArray = propertiesToExpand.filter((item, pos) => propertiesToExpand.indexOf(item) === pos);
53
60
  const fieldExpand = expandPropertiesArray.length > 0 ? `&$expand=${expandPropertiesArray.join(",")}` : ``;
54
61
  const requestOptions = {
55
- url: `${listRestUrl}/items(${args.options.id})?$select=${encodeURIComponent(propertiesSelect.join(","))}${fieldExpand}`,
62
+ url: `${requestUrl}/items(${args.options.id})?$select=${encodeURIComponent(propertiesSelect.join(","))}${fieldExpand}`,
56
63
  headers: {
57
64
  'accept': 'application/json;odata=nometadata'
58
65
  },
@@ -73,7 +80,8 @@ _SpoListItemGetCommand_instances = new WeakSet(), _SpoListItemGetCommand_initTel
73
80
  this.telemetry.push((args) => {
74
81
  Object.assign(this.telemetryProperties, {
75
82
  listId: typeof args.options.listId !== 'undefined',
76
- listTitle: typeof args.options.listTitle !== 'undefined'
83
+ listTitle: typeof args.options.listTitle !== 'undefined',
84
+ listUrl: typeof args.options.listUrl !== 'undefined'
77
85
  });
78
86
  });
79
87
  }, _SpoListItemGetCommand_initOptions = function _SpoListItemGetCommand_initOptions() {
@@ -85,6 +93,8 @@ _SpoListItemGetCommand_instances = new WeakSet(), _SpoListItemGetCommand_initTel
85
93
  option: '-l, --listId [listId]'
86
94
  }, {
87
95
  option: '-t, --listTitle [listTitle]'
96
+ }, {
97
+ option: '--listUrl [listUrl]'
88
98
  }, {
89
99
  option: '-p, --properties [properties]'
90
100
  });
@@ -106,7 +116,7 @@ _SpoListItemGetCommand_instances = new WeakSet(), _SpoListItemGetCommand_initTel
106
116
  }, _SpoListItemGetCommand_initTypes = function _SpoListItemGetCommand_initTypes() {
107
117
  this.types.string.push('webUrl', 'listId', 'listTitle', 'id', 'properties');
108
118
  }, _SpoListItemGetCommand_initOptionSets = function _SpoListItemGetCommand_initOptionSets() {
109
- this.optionSets.push(['listId', 'listTitle']);
119
+ this.optionSets.push(['listId', 'listTitle', 'listUrl']);
110
120
  };
111
121
  module.exports = new SpoListItemGetCommand();
112
122
  //# sourceMappingURL=listitem-get.js.map
@@ -20,6 +20,7 @@ const config_1 = require("../../../../config");
20
20
  const request_1 = require("../../../../request");
21
21
  const formatting_1 = require("../../../../utils/formatting");
22
22
  const spo_1 = require("../../../../utils/spo");
23
+ const urlUtil_1 = require("../../../../utils/urlUtil");
23
24
  const validation_1 = require("../../../../utils/validation");
24
25
  const SpoCommand_1 = require("../../../base/SpoCommand");
25
26
  const commands_1 = require("../../commands");
@@ -41,11 +42,17 @@ class SpoListItemIsRecordCommand extends SpoCommand_1.default {
41
42
  commandAction(logger, args) {
42
43
  return __awaiter(this, void 0, void 0, function* () {
43
44
  const resource = Auth_1.Auth.getResourceFromUrl(args.options.webUrl);
44
- const listIdArgument = args.options.listId || '';
45
- const listTitleArgument = args.options.listTitle || '';
46
- const listRestUrl = (args.options.listId ?
47
- `${args.options.webUrl}/_api/web/lists(guid'${formatting_1.formatting.encodeQueryParameter(listIdArgument)}')`
48
- : `${args.options.webUrl}/_api/web/lists/getByTitle('${formatting_1.formatting.encodeQueryParameter(listTitleArgument)}')`);
45
+ let requestUrl = `${args.options.webUrl}/_api/web`;
46
+ if (args.options.listId) {
47
+ requestUrl += `/lists(guid'${formatting_1.formatting.encodeQueryParameter(args.options.listId)}')`;
48
+ }
49
+ else if (args.options.listTitle) {
50
+ requestUrl += `/lists/getByTitle('${formatting_1.formatting.encodeQueryParameter(args.options.listTitle)}')`;
51
+ }
52
+ else if (args.options.listUrl) {
53
+ const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.listUrl);
54
+ requestUrl += `/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')`;
55
+ }
49
56
  let formDigestValue = '';
50
57
  let listId = '';
51
58
  if (this.debug) {
@@ -60,10 +67,10 @@ class SpoListItemIsRecordCommand extends SpoCommand_1.default {
60
67
  }
61
68
  else {
62
69
  if (this.verbose) {
63
- logger.logToStderr(`Getting list id...`);
70
+ logger.logToStderr(`Getting list id for list ${args.options.listTitle ? args.options.listTitle : args.options.listUrl}`);
64
71
  }
65
72
  const requestOptions = {
66
- url: `${listRestUrl}?$select=Id`,
73
+ url: `${requestUrl}?$select=Id`,
67
74
  headers: {
68
75
  accept: 'application/json;odata=nometadata'
69
76
  },
@@ -79,7 +86,7 @@ class SpoListItemIsRecordCommand extends SpoCommand_1.default {
79
86
  formDigestValue = reqDigest.FormDigestValue;
80
87
  const webIdentityResp = yield spo_1.spo.getCurrentWebIdentity(args.options.webUrl, formDigestValue);
81
88
  if (this.verbose) {
82
- logger.logToStderr(`Checking if list item is a record in list ${args.options.listId || args.options.listTitle} in site ${args.options.webUrl}...`);
89
+ logger.logToStderr(`Checking if list item is a record in list ${args.options.listId ? args.options.listId : args.options.listTitle ? args.options.listTitle : args.options.listUrl} in site ${args.options.webUrl}...`);
83
90
  }
84
91
  const requestBody = this.getIsRecordRequestBody(webIdentityResp.objectIdentity, listId, args.options.id);
85
92
  const requestOptions = {
@@ -122,7 +129,8 @@ _SpoListItemIsRecordCommand_instances = new WeakSet(), _SpoListItemIsRecordComma
122
129
  this.telemetry.push((args) => {
123
130
  Object.assign(this.telemetryProperties, {
124
131
  listId: typeof args.options.listId !== 'undefined',
125
- listTitle: typeof args.options.listTitle !== 'undefined'
132
+ listTitle: typeof args.options.listTitle !== 'undefined',
133
+ listUrl: typeof args.options.listUrl !== 'undefined'
126
134
  });
127
135
  });
128
136
  }, _SpoListItemIsRecordCommand_initOptions = function _SpoListItemIsRecordCommand_initOptions() {
@@ -134,6 +142,8 @@ _SpoListItemIsRecordCommand_instances = new WeakSet(), _SpoListItemIsRecordComma
134
142
  option: '-l, --listId [listId]'
135
143
  }, {
136
144
  option: '-t, --listTitle [listTitle]'
145
+ }, {
146
+ option: '--listUrl [listUrl]'
137
147
  });
138
148
  }, _SpoListItemIsRecordCommand_initValidators = function _SpoListItemIsRecordCommand_initValidators() {
139
149
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
@@ -155,7 +165,7 @@ _SpoListItemIsRecordCommand_instances = new WeakSet(), _SpoListItemIsRecordComma
155
165
  return true;
156
166
  }));
157
167
  }, _SpoListItemIsRecordCommand_initOptionSets = function _SpoListItemIsRecordCommand_initOptionSets() {
158
- this.optionSets.push(['listId', 'listTitle']);
168
+ this.optionSets.push(['listId', 'listTitle', 'listUrl']);
159
169
  };
160
170
  module.exports = new SpoListItemIsRecordCommand();
161
171
  //# sourceMappingURL=listitem-isrecord.js.map
@@ -13,11 +13,12 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
13
13
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
14
14
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
15
15
  };
16
- var _SpoListItemListCommand_instances, _SpoListItemListCommand_initTelemetry, _SpoListItemListCommand_initOptions, _SpoListItemListCommand_initValidators, _SpoListItemListCommand_initTypes;
16
+ var _SpoListItemListCommand_instances, _SpoListItemListCommand_initTelemetry, _SpoListItemListCommand_initOptions, _SpoListItemListCommand_initValidators, _SpoListItemListCommand_initOptionSets, _SpoListItemListCommand_initTypes;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const request_1 = require("../../../../request");
19
19
  const formatting_1 = require("../../../../utils/formatting");
20
20
  const spo_1 = require("../../../../utils/spo");
21
+ const urlUtil_1 = require("../../../../utils/urlUtil");
21
22
  const validation_1 = require("../../../../utils/validation");
22
23
  const SpoCommand_1 = require("../../../base/SpoCommand");
23
24
  const commands_1 = require("../../commands");
@@ -28,6 +29,7 @@ class SpoListItemListCommand extends SpoCommand_1.default {
28
29
  __classPrivateFieldGet(this, _SpoListItemListCommand_instances, "m", _SpoListItemListCommand_initTelemetry).call(this);
29
30
  __classPrivateFieldGet(this, _SpoListItemListCommand_instances, "m", _SpoListItemListCommand_initOptions).call(this);
30
31
  __classPrivateFieldGet(this, _SpoListItemListCommand_instances, "m", _SpoListItemListCommand_initValidators).call(this);
32
+ __classPrivateFieldGet(this, _SpoListItemListCommand_instances, "m", _SpoListItemListCommand_initOptionSets).call(this);
31
33
  __classPrivateFieldGet(this, _SpoListItemListCommand_instances, "m", _SpoListItemListCommand_initTypes).call(this);
32
34
  }
33
35
  get name() {
@@ -38,17 +40,23 @@ class SpoListItemListCommand extends SpoCommand_1.default {
38
40
  }
39
41
  commandAction(logger, args) {
40
42
  return __awaiter(this, void 0, void 0, function* () {
41
- const listIdArgument = args.options.listId || '';
42
- const listTitleArgument = args.options.listTitle || '';
43
+ let requestUrl = `${args.options.webUrl}/_api/web`;
44
+ if (args.options.listId) {
45
+ requestUrl += `/lists(guid'${formatting_1.formatting.encodeQueryParameter(args.options.listId)}')`;
46
+ }
47
+ else if (args.options.listTitle) {
48
+ requestUrl += `/lists/getByTitle('${formatting_1.formatting.encodeQueryParameter(args.options.listTitle)}')`;
49
+ }
50
+ else if (args.options.listUrl) {
51
+ const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.listUrl);
52
+ requestUrl += `/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')`;
53
+ }
43
54
  let formDigestValue = '';
44
55
  const fieldsArray = args.options.fields ? args.options.fields.split(",")
45
56
  : (!args.options.output || args.options.output === "text") ? ["Title", "Id"] : [];
46
57
  const fieldsWithSlash = fieldsArray.filter(item => item.includes('/'));
47
58
  const fieldsToExpand = fieldsWithSlash.map(e => e.split('/')[0]);
48
59
  const expandFieldsArray = fieldsToExpand.filter((item, pos) => fieldsToExpand.indexOf(item) === pos);
49
- const listRestUrl = listIdArgument ?
50
- `${args.options.webUrl}/_api/web/lists(guid'${formatting_1.formatting.encodeQueryParameter(listIdArgument)}')`
51
- : `${args.options.webUrl}/_api/web/lists/getByTitle('${formatting_1.formatting.encodeQueryParameter(listTitleArgument)}')`;
52
60
  try {
53
61
  if (args.options.camlQuery) {
54
62
  if (this.debug) {
@@ -63,7 +71,7 @@ class SpoListItemListCommand extends SpoCommand_1.default {
63
71
  const filter = args.options.filter ? `$filter=${encodeURIComponent(args.options.filter)}` : ``;
64
72
  const fieldSelect = `?$select=Id&${rowLimit}&${filter}`;
65
73
  const requestOptions = {
66
- url: `${listRestUrl}/items${fieldSelect}`,
74
+ url: `${requestUrl}/items${fieldSelect}`,
67
75
  headers: {
68
76
  'accept': 'application/json;odata=nometadata',
69
77
  'X-RequestDigest': formDigestValue
@@ -88,7 +96,7 @@ class SpoListItemListCommand extends SpoCommand_1.default {
88
96
  }
89
97
  : ``;
90
98
  const requestOptions = {
91
- url: `${listRestUrl}/${args.options.camlQuery ? `GetItems` : `items${fieldSelect}`}`,
99
+ url: `${requestUrl}/${args.options.camlQuery ? `GetItems` : `items${fieldSelect}`}`,
92
100
  headers: {
93
101
  'accept': 'application/json;odata=nometadata',
94
102
  'X-RequestDigest': formDigestValue
@@ -111,6 +119,7 @@ _SpoListItemListCommand_instances = new WeakSet(), _SpoListItemListCommand_initT
111
119
  Object.assign(this.telemetryProperties, {
112
120
  listId: typeof args.options.listId !== 'undefined',
113
121
  listTitle: typeof args.options.listTitle !== 'undefined',
122
+ listUrl: typeof args.options.listUrl !== 'undefined',
114
123
  fields: typeof args.options.fields !== 'undefined',
115
124
  filter: typeof args.options.filter !== 'undefined',
116
125
  pageNumber: typeof args.options.pageNumber !== 'undefined',
@@ -125,6 +134,8 @@ _SpoListItemListCommand_instances = new WeakSet(), _SpoListItemListCommand_initT
125
134
  option: '-i, --listId [listId]'
126
135
  }, {
127
136
  option: '-t, --listTitle [listTitle]'
137
+ }, {
138
+ option: '--listUrl [listUrl]'
128
139
  }, {
129
140
  option: '-s, --pageSize [pageSize]'
130
141
  }, {
@@ -142,12 +153,6 @@ _SpoListItemListCommand_instances = new WeakSet(), _SpoListItemListCommand_initT
142
153
  if (isValidSharePointUrl !== true) {
143
154
  return isValidSharePointUrl;
144
155
  }
145
- if (!args.options.listId && !args.options.listTitle) {
146
- return `Specify listId or listTitle`;
147
- }
148
- if (args.options.listId && args.options.listTitle) {
149
- return `Specify listId or listTitle but not both`;
150
- }
151
156
  if (args.options.camlQuery && args.options.fields) {
152
157
  return `Specify camlQuery or fields but not both`;
153
158
  }
@@ -171,6 +176,8 @@ _SpoListItemListCommand_instances = new WeakSet(), _SpoListItemListCommand_initT
171
176
  }
172
177
  return true;
173
178
  }));
179
+ }, _SpoListItemListCommand_initOptionSets = function _SpoListItemListCommand_initOptionSets() {
180
+ this.optionSets.push(['listId', 'listTitle']);
174
181
  }, _SpoListItemListCommand_initTypes = function _SpoListItemListCommand_initTypes() {
175
182
  this.types.string.push('webUrl', 'camlQuery', 'pageSize', 'pageNumber', 'fields', 'filter');
176
183
  };