@pnp/cli-microsoft365 6.0.0-beta.22bbec5 → 6.0.0-beta.27b9708

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 (135) hide show
  1. package/dist/cli/Cli.js +1 -1
  2. package/dist/m365/aad/commands/app/app-get.js +4 -11
  3. package/dist/m365/aad/commands/app/app-remove.js +4 -11
  4. package/dist/m365/aad/commands/app/app-role-add.js +5 -10
  5. package/dist/m365/aad/commands/app/app-role-list.js +4 -24
  6. package/dist/m365/aad/commands/app/app-role-remove.js +4 -22
  7. package/dist/m365/aad/commands/app/app-set.js +4 -11
  8. package/dist/m365/aad/commands/approleassignment/approleassignment-add.js +4 -8
  9. package/dist/m365/aad/commands/approleassignment/approleassignment-list.js +4 -11
  10. package/dist/m365/aad/commands/approleassignment/approleassignment-remove.js +4 -8
  11. package/dist/m365/aad/commands/groupsettingtemplate/groupsettingtemplate-get.js +4 -7
  12. package/dist/m365/aad/commands/o365group/o365group-conversation-post-list.js +4 -8
  13. package/dist/m365/aad/commands/o365group/o365group-teamify.js +4 -7
  14. package/dist/m365/aad/commands/o365group/o365group-user-add.js +4 -7
  15. package/dist/m365/aad/commands/o365group/o365group-user-remove.js +4 -7
  16. package/dist/m365/aad/commands/o365group/o365group-user-set.js +4 -7
  17. package/dist/m365/aad/commands/sp/sp-add.js +4 -8
  18. package/dist/m365/aad/commands/sp/sp-get.js +4 -8
  19. package/dist/m365/aad/commands/user/user-get.js +4 -9
  20. package/dist/m365/aad/commands/user/user-list.js +13 -2
  21. package/dist/m365/aad/commands/user/user-set.js +4 -7
  22. package/dist/m365/commands/commands.js +1 -0
  23. package/dist/m365/commands/request.js +153 -0
  24. package/dist/m365/onenote/commands/notebook/notebook-list.js +139 -0
  25. package/dist/m365/onenote/commands.js +7 -0
  26. package/dist/m365/outlook/commands/message/message-list.js +4 -23
  27. package/dist/m365/outlook/commands/message/message-move.js +4 -31
  28. package/dist/m365/pa/commands/app/app-get.js +4 -7
  29. package/dist/m365/planner/commands/bucket/bucket-add.js +4 -7
  30. package/dist/m365/planner/commands/bucket/bucket-list.js +4 -7
  31. package/dist/m365/planner/commands/plan/plan-add.js +4 -7
  32. package/dist/m365/planner/commands/plan/plan-list.js +4 -7
  33. package/dist/m365/planner/commands/task/task-add.js +4 -13
  34. package/dist/m365/planner/commands/task/task-get.js +7 -0
  35. package/dist/m365/pp/commands/managementapp/managementapp-add.js +4 -11
  36. package/dist/m365/spfx/commands/project/project-doctor/doctor-1.16.0-beta.1.js +23 -0
  37. package/dist/m365/spfx/commands/project/project-doctor.js +2 -1
  38. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010008_YORC_nodeVersion.js +47 -0
  39. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN021003_PKG_engines_node.js +48 -0
  40. package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.16.0-beta.1.js +61 -0
  41. package/dist/m365/spfx/commands/project/project-upgrade.js +16 -13
  42. package/dist/m365/spfx/commands/spfx-doctor.js +90 -79
  43. package/dist/m365/spo/commands/app/app-deploy.js +4 -7
  44. package/dist/m365/spo/commands/app/app-get.js +4 -7
  45. package/dist/m365/spo/commands/contenttype/contenttype-get.js +4 -7
  46. package/dist/m365/spo/commands/contenttype/contenttype-remove.js +5 -14
  47. package/dist/m365/spo/commands/file/file-checkin.js +4 -7
  48. package/dist/m365/spo/commands/file/file-checkout.js +4 -7
  49. package/dist/m365/spo/commands/file/file-get.js +4 -7
  50. package/dist/m365/spo/commands/file/file-remove.js +4 -7
  51. package/dist/m365/spo/commands/file/file-sharinginfo-get.js +4 -7
  52. package/dist/m365/spo/commands/group/group-remove.js +4 -7
  53. package/dist/m365/spo/commands/group/group-user-add.js +4 -13
  54. package/dist/m365/spo/commands/group/group-user-list.js +4 -7
  55. package/dist/m365/spo/commands/group/group-user-remove.js +4 -7
  56. package/dist/m365/spo/commands/hubsite/hubsite-unregister.js +1 -1
  57. package/dist/m365/spo/commands/list/list-contenttype-add.js +4 -7
  58. package/dist/m365/spo/commands/list/list-contenttype-default-set.js +4 -7
  59. package/dist/m365/spo/commands/list/list-contenttype-list.js +4 -7
  60. package/dist/m365/spo/commands/list/list-contenttype-remove.js +4 -7
  61. package/dist/m365/spo/commands/list/list-get.js +4 -7
  62. package/dist/m365/spo/commands/list/list-label-get.js +4 -7
  63. package/dist/m365/spo/commands/list/list-label-set.js +4 -4
  64. package/dist/m365/spo/commands/list/list-remove.js +4 -7
  65. package/dist/m365/spo/commands/list/list-roleassignment-add.js +9 -0
  66. package/dist/m365/spo/commands/list/list-roleassignment-remove.js +57 -28
  67. package/dist/m365/spo/commands/list/list-sitescript-get.js +4 -7
  68. package/dist/m365/spo/commands/list/list-view-field-add.js +4 -19
  69. package/dist/m365/spo/commands/list/list-view-field-remove.js +4 -19
  70. package/dist/m365/spo/commands/list/list-view-field-set.js +4 -19
  71. package/dist/m365/spo/commands/list/list-view-get.js +4 -10
  72. package/dist/m365/spo/commands/list/list-view-list.js +4 -7
  73. package/dist/m365/spo/commands/list/list-view-remove.js +4 -13
  74. package/dist/m365/spo/commands/list/list-view-set.js +4 -13
  75. package/dist/m365/spo/commands/list/list-webhook-add.js +4 -7
  76. package/dist/m365/spo/commands/list/list-webhook-get.js +4 -7
  77. package/dist/m365/spo/commands/list/list-webhook-remove.js +4 -7
  78. package/dist/m365/spo/commands/list/list-webhook-set.js +4 -7
  79. package/dist/m365/spo/commands/listitem/listitem-add.js +4 -7
  80. package/dist/m365/spo/commands/listitem/listitem-attachment-list.js +4 -7
  81. package/dist/m365/spo/commands/listitem/listitem-get.js +4 -7
  82. package/dist/m365/spo/commands/listitem/listitem-isrecord.js +4 -7
  83. package/dist/m365/spo/commands/listitem/listitem-record-declare.js +4 -7
  84. package/dist/m365/spo/commands/listitem/listitem-record-undeclare.js +4 -7
  85. package/dist/m365/spo/commands/listitem/listitem-remove.js +4 -7
  86. package/dist/m365/spo/commands/listitem/listitem-roleassignment-remove.js +206 -0
  87. package/dist/m365/spo/commands/listitem/listitem-set.js +4 -7
  88. package/dist/m365/spo/commands/site/site-apppermission-add.js +4 -4
  89. package/dist/m365/spo/commands/site/site-apppermission-remove.js +4 -9
  90. package/dist/m365/spo/commands/site/site-apppermission-set.js +4 -4
  91. package/dist/m365/spo/commands/term/term-add.js +4 -7
  92. package/dist/m365/spo/commands/term/term-get.js +4 -7
  93. package/dist/m365/spo/commands/term/term-group-get.js +4 -7
  94. package/dist/m365/spo/commands/term/term-list.js +4 -13
  95. package/dist/m365/spo/commands/term/term-set-add.js +4 -7
  96. package/dist/m365/spo/commands/term/term-set-get.js +4 -13
  97. package/dist/m365/spo/commands/term/term-set-list.js +4 -7
  98. package/dist/m365/spo/commands/user/user-get.js +4 -9
  99. package/dist/m365/spo/commands/user/user-remove.js +4 -7
  100. package/dist/m365/spo/commands/web/web-roleassignment-add.js +187 -0
  101. package/dist/m365/spo/commands/web/web-roleassignment-remove.js +170 -0
  102. package/dist/m365/spo/commands.js +3 -0
  103. package/dist/m365/teams/commands/app/app-install.js +4 -11
  104. package/dist/m365/teams/commands/app/app-update.js +4 -7
  105. package/dist/m365/teams/commands/channel/channel-add.js +4 -7
  106. package/dist/m365/teams/commands/channel/channel-get.js +4 -22
  107. package/dist/m365/teams/commands/channel/channel-list.js +4 -7
  108. package/dist/m365/teams/commands/channel/channel-member-list.js +4 -13
  109. package/dist/m365/teams/commands/channel/channel-member-set.js +4 -21
  110. package/dist/m365/teams/commands/channel/channel-remove.js +4 -7
  111. package/dist/m365/teams/commands/chat/chat-get.js +4 -17
  112. package/dist/m365/teams/commands/chat/chat-message-send.js +4 -17
  113. package/dist/m365/teams/commands/tab/tab-get.js +6 -21
  114. package/dist/m365/teams/commands/team/team-get.js +4 -7
  115. package/dist/m365/teams/commands/user/user-app-list.js +4 -7
  116. package/dist/m365/todo/commands/list/list-remove.js +4 -21
  117. package/dist/m365/todo/commands/list/list-set.js +4 -21
  118. package/dist/m365/todo/commands/task/task-add.js +4 -21
  119. package/dist/m365/todo/commands/task/task-list.js +4 -21
  120. package/dist/m365/todo/commands/task/task-remove.js +4 -21
  121. package/dist/m365/todo/commands/task/task-set.js +4 -7
  122. package/dist/request.js +6 -2
  123. package/docs/docs/cmd/adaptivecard/adaptivecard-send.md +0 -20
  124. package/docs/docs/cmd/onenote/notebook/notebook-list.md +70 -0
  125. package/docs/docs/cmd/request.md +76 -0
  126. package/docs/docs/cmd/spfx/project/project-upgrade.md +1 -1
  127. package/docs/docs/cmd/spfx/spfx-doctor.md +3 -3
  128. package/docs/docs/cmd/spo/hubsite/hubsite-unregister.md +2 -2
  129. package/docs/docs/cmd/spo/list/list-roleassignment-remove.md +3 -0
  130. package/docs/docs/cmd/spo/listitem/listitem-roleassignment-remove.md +67 -0
  131. package/docs/docs/cmd/spo/listitem/listitem-roleinheritance-break.md +6 -6
  132. package/docs/docs/cmd/spo/web/web-roleassignment-add.md +57 -0
  133. package/docs/docs/cmd/spo/web/web-roleassignment-remove.md +54 -0
  134. package/package.json +2 -1
  135. package/scripts/Register-CLIM365Completion.ps1 +1 -1
@@ -13,7 +13,7 @@ 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 _AadO365GroupUserSetCommand_instances, _AadO365GroupUserSetCommand_initTelemetry, _AadO365GroupUserSetCommand_initOptions, _AadO365GroupUserSetCommand_initValidators;
16
+ var _AadO365GroupUserSetCommand_instances, _AadO365GroupUserSetCommand_initTelemetry, _AadO365GroupUserSetCommand_initOptions, _AadO365GroupUserSetCommand_initValidators, _AadO365GroupUserSetCommand_initOptionSets;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const request_1 = require("../../../../request");
19
19
  const utils_1 = require("../../../../utils");
@@ -27,6 +27,7 @@ class AadO365GroupUserSetCommand extends GraphCommand_1.default {
27
27
  __classPrivateFieldGet(this, _AadO365GroupUserSetCommand_instances, "m", _AadO365GroupUserSetCommand_initTelemetry).call(this);
28
28
  __classPrivateFieldGet(this, _AadO365GroupUserSetCommand_instances, "m", _AadO365GroupUserSetCommand_initOptions).call(this);
29
29
  __classPrivateFieldGet(this, _AadO365GroupUserSetCommand_instances, "m", _AadO365GroupUserSetCommand_initValidators).call(this);
30
+ __classPrivateFieldGet(this, _AadO365GroupUserSetCommand_instances, "m", _AadO365GroupUserSetCommand_initOptionSets).call(this);
30
31
  }
31
32
  get name() {
32
33
  return commands_2.default.O365GROUP_USER_SET;
@@ -143,12 +144,6 @@ _AadO365GroupUserSetCommand_instances = new WeakSet(), _AadO365GroupUserSetComma
143
144
  });
144
145
  }, _AadO365GroupUserSetCommand_initValidators = function _AadO365GroupUserSetCommand_initValidators() {
145
146
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
146
- if (!args.options.groupId && !args.options.teamId) {
147
- return 'Please provide one of the following parameters: groupId or teamId';
148
- }
149
- if (args.options.groupId && args.options.teamId) {
150
- return 'You cannot provide both a groupId and teamId parameter, please provide only one';
151
- }
152
147
  if (args.options.teamId && !utils_1.validation.isValidGuid(args.options.teamId)) {
153
148
  return `${args.options.teamId} is not a valid GUID`;
154
149
  }
@@ -160,6 +155,8 @@ _AadO365GroupUserSetCommand_instances = new WeakSet(), _AadO365GroupUserSetComma
160
155
  }
161
156
  return true;
162
157
  }));
158
+ }, _AadO365GroupUserSetCommand_initOptionSets = function _AadO365GroupUserSetCommand_initOptionSets() {
159
+ this.optionSets.push(['groupId', 'teamId']);
163
160
  };
164
161
  module.exports = new AadO365GroupUserSetCommand();
165
162
  //# sourceMappingURL=o365group-user-set.js.map
@@ -13,7 +13,7 @@ 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 _AadSpAddCommand_instances, _AadSpAddCommand_initTelemetry, _AadSpAddCommand_initOptions, _AadSpAddCommand_initValidators;
16
+ var _AadSpAddCommand_instances, _AadSpAddCommand_initTelemetry, _AadSpAddCommand_initOptions, _AadSpAddCommand_initValidators, _AadSpAddCommand_initOptionSets;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const request_1 = require("../../../../request");
19
19
  const utils_1 = require("../../../../utils");
@@ -26,6 +26,7 @@ class AadSpAddCommand extends GraphCommand_1.default {
26
26
  __classPrivateFieldGet(this, _AadSpAddCommand_instances, "m", _AadSpAddCommand_initTelemetry).call(this);
27
27
  __classPrivateFieldGet(this, _AadSpAddCommand_instances, "m", _AadSpAddCommand_initOptions).call(this);
28
28
  __classPrivateFieldGet(this, _AadSpAddCommand_instances, "m", _AadSpAddCommand_initValidators).call(this);
29
+ __classPrivateFieldGet(this, _AadSpAddCommand_instances, "m", _AadSpAddCommand_initOptionSets).call(this);
29
30
  }
30
31
  get name() {
31
32
  return commands_1.default.SP_ADD;
@@ -105,13 +106,6 @@ _AadSpAddCommand_instances = new WeakSet(), _AadSpAddCommand_initTelemetry = fun
105
106
  });
106
107
  }, _AadSpAddCommand_initValidators = function _AadSpAddCommand_initValidators() {
107
108
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
108
- let optionsSpecified = 0;
109
- optionsSpecified += args.options.appId ? 1 : 0;
110
- optionsSpecified += args.options.appName ? 1 : 0;
111
- optionsSpecified += args.options.objectId ? 1 : 0;
112
- if (optionsSpecified !== 1) {
113
- return 'Specify either appId, appName, or objectId';
114
- }
115
109
  if (args.options.appId && !utils_1.validation.isValidGuid(args.options.appId)) {
116
110
  return `${args.options.appId} is not a valid appId GUID`;
117
111
  }
@@ -120,6 +114,8 @@ _AadSpAddCommand_instances = new WeakSet(), _AadSpAddCommand_initTelemetry = fun
120
114
  }
121
115
  return true;
122
116
  }));
117
+ }, _AadSpAddCommand_initOptionSets = function _AadSpAddCommand_initOptionSets() {
118
+ this.optionSets.push(['appId', 'appName', 'objectId']);
123
119
  };
124
120
  module.exports = new AadSpAddCommand();
125
121
  //# sourceMappingURL=sp-add.js.map
@@ -13,7 +13,7 @@ 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 _AadSpGetCommand_instances, _AadSpGetCommand_initTelemetry, _AadSpGetCommand_initOptions, _AadSpGetCommand_initValidators;
16
+ var _AadSpGetCommand_instances, _AadSpGetCommand_initTelemetry, _AadSpGetCommand_initOptions, _AadSpGetCommand_initValidators, _AadSpGetCommand_initOptionSets;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const request_1 = require("../../../../request");
19
19
  const utils_1 = require("../../../../utils");
@@ -26,6 +26,7 @@ class AadSpGetCommand extends GraphCommand_1.default {
26
26
  __classPrivateFieldGet(this, _AadSpGetCommand_instances, "m", _AadSpGetCommand_initTelemetry).call(this);
27
27
  __classPrivateFieldGet(this, _AadSpGetCommand_instances, "m", _AadSpGetCommand_initOptions).call(this);
28
28
  __classPrivateFieldGet(this, _AadSpGetCommand_instances, "m", _AadSpGetCommand_initValidators).call(this);
29
+ __classPrivateFieldGet(this, _AadSpGetCommand_instances, "m", _AadSpGetCommand_initOptionSets).call(this);
29
30
  }
30
31
  get name() {
31
32
  return commands_1.default.SP_GET;
@@ -105,13 +106,6 @@ _AadSpGetCommand_instances = new WeakSet(), _AadSpGetCommand_initTelemetry = fun
105
106
  });
106
107
  }, _AadSpGetCommand_initValidators = function _AadSpGetCommand_initValidators() {
107
108
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
108
- let optionsSpecified = 0;
109
- optionsSpecified += args.options.appId ? 1 : 0;
110
- optionsSpecified += args.options.appDisplayName ? 1 : 0;
111
- optionsSpecified += args.options.appObjectId ? 1 : 0;
112
- if (optionsSpecified !== 1) {
113
- return 'Specify either appId, appObjectId or appDisplayName';
114
- }
115
109
  if (args.options.appId && !utils_1.validation.isValidGuid(args.options.appId)) {
116
110
  return `${args.options.appId} is not a valid appId GUID`;
117
111
  }
@@ -120,6 +114,8 @@ _AadSpGetCommand_instances = new WeakSet(), _AadSpGetCommand_initTelemetry = fun
120
114
  }
121
115
  return true;
122
116
  }));
117
+ }, _AadSpGetCommand_initOptionSets = function _AadSpGetCommand_initOptionSets() {
118
+ this.optionSets.push(['appId', 'appDisplayName', 'appObjectId']);
123
119
  };
124
120
  module.exports = new AadSpGetCommand();
125
121
  //# sourceMappingURL=sp-get.js.map
@@ -13,7 +13,7 @@ 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 _AadUserGetCommand_instances, _AadUserGetCommand_initTelemetry, _AadUserGetCommand_initOptions, _AadUserGetCommand_initValidators;
16
+ var _AadUserGetCommand_instances, _AadUserGetCommand_initTelemetry, _AadUserGetCommand_initOptions, _AadUserGetCommand_initValidators, _AadUserGetCommand_initOptionSets;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const request_1 = require("../../../../request");
19
19
  const utils_1 = require("../../../../utils");
@@ -26,6 +26,7 @@ class AadUserGetCommand extends GraphCommand_1.default {
26
26
  __classPrivateFieldGet(this, _AadUserGetCommand_instances, "m", _AadUserGetCommand_initTelemetry).call(this);
27
27
  __classPrivateFieldGet(this, _AadUserGetCommand_instances, "m", _AadUserGetCommand_initOptions).call(this);
28
28
  __classPrivateFieldGet(this, _AadUserGetCommand_instances, "m", _AadUserGetCommand_initValidators).call(this);
29
+ __classPrivateFieldGet(this, _AadUserGetCommand_instances, "m", _AadUserGetCommand_initOptionSets).call(this);
29
30
  }
30
31
  get name() {
31
32
  return commands_1.default.USER_GET;
@@ -94,20 +95,14 @@ _AadUserGetCommand_instances = new WeakSet(), _AadUserGetCommand_initTelemetry =
94
95
  });
95
96
  }, _AadUserGetCommand_initValidators = function _AadUserGetCommand_initValidators() {
96
97
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
97
- if (!args.options.id && !args.options.userName && !args.options.email) {
98
- return 'Specify id, userName or email, one is required';
99
- }
100
- if ((args.options.id && args.options.email) ||
101
- (args.options.id && args.options.userName) ||
102
- (args.options.userName && args.options.email)) {
103
- return 'Use either id, userName or email, but not all';
104
- }
105
98
  if (args.options.id &&
106
99
  !utils_1.validation.isValidGuid(args.options.id)) {
107
100
  return `${args.options.id} is not a valid GUID`;
108
101
  }
109
102
  return true;
110
103
  }));
104
+ }, _AadUserGetCommand_initOptionSets = function _AadUserGetCommand_initOptionSets() {
105
+ this.optionSets.push(['id', 'userName', 'email']);
111
106
  };
112
107
  module.exports = new AadUserGetCommand();
113
108
  //# sourceMappingURL=user-get.js.map
@@ -6,6 +6,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
6
6
  };
7
7
  var _AadUserListCommand_instances, _AadUserListCommand_initTelemetry, _AadUserListCommand_initOptions;
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
+ const Command_1 = require("../../../../Command");
9
10
  const utils_1 = require("../../../../utils");
10
11
  const GraphCommand_1 = require("../../../base/GraphCommand");
11
12
  const commands_1 = require("../../commands");
@@ -26,10 +27,17 @@ class AadUserListCommand extends GraphCommand_1.default {
26
27
  return true;
27
28
  }
28
29
  commandAction(logger, args, cb) {
30
+ let filter = '';
29
31
  const properties = args.options.properties ?
30
32
  args.options.properties.split(',').map(p => p.trim()) :
31
33
  ['userPrincipalName', 'displayName'];
32
- const filter = this.getFilter(args.options);
34
+ try {
35
+ filter = this.getFilter(args.options);
36
+ }
37
+ catch (ex) {
38
+ cb(new Command_1.CommandError(ex));
39
+ return;
40
+ }
33
41
  const endpoint = args.options.deleted ? 'directory/deletedItems/microsoft.graph.user' : 'users';
34
42
  const url = `${this.resource}/v1.0/${endpoint}?$select=${properties.join(',')}${(filter.length > 0 ? '&' + filter : '')}&$top=100`;
35
43
  utils_1.odata
@@ -55,7 +63,10 @@ class AadUserListCommand extends GraphCommand_1.default {
55
63
  ];
56
64
  Object.keys(options).forEach(key => {
57
65
  if (excludeOptions.indexOf(key) === -1) {
58
- filters[key] = encodeURIComponent(options[key].replace(/'/g, `''`));
66
+ if (typeof options[key] === 'boolean') {
67
+ throw `Specify value for the ${key} property`;
68
+ }
69
+ filters[key] = encodeURIComponent(options[key].toString().replace(/'/g, `''`));
59
70
  }
60
71
  });
61
72
  let filter = Object.keys(filters).map(key => `startsWith(${key}, '${filters[key]}')`).join(' and ');
@@ -13,7 +13,7 @@ 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 _AadUserSetCommand_instances, _AadUserSetCommand_initTelemetry, _AadUserSetCommand_initOptions, _AadUserSetCommand_initValidators;
16
+ var _AadUserSetCommand_instances, _AadUserSetCommand_initTelemetry, _AadUserSetCommand_initOptions, _AadUserSetCommand_initValidators, _AadUserSetCommand_initOptionSets;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const request_1 = require("../../../../request");
19
19
  const utils_1 = require("../../../../utils");
@@ -26,6 +26,7 @@ class AadUserSetCommand extends GraphCommand_1.default {
26
26
  __classPrivateFieldGet(this, _AadUserSetCommand_instances, "m", _AadUserSetCommand_initTelemetry).call(this);
27
27
  __classPrivateFieldGet(this, _AadUserSetCommand_instances, "m", _AadUserSetCommand_initOptions).call(this);
28
28
  __classPrivateFieldGet(this, _AadUserSetCommand_instances, "m", _AadUserSetCommand_initValidators).call(this);
29
+ __classPrivateFieldGet(this, _AadUserSetCommand_instances, "m", _AadUserSetCommand_initOptionSets).call(this);
29
30
  }
30
31
  get name() {
31
32
  return commands_1.default.USER_SET;
@@ -91,18 +92,14 @@ _AadUserSetCommand_instances = new WeakSet(), _AadUserSetCommand_initTelemetry =
91
92
  });
92
93
  }, _AadUserSetCommand_initValidators = function _AadUserSetCommand_initValidators() {
93
94
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
94
- if (!args.options.objectId && !args.options.userPrincipalName) {
95
- return 'Specify either objectId or userPrincipalName';
96
- }
97
- if (args.options.objectId && args.options.userPrincipalName) {
98
- return 'Specify either objectId or userPrincipalName but not both';
99
- }
100
95
  if (args.options.objectId &&
101
96
  !utils_1.validation.isValidGuid(args.options.objectId)) {
102
97
  return `${args.options.objectId} is not a valid GUID`;
103
98
  }
104
99
  return true;
105
100
  }));
101
+ }, _AadUserSetCommand_initOptionSets = function _AadUserSetCommand_initOptionSets() {
102
+ this.optionSets.push(['objectId', 'userPrincipalName']);
106
103
  };
107
104
  module.exports = new AadUserSetCommand();
108
105
  //# sourceMappingURL=user-set.js.map
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = {
4
4
  LOGIN: `login`,
5
5
  LOGOUT: `logout`,
6
+ REQUEST: `request`,
6
7
  STATUS: `status`,
7
8
  VERSION: 'version'
8
9
  };
@@ -0,0 +1,153 @@
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 _RequestCommand_instances, _RequestCommand_initTelemetry, _RequestCommand_initOptions, _RequestCommand_initValidators;
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const fs = require("fs");
19
+ const Command_1 = require("../../Command");
20
+ const request_1 = require("../../request");
21
+ const commands_1 = require("./commands");
22
+ const path = require("path");
23
+ class RequestCommand extends Command_1.default {
24
+ constructor() {
25
+ super();
26
+ _RequestCommand_instances.add(this);
27
+ this.allowedMethods = ['get', 'post', 'put', 'patch', 'delete', 'head', 'options'];
28
+ __classPrivateFieldGet(this, _RequestCommand_instances, "m", _RequestCommand_initTelemetry).call(this);
29
+ __classPrivateFieldGet(this, _RequestCommand_instances, "m", _RequestCommand_initOptions).call(this);
30
+ __classPrivateFieldGet(this, _RequestCommand_instances, "m", _RequestCommand_initValidators).call(this);
31
+ }
32
+ get name() {
33
+ return commands_1.default.REQUEST;
34
+ }
35
+ get description() {
36
+ return 'Executes the specified web request using CLI for Microsoft 365';
37
+ }
38
+ allowUnknownOptions() {
39
+ return true;
40
+ }
41
+ commandAction(logger, args, cb) {
42
+ if (this.debug) {
43
+ logger.logToStderr(`Preparing request...`);
44
+ }
45
+ const method = (args.options.method || 'get').toUpperCase();
46
+ const headers = {};
47
+ const unknownOptions = this.getUnknownOptions(args.options);
48
+ const unknownOptionsNames = Object.getOwnPropertyNames(unknownOptions);
49
+ unknownOptionsNames.forEach(o => {
50
+ headers[o] = unknownOptions[o];
51
+ });
52
+ if (!headers.accept) {
53
+ headers.accept = 'application/json';
54
+ }
55
+ if (args.options.resource) {
56
+ headers['x-resource'] = args.options.resource;
57
+ }
58
+ const config = {
59
+ url: args.options.url,
60
+ headers,
61
+ method,
62
+ data: args.options.body
63
+ };
64
+ if (headers.accept.toString().startsWith('application/json')) {
65
+ config.responseType = 'json';
66
+ }
67
+ if (args.options.filePath) {
68
+ config.responseType = 'stream';
69
+ }
70
+ if (this.verbose) {
71
+ logger.logToStderr(`Executing request...`);
72
+ }
73
+ if (args.options.filePath) {
74
+ request_1.default
75
+ .execute(config)
76
+ .then((file) => {
77
+ return new Promise((resolve, reject) => {
78
+ const writer = fs.createWriteStream(args.options.filePath);
79
+ file.data.pipe(writer);
80
+ writer.on('error', err => {
81
+ reject(err);
82
+ });
83
+ writer.on('close', () => {
84
+ resolve(args.options.filePath);
85
+ });
86
+ });
87
+ })
88
+ .then((file) => {
89
+ if (this.verbose) {
90
+ logger.logToStderr(`File saved to path ${file}`);
91
+ }
92
+ cb();
93
+ }, (err) => this.handleError(err, logger, cb));
94
+ }
95
+ else {
96
+ request_1.default
97
+ .execute(config)
98
+ .then(response => {
99
+ logger.log(response);
100
+ cb();
101
+ }, (rawRes) => this.handleError(rawRes, logger, cb));
102
+ }
103
+ }
104
+ }
105
+ _RequestCommand_instances = new WeakSet(), _RequestCommand_initTelemetry = function _RequestCommand_initTelemetry() {
106
+ this.telemetry.push((args) => {
107
+ const properties = {
108
+ method: args.options.method || 'get',
109
+ resource: typeof args.options.resource !== 'undefined',
110
+ accept: args.options.accept || 'application/json',
111
+ body: typeof args.options.body !== 'undefined',
112
+ filePath: typeof args.options.filePath !== 'undefined'
113
+ };
114
+ const unknownOptions = this.getUnknownOptions(args.options);
115
+ const unknownOptionsNames = Object.getOwnPropertyNames(unknownOptions);
116
+ unknownOptionsNames.forEach(o => {
117
+ properties[o] = typeof unknownOptions[o] !== 'undefined';
118
+ });
119
+ Object.assign(this.telemetryProperties, properties);
120
+ });
121
+ }, _RequestCommand_initOptions = function _RequestCommand_initOptions() {
122
+ this.options.unshift({
123
+ option: '-u, --url <url>'
124
+ }, {
125
+ option: '-m, --method [method]',
126
+ autocomplete: this.allowedMethods
127
+ }, {
128
+ option: '-r, --resource [resource]'
129
+ }, {
130
+ option: '-b, --body [body]'
131
+ }, {
132
+ option: '-p, --filePath [filePath]'
133
+ });
134
+ }, _RequestCommand_initValidators = function _RequestCommand_initValidators() {
135
+ this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
136
+ const currentMethod = args.options.method || 'get';
137
+ if (this.allowedMethods.indexOf(currentMethod) === -1) {
138
+ return `${currentMethod} is not a valid value for method. Allowed values: ${this.allowedMethods.join(', ')}`;
139
+ }
140
+ if (args.options.body && (!args.options.method || args.options.method === 'get')) {
141
+ return 'Specify a different method when using body';
142
+ }
143
+ if (args.options.body && !args.options['content-type']) {
144
+ return 'Specify the content-type when using body';
145
+ }
146
+ if (args.options.filePath && !fs.existsSync(path.dirname(args.options.filePath))) {
147
+ return 'The location specified in the filePath does not exist';
148
+ }
149
+ return true;
150
+ }));
151
+ };
152
+ module.exports = new RequestCommand();
153
+ //# sourceMappingURL=request.js.map
@@ -0,0 +1,139 @@
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 _OneNoteNotebookListCommand_instances, _OneNoteNotebookListCommand_initTelemetry, _OneNoteNotebookListCommand_initOptions, _OneNoteNotebookListCommand_initValidators;
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const request_1 = require("../../../../request");
19
+ const utils_1 = require("../../../../utils");
20
+ const aadGroup_1 = require("../../../../utils/aadGroup");
21
+ const GraphCommand_1 = require("../../../base/GraphCommand");
22
+ const commands_1 = require("../../commands");
23
+ class OneNoteNotebookListCommand extends GraphCommand_1.default {
24
+ constructor() {
25
+ super();
26
+ _OneNoteNotebookListCommand_instances.add(this);
27
+ __classPrivateFieldGet(this, _OneNoteNotebookListCommand_instances, "m", _OneNoteNotebookListCommand_initTelemetry).call(this);
28
+ __classPrivateFieldGet(this, _OneNoteNotebookListCommand_instances, "m", _OneNoteNotebookListCommand_initOptions).call(this);
29
+ __classPrivateFieldGet(this, _OneNoteNotebookListCommand_instances, "m", _OneNoteNotebookListCommand_initValidators).call(this);
30
+ }
31
+ get name() {
32
+ return commands_1.default.NOTEBOOK_LIST;
33
+ }
34
+ get description() {
35
+ return 'Retrieve a list of notebooks';
36
+ }
37
+ getEndpointUrl(args) {
38
+ return new Promise((resolve, reject) => {
39
+ let endpoint = `${this.resource}/v1.0/me/onenote/notebooks`;
40
+ if (args.options.userId) {
41
+ endpoint = `${this.resource}/v1.0/users/${args.options.userId}/onenote/notebooks`;
42
+ return resolve(endpoint);
43
+ }
44
+ else if (args.options.userName) {
45
+ endpoint = `${this.resource}/v1.0/users/${args.options.userName}/onenote/notebooks`;
46
+ return resolve(endpoint);
47
+ }
48
+ else if (args.options.groupId) {
49
+ endpoint = `${this.resource}/v1.0/groups/${args.options.groupId}/onenote/notebooks`;
50
+ return resolve(endpoint);
51
+ }
52
+ else if (args.options.groupName) {
53
+ this
54
+ .getGroupId(args)
55
+ .then((retrievedgroupId) => {
56
+ endpoint = `${this.resource}/v1.0/groups/${retrievedgroupId}/onenote/notebooks`;
57
+ return resolve(endpoint);
58
+ })
59
+ .catch((err) => {
60
+ reject(err);
61
+ });
62
+ }
63
+ else if (args.options.webUrl) {
64
+ this
65
+ .getSpoSiteId(args)
66
+ .then((siteId) => {
67
+ endpoint = `${this.resource}/v1.0/sites/${siteId}/onenote/notebooks`;
68
+ return resolve(endpoint);
69
+ })
70
+ .catch((err) => {
71
+ reject(err);
72
+ });
73
+ }
74
+ else {
75
+ return resolve(endpoint);
76
+ }
77
+ });
78
+ }
79
+ defaultProperties() {
80
+ return ['createdDateTime', 'displayName', 'id'];
81
+ }
82
+ getGroupId(args) {
83
+ return aadGroup_1.aadGroup
84
+ .getGroupByDisplayName(args.options.groupName)
85
+ .then(group => group.id);
86
+ }
87
+ getSpoSiteId(args) {
88
+ const url = new URL(args.options.webUrl);
89
+ const requestOptions = {
90
+ url: `${this.resource}/v1.0/sites/${url.hostname}:${url.pathname}`,
91
+ headers: {
92
+ accept: 'application/json;odata.metadata=none'
93
+ },
94
+ responseType: 'json'
95
+ };
96
+ return request_1.default
97
+ .get(requestOptions)
98
+ .then((site) => site.id);
99
+ }
100
+ commandAction(logger, args, cb) {
101
+ this
102
+ .getEndpointUrl(args)
103
+ .then(endpoint => utils_1.odata.getAllItems(endpoint))
104
+ .then((items) => {
105
+ return Promise.resolve(items);
106
+ })
107
+ .then((items) => {
108
+ logger.log(items);
109
+ cb();
110
+ }, (err) => this.handleRejectedODataJsonPromise(err, logger, cb));
111
+ }
112
+ }
113
+ _OneNoteNotebookListCommand_instances = new WeakSet(), _OneNoteNotebookListCommand_initTelemetry = function _OneNoteNotebookListCommand_initTelemetry() {
114
+ this.telemetry.push((args) => {
115
+ Object.assign(this.telemetryProperties, {
116
+ joined: args.options.joined
117
+ });
118
+ });
119
+ }, _OneNoteNotebookListCommand_initOptions = function _OneNoteNotebookListCommand_initOptions() {
120
+ this.options.unshift({ option: '--userId [userId]' }, { option: '--userName [userName]' }, { option: '--groupId [groupId]' }, { option: '--groupName [groupName]' }, { option: '-u, --webUrl [webUrl]' });
121
+ }, _OneNoteNotebookListCommand_initValidators = function _OneNoteNotebookListCommand_initValidators() {
122
+ this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
123
+ if (args.options.userId && !utils_1.validation.isValidGuid(args.options.userId)) {
124
+ return `${args.options.userId} is not a valid GUID`;
125
+ }
126
+ if (args.options.groupId && !utils_1.validation.isValidGuid(args.options.groupId)) {
127
+ return `${args.options.groupId} is not a valid GUID`;
128
+ }
129
+ if (args.options.userId && args.options.userName) {
130
+ return 'Specify either userId or userName, but not both';
131
+ }
132
+ if (args.options.groupId && args.options.groupName) {
133
+ return 'Specify either groupId or groupName, but not both';
134
+ }
135
+ return true;
136
+ }));
137
+ };
138
+ module.exports = new OneNoteNotebookListCommand();
139
+ //# sourceMappingURL=notebook-list.js.map
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const prefix = 'onenote';
4
+ exports.default = {
5
+ NOTEBOOK_LIST: `${prefix} notebook list`
6
+ };
7
+ //# sourceMappingURL=commands.js.map
@@ -1,19 +1,10 @@
1
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
2
  var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
12
3
  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
13
4
  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
5
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
15
6
  };
16
- var _OutlookMessageListCommand_instances, _OutlookMessageListCommand_initTelemetry, _OutlookMessageListCommand_initOptions, _OutlookMessageListCommand_initValidators;
7
+ var _OutlookMessageListCommand_instances, _OutlookMessageListCommand_initTelemetry, _OutlookMessageListCommand_initOptions, _OutlookMessageListCommand_initOptionSets;
17
8
  Object.defineProperty(exports, "__esModule", { value: true });
18
9
  const os = require("os");
19
10
  const request_1 = require("../../../../request");
@@ -27,7 +18,7 @@ class OutlookMessageListCommand extends GraphCommand_1.default {
27
18
  _OutlookMessageListCommand_instances.add(this);
28
19
  __classPrivateFieldGet(this, _OutlookMessageListCommand_instances, "m", _OutlookMessageListCommand_initTelemetry).call(this);
29
20
  __classPrivateFieldGet(this, _OutlookMessageListCommand_instances, "m", _OutlookMessageListCommand_initOptions).call(this);
30
- __classPrivateFieldGet(this, _OutlookMessageListCommand_instances, "m", _OutlookMessageListCommand_initValidators).call(this);
21
+ __classPrivateFieldGet(this, _OutlookMessageListCommand_instances, "m", _OutlookMessageListCommand_initOptionSets).call(this);
31
22
  }
32
23
  get name() {
33
24
  return commands_1.default.MESSAGE_LIST;
@@ -99,18 +90,8 @@ _OutlookMessageListCommand_instances = new WeakSet(), _OutlookMessageListCommand
99
90
  option: '--folderId [folderId]',
100
91
  autocomplete: Outlook_1.Outlook.wellKnownFolderNames
101
92
  });
102
- }, _OutlookMessageListCommand_initValidators = function _OutlookMessageListCommand_initValidators() {
103
- this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
104
- if (!args.options.folderId &&
105
- !args.options.folderName) {
106
- return 'Specify folderId or folderName';
107
- }
108
- if (args.options.folderId &&
109
- args.options.folderName) {
110
- return 'Specify either folderId or folderName but not both';
111
- }
112
- return true;
113
- }));
93
+ }, _OutlookMessageListCommand_initOptionSets = function _OutlookMessageListCommand_initOptionSets() {
94
+ this.optionSets.push(['folderId', 'folderName']);
114
95
  };
115
96
  module.exports = new OutlookMessageListCommand();
116
97
  //# sourceMappingURL=message-list.js.map