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