@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/sites/types.js CHANGED
@@ -1,322 +1,322 @@
1
- import { __awaiter, __decorate, __extends, __generator } from "tslib";
2
- import { SharePointQueryable, _SharePointQueryableInstance, spInvokableFactory } from "../sharepointqueryable.js";
3
- import { defaultPath } from "../decorators.js";
4
- import { Web } from "../webs/types.js";
5
- import { hOP, assign } from "@pnp/common";
6
- import { body } from "@pnp/odata";
7
- import { odataUrlFrom } from "../odata.js";
8
- import { spPost } from "../operations.js";
9
- import { SPBatch } from "../batch.js";
10
- import { escapeQueryStrValue } from "../utils/escapeQueryStrValue.js";
11
- import { tag } from "../telemetry.js";
12
- import { metadata } from "../utils/metadata.js";
13
- import { extractWebUrl } from "../utils/extractweburl.js";
14
- import { emptyGuid } from "../splibconfig.js";
15
- var _Site = /** @class */ (function (_super) {
16
- __extends(_Site, _super);
17
- function _Site() {
18
- return _super !== null && _super.apply(this, arguments) || this;
19
- }
20
- Object.defineProperty(_Site.prototype, "rootWeb", {
21
- /**
22
- * Gets the root web of the site collection
23
- *
24
- */
25
- get: function () {
26
- return tag.configure(Web(this, "rootweb").configureFrom(this), "si.rootWeb");
27
- },
28
- enumerable: false,
29
- configurable: true
30
- });
31
- /**
32
- * Returns the collection of changes from the change log that have occurred within the list, based on the specified query
33
- *
34
- * @param query The change query
35
- */
36
- _Site.prototype.getChanges = function (query) {
37
- var postBody = body({ "query": assign(metadata("SP.ChangeQuery"), query) });
38
- return spPost(this.clone(Web, "getchanges"), postBody);
39
- };
40
- /**
41
- * Opens a web by id (using POST)
42
- *
43
- * @param webId The GUID id of the web to open
44
- */
45
- _Site.prototype.openWebById = function (webId) {
46
- return __awaiter(this, void 0, void 0, function () {
47
- var data;
48
- return __generator(this, function (_a) {
49
- switch (_a.label) {
50
- case 0: return [4 /*yield*/, spPost(this.clone(Site, "openWebById('" + webId + "')"))];
51
- case 1:
52
- data = _a.sent();
53
- return [2 /*return*/, {
54
- data: data,
55
- web: Web(extractWebUrl(odataUrlFrom(data))).configureFrom(this),
56
- }];
57
- }
58
- });
59
- });
60
- };
61
- /**
62
- * Gets a Web instance representing the root web of the site collection
63
- * correctly setup for chaining within the library
64
- */
65
- _Site.prototype.getRootWeb = function () {
66
- return __awaiter(this, void 0, void 0, function () {
67
- var web;
68
- return __generator(this, function (_a) {
69
- switch (_a.label) {
70
- case 0: return [4 /*yield*/, this.rootWeb.select("Url")()];
71
- case 1:
72
- web = _a.sent();
73
- return [2 /*return*/, tag.configure(Web(web.Url).configureFrom(this), "si.getRootWeb")];
74
- }
75
- });
76
- });
77
- };
78
- /**
79
- * Gets the context information for this site collection
80
- */
81
- _Site.prototype.getContextInfo = function () {
82
- return __awaiter(this, void 0, void 0, function () {
83
- var site, q, data, info;
84
- return __generator(this, function (_a) {
85
- switch (_a.label) {
86
- case 0:
87
- site = Site(this.parentUrl, "_api/contextinfo").configureFrom(this);
88
- q = tag.configure(site, "si.getContextInfo");
89
- return [4 /*yield*/, spPost(q)];
90
- case 1:
91
- data = _a.sent();
92
- if (hOP(data, "GetContextWebInformation")) {
93
- info = data.GetContextWebInformation;
94
- info.SupportedSchemaVersions = info.SupportedSchemaVersions.results;
95
- return [2 /*return*/, info];
96
- }
97
- else {
98
- return [2 /*return*/, data];
99
- }
100
- return [2 /*return*/];
101
- }
102
- });
103
- });
104
- };
105
- _Site.prototype.createBatch = function () {
106
- return new SPBatch(this.parentUrl, this.getRuntime());
107
- };
108
- /**
109
- * Deletes the current site
110
- *
111
- */
112
- _Site.prototype.delete = function () {
113
- return __awaiter(this, void 0, void 0, function () {
114
- var site, q;
115
- return __generator(this, function (_a) {
116
- switch (_a.label) {
117
- case 0: return [4 /*yield*/, this.clone(Site, "").select("Id")()];
118
- case 1:
119
- site = _a.sent();
120
- q = tag.configure(Site(this.parentUrl, "_api/SPSiteManager/Delete"), "si.delete");
121
- return [4 /*yield*/, spPost(q, body({ siteId: site.Id }))];
122
- case 2:
123
- _a.sent();
124
- return [2 /*return*/];
125
- }
126
- });
127
- });
128
- };
129
- /**
130
- * Gets the document libraries on a site. Static method. (SharePoint Online only)
131
- *
132
- * @param absoluteWebUrl The absolute url of the web whose document libraries should be returned
133
- */
134
- _Site.prototype.getDocumentLibraries = function (absoluteWebUrl) {
135
- return __awaiter(this, void 0, void 0, function () {
136
- var q, data;
137
- return __generator(this, function (_a) {
138
- switch (_a.label) {
139
- case 0:
140
- q = tag.configure(SharePointQueryable("", "_api/sp.web.getdocumentlibraries(@v)"), "si.getDocumentLibraries");
141
- q.query.set("@v", "'" + escapeQueryStrValue(absoluteWebUrl) + "'");
142
- return [4 /*yield*/, q()];
143
- case 1:
144
- data = _a.sent();
145
- return [2 /*return*/, hOP(data, "GetDocumentLibraries") ? data.GetDocumentLibraries : data];
146
- }
147
- });
148
- });
149
- };
150
- /**
151
- * Gets the site url from a page url
152
- *
153
- * @param absolutePageUrl The absolute url of the page
154
- */
155
- _Site.prototype.getWebUrlFromPageUrl = function (absolutePageUrl) {
156
- return __awaiter(this, void 0, void 0, function () {
157
- var q, data;
158
- return __generator(this, function (_a) {
159
- switch (_a.label) {
160
- case 0:
161
- q = tag.configure(SharePointQueryable("", "_api/sp.web.getweburlfrompageurl(@v)"), "si.getWebUrlFromPageUrl");
162
- q.query.set("@v", "'" + escapeQueryStrValue(absolutePageUrl) + "'");
163
- return [4 /*yield*/, q()];
164
- case 1:
165
- data = _a.sent();
166
- return [2 /*return*/, hOP(data, "GetWebUrlFromPageUrl") ? data.GetWebUrlFromPageUrl : data];
167
- }
168
- });
169
- });
170
- };
171
- /**
172
- * Creates a Modern communication site.
173
- *
174
- * @param title The title of the site to create
175
- * @param lcid The language to use for the site. If not specified will default to 1033 (English).
176
- * @param shareByEmailEnabled If set to true, it will enable sharing files via Email. By default it is set to false
177
- * @param url The fully qualified URL (e.g. https://yourtenant.sharepoint.com/sites/mysitecollection) of the site.
178
- * @param description The description of the communication site.
179
- * @param classification The Site classification to use. For instance 'Contoso Classified'. See https://www.youtube.com/watch?v=E-8Z2ggHcS0 for more information
180
- * @param siteDesignId The Guid of the site design to be used.
181
- * You can use the below default OOTB GUIDs:
182
- * Topic: 00000000-0000-0000-0000-000000000000
183
- * Showcase: 6142d2a0-63a5-4ba0-aede-d9fefca2c767
184
- * Blank: f6cc5403-0d63-442e-96c0-285923709ffc
185
- * @param hubSiteId The id of the hub site to which the new site should be associated
186
- * @param owner Optional owner value, required if executing the method in app only mode
187
- */
188
- _Site.prototype.createCommunicationSite = function (title, lcid, shareByEmailEnabled, url, description, classification, siteDesignId, hubSiteId, owner) {
189
- if (lcid === void 0) { lcid = 1033; }
190
- if (shareByEmailEnabled === void 0) { shareByEmailEnabled = false; }
191
- return __awaiter(this, void 0, void 0, function () {
192
- return __generator(this, function (_a) {
193
- return [2 /*return*/, this.createCommunicationSiteFromProps({
194
- Classification: classification,
195
- Description: description,
196
- HubSiteId: hubSiteId,
197
- Lcid: lcid,
198
- Owner: owner,
199
- ShareByEmailEnabled: shareByEmailEnabled,
200
- SiteDesignId: siteDesignId,
201
- Title: title,
202
- Url: url,
203
- })];
204
- });
205
- });
206
- };
207
- _Site.prototype.createCommunicationSiteFromProps = function (props) {
208
- return __awaiter(this, void 0, void 0, function () {
209
- var p, postBody;
210
- return __generator(this, function (_a) {
211
- p = Object.assign({}, {
212
- Classification: "",
213
- Description: "",
214
- HubSiteId: emptyGuid,
215
- Lcid: 1033,
216
- ShareByEmailEnabled: false,
217
- SiteDesignId: emptyGuid,
218
- WebTemplate: "SITEPAGEPUBLISHING#0",
219
- WebTemplateExtensionId: emptyGuid,
220
- }, props);
221
- postBody = body({
222
- "request": assign(metadata("Microsoft.SharePoint.Portal.SPSiteCreationRequest"), p),
223
- });
224
- return [2 /*return*/, spPost(Site(extractWebUrl(this.toUrl()), "/_api/SPSiteManager/Create"), postBody)];
225
- });
226
- });
227
- };
228
- /**
229
- *
230
- * @param url Site Url that you want to check if exists
231
- */
232
- _Site.prototype.exists = function (url) {
233
- return __awaiter(this, void 0, void 0, function () {
234
- var postBody, value;
235
- return __generator(this, function (_a) {
236
- switch (_a.label) {
237
- case 0:
238
- postBody = body({ url: url });
239
- return [4 /*yield*/, spPost(Site(extractWebUrl(this.toUrl()), "/_api/SP.Site.Exists"), postBody)];
240
- case 1:
241
- value = _a.sent();
242
- return [2 /*return*/, value];
243
- }
244
- });
245
- });
246
- };
247
- /**
248
- * Creates a Modern team site backed by Office 365 group. For use in SP Online only. This will not work with App-only tokens
249
- *
250
- * @param displayName The title or display name of the Modern team site to be created
251
- * @param alias Alias of the underlying Office 365 Group
252
- * @param isPublic Defines whether the Office 365 Group will be public (default), or private.
253
- * @param lcid The language to use for the site. If not specified will default to English (1033).
254
- * @param description The description of the site to be created.
255
- * @param classification The Site classification to use. For instance 'Contoso Classified'. See https://www.youtube.com/watch?v=E-8Z2ggHcS0 for more information
256
- * @param owners The Owners of the site to be created
257
- */
258
- _Site.prototype.createModernTeamSite = function (displayName, alias, isPublic, lcid, description, classification, owners, hubSiteId, siteDesignId) {
259
- return __awaiter(this, void 0, void 0, function () {
260
- return __generator(this, function (_a) {
261
- return [2 /*return*/, this.createModernTeamSiteFromProps({
262
- alias: alias,
263
- classification: classification,
264
- description: description,
265
- displayName: displayName,
266
- hubSiteId: hubSiteId,
267
- isPublic: isPublic,
268
- lcid: lcid,
269
- owners: owners,
270
- siteDesignId: siteDesignId,
271
- })];
272
- });
273
- });
274
- };
275
- _Site.prototype.createModernTeamSiteFromProps = function (props) {
276
- return __awaiter(this, void 0, void 0, function () {
277
- var p, postBody;
278
- return __generator(this, function (_a) {
279
- p = Object.assign({}, {
280
- classification: "",
281
- description: "",
282
- hubSiteId: emptyGuid,
283
- isPublic: true,
284
- lcid: 1033,
285
- owners: [],
286
- }, props);
287
- postBody = {
288
- alias: p.alias,
289
- displayName: p.displayName,
290
- isPublic: p.isPublic,
291
- optionalParams: {
292
- Classification: p.classification,
293
- CreationOptions: {
294
- "results": ["SPSiteLanguage:" + p.lcid, "HubSiteId:" + p.hubSiteId],
295
- },
296
- Description: p.description,
297
- Owners: {
298
- "results": p.owners,
299
- },
300
- },
301
- };
302
- if (p.siteDesignId) {
303
- postBody.optionalParams.CreationOptions.results.push("implicit_formula_292aa8a00786498a87a5ca52d9f4214a_" + p.siteDesignId);
304
- }
305
- return [2 /*return*/, spPost(Site(extractWebUrl(this.toUrl()), "/_api/GroupSiteManager/CreateGroupEx"), body(postBody))];
306
- });
307
- });
308
- };
309
- __decorate([
310
- tag("si.getChanges")
311
- ], _Site.prototype, "getChanges", null);
312
- __decorate([
313
- tag("si.openWebById")
314
- ], _Site.prototype, "openWebById", null);
315
- _Site = __decorate([
316
- defaultPath("_api/site")
317
- ], _Site);
318
- return _Site;
319
- }(_SharePointQueryableInstance));
320
- export { _Site };
321
- export var Site = spInvokableFactory(_Site);
1
+ import { __awaiter, __decorate, __extends, __generator } from "tslib";
2
+ import { SharePointQueryable, _SharePointQueryableInstance, spInvokableFactory } from "../sharepointqueryable.js";
3
+ import { defaultPath } from "../decorators.js";
4
+ import { Web } from "../webs/types.js";
5
+ import { hOP, assign } from "@pnp/common";
6
+ import { body } from "@pnp/odata";
7
+ import { odataUrlFrom } from "../odata.js";
8
+ import { spPost } from "../operations.js";
9
+ import { SPBatch } from "../batch.js";
10
+ import { escapeQueryStrValue } from "../utils/escapeQueryStrValue.js";
11
+ import { tag } from "../telemetry.js";
12
+ import { metadata } from "../utils/metadata.js";
13
+ import { extractWebUrl } from "../utils/extractweburl.js";
14
+ import { emptyGuid } from "../splibconfig.js";
15
+ var _Site = /** @class */ (function (_super) {
16
+ __extends(_Site, _super);
17
+ function _Site() {
18
+ return _super !== null && _super.apply(this, arguments) || this;
19
+ }
20
+ Object.defineProperty(_Site.prototype, "rootWeb", {
21
+ /**
22
+ * Gets the root web of the site collection
23
+ *
24
+ */
25
+ get: function () {
26
+ return tag.configure(Web(this, "rootweb").configureFrom(this), "si.rootWeb");
27
+ },
28
+ enumerable: false,
29
+ configurable: true
30
+ });
31
+ /**
32
+ * Returns the collection of changes from the change log that have occurred within the list, based on the specified query
33
+ *
34
+ * @param query The change query
35
+ */
36
+ _Site.prototype.getChanges = function (query) {
37
+ var postBody = body({ "query": assign(metadata("SP.ChangeQuery"), query) });
38
+ return spPost(this.clone(Web, "getchanges"), postBody);
39
+ };
40
+ /**
41
+ * Opens a web by id (using POST)
42
+ *
43
+ * @param webId The GUID id of the web to open
44
+ */
45
+ _Site.prototype.openWebById = function (webId) {
46
+ return __awaiter(this, void 0, void 0, function () {
47
+ var data;
48
+ return __generator(this, function (_a) {
49
+ switch (_a.label) {
50
+ case 0: return [4 /*yield*/, spPost(this.clone(Site, "openWebById('" + webId + "')"))];
51
+ case 1:
52
+ data = _a.sent();
53
+ return [2 /*return*/, {
54
+ data: data,
55
+ web: Web(extractWebUrl(odataUrlFrom(data))).configureFrom(this),
56
+ }];
57
+ }
58
+ });
59
+ });
60
+ };
61
+ /**
62
+ * Gets a Web instance representing the root web of the site collection
63
+ * correctly setup for chaining within the library
64
+ */
65
+ _Site.prototype.getRootWeb = function () {
66
+ return __awaiter(this, void 0, void 0, function () {
67
+ var web;
68
+ return __generator(this, function (_a) {
69
+ switch (_a.label) {
70
+ case 0: return [4 /*yield*/, this.rootWeb.select("Url")()];
71
+ case 1:
72
+ web = _a.sent();
73
+ return [2 /*return*/, tag.configure(Web(web.Url).configureFrom(this), "si.getRootWeb")];
74
+ }
75
+ });
76
+ });
77
+ };
78
+ /**
79
+ * Gets the context information for this site collection
80
+ */
81
+ _Site.prototype.getContextInfo = function () {
82
+ return __awaiter(this, void 0, void 0, function () {
83
+ var site, q, data, info;
84
+ return __generator(this, function (_a) {
85
+ switch (_a.label) {
86
+ case 0:
87
+ site = Site(this.parentUrl, "_api/contextinfo").configureFrom(this);
88
+ q = tag.configure(site, "si.getContextInfo");
89
+ return [4 /*yield*/, spPost(q)];
90
+ case 1:
91
+ data = _a.sent();
92
+ if (hOP(data, "GetContextWebInformation")) {
93
+ info = data.GetContextWebInformation;
94
+ info.SupportedSchemaVersions = info.SupportedSchemaVersions.results;
95
+ return [2 /*return*/, info];
96
+ }
97
+ else {
98
+ return [2 /*return*/, data];
99
+ }
100
+ return [2 /*return*/];
101
+ }
102
+ });
103
+ });
104
+ };
105
+ _Site.prototype.createBatch = function () {
106
+ return new SPBatch(this.parentUrl, this.getRuntime());
107
+ };
108
+ /**
109
+ * Deletes the current site
110
+ *
111
+ */
112
+ _Site.prototype.delete = function () {
113
+ return __awaiter(this, void 0, void 0, function () {
114
+ var site, q;
115
+ return __generator(this, function (_a) {
116
+ switch (_a.label) {
117
+ case 0: return [4 /*yield*/, this.clone(Site, "").select("Id")()];
118
+ case 1:
119
+ site = _a.sent();
120
+ q = tag.configure(Site(this.parentUrl, "_api/SPSiteManager/Delete"), "si.delete");
121
+ return [4 /*yield*/, spPost(q, body({ siteId: site.Id }))];
122
+ case 2:
123
+ _a.sent();
124
+ return [2 /*return*/];
125
+ }
126
+ });
127
+ });
128
+ };
129
+ /**
130
+ * Gets the document libraries on a site. Static method. (SharePoint Online only)
131
+ *
132
+ * @param absoluteWebUrl The absolute url of the web whose document libraries should be returned
133
+ */
134
+ _Site.prototype.getDocumentLibraries = function (absoluteWebUrl) {
135
+ return __awaiter(this, void 0, void 0, function () {
136
+ var q, data;
137
+ return __generator(this, function (_a) {
138
+ switch (_a.label) {
139
+ case 0:
140
+ q = tag.configure(SharePointQueryable("", "_api/sp.web.getdocumentlibraries(@v)"), "si.getDocumentLibraries");
141
+ q.query.set("@v", "'" + escapeQueryStrValue(absoluteWebUrl) + "'");
142
+ return [4 /*yield*/, q()];
143
+ case 1:
144
+ data = _a.sent();
145
+ return [2 /*return*/, hOP(data, "GetDocumentLibraries") ? data.GetDocumentLibraries : data];
146
+ }
147
+ });
148
+ });
149
+ };
150
+ /**
151
+ * Gets the site url from a page url
152
+ *
153
+ * @param absolutePageUrl The absolute url of the page
154
+ */
155
+ _Site.prototype.getWebUrlFromPageUrl = function (absolutePageUrl) {
156
+ return __awaiter(this, void 0, void 0, function () {
157
+ var q, data;
158
+ return __generator(this, function (_a) {
159
+ switch (_a.label) {
160
+ case 0:
161
+ q = tag.configure(SharePointQueryable("", "_api/sp.web.getweburlfrompageurl(@v)"), "si.getWebUrlFromPageUrl");
162
+ q.query.set("@v", "'" + escapeQueryStrValue(absolutePageUrl) + "'");
163
+ return [4 /*yield*/, q()];
164
+ case 1:
165
+ data = _a.sent();
166
+ return [2 /*return*/, hOP(data, "GetWebUrlFromPageUrl") ? data.GetWebUrlFromPageUrl : data];
167
+ }
168
+ });
169
+ });
170
+ };
171
+ /**
172
+ * Creates a Modern communication site.
173
+ *
174
+ * @param title The title of the site to create
175
+ * @param lcid The language to use for the site. If not specified will default to 1033 (English).
176
+ * @param shareByEmailEnabled If set to true, it will enable sharing files via Email. By default it is set to false
177
+ * @param url The fully qualified URL (e.g. https://yourtenant.sharepoint.com/sites/mysitecollection) of the site.
178
+ * @param description The description of the communication site.
179
+ * @param classification The Site classification to use. For instance 'Contoso Classified'. See https://www.youtube.com/watch?v=E-8Z2ggHcS0 for more information
180
+ * @param siteDesignId The Guid of the site design to be used.
181
+ * You can use the below default OOTB GUIDs:
182
+ * Topic: 00000000-0000-0000-0000-000000000000
183
+ * Showcase: 6142d2a0-63a5-4ba0-aede-d9fefca2c767
184
+ * Blank: f6cc5403-0d63-442e-96c0-285923709ffc
185
+ * @param hubSiteId The id of the hub site to which the new site should be associated
186
+ * @param owner Optional owner value, required if executing the method in app only mode
187
+ */
188
+ _Site.prototype.createCommunicationSite = function (title, lcid, shareByEmailEnabled, url, description, classification, siteDesignId, hubSiteId, owner) {
189
+ if (lcid === void 0) { lcid = 1033; }
190
+ if (shareByEmailEnabled === void 0) { shareByEmailEnabled = false; }
191
+ return __awaiter(this, void 0, void 0, function () {
192
+ return __generator(this, function (_a) {
193
+ return [2 /*return*/, this.createCommunicationSiteFromProps({
194
+ Classification: classification,
195
+ Description: description,
196
+ HubSiteId: hubSiteId,
197
+ Lcid: lcid,
198
+ Owner: owner,
199
+ ShareByEmailEnabled: shareByEmailEnabled,
200
+ SiteDesignId: siteDesignId,
201
+ Title: title,
202
+ Url: url,
203
+ })];
204
+ });
205
+ });
206
+ };
207
+ _Site.prototype.createCommunicationSiteFromProps = function (props) {
208
+ return __awaiter(this, void 0, void 0, function () {
209
+ var p, postBody;
210
+ return __generator(this, function (_a) {
211
+ p = Object.assign({}, {
212
+ Classification: "",
213
+ Description: "",
214
+ HubSiteId: emptyGuid,
215
+ Lcid: 1033,
216
+ ShareByEmailEnabled: false,
217
+ SiteDesignId: emptyGuid,
218
+ WebTemplate: "SITEPAGEPUBLISHING#0",
219
+ WebTemplateExtensionId: emptyGuid,
220
+ }, props);
221
+ postBody = body({
222
+ "request": assign(metadata("Microsoft.SharePoint.Portal.SPSiteCreationRequest"), p),
223
+ });
224
+ return [2 /*return*/, spPost(Site(extractWebUrl(this.toUrl()), "/_api/SPSiteManager/Create"), postBody)];
225
+ });
226
+ });
227
+ };
228
+ /**
229
+ *
230
+ * @param url Site Url that you want to check if exists
231
+ */
232
+ _Site.prototype.exists = function (url) {
233
+ return __awaiter(this, void 0, void 0, function () {
234
+ var postBody, value;
235
+ return __generator(this, function (_a) {
236
+ switch (_a.label) {
237
+ case 0:
238
+ postBody = body({ url: url });
239
+ return [4 /*yield*/, spPost(Site(extractWebUrl(this.toUrl()), "/_api/SP.Site.Exists"), postBody)];
240
+ case 1:
241
+ value = _a.sent();
242
+ return [2 /*return*/, value];
243
+ }
244
+ });
245
+ });
246
+ };
247
+ /**
248
+ * Creates a Modern team site backed by Office 365 group. For use in SP Online only. This will not work with App-only tokens
249
+ *
250
+ * @param displayName The title or display name of the Modern team site to be created
251
+ * @param alias Alias of the underlying Office 365 Group
252
+ * @param isPublic Defines whether the Office 365 Group will be public (default), or private.
253
+ * @param lcid The language to use for the site. If not specified will default to English (1033).
254
+ * @param description The description of the site to be created.
255
+ * @param classification The Site classification to use. For instance 'Contoso Classified'. See https://www.youtube.com/watch?v=E-8Z2ggHcS0 for more information
256
+ * @param owners The Owners of the site to be created
257
+ */
258
+ _Site.prototype.createModernTeamSite = function (displayName, alias, isPublic, lcid, description, classification, owners, hubSiteId, siteDesignId) {
259
+ return __awaiter(this, void 0, void 0, function () {
260
+ return __generator(this, function (_a) {
261
+ return [2 /*return*/, this.createModernTeamSiteFromProps({
262
+ alias: alias,
263
+ classification: classification,
264
+ description: description,
265
+ displayName: displayName,
266
+ hubSiteId: hubSiteId,
267
+ isPublic: isPublic,
268
+ lcid: lcid,
269
+ owners: owners,
270
+ siteDesignId: siteDesignId,
271
+ })];
272
+ });
273
+ });
274
+ };
275
+ _Site.prototype.createModernTeamSiteFromProps = function (props) {
276
+ return __awaiter(this, void 0, void 0, function () {
277
+ var p, postBody;
278
+ return __generator(this, function (_a) {
279
+ p = Object.assign({}, {
280
+ classification: "",
281
+ description: "",
282
+ hubSiteId: emptyGuid,
283
+ isPublic: true,
284
+ lcid: 1033,
285
+ owners: [],
286
+ }, props);
287
+ postBody = {
288
+ alias: p.alias,
289
+ displayName: p.displayName,
290
+ isPublic: p.isPublic,
291
+ optionalParams: {
292
+ Classification: p.classification,
293
+ CreationOptions: {
294
+ "results": ["SPSiteLanguage:" + p.lcid, "HubSiteId:" + p.hubSiteId],
295
+ },
296
+ Description: p.description,
297
+ Owners: {
298
+ "results": p.owners,
299
+ },
300
+ },
301
+ };
302
+ if (p.siteDesignId) {
303
+ postBody.optionalParams.CreationOptions.results.push("implicit_formula_292aa8a00786498a87a5ca52d9f4214a_" + p.siteDesignId);
304
+ }
305
+ return [2 /*return*/, spPost(Site(extractWebUrl(this.toUrl()), "/_api/GroupSiteManager/CreateGroupEx"), body(postBody))];
306
+ });
307
+ });
308
+ };
309
+ __decorate([
310
+ tag("si.getChanges")
311
+ ], _Site.prototype, "getChanges", null);
312
+ __decorate([
313
+ tag("si.openWebById")
314
+ ], _Site.prototype, "openWebById", null);
315
+ _Site = __decorate([
316
+ defaultPath("_api/site")
317
+ ], _Site);
318
+ return _Site;
319
+ }(_SharePointQueryableInstance));
320
+ export { _Site };
321
+ export var Site = spInvokableFactory(_Site);
322
322
  //# sourceMappingURL=types.js.map