@pnp/sp 2.8.0 → 2.12.0

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 (306) hide show
  1. package/LICENSE +25 -25
  2. package/appcatalog/index.d.ts +8 -8
  3. package/appcatalog/index.js +30 -30
  4. package/appcatalog/types.d.ts +81 -81
  5. package/appcatalog/types.d.ts.map +1 -1
  6. package/appcatalog/types.js +177 -177
  7. package/appcatalog/types.js.map +1 -1
  8. package/appcatalog/web.d.ts +16 -16
  9. package/appcatalog/web.js +6 -6
  10. package/attachments/index.d.ts +2 -2
  11. package/attachments/index.js +2 -2
  12. package/attachments/item.d.ts +12 -12
  13. package/attachments/item.js +4 -4
  14. package/attachments/types.d.ts +92 -92
  15. package/attachments/types.js +240 -240
  16. package/batch.d.ts +17 -17
  17. package/batch.js +223 -223
  18. package/clientside-pages/funcs.d.ts +22 -22
  19. package/clientside-pages/funcs.js +25 -25
  20. package/clientside-pages/index.d.ts +2 -2
  21. package/clientside-pages/index.js +2 -2
  22. package/clientside-pages/types.d.ts +496 -494
  23. package/clientside-pages/types.d.ts.map +1 -1
  24. package/clientside-pages/types.js +1496 -1487
  25. package/clientside-pages/types.js.map +1 -1
  26. package/clientside-pages/web.d.ts +41 -41
  27. package/clientside-pages/web.js +57 -57
  28. package/column-defaults/folder.d.ts +27 -27
  29. package/column-defaults/folder.js +82 -82
  30. package/column-defaults/index.d.ts +3 -3
  31. package/column-defaults/index.js +2 -2
  32. package/column-defaults/list.d.ts +19 -19
  33. package/column-defaults/list.js +198 -198
  34. package/column-defaults/types.d.ts +21 -21
  35. package/column-defaults/types.js +1 -1
  36. package/comments/clientside-page.d.ts +57 -57
  37. package/comments/clientside-page.d.ts.map +1 -1
  38. package/comments/clientside-page.js +136 -136
  39. package/comments/index.d.ts +2 -2
  40. package/comments/index.js +2 -2
  41. package/comments/item.d.ts +29 -29
  42. package/comments/item.js +47 -47
  43. package/comments/item.js.map +1 -1
  44. package/comments/types.d.ts +107 -107
  45. package/comments/types.d.ts.map +1 -1
  46. package/comments/types.js +145 -145
  47. package/comments/types.js.map +1 -1
  48. package/content-types/index.d.ts +4 -4
  49. package/content-types/index.js +4 -4
  50. package/content-types/item.d.ts +12 -12
  51. package/content-types/item.js +4 -4
  52. package/content-types/list.d.ts +12 -12
  53. package/content-types/list.js +4 -4
  54. package/content-types/types.d.ts +107 -107
  55. package/content-types/types.js +166 -166
  56. package/content-types/web.d.ts +12 -12
  57. package/content-types/web.js +4 -4
  58. package/decorators.d.ts +11 -11
  59. package/decorators.js +28 -28
  60. package/features/index.d.ts +3 -3
  61. package/features/index.js +3 -3
  62. package/features/site.d.ts +12 -12
  63. package/features/site.js +4 -4
  64. package/features/types.d.ts +47 -47
  65. package/features/types.js +109 -109
  66. package/features/web.d.ts +12 -12
  67. package/features/web.js +4 -4
  68. package/fields/index.d.ts +4 -4
  69. package/fields/index.js +4 -4
  70. package/fields/list.d.ts +12 -12
  71. package/fields/list.js +4 -4
  72. package/fields/types.d.ts +368 -368
  73. package/fields/types.js +624 -624
  74. package/fields/web.d.ts +17 -17
  75. package/fields/web.js +5 -5
  76. package/files/folder.d.ts +12 -12
  77. package/files/folder.js +4 -4
  78. package/files/index.d.ts +4 -4
  79. package/files/index.js +4 -4
  80. package/files/item.d.ts +12 -12
  81. package/files/item.js +4 -4
  82. package/files/types.d.ts +421 -421
  83. package/files/types.js +853 -853
  84. package/files/types.js.map +1 -1
  85. package/files/web.d.ts +35 -35
  86. package/files/web.js +15 -15
  87. package/folders/index.d.ts +4 -4
  88. package/folders/index.js +4 -4
  89. package/folders/item.d.ts +9 -9
  90. package/folders/item.js +4 -4
  91. package/folders/list.d.ts +12 -12
  92. package/folders/list.js +4 -4
  93. package/folders/types.d.ts +207 -207
  94. package/folders/types.js +433 -433
  95. package/folders/types.js.map +1 -1
  96. package/folders/web.d.ts +39 -39
  97. package/folders/web.js +15 -15
  98. package/forms/index.d.ts +2 -2
  99. package/forms/index.js +2 -2
  100. package/forms/list.d.ts +9 -9
  101. package/forms/list.js +4 -4
  102. package/forms/types.d.ts +35 -35
  103. package/forms/types.js +41 -41
  104. package/hubsites/index.d.ts +12 -12
  105. package/hubsites/index.js +15 -15
  106. package/hubsites/site.d.ts +26 -26
  107. package/hubsites/site.js +39 -39
  108. package/hubsites/types.d.ts +55 -55
  109. package/hubsites/types.d.ts.map +1 -1
  110. package/hubsites/types.js +53 -53
  111. package/hubsites/web.d.ts +21 -21
  112. package/hubsites/web.js +23 -23
  113. package/index.d.ts +14 -14
  114. package/index.js +13 -13
  115. package/items/index.d.ts +2 -2
  116. package/items/index.js +2 -2
  117. package/items/list.d.ts +9 -9
  118. package/items/list.js +4 -4
  119. package/items/types.d.ts +226 -226
  120. package/items/types.js +549 -549
  121. package/lists/index.d.ts +2 -2
  122. package/lists/index.js +2 -2
  123. package/lists/types.d.ts +495 -495
  124. package/lists/types.js +522 -522
  125. package/lists/types.js.map +1 -1
  126. package/lists/web.d.ts +43 -43
  127. package/lists/web.js +27 -27
  128. package/navigation/index.d.ts +8 -8
  129. package/navigation/index.js +14 -14
  130. package/navigation/types.d.ts +154 -154
  131. package/navigation/types.js +219 -219
  132. package/navigation/web.d.ts +13 -13
  133. package/navigation/web.js +4 -4
  134. package/odata.d.ts +5 -5
  135. package/odata.js +90 -90
  136. package/odata.js.map +1 -1
  137. package/operations.d.ts +9 -9
  138. package/operations.js +63 -63
  139. package/package.json +4 -4
  140. package/presets/all.d.ts +72 -72
  141. package/presets/all.js +72 -72
  142. package/presets/core.d.ts +11 -11
  143. package/presets/core.js +11 -11
  144. package/profiles/index.d.ts +7 -7
  145. package/profiles/index.js +13 -13
  146. package/profiles/types.d.ts +357 -357
  147. package/profiles/types.js +454 -454
  148. package/readme.md +21 -21
  149. package/regional-settings/content-type.d.ts +7 -7
  150. package/regional-settings/content-type.js +4 -4
  151. package/regional-settings/field.d.ts +7 -7
  152. package/regional-settings/field.js +4 -4
  153. package/regional-settings/funcs.d.ts +2 -2
  154. package/regional-settings/funcs.js +8 -8
  155. package/regional-settings/index.d.ts +6 -6
  156. package/regional-settings/index.js +6 -6
  157. package/regional-settings/list.d.ts +7 -7
  158. package/regional-settings/list.js +4 -4
  159. package/regional-settings/types.d.ts +111 -111
  160. package/regional-settings/types.js +159 -159
  161. package/regional-settings/user-custom-actions.d.ts +7 -7
  162. package/regional-settings/user-custom-actions.js +4 -4
  163. package/regional-settings/web.d.ts +12 -12
  164. package/regional-settings/web.js +7 -7
  165. package/related-items/index.d.ts +1 -1
  166. package/related-items/index.js +1 -1
  167. package/related-items/types.d.ts +76 -76
  168. package/related-items/types.js +103 -103
  169. package/related-items/web.d.ts +12 -12
  170. package/related-items/web.js +9 -9
  171. package/rest.d.ts +44 -44
  172. package/rest.js +72 -72
  173. package/search/index.d.ts +30 -30
  174. package/search/index.js +25 -25
  175. package/search/query.d.ts +62 -62
  176. package/search/query.js +302 -302
  177. package/search/suggest.d.ts +76 -76
  178. package/search/suggest.js +66 -66
  179. package/search/types.d.ts +426 -426
  180. package/search/types.js +57 -57
  181. package/security/funcs.d.ts +43 -43
  182. package/security/funcs.js +142 -142
  183. package/security/index.d.ts +4 -4
  184. package/security/index.js +4 -4
  185. package/security/item.d.ts +7 -7
  186. package/security/item.js +14 -14
  187. package/security/list.d.ts +7 -7
  188. package/security/list.js +14 -14
  189. package/security/types.d.ts +318 -318
  190. package/security/types.js +399 -399
  191. package/security/web.d.ts +9 -9
  192. package/security/web.js +15 -15
  193. package/sharepointqueryable.d.ts +135 -135
  194. package/sharepointqueryable.js +265 -265
  195. package/sharing/file.d.ts +18 -18
  196. package/sharing/file.js +116 -116
  197. package/sharing/folder.d.ts +9 -9
  198. package/sharing/folder.js +136 -136
  199. package/sharing/funcs.d.ts +62 -62
  200. package/sharing/funcs.js +239 -239
  201. package/sharing/funcs.js.map +1 -1
  202. package/sharing/index.d.ts +5 -5
  203. package/sharing/index.js +5 -5
  204. package/sharing/item.d.ts +16 -16
  205. package/sharing/item.js +15 -15
  206. package/sharing/types.d.ts +583 -583
  207. package/sharing/types.js +113 -113
  208. package/sharing/web.d.ts +19 -19
  209. package/sharing/web.js +76 -76
  210. package/site-designs/index.d.ts +8 -8
  211. package/site-designs/index.js +14 -14
  212. package/site-designs/types.d.ts +319 -319
  213. package/site-designs/types.js +203 -203
  214. package/site-designs/web.d.ts +25 -25
  215. package/site-designs/web.js +11 -11
  216. package/site-groups/index.d.ts +2 -2
  217. package/site-groups/index.js +2 -2
  218. package/site-groups/types.d.ts +89 -89
  219. package/site-groups/types.js +125 -125
  220. package/site-groups/web.d.ts +40 -40
  221. package/site-groups/web.js +30 -30
  222. package/site-scripts/index.d.ts +9 -9
  223. package/site-scripts/index.js +15 -15
  224. package/site-scripts/list.d.ts +12 -12
  225. package/site-scripts/list.js +24 -24
  226. package/site-scripts/types.d.ts +183 -183
  227. package/site-scripts/types.js +141 -141
  228. package/site-scripts/web.d.ts +13 -13
  229. package/site-scripts/web.js +5 -5
  230. package/site-users/index.d.ts +2 -2
  231. package/site-users/index.js +2 -2
  232. package/site-users/types.d.ts +138 -138
  233. package/site-users/types.js +122 -122
  234. package/site-users/web.d.ts +31 -31
  235. package/site-users/web.js +27 -27
  236. package/sites/index.d.ts +7 -7
  237. package/sites/index.js +13 -13
  238. package/sites/types.d.ts +147 -147
  239. package/sites/types.js +321 -321
  240. package/social/index.d.ts +10 -10
  241. package/social/index.js +13 -13
  242. package/social/types.d.ts +309 -309
  243. package/social/types.js +322 -322
  244. package/sphttpclient.d.ts +18 -18
  245. package/sphttpclient.js +189 -189
  246. package/splibconfig.d.ts +22 -22
  247. package/splibconfig.js +13 -13
  248. package/sputilities/index.d.ts +7 -7
  249. package/sputilities/index.js +13 -13
  250. package/sputilities/types.d.ts +130 -130
  251. package/sputilities/types.js +118 -118
  252. package/subscriptions/index.d.ts +2 -2
  253. package/subscriptions/index.js +2 -2
  254. package/subscriptions/list.d.ts +13 -13
  255. package/subscriptions/list.js +4 -4
  256. package/subscriptions/types.d.ts +54 -54
  257. package/subscriptions/types.js +111 -111
  258. package/taxonomy/index.d.ts +7 -7
  259. package/taxonomy/index.js +13 -13
  260. package/taxonomy/types.d.ts +200 -200
  261. package/taxonomy/types.js +347 -347
  262. package/taxonomy/types.js.map +1 -1
  263. package/telemetry.d.ts +12 -12
  264. package/telemetry.js +48 -48
  265. package/types.d.ts +218 -218
  266. package/types.js +79 -79
  267. package/user-custom-actions/index.d.ts +4 -4
  268. package/user-custom-actions/index.js +4 -4
  269. package/user-custom-actions/list.d.ts +12 -12
  270. package/user-custom-actions/list.js +4 -4
  271. package/user-custom-actions/site.d.ts +12 -12
  272. package/user-custom-actions/site.js +4 -4
  273. package/user-custom-actions/types.d.ts +82 -82
  274. package/user-custom-actions/types.js +93 -93
  275. package/user-custom-actions/web.d.ts +15 -15
  276. package/user-custom-actions/web.js +4 -4
  277. package/utils/escapeQueryStrValue.d.ts +1 -1
  278. package/utils/escapeQueryStrValue.js +19 -19
  279. package/utils/extractweburl.d.ts +1 -1
  280. package/utils/extractweburl.js +15 -15
  281. package/utils/file-names.d.ts +17 -17
  282. package/utils/file-names.js +38 -38
  283. package/utils/metadata.d.ts +5 -5
  284. package/utils/metadata.js +5 -5
  285. package/utils/objectToSPKeyValueCollection.d.ts +20 -20
  286. package/utils/objectToSPKeyValueCollection.js +16 -16
  287. package/utils/toResourcePath.d.ts +7 -7
  288. package/utils/toResourcePath.js +6 -6
  289. package/utils/toabsoluteurl.d.ts +7 -7
  290. package/utils/toabsoluteurl.js +61 -61
  291. package/views/index.d.ts +2 -2
  292. package/views/index.js +2 -2
  293. package/views/list.d.ts +23 -23
  294. package/views/list.js +8 -8
  295. package/views/types.d.ts +140 -140
  296. package/views/types.js +184 -184
  297. package/webparts/file.d.ts +15 -15
  298. package/webparts/file.js +6 -6
  299. package/webparts/index.d.ts +2 -2
  300. package/webparts/index.js +2 -2
  301. package/webparts/types.d.ts +83 -83
  302. package/webparts/types.js +117 -117
  303. package/webs/index.d.ts +16 -16
  304. package/webs/index.js +16 -16
  305. package/webs/types.d.ts +210 -210
  306. package/webs/types.js +295 -295
package/folders/types.js CHANGED
@@ -1,434 +1,434 @@
1
- import { __awaiter, __decorate, __extends, __generator, __read, __spreadArray } from "tslib";
2
- import { assign, isUrlAbsolute, combine, hOP } from "@pnp/common";
3
- import { SharePointQueryable, SharePointQueryableCollection, SharePointQueryableInstance, _SharePointQueryableInstance, _SharePointQueryableCollection, spInvokableFactory, deleteableWithETag, } from "../sharepointqueryable.js";
4
- import { odataUrlFrom } from "../odata.js";
5
- import { Item } from "../items/types.js";
6
- import { body } from "@pnp/odata";
7
- import { defaultPath } from "../decorators.js";
8
- import { spPost } from "../operations.js";
9
- import { escapeQueryStrValue } from "../utils/escapeQueryStrValue.js";
10
- import { extractWebUrl } from "../utils/extractweburl.js";
11
- import { tag } from "../telemetry.js";
12
- import { toResourcePath } from "../utils/toResourcePath.js";
13
- var _Folders = /** @class */ (function (_super) {
14
- __extends(_Folders, _super);
15
- function _Folders() {
16
- return _super !== null && _super.apply(this, arguments) || this;
17
- }
18
- /**
19
- * Gets a folder by it's name
20
- *
21
- * @param name Folder's name
22
- */
23
- _Folders.prototype.getByName = function (name) {
24
- return tag.configure(Folder(this).concat("('" + escapeQueryStrValue(name) + "')"), "fs.getByName");
25
- };
26
- /**
27
- * Adds a new folder at the specified URL
28
- *
29
- * @param url
30
- */
31
- _Folders.prototype.add = function (url) {
32
- return __awaiter(this, void 0, void 0, function () {
33
- var data;
34
- return __generator(this, function (_a) {
35
- switch (_a.label) {
36
- case 0: return [4 /*yield*/, spPost(this.clone(Folders, "add('" + escapeQueryStrValue(url) + "')"))];
37
- case 1:
38
- data = _a.sent();
39
- return [2 /*return*/, {
40
- data: data,
41
- folder: this.getByName(url),
42
- }];
43
- }
44
- });
45
- });
46
- };
47
- /**
48
- * Adds a new folder by path and should be prefered over add
49
- *
50
- * @param serverRelativeUrl The server relative url of the new folder to create
51
- * @param overwrite True to overwrite an existing folder, default false
52
- */
53
- _Folders.prototype.addUsingPath = function (serverRelativeUrl, overwrite) {
54
- if (overwrite === void 0) { overwrite = false; }
55
- return __awaiter(this, void 0, void 0, function () {
56
- var data;
57
- return __generator(this, function (_a) {
58
- switch (_a.label) {
59
- case 0: return [4 /*yield*/, spPost(this.clone(Folders, "addUsingPath(DecodedUrl='" + escapeQueryStrValue(serverRelativeUrl) + "',overwrite=" + overwrite + ")"))];
60
- case 1:
61
- data = _a.sent();
62
- return [2 /*return*/, {
63
- data: data,
64
- folder: Folder(extractWebUrl(this.toUrl()), "_api/web/getFolderByServerRelativePath(decodedUrl='" + escapeQueryStrValue(serverRelativeUrl) + "')"),
65
- }];
66
- }
67
- });
68
- });
69
- };
70
- __decorate([
71
- tag("fs.add")
72
- ], _Folders.prototype, "add", null);
73
- __decorate([
74
- tag("fs.addUsingPath")
75
- ], _Folders.prototype, "addUsingPath", null);
76
- _Folders = __decorate([
77
- defaultPath("folders")
78
- ], _Folders);
79
- return _Folders;
80
- }(_SharePointQueryableCollection));
81
- export { _Folders };
82
- export var Folders = spInvokableFactory(_Folders);
83
- var _Folder = /** @class */ (function (_super) {
84
- __extends(_Folder, _super);
85
- function _Folder() {
86
- var _this = _super !== null && _super.apply(this, arguments) || this;
87
- _this.delete = deleteableWithETag("f");
88
- /**
89
- * Updates folder's properties
90
- * @param props Folder's properties to update
91
- */
92
- _this.update = _this._update("SP.Folder", function (data) { return ({ data: data, folder: _this }); });
93
- return _this;
94
- }
95
- Object.defineProperty(_Folder.prototype, "contentTypeOrder", {
96
- /**
97
- * Specifies the sequence in which content types are displayed.
98
- *
99
- */
100
- get: function () {
101
- return tag.configure(SharePointQueryableCollection(this, "contentTypeOrder"), "f.contentTypeOrder");
102
- },
103
- enumerable: false,
104
- configurable: true
105
- });
106
- Object.defineProperty(_Folder.prototype, "folders", {
107
- /**
108
- * Gets this folder's sub folders
109
- *
110
- */
111
- get: function () {
112
- return Folders(this);
113
- },
114
- enumerable: false,
115
- configurable: true
116
- });
117
- Object.defineProperty(_Folder.prototype, "listItemAllFields", {
118
- /**
119
- * Gets this folder's list item field values
120
- *
121
- */
122
- get: function () {
123
- return tag.configure(SharePointQueryableInstance(this, "listItemAllFields"), "f.listItemAllFields");
124
- },
125
- enumerable: false,
126
- configurable: true
127
- });
128
- Object.defineProperty(_Folder.prototype, "parentFolder", {
129
- /**
130
- * Gets the parent folder, if available
131
- *
132
- */
133
- get: function () {
134
- return tag.configure(Folder(this, "parentFolder"), "f.parentFolder");
135
- },
136
- enumerable: false,
137
- configurable: true
138
- });
139
- Object.defineProperty(_Folder.prototype, "properties", {
140
- /**
141
- * Gets this folder's properties
142
- *
143
- */
144
- get: function () {
145
- return tag.configure(SharePointQueryableInstance(this, "properties"), "f.properties");
146
- },
147
- enumerable: false,
148
- configurable: true
149
- });
150
- Object.defineProperty(_Folder.prototype, "serverRelativeUrl", {
151
- /**
152
- * Gets this folder's server relative url
153
- *
154
- */
155
- get: function () {
156
- return tag.configure(SharePointQueryable(this, "serverRelativeUrl"), "f.serverRelativeUrl");
157
- },
158
- enumerable: false,
159
- configurable: true
160
- });
161
- Object.defineProperty(_Folder.prototype, "uniqueContentTypeOrder", {
162
- /**
163
- * Gets a value that specifies the content type order.
164
- *
165
- */
166
- get: function () {
167
- return tag.configure(SharePointQueryableCollection(this, "uniqueContentTypeOrder"), "f.uniqueContentTypeOrder");
168
- },
169
- enumerable: false,
170
- configurable: true
171
- });
172
- /**
173
- * Moves the folder to the Recycle Bin and returns the identifier of the new Recycle Bin item.
174
- */
175
- _Folder.prototype.recycle = function () {
176
- return spPost(this.clone(Folder, "recycle"));
177
- };
178
- /**
179
- * Gets the associated list item for this folder, loading the default properties
180
- */
181
- _Folder.prototype.getItem = function () {
182
- var selects = [];
183
- for (var _i = 0; _i < arguments.length; _i++) {
184
- selects[_i] = arguments[_i];
185
- }
186
- return __awaiter(this, void 0, void 0, function () {
187
- var q;
188
- var _a;
189
- return __generator(this, function (_b) {
190
- switch (_b.label) {
191
- case 0: return [4 /*yield*/, (_a = this.listItemAllFields).select.apply(_a, __spreadArray([], __read(selects)))()];
192
- case 1:
193
- q = _b.sent();
194
- if (hOP(q, "odata.null") && q["odata.null"]) {
195
- throw Error("No associated item was found for this folder. It may be the root folder, which does not have an item.");
196
- }
197
- return [2 /*return*/, assign(Item(odataUrlFrom(q)).configureFrom(this), q)];
198
- }
199
- });
200
- });
201
- };
202
- /**
203
- * Moves a folder to destination path
204
- *
205
- * @param destUrl Absolute or relative URL of the destination path
206
- */
207
- _Folder.prototype.moveTo = function (destUrl) {
208
- return __awaiter(this, void 0, void 0, function () {
209
- var urlInfo, uri;
210
- return __generator(this, function (_a) {
211
- switch (_a.label) {
212
- case 0: return [4 /*yield*/, this.getParentInfos()];
213
- case 1:
214
- urlInfo = _a.sent();
215
- uri = new URL(urlInfo.ParentWeb.Url);
216
- return [4 /*yield*/, spPost(Folder(urlInfo.ParentWeb.Url, "/_api/SP.MoveCopyUtil.MoveFolder()").configureFrom(this), body({
217
- destUrl: isUrlAbsolute(destUrl) ? destUrl : combine(uri.origin, destUrl),
218
- srcUrl: combine(uri.origin, urlInfo.Folder.ServerRelativeUrl),
219
- }))];
220
- case 2:
221
- _a.sent();
222
- return [2 /*return*/];
223
- }
224
- });
225
- });
226
- };
227
- /**
228
- * Moves a folder by path to destination path
229
- * Also works with different site collections.
230
- *
231
- * @param destUrl Absolute or relative URL of the destination path
232
- * @param keepBoth Keep both if folder with the same name in the same location already exists?
233
- */
234
- _Folder.prototype.moveByPath = function (destUrl, KeepBoth) {
235
- if (KeepBoth === void 0) { KeepBoth = false; }
236
- return __awaiter(this, void 0, void 0, function () {
237
- var urlInfo, uri;
238
- return __generator(this, function (_a) {
239
- switch (_a.label) {
240
- case 0: return [4 /*yield*/, this.getParentInfos()];
241
- case 1:
242
- urlInfo = _a.sent();
243
- uri = new URL(urlInfo.ParentWeb.Url);
244
- return [4 /*yield*/, spPost(Folder(uri.origin, "/_api/SP.MoveCopyUtil.MoveFolderByPath()").configureFrom(this), body({
245
- destPath: toResourcePath(isUrlAbsolute(destUrl) ? destUrl : combine(uri.origin, destUrl)),
246
- options: {
247
- KeepBoth: KeepBoth,
248
- ResetAuthorAndCreatedOnCopy: true,
249
- ShouldBypassSharedLocks: true,
250
- __metadata: {
251
- type: "SP.MoveCopyOptions",
252
- },
253
- },
254
- srcPath: toResourcePath(combine(uri.origin, urlInfo.Folder.ServerRelativeUrl)),
255
- }))];
256
- case 2:
257
- _a.sent();
258
- return [2 /*return*/];
259
- }
260
- });
261
- });
262
- };
263
- /**
264
- * Copies a folder to destination path
265
- *
266
- * @param destUrl Absolute or relative URL of the destination path
267
- */
268
- _Folder.prototype.copyTo = function (destUrl) {
269
- return __awaiter(this, void 0, void 0, function () {
270
- var urlInfo, uri;
271
- return __generator(this, function (_a) {
272
- switch (_a.label) {
273
- case 0: return [4 /*yield*/, this.getParentInfos()];
274
- case 1:
275
- urlInfo = _a.sent();
276
- uri = new URL(urlInfo.ParentWeb.Url);
277
- return [4 /*yield*/, spPost(Folder(uri.origin, "/_api/SP.MoveCopyUtil.CopyFolder()").configureFrom(this), body({
278
- destUrl: isUrlAbsolute(destUrl) ? destUrl : combine(uri.origin, destUrl),
279
- srcUrl: combine(uri.origin, urlInfo.Folder.ServerRelativeUrl),
280
- }))];
281
- case 2:
282
- _a.sent();
283
- return [2 /*return*/];
284
- }
285
- });
286
- });
287
- };
288
- /**
289
- * Copies a folder by path to destination path
290
- * Also works with different site collections.
291
- *
292
- * @param destUrl Absolute or relative URL of the destination path
293
- * @param keepBoth Keep both if folder with the same name in the same location already exists?
294
- */
295
- _Folder.prototype.copyByPath = function (destUrl, KeepBoth) {
296
- if (KeepBoth === void 0) { KeepBoth = false; }
297
- return __awaiter(this, void 0, void 0, function () {
298
- var urlInfo, uri;
299
- return __generator(this, function (_a) {
300
- switch (_a.label) {
301
- case 0: return [4 /*yield*/, this.getParentInfos()];
302
- case 1:
303
- urlInfo = _a.sent();
304
- uri = new URL(urlInfo.ParentWeb.Url);
305
- return [4 /*yield*/, spPost(Folder(uri.origin, "/_api/SP.MoveCopyUtil.CopyFolderByPath()").configureFrom(this), body({
306
- destPath: toResourcePath(isUrlAbsolute(destUrl) ? destUrl : combine(uri.origin, destUrl)),
307
- options: {
308
- KeepBoth: KeepBoth,
309
- ResetAuthorAndCreatedOnCopy: true,
310
- ShouldBypassSharedLocks: true,
311
- __metadata: {
312
- type: "SP.MoveCopyOptions",
313
- },
314
- },
315
- srcPath: toResourcePath(combine(uri.origin, urlInfo.Folder.ServerRelativeUrl)),
316
- }))];
317
- case 2:
318
- _a.sent();
319
- return [2 /*return*/];
320
- }
321
- });
322
- });
323
- };
324
- /**
325
- * Deletes the folder object with options.
326
- *
327
- * @param parameters Specifies the options to use when deleting a folder.
328
- */
329
- _Folder.prototype.deleteWithParams = function (parameters) {
330
- return __awaiter(this, void 0, void 0, function () {
331
- return __generator(this, function (_a) {
332
- return [2 /*return*/, spPost(this.clone(Folder, "DeleteWithParameters"), body({ parameters: parameters }))];
333
- });
334
- });
335
- };
336
- /**
337
- * Create the subfolder inside the current folder, as specified by the leafPath
338
- *
339
- * @param leafPath leafName of the new folder
340
- */
341
- _Folder.prototype.addSubFolderUsingPath = function (leafPath) {
342
- return __awaiter(this, void 0, void 0, function () {
343
- return __generator(this, function (_a) {
344
- switch (_a.label) {
345
- case 0: return [4 /*yield*/, spPost(this.clone(Folder, "AddSubFolderUsingPath"), body({ leafPath: toResourcePath(leafPath) }))];
346
- case 1:
347
- _a.sent();
348
- return [2 /*return*/, this.folders.getByName(leafPath)];
349
- }
350
- });
351
- });
352
- };
353
- /**
354
- * Gets the parent information for this folder's list and web
355
- */
356
- _Folder.prototype.getParentInfos = function () {
357
- return __awaiter(this, void 0, void 0, function () {
358
- var urlInfo;
359
- return __generator(this, function (_a) {
360
- switch (_a.label) {
361
- case 0: return [4 /*yield*/, this.select("ServerRelativeUrl", "ListItemAllFields/ParentList/Id", "ListItemAllFields/ParentList/RootFolder/UniqueId", "ListItemAllFields/ParentList/RootFolder/ServerRelativeUrl", "ListItemAllFields/ParentList/RootFolder/ServerRelativePath", "ListItemAllFields/ParentList/ParentWeb/Id", "ListItemAllFields/ParentList/ParentWeb/Url", "ListItemAllFields/ParentList/ParentWeb/ServerRelativeUrl", "ListItemAllFields/ParentList/ParentWeb/ServerRelativePath").expand("ListItemAllFields/ParentList", "ListItemAllFields/ParentList/RootFolder", "ListItemAllFields/ParentList/ParentWeb")()];
362
- case 1:
363
- urlInfo = _a.sent();
364
- return [2 /*return*/, {
365
- Folder: {
366
- ServerRelativeUrl: urlInfo.ServerRelativeUrl,
367
- },
368
- ParentList: {
369
- Id: urlInfo.ListItemAllFields.ParentList.Id,
370
- RootFolderServerRelativePath: urlInfo.ListItemAllFields.ParentList.RootFolder.ServerRelativePath,
371
- RootFolderServerRelativeUrl: urlInfo.ListItemAllFields.ParentList.RootFolder.ServerRelativeUrl,
372
- RootFolderUniqueId: urlInfo.ListItemAllFields.ParentList.RootFolder.UniqueId,
373
- },
374
- ParentWeb: {
375
- Id: urlInfo.ListItemAllFields.ParentList.ParentWeb.Id,
376
- ServerRelativePath: urlInfo.ListItemAllFields.ParentList.ParentWeb.ServerRelativePath,
377
- ServerRelativeUrl: urlInfo.ListItemAllFields.ParentList.ParentWeb.ServerRelativeUrl,
378
- Url: urlInfo.ListItemAllFields.ParentList.ParentWeb.Url,
379
- },
380
- }];
381
- }
382
- });
383
- });
384
- };
385
- /**
386
- * Gets the shareable item associated with this folder
387
- */
388
- _Folder.prototype.getShareable = function () {
389
- return __awaiter(this, void 0, void 0, function () {
390
- var d, shareable;
391
- return __generator(this, function (_a) {
392
- switch (_a.label) {
393
- case 0: return [4 /*yield*/, this.clone(SharePointQueryableInstance, "listItemAllFields", false).select("odata.id")()];
394
- case 1:
395
- d = _a.sent();
396
- shareable = Item(odataUrlFrom(d)).configureFrom(this);
397
- // we need to handle batching
398
- if (this.hasBatch) {
399
- shareable = shareable.inBatch(this.batch);
400
- }
401
- return [2 /*return*/, shareable];
402
- }
403
- });
404
- });
405
- };
406
- __decorate([
407
- tag("f.recycle")
408
- ], _Folder.prototype, "recycle", null);
409
- __decorate([
410
- tag("f.getItem")
411
- ], _Folder.prototype, "getItem", null);
412
- __decorate([
413
- tag("f.moveTo")
414
- ], _Folder.prototype, "moveTo", null);
415
- __decorate([
416
- tag("f.moveByPath")
417
- ], _Folder.prototype, "moveByPath", null);
418
- __decorate([
419
- tag("f.copyTo")
420
- ], _Folder.prototype, "copyTo", null);
421
- __decorate([
422
- tag("f.copyByPath")
423
- ], _Folder.prototype, "copyByPath", null);
424
- __decorate([
425
- tag("f.del-params")
426
- ], _Folder.prototype, "deleteWithParams", null);
427
- __decorate([
428
- tag("f.getShareable")
429
- ], _Folder.prototype, "getShareable", null);
430
- return _Folder;
431
- }(_SharePointQueryableInstance));
432
- export { _Folder };
433
- export var Folder = spInvokableFactory(_Folder);
1
+ import { __awaiter, __decorate, __extends, __generator, __read, __spreadArray } from "tslib";
2
+ import { assign, isUrlAbsolute, combine, hOP } from "@pnp/common";
3
+ import { SharePointQueryable, SharePointQueryableCollection, SharePointQueryableInstance, _SharePointQueryableInstance, _SharePointQueryableCollection, spInvokableFactory, deleteableWithETag, } from "../sharepointqueryable.js";
4
+ import { odataUrlFrom } from "../odata.js";
5
+ import { Item } from "../items/types.js";
6
+ import { body } from "@pnp/odata";
7
+ import { defaultPath } from "../decorators.js";
8
+ import { spPost } from "../operations.js";
9
+ import { escapeQueryStrValue } from "../utils/escapeQueryStrValue.js";
10
+ import { extractWebUrl } from "../utils/extractweburl.js";
11
+ import { tag } from "../telemetry.js";
12
+ import { toResourcePath } from "../utils/toResourcePath.js";
13
+ var _Folders = /** @class */ (function (_super) {
14
+ __extends(_Folders, _super);
15
+ function _Folders() {
16
+ return _super !== null && _super.apply(this, arguments) || this;
17
+ }
18
+ /**
19
+ * Gets a folder by it's name
20
+ *
21
+ * @param name Folder's name
22
+ */
23
+ _Folders.prototype.getByName = function (name) {
24
+ return tag.configure(Folder(this).concat("('" + escapeQueryStrValue(name) + "')"), "fs.getByName");
25
+ };
26
+ /**
27
+ * Adds a new folder at the specified URL
28
+ *
29
+ * @param url
30
+ */
31
+ _Folders.prototype.add = function (url) {
32
+ return __awaiter(this, void 0, void 0, function () {
33
+ var data;
34
+ return __generator(this, function (_a) {
35
+ switch (_a.label) {
36
+ case 0: return [4 /*yield*/, spPost(this.clone(Folders, "add('" + escapeQueryStrValue(url) + "')"))];
37
+ case 1:
38
+ data = _a.sent();
39
+ return [2 /*return*/, {
40
+ data: data,
41
+ folder: this.getByName(url),
42
+ }];
43
+ }
44
+ });
45
+ });
46
+ };
47
+ /**
48
+ * Adds a new folder by path and should be prefered over add
49
+ *
50
+ * @param serverRelativeUrl The server relative url of the new folder to create
51
+ * @param overwrite True to overwrite an existing folder, default false
52
+ */
53
+ _Folders.prototype.addUsingPath = function (serverRelativeUrl, overwrite) {
54
+ if (overwrite === void 0) { overwrite = false; }
55
+ return __awaiter(this, void 0, void 0, function () {
56
+ var data;
57
+ return __generator(this, function (_a) {
58
+ switch (_a.label) {
59
+ case 0: return [4 /*yield*/, spPost(this.clone(Folders, "addUsingPath(DecodedUrl='" + escapeQueryStrValue(serverRelativeUrl) + "',overwrite=" + overwrite + ")"))];
60
+ case 1:
61
+ data = _a.sent();
62
+ return [2 /*return*/, {
63
+ data: data,
64
+ folder: Folder(extractWebUrl(this.toUrl()), "_api/web/getFolderByServerRelativePath(decodedUrl='" + escapeQueryStrValue(serverRelativeUrl) + "')"),
65
+ }];
66
+ }
67
+ });
68
+ });
69
+ };
70
+ __decorate([
71
+ tag("fs.add")
72
+ ], _Folders.prototype, "add", null);
73
+ __decorate([
74
+ tag("fs.addUsingPath")
75
+ ], _Folders.prototype, "addUsingPath", null);
76
+ _Folders = __decorate([
77
+ defaultPath("folders")
78
+ ], _Folders);
79
+ return _Folders;
80
+ }(_SharePointQueryableCollection));
81
+ export { _Folders };
82
+ export var Folders = spInvokableFactory(_Folders);
83
+ var _Folder = /** @class */ (function (_super) {
84
+ __extends(_Folder, _super);
85
+ function _Folder() {
86
+ var _this = _super !== null && _super.apply(this, arguments) || this;
87
+ _this.delete = deleteableWithETag("f");
88
+ /**
89
+ * Updates folder's properties
90
+ * @param props Folder's properties to update
91
+ */
92
+ _this.update = _this._update("SP.Folder", function (data) { return ({ data: data, folder: _this }); });
93
+ return _this;
94
+ }
95
+ Object.defineProperty(_Folder.prototype, "contentTypeOrder", {
96
+ /**
97
+ * Specifies the sequence in which content types are displayed.
98
+ *
99
+ */
100
+ get: function () {
101
+ return tag.configure(SharePointQueryableCollection(this, "contentTypeOrder"), "f.contentTypeOrder");
102
+ },
103
+ enumerable: false,
104
+ configurable: true
105
+ });
106
+ Object.defineProperty(_Folder.prototype, "folders", {
107
+ /**
108
+ * Gets this folder's sub folders
109
+ *
110
+ */
111
+ get: function () {
112
+ return Folders(this);
113
+ },
114
+ enumerable: false,
115
+ configurable: true
116
+ });
117
+ Object.defineProperty(_Folder.prototype, "listItemAllFields", {
118
+ /**
119
+ * Gets this folder's list item field values
120
+ *
121
+ */
122
+ get: function () {
123
+ return tag.configure(SharePointQueryableInstance(this, "listItemAllFields"), "f.listItemAllFields");
124
+ },
125
+ enumerable: false,
126
+ configurable: true
127
+ });
128
+ Object.defineProperty(_Folder.prototype, "parentFolder", {
129
+ /**
130
+ * Gets the parent folder, if available
131
+ *
132
+ */
133
+ get: function () {
134
+ return tag.configure(Folder(this, "parentFolder"), "f.parentFolder");
135
+ },
136
+ enumerable: false,
137
+ configurable: true
138
+ });
139
+ Object.defineProperty(_Folder.prototype, "properties", {
140
+ /**
141
+ * Gets this folder's properties
142
+ *
143
+ */
144
+ get: function () {
145
+ return tag.configure(SharePointQueryableInstance(this, "properties"), "f.properties");
146
+ },
147
+ enumerable: false,
148
+ configurable: true
149
+ });
150
+ Object.defineProperty(_Folder.prototype, "serverRelativeUrl", {
151
+ /**
152
+ * Gets this folder's server relative url
153
+ *
154
+ */
155
+ get: function () {
156
+ return tag.configure(SharePointQueryable(this, "serverRelativeUrl"), "f.serverRelativeUrl");
157
+ },
158
+ enumerable: false,
159
+ configurable: true
160
+ });
161
+ Object.defineProperty(_Folder.prototype, "uniqueContentTypeOrder", {
162
+ /**
163
+ * Gets a value that specifies the content type order.
164
+ *
165
+ */
166
+ get: function () {
167
+ return tag.configure(SharePointQueryableCollection(this, "uniqueContentTypeOrder"), "f.uniqueContentTypeOrder");
168
+ },
169
+ enumerable: false,
170
+ configurable: true
171
+ });
172
+ /**
173
+ * Moves the folder to the Recycle Bin and returns the identifier of the new Recycle Bin item.
174
+ */
175
+ _Folder.prototype.recycle = function () {
176
+ return spPost(this.clone(Folder, "recycle"));
177
+ };
178
+ /**
179
+ * Gets the associated list item for this folder, loading the default properties
180
+ */
181
+ _Folder.prototype.getItem = function () {
182
+ var selects = [];
183
+ for (var _i = 0; _i < arguments.length; _i++) {
184
+ selects[_i] = arguments[_i];
185
+ }
186
+ return __awaiter(this, void 0, void 0, function () {
187
+ var q;
188
+ var _a;
189
+ return __generator(this, function (_b) {
190
+ switch (_b.label) {
191
+ case 0: return [4 /*yield*/, (_a = this.listItemAllFields).select.apply(_a, __spreadArray([], __read(selects), false))()];
192
+ case 1:
193
+ q = _b.sent();
194
+ if (hOP(q, "odata.null") && q["odata.null"]) {
195
+ throw Error("No associated item was found for this folder. It may be the root folder, which does not have an item.");
196
+ }
197
+ return [2 /*return*/, assign(Item(odataUrlFrom(q)).configureFrom(this), q)];
198
+ }
199
+ });
200
+ });
201
+ };
202
+ /**
203
+ * Moves a folder to destination path
204
+ *
205
+ * @param destUrl Absolute or relative URL of the destination path
206
+ */
207
+ _Folder.prototype.moveTo = function (destUrl) {
208
+ return __awaiter(this, void 0, void 0, function () {
209
+ var urlInfo, uri;
210
+ return __generator(this, function (_a) {
211
+ switch (_a.label) {
212
+ case 0: return [4 /*yield*/, this.getParentInfos()];
213
+ case 1:
214
+ urlInfo = _a.sent();
215
+ uri = new URL(urlInfo.ParentWeb.Url);
216
+ return [4 /*yield*/, spPost(Folder(urlInfo.ParentWeb.Url, "/_api/SP.MoveCopyUtil.MoveFolder()").configureFrom(this), body({
217
+ destUrl: isUrlAbsolute(destUrl) ? destUrl : combine(uri.origin, destUrl),
218
+ srcUrl: combine(uri.origin, urlInfo.Folder.ServerRelativeUrl),
219
+ }))];
220
+ case 2:
221
+ _a.sent();
222
+ return [2 /*return*/];
223
+ }
224
+ });
225
+ });
226
+ };
227
+ /**
228
+ * Moves a folder by path to destination path
229
+ * Also works with different site collections.
230
+ *
231
+ * @param destUrl Absolute or relative URL of the destination path
232
+ * @param keepBoth Keep both if folder with the same name in the same location already exists?
233
+ */
234
+ _Folder.prototype.moveByPath = function (destUrl, KeepBoth) {
235
+ if (KeepBoth === void 0) { KeepBoth = false; }
236
+ return __awaiter(this, void 0, void 0, function () {
237
+ var urlInfo, uri;
238
+ return __generator(this, function (_a) {
239
+ switch (_a.label) {
240
+ case 0: return [4 /*yield*/, this.getParentInfos()];
241
+ case 1:
242
+ urlInfo = _a.sent();
243
+ uri = new URL(urlInfo.ParentWeb.Url);
244
+ return [4 /*yield*/, spPost(Folder(uri.origin, "/_api/SP.MoveCopyUtil.MoveFolderByPath()").configureFrom(this), body({
245
+ destPath: toResourcePath(isUrlAbsolute(destUrl) ? destUrl : combine(uri.origin, destUrl)),
246
+ options: {
247
+ KeepBoth: KeepBoth,
248
+ ResetAuthorAndCreatedOnCopy: true,
249
+ ShouldBypassSharedLocks: true,
250
+ __metadata: {
251
+ type: "SP.MoveCopyOptions",
252
+ },
253
+ },
254
+ srcPath: toResourcePath(combine(uri.origin, urlInfo.Folder.ServerRelativeUrl)),
255
+ }))];
256
+ case 2:
257
+ _a.sent();
258
+ return [2 /*return*/];
259
+ }
260
+ });
261
+ });
262
+ };
263
+ /**
264
+ * Copies a folder to destination path
265
+ *
266
+ * @param destUrl Absolute or relative URL of the destination path
267
+ */
268
+ _Folder.prototype.copyTo = function (destUrl) {
269
+ return __awaiter(this, void 0, void 0, function () {
270
+ var urlInfo, uri;
271
+ return __generator(this, function (_a) {
272
+ switch (_a.label) {
273
+ case 0: return [4 /*yield*/, this.getParentInfos()];
274
+ case 1:
275
+ urlInfo = _a.sent();
276
+ uri = new URL(urlInfo.ParentWeb.Url);
277
+ return [4 /*yield*/, spPost(Folder(uri.origin, "/_api/SP.MoveCopyUtil.CopyFolder()").configureFrom(this), body({
278
+ destUrl: isUrlAbsolute(destUrl) ? destUrl : combine(uri.origin, destUrl),
279
+ srcUrl: combine(uri.origin, urlInfo.Folder.ServerRelativeUrl),
280
+ }))];
281
+ case 2:
282
+ _a.sent();
283
+ return [2 /*return*/];
284
+ }
285
+ });
286
+ });
287
+ };
288
+ /**
289
+ * Copies a folder by path to destination path
290
+ * Also works with different site collections.
291
+ *
292
+ * @param destUrl Absolute or relative URL of the destination path
293
+ * @param keepBoth Keep both if folder with the same name in the same location already exists?
294
+ */
295
+ _Folder.prototype.copyByPath = function (destUrl, KeepBoth) {
296
+ if (KeepBoth === void 0) { KeepBoth = false; }
297
+ return __awaiter(this, void 0, void 0, function () {
298
+ var urlInfo, uri;
299
+ return __generator(this, function (_a) {
300
+ switch (_a.label) {
301
+ case 0: return [4 /*yield*/, this.getParentInfos()];
302
+ case 1:
303
+ urlInfo = _a.sent();
304
+ uri = new URL(urlInfo.ParentWeb.Url);
305
+ return [4 /*yield*/, spPost(Folder(uri.origin, "/_api/SP.MoveCopyUtil.CopyFolderByPath()").configureFrom(this), body({
306
+ destPath: toResourcePath(isUrlAbsolute(destUrl) ? destUrl : combine(uri.origin, destUrl)),
307
+ options: {
308
+ KeepBoth: KeepBoth,
309
+ ResetAuthorAndCreatedOnCopy: true,
310
+ ShouldBypassSharedLocks: true,
311
+ __metadata: {
312
+ type: "SP.MoveCopyOptions",
313
+ },
314
+ },
315
+ srcPath: toResourcePath(combine(uri.origin, urlInfo.Folder.ServerRelativeUrl)),
316
+ }))];
317
+ case 2:
318
+ _a.sent();
319
+ return [2 /*return*/];
320
+ }
321
+ });
322
+ });
323
+ };
324
+ /**
325
+ * Deletes the folder object with options.
326
+ *
327
+ * @param parameters Specifies the options to use when deleting a folder.
328
+ */
329
+ _Folder.prototype.deleteWithParams = function (parameters) {
330
+ return __awaiter(this, void 0, void 0, function () {
331
+ return __generator(this, function (_a) {
332
+ return [2 /*return*/, spPost(this.clone(Folder, "DeleteWithParameters"), body({ parameters: parameters }))];
333
+ });
334
+ });
335
+ };
336
+ /**
337
+ * Create the subfolder inside the current folder, as specified by the leafPath
338
+ *
339
+ * @param leafPath leafName of the new folder
340
+ */
341
+ _Folder.prototype.addSubFolderUsingPath = function (leafPath) {
342
+ return __awaiter(this, void 0, void 0, function () {
343
+ return __generator(this, function (_a) {
344
+ switch (_a.label) {
345
+ case 0: return [4 /*yield*/, spPost(this.clone(Folder, "AddSubFolderUsingPath"), body({ leafPath: toResourcePath(leafPath) }))];
346
+ case 1:
347
+ _a.sent();
348
+ return [2 /*return*/, this.folders.getByName(leafPath)];
349
+ }
350
+ });
351
+ });
352
+ };
353
+ /**
354
+ * Gets the parent information for this folder's list and web
355
+ */
356
+ _Folder.prototype.getParentInfos = function () {
357
+ return __awaiter(this, void 0, void 0, function () {
358
+ var urlInfo;
359
+ return __generator(this, function (_a) {
360
+ switch (_a.label) {
361
+ case 0: return [4 /*yield*/, this.select("ServerRelativeUrl", "ListItemAllFields/ParentList/Id", "ListItemAllFields/ParentList/RootFolder/UniqueId", "ListItemAllFields/ParentList/RootFolder/ServerRelativeUrl", "ListItemAllFields/ParentList/RootFolder/ServerRelativePath", "ListItemAllFields/ParentList/ParentWeb/Id", "ListItemAllFields/ParentList/ParentWeb/Url", "ListItemAllFields/ParentList/ParentWeb/ServerRelativeUrl", "ListItemAllFields/ParentList/ParentWeb/ServerRelativePath").expand("ListItemAllFields/ParentList", "ListItemAllFields/ParentList/RootFolder", "ListItemAllFields/ParentList/ParentWeb")()];
362
+ case 1:
363
+ urlInfo = _a.sent();
364
+ return [2 /*return*/, {
365
+ Folder: {
366
+ ServerRelativeUrl: urlInfo.ServerRelativeUrl,
367
+ },
368
+ ParentList: {
369
+ Id: urlInfo.ListItemAllFields.ParentList.Id,
370
+ RootFolderServerRelativePath: urlInfo.ListItemAllFields.ParentList.RootFolder.ServerRelativePath,
371
+ RootFolderServerRelativeUrl: urlInfo.ListItemAllFields.ParentList.RootFolder.ServerRelativeUrl,
372
+ RootFolderUniqueId: urlInfo.ListItemAllFields.ParentList.RootFolder.UniqueId,
373
+ },
374
+ ParentWeb: {
375
+ Id: urlInfo.ListItemAllFields.ParentList.ParentWeb.Id,
376
+ ServerRelativePath: urlInfo.ListItemAllFields.ParentList.ParentWeb.ServerRelativePath,
377
+ ServerRelativeUrl: urlInfo.ListItemAllFields.ParentList.ParentWeb.ServerRelativeUrl,
378
+ Url: urlInfo.ListItemAllFields.ParentList.ParentWeb.Url,
379
+ },
380
+ }];
381
+ }
382
+ });
383
+ });
384
+ };
385
+ /**
386
+ * Gets the shareable item associated with this folder
387
+ */
388
+ _Folder.prototype.getShareable = function () {
389
+ return __awaiter(this, void 0, void 0, function () {
390
+ var d, shareable;
391
+ return __generator(this, function (_a) {
392
+ switch (_a.label) {
393
+ case 0: return [4 /*yield*/, this.clone(SharePointQueryableInstance, "listItemAllFields", false).select("odata.id")()];
394
+ case 1:
395
+ d = _a.sent();
396
+ shareable = Item(odataUrlFrom(d)).configureFrom(this);
397
+ // we need to handle batching
398
+ if (this.hasBatch) {
399
+ shareable = shareable.inBatch(this.batch);
400
+ }
401
+ return [2 /*return*/, shareable];
402
+ }
403
+ });
404
+ });
405
+ };
406
+ __decorate([
407
+ tag("f.recycle")
408
+ ], _Folder.prototype, "recycle", null);
409
+ __decorate([
410
+ tag("f.getItem")
411
+ ], _Folder.prototype, "getItem", null);
412
+ __decorate([
413
+ tag("f.moveTo")
414
+ ], _Folder.prototype, "moveTo", null);
415
+ __decorate([
416
+ tag("f.moveByPath")
417
+ ], _Folder.prototype, "moveByPath", null);
418
+ __decorate([
419
+ tag("f.copyTo")
420
+ ], _Folder.prototype, "copyTo", null);
421
+ __decorate([
422
+ tag("f.copyByPath")
423
+ ], _Folder.prototype, "copyByPath", null);
424
+ __decorate([
425
+ tag("f.del-params")
426
+ ], _Folder.prototype, "deleteWithParams", null);
427
+ __decorate([
428
+ tag("f.getShareable")
429
+ ], _Folder.prototype, "getShareable", null);
430
+ return _Folder;
431
+ }(_SharePointQueryableInstance));
432
+ export { _Folder };
433
+ export var Folder = spInvokableFactory(_Folder);
434
434
  //# sourceMappingURL=types.js.map