@pnp/cli-microsoft365 6.8.0-beta.62006d7 → 6.8.0-beta.85a1ca9

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 (236) hide show
  1. package/.eslintrc.js +2 -0
  2. package/.mocharc.json +1 -0
  3. package/README.md +6 -1
  4. package/dist/Command.js +6 -0
  5. package/dist/chili/chili.js +298 -0
  6. package/dist/chili/index.js +20 -0
  7. package/dist/cli/Cli.js +2 -2
  8. package/dist/m365/app/commands/permission/permission-add.js +279 -0
  9. package/dist/m365/app/commands.js +1 -0
  10. package/dist/m365/commands/commands.js +2 -0
  11. package/dist/m365/commands/docs.js +42 -0
  12. package/dist/m365/commands/login.js +1 -1
  13. package/dist/m365/commands/setup.js +180 -0
  14. package/dist/m365/commands/setupPresets.js +25 -0
  15. package/dist/m365/pa/commands/app/app-consent-set.js +101 -0
  16. package/dist/m365/pa/commands.js +1 -0
  17. package/dist/m365/purview/commands/sensitivitylabel/sensitivitylabel-get.js +97 -0
  18. package/dist/m365/purview/commands/sensitivitylabel/sensitivitylabel-list.js +85 -0
  19. package/dist/m365/purview/commands/sensitivitylabel/sensitivitylabel-policysettings-list.js +89 -0
  20. package/dist/m365/purview/commands.js +3 -0
  21. package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.15.2.js +2 -0
  22. package/dist/m365/spfx/commands/spfx-doctor.js +14 -30
  23. package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-remove.js +146 -0
  24. package/dist/m365/spo/commands/file/file-checkin.js +8 -3
  25. package/dist/m365/spo/commands/file/file-checkout.js +8 -3
  26. package/dist/m365/spo/commands/file/file-copy.js +4 -4
  27. package/dist/m365/spo/commands/file/file-get.js +3 -1
  28. package/dist/m365/spo/commands/file/file-list.js +17 -6
  29. package/dist/m365/spo/commands/file/file-move.js +6 -7
  30. package/dist/m365/spo/commands/file/file-remove.js +6 -12
  31. package/dist/m365/spo/commands/file/file-rename.js +3 -3
  32. package/dist/m365/spo/commands/file/file-roleassignment-add.js +2 -1
  33. package/dist/m365/spo/commands/file/file-roleassignment-remove.js +3 -3
  34. package/dist/m365/spo/commands/file/file-roleinheritance-break.js +2 -1
  35. package/dist/m365/spo/commands/file/file-roleinheritance-reset.js +2 -1
  36. package/dist/m365/spo/commands/file/file-sharinginfo-get.js +4 -2
  37. package/dist/m365/spo/commands/file/file-version-clear.js +3 -1
  38. package/dist/m365/spo/commands/file/file-version-get.js +3 -1
  39. package/dist/m365/spo/commands/file/file-version-remove.js +3 -1
  40. package/dist/m365/spo/commands/file/file-version-restore.js +3 -1
  41. package/dist/m365/spo/commands/folder/folder-copy.js +4 -4
  42. package/dist/m365/spo/commands/folder/folder-get.js +5 -2
  43. package/dist/m365/spo/commands/folder/folder-move.js +3 -2
  44. package/dist/m365/spo/commands/folder/folder-rename.js +5 -2
  45. package/dist/m365/spo/commands/list/list-get.js +30 -3
  46. package/dist/m365/spo/commands/list/list-list.js +39 -2
  47. package/dist/m365/spo/commands/listitem/listitem-batch-set.js +308 -0
  48. package/dist/m365/spo/commands/page/page-section-add.js +2 -3
  49. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-list.js +46 -1
  50. package/dist/m365/spo/commands/site/site-recyclebinitem-move.js +119 -0
  51. package/dist/m365/spo/commands/site/site-recyclebinitem-remove.js +106 -0
  52. package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-get.js +30 -39
  53. package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-list.js +47 -0
  54. package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-remove.js +151 -0
  55. package/dist/m365/spo/commands/tenant/tenant-commandset-remove.js +152 -0
  56. package/dist/m365/spo/commands/tenant/tenant-commandset-set.js +203 -0
  57. package/dist/m365/spo/commands/term/term-add.js +13 -4
  58. package/dist/m365/spo/commands/term/term-get.js +14 -5
  59. package/dist/m365/spo/commands/term/term-group-get.js +12 -3
  60. package/dist/m365/spo/commands/term/term-group-list.js +39 -4
  61. package/dist/m365/spo/commands/term/term-list.js +18 -9
  62. package/dist/m365/spo/commands/term/term-set-add.js +13 -4
  63. package/dist/m365/spo/commands/term/term-set-get.js +12 -3
  64. package/dist/m365/spo/commands/term/term-set-list.js +12 -3
  65. package/dist/m365/spo/commands.js +9 -0
  66. package/dist/utils/formatting.js +35 -11
  67. package/dist/utils/pid.js +5 -0
  68. package/dist/utils/spo.js +1 -1
  69. package/docs/docs/cmd/aad/o365group/o365group-get.md +0 -12
  70. package/docs/docs/cmd/app/permission/permission-add.md +53 -0
  71. package/docs/docs/cmd/cli/cli-consent.md +6 -0
  72. package/docs/docs/cmd/cli/cli-doctor.md +17 -0
  73. package/docs/docs/cmd/cli/cli-issue.md +6 -0
  74. package/docs/docs/cmd/cli/cli-reconsent.md +6 -0
  75. package/docs/docs/cmd/cli/completion/completion-sh-setup.md +6 -0
  76. package/docs/docs/cmd/cli/config/config-get.md +6 -0
  77. package/docs/docs/cmd/docs.md +51 -0
  78. package/docs/docs/cmd/flow/environment/environment-list.md +18 -0
  79. package/docs/docs/cmd/flow/flow-get.md +20 -0
  80. package/docs/docs/cmd/flow/flow-list.md +17 -0
  81. package/docs/docs/cmd/login.md +1 -1
  82. package/docs/docs/cmd/pa/app/app-consent-set.md +47 -0
  83. package/docs/docs/cmd/planner/plan/plan-get.md +1 -1
  84. package/docs/docs/cmd/planner/plan/plan-list.md +1 -1
  85. package/docs/docs/cmd/planner/roster/roster-add.md +2 -1
  86. package/docs/docs/cmd/planner/roster/roster-get.md +1 -1
  87. package/docs/docs/cmd/planner/roster/roster-remove.md +2 -1
  88. package/docs/docs/cmd/planner/task/task-get.md +0 -6
  89. package/docs/docs/cmd/planner/task/task-set.md +1 -1
  90. package/docs/docs/cmd/purview/retentionevent/retentionevent-add.md +6 -7
  91. package/docs/docs/cmd/purview/retentionevent/retentionevent-get.md +6 -7
  92. package/docs/docs/cmd/purview/retentionevent/retentionevent-list.md +4 -4
  93. package/docs/docs/cmd/purview/retentionevent/retentionevent-remove.md +4 -4
  94. package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-add.md +10 -10
  95. package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-get.md +11 -11
  96. package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-list.md +10 -10
  97. package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-remove.md +10 -10
  98. package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-set.md +10 -10
  99. package/docs/docs/cmd/purview/retentionlabel/retentionlabel-add.md +12 -12
  100. package/docs/docs/cmd/purview/retentionlabel/retentionlabel-get.md +8 -9
  101. package/docs/docs/cmd/purview/retentionlabel/retentionlabel-list.md +8 -9
  102. package/docs/docs/cmd/purview/retentionlabel/retentionlabel-remove.md +8 -8
  103. package/docs/docs/cmd/purview/retentionlabel/retentionlabel-set.md +8 -8
  104. package/docs/docs/cmd/purview/sensitivitylabel/sensitivitylabel-get.md +118 -0
  105. package/docs/docs/cmd/purview/sensitivitylabel/sensitivitylabel-list.md +111 -0
  106. package/docs/docs/cmd/purview/sensitivitylabel/sensitivitylabel-policysettings-list.md +97 -0
  107. package/docs/docs/cmd/search/externalconnection/externalconnection-get.md +17 -0
  108. package/docs/docs/cmd/search/externalconnection/externalconnection-list.md +17 -0
  109. package/docs/docs/cmd/setup.md +86 -0
  110. package/docs/docs/cmd/spo/applicationcustomizer/applicationcustomizer-add.md +1 -1
  111. package/docs/docs/cmd/spo/applicationcustomizer/applicationcustomizer-remove.md +77 -0
  112. package/docs/docs/cmd/spo/commandset/commandset-set.md +1 -1
  113. package/docs/docs/cmd/spo/contenttype/contenttype-set.md +2 -2
  114. package/docs/docs/cmd/spo/customaction/customaction-add.md +1 -1
  115. package/docs/docs/cmd/spo/customaction/customaction-set.md +1 -1
  116. package/docs/docs/cmd/spo/file/file-add.md +1 -1
  117. package/docs/docs/cmd/spo/file/file-checkin.md +1 -1
  118. package/docs/docs/cmd/spo/file/file-checkout.md +1 -1
  119. package/docs/docs/cmd/spo/file/file-copy.md +1 -1
  120. package/docs/docs/cmd/spo/file/file-get.md +1 -1
  121. package/docs/docs/cmd/spo/file/file-list.md +9 -6
  122. package/docs/docs/cmd/spo/file/file-move.md +3 -3
  123. package/docs/docs/cmd/spo/file/file-remove.md +12 -0
  124. package/docs/docs/cmd/spo/file/file-rename.md +1 -1
  125. package/docs/docs/cmd/spo/file/file-retentionlabel-ensure.md +3 -3
  126. package/docs/docs/cmd/spo/file/file-retentionlabel-remove.md +2 -2
  127. package/docs/docs/cmd/spo/file/file-roleassignment-add.md +1 -1
  128. package/docs/docs/cmd/spo/file/file-roleassignment-remove.md +1 -1
  129. package/docs/docs/cmd/spo/file/file-roleinheritance-break.md +1 -1
  130. package/docs/docs/cmd/spo/file/file-roleinheritance-reset.md +1 -1
  131. package/docs/docs/cmd/spo/file/file-sharinginfo-get.md +1 -1
  132. package/docs/docs/cmd/spo/file/file-sharinglink-add.md +1 -1
  133. package/docs/docs/cmd/spo/file/file-sharinglink-clear.md +1 -1
  134. package/docs/docs/cmd/spo/file/file-sharinglink-get.md +1 -1
  135. package/docs/docs/cmd/spo/file/file-sharinglink-list.md +1 -1
  136. package/docs/docs/cmd/spo/file/file-sharinglink-remove.md +1 -1
  137. package/docs/docs/cmd/spo/file/file-sharinglink-set.md +1 -1
  138. package/docs/docs/cmd/spo/file/file-version-clear.md +2 -2
  139. package/docs/docs/cmd/spo/file/file-version-get.md +1 -1
  140. package/docs/docs/cmd/spo/file/file-version-list.md +1 -1
  141. package/docs/docs/cmd/spo/file/file-version-remove.md +1 -1
  142. package/docs/docs/cmd/spo/file/file-version-restore.md +1 -1
  143. package/docs/docs/cmd/spo/folder/folder-add.md +9 -3
  144. package/docs/docs/cmd/spo/folder/folder-copy.md +2 -2
  145. package/docs/docs/cmd/spo/folder/folder-get.md +7 -7
  146. package/docs/docs/cmd/spo/folder/folder-list.md +11 -11
  147. package/docs/docs/cmd/spo/folder/folder-move.md +1 -1
  148. package/docs/docs/cmd/spo/folder/folder-remove.md +7 -7
  149. package/docs/docs/cmd/spo/folder/folder-rename.md +11 -5
  150. package/docs/docs/cmd/spo/folder/folder-retentionlabel-ensure.md +3 -3
  151. package/docs/docs/cmd/spo/folder/folder-retentionlabel-remove.md +1 -1
  152. package/docs/docs/cmd/spo/folder/folder-roleinheritance-break.md +1 -1
  153. package/docs/docs/cmd/spo/folder/folder-roleinheritance-reset.md +4 -4
  154. package/docs/docs/cmd/spo/list/list-get.md +10 -0
  155. package/docs/docs/cmd/spo/list/list-list.md +28 -0
  156. package/docs/docs/cmd/spo/listitem/listitem-batch-set.md +67 -0
  157. package/docs/docs/cmd/spo/orgassetslibrary/orgassetslibrary-list.md +19 -0
  158. package/docs/docs/cmd/spo/orgassetslibrary/orgassetslibrary-remove.md +12 -0
  159. package/docs/docs/cmd/spo/orgnewssite/orgnewssite-list.md +6 -0
  160. package/docs/docs/cmd/spo/page/page-column-get.md +15 -0
  161. package/docs/docs/cmd/spo/page/page-column-list.md +16 -0
  162. package/docs/docs/cmd/spo/page/page-control-get.md +18 -0
  163. package/docs/docs/cmd/spo/page/page-control-list.md +18 -0
  164. package/docs/docs/cmd/spo/page/page-copy.md +35 -0
  165. package/docs/docs/cmd/spo/page/page-get.md +39 -0
  166. package/docs/docs/cmd/spo/page/page-list.md +53 -0
  167. package/docs/docs/cmd/spo/page/page-section-get.md +12 -0
  168. package/docs/docs/cmd/spo/page/page-section-list.md +13 -0
  169. package/docs/docs/cmd/spo/page/page-template-list.md +31 -0
  170. package/docs/docs/cmd/spo/propertybag/propertybag-get.md +6 -0
  171. package/docs/docs/cmd/spo/propertybag/propertybag-list.md +13 -0
  172. package/docs/docs/cmd/spo/report/report-activityfilecounts.md +7 -0
  173. package/docs/docs/cmd/spo/report/report-activitypages.md +7 -0
  174. package/docs/docs/cmd/spo/report/report-activityusercounts.md +7 -0
  175. package/docs/docs/cmd/spo/report/report-activityuserdetail.md +7 -0
  176. package/docs/docs/cmd/spo/report/report-siteusagedetail.md +7 -0
  177. package/docs/docs/cmd/spo/report/report-siteusagefilecounts.md +7 -0
  178. package/docs/docs/cmd/spo/report/report-siteusagepages.md +7 -0
  179. package/docs/docs/cmd/spo/report/report-siteusagesitecounts.md +7 -0
  180. package/docs/docs/cmd/spo/report/report-siteusagestorage.md +7 -0
  181. package/docs/docs/cmd/spo/roledefinition/roledefinition-get.md +20 -0
  182. package/docs/docs/cmd/spo/roledefinition/roledefinition-list.md +20 -0
  183. package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-grant-add.md +20 -0
  184. package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-grant-list.md +18 -0
  185. package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-permissionrequest-approve.md +20 -0
  186. package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-permissionrequest-list.md +17 -0
  187. package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-set.md +13 -0
  188. package/docs/docs/cmd/spo/site/site-recyclebinitem-move.md +43 -0
  189. package/docs/docs/cmd/spo/site/site-recyclebinitem-remove.md +45 -0
  190. package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-add.md +1 -1
  191. package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-list.md +103 -0
  192. package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-remove.md +49 -0
  193. package/docs/docs/cmd/spo/tenant/tenant-commandset-remove.md +49 -0
  194. package/docs/docs/cmd/spo/tenant/tenant-commandset-set.md +57 -0
  195. package/docs/docs/cmd/spo/term/term-add.md +107 -6
  196. package/docs/docs/cmd/spo/term/term-get.md +111 -10
  197. package/docs/docs/cmd/spo/term/term-group-get.md +71 -5
  198. package/docs/docs/cmd/spo/term/term-group-list.md +70 -2
  199. package/docs/docs/cmd/spo/term/term-list.md +80 -8
  200. package/docs/docs/cmd/spo/term/term-set-add.md +95 -11
  201. package/docs/docs/cmd/spo/term/term-set-get.md +92 -8
  202. package/docs/docs/cmd/spo/term/term-set-list.md +85 -5
  203. package/docs/docs/cmd/teams/app/app-list.md +17 -0
  204. package/docs/docs/cmd/teams/app/app-publish.md +18 -1
  205. package/docs/docs/cmd/teams/channel/channel-add.md +20 -0
  206. package/docs/docs/cmd/teams/channel/channel-get.md +21 -0
  207. package/docs/docs/cmd/teams/channel/channel-list.md +21 -0
  208. package/docs/docs/cmd/teams/channel/channel-member-list.md +20 -0
  209. package/docs/docs/cmd/teams/channel/channel-member-set.md +21 -0
  210. package/docs/docs/cmd/teams/chat/chat-get.md +22 -0
  211. package/docs/docs/cmd/teams/chat/chat-list.md +22 -0
  212. package/docs/docs/cmd/teams/chat/chat-member-list.md +20 -0
  213. package/docs/docs/cmd/teams/chat/chat-message-list.md +23 -0
  214. package/docs/docs/cmd/teams/funsettings/funsettings-list.md +15 -0
  215. package/docs/docs/cmd/teams/guestsettings/guestsettings-list.md +13 -0
  216. package/docs/docs/cmd/teams/membersettings/membersettings-list.md +17 -0
  217. package/docs/docs/cmd/teams/tab/tab-remove.md +1 -1
  218. package/docs/docs/cmd/version.md +1 -1
  219. package/docs/docs/cmd/yammer/group/group-list.md +42 -0
  220. package/docs/docs/cmd/yammer/message/message-add.md +32 -0
  221. package/docs/docs/cmd/yammer/message/message-get.md +32 -0
  222. package/docs/docs/cmd/yammer/message/message-list.md +34 -0
  223. package/docs/docs/cmd/yammer/network/network-list.md +70 -0
  224. package/docs/docs/cmd/yammer/report/report-activitycounts.md +7 -0
  225. package/docs/docs/cmd/yammer/report/report-activityusercounts.md +7 -0
  226. package/docs/docs/cmd/yammer/report/report-activityuserdetail.md +7 -0
  227. package/docs/docs/cmd/yammer/report/report-deviceusagedistributionusercounts.md +7 -0
  228. package/docs/docs/cmd/yammer/report/report-deviceusageusercounts.md +7 -0
  229. package/docs/docs/cmd/yammer/report/report-deviceusageuserdetail.md +7 -0
  230. package/docs/docs/cmd/yammer/report/report-groupsactivitycounts.md +7 -0
  231. package/docs/docs/cmd/yammer/report/report-groupsactivitydetail.md +7 -0
  232. package/docs/docs/cmd/yammer/report/report-groupsactivitygroupcounts.md +7 -0
  233. package/docs/docs/cmd/yammer/user/user-get.md +55 -0
  234. package/docs/docs/cmd/yammer/user/user-list.md +55 -0
  235. package/docs/docs/cmd/yammer/yammer-search.md +15 -3
  236. package/package.json +2 -1
@@ -0,0 +1,203 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
12
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
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
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
15
+ };
16
+ var _SpoTenantCommandSetSetCommand_instances, _SpoTenantCommandSetSetCommand_initTelemetry, _SpoTenantCommandSetSetCommand_initOptions, _SpoTenantCommandSetSetCommand_initValidators;
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const validation_1 = require("../../../../utils/validation");
19
+ const SpoCommand_1 = require("../../../base/SpoCommand");
20
+ const commands_1 = require("../../commands");
21
+ const urlUtil_1 = require("../../../../utils/urlUtil");
22
+ const request_1 = require("../../../../request");
23
+ const formatting_1 = require("../../../../utils/formatting");
24
+ const spo_1 = require("../../../../utils/spo");
25
+ class SpoTenantCommandSetSetCommand extends SpoCommand_1.default {
26
+ get name() {
27
+ return commands_1.default.TENANT_COMMANDSET_SET;
28
+ }
29
+ get description() {
30
+ return 'Updates a ListView Command Set that is installed tenant wide.';
31
+ }
32
+ constructor() {
33
+ super();
34
+ _SpoTenantCommandSetSetCommand_instances.add(this);
35
+ __classPrivateFieldGet(this, _SpoTenantCommandSetSetCommand_instances, "m", _SpoTenantCommandSetSetCommand_initTelemetry).call(this);
36
+ __classPrivateFieldGet(this, _SpoTenantCommandSetSetCommand_instances, "m", _SpoTenantCommandSetSetCommand_initOptions).call(this);
37
+ __classPrivateFieldGet(this, _SpoTenantCommandSetSetCommand_instances, "m", _SpoTenantCommandSetSetCommand_initValidators).call(this);
38
+ }
39
+ commandAction(logger, args) {
40
+ return __awaiter(this, void 0, void 0, function* () {
41
+ try {
42
+ const appCatalogUrl = yield spo_1.spo.getTenantAppCatalogUrl(logger, this.debug);
43
+ if (!appCatalogUrl) {
44
+ throw 'No app catalog URL found';
45
+ }
46
+ const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(appCatalogUrl, '/lists/TenantWideExtensions');
47
+ const listItem = yield this.getListItemById(logger, appCatalogUrl, listServerRelativeUrl, args.options.id);
48
+ if (listItem.TenantWideExtensionLocation.indexOf("ClientSideExtension.ListViewCommandSet") === -1) {
49
+ throw 'The item is not a ListViewCommandSet';
50
+ }
51
+ yield this.updateTenantWideExtension(appCatalogUrl, args.options, listServerRelativeUrl, logger);
52
+ }
53
+ catch (err) {
54
+ this.handleRejectedODataJsonPromise(err);
55
+ }
56
+ });
57
+ }
58
+ getListItemById(logger, webUrl, listServerRelativeUrl, id) {
59
+ return __awaiter(this, void 0, void 0, function* () {
60
+ if (this.verbose) {
61
+ logger.logToStderr(`Getting the list item by id ${id}`);
62
+ }
63
+ const reqOptions = {
64
+ url: `${webUrl}/_api/web/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')/Items(${id})`,
65
+ headers: {
66
+ 'accept': 'application/json;odata=nometadata'
67
+ },
68
+ responseType: 'json'
69
+ };
70
+ return yield request_1.default.get(reqOptions);
71
+ });
72
+ }
73
+ updateTenantWideExtension(appCatalogUrl, options, listServerRelativeUrl, logger) {
74
+ return __awaiter(this, void 0, void 0, function* () {
75
+ if (this.verbose) {
76
+ logger.logToStderr('Updating tenant wide extension to the TenantWideExtensions list');
77
+ }
78
+ const formValues = [];
79
+ if (options.newTitle !== undefined) {
80
+ formValues.push({
81
+ FieldName: 'Title',
82
+ FieldValue: options.newTitle
83
+ });
84
+ }
85
+ if (options.clientSideComponentId !== undefined) {
86
+ formValues.push({
87
+ FieldName: 'TenantWideExtensionComponentId',
88
+ FieldValue: options.clientSideComponentId
89
+ });
90
+ }
91
+ if (options.location !== undefined) {
92
+ formValues.push({
93
+ FieldName: 'TenantWideExtensionLocation',
94
+ FieldValue: this.getLocation(options.location)
95
+ });
96
+ }
97
+ if (options.listType !== undefined) {
98
+ formValues.push({
99
+ FieldName: 'TenantWideExtensionListTemplate',
100
+ FieldValue: this.getListTemplate(options.listType)
101
+ });
102
+ }
103
+ if (options.clientSideComponentProperties !== undefined) {
104
+ formValues.push({
105
+ FieldName: 'TenantWideExtensionComponentProperties',
106
+ FieldValue: options.clientSideComponentProperties
107
+ });
108
+ }
109
+ if (options.webTemplate !== undefined) {
110
+ formValues.push({
111
+ FieldName: 'TenantWideExtensionWebTemplate',
112
+ FieldValue: options.webTemplate
113
+ });
114
+ }
115
+ const requestOptions = {
116
+ url: `${appCatalogUrl}/_api/web/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')/Items(${options.id})/ValidateUpdateListItem()`,
117
+ headers: {
118
+ 'accept': 'application/json;odata=nometadata'
119
+ },
120
+ data: {
121
+ formValues: formValues
122
+ },
123
+ responseType: 'json'
124
+ };
125
+ yield request_1.default.post(requestOptions);
126
+ });
127
+ }
128
+ getLocation(location) {
129
+ switch (location) {
130
+ case 'Both':
131
+ return 'ClientSideExtension.ListViewCommandSet';
132
+ case 'ContextMenu':
133
+ return 'ClientSideExtension.ListViewCommandSet.ContextMenu';
134
+ default:
135
+ return 'ClientSideExtension.ListViewCommandSet.CommandBar';
136
+ }
137
+ }
138
+ getListTemplate(listTemplate) {
139
+ switch (listTemplate) {
140
+ case 'SitePages':
141
+ return '119';
142
+ case 'Library':
143
+ return '101';
144
+ default:
145
+ return '100';
146
+ }
147
+ }
148
+ }
149
+ _SpoTenantCommandSetSetCommand_instances = new WeakSet(), _SpoTenantCommandSetSetCommand_initTelemetry = function _SpoTenantCommandSetSetCommand_initTelemetry() {
150
+ this.telemetry.push((args) => {
151
+ Object.assign(this.telemetryProperties, {
152
+ newTitle: typeof args.options.newTitle !== 'undefined',
153
+ listType: args.options.listType,
154
+ clientSideComponentId: typeof args.options.clientSideComponentId !== 'undefined',
155
+ clientSideComponentProperties: typeof args.options.clientSideComponentProperties !== 'undefined',
156
+ webTemplate: typeof args.options.webTemplate !== 'undefined',
157
+ location: args.options.location
158
+ });
159
+ });
160
+ }, _SpoTenantCommandSetSetCommand_initOptions = function _SpoTenantCommandSetSetCommand_initOptions() {
161
+ this.options.unshift({
162
+ option: '-i, --id <id>'
163
+ }, {
164
+ option: '-t, --newTitle [newTitle]'
165
+ }, {
166
+ option: '-l, --listType [listType]',
167
+ autocomplete: SpoTenantCommandSetSetCommand.listTypes
168
+ }, {
169
+ option: '-i, --clientSideComponentId [clientSideComponentId]'
170
+ }, {
171
+ option: '-p, --clientSideComponentProperties [clientSideComponentProperties]'
172
+ }, {
173
+ option: '-w, --webTemplate [webTemplate]'
174
+ }, {
175
+ option: '--location [location]',
176
+ autocomplete: SpoTenantCommandSetSetCommand.locations
177
+ });
178
+ }, _SpoTenantCommandSetSetCommand_initValidators = function _SpoTenantCommandSetSetCommand_initValidators() {
179
+ this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
180
+ if (!args.options.newTitle &&
181
+ !args.options.listType &&
182
+ !args.options.clientSideComponentId &&
183
+ !args.options.clientSideComponentProperties &&
184
+ !args.options.webTemplate &&
185
+ !args.options.location) {
186
+ return 'Specify at least one property to update';
187
+ }
188
+ if (args.options.clientSideComponentId && !validation_1.validation.isValidGuid(args.options.clientSideComponentId)) {
189
+ return `${args.options.clientSideComponentId} is not a valid GUID`;
190
+ }
191
+ if (args.options.listType && SpoTenantCommandSetSetCommand.listTypes.indexOf(args.options.listType) < 0) {
192
+ return `${args.options.listType} is not a valid list type. Allowed values are ${SpoTenantCommandSetSetCommand.listTypes.join(', ')}`;
193
+ }
194
+ if (args.options.location && SpoTenantCommandSetSetCommand.locations.indexOf(args.options.location) < 0) {
195
+ return `${args.options.location} is not a valid location. Allowed values are ${SpoTenantCommandSetSetCommand.locations.join(', ')}`;
196
+ }
197
+ return true;
198
+ }));
199
+ };
200
+ SpoTenantCommandSetSetCommand.listTypes = ['List', 'Library', 'SitePages'];
201
+ SpoTenantCommandSetSetCommand.locations = ['ContextMenu', 'CommandBar', 'Both'];
202
+ module.exports = new SpoTenantCommandSetSetCommand();
203
+ //# sourceMappingURL=tenant-commandset-set.js.map
@@ -43,8 +43,8 @@ class SpoTermAddCommand extends SpoCommand_1.default {
43
43
  let term;
44
44
  let formDigest;
45
45
  try {
46
- const spoAdminUrl = yield spo_1.spo.getSpoAdminUrl(logger, this.debug);
47
- const res = yield spo_1.spo.getRequestDigest(spoAdminUrl);
46
+ const spoWebUrl = args.options.webUrl ? args.options.webUrl : yield spo_1.spo.getSpoAdminUrl(logger, this.debug);
47
+ const res = yield spo_1.spo.getRequestDigest(spoWebUrl);
48
48
  formDigest = res.FormDigestValue;
49
49
  if (this.verbose) {
50
50
  logger.logToStderr(`Adding taxonomy term...`);
@@ -58,7 +58,7 @@ class SpoTermAddCommand extends SpoCommand_1.default {
58
58
  const termId = args.options.id || (0, uuid_1.v4)();
59
59
  const data = `<Request AddExpandoFieldTypeSuffix="true" SchemaVersion="15.0.0.0" LibraryVersion="16.0.0.0" ApplicationName="${config_1.default.applicationName}" xmlns="http://schemas.microsoft.com/sharepoint/clientquery/2009"><Actions><ObjectPath Id="4" ObjectPathId="3" /><ObjectIdentityQuery Id="5" ObjectPathId="3" /><ObjectPath Id="7" ObjectPathId="6" /><ObjectIdentityQuery Id="8" ObjectPathId="6" /><ObjectPath Id="10" ObjectPathId="9" /><ObjectPath Id="12" ObjectPathId="11" /><ObjectIdentityQuery Id="13" ObjectPathId="11" /><ObjectPath Id="15" ObjectPathId="14" /><ObjectPath Id="17" ObjectPathId="16" /><ObjectIdentityQuery Id="18" ObjectPathId="16" /><ObjectPath Id="20" ObjectPathId="19" /><ObjectIdentityQuery Id="21" ObjectPathId="19" /><Query Id="22" ObjectPathId="19"><Query SelectAllProperties="true"><Properties /></Query></Query></Actions><ObjectPaths><StaticMethod Id="3" Name="GetTaxonomySession" TypeId="{981cbc68-9edc-4f8d-872f-71146fcbb84f}" /><Method Id="6" ParentId="3" Name="GetDefaultSiteCollectionTermStore" /><Property Id="9" ParentId="6" Name="Groups" />${termGroupQuery}<Property Id="14" ParentId="11" Name="TermSets" />${termParentQuery}<Method Id="19" ParentId="16" Name="CreateTerm"><Parameters><Parameter Type="String">${formatting_1.formatting.escapeXml(args.options.name)}</Parameter><Parameter Type="Int32">1033</Parameter><Parameter Type="Guid">{${termId}}</Parameter></Parameters></Method></ObjectPaths></Request>`;
60
60
  const requestOptionsPost = {
61
- url: `${spoAdminUrl}/_vti_bin/client.svc/ProcessQuery`,
61
+ url: `${spoWebUrl}/_vti_bin/client.svc/ProcessQuery`,
62
62
  headers: {
63
63
  'X-RequestDigest': res.FormDigestValue
64
64
  },
@@ -108,7 +108,7 @@ class SpoTermAddCommand extends SpoCommand_1.default {
108
108
  break;
109
109
  }
110
110
  const requestOptions = {
111
- url: `${spoAdminUrl}/_vti_bin/client.svc/ProcessQuery`,
111
+ url: `${spoWebUrl}/_vti_bin/client.svc/ProcessQuery`,
112
112
  headers: {
113
113
  'X-RequestDigest': formDigest
114
114
  },
@@ -139,6 +139,7 @@ class SpoTermAddCommand extends SpoCommand_1.default {
139
139
  _SpoTermAddCommand_instances = new WeakSet(), _SpoTermAddCommand_initTelemetry = function _SpoTermAddCommand_initTelemetry() {
140
140
  this.telemetry.push((args) => {
141
141
  Object.assign(this.telemetryProperties, {
142
+ webUrl: typeof args.options.webUrl !== 'undefined',
142
143
  customProperties: typeof args.options.customProperties !== 'undefined',
143
144
  description: typeof args.options.description !== 'undefined',
144
145
  id: typeof args.options.id !== 'undefined',
@@ -153,6 +154,8 @@ _SpoTermAddCommand_instances = new WeakSet(), _SpoTermAddCommand_initTelemetry =
153
154
  }, _SpoTermAddCommand_initOptions = function _SpoTermAddCommand_initOptions() {
154
155
  this.options.unshift({
155
156
  option: '-n, --name <name>'
157
+ }, {
158
+ option: '-u, --webUrl [webUrl]'
156
159
  }, {
157
160
  option: '--termSetId [termSetId]'
158
161
  }, {
@@ -174,6 +177,12 @@ _SpoTermAddCommand_instances = new WeakSet(), _SpoTermAddCommand_initTelemetry =
174
177
  });
175
178
  }, _SpoTermAddCommand_initValidators = function _SpoTermAddCommand_initValidators() {
176
179
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
180
+ if (args.options.webUrl) {
181
+ const isValidSharePointUrl = validation_1.validation.isValidSharePointUrl(args.options.webUrl);
182
+ if (isValidSharePointUrl !== true) {
183
+ return isValidSharePointUrl;
184
+ }
185
+ }
177
186
  if (args.options.id) {
178
187
  if (!validation_1.validation.isValidGuid(args.options.id)) {
179
188
  return `${args.options.id} is not a valid GUID`;
@@ -41,8 +41,8 @@ class SpoTermGetCommand extends SpoCommand_1.default {
41
41
  commandAction(logger, args) {
42
42
  return __awaiter(this, void 0, void 0, function* () {
43
43
  try {
44
- const spoAdminUrl = yield spo_1.spo.getSpoAdminUrl(logger, this.debug);
45
- const res = yield spo_1.spo.getRequestDigest(spoAdminUrl);
44
+ const spoWebUrl = args.options.webUrl ? args.options.webUrl : yield spo_1.spo.getSpoAdminUrl(logger, this.debug);
45
+ const res = yield spo_1.spo.getRequestDigest(spoWebUrl);
46
46
  if (this.verbose) {
47
47
  logger.logToStderr(`Retrieving taxonomy term...`);
48
48
  }
@@ -54,7 +54,7 @@ class SpoTermGetCommand extends SpoCommand_1.default {
54
54
  data = `<Request AddExpandoFieldTypeSuffix="true" SchemaVersion="15.0.0.0" LibraryVersion="16.0.0.0" ApplicationName="${config_1.default.applicationName}" xmlns="http://schemas.microsoft.com/sharepoint/clientquery/2009"><Actions><ObjectPath Id="2" ObjectPathId="1" /><ObjectIdentityQuery Id="3" ObjectPathId="1" /><ObjectPath Id="5" ObjectPathId="4" /><ObjectIdentityQuery Id="6" ObjectPathId="4" /><ObjectPath Id="8" ObjectPathId="7" /><ObjectPath Id="10" ObjectPathId="9" /><ObjectIdentityQuery Id="11" ObjectPathId="9" /><ObjectPath Id="13" ObjectPathId="12" /><ObjectPath Id="15" ObjectPathId="14" /><ObjectIdentityQuery Id="16" ObjectPathId="14" /><ObjectPath Id="18" ObjectPathId="17" /><SetProperty Id="19" ObjectPathId="17" Name="TrimUnavailable"><Parameter Type="Boolean">true</Parameter></SetProperty><SetProperty Id="20" ObjectPathId="17" Name="TermLabel"><Parameter Type="String">${formatting_1.formatting.escapeXml(args.options.name)}</Parameter></SetProperty><ObjectPath Id="22" ObjectPathId="21" /><Query Id="23" ObjectPathId="21"><Query SelectAllProperties="true"><Properties /></Query><ChildItemQuery SelectAllProperties="true"><Properties /></ChildItemQuery></Query></Actions><ObjectPaths><StaticMethod Id="1" Name="GetTaxonomySession" TypeId="{981cbc68-9edc-4f8d-872f-71146fcbb84f}" /><Method Id="4" ParentId="1" Name="GetDefaultSiteCollectionTermStore" /><Property Id="7" ParentId="4" Name="Groups" /><Method Id="9" ParentId="7" Name="${args.options.termGroupName === undefined ? "GetById" : "GetByName"}"><Parameters><Parameter Type="String">${formatting_1.formatting.escapeXml(args.options.termGroupName) || args.options.termGroupId}</Parameter></Parameters></Method><Property Id="12" ParentId="9" Name="TermSets" /><Method Id="14" ParentId="12" Name="${args.options.termSetName === undefined ? "GetById" : "GetByName"}"><Parameters><Parameter Type="String">${formatting_1.formatting.escapeXml(args.options.termSetName) || args.options.termSetId}</Parameter></Parameters></Method><Constructor Id="17" TypeId="{61a1d689-2744-4ea3-a88b-c95bee9803aa}" /><Method Id="21" ParentId="14" Name="GetTerms"><Parameters><Parameter ObjectPathId="17" /></Parameters></Method></ObjectPaths></Request>`;
55
55
  }
56
56
  let term;
57
- const csomResponse = yield this.executeCsomCall(data, spoAdminUrl, res);
57
+ const csomResponse = yield this.executeCsomCall(data, spoWebUrl, res);
58
58
  if (csomResponse === null) {
59
59
  throw `Term with id '${args.options.id}' could not be found.`;
60
60
  }
@@ -86,10 +86,10 @@ class SpoTermGetCommand extends SpoCommand_1.default {
86
86
  }
87
87
  });
88
88
  }
89
- executeCsomCall(data, spoAdminUrl, res) {
89
+ executeCsomCall(data, spoWebUrl, res) {
90
90
  return __awaiter(this, void 0, void 0, function* () {
91
91
  const requestOptions = {
92
- url: `${spoAdminUrl}/_vti_bin/client.svc/ProcessQuery`,
92
+ url: `${spoWebUrl}/_vti_bin/client.svc/ProcessQuery`,
93
93
  headers: {
94
94
  'X-RequestDigest': res.FormDigestValue
95
95
  },
@@ -115,6 +115,7 @@ class SpoTermGetCommand extends SpoCommand_1.default {
115
115
  _SpoTermGetCommand_instances = new WeakSet(), _SpoTermGetCommand_initTelemetry = function _SpoTermGetCommand_initTelemetry() {
116
116
  this.telemetry.push((args) => {
117
117
  Object.assign(this.telemetryProperties, {
118
+ webUrl: typeof args.options.webUrl !== 'undefined',
118
119
  id: typeof args.options.id !== 'undefined',
119
120
  name: typeof args.options.name !== 'undefined',
120
121
  termGroupId: typeof args.options.termGroupId !== 'undefined',
@@ -125,6 +126,8 @@ _SpoTermGetCommand_instances = new WeakSet(), _SpoTermGetCommand_initTelemetry =
125
126
  });
126
127
  }, _SpoTermGetCommand_initOptions = function _SpoTermGetCommand_initOptions() {
127
128
  this.options.unshift({
129
+ option: '-u, --webUrl [webUrl]'
130
+ }, {
128
131
  option: '-i, --id [id]'
129
132
  }, {
130
133
  option: '-n, --name [name]'
@@ -139,6 +142,12 @@ _SpoTermGetCommand_instances = new WeakSet(), _SpoTermGetCommand_initTelemetry =
139
142
  });
140
143
  }, _SpoTermGetCommand_initValidators = function _SpoTermGetCommand_initValidators() {
141
144
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
145
+ if (args.options.webUrl) {
146
+ const isValidSharePointUrl = validation_1.validation.isValidSharePointUrl(args.options.webUrl);
147
+ if (isValidSharePointUrl !== true) {
148
+ return isValidSharePointUrl;
149
+ }
150
+ }
142
151
  if (args.options.id && !validation_1.validation.isValidGuid(args.options.id)) {
143
152
  return `${args.options.id} is not a valid GUID`;
144
153
  }
@@ -40,14 +40,14 @@ class SpoTermGroupGetCommand extends SpoCommand_1.default {
40
40
  commandAction(logger, args) {
41
41
  return __awaiter(this, void 0, void 0, function* () {
42
42
  try {
43
- const spoAdminUrl = yield spo_1.spo.getSpoAdminUrl(logger, this.debug);
44
- const res = yield spo_1.spo.getRequestDigest(spoAdminUrl);
43
+ const spoWebUrl = args.options.webUrl ? args.options.webUrl : yield spo_1.spo.getSpoAdminUrl(logger, this.debug);
44
+ const res = yield spo_1.spo.getRequestDigest(spoWebUrl);
45
45
  if (this.verbose) {
46
46
  logger.logToStderr(`Retrieving taxonomy term groups...`);
47
47
  }
48
48
  const query = args.options.id ? `<Method Id="32" ParentId="30" Name="GetById"><Parameters><Parameter Type="Guid">{${formatting_1.formatting.escapeXml(args.options.id)}}</Parameter></Parameters></Method>` : `<Method Id="32" ParentId="30" Name="GetByName"><Parameters><Parameter Type="String">${formatting_1.formatting.escapeXml(args.options.name)}</Parameter></Parameters></Method>`;
49
49
  const requestOptions = {
50
- url: `${spoAdminUrl}/_vti_bin/client.svc/ProcessQuery`,
50
+ url: `${spoWebUrl}/_vti_bin/client.svc/ProcessQuery`,
51
51
  headers: {
52
52
  'X-RequestDigest': res.FormDigestValue
53
53
  },
@@ -76,18 +76,27 @@ class SpoTermGroupGetCommand extends SpoCommand_1.default {
76
76
  _SpoTermGroupGetCommand_instances = new WeakSet(), _SpoTermGroupGetCommand_initTelemetry = function _SpoTermGroupGetCommand_initTelemetry() {
77
77
  this.telemetry.push((args) => {
78
78
  Object.assign(this.telemetryProperties, {
79
+ webUrl: typeof args.options.webUrl !== 'undefined',
79
80
  id: typeof args.options.id !== 'undefined',
80
81
  name: typeof args.options.name !== 'undefined'
81
82
  });
82
83
  });
83
84
  }, _SpoTermGroupGetCommand_initOptions = function _SpoTermGroupGetCommand_initOptions() {
84
85
  this.options.unshift({
86
+ option: '-u, --webUrl [webUrl]'
87
+ }, {
85
88
  option: '-i, --id [id]'
86
89
  }, {
87
90
  option: '-n, --name [name]'
88
91
  });
89
92
  }, _SpoTermGroupGetCommand_initValidators = function _SpoTermGroupGetCommand_initValidators() {
90
93
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
94
+ if (args.options.webUrl) {
95
+ const isValidSharePointUrl = validation_1.validation.isValidSharePointUrl(args.options.webUrl);
96
+ if (isValidSharePointUrl !== true) {
97
+ return isValidSharePointUrl;
98
+ }
99
+ }
91
100
  if (args.options.id) {
92
101
  if (!validation_1.validation.isValidGuid(args.options.id)) {
93
102
  return `${args.options.id} is not a valid GUID`;
@@ -8,10 +8,17 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
12
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
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
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
15
+ };
16
+ var _SpoTermGroupListCommand_instances, _SpoTermGroupListCommand_initTelemetry, _SpoTermGroupListCommand_initOptions, _SpoTermGroupListCommand_initValidators;
11
17
  Object.defineProperty(exports, "__esModule", { value: true });
12
18
  const config_1 = require("../../../../config");
13
19
  const request_1 = require("../../../../request");
14
20
  const spo_1 = require("../../../../utils/spo");
21
+ const validation_1 = require("../../../../utils/validation");
15
22
  const SpoCommand_1 = require("../../../base/SpoCommand");
16
23
  const commands_1 = require("../../commands");
17
24
  class SpoTermGroupListCommand extends SpoCommand_1.default {
@@ -24,16 +31,23 @@ class SpoTermGroupListCommand extends SpoCommand_1.default {
24
31
  defaultProperties() {
25
32
  return ['Id', 'Name'];
26
33
  }
27
- commandAction(logger) {
34
+ constructor() {
35
+ super();
36
+ _SpoTermGroupListCommand_instances.add(this);
37
+ __classPrivateFieldGet(this, _SpoTermGroupListCommand_instances, "m", _SpoTermGroupListCommand_initTelemetry).call(this);
38
+ __classPrivateFieldGet(this, _SpoTermGroupListCommand_instances, "m", _SpoTermGroupListCommand_initOptions).call(this);
39
+ __classPrivateFieldGet(this, _SpoTermGroupListCommand_instances, "m", _SpoTermGroupListCommand_initValidators).call(this);
40
+ }
41
+ commandAction(logger, args) {
28
42
  return __awaiter(this, void 0, void 0, function* () {
29
43
  try {
30
- const spoAdminUrl = yield spo_1.spo.getSpoAdminUrl(logger, this.debug);
31
- const res = yield spo_1.spo.getRequestDigest(spoAdminUrl);
44
+ const spoWebUrl = args.options.webUrl ? args.options.webUrl : yield spo_1.spo.getSpoAdminUrl(logger, this.debug);
45
+ const res = yield spo_1.spo.getRequestDigest(spoWebUrl);
32
46
  if (this.verbose) {
33
47
  logger.logToStderr(`Retrieving taxonomy term groups...`);
34
48
  }
35
49
  const requestOptions = {
36
- url: `${spoAdminUrl}/_vti_bin/client.svc/ProcessQuery`,
50
+ url: `${spoWebUrl}/_vti_bin/client.svc/ProcessQuery`,
37
51
  headers: {
38
52
  'X-RequestDigest': res.FormDigestValue
39
53
  },
@@ -61,5 +75,26 @@ class SpoTermGroupListCommand extends SpoCommand_1.default {
61
75
  });
62
76
  }
63
77
  }
78
+ _SpoTermGroupListCommand_instances = new WeakSet(), _SpoTermGroupListCommand_initTelemetry = function _SpoTermGroupListCommand_initTelemetry() {
79
+ this.telemetry.push((args) => {
80
+ Object.assign(this.telemetryProperties, {
81
+ webUrl: typeof args.options.webUrl !== 'undefined'
82
+ });
83
+ });
84
+ }, _SpoTermGroupListCommand_initOptions = function _SpoTermGroupListCommand_initOptions() {
85
+ this.options.unshift({
86
+ option: '-u, --webUrl [webUrl]'
87
+ });
88
+ }, _SpoTermGroupListCommand_initValidators = function _SpoTermGroupListCommand_initValidators() {
89
+ this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
90
+ if (args.options.webUrl) {
91
+ const isValidSharePointUrl = validation_1.validation.isValidSharePointUrl(args.options.webUrl);
92
+ if (isValidSharePointUrl !== true) {
93
+ return isValidSharePointUrl;
94
+ }
95
+ }
96
+ return true;
97
+ }));
98
+ };
64
99
  module.exports = new SpoTermGroupListCommand();
65
100
  //# sourceMappingURL=term-group-list.js.map
@@ -44,22 +44,22 @@ class SpoTermListCommand extends SpoCommand_1.default {
44
44
  commandAction(logger, args) {
45
45
  return __awaiter(this, void 0, void 0, function* () {
46
46
  try {
47
- const spoAdminUrl = yield spo_1.spo.getSpoAdminUrl(logger, this.debug);
48
- const res = yield spo_1.spo.getRequestDigest(spoAdminUrl);
47
+ const spoWebUrl = args.options.webUrl ? args.options.webUrl : yield spo_1.spo.getSpoAdminUrl(logger, this.debug);
48
+ const res = yield spo_1.spo.getRequestDigest(spoWebUrl);
49
49
  if (this.verbose) {
50
50
  logger.logToStderr(`Retrieving taxonomy term sets...`);
51
51
  }
52
52
  const termGroupQuery = args.options.termGroupId ? `<Method Id="77" ParentId="75" Name="GetById"><Parameters><Parameter Type="Guid">{${args.options.termGroupId}}</Parameter></Parameters></Method>` : `<Method Id="77" ParentId="75" Name="GetByName"><Parameters><Parameter Type="String">${formatting_1.formatting.escapeXml(args.options.termGroupName)}</Parameter></Parameters></Method>`;
53
53
  const termSetQuery = args.options.termSetId ? `<Method Id="82" ParentId="80" Name="GetById"><Parameters><Parameter Type="Guid">{${args.options.termSetId}}</Parameter></Parameters></Method>` : `<Method Id="82" ParentId="80" Name="GetByName"><Parameters><Parameter Type="String">${formatting_1.formatting.escapeXml(args.options.termSetName)}</Parameter></Parameters></Method>`;
54
54
  const data = `<Request AddExpandoFieldTypeSuffix="true" SchemaVersion="15.0.0.0" LibraryVersion="16.0.0.0" ApplicationName="${config_1.default.applicationName}" xmlns="http://schemas.microsoft.com/sharepoint/clientquery/2009"><Actions><ObjectPath Id="70" ObjectPathId="69" /><ObjectIdentityQuery Id="71" ObjectPathId="69" /><ObjectPath Id="73" ObjectPathId="72" /><ObjectIdentityQuery Id="74" ObjectPathId="72" /><ObjectPath Id="76" ObjectPathId="75" /><ObjectPath Id="78" ObjectPathId="77" /><ObjectIdentityQuery Id="79" ObjectPathId="77" /><ObjectPath Id="81" ObjectPathId="80" /><ObjectPath Id="83" ObjectPathId="82" /><ObjectIdentityQuery Id="84" ObjectPathId="82" /><ObjectPath Id="86" ObjectPathId="85" /><Query Id="87" ObjectPathId="85"><Query SelectAllProperties="false"><Properties /></Query><ChildItemQuery SelectAllProperties="true"><Properties><Property Name="Name" ScalarProperty="true" /><Property Name="Id" ScalarProperty="true" /></Properties></ChildItemQuery></Query></Actions><ObjectPaths><StaticMethod Id="69" Name="GetTaxonomySession" TypeId="{981cbc68-9edc-4f8d-872f-71146fcbb84f}" /><Method Id="72" ParentId="69" Name="GetDefaultSiteCollectionTermStore" /><Property Id="75" ParentId="72" Name="Groups" />${termGroupQuery}<Property Id="80" ParentId="77" Name="TermSets" />${termSetQuery}<Property Id="85" ParentId="82" Name="Terms" /></ObjectPaths></Request>`;
55
- const result = yield this.executeCsomCall(data, spoAdminUrl, res);
55
+ const result = yield this.executeCsomCall(data, spoWebUrl, res);
56
56
  const terms = [];
57
57
  if (result._Child_Items_ && result._Child_Items_.length > 0) {
58
58
  for (const term of result._Child_Items_) {
59
59
  this.setTermDetails(term);
60
60
  terms.push(term);
61
61
  if (args.options.includeChildTerms && term.TermsCount > 0) {
62
- yield this.getChildTerms(spoAdminUrl, res, term);
62
+ yield this.getChildTerms(spoWebUrl, res, term);
63
63
  }
64
64
  }
65
65
  }
@@ -108,17 +108,17 @@ class SpoTermListCommand extends SpoCommand_1.default {
108
108
  }
109
109
  });
110
110
  }
111
- getChildTerms(spoAdminUrl, res, parentTerm) {
111
+ getChildTerms(spoWebUrl, res, parentTerm) {
112
112
  return __awaiter(this, void 0, void 0, function* () {
113
113
  parentTerm.Children = [];
114
114
  const data = `<Request AddExpandoFieldTypeSuffix="true" SchemaVersion="15.0.0.0" LibraryVersion="16.0.0.0" ApplicationName="${config_1.default.applicationName}" xmlns="http://schemas.microsoft.com/sharepoint/clientquery/2009"><Actions><ObjectPath Id="20" ObjectPathId="19" /><Query Id="21" ObjectPathId="19"><Query SelectAllProperties="false"><Properties /></Query><ChildItemQuery SelectAllProperties="true"><Properties><Property Name="CustomSortOrder" ScalarProperty="true" /><Property Name="CustomProperties" ScalarProperty="true" /><Property Name="LocalCustomProperties" ScalarProperty="true" /></Properties></ChildItemQuery></Query></Actions><ObjectPaths><Property Id="19" ParentId="16" Name="Terms" /><Identity Id="16" Name="${parentTerm._ObjectIdentity_}" /></ObjectPaths></Request>`;
115
- const result = yield this.executeCsomCall(data, spoAdminUrl, res);
115
+ const result = yield this.executeCsomCall(data, spoWebUrl, res);
116
116
  if (result._Child_Items_ && result._Child_Items_.length > 0) {
117
117
  for (const term of result._Child_Items_) {
118
118
  this.setTermDetails(term);
119
119
  parentTerm.Children.push(term);
120
120
  if (term.TermsCount > 0) {
121
- yield this.getChildTerms(spoAdminUrl, res, term);
121
+ yield this.getChildTerms(spoWebUrl, res, term);
122
122
  }
123
123
  }
124
124
  }
@@ -132,10 +132,10 @@ class SpoTermListCommand extends SpoCommand_1.default {
132
132
  parseTermDateToIsoString(dateAsString) {
133
133
  return new Date(Number(dateAsString.replace('/Date(', '').replace(')/', ''))).toISOString();
134
134
  }
135
- executeCsomCall(data, spoAdminUrl, res) {
135
+ executeCsomCall(data, spoWebUrl, res) {
136
136
  return __awaiter(this, void 0, void 0, function* () {
137
137
  const requestOptions = {
138
- url: `${spoAdminUrl}/_vti_bin/client.svc/ProcessQuery`,
138
+ url: `${spoWebUrl}/_vti_bin/client.svc/ProcessQuery`,
139
139
  headers: {
140
140
  'X-RequestDigest': res.FormDigestValue
141
141
  },
@@ -154,6 +154,7 @@ class SpoTermListCommand extends SpoCommand_1.default {
154
154
  _SpoTermListCommand_instances = new WeakSet(), _SpoTermListCommand_initTelemetry = function _SpoTermListCommand_initTelemetry() {
155
155
  this.telemetry.push((args) => {
156
156
  Object.assign(this.telemetryProperties, {
157
+ webUrl: typeof args.options.webUrl !== 'undefined',
157
158
  termGroupId: typeof args.options.termGroupId !== 'undefined',
158
159
  termGroupName: typeof args.options.termGroupName !== 'undefined',
159
160
  termSetId: typeof args.options.termSetId !== 'undefined',
@@ -163,6 +164,8 @@ _SpoTermListCommand_instances = new WeakSet(), _SpoTermListCommand_initTelemetry
163
164
  });
164
165
  }, _SpoTermListCommand_initOptions = function _SpoTermListCommand_initOptions() {
165
166
  this.options.unshift({
167
+ option: '-u, --webUrl [webUrl]'
168
+ }, {
166
169
  option: '--termGroupId [termGroupId]'
167
170
  }, {
168
171
  option: '--termGroupName [termGroupName]'
@@ -175,6 +178,12 @@ _SpoTermListCommand_instances = new WeakSet(), _SpoTermListCommand_initTelemetry
175
178
  });
176
179
  }, _SpoTermListCommand_initValidators = function _SpoTermListCommand_initValidators() {
177
180
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
181
+ if (args.options.webUrl) {
182
+ const isValidSharePointUrl = validation_1.validation.isValidSharePointUrl(args.options.webUrl);
183
+ if (isValidSharePointUrl !== true) {
184
+ return isValidSharePointUrl;
185
+ }
186
+ }
178
187
  if (args.options.termGroupId && !validation_1.validation.isValidGuid(args.options.termGroupId)) {
179
188
  return `${args.options.termGroupId} is not a valid GUID`;
180
189
  }
@@ -43,8 +43,8 @@ class SpoTermSetAddCommand extends SpoCommand_1.default {
43
43
  let formDigest = '';
44
44
  let termSet;
45
45
  try {
46
- const spoAdminUrl = yield spo_1.spo.getSpoAdminUrl(logger, this.debug);
47
- const res = yield spo_1.spo.getRequestDigest(spoAdminUrl);
46
+ const spoWebUrl = args.options.webUrl ? args.options.webUrl : yield spo_1.spo.getSpoAdminUrl(logger, this.debug);
47
+ const res = yield spo_1.spo.getRequestDigest(spoWebUrl);
48
48
  formDigest = res.FormDigestValue;
49
49
  if (this.verbose) {
50
50
  logger.logToStderr(`Adding taxonomy term set...`);
@@ -54,7 +54,7 @@ class SpoTermSetAddCommand extends SpoCommand_1.default {
54
54
  `<Method Id="42" ParentId="40" Name="GetById"><Parameters><Parameter Type="Guid">{${args.options.termGroupId}}</Parameter></Parameters></Method>`;
55
55
  const termSetId = args.options.id || (0, uuid_1.v4)();
56
56
  const requestOptionsQuery = {
57
- url: `${spoAdminUrl}/_vti_bin/client.svc/ProcessQuery`,
57
+ url: `${spoWebUrl}/_vti_bin/client.svc/ProcessQuery`,
58
58
  headers: {
59
59
  'X-RequestDigest': res.FormDigestValue
60
60
  },
@@ -96,7 +96,7 @@ class SpoTermSetAddCommand extends SpoCommand_1.default {
96
96
  termSet.CustomProperties = customProperties;
97
97
  }
98
98
  const requestOptions = {
99
- url: `${spoAdminUrl}/_vti_bin/client.svc/ProcessQuery`,
99
+ url: `${spoWebUrl}/_vti_bin/client.svc/ProcessQuery`,
100
100
  headers: {
101
101
  'X-RequestDigest': formDigest
102
102
  },
@@ -127,6 +127,7 @@ class SpoTermSetAddCommand extends SpoCommand_1.default {
127
127
  _SpoTermSetAddCommand_instances = new WeakSet(), _SpoTermSetAddCommand_initTelemetry = function _SpoTermSetAddCommand_initTelemetry() {
128
128
  this.telemetry.push((args) => {
129
129
  Object.assign(this.telemetryProperties, {
130
+ webUrl: typeof args.options.webUrl !== 'undefined',
130
131
  customProperties: typeof args.options.customProperties !== 'undefined',
131
132
  description: typeof args.options.description !== 'undefined',
132
133
  id: typeof args.options.id !== 'undefined',
@@ -137,6 +138,8 @@ _SpoTermSetAddCommand_instances = new WeakSet(), _SpoTermSetAddCommand_initTelem
137
138
  }, _SpoTermSetAddCommand_initOptions = function _SpoTermSetAddCommand_initOptions() {
138
139
  this.options.unshift({
139
140
  option: '-n, --name <name>'
141
+ }, {
142
+ option: '-u, --webUrl [webUrl]'
140
143
  }, {
141
144
  option: '--termGroupId [termGroupId]'
142
145
  }, {
@@ -150,6 +153,12 @@ _SpoTermSetAddCommand_instances = new WeakSet(), _SpoTermSetAddCommand_initTelem
150
153
  });
151
154
  }, _SpoTermSetAddCommand_initValidators = function _SpoTermSetAddCommand_initValidators() {
152
155
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
156
+ if (args.options.webUrl) {
157
+ const isValidSharePointUrl = validation_1.validation.isValidSharePointUrl(args.options.webUrl);
158
+ if (isValidSharePointUrl !== true) {
159
+ return isValidSharePointUrl;
160
+ }
161
+ }
153
162
  if (args.options.id) {
154
163
  if (!validation_1.validation.isValidGuid(args.options.id)) {
155
164
  return `${args.options.id} is not a valid GUID`;