@pnp/sp 2.10.0 → 2.11.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 (294) 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.js +177 -177
  6. package/appcatalog/web.d.ts +16 -16
  7. package/appcatalog/web.js +6 -6
  8. package/attachments/index.d.ts +2 -2
  9. package/attachments/index.js +2 -2
  10. package/attachments/item.d.ts +12 -12
  11. package/attachments/item.js +4 -4
  12. package/attachments/types.d.ts +92 -92
  13. package/attachments/types.js +240 -240
  14. package/batch.d.ts +17 -17
  15. package/batch.js +223 -223
  16. package/clientside-pages/funcs.d.ts +22 -22
  17. package/clientside-pages/funcs.js +25 -25
  18. package/clientside-pages/index.d.ts +2 -2
  19. package/clientside-pages/index.js +2 -2
  20. package/clientside-pages/types.d.ts +496 -496
  21. package/clientside-pages/types.js +1496 -1496
  22. package/clientside-pages/web.d.ts +41 -41
  23. package/clientside-pages/web.js +57 -57
  24. package/column-defaults/folder.d.ts +27 -27
  25. package/column-defaults/folder.js +82 -82
  26. package/column-defaults/index.d.ts +3 -3
  27. package/column-defaults/index.js +2 -2
  28. package/column-defaults/list.d.ts +19 -19
  29. package/column-defaults/list.js +198 -198
  30. package/column-defaults/types.d.ts +21 -21
  31. package/column-defaults/types.js +1 -1
  32. package/comments/clientside-page.d.ts +57 -57
  33. package/comments/clientside-page.d.ts.map +1 -1
  34. package/comments/clientside-page.js +136 -136
  35. package/comments/index.d.ts +2 -2
  36. package/comments/index.js +2 -2
  37. package/comments/item.d.ts +29 -29
  38. package/comments/item.js +47 -47
  39. package/comments/types.d.ts +107 -107
  40. package/comments/types.d.ts.map +1 -1
  41. package/comments/types.js +145 -145
  42. package/comments/types.js.map +1 -1
  43. package/content-types/index.d.ts +4 -4
  44. package/content-types/index.js +4 -4
  45. package/content-types/item.d.ts +12 -12
  46. package/content-types/item.js +4 -4
  47. package/content-types/list.d.ts +12 -12
  48. package/content-types/list.js +4 -4
  49. package/content-types/types.d.ts +107 -107
  50. package/content-types/types.js +166 -166
  51. package/content-types/web.d.ts +12 -12
  52. package/content-types/web.js +4 -4
  53. package/decorators.d.ts +11 -11
  54. package/decorators.js +28 -28
  55. package/features/index.d.ts +3 -3
  56. package/features/index.js +3 -3
  57. package/features/site.d.ts +12 -12
  58. package/features/site.js +4 -4
  59. package/features/types.d.ts +47 -47
  60. package/features/types.js +109 -109
  61. package/features/web.d.ts +12 -12
  62. package/features/web.js +4 -4
  63. package/fields/index.d.ts +4 -4
  64. package/fields/index.js +4 -4
  65. package/fields/list.d.ts +12 -12
  66. package/fields/list.js +4 -4
  67. package/fields/types.d.ts +368 -368
  68. package/fields/types.js +624 -624
  69. package/fields/web.d.ts +17 -17
  70. package/fields/web.js +5 -5
  71. package/files/folder.d.ts +12 -12
  72. package/files/folder.js +4 -4
  73. package/files/index.d.ts +4 -4
  74. package/files/index.js +4 -4
  75. package/files/item.d.ts +12 -12
  76. package/files/item.js +4 -4
  77. package/files/types.d.ts +421 -421
  78. package/files/types.js +853 -853
  79. package/files/web.d.ts +35 -35
  80. package/files/web.js +15 -15
  81. package/folders/index.d.ts +4 -4
  82. package/folders/index.js +4 -4
  83. package/folders/item.d.ts +9 -9
  84. package/folders/item.js +4 -4
  85. package/folders/list.d.ts +12 -12
  86. package/folders/list.js +4 -4
  87. package/folders/types.d.ts +207 -207
  88. package/folders/types.js +433 -433
  89. package/folders/web.d.ts +39 -39
  90. package/folders/web.js +15 -15
  91. package/forms/index.d.ts +2 -2
  92. package/forms/index.js +2 -2
  93. package/forms/list.d.ts +9 -9
  94. package/forms/list.js +4 -4
  95. package/forms/types.d.ts +35 -35
  96. package/forms/types.js +41 -41
  97. package/hubsites/index.d.ts +12 -12
  98. package/hubsites/index.js +15 -15
  99. package/hubsites/site.d.ts +26 -26
  100. package/hubsites/site.js +39 -39
  101. package/hubsites/types.d.ts +55 -55
  102. package/hubsites/types.js +53 -53
  103. package/hubsites/web.d.ts +21 -21
  104. package/hubsites/web.js +23 -23
  105. package/index.d.ts +14 -14
  106. package/index.js +13 -13
  107. package/items/index.d.ts +2 -2
  108. package/items/index.js +2 -2
  109. package/items/list.d.ts +9 -9
  110. package/items/list.js +4 -4
  111. package/items/types.d.ts +226 -226
  112. package/items/types.js +549 -549
  113. package/lists/index.d.ts +2 -2
  114. package/lists/index.js +2 -2
  115. package/lists/types.d.ts +495 -495
  116. package/lists/types.js +522 -522
  117. package/lists/web.d.ts +43 -43
  118. package/lists/web.js +27 -27
  119. package/navigation/index.d.ts +8 -8
  120. package/navigation/index.js +14 -14
  121. package/navigation/types.d.ts +154 -154
  122. package/navigation/types.js +219 -219
  123. package/navigation/web.d.ts +13 -13
  124. package/navigation/web.js +4 -4
  125. package/odata.d.ts +5 -5
  126. package/odata.js +90 -90
  127. package/operations.d.ts +9 -9
  128. package/operations.js +63 -63
  129. package/package.json +4 -4
  130. package/presets/all.d.ts +72 -72
  131. package/presets/all.js +72 -72
  132. package/presets/core.d.ts +11 -11
  133. package/presets/core.js +11 -11
  134. package/profiles/index.d.ts +7 -7
  135. package/profiles/index.js +13 -13
  136. package/profiles/types.d.ts +357 -357
  137. package/profiles/types.js +454 -454
  138. package/readme.md +21 -21
  139. package/regional-settings/content-type.d.ts +7 -7
  140. package/regional-settings/content-type.js +4 -4
  141. package/regional-settings/field.d.ts +7 -7
  142. package/regional-settings/field.js +4 -4
  143. package/regional-settings/funcs.d.ts +2 -2
  144. package/regional-settings/funcs.js +8 -8
  145. package/regional-settings/index.d.ts +6 -6
  146. package/regional-settings/index.js +6 -6
  147. package/regional-settings/list.d.ts +7 -7
  148. package/regional-settings/list.js +4 -4
  149. package/regional-settings/types.d.ts +111 -111
  150. package/regional-settings/types.js +159 -159
  151. package/regional-settings/user-custom-actions.d.ts +7 -7
  152. package/regional-settings/user-custom-actions.js +4 -4
  153. package/regional-settings/web.d.ts +12 -12
  154. package/regional-settings/web.js +7 -7
  155. package/related-items/index.d.ts +1 -1
  156. package/related-items/index.js +1 -1
  157. package/related-items/types.d.ts +76 -76
  158. package/related-items/types.js +103 -103
  159. package/related-items/web.d.ts +12 -12
  160. package/related-items/web.js +9 -9
  161. package/rest.d.ts +44 -44
  162. package/rest.js +72 -72
  163. package/search/index.d.ts +30 -30
  164. package/search/index.js +25 -25
  165. package/search/query.d.ts +62 -62
  166. package/search/query.js +302 -302
  167. package/search/suggest.d.ts +76 -76
  168. package/search/suggest.js +66 -66
  169. package/search/types.d.ts +426 -426
  170. package/search/types.js +57 -57
  171. package/security/funcs.d.ts +43 -43
  172. package/security/funcs.js +142 -142
  173. package/security/index.d.ts +4 -4
  174. package/security/index.js +4 -4
  175. package/security/item.d.ts +7 -7
  176. package/security/item.js +14 -14
  177. package/security/list.d.ts +7 -7
  178. package/security/list.js +14 -14
  179. package/security/types.d.ts +318 -318
  180. package/security/types.js +399 -399
  181. package/security/web.d.ts +9 -9
  182. package/security/web.js +15 -15
  183. package/sharepointqueryable.d.ts +135 -135
  184. package/sharepointqueryable.js +265 -265
  185. package/sharing/file.d.ts +18 -18
  186. package/sharing/file.js +116 -116
  187. package/sharing/folder.d.ts +9 -9
  188. package/sharing/folder.js +136 -136
  189. package/sharing/funcs.d.ts +62 -62
  190. package/sharing/funcs.js +239 -239
  191. package/sharing/index.d.ts +5 -5
  192. package/sharing/index.js +5 -5
  193. package/sharing/item.d.ts +16 -16
  194. package/sharing/item.js +15 -15
  195. package/sharing/types.d.ts +583 -583
  196. package/sharing/types.js +113 -113
  197. package/sharing/web.d.ts +19 -19
  198. package/sharing/web.js +76 -76
  199. package/site-designs/index.d.ts +8 -8
  200. package/site-designs/index.js +14 -14
  201. package/site-designs/types.d.ts +319 -319
  202. package/site-designs/types.js +203 -203
  203. package/site-designs/web.d.ts +25 -25
  204. package/site-designs/web.js +11 -11
  205. package/site-groups/index.d.ts +2 -2
  206. package/site-groups/index.js +2 -2
  207. package/site-groups/types.d.ts +89 -89
  208. package/site-groups/types.js +125 -125
  209. package/site-groups/web.d.ts +40 -40
  210. package/site-groups/web.js +30 -30
  211. package/site-scripts/index.d.ts +9 -9
  212. package/site-scripts/index.js +15 -15
  213. package/site-scripts/list.d.ts +12 -12
  214. package/site-scripts/list.js +24 -24
  215. package/site-scripts/types.d.ts +183 -183
  216. package/site-scripts/types.js +141 -141
  217. package/site-scripts/web.d.ts +13 -13
  218. package/site-scripts/web.js +5 -5
  219. package/site-users/index.d.ts +2 -2
  220. package/site-users/index.js +2 -2
  221. package/site-users/types.d.ts +138 -138
  222. package/site-users/types.js +122 -122
  223. package/site-users/web.d.ts +31 -31
  224. package/site-users/web.js +27 -27
  225. package/sites/index.d.ts +7 -7
  226. package/sites/index.js +13 -13
  227. package/sites/types.d.ts +147 -147
  228. package/sites/types.js +321 -321
  229. package/social/index.d.ts +10 -10
  230. package/social/index.js +13 -13
  231. package/social/types.d.ts +309 -309
  232. package/social/types.js +322 -322
  233. package/sphttpclient.d.ts +18 -18
  234. package/sphttpclient.js +189 -189
  235. package/splibconfig.d.ts +22 -22
  236. package/splibconfig.js +13 -13
  237. package/sputilities/index.d.ts +7 -7
  238. package/sputilities/index.js +13 -13
  239. package/sputilities/types.d.ts +130 -130
  240. package/sputilities/types.js +118 -118
  241. package/subscriptions/index.d.ts +2 -2
  242. package/subscriptions/index.js +2 -2
  243. package/subscriptions/list.d.ts +13 -13
  244. package/subscriptions/list.js +4 -4
  245. package/subscriptions/types.d.ts +54 -54
  246. package/subscriptions/types.js +111 -111
  247. package/taxonomy/index.d.ts +7 -7
  248. package/taxonomy/index.js +13 -13
  249. package/taxonomy/types.d.ts +200 -200
  250. package/taxonomy/types.js +347 -347
  251. package/telemetry.d.ts +12 -12
  252. package/telemetry.js +48 -48
  253. package/types.d.ts +218 -218
  254. package/types.js +79 -79
  255. package/user-custom-actions/index.d.ts +4 -4
  256. package/user-custom-actions/index.js +4 -4
  257. package/user-custom-actions/list.d.ts +12 -12
  258. package/user-custom-actions/list.js +4 -4
  259. package/user-custom-actions/site.d.ts +12 -12
  260. package/user-custom-actions/site.js +4 -4
  261. package/user-custom-actions/types.d.ts +82 -82
  262. package/user-custom-actions/types.js +93 -93
  263. package/user-custom-actions/web.d.ts +15 -15
  264. package/user-custom-actions/web.js +4 -4
  265. package/utils/escapeQueryStrValue.d.ts +1 -1
  266. package/utils/escapeQueryStrValue.js +19 -19
  267. package/utils/extractweburl.d.ts +1 -1
  268. package/utils/extractweburl.js +15 -15
  269. package/utils/file-names.d.ts +17 -17
  270. package/utils/file-names.js +38 -38
  271. package/utils/metadata.d.ts +5 -5
  272. package/utils/metadata.js +5 -5
  273. package/utils/objectToSPKeyValueCollection.d.ts +20 -20
  274. package/utils/objectToSPKeyValueCollection.js +16 -16
  275. package/utils/toResourcePath.d.ts +7 -7
  276. package/utils/toResourcePath.js +6 -6
  277. package/utils/toabsoluteurl.d.ts +7 -7
  278. package/utils/toabsoluteurl.js +61 -61
  279. package/views/index.d.ts +2 -2
  280. package/views/index.js +2 -2
  281. package/views/list.d.ts +23 -23
  282. package/views/list.js +8 -8
  283. package/views/types.d.ts +140 -140
  284. package/views/types.js +184 -184
  285. package/webparts/file.d.ts +15 -15
  286. package/webparts/file.js +6 -6
  287. package/webparts/index.d.ts +2 -2
  288. package/webparts/index.js +2 -2
  289. package/webparts/types.d.ts +83 -83
  290. package/webparts/types.js +117 -117
  291. package/webs/index.d.ts +16 -16
  292. package/webs/index.js +16 -16
  293. package/webs/types.d.ts +210 -210
  294. 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), 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);
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