@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
@@ -1,266 +1,266 @@
1
- import { __extends } from "tslib";
2
- import { combine, isUrlAbsolute, assign, jsS } from "@pnp/common";
3
- import { Queryable, invokableFactory } from "@pnp/odata";
4
- import { Logger } from "@pnp/logging";
5
- import { metadata } from "./utils/metadata.js";
6
- import { spGet, spPost, spPostDelete, spPostDeleteETag } from "./operations.js";
7
- import { tag } from "./telemetry.js";
8
- export var spInvokableFactory = function (f) {
9
- return invokableFactory(f);
10
- };
11
- /**
12
- * SharePointQueryable Base Class
13
- *
14
- */
15
- var _SharePointQueryable = /** @class */ (function (_super) {
16
- __extends(_SharePointQueryable, _super);
17
- /**
18
- * Creates a new instance of the SharePointQueryable class
19
- *
20
- * @constructor
21
- * @param baseUrl A string or SharePointQueryable that should form the base part of the url
22
- *
23
- */
24
- function _SharePointQueryable(baseUrl, path) {
25
- var _this = this;
26
- var url = "";
27
- var parentUrl = "";
28
- var query = new Map();
29
- if (typeof baseUrl === "string") {
30
- // we need to do some extra parsing to get the parent url correct if we are
31
- // being created from just a string.
32
- if (isUrlAbsolute(baseUrl) || baseUrl.lastIndexOf("/") < 0) {
33
- parentUrl = baseUrl;
34
- url = combine(baseUrl, path);
35
- }
36
- else if (baseUrl.lastIndexOf("/") > baseUrl.lastIndexOf("(")) {
37
- // .../items(19)/fields
38
- var index = baseUrl.lastIndexOf("/");
39
- parentUrl = baseUrl.slice(0, index);
40
- path = combine(baseUrl.slice(index), path);
41
- url = combine(parentUrl, path);
42
- }
43
- else {
44
- // .../items(19)
45
- var index = baseUrl.lastIndexOf("(");
46
- parentUrl = baseUrl.slice(0, index);
47
- url = combine(baseUrl, path);
48
- }
49
- }
50
- else {
51
- parentUrl = baseUrl.toUrl();
52
- url = combine(parentUrl, path || "");
53
- var target = baseUrl.query.get("@target");
54
- if (target !== undefined) {
55
- query.set("@target", target);
56
- }
57
- }
58
- // init base with correct values for data seed
59
- _this = _super.call(this, {
60
- parentUrl: parentUrl,
61
- query: query,
62
- url: url,
63
- }) || this;
64
- // post init actions
65
- if (typeof baseUrl !== "string") {
66
- _this.configureFrom(baseUrl);
67
- }
68
- _this._forceCaching = false;
69
- return _this;
70
- }
71
- /**
72
- * Gets the full url with query information
73
- */
74
- _SharePointQueryable.prototype.toUrlAndQuery = function () {
75
- var aliasedParams = new Map(this.query);
76
- var url = this.toUrl().replace(/'!(@.*?)::(.*?)'/ig, function (match, labelName, value) {
77
- Logger.write("Rewriting aliased parameter from match " + match + " to label: " + labelName + " value: " + value, 0 /* Verbose */);
78
- aliasedParams.set(labelName, "'" + value + "'");
79
- return labelName;
80
- });
81
- if (aliasedParams.size > 0) {
82
- var char = url.indexOf("?") > -1 ? "&" : "?";
83
- url += "" + char + Array.from(aliasedParams).map(function (v) { return v[0] + "=" + v[1]; }).join("&");
84
- }
85
- return url;
86
- };
87
- /**
88
- * Choose which fields to return
89
- *
90
- * @param selects One or more fields to return
91
- */
92
- _SharePointQueryable.prototype.select = function () {
93
- var selects = [];
94
- for (var _i = 0; _i < arguments.length; _i++) {
95
- selects[_i] = arguments[_i];
96
- }
97
- if (selects.length > 0) {
98
- this.query.set("$select", selects.map(encodeURIComponent).join(","));
99
- }
100
- return this;
101
- };
102
- _SharePointQueryable.prototype.get = function (options) {
103
- return spGet(this, options);
104
- };
105
- /**
106
- * Expands fields such as lookups to get additional data
107
- *
108
- * @param expands The Fields for which to expand the values
109
- */
110
- _SharePointQueryable.prototype.expand = function () {
111
- var expands = [];
112
- for (var _i = 0; _i < arguments.length; _i++) {
113
- expands[_i] = arguments[_i];
114
- }
115
- if (expands.length > 0) {
116
- this.query.set("$expand", expands.map(encodeURIComponent).join(","));
117
- }
118
- return this;
119
- };
120
- /**
121
- * Clones this SharePointQueryable into a new SharePointQueryable instance of T
122
- * @param factory Constructor used to create the new instance
123
- * @param additionalPath Any additional path to include in the clone
124
- * @param includeBatch If true this instance's batch will be added to the cloned instance
125
- * @param includeQuery If true all of the query values will be copied to the cloned instance
126
- */
127
- _SharePointQueryable.prototype.clone = function (factory, additionalPath, includeBatch, includeQuery) {
128
- if (includeBatch === void 0) { includeBatch = true; }
129
- if (includeQuery === void 0) { includeQuery = false; }
130
- var clone = _super.prototype.cloneTo.call(this, factory(this, additionalPath), { includeBatch: includeBatch, includeQuery: includeQuery });
131
- // handle sp specific clone actions
132
- if (!includeQuery) {
133
- // we would have already copied this over if we got the entire query
134
- var t = "@target";
135
- if (this.query.has(t)) {
136
- clone.query.set(t, this.query.get(t));
137
- }
138
- }
139
- return clone;
140
- };
141
- /**
142
- * The default action for this object (unless overridden spGet)
143
- *
144
- * @param options optional request options
145
- */
146
- _SharePointQueryable.prototype.defaultAction = function (options) {
147
- return spGet(this, options);
148
- };
149
- /**
150
- * Gets a parent for this instance as specified
151
- *
152
- * @param factory The contructor for the class to create
153
- */
154
- _SharePointQueryable.prototype.getParent = function (factory, baseUrl, path, batch) {
155
- if (baseUrl === void 0) { baseUrl = this.parentUrl; }
156
- var parent = factory(baseUrl, path).configureFrom(this);
157
- var t = "@target";
158
- if (this.query.has(t)) {
159
- parent.query.set(t, this.query.get(t));
160
- }
161
- if (batch !== undefined) {
162
- parent = parent.inBatch(batch);
163
- }
164
- return parent;
165
- };
166
- return _SharePointQueryable;
167
- }(Queryable));
168
- export { _SharePointQueryable };
169
- export var SharePointQueryable = spInvokableFactory(_SharePointQueryable);
170
- /**
171
- * Represents a REST collection which can be filtered, paged, and selected
172
- *
173
- */
174
- var _SharePointQueryableCollection = /** @class */ (function (_super) {
175
- __extends(_SharePointQueryableCollection, _super);
176
- function _SharePointQueryableCollection() {
177
- return _super !== null && _super.apply(this, arguments) || this;
178
- }
179
- /**
180
- * Filters the returned collection (https://msdn.microsoft.com/en-us/library/office/fp142385.aspx#bk_supported)
181
- *
182
- * @param filter The string representing the filter query
183
- */
184
- _SharePointQueryableCollection.prototype.filter = function (filter) {
185
- this.query.set("$filter", encodeURIComponent(filter));
186
- return this;
187
- };
188
- /**
189
- * Orders based on the supplied fields
190
- *
191
- * @param orderby The name of the field on which to sort
192
- * @param ascending If false DESC is appended, otherwise ASC (default)
193
- */
194
- _SharePointQueryableCollection.prototype.orderBy = function (orderBy, ascending) {
195
- if (ascending === void 0) { ascending = true; }
196
- var o = "$orderby";
197
- var query = this.query.has(o) ? this.query.get(o).split(",") : [];
198
- query.push(encodeURIComponent(orderBy) + " " + (ascending ? "asc" : "desc"));
199
- this.query.set(o, query.join(","));
200
- return this;
201
- };
202
- /**
203
- * Skips the specified number of items
204
- *
205
- * @param skip The number of items to skip
206
- */
207
- _SharePointQueryableCollection.prototype.skip = function (skip) {
208
- this.query.set("$skip", skip.toString());
209
- return this;
210
- };
211
- /**
212
- * Limits the query to only return the specified number of items
213
- *
214
- * @param top The query row limit
215
- */
216
- _SharePointQueryableCollection.prototype.top = function (top) {
217
- this.query.set("$top", top.toString());
218
- return this;
219
- };
220
- return _SharePointQueryableCollection;
221
- }(_SharePointQueryable));
222
- export { _SharePointQueryableCollection };
223
- export var SharePointQueryableCollection = spInvokableFactory(_SharePointQueryableCollection);
224
- /**
225
- * Represents an instance that can be selected
226
- *
227
- */
228
- var _SharePointQueryableInstance = /** @class */ (function (_super) {
229
- __extends(_SharePointQueryableInstance, _super);
230
- function _SharePointQueryableInstance() {
231
- return _super !== null && _super.apply(this, arguments) || this;
232
- }
233
- /**
234
- * Curries the update function into the common pieces
235
- *
236
- * @param type
237
- * @param mapper
238
- */
239
- _SharePointQueryableInstance.prototype._update = function (type, mapper) {
240
- var _this = this;
241
- return function (props) { return spPost(tag.configure(_this, type + ".Update"), {
242
- body: jsS(assign(metadata(type), props)),
243
- headers: {
244
- "X-HTTP-Method": "MERGE",
245
- },
246
- }).then(function (d) { return mapper(d, props); }); };
247
- };
248
- return _SharePointQueryableInstance;
249
- }(_SharePointQueryable));
250
- export { _SharePointQueryableInstance };
251
- export var SharePointQueryableInstance = spInvokableFactory(_SharePointQueryableInstance);
252
- /**
253
- * Adds the a delete method to the tagged class taking no parameters and calling spPostDelete
254
- */
255
- export function deleteable(t) {
256
- return function () {
257
- return spPostDelete(tag.configure(this, t + ".delete"));
258
- };
259
- }
260
- export function deleteableWithETag(t) {
261
- return function (eTag) {
262
- if (eTag === void 0) { eTag = "*"; }
263
- return spPostDeleteETag(tag.configure(this, t + ".delete"), {}, eTag);
264
- };
265
- }
1
+ import { __extends } from "tslib";
2
+ import { combine, isUrlAbsolute, assign, jsS } from "@pnp/common";
3
+ import { Queryable, invokableFactory } from "@pnp/odata";
4
+ import { Logger } from "@pnp/logging";
5
+ import { metadata } from "./utils/metadata.js";
6
+ import { spGet, spPost, spPostDelete, spPostDeleteETag } from "./operations.js";
7
+ import { tag } from "./telemetry.js";
8
+ export var spInvokableFactory = function (f) {
9
+ return invokableFactory(f);
10
+ };
11
+ /**
12
+ * SharePointQueryable Base Class
13
+ *
14
+ */
15
+ var _SharePointQueryable = /** @class */ (function (_super) {
16
+ __extends(_SharePointQueryable, _super);
17
+ /**
18
+ * Creates a new instance of the SharePointQueryable class
19
+ *
20
+ * @constructor
21
+ * @param baseUrl A string or SharePointQueryable that should form the base part of the url
22
+ *
23
+ */
24
+ function _SharePointQueryable(baseUrl, path) {
25
+ var _this = this;
26
+ var url = "";
27
+ var parentUrl = "";
28
+ var query = new Map();
29
+ if (typeof baseUrl === "string") {
30
+ // we need to do some extra parsing to get the parent url correct if we are
31
+ // being created from just a string.
32
+ if (isUrlAbsolute(baseUrl) || baseUrl.lastIndexOf("/") < 0) {
33
+ parentUrl = baseUrl;
34
+ url = combine(baseUrl, path);
35
+ }
36
+ else if (baseUrl.lastIndexOf("/") > baseUrl.lastIndexOf("(")) {
37
+ // .../items(19)/fields
38
+ var index = baseUrl.lastIndexOf("/");
39
+ parentUrl = baseUrl.slice(0, index);
40
+ path = combine(baseUrl.slice(index), path);
41
+ url = combine(parentUrl, path);
42
+ }
43
+ else {
44
+ // .../items(19)
45
+ var index = baseUrl.lastIndexOf("(");
46
+ parentUrl = baseUrl.slice(0, index);
47
+ url = combine(baseUrl, path);
48
+ }
49
+ }
50
+ else {
51
+ parentUrl = baseUrl.toUrl();
52
+ url = combine(parentUrl, path || "");
53
+ var target = baseUrl.query.get("@target");
54
+ if (target !== undefined) {
55
+ query.set("@target", target);
56
+ }
57
+ }
58
+ // init base with correct values for data seed
59
+ _this = _super.call(this, {
60
+ parentUrl: parentUrl,
61
+ query: query,
62
+ url: url,
63
+ }) || this;
64
+ // post init actions
65
+ if (typeof baseUrl !== "string") {
66
+ _this.configureFrom(baseUrl);
67
+ }
68
+ _this._forceCaching = false;
69
+ return _this;
70
+ }
71
+ /**
72
+ * Gets the full url with query information
73
+ */
74
+ _SharePointQueryable.prototype.toUrlAndQuery = function () {
75
+ var aliasedParams = new Map(this.query);
76
+ var url = this.toUrl().replace(/'!(@.*?)::(.*?)'/ig, function (match, labelName, value) {
77
+ Logger.write("Rewriting aliased parameter from match " + match + " to label: " + labelName + " value: " + value, 0 /* Verbose */);
78
+ aliasedParams.set(labelName, "'" + value + "'");
79
+ return labelName;
80
+ });
81
+ if (aliasedParams.size > 0) {
82
+ var char = url.indexOf("?") > -1 ? "&" : "?";
83
+ url += "" + char + Array.from(aliasedParams).map(function (v) { return v[0] + "=" + v[1]; }).join("&");
84
+ }
85
+ return url;
86
+ };
87
+ /**
88
+ * Choose which fields to return
89
+ *
90
+ * @param selects One or more fields to return
91
+ */
92
+ _SharePointQueryable.prototype.select = function () {
93
+ var selects = [];
94
+ for (var _i = 0; _i < arguments.length; _i++) {
95
+ selects[_i] = arguments[_i];
96
+ }
97
+ if (selects.length > 0) {
98
+ this.query.set("$select", selects.map(encodeURIComponent).join(","));
99
+ }
100
+ return this;
101
+ };
102
+ _SharePointQueryable.prototype.get = function (options) {
103
+ return spGet(this, options);
104
+ };
105
+ /**
106
+ * Expands fields such as lookups to get additional data
107
+ *
108
+ * @param expands The Fields for which to expand the values
109
+ */
110
+ _SharePointQueryable.prototype.expand = function () {
111
+ var expands = [];
112
+ for (var _i = 0; _i < arguments.length; _i++) {
113
+ expands[_i] = arguments[_i];
114
+ }
115
+ if (expands.length > 0) {
116
+ this.query.set("$expand", expands.map(encodeURIComponent).join(","));
117
+ }
118
+ return this;
119
+ };
120
+ /**
121
+ * Clones this SharePointQueryable into a new SharePointQueryable instance of T
122
+ * @param factory Constructor used to create the new instance
123
+ * @param additionalPath Any additional path to include in the clone
124
+ * @param includeBatch If true this instance's batch will be added to the cloned instance
125
+ * @param includeQuery If true all of the query values will be copied to the cloned instance
126
+ */
127
+ _SharePointQueryable.prototype.clone = function (factory, additionalPath, includeBatch, includeQuery) {
128
+ if (includeBatch === void 0) { includeBatch = true; }
129
+ if (includeQuery === void 0) { includeQuery = false; }
130
+ var clone = _super.prototype.cloneTo.call(this, factory(this, additionalPath), { includeBatch: includeBatch, includeQuery: includeQuery });
131
+ // handle sp specific clone actions
132
+ if (!includeQuery) {
133
+ // we would have already copied this over if we got the entire query
134
+ var t = "@target";
135
+ if (this.query.has(t)) {
136
+ clone.query.set(t, this.query.get(t));
137
+ }
138
+ }
139
+ return clone;
140
+ };
141
+ /**
142
+ * The default action for this object (unless overridden spGet)
143
+ *
144
+ * @param options optional request options
145
+ */
146
+ _SharePointQueryable.prototype.defaultAction = function (options) {
147
+ return spGet(this, options);
148
+ };
149
+ /**
150
+ * Gets a parent for this instance as specified
151
+ *
152
+ * @param factory The contructor for the class to create
153
+ */
154
+ _SharePointQueryable.prototype.getParent = function (factory, baseUrl, path, batch) {
155
+ if (baseUrl === void 0) { baseUrl = this.parentUrl; }
156
+ var parent = factory(baseUrl, path).configureFrom(this);
157
+ var t = "@target";
158
+ if (this.query.has(t)) {
159
+ parent.query.set(t, this.query.get(t));
160
+ }
161
+ if (batch !== undefined) {
162
+ parent = parent.inBatch(batch);
163
+ }
164
+ return parent;
165
+ };
166
+ return _SharePointQueryable;
167
+ }(Queryable));
168
+ export { _SharePointQueryable };
169
+ export var SharePointQueryable = spInvokableFactory(_SharePointQueryable);
170
+ /**
171
+ * Represents a REST collection which can be filtered, paged, and selected
172
+ *
173
+ */
174
+ var _SharePointQueryableCollection = /** @class */ (function (_super) {
175
+ __extends(_SharePointQueryableCollection, _super);
176
+ function _SharePointQueryableCollection() {
177
+ return _super !== null && _super.apply(this, arguments) || this;
178
+ }
179
+ /**
180
+ * Filters the returned collection (https://msdn.microsoft.com/en-us/library/office/fp142385.aspx#bk_supported)
181
+ *
182
+ * @param filter The string representing the filter query
183
+ */
184
+ _SharePointQueryableCollection.prototype.filter = function (filter) {
185
+ this.query.set("$filter", encodeURIComponent(filter));
186
+ return this;
187
+ };
188
+ /**
189
+ * Orders based on the supplied fields
190
+ *
191
+ * @param orderby The name of the field on which to sort
192
+ * @param ascending If false DESC is appended, otherwise ASC (default)
193
+ */
194
+ _SharePointQueryableCollection.prototype.orderBy = function (orderBy, ascending) {
195
+ if (ascending === void 0) { ascending = true; }
196
+ var o = "$orderby";
197
+ var query = this.query.has(o) ? this.query.get(o).split(",") : [];
198
+ query.push(encodeURIComponent(orderBy) + " " + (ascending ? "asc" : "desc"));
199
+ this.query.set(o, query.join(","));
200
+ return this;
201
+ };
202
+ /**
203
+ * Skips the specified number of items
204
+ *
205
+ * @param skip The number of items to skip
206
+ */
207
+ _SharePointQueryableCollection.prototype.skip = function (skip) {
208
+ this.query.set("$skip", skip.toString());
209
+ return this;
210
+ };
211
+ /**
212
+ * Limits the query to only return the specified number of items
213
+ *
214
+ * @param top The query row limit
215
+ */
216
+ _SharePointQueryableCollection.prototype.top = function (top) {
217
+ this.query.set("$top", top.toString());
218
+ return this;
219
+ };
220
+ return _SharePointQueryableCollection;
221
+ }(_SharePointQueryable));
222
+ export { _SharePointQueryableCollection };
223
+ export var SharePointQueryableCollection = spInvokableFactory(_SharePointQueryableCollection);
224
+ /**
225
+ * Represents an instance that can be selected
226
+ *
227
+ */
228
+ var _SharePointQueryableInstance = /** @class */ (function (_super) {
229
+ __extends(_SharePointQueryableInstance, _super);
230
+ function _SharePointQueryableInstance() {
231
+ return _super !== null && _super.apply(this, arguments) || this;
232
+ }
233
+ /**
234
+ * Curries the update function into the common pieces
235
+ *
236
+ * @param type
237
+ * @param mapper
238
+ */
239
+ _SharePointQueryableInstance.prototype._update = function (type, mapper) {
240
+ var _this = this;
241
+ return function (props) { return spPost(tag.configure(_this, type + ".Update"), {
242
+ body: jsS(assign(metadata(type), props)),
243
+ headers: {
244
+ "X-HTTP-Method": "MERGE",
245
+ },
246
+ }).then(function (d) { return mapper(d, props); }); };
247
+ };
248
+ return _SharePointQueryableInstance;
249
+ }(_SharePointQueryable));
250
+ export { _SharePointQueryableInstance };
251
+ export var SharePointQueryableInstance = spInvokableFactory(_SharePointQueryableInstance);
252
+ /**
253
+ * Adds the a delete method to the tagged class taking no parameters and calling spPostDelete
254
+ */
255
+ export function deleteable(t) {
256
+ return function () {
257
+ return spPostDelete(tag.configure(this, t + ".delete"));
258
+ };
259
+ }
260
+ export function deleteableWithETag(t) {
261
+ return function (eTag) {
262
+ if (eTag === void 0) { eTag = "*"; }
263
+ return spPostDeleteETag(tag.configure(this, t + ".delete"), {}, eTag);
264
+ };
265
+ }
266
266
  //# sourceMappingURL=sharepointqueryable.js.map
package/sharing/file.d.ts CHANGED
@@ -1,19 +1,19 @@
1
- import { ISharingEmailData, ISharingResult, SharingRole, ISharedFuncs } from "./types.js";
2
- declare module "../files/types" {
3
- interface _File extends ISharedFuncs {
4
- shareWith(loginNames: string | string[], role?: SharingRole, requireSignin?: boolean, emailData?: ISharingEmailData): Promise<ISharingResult>;
5
- }
6
- interface IFile extends ISharedFuncs {
7
- /**
8
- * Shares this item with one or more users
9
- *
10
- * @param loginNames string or string[] of resolved login names to which this item will be shared
11
- * @param role The role (View | Edit) applied to the share
12
- * @param shareEverything Share everything in this folder, even items with unique permissions.
13
- * @param requireSignin If true the user must signin to view link, otherwise anyone with the link can access the resource
14
- * @param emailData Optional, if inlucded an email will be sent. Note subject currently has no effect.
15
- */
16
- shareWith(loginNames: string | string[], role?: SharingRole, requireSignin?: boolean, emailData?: ISharingEmailData): Promise<ISharingResult>;
17
- }
18
- }
1
+ import { ISharingEmailData, ISharingResult, SharingRole, ISharedFuncs } from "./types.js";
2
+ declare module "../files/types" {
3
+ interface _File extends ISharedFuncs {
4
+ shareWith(loginNames: string | string[], role?: SharingRole, requireSignin?: boolean, emailData?: ISharingEmailData): Promise<ISharingResult>;
5
+ }
6
+ interface IFile extends ISharedFuncs {
7
+ /**
8
+ * Shares this item with one or more users
9
+ *
10
+ * @param loginNames string or string[] of resolved login names to which this item will be shared
11
+ * @param role The role (View | Edit) applied to the share
12
+ * @param shareEverything Share everything in this folder, even items with unique permissions.
13
+ * @param requireSignin If true the user must signin to view link, otherwise anyone with the link can access the resource
14
+ * @param emailData Optional, if inlucded an email will be sent. Note subject currently has no effect.
15
+ */
16
+ shareWith(loginNames: string | string[], role?: SharingRole, requireSignin?: boolean, emailData?: ISharingEmailData): Promise<ISharingResult>;
17
+ }
18
+ }
19
19
  //# sourceMappingURL=file.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../../../packages/sp/sharing/file.ts"],"names":[],"mappings":"AACA,OAAO,EACH,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,YAAY,EACf,MAAM,YAAY,CAAC;AAYpB,OAAO,QAAQ,gBAAgB,CAAC;IAC5B,UAAU,KAAM,SAAQ,YAAY;QAChC,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;KACjJ;IACD,UAAU,KAAM,SAAQ,YAAY;QAChC;;;;;;;;WAQG;QACH,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;KACjJ;CACJ"}
1
+ {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../../../packages/sp/sharing/file.ts"],"names":[],"mappings":"AACA,OAAO,EACH,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,YAAY,EAQf,MAAM,YAAY,CAAC;AAGpB,OAAO,QAAQ,gBAAgB,CAAC;IAC5B,UAAU,KAAM,SAAQ,YAAY;QAChC,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;KACjJ;IACD,UAAU,KAAM,SAAQ,YAAY;QAChC;;;;;;;;WAQG;QACH,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;KACjJ;CACJ"}