@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/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