@pnp/cli-microsoft365 9.0.0-beta.f2c5f82 → 10.0.0-beta.7dfc31a

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.
package/dist/Command.js CHANGED
@@ -111,9 +111,7 @@ class Command {
111
111
  prompted = true;
112
112
  await cli.error('🌶️ Provide values for the following parameters:');
113
113
  }
114
- const answer = optionInfo.autocomplete !== undefined
115
- ? await prompt.forSelection({ message: `${optionInfo.name}: `, choices: optionInfo.autocomplete.map((choice) => { return { name: choice, value: choice }; }) })
116
- : await prompt.forInput({ message: `${optionInfo.name}: ` });
114
+ const answer = await cli.promptForValue(optionInfo);
117
115
  args.options[optionInfo.name] = answer;
118
116
  }
119
117
  if (prompted) {
package/dist/cli/cli.js CHANGED
@@ -137,14 +137,38 @@ async function execute(rawArgs) {
137
137
  }
138
138
  let finalArgs = cli.optionsFromArgs.options;
139
139
  if (cli.commandToExecute?.command.schema) {
140
- const startValidation = process.hrtime.bigint();
141
- const result = cli.commandToExecute.command.getSchemaToParse().safeParse(cli.optionsFromArgs.options);
142
- const endValidation = process.hrtime.bigint();
143
- timings.validation.push(Number(endValidation - startValidation));
144
- if (!result.success) {
145
- return cli.closeWithError(result.error, cli.optionsFromArgs, true);
140
+ while (true) {
141
+ const startValidation = process.hrtime.bigint();
142
+ const result = cli.commandToExecute.command.getSchemaToParse().safeParse(cli.optionsFromArgs.options);
143
+ const endValidation = process.hrtime.bigint();
144
+ timings.validation.push(Number(endValidation - startValidation));
145
+ if (result.success) {
146
+ finalArgs = result.data;
147
+ break;
148
+ }
149
+ else {
150
+ const hasNonRequiredErrors = result.error.errors.some(e => e.code !== 'invalid_type' || e.received !== 'undefined');
151
+ const shouldPrompt = cli.getSettingWithDefaultValue(settingsNames.prompt, true);
152
+ if (hasNonRequiredErrors === false &&
153
+ shouldPrompt) {
154
+ await cli.error('🌶️ Provide values for the following parameters:');
155
+ for (const error of result.error.errors) {
156
+ const optionInfo = cli.commandToExecute.options.find(o => o.name === error.path.join('.'));
157
+ const answer = await cli.promptForValue(optionInfo);
158
+ cli.optionsFromArgs.options[error.path.join('.')] = answer;
159
+ }
160
+ }
161
+ else {
162
+ result.error.errors.forEach(e => {
163
+ if (e.code === 'invalid_type' &&
164
+ e.received === 'undefined') {
165
+ e.message = `Required option not specified`;
166
+ }
167
+ });
168
+ return cli.closeWithError(result.error, cli.optionsFromArgs, true);
169
+ }
170
+ }
146
171
  }
147
- finalArgs = result.data;
148
172
  }
149
173
  else {
150
174
  const startValidation = process.hrtime.bigint();
@@ -753,7 +777,7 @@ async function closeWithError(error, args, showHelpIfEnabled = false) {
753
777
  }
754
778
  let errorMessage = error instanceof CommandError ? error.message : error;
755
779
  if (error instanceof ZodError) {
756
- errorMessage = error.errors.map(e => `${e.path}: ${e.message}`).join(os.EOL);
780
+ errorMessage = error.errors.map(e => `${e.path.join('.')}: ${e.message}`).join(os.EOL);
757
781
  }
758
782
  if ((!args.options.output || args.options.output === 'json') &&
759
783
  !cli.getSettingWithDefaultValue(settingsNames.printErrorsAsPlainText, true)) {
@@ -793,6 +817,16 @@ async function error(message, ...optionalParams) {
793
817
  console.error(message, ...optionalParams);
794
818
  }
795
819
  }
820
+ async function promptForValue(optionInfo) {
821
+ return optionInfo.autocomplete !== undefined
822
+ ? await prompt.forSelection({
823
+ message: `${optionInfo.name}: `,
824
+ choices: optionInfo.autocomplete.map((choice) => {
825
+ return { name: choice, value: choice };
826
+ })
827
+ })
828
+ : await prompt.forInput({ message: `${optionInfo.name}: ` });
829
+ }
796
830
  async function promptForSelection(config) {
797
831
  const answer = await prompt.forSelection(config);
798
832
  await cli.error('');
@@ -857,6 +891,7 @@ export const cli = {
857
891
  printAvailableCommands,
858
892
  promptForConfirmation,
859
893
  promptForSelection,
894
+ promptForValue,
860
895
  shouldTrimOutput,
861
896
  yargsConfiguration
862
897
  };
@@ -38,19 +38,24 @@ class LoginCommand extends Command {
38
38
  getRefinedSchema(schema) {
39
39
  return schema
40
40
  .refine(options => options.authType !== 'password' || options.userName, {
41
- message: 'Username is required when using password authentication'
41
+ message: 'Username is required when using password authentication',
42
+ path: ['userName']
42
43
  })
43
44
  .refine(options => options.authType !== 'password' || options.password, {
44
- message: 'Password is required when using password authentication'
45
+ message: 'Password is required when using password authentication',
46
+ path: ['password']
45
47
  })
46
48
  .refine(options => options.authType !== 'certificate' || !(options.certificateFile && options.certificateBase64Encoded), {
47
- message: 'Specify either certificateFile or certificateBase64Encoded, but not both.'
49
+ message: 'Specify either certificateFile or certificateBase64Encoded, but not both.',
50
+ path: ['certificateBase64Encoded']
48
51
  })
49
52
  .refine(options => options.authType !== 'certificate' || options.certificateFile || options.certificateBase64Encoded, {
50
- message: 'Specify either certificateFile or certificateBase64Encoded'
53
+ message: 'Specify either certificateFile or certificateBase64Encoded',
54
+ path: ['certificateFile']
51
55
  })
52
56
  .refine(options => options.authType !== 'secret' || options.secret, {
53
- message: 'Secret is required when using secret authentication'
57
+ message: 'Secret is required when using secret authentication',
58
+ path: ['secret']
54
59
  });
55
60
  }
56
61
  async commandAction(logger, args) {
@@ -0,0 +1,132 @@
1
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
+ };
6
+ var _OneNoteNotebookAddCommand_instances, _OneNoteNotebookAddCommand_initTelemetry, _OneNoteNotebookAddCommand_initOptions, _OneNoteNotebookAddCommand_initValidators, _OneNoteNotebookAddCommand_initOptionSets;
7
+ import request from '../../../../request.js';
8
+ import { entraGroup } from '../../../../utils/entraGroup.js';
9
+ import { validation } from '../../../../utils/validation.js';
10
+ import GraphCommand from '../../../base/GraphCommand.js';
11
+ import commands from '../../commands.js';
12
+ import { spo } from '../../../../utils/spo.js';
13
+ class OneNoteNotebookAddCommand extends GraphCommand {
14
+ get name() {
15
+ return commands.NOTEBOOK_ADD;
16
+ }
17
+ get description() {
18
+ return 'Create a new OneNote notebook';
19
+ }
20
+ constructor() {
21
+ super();
22
+ _OneNoteNotebookAddCommand_instances.add(this);
23
+ __classPrivateFieldGet(this, _OneNoteNotebookAddCommand_instances, "m", _OneNoteNotebookAddCommand_initTelemetry).call(this);
24
+ __classPrivateFieldGet(this, _OneNoteNotebookAddCommand_instances, "m", _OneNoteNotebookAddCommand_initOptions).call(this);
25
+ __classPrivateFieldGet(this, _OneNoteNotebookAddCommand_instances, "m", _OneNoteNotebookAddCommand_initValidators).call(this);
26
+ __classPrivateFieldGet(this, _OneNoteNotebookAddCommand_instances, "m", _OneNoteNotebookAddCommand_initOptionSets).call(this);
27
+ }
28
+ async commandAction(logger, args) {
29
+ try {
30
+ if (this.verbose) {
31
+ await logger.logToStderr(`Creating OneNote notebook ${args.options.name}`);
32
+ }
33
+ const requestUrl = await this.getRequestUrl(args);
34
+ const requestOptions = {
35
+ url: requestUrl,
36
+ headers: {
37
+ accept: 'application/json;odata.metadata=none',
38
+ 'content-type': "application/json"
39
+ },
40
+ responseType: 'json',
41
+ data: {
42
+ displayName: args.options.name
43
+ }
44
+ };
45
+ const response = await request.post(requestOptions);
46
+ await logger.log(response);
47
+ }
48
+ catch (err) {
49
+ this.handleRejectedODataJsonPromise(err);
50
+ }
51
+ }
52
+ async getRequestUrl(args) {
53
+ let endpoint = `${this.resource}/v1.0/`;
54
+ if (args.options.userId) {
55
+ endpoint += `users/${args.options.userId}`;
56
+ }
57
+ else if (args.options.userName) {
58
+ endpoint += `users/${args.options.userName}`;
59
+ }
60
+ else if (args.options.groupId) {
61
+ endpoint += `groups/${args.options.groupId}`;
62
+ }
63
+ else if (args.options.groupName) {
64
+ const groupId = await entraGroup.getGroupIdByDisplayName(args.options.groupName);
65
+ endpoint += `groups/${groupId}`;
66
+ }
67
+ else if (args.options.webUrl) {
68
+ const siteId = await spo.getSpoGraphSiteId(args.options.webUrl);
69
+ endpoint += `sites/${siteId}`;
70
+ }
71
+ else {
72
+ endpoint += 'me';
73
+ }
74
+ endpoint += '/onenote/notebooks';
75
+ return endpoint;
76
+ }
77
+ }
78
+ _OneNoteNotebookAddCommand_instances = new WeakSet(), _OneNoteNotebookAddCommand_initTelemetry = function _OneNoteNotebookAddCommand_initTelemetry() {
79
+ this.telemetry.push((args) => {
80
+ Object.assign(this.telemetryProperties, {
81
+ userId: typeof args.options.userId !== 'undefined',
82
+ userName: typeof args.options.userName !== 'undefined',
83
+ groupId: typeof args.options.groupId !== 'undefined',
84
+ groupName: typeof args.options.groupName !== 'undefined',
85
+ webUrl: typeof args.options.webUrl !== 'undefined'
86
+ });
87
+ });
88
+ }, _OneNoteNotebookAddCommand_initOptions = function _OneNoteNotebookAddCommand_initOptions() {
89
+ this.options.unshift({
90
+ option: '-n, --name <name>'
91
+ }, {
92
+ option: '--userId [userId]'
93
+ }, {
94
+ option: '--userName [userName]'
95
+ }, {
96
+ option: '--groupId [groupId]'
97
+ }, {
98
+ option: '--groupName [groupName]'
99
+ }, {
100
+ option: '-u, --webUrl [webUrl]'
101
+ });
102
+ }, _OneNoteNotebookAddCommand_initValidators = function _OneNoteNotebookAddCommand_initValidators() {
103
+ this.validators.push(async (args) => {
104
+ // check name for invalid characters
105
+ if (args.options.name.length > 128) {
106
+ return 'The specified name is too long. It should be less than 128 characters';
107
+ }
108
+ if (/[?*/:<>|'"]/.test(args.options.name)) {
109
+ return `The specified name contains invalid characters. It cannot contain ?*/:<>|'". Please remove them and try again.`;
110
+ }
111
+ if (args.options.userId && !validation.isValidGuid(args.options.userId)) {
112
+ return `${args.options.userId} is not a valid GUID`;
113
+ }
114
+ if (args.options.groupId && !validation.isValidGuid(args.options.groupId)) {
115
+ return `${args.options.groupId} is not a valid GUID`;
116
+ }
117
+ if (args.options.webUrl) {
118
+ return validation.isValidSharePointUrl(args.options.webUrl);
119
+ }
120
+ return true;
121
+ });
122
+ }, _OneNoteNotebookAddCommand_initOptionSets = function _OneNoteNotebookAddCommand_initOptionSets() {
123
+ this.optionSets.push({
124
+ options: ['userId', 'userName', 'groupId', 'groupName', 'webUrl'],
125
+ runsWhen: (args) => {
126
+ const options = [args.options.userId, args.options.userName, args.options.groupId, args.options.groupName, args.options.webUrl];
127
+ return options.some(item => item !== undefined);
128
+ }
129
+ });
130
+ };
131
+ export default new OneNoteNotebookAddCommand();
132
+ //# sourceMappingURL=notebook-add.js.map
@@ -1,5 +1,6 @@
1
1
  const prefix = 'onenote';
2
2
  export default {
3
+ NOTEBOOK_ADD: `${prefix} notebook add`,
3
4
  NOTEBOOK_LIST: `${prefix} notebook list`,
4
5
  PAGE_LIST: `${prefix} page list`
5
6
  };
@@ -1,13 +1,17 @@
1
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
- };
6
- var _SpoSiteGetCommand_instances, _SpoSiteGetCommand_initOptions, _SpoSiteGetCommand_initValidators;
1
+ import { z } from 'zod';
2
+ import { globalOptionsZod } from '../../../../Command.js';
7
3
  import request from '../../../../request.js';
8
4
  import { validation } from '../../../../utils/validation.js';
5
+ import { zod } from '../../../../utils/zod.js';
9
6
  import SpoCommand from '../../../base/SpoCommand.js';
10
7
  import commands from '../../commands.js';
8
+ const options = globalOptionsZod
9
+ .extend({
10
+ url: zod.alias('u', z.string().refine(url => validation.isValidSharePointUrl(url) === true, {
11
+ message: 'Specify a valid SharePoint site URL'
12
+ }))
13
+ })
14
+ .strict();
11
15
  class SpoSiteGetCommand extends SpoCommand {
12
16
  get name() {
13
17
  return commands.SITE_GET;
@@ -15,11 +19,8 @@ class SpoSiteGetCommand extends SpoCommand {
15
19
  get description() {
16
20
  return 'Gets information about the specific site collection';
17
21
  }
18
- constructor() {
19
- super();
20
- _SpoSiteGetCommand_instances.add(this);
21
- __classPrivateFieldGet(this, _SpoSiteGetCommand_instances, "m", _SpoSiteGetCommand_initOptions).call(this);
22
- __classPrivateFieldGet(this, _SpoSiteGetCommand_instances, "m", _SpoSiteGetCommand_initValidators).call(this);
22
+ get schema() {
23
+ return options;
23
24
  }
24
25
  async commandAction(logger, args) {
25
26
  const requestOptions = {
@@ -38,10 +39,5 @@ class SpoSiteGetCommand extends SpoCommand {
38
39
  }
39
40
  }
40
41
  }
41
- _SpoSiteGetCommand_instances = new WeakSet(), _SpoSiteGetCommand_initOptions = function _SpoSiteGetCommand_initOptions() {
42
- this.options.unshift({ option: '-u, --url <url>' });
43
- }, _SpoSiteGetCommand_initValidators = function _SpoSiteGetCommand_initValidators() {
44
- this.validators.push(async (args) => validation.isValidSharePointUrl(args.options.url));
45
- };
46
42
  export default new SpoSiteGetCommand();
47
43
  //# sourceMappingURL=site-get.js.map
@@ -0,0 +1,169 @@
1
+ import Global from '/docs/cmd/_global.mdx';
2
+ import Tabs from '@theme/Tabs';
3
+ import TabItem from '@theme/TabItem';
4
+
5
+ # onenote notebook add
6
+
7
+ Create a new OneNote notebook.
8
+
9
+ ## Usage
10
+
11
+ ```sh
12
+ m365 onenote notebook add [options]
13
+ ```
14
+
15
+ ## Options
16
+
17
+ ```md definition-list
18
+ `-n, --name <name>`
19
+ : Name of the notebook. Notebook names must be unique. The name cannot contain more than 128 characters or contain the following characters: `?*/:<>`
20
+
21
+ `--userId [userId]`
22
+ : Id of the user. Specify either `userId`, `userName`, `groupId`, `groupName` or `webUrl`, but not multiple.
23
+
24
+ `--userName [userName]`
25
+ : Name of the user. Specify either `userId`, `userName`, `groupId`, `groupName` or `webUrl`, but not multiple.
26
+
27
+ `--groupId [groupId]`
28
+ : Id of the SharePoint group. Specify either `userId`, `userName`, `groupId`, `groupName` or `webUrl`, but not multiple.
29
+
30
+ `--groupName [groupName]`
31
+ : Name of the SharePoint group. Specify either `userId`, `userName`, `groupId`, `groupName` or `webUrl`, but not multiple.
32
+
33
+ `-u, --webUrl [webUrl]`
34
+ : URL of the SharePoint site. Specify either `userId`, `userName`, `groupId`, `groupName` or `webUrl`, but not multiple.
35
+ ```
36
+
37
+ <Global />
38
+
39
+ ## Examples
40
+
41
+ Create a Microsoft OneNote notebook for the currently logged in user
42
+
43
+ ```sh
44
+ m365 onenote notebook add --name "Private Notebook"
45
+ ```
46
+
47
+ Create a Microsoft OneNote notebook in a group specified by id.
48
+
49
+ ```sh
50
+ m365 onenote notebook add --name "Private Notebook" --groupId 233e43d0-dc6a-482e-9b4e-0de7a7bce9b4
51
+ ```
52
+
53
+ Create a Microsoft OneNote notebook in a group specified by displayName.
54
+
55
+ ```sh
56
+ m365 onenote notebook add --name "Private Notebook" --groupName "MyGroup"
57
+ ```
58
+
59
+ Create a Microsoft OneNote notebook for a user specified by name
60
+
61
+ ```sh
62
+ m365 onenote notebook add --name "Private Notebook" --userName user1@contoso.onmicrosoft.com
63
+ ```
64
+
65
+ Create a Microsoft OneNote notebook for a user specified by id
66
+
67
+ ```sh
68
+ m365 onenote notebook add --name "Private Notebook" --userId 2609af39-7775-4f94-a3dc-0dd67657e900
69
+ ```
70
+
71
+ Creates a Microsoft OneNote notebooks for a site
72
+
73
+ ```sh
74
+ m365 onenote notebook add --name "Private Notebook" --webUrl https://contoso.sharepoint.com/sites/testsite
75
+ ```
76
+
77
+ ## Response
78
+
79
+ <Tabs>
80
+ <TabItem value="JSON">
81
+
82
+ ```json
83
+ {
84
+ "id": "1-08554ffd-b769-4a4a-9563-faaa3191f253",
85
+ "self": "https://graph.microsoft.com/v1.0/users/fe36f75e-c103-410b-a18a-2bf6df06ac3a/onenote/notebooks/1-08554ffd-b769-4a4a-9563-faaa3191f253",
86
+ "createdDateTime": "2024-04-05T17:58:27Z",
87
+ "displayName": "Private Notebook",
88
+ "lastModifiedDateTime": "2024-04-05T17:58:27Z",
89
+ "isDefault": false,
90
+ "userRole": "Owner",
91
+ "isShared": false,
92
+ "sectionsUrl": "https://graph.microsoft.com/v1.0/users/fe36f75e-c103-410b-a18a-2bf6df06ac3a/onenote/notebooks/1-08554ffd-b769-4a4a-9563-faaa3191f253/sections",
93
+ "sectionGroupsUrl": "https://graph.microsoft.com/v1.0/users/fe36f75e-c103-410b-a18a-2bf6df06ac3a/onenote/notebooks/1-08554ffd-b769-4a4a-9563-faaa3191f253/sectionGroups",
94
+ "createdBy": {
95
+ "user": {
96
+ "id": "fe36f75e-c103-410b-a18a-2bf6df06ac3a",
97
+ "displayName": "John Doe"
98
+ }
99
+ },
100
+ "lastModifiedBy": {
101
+ "user": {
102
+ "id": "fe36f75e-c103-410b-a18a-2bf6df06ac3a",
103
+ "displayName": "John Doe"
104
+ }
105
+ },
106
+ "links": {
107
+ "oneNoteClientUrl": {
108
+ "href": "onenote:https://contoso-my.sharepoint.com/personal/john_contoso_onmicrosoft_com/Documents/Notebooks/Private Notebook"
109
+ },
110
+ "oneNoteWebUrl": {
111
+ "href": "https://contoso-my.sharepoint.com/personal/john_contoso_onmicrosoft_com/Documents/Notebooks/Private Notebook"
112
+ }
113
+ }
114
+ }
115
+ ```
116
+
117
+ </TabItem>
118
+ <TabItem value="Text">
119
+
120
+ ```text
121
+ createdBy : {"user":{"id":"fe36f75e-c103-410b-a18a-2bf6df06ac3a","displayName":"John Doe"}}
122
+ createdDateTime : 2024-04-05T17:58:36Z
123
+ displayName : Private Notebook
124
+ id : 1-f4bba32b-9b3e-4892-8df4-931a15f7eb6f
125
+ isDefault : false
126
+ isShared : false
127
+ lastModifiedBy : {"user":{"id":"fe36f75e-c103-410b-a18a-2bf6df06ac3a","displayName":"John Doe"}}
128
+ lastModifiedDateTime: 2024-04-05T17:58:36Z
129
+ links : {"oneNoteClientUrl":{"href":"onenote:https://contoso-my.sharepoint.com/personal/john_contoso_onmicrosoft_com/Documents/Notebooks/Private Notebook"},"oneNoteWebUrl":{"href":"https://contoso-my.sharepoint.com/personal/john_contoso_onmicrosoft_com/Documents/Notebooks/Private Notebook"}}
130
+ sectionGroupsUrl : https://graph.microsoft.com/v1.0/users/fe36f75e-c103-410b-a18a-2bf6df06ac3a/onenote/notebooks/1-f4bba32b-9b3e-4892-8df4-931a15f7eb6f/sectionGroups
131
+ sectionsUrl : https://graph.microsoft.com/v1.0/users/fe36f75e-c103-410b-a18a-2bf6df06ac3a/onenote/notebooks/1-f4bba32b-9b3e-4892-8df4-931a15f7eb6f/sections
132
+ self : https://graph.microsoft.com/v1.0/users/fe36f75e-c103-410b-a18a-2bf6df06ac3a/onenote/notebooks/1-f4bba32b-9b3e-4892-8df4-931a15f7eb6f
133
+ userRole : Owner
134
+ ```
135
+
136
+ </TabItem>
137
+ <TabItem value="CSV">
138
+
139
+ ```csv
140
+ id,self,createdDateTime,displayName,lastModifiedDateTime,isDefault,userRole,isShared,sectionsUrl,sectionGroupsUrl
141
+ 1-272a5791-2c95-45cf-b27d-7f68e07f6149,https://graph.microsoft.com/v1.0/users/fe36f75e-c103-410b-a18a-2bf6df06ac3a/onenote/notebooks/1-272a5791-2c95-45cf-b27d-7f68e07f6149,2024-04-05T18:00:28Z,Private Notebook,2024-04-05T18:00:28Z,,Owner,,https://graph.microsoft.com/v1.0/users/fe36f75e-c103-410b-a18a-2bf6df06ac3a/onenote/notebooks/1-272a5791-2c95-45cf-b27d-7f68e07f6149/sections,https://graph.microsoft.com/v1.0/users/fe36f75e-c103-410b-a18a-2bf6df06ac3a/onenote/notebooks/1-272a5791-2c95-45cf-b27d-7f68e07f6149/sectionGroups
142
+ ```
143
+
144
+ </TabItem>
145
+ <TabItem value="Markdown">
146
+
147
+ ```md
148
+ # onenote notebook add --name "Private Notebook"
149
+
150
+ Date: 05/04/2024
151
+
152
+ ## Private Notebook (1-fa279d79-4701-43a2-9593-c2abfbe6999f)
153
+
154
+ Property | Value
155
+ ---------|-------
156
+ id | 1-fa279d79-4701-43a2-9593-c2abfbe6999f
157
+ self | https://graph.microsoft.com/v1.0/users/fe36f75e-c103-410b-a18a-2bf6df06ac3a/onenote/notebooks/1-fa279d79-4701-43a2-9593-c2abfbe6999f
158
+ createdDateTime | 2024-04-05T18:00:58Z
159
+ displayName | Private Notebook
160
+ lastModifiedDateTime | 2024-04-05T18:00:58Z
161
+ isDefault | false
162
+ userRole | Owner
163
+ isShared | false
164
+ sectionsUrl | https://graph.microsoft.com/v1.0/users/fe36f75e-c103-410b-a18a-2bf6df06ac3a/onenote/notebooks/1-fa279d79-4701-43a2-9593-c2abfbe6999f/sections
165
+ sectionGroupsUrl | https://graph.microsoft.com/v1.0/users/fe36f75e-c103-410b-a18a-2bf6df06ac3a/onenote/notebooks/1-fa279d79-4701-43a2-9593-c2abfbe6999f/sectionGroups
166
+ ```
167
+
168
+ </TabItem>
169
+ </Tabs>
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@pnp/cli-microsoft365",
3
- "version": "9.0.0",
3
+ "version": "10.0.0",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@pnp/cli-microsoft365",
9
- "version": "9.0.0",
9
+ "version": "10.0.0",
10
10
  "license": "MIT",
11
11
  "dependencies": {
12
12
  "@azure/msal-common": "^14.14.0",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pnp/cli-microsoft365",
3
- "version": "9.0.0-beta.f2c5f82",
3
+ "version": "10.0.0-beta.7dfc31a",
4
4
  "description": "Manage Microsoft 365 and SharePoint Framework projects on any platform",
5
5
  "license": "MIT",
6
6
  "main": "./dist/api.js",