@pnp/cli-microsoft365 6.11.0-beta.6475e2e → 6.11.0-beta.6b1d864

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 (94) hide show
  1. package/dist/Auth.js +2 -1
  2. package/dist/m365/spo/commands/file/file-add.js +13 -13
  3. package/dist/m365/spo/commands/file/file-checkin.js +1 -1
  4. package/dist/m365/spo/commands/file/file-checkout.js +1 -1
  5. package/dist/m365/spo/commands/file/file-list.js +4 -4
  6. package/dist/m365/spo/commands/file/file-move.js +2 -2
  7. package/dist/m365/spo/commands/file/file-remove.js +6 -6
  8. package/dist/m365/spo/commands/file/file-rename.js +2 -2
  9. package/dist/m365/spo/commands/file/file-retentionlabel-ensure.js +1 -1
  10. package/dist/m365/spo/commands/file/file-retentionlabel-remove.js +1 -1
  11. package/dist/m365/spo/commands/file/file-roleassignment-add.js +1 -1
  12. package/dist/m365/spo/commands/file/file-roleassignment-remove.js +1 -1
  13. package/dist/m365/spo/commands/file/file-roleinheritance-break.js +1 -1
  14. package/dist/m365/spo/commands/file/file-roleinheritance-reset.js +1 -1
  15. package/dist/m365/spo/commands/file/file-version-clear.js +1 -1
  16. package/dist/m365/spo/commands/file/file-version-get.js +1 -1
  17. package/dist/m365/spo/commands/file/file-version-list.js +1 -1
  18. package/dist/m365/spo/commands/file/file-version-remove.js +1 -1
  19. package/dist/m365/spo/commands/file/file-version-restore.js +1 -1
  20. package/dist/m365/spo/commands/folder/folder-add.js +2 -4
  21. package/dist/m365/spo/commands/folder/folder-get.js +1 -1
  22. package/dist/m365/spo/commands/folder/folder-list.js +2 -2
  23. package/dist/m365/spo/commands/folder/folder-remove.js +7 -4
  24. package/dist/m365/spo/commands/folder/folder-rename.js +13 -17
  25. package/dist/m365/spo/commands/folder/folder-retentionlabel-ensure.js +1 -1
  26. package/dist/m365/spo/commands/folder/folder-retentionlabel-remove.js +1 -1
  27. package/dist/m365/spo/commands/folder/folder-roleassignment-add.js +1 -1
  28. package/dist/m365/spo/commands/folder/folder-roleassignment-remove.js +1 -1
  29. package/dist/m365/spo/commands/folder/folder-roleinheritance-break.js +1 -1
  30. package/dist/m365/spo/commands/folder/folder-roleinheritance-reset.js +1 -1
  31. package/dist/m365/spo/commands/page/Page.js +24 -32
  32. package/dist/m365/spo/commands/propertybag/propertybag-base.js +75 -54
  33. package/dist/m365/spo/commands/propertybag/propertybag-remove.js +41 -40
  34. package/dist/m365/spo/commands/site/FlowsPolicy.js +10 -0
  35. package/dist/m365/spo/commands/site/site-ensure.js +3 -3
  36. package/dist/m365/spo/commands/site/site-hubsite-disconnect.js +24 -22
  37. package/dist/m365/spo/commands/site/site-list.js +28 -36
  38. package/dist/m365/spo/commands/site/site-set.js +52 -39
  39. package/dist/m365/spo/commands/theme/theme-remove.js +26 -24
  40. package/dist/m365/spo/commands/theme/theme-set.js +0 -1
  41. package/dist/m365/spo/commands/user/user-remove.js +29 -27
  42. package/dist/m365/spo/commands/web/web-reindex.js +17 -20
  43. package/dist/m365/spo/commands/web/web-remove.js +23 -21
  44. package/dist/m365/spo/commands/web/web-roleassignment-add.js +45 -52
  45. package/dist/m365/spo/commands/web/web-roleassignment-remove.js +58 -61
  46. package/dist/m365/spo/commands/web/web-roleinheritance-break.js +20 -18
  47. package/dist/m365/spo/commands/web/web-roleinheritance-reset.js +21 -19
  48. package/dist/m365/yammer/commands/message/message-like-set.js +29 -28
  49. package/dist/m365/yammer/commands/message/message-list.js +9 -26
  50. package/dist/m365/yammer/commands/message/message-remove.js +20 -18
  51. package/dist/m365/yammer/commands/yammer-search.js +42 -56
  52. package/dist/utils/spo.js +1 -1
  53. package/docs/docs/cmd/spo/file/file-add.mdx +1 -1
  54. package/docs/docs/cmd/spo/file/file-checkin.mdx +1 -1
  55. package/docs/docs/cmd/spo/file/file-checkout-undo.mdx +1 -9
  56. package/docs/docs/cmd/spo/file/file-checkout.mdx +1 -1
  57. package/docs/docs/cmd/spo/file/file-copy.mdx +2 -8
  58. package/docs/docs/cmd/spo/file/file-get.mdx +1 -1
  59. package/docs/docs/cmd/spo/file/file-list.mdx +2 -2
  60. package/docs/docs/cmd/spo/file/file-move.mdx +2 -2
  61. package/docs/docs/cmd/spo/file/file-remove.mdx +8 -8
  62. package/docs/docs/cmd/spo/file/file-rename.mdx +3 -3
  63. package/docs/docs/cmd/spo/file/file-retentionlabel-ensure.mdx +2 -2
  64. package/docs/docs/cmd/spo/file/file-retentionlabel-remove.mdx +3 -3
  65. package/docs/docs/cmd/spo/file/file-roleassignment-add.mdx +1 -1
  66. package/docs/docs/cmd/spo/file/file-roleassignment-remove.mdx +1 -1
  67. package/docs/docs/cmd/spo/file/file-roleinheritance-break.mdx +1 -1
  68. package/docs/docs/cmd/spo/file/file-roleinheritance-reset.mdx +1 -1
  69. package/docs/docs/cmd/spo/file/file-sharinginfo-get.mdx +1 -1
  70. package/docs/docs/cmd/spo/file/file-sharinglink-add.mdx +1 -1
  71. package/docs/docs/cmd/spo/file/file-sharinglink-clear.mdx +1 -1
  72. package/docs/docs/cmd/spo/file/file-sharinglink-get.mdx +1 -1
  73. package/docs/docs/cmd/spo/file/file-sharinglink-list.mdx +1 -1
  74. package/docs/docs/cmd/spo/file/file-sharinglink-remove.mdx +1 -1
  75. package/docs/docs/cmd/spo/file/file-sharinglink-set.mdx +1 -1
  76. package/docs/docs/cmd/spo/file/file-version-clear.mdx +1 -1
  77. package/docs/docs/cmd/spo/file/file-version-get.mdx +1 -1
  78. package/docs/docs/cmd/spo/file/file-version-list.mdx +1 -1
  79. package/docs/docs/cmd/spo/file/file-version-remove.mdx +1 -1
  80. package/docs/docs/cmd/spo/file/file-version-restore.mdx +1 -1
  81. package/docs/docs/cmd/spo/folder/folder-add.mdx +76 -1
  82. package/docs/docs/cmd/spo/folder/folder-get.mdx +1 -1
  83. package/docs/docs/cmd/spo/folder/folder-list.mdx +1 -1
  84. package/docs/docs/cmd/spo/folder/folder-remove.mdx +1 -1
  85. package/docs/docs/cmd/spo/folder/folder-rename.mdx +5 -1
  86. package/docs/docs/cmd/spo/folder/folder-retentionlabel-ensure.mdx +1 -1
  87. package/docs/docs/cmd/spo/folder/folder-retentionlabel-remove.mdx +1 -1
  88. package/docs/docs/cmd/spo/folder/folder-roleassignment-add.mdx +2 -2
  89. package/docs/docs/cmd/spo/folder/folder-roleassignment-remove.mdx +1 -1
  90. package/docs/docs/cmd/spo/folder/folder-roleinheritance-break.mdx +1 -1
  91. package/docs/docs/cmd/spo/folder/folder-roleinheritance-reset.mdx +1 -1
  92. package/docs/docs/cmd/spo/site/site-ensure.mdx +1 -1
  93. package/npm-shrinkwrap.json +683 -344
  94. package/package.json +13 -13
package/dist/Auth.js CHANGED
@@ -588,7 +588,8 @@ class Auth {
588
588
  resource = resource.substr(0, pos);
589
589
  }
590
590
  if (resource === 'https://api.bap.microsoft.com' ||
591
- resource === 'https://api.powerapps.com') {
591
+ resource === 'https://api.powerapps.com' ||
592
+ resource.endsWith('.api.bap.microsoft.com')) {
592
593
  resource = 'https://service.powerapps.com/';
593
594
  }
594
595
  if (resource === 'https://api.powerbi.com') {
@@ -66,7 +66,7 @@ class SpoFileAddCommand extends SpoCommand_1.default {
66
66
  try {
67
67
  try {
68
68
  const requestOptions = {
69
- url: `${args.options.webUrl}/_api/web/GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(folderPath)}')`,
69
+ url: `${args.options.webUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(folderPath)}')`,
70
70
  headers: {
71
71
  'accept': 'application/json;odata=nometadata'
72
72
  }
@@ -100,7 +100,7 @@ class SpoFileAddCommand extends SpoCommand_1.default {
100
100
  // initiate chunked upload session
101
101
  const uploadId = (0, uuid_1.v4)();
102
102
  const requestOptions = {
103
- url: `${args.options.webUrl}/_api/web/GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(folderPath)}')/Files/GetByPathOrAddStub(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(fileName)}')/StartUpload(uploadId=guid'${uploadId}')`,
103
+ url: `${args.options.webUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(folderPath)}')/Files/GetByPathOrAddStub(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(fileName)}')/StartUpload(uploadId=guid'${uploadId}')`,
104
104
  headers: {
105
105
  'accept': 'application/json;odata=nometadata'
106
106
  }
@@ -128,7 +128,7 @@ class SpoFileAddCommand extends SpoCommand_1.default {
128
128
  logger.logToStderr('Cancelling upload session due to error...');
129
129
  }
130
130
  const requestOptions = {
131
- url: `${args.options.webUrl}/_api/web/GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(folderPath)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')/cancelupload(uploadId=guid'${uploadId}')`,
131
+ url: `${args.options.webUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(folderPath)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')/cancelupload(uploadId=guid'${uploadId}')`,
132
132
  headers: {
133
133
  'accept': 'application/json;odata=nometadata'
134
134
  }
@@ -150,7 +150,7 @@ class SpoFileAddCommand extends SpoCommand_1.default {
150
150
  const fileBody = fs.readFileSync(fullPath);
151
151
  const bodyLength = fileBody.byteLength;
152
152
  const requestOptions = {
153
- url: `${args.options.webUrl}/_api/web/GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(folderPath)}')/Files/Add(url='${formatting_1.formatting.encodeQueryParameter(fileName)}', overwrite=true)`,
153
+ url: `${args.options.webUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(folderPath)}')/Files/Add(url='${formatting_1.formatting.encodeQueryParameter(fileName)}', overwrite=true)`,
154
154
  data: fileBody,
155
155
  headers: {
156
156
  'accept': 'application/json;odata=nometadata',
@@ -192,7 +192,7 @@ class SpoFileAddCommand extends SpoCommand_1.default {
192
192
  }
193
193
  // approve the existing file with given comment
194
194
  const requestOptions = {
195
- url: `${args.options.webUrl}/_api/web/GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(folderPath)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')/approve(comment='${formatting_1.formatting.encodeQueryParameter(args.options.approveComment || '')}')`,
195
+ url: `${args.options.webUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(folderPath)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')/approve(comment='${formatting_1.formatting.encodeQueryParameter(args.options.approveComment || '')}')`,
196
196
  headers: {
197
197
  'accept': 'application/json;odata=nometadata'
198
198
  },
@@ -209,7 +209,7 @@ class SpoFileAddCommand extends SpoCommand_1.default {
209
209
  }
210
210
  // publish the existing file with given comment
211
211
  const requestOptions = {
212
- url: `${args.options.webUrl}/_api/web/GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(folderPath)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')/publish(comment='${formatting_1.formatting.encodeQueryParameter(args.options.publishComment || '')}')`,
212
+ url: `${args.options.webUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(folderPath)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')/publish(comment='${formatting_1.formatting.encodeQueryParameter(args.options.publishComment || '')}')`,
213
213
  headers: {
214
214
  'accept': 'application/json;odata=nometadata'
215
215
  },
@@ -223,7 +223,7 @@ class SpoFileAddCommand extends SpoCommand_1.default {
223
223
  // in a case the command has done checkout
224
224
  // then have to rollback the checkout
225
225
  const requestOptions = {
226
- url: `${args.options.webUrl}/_api/web/GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(folderPath)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')/UndoCheckOut()`
226
+ url: `${args.options.webUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(folderPath)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')/UndoCheckOut()`
227
227
  };
228
228
  try {
229
229
  yield request_1.default.post(requestOptions);
@@ -266,14 +266,14 @@ class SpoFileAddCommand extends SpoCommand_1.default {
266
266
  return __awaiter(this, void 0, void 0, function* () {
267
267
  // check if file already exists, otherwise it can't be checked out
268
268
  const requestOptionsGetFile = {
269
- url: `${webUrl}/_api/web/GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(folder)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')`,
269
+ url: `${webUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(folder)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')`,
270
270
  headers: {
271
271
  'accept': 'application/json;odata=nometadata'
272
272
  }
273
273
  };
274
274
  yield request_1.default.get(requestOptionsGetFile);
275
275
  const requestOptionsCheckOut = {
276
- url: `${webUrl}/_api/web/GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(folder)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')/CheckOut()`,
276
+ url: `${webUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(folder)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')/CheckOut()`,
277
277
  headers: {
278
278
  'accept': 'application/json;odata=nometadata'
279
279
  },
@@ -299,7 +299,7 @@ class SpoFileAddCommand extends SpoCommand_1.default {
299
299
  fileBuffer = fileBuffer.slice(0, readCount);
300
300
  }
301
301
  const requestOptions = {
302
- url: `${info.WebUrl}/_api/web/GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(info.FolderPath)}')/Files('${formatting_1.formatting.encodeQueryParameter(info.Name)}')/${isLastChunk ? 'Finish' : 'Continue'}Upload(uploadId=guid'${info.Id}',fileOffset=${offset})`,
302
+ url: `${info.WebUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(info.FolderPath)}')/Files('${formatting_1.formatting.encodeQueryParameter(info.Name)}')/${isLastChunk ? 'Finish' : 'Continue'}Upload(uploadId=guid'${info.Id}',fileOffset=${offset})`,
303
303
  data: fileBuffer,
304
304
  headers: {
305
305
  'accept': 'application/json;odata=nometadata',
@@ -358,7 +358,7 @@ class SpoFileAddCommand extends SpoCommand_1.default {
358
358
  logger.logToStderr(`Getting list details in order to get its available content types afterwards...`);
359
359
  }
360
360
  const requestOptions = {
361
- url: `${webUrl}/_api/web/GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(folder)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')/ListItemAllFields/ParentList?$Select=Id,EnableModeration,EnableVersioning,EnableMinorVersions`,
361
+ url: `${webUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(folder)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')/ListItemAllFields/ParentList?$Select=Id,EnableModeration,EnableVersioning,EnableMinorVersions`,
362
362
  headers: {
363
363
  'accept': 'application/json;odata=nometadata'
364
364
  },
@@ -383,7 +383,7 @@ class SpoFileAddCommand extends SpoCommand_1.default {
383
383
  }
384
384
  // update the existing file list item fields
385
385
  const requestOptions = {
386
- url: `${webUrl}/_api/web/GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(folderPath)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')/ListItemAllFields/ValidateUpdateListItem()`,
386
+ url: `${webUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(folderPath)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')/ListItemAllFields/ValidateUpdateListItem()`,
387
387
  headers: {
388
388
  'accept': 'application/json;odata=nometadata'
389
389
  },
@@ -404,7 +404,7 @@ class SpoFileAddCommand extends SpoCommand_1.default {
404
404
  fileCheckIn(args, fileName) {
405
405
  return __awaiter(this, void 0, void 0, function* () {
406
406
  const requestOptions = {
407
- url: `${args.options.webUrl}/_api/web/GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(args.options.folder)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')/CheckIn(comment='${formatting_1.formatting.encodeQueryParameter(args.options.checkInComment || '')}',checkintype=0)`,
407
+ url: `${args.options.webUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(args.options.folder)}')/Files('${formatting_1.formatting.encodeQueryParameter(fileName)}')/CheckIn(comment='${formatting_1.formatting.encodeQueryParameter(args.options.checkInComment || '')}',checkintype=0)`,
408
408
  headers: {
409
409
  'accept': 'application/json;odata=nometadata'
410
410
  },
@@ -67,7 +67,7 @@ class SpoFileCheckinCommand extends SpoCommand_1.default {
67
67
  }
68
68
  if (args.options.url) {
69
69
  const serverRelativePath = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.url);
70
- requestUrl = `${args.options.webUrl}/_api/web/GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')/checkin(comment='${comment}',checkintype=${type})`;
70
+ requestUrl = `${args.options.webUrl}/_api/web/GetFileByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')/checkin(comment='${comment}',checkintype=${type})`;
71
71
  }
72
72
  const requestOptions = {
73
73
  url: requestUrl,
@@ -47,7 +47,7 @@ class SpoFileCheckoutCommand extends SpoCommand_1.default {
47
47
  }
48
48
  if (args.options.url) {
49
49
  const serverRelativePath = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.url);
50
- requestUrl = `${args.options.webUrl}/_api/web/GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')/checkout`;
50
+ requestUrl = `${args.options.webUrl}/_api/web/GetFileByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')/checkout`;
51
51
  }
52
52
  const requestOptions = {
53
53
  url: requestUrl,
@@ -75,7 +75,7 @@ class SpoFileListCommand extends SpoCommand_1.default {
75
75
  }
76
76
  const allFiles = [];
77
77
  const serverRelativePath = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, folderUrl);
78
- const requestUrl = `${args.options.webUrl}/_api/web/GetFolderByServerRelativeUrl(@url)/Files?@url='${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}'`;
78
+ const requestUrl = `${args.options.webUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')/Files`;
79
79
  const queryParams = [`$skip=${skip}`, `$top=${SpoFileListCommand.pageSize}`];
80
80
  if (fieldProperties.expandProperties.length > 0) {
81
81
  queryParams.push(`$expand=${fieldProperties.expandProperties.join(',')}`);
@@ -87,7 +87,7 @@ class SpoFileListCommand extends SpoCommand_1.default {
87
87
  queryParams.push(`$filter=${args.options.filter}`);
88
88
  }
89
89
  const requestOptions = {
90
- url: `${requestUrl}&${queryParams.join('&')}`,
90
+ url: `${requestUrl}?${queryParams.join('&')}`,
91
91
  method: 'GET',
92
92
  headers: {
93
93
  'accept': 'application/json;odata=nometadata'
@@ -111,9 +111,9 @@ class SpoFileListCommand extends SpoCommand_1.default {
111
111
  }
112
112
  const allFolders = [];
113
113
  const serverRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, folderUrl);
114
- const requestUrl = `${args.options.webUrl}/_api/web/GetFolderByServerRelativeUrl(@url)/Folders?@url='${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}'`;
114
+ const requestUrl = `${args.options.webUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')/Folders`;
115
115
  const requestOptions = {
116
- url: `${requestUrl}&$skip=${skip}&$top=${SpoFileListCommand.pageSize}&$select=ServerRelativeUrl`,
116
+ url: `${requestUrl}?$skip=${skip}&$top=${SpoFileListCommand.pageSize}&$select=ServerRelativeUrl`,
117
117
  method: 'GET',
118
118
  headers: {
119
119
  'accept': 'application/json;odata=nometadata'
@@ -69,7 +69,7 @@ class SpoFileMoveCommand extends SpoCommand_1.default {
69
69
  const requestOptions = {
70
70
  url: requestUrl,
71
71
  headers: {
72
- 'accept': 'application/json;odata=nometadata'
72
+ accept: 'application/json;odata=nometadata'
73
73
  },
74
74
  data: {
75
75
  exportObjectUris: [sourceAbsoluteUrl],
@@ -109,7 +109,7 @@ class SpoFileMoveCommand extends SpoCommand_1.default {
109
109
  * Checks if a file exists on the server relative url
110
110
  */
111
111
  fileExists(webUrl, sourceUrl) {
112
- const requestUrl = `${webUrl}/_api/web/GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(sourceUrl)}')/`;
112
+ const requestUrl = `${webUrl}/_api/web/GetFileByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(sourceUrl)}')/`;
113
113
  const requestOptions = {
114
114
  url: requestUrl,
115
115
  method: 'GET',
@@ -55,7 +55,7 @@ class SpoFileRemoveCommand extends SpoCommand_1.default {
55
55
  }
56
56
  else {
57
57
  const serverRelativePath = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.url);
58
- requestUrl = `${args.options.webUrl}/_api/web/GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')`;
58
+ requestUrl = `${args.options.webUrl}/_api/web/GetFileByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')`;
59
59
  }
60
60
  if (args.options.recycle) {
61
61
  requestUrl += `/recycle()`;
@@ -85,7 +85,7 @@ class SpoFileRemoveCommand extends SpoCommand_1.default {
85
85
  type: 'confirm',
86
86
  name: 'continue',
87
87
  default: false,
88
- message: `Are you sure you want to ${args.options.recycle ? "recycle" : "remove"} the file ${args.options.id || args.options.url} located in site ${args.options.webUrl}?`
88
+ message: `Are you sure you want to ${args.options.recycle ? 'recycle' : 'remove'} the file ${args.options.id || args.options.url} located in site ${args.options.webUrl}?`
89
89
  });
90
90
  if (result.continue) {
91
91
  yield removeFile();
@@ -97,10 +97,10 @@ class SpoFileRemoveCommand extends SpoCommand_1.default {
97
97
  _SpoFileRemoveCommand_instances = new WeakSet(), _SpoFileRemoveCommand_initTelemetry = function _SpoFileRemoveCommand_initTelemetry() {
98
98
  this.telemetry.push((args) => {
99
99
  Object.assign(this.telemetryProperties, {
100
- id: (!(!args.options.id)).toString(),
101
- url: (!(!args.options.url)).toString(),
102
- recycle: (!(!args.options.recycle)).toString(),
103
- confirm: (!(!args.options.confirm)).toString()
100
+ id: typeof args.options.id !== 'undefined',
101
+ url: typeof args.options.url !== 'undefined',
102
+ recycle: !!args.options.recycle,
103
+ confirm: !!args.options.confirm
104
104
  });
105
105
  });
106
106
  }, _SpoFileRemoveCommand_initOptions = function _SpoFileRemoveCommand_initOptions() {
@@ -53,7 +53,7 @@ class SpoFileRenameCommand extends SpoCommand_1.default {
53
53
  }]
54
54
  };
55
55
  const requestOptions = {
56
- url: `${webUrl}/_api/web/GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(originalFileServerRelativePath)}')/ListItemAllFields/ValidateUpdateListItem()`,
56
+ url: `${webUrl}/_api/web/GetFileByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(originalFileServerRelativePath)}')/ListItemAllFields/ValidateUpdateListItem()`,
57
57
  headers: {
58
58
  'accept': 'application/json;odata=nometadata'
59
59
  },
@@ -70,7 +70,7 @@ class SpoFileRenameCommand extends SpoCommand_1.default {
70
70
  }
71
71
  getFile(originalFileServerRelativeUrl, webUrl) {
72
72
  return __awaiter(this, void 0, void 0, function* () {
73
- const requestUrl = `${webUrl}/_api/web/GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(originalFileServerRelativeUrl)}')?$select=UniqueId`;
73
+ const requestUrl = `${webUrl}/_api/web/GetFileByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(originalFileServerRelativeUrl)}')?$select=UniqueId`;
74
74
  const requestOptions = {
75
75
  url: requestUrl,
76
76
  headers: {
@@ -75,7 +75,7 @@ class SpoFileRetentionLabelEnsureCommand extends SpoCommand_1.default {
75
75
  }
76
76
  else {
77
77
  const serverRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.fileUrl);
78
- requestUrl += `GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')`;
78
+ requestUrl += `GetFileByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')`;
79
79
  }
80
80
  const requestOptions = {
81
81
  url: `${requestUrl}?$expand=ListItemAllFields,ListItemAllFields/ParentList&$select=ServerRelativeUrl,ListItemAllFields/ParentList/Id,ListItemAllFields/Id`,
@@ -96,7 +96,7 @@ class SpoFileRetentionLabelRemoveCommand extends SpoCommand_1.default {
96
96
  }
97
97
  else {
98
98
  const serverRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.fileUrl);
99
- requestUrl += `GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')`;
99
+ requestUrl += `GetFileByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')`;
100
100
  }
101
101
  requestOptions.url = `${requestUrl}?$expand=ListItemAllFields,ListItemAllFields/ParentList&$select=ListItemAllFields/ParentList/Id,ListItemAllFields/Id`;
102
102
  const response = yield request_1.default.get(requestOptions);
@@ -69,7 +69,7 @@ class SpoFileRoleAssignmentAddCommand extends SpoCommand_1.default {
69
69
  addRoleAssignment(fileUrl, webUrl, principalId, roleDefinitionId) {
70
70
  return __awaiter(this, void 0, void 0, function* () {
71
71
  const requestOptions = {
72
- url: `${webUrl}/_api/web/GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(fileUrl)}')/ListItemAllFields/roleassignments/addroleassignment(principalid='${principalId}',roledefid='${roleDefinitionId}')`,
72
+ url: `${webUrl}/_api/web/GetFileByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(fileUrl)}')/ListItemAllFields/roleassignments/addroleassignment(principalid='${principalId}',roledefid='${roleDefinitionId}')`,
73
73
  method: 'POST',
74
74
  headers: {
75
75
  'accept': 'application/json;odata=nometadata',
@@ -60,7 +60,7 @@ class SpoFileRoleAssignmentRemoveCommand extends SpoCommand_1.default {
60
60
  }
61
61
  const serverRelativePath = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, fileURL);
62
62
  const requestOptions = {
63
- url: `${args.options.webUrl}/_api/web/GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')/ListItemAllFields/roleassignments/removeroleassignment(principalid='${principalId}')`,
63
+ url: `${args.options.webUrl}/_api/web/GetFileByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')/ListItemAllFields/roleassignments/removeroleassignment(principalid='${principalId}')`,
64
64
  headers: {
65
65
  accept: 'application/json;odata=nometadata'
66
66
  },
@@ -48,7 +48,7 @@ class SpoFileRoleInheritanceBreakCommand extends SpoCommand_1.default {
48
48
  const fileURL = yield this.getFileURL(args);
49
49
  const keepExistingPermissions = !args.options.clearExistingPermissions;
50
50
  const requestOptions = {
51
- url: `${args.options.webUrl}/_api/web/GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(fileURL)}')/ListItemAllFields/breakroleinheritance(${keepExistingPermissions})`,
51
+ url: `${args.options.webUrl}/_api/web/GetFileByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(fileURL)}')/ListItemAllFields/breakroleinheritance(${keepExistingPermissions})`,
52
52
  headers: {
53
53
  accept: 'application/json;odata=nometadata'
54
54
  },
@@ -47,7 +47,7 @@ class SpoFileRoleInheritanceResetCommand extends SpoCommand_1.default {
47
47
  try {
48
48
  const fileURL = yield this.getFileURL(args);
49
49
  const requestOptions = {
50
- url: `${args.options.webUrl}/_api/web/GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(fileURL)}')/ListItemAllFields/resetroleinheritance`,
50
+ url: `${args.options.webUrl}/_api/web/GetFileByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(fileURL)}')/ListItemAllFields/resetroleinheritance`,
51
51
  headers: {
52
52
  accept: 'application/json;odata=nometadata'
53
53
  },
@@ -68,7 +68,7 @@ class SpoFileVersionClearCommand extends SpoCommand_1.default {
68
68
  let requestUrl = `${args.options.webUrl}/_api/web/`;
69
69
  if (args.options.fileUrl) {
70
70
  const serverRelativePath = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.fileUrl);
71
- requestUrl += `GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')/versions/DeleteAll()`;
71
+ requestUrl += `GetFileByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')/versions/DeleteAll()`;
72
72
  }
73
73
  else {
74
74
  requestUrl += `GetFileById('${args.options.fileId}')/versions/DeleteAll()`;
@@ -56,7 +56,7 @@ class SpoFileVersionGetCommand extends SpoCommand_1.default {
56
56
  let requestUrl = `${args.options.webUrl}/_api/web/`;
57
57
  if (args.options.fileUrl) {
58
58
  const serverRelUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.fileUrl);
59
- requestUrl += `GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelUrl)}')/versions/?$filter=VersionLabel eq '${args.options.label}'`;
59
+ requestUrl += `GetFileByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelUrl)}')/versions/?$filter=VersionLabel eq '${args.options.label}'`;
60
60
  }
61
61
  else {
62
62
  requestUrl += `GetFileById('${args.options.fileId}')/versions/?$filter=VersionLabel eq '${args.options.label}'`;
@@ -48,7 +48,7 @@ class SpoFileVersionListCommand extends SpoCommand_1.default {
48
48
  let requestUrl = `${args.options.webUrl}/_api/web`;
49
49
  if (args.options.fileUrl) {
50
50
  const serverRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.fileUrl);
51
- requestUrl += `/GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')`;
51
+ requestUrl += `/GetFileByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')`;
52
52
  }
53
53
  else {
54
54
  requestUrl += `/GetFileById('${args.options.fileId}')`;
@@ -69,7 +69,7 @@ class SpoFileVersionRemoveCommand extends SpoCommand_1.default {
69
69
  let requestUrl = `${args.options.webUrl}/_api/web/`;
70
70
  if (args.options.fileUrl) {
71
71
  const serverRelativePath = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.fileUrl);
72
- requestUrl += `GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')/versions/DeleteByLabel('${args.options.label}')`;
72
+ requestUrl += `GetFileByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')/versions/DeleteByLabel('${args.options.label}')`;
73
73
  }
74
74
  else {
75
75
  requestUrl += `GetFileById('${args.options.fileId}')/versions/DeleteByLabel('${args.options.label}')`;
@@ -69,7 +69,7 @@ class SpoFileVersionRestoreCommand extends SpoCommand_1.default {
69
69
  let requestUrl = `${args.options.webUrl}/_api/web/`;
70
70
  if (args.options.fileUrl) {
71
71
  const serverRelativePath = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.fileUrl);
72
- requestUrl += `GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')/versions/RestoreByLabel('${args.options.label}')`;
72
+ requestUrl += `GetFileByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')/versions/RestoreByLabel('${args.options.label}')`;
73
73
  }
74
74
  else {
75
75
  requestUrl += `GetFileById('${args.options.fileId}')/versions/RestoreByLabel('${args.options.label}')`;
@@ -16,6 +16,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
16
16
  var _SpoFolderAddCommand_instances, _SpoFolderAddCommand_initOptions, _SpoFolderAddCommand_initValidators;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const request_1 = require("../../../../request");
19
+ const formatting_1 = require("../../../../utils/formatting");
19
20
  const urlUtil_1 = require("../../../../utils/urlUtil");
20
21
  const validation_1 = require("../../../../utils/validation");
21
22
  const SpoCommand_1 = require("../../../base/SpoCommand");
@@ -40,15 +41,12 @@ class SpoFolderAddCommand extends SpoCommand_1.default {
40
41
  }
41
42
  const parentFolderServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.parentFolderUrl);
42
43
  const serverRelativeUrl = `${parentFolderServerRelativeUrl}/${args.options.name}`;
43
- const requestUrl = `${args.options.webUrl}/_api/web/folders`;
44
+ const requestUrl = `${args.options.webUrl}/_api/web/folders/addUsingPath(decodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')`;
44
45
  const requestOptions = {
45
46
  url: requestUrl,
46
47
  headers: {
47
48
  'accept': 'application/json;odata=nometadata'
48
49
  },
49
- data: {
50
- 'ServerRelativeUrl': serverRelativeUrl
51
- },
52
50
  responseType: 'json'
53
51
  };
54
52
  try {
@@ -52,7 +52,7 @@ class SpoFolderGetCommand extends SpoCommand_1.default {
52
52
  }
53
53
  else if (args.options.url) {
54
54
  const serverRelativePath = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.url);
55
- requestUrl += `/GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')`;
55
+ requestUrl += `/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')`;
56
56
  }
57
57
  if (args.options.withPermissions) {
58
58
  requestUrl += `?$expand=ListItemAllFields/HasUniqueRoleAssignments,ListItemAllFields/RoleAssignments/Member,ListItemAllFields/RoleAssignments/RoleDefinitionBindings`;
@@ -66,7 +66,7 @@ class SpoFolderListCommand extends SpoCommand_1.default {
66
66
  }
67
67
  const allFolders = [];
68
68
  const serverRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, parentFolderUrl);
69
- const requestUrl = `${args.options.webUrl}/_api/web/GetFolderByServerRelativeUrl(@url)/Folders?@url='${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}'`;
69
+ const requestUrl = `${args.options.webUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')/Folders`;
70
70
  const queryParams = [`$skip=${skip}`, `$top=${SpoFolderListCommand.pageSize}`];
71
71
  if (fieldProperties.expandProperties.length > 0) {
72
72
  queryParams.push(`$expand=${fieldProperties.expandProperties.join(',')}`);
@@ -78,7 +78,7 @@ class SpoFolderListCommand extends SpoCommand_1.default {
78
78
  queryParams.push(`$filter=${args.options.filter}`);
79
79
  }
80
80
  const requestOptions = {
81
- url: `${requestUrl}&${queryParams.join('&')}`,
81
+ url: `${requestUrl}?${queryParams.join('&')}`,
82
82
  method: 'GET',
83
83
  headers: {
84
84
  'accept': 'application/json;odata=nometadata'
@@ -36,6 +36,9 @@ class SpoFolderRemoveCommand extends SpoCommand_1.default {
36
36
  __classPrivateFieldGet(this, _SpoFolderRemoveCommand_instances, "m", _SpoFolderRemoveCommand_initOptions).call(this);
37
37
  __classPrivateFieldGet(this, _SpoFolderRemoveCommand_instances, "m", _SpoFolderRemoveCommand_initValidators).call(this);
38
38
  }
39
+ getExcludedOptionsWithUrls() {
40
+ return ['url'];
41
+ }
39
42
  commandAction(logger, args) {
40
43
  return __awaiter(this, void 0, void 0, function* () {
41
44
  if (args.options.confirm) {
@@ -59,8 +62,8 @@ class SpoFolderRemoveCommand extends SpoCommand_1.default {
59
62
  if (this.verbose) {
60
63
  logger.logToStderr(`Removing folder in site at ${options.webUrl}...`);
61
64
  }
62
- const serverRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(options.webUrl, options.url);
63
- let requestUrl = `${options.webUrl}/_api/web/GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')`;
65
+ const serverRelativePath = urlUtil_1.urlUtil.getServerRelativePath(options.webUrl, options.url);
66
+ let requestUrl = `${options.webUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')`;
64
67
  if (options.recycle) {
65
68
  requestUrl += `/recycle()`;
66
69
  }
@@ -86,8 +89,8 @@ class SpoFolderRemoveCommand extends SpoCommand_1.default {
86
89
  _SpoFolderRemoveCommand_instances = new WeakSet(), _SpoFolderRemoveCommand_initTelemetry = function _SpoFolderRemoveCommand_initTelemetry() {
87
90
  this.telemetry.push((args) => {
88
91
  Object.assign(this.telemetryProperties, {
89
- recycle: (!(!args.options.recycle)).toString(),
90
- confirm: (!(!args.options.confirm)).toString()
92
+ recycle: !!args.options.recycle,
93
+ confirm: !!args.options.confirm
91
94
  });
92
95
  });
93
96
  }, _SpoFolderRemoveCommand_initOptions = function _SpoFolderRemoveCommand_initOptions() {
@@ -15,9 +15,8 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
15
15
  };
16
16
  var _SpoFolderRenameCommand_instances, _SpoFolderRenameCommand_initOptions, _SpoFolderRenameCommand_initValidators;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- const config_1 = require("../../../../config");
19
18
  const request_1 = require("../../../../request");
20
- const spo_1 = require("../../../../utils/spo");
19
+ const formatting_1 = require("../../../../utils/formatting");
21
20
  const urlUtil_1 = require("../../../../utils/urlUtil");
22
21
  const validation_1 = require("../../../../utils/validation");
23
22
  const SpoCommand_1 = require("../../../base/SpoCommand");
@@ -41,32 +40,29 @@ class SpoFolderRenameCommand extends SpoCommand_1.default {
41
40
  commandAction(logger, args) {
42
41
  return __awaiter(this, void 0, void 0, function* () {
43
42
  try {
44
- const contextResponse = yield spo_1.spo.getRequestDigest(args.options.webUrl);
45
- const formDigestValue = contextResponse.FormDigestValue;
46
- const webIdentityResp = yield spo_1.spo.getCurrentWebIdentity(args.options.webUrl, formDigestValue);
47
- const folderObjectIdentity = yield spo_1.spo.getFolderIdentity(webIdentityResp.objectIdentity, args.options.webUrl, args.options.url, formDigestValue);
48
43
  if (this.verbose) {
49
44
  logger.logToStderr(`Renaming folder ${args.options.url} to ${args.options.name}`);
50
45
  }
51
46
  const serverRelativePath = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.url);
52
- const serverRelativeUrlWithoutOldFolder = serverRelativePath.substring(0, serverRelativePath.lastIndexOf('/'));
53
- const renamedServerRelativeUrl = `${serverRelativeUrlWithoutOldFolder}/${args.options.name}`;
54
47
  const requestOptions = {
55
- url: `${args.options.webUrl}/_vti_bin/client.svc/ProcessQuery`,
48
+ url: `${args.options.webUrl}/_api/Web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativePath)}')/ListItemAllFields`,
56
49
  headers: {
57
- 'X-RequestDigest': formDigestValue
50
+ accept: 'application/json;odata=nometadata',
51
+ 'if-match': '*'
58
52
  },
59
- 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><Method Name="MoveTo" Id="32" ObjectPathId="26"><Parameters><Parameter Type="String">${renamedServerRelativeUrl}</Parameter></Parameters></Method></Actions><ObjectPaths><Identity Id="26" Name="${folderObjectIdentity.objectIdentity}" /></ObjectPaths></Request>`
53
+ data: {
54
+ FileLeafRef: args.options.name,
55
+ Title: args.options.name
56
+ },
57
+ responseType: 'json'
60
58
  };
61
- const res = yield request_1.default.post(requestOptions);
62
- const json = JSON.parse(res);
63
- const contents = json.find(x => { return x['ErrorInfo']; });
64
- if (contents && contents.ErrorInfo) {
65
- throw contents.ErrorInfo.ErrorMessage || 'ClientSvc unknown error';
59
+ const response = yield request_1.default.patch(requestOptions);
60
+ if (response && response['odata.null'] === true) {
61
+ throw 'Folder not found.';
66
62
  }
67
63
  }
68
64
  catch (err) {
69
- this.handleRejectedPromise(err);
65
+ this.handleRejectedODataJsonPromise(err);
70
66
  }
71
67
  });
72
68
  }
@@ -89,7 +89,7 @@ class SpoFolderRetentionLabelEnsureCommand extends SpoCommand_1.default {
89
89
  }
90
90
  else {
91
91
  const serverRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.folderUrl);
92
- requestUrl += `GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')`;
92
+ requestUrl += `GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')`;
93
93
  }
94
94
  const requestOptions = {
95
95
  url: `${requestUrl}?$expand=ListItemAllFields,ListItemAllFields/ParentList&$select=ServerRelativeUrl,ListItemAllFields/ParentList/Id,ListItemAllFields/Id`,
@@ -107,7 +107,7 @@ class SpoFolderRetentionLabelRemoveCommand extends SpoCommand_1.default {
107
107
  }
108
108
  else {
109
109
  const serverRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.folderUrl);
110
- requestUrl += `GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')`;
110
+ requestUrl += `GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')`;
111
111
  }
112
112
  const requestOptions = {
113
113
  url: `${requestUrl}?$expand=ListItemAllFields,ListItemAllFields/ParentList&$select=ServerRelativeUrl,ListItemAllFields/ParentList/Id,ListItemAllFields/Id`,
@@ -53,7 +53,7 @@ class SpoFolderRoleAssignmentAddCommand extends SpoCommand_1.default {
53
53
  requestUrl += `GetList('${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')`;
54
54
  }
55
55
  else {
56
- requestUrl += `GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')/ListItemAllFields`;
56
+ requestUrl += `GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')/ListItemAllFields`;
57
57
  }
58
58
  const roleDefinitionId = yield this.getRoleDefinitionId(args.options);
59
59
  if (args.options.upn) {
@@ -45,7 +45,7 @@ class SpoFolderRoleAssignmentRemoveCommand extends SpoCommand_1.default {
45
45
  logger.logToStderr(`Removing role assignment from folder in site at ${args.options.webUrl}...`);
46
46
  }
47
47
  const serverRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.folderUrl);
48
- const requestUrl = `${args.options.webUrl}/_api/web/GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')/ListItemAllFields`;
48
+ const requestUrl = `${args.options.webUrl}/_api/web/GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')/ListItemAllFields`;
49
49
  try {
50
50
  if (args.options.upn) {
51
51
  args.options.principalId = yield this.getUserPrincipalId(args.options);
@@ -48,7 +48,7 @@ class SpoFolderRoleInheritanceBreakCommand extends SpoCommand_1.default {
48
48
  requestUrl += `GetList('${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')`;
49
49
  }
50
50
  else {
51
- requestUrl += `GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')/ListItemAllFields`;
51
+ requestUrl += `GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')/ListItemAllFields`;
52
52
  }
53
53
  const requestOptions = {
54
54
  url: `${requestUrl}/breakroleinheritance(${keepExistingPermissions})`,
@@ -47,7 +47,7 @@ class SpoFolderRoleInheritanceResetCommand extends SpoCommand_1.default {
47
47
  requestUrl += `GetList('${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')`;
48
48
  }
49
49
  else {
50
- requestUrl += `GetFolderByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')/ListItemAllFields`;
50
+ requestUrl += `GetFolderByServerRelativePath(DecodedUrl='${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')/ListItemAllFields`;
51
51
  }
52
52
  const requestOptions = {
53
53
  url: `${requestUrl}/resetroleinheritance`,