@lindle/sharepoint_requests 0.1.10 → 0.1.11
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.
- package/dist/root/index.d.ts +156 -0
- package/dist/sharepoint_requests.cjs.development.js +225 -30
- package/dist/sharepoint_requests.cjs.development.js.map +1 -1
- package/dist/sharepoint_requests.cjs.production.min.js +1 -1
- package/dist/sharepoint_requests.cjs.production.min.js.map +1 -1
- package/dist/sharepoint_requests.esm.js +225 -30
- package/dist/sharepoint_requests.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/root/index.ts +156 -0
- package/src/root/instance.ts +1 -1
|
@@ -150,7 +150,7 @@ var instance = function instance(baseURL, config) {
|
|
|
150
150
|
Accept: 'application/json; odata=verbose',
|
|
151
151
|
'Content-Type': 'application/json; odata=verbose'
|
|
152
152
|
},
|
|
153
|
-
timeout:
|
|
153
|
+
timeout: 15000,
|
|
154
154
|
withCredentials: true
|
|
155
155
|
};
|
|
156
156
|
}
|
|
@@ -160,15 +160,30 @@ var instance = function instance(baseURL, config) {
|
|
|
160
160
|
};
|
|
161
161
|
|
|
162
162
|
var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
163
|
+
/**
|
|
164
|
+
* Creates an HTTP SharePoint requester bound to the provided base URL.
|
|
165
|
+
*
|
|
166
|
+
* @param baseURL The root SharePoint site URL (with or without trailing slash).
|
|
167
|
+
*/
|
|
163
168
|
function HTTPSharePointRequests(baseURL) {
|
|
164
169
|
var _this = this;
|
|
165
170
|
this.lists = {
|
|
171
|
+
/**
|
|
172
|
+
* Fetches all SharePoint lists available to the current site.
|
|
173
|
+
*
|
|
174
|
+
* @returns Promise resolving to the list collection response payload.
|
|
175
|
+
*/
|
|
166
176
|
get: function get() {
|
|
167
177
|
_this.endpoint = '_api/web/lists';
|
|
168
178
|
return _this.get_v2();
|
|
169
179
|
}
|
|
170
180
|
};
|
|
171
181
|
this.folders = {
|
|
182
|
+
/**
|
|
183
|
+
* Retrieves SharePoint folders from the default folders endpoint.
|
|
184
|
+
*
|
|
185
|
+
* @returns A promise resolving with folder metadata.
|
|
186
|
+
*/
|
|
172
187
|
get: function get() {
|
|
173
188
|
_this.endpoint = '_api/web/folders';
|
|
174
189
|
_this.get_v2();
|
|
@@ -204,6 +219,11 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
204
219
|
}
|
|
205
220
|
};
|
|
206
221
|
this.user = {
|
|
222
|
+
/**
|
|
223
|
+
* Provides accessors for the current user's profile information.
|
|
224
|
+
*
|
|
225
|
+
* @returns Helper exposing a `get` function to retrieve profile details.
|
|
226
|
+
*/
|
|
207
227
|
properties: function properties() {
|
|
208
228
|
return {
|
|
209
229
|
get: function get() {
|
|
@@ -211,12 +231,30 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
211
231
|
}
|
|
212
232
|
};
|
|
213
233
|
},
|
|
234
|
+
/**
|
|
235
|
+
* Searches across site users and their groups.
|
|
236
|
+
*
|
|
237
|
+
* @param searchValue Query string to match site users.
|
|
238
|
+
* @returns Promise resolving to matching site users.
|
|
239
|
+
*/
|
|
214
240
|
searchSiteUser: function searchSiteUser(searchValue) {
|
|
215
241
|
return _this.getSiteUser(searchValue);
|
|
216
242
|
},
|
|
243
|
+
/**
|
|
244
|
+
* Performs a people-picker search scoped to the current site collection.
|
|
245
|
+
*
|
|
246
|
+
* @param input Search prefix.
|
|
247
|
+
* @param filter Optional additional filter condition.
|
|
248
|
+
* @returns Promise with type-ahead person results.
|
|
249
|
+
*/
|
|
217
250
|
searchUser: function searchUser(input, filter) {
|
|
218
251
|
return _this.typeAhead(input, filter);
|
|
219
252
|
},
|
|
253
|
+
/**
|
|
254
|
+
* Fetches the currently authenticated SharePoint user.
|
|
255
|
+
*
|
|
256
|
+
* @returns Helper exposing `get` that resolves to the current user payload.
|
|
257
|
+
*/
|
|
220
258
|
current: function current() {
|
|
221
259
|
_this.endpoint = '_api/web/currentUser';
|
|
222
260
|
return {
|
|
@@ -225,6 +263,11 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
225
263
|
}
|
|
226
264
|
};
|
|
227
265
|
},
|
|
266
|
+
/**
|
|
267
|
+
* Retrieves calculated permission level for the current user.
|
|
268
|
+
*
|
|
269
|
+
* @returns Helper exposing `get` resolving to the user's permission definition.
|
|
270
|
+
*/
|
|
228
271
|
currentPermission: function currentPermission() {
|
|
229
272
|
return {
|
|
230
273
|
get: function get() {
|
|
@@ -238,6 +281,12 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
238
281
|
this.listName = '';
|
|
239
282
|
this.instance = instance(this.baseURL);
|
|
240
283
|
}
|
|
284
|
+
/**
|
|
285
|
+
* Converts array values in a payload to the `Collection(Edm.String)` structure
|
|
286
|
+
* expected by SharePoint REST endpoints.
|
|
287
|
+
*
|
|
288
|
+
* @param data The list item payload to harmonise in-place.
|
|
289
|
+
*/
|
|
241
290
|
var _proto = HTTPSharePointRequests.prototype;
|
|
242
291
|
_proto.transformArraysToEdmStrings = function transformArraysToEdmStrings(data) {
|
|
243
292
|
for (var key in data) {
|
|
@@ -258,7 +307,14 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
258
307
|
this.listName = listName;
|
|
259
308
|
this.endpoint = "_vti_bin/ListData.svc/" + listName;
|
|
260
309
|
return this;
|
|
261
|
-
}
|
|
310
|
+
}
|
|
311
|
+
/**
|
|
312
|
+
* Selects a SharePoint list and exposes list-scoped CRUD helpers.
|
|
313
|
+
*
|
|
314
|
+
* @param listName Logical list key configured in the generic type map.
|
|
315
|
+
* @param sharepoint_ver SharePoint version used to choose the correct REST endpoint.
|
|
316
|
+
* @returns Chainable helpers bound to the selected list.
|
|
317
|
+
*/;
|
|
262
318
|
_proto.from = function from(listName, sharepoint_ver) {
|
|
263
319
|
var _this2 = this;
|
|
264
320
|
if (sharepoint_ver === void 0) {
|
|
@@ -292,7 +348,13 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
292
348
|
};
|
|
293
349
|
}
|
|
294
350
|
};
|
|
295
|
-
}
|
|
351
|
+
}
|
|
352
|
+
/**
|
|
353
|
+
* Targets a SharePoint folder path and exposes file retrieval helpers.
|
|
354
|
+
*
|
|
355
|
+
* @param folderName Optional folder path relative to `Shared Documents`.
|
|
356
|
+
* @returns Helper exposing `get` to fetch files or sub-folders.
|
|
357
|
+
*/;
|
|
296
358
|
_proto.folder = function folder(folderName) {
|
|
297
359
|
var _this3 = this;
|
|
298
360
|
var filePath = ['Shared Documents'];
|
|
@@ -301,6 +363,12 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
301
363
|
}
|
|
302
364
|
this.endpoint = "_api/web/GetFolderByServerRelativeUrl('" + filePath.join('/') + "')";
|
|
303
365
|
return {
|
|
366
|
+
/**
|
|
367
|
+
* Fetches files or folders from the targeted path.
|
|
368
|
+
*
|
|
369
|
+
* @param options Optional REST query options to refine the result set.
|
|
370
|
+
* @returns Promise resolving to folder contents and metadata.
|
|
371
|
+
*/
|
|
304
372
|
get: function get(options) {
|
|
305
373
|
if (!(options != null && options.type)) {
|
|
306
374
|
_this3.endpoint += '/Files';
|
|
@@ -310,11 +378,22 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
310
378
|
return _this3.get_files(options);
|
|
311
379
|
}
|
|
312
380
|
};
|
|
313
|
-
}
|
|
381
|
+
}
|
|
382
|
+
/**
|
|
383
|
+
* Retrieves user list items and exposes a get helper with optional query parameters.
|
|
384
|
+
*
|
|
385
|
+
* @param options Optional REST query options.
|
|
386
|
+
* @returns Helper exposing `get` returning SharePoint user rows.
|
|
387
|
+
*/;
|
|
314
388
|
_proto.users = function users(options) {
|
|
315
389
|
var _this4 = this;
|
|
316
390
|
this.endpoint = '_api/web/SiteUserInfoList/items';
|
|
317
391
|
return {
|
|
392
|
+
/**
|
|
393
|
+
* Executes the user list request using the specified options.
|
|
394
|
+
*
|
|
395
|
+
* @returns Promise resolving to the SharePoint user list response.
|
|
396
|
+
*/
|
|
318
397
|
get: function get() {
|
|
319
398
|
return _this4.get_v2(options);
|
|
320
399
|
}
|
|
@@ -360,8 +439,17 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
360
439
|
return _getDigest.apply(this, arguments);
|
|
361
440
|
}
|
|
362
441
|
return getDigest;
|
|
363
|
-
}()
|
|
364
|
-
|
|
442
|
+
}()
|
|
443
|
+
/**
|
|
444
|
+
* Executes a GET request without additional metadata wrapping.
|
|
445
|
+
*
|
|
446
|
+
* @param options Optional REST query options.
|
|
447
|
+
* @returns SharePoint response payload or undefined when empty.
|
|
448
|
+
*/
|
|
449
|
+
;
|
|
450
|
+
_proto.get_only =
|
|
451
|
+
/*#__PURE__*/
|
|
452
|
+
function () {
|
|
365
453
|
var _get_only = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(options) {
|
|
366
454
|
var _ref, expand, orderBy, limit, filter, cols, skip, params, _yield$this$instance$, data;
|
|
367
455
|
return _regenerator().w(function (_context2) {
|
|
@@ -397,8 +485,17 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
397
485
|
return _get_only.apply(this, arguments);
|
|
398
486
|
}
|
|
399
487
|
return get_only;
|
|
400
|
-
}()
|
|
401
|
-
|
|
488
|
+
}()
|
|
489
|
+
/**
|
|
490
|
+
* Retrieves folder contents with optional filtering and returns the payload with metadata.
|
|
491
|
+
*
|
|
492
|
+
* @param options REST options describing expand/filter/order conditions.
|
|
493
|
+
* @returns Folder data and the fully resolved request URL.
|
|
494
|
+
*/
|
|
495
|
+
;
|
|
496
|
+
_proto.get_files =
|
|
497
|
+
/*#__PURE__*/
|
|
498
|
+
function () {
|
|
402
499
|
var _get_files = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(options) {
|
|
403
500
|
var _ref2, expand, orderBy, limit, filter, cols, skip, params, url, response, data, meta;
|
|
404
501
|
return _regenerator().w(function (_context3) {
|
|
@@ -444,8 +541,17 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
444
541
|
return _get_files.apply(this, arguments);
|
|
445
542
|
}
|
|
446
543
|
return get_files;
|
|
447
|
-
}()
|
|
448
|
-
|
|
544
|
+
}()
|
|
545
|
+
/**
|
|
546
|
+
* Performs a typed list read against the current endpoint.
|
|
547
|
+
*
|
|
548
|
+
* @param options Optional REST query options governing expand, filter, ordering and pagination.
|
|
549
|
+
* @returns SharePoint list items alongside the fully-resolved request URL.
|
|
550
|
+
*/
|
|
551
|
+
;
|
|
552
|
+
_proto.get_v2 =
|
|
553
|
+
/*#__PURE__*/
|
|
554
|
+
function () {
|
|
449
555
|
var _get_v = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(options) {
|
|
450
556
|
var _ref4, expand, orderBy, limit, filter, cols, skip, params, url, response, data, meta;
|
|
451
557
|
return _regenerator().w(function (_context4) {
|
|
@@ -491,8 +597,19 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
491
597
|
return _get_v.apply(this, arguments);
|
|
492
598
|
}
|
|
493
599
|
return get_v2;
|
|
494
|
-
}()
|
|
495
|
-
|
|
600
|
+
}()
|
|
601
|
+
/**
|
|
602
|
+
* Updates an item in the currently selected list.
|
|
603
|
+
*
|
|
604
|
+
* @param id Target list item identifier.
|
|
605
|
+
* @param data Payload with fields to update.
|
|
606
|
+
* @param digest Optional pre-fetched form digest to reuse.
|
|
607
|
+
* @returns Axios response of the update request.
|
|
608
|
+
*/
|
|
609
|
+
;
|
|
610
|
+
_proto.update_2 =
|
|
611
|
+
/*#__PURE__*/
|
|
612
|
+
function () {
|
|
496
613
|
var _update_ = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(id, data, digest) {
|
|
497
614
|
var formDigestValue, url, response, _t2;
|
|
498
615
|
return _regenerator().w(function (_context5) {
|
|
@@ -534,8 +651,17 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
534
651
|
return _update_.apply(this, arguments);
|
|
535
652
|
}
|
|
536
653
|
return update_2;
|
|
537
|
-
}()
|
|
538
|
-
|
|
654
|
+
}()
|
|
655
|
+
/**
|
|
656
|
+
* Creates a new item within the active list.
|
|
657
|
+
*
|
|
658
|
+
* @param listData SharePoint list item payload.
|
|
659
|
+
* @returns Axios response resolved from the create request.
|
|
660
|
+
*/
|
|
661
|
+
;
|
|
662
|
+
_proto.create_v2 =
|
|
663
|
+
/*#__PURE__*/
|
|
664
|
+
function () {
|
|
539
665
|
var _create_v = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(listData) {
|
|
540
666
|
var response, _t3, _t4, _t5, _t6, _t7;
|
|
541
667
|
return _regenerator().w(function (_context6) {
|
|
@@ -573,8 +699,17 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
573
699
|
return _create_v.apply(this, arguments);
|
|
574
700
|
}
|
|
575
701
|
return create_v2;
|
|
576
|
-
}()
|
|
577
|
-
|
|
702
|
+
}()
|
|
703
|
+
/**
|
|
704
|
+
* Uploads an attachment file to an existing list item.
|
|
705
|
+
*
|
|
706
|
+
* @param props File payload and target item identifier.
|
|
707
|
+
* @returns Axios response describing the upload result.
|
|
708
|
+
*/
|
|
709
|
+
;
|
|
710
|
+
_proto.createFile =
|
|
711
|
+
/*#__PURE__*/
|
|
712
|
+
function () {
|
|
578
713
|
var _createFile = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(_ref6) {
|
|
579
714
|
var file, itemId, requestUrl, res, _t8, _t9, _t0, _t1, _t10;
|
|
580
715
|
return _regenerator().w(function (_context7) {
|
|
@@ -607,8 +742,17 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
607
742
|
return _createFile.apply(this, arguments);
|
|
608
743
|
}
|
|
609
744
|
return createFile;
|
|
610
|
-
}()
|
|
611
|
-
|
|
745
|
+
}()
|
|
746
|
+
/**
|
|
747
|
+
* Deletes an item using the current endpoint.
|
|
748
|
+
*
|
|
749
|
+
* @param ID Identifier of the entity to remove.
|
|
750
|
+
* @returns Axios response from the delete call.
|
|
751
|
+
*/
|
|
752
|
+
;
|
|
753
|
+
_proto["delete"] =
|
|
754
|
+
/*#__PURE__*/
|
|
755
|
+
function () {
|
|
612
756
|
var _delete2 = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8(ID) {
|
|
613
757
|
var response;
|
|
614
758
|
return _regenerator().w(function (_context8) {
|
|
@@ -676,8 +820,18 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
676
820
|
return _sendEmail.apply(this, arguments);
|
|
677
821
|
}
|
|
678
822
|
return sendEmail;
|
|
679
|
-
}()
|
|
680
|
-
|
|
823
|
+
}()
|
|
824
|
+
/**
|
|
825
|
+
* Queries SharePoint's people picker endpoint for matching users.
|
|
826
|
+
*
|
|
827
|
+
* @param input Free-text search term.
|
|
828
|
+
* @param filter Optional additional filter condition.
|
|
829
|
+
* @returns Promise with type-ahead results payload.
|
|
830
|
+
*/
|
|
831
|
+
;
|
|
832
|
+
_proto.typeAhead =
|
|
833
|
+
/*#__PURE__*/
|
|
834
|
+
function () {
|
|
681
835
|
var _typeAhead = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0(input, filter) {
|
|
682
836
|
var filterValue, response;
|
|
683
837
|
return _regenerator().w(function (_context0) {
|
|
@@ -696,8 +850,16 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
696
850
|
return _typeAhead.apply(this, arguments);
|
|
697
851
|
}
|
|
698
852
|
return typeAhead;
|
|
699
|
-
}()
|
|
700
|
-
|
|
853
|
+
}()
|
|
854
|
+
/**
|
|
855
|
+
* Retrieves the current user profile and flattens selected properties.
|
|
856
|
+
*
|
|
857
|
+
* @returns Promise containing the current user's profile information.
|
|
858
|
+
*/
|
|
859
|
+
;
|
|
860
|
+
_proto.currentUserProperties =
|
|
861
|
+
/*#__PURE__*/
|
|
862
|
+
function () {
|
|
701
863
|
var _currentUserProperties = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1() {
|
|
702
864
|
var requestUrl, profile;
|
|
703
865
|
return _regenerator().w(function (_context1) {
|
|
@@ -731,8 +893,17 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
731
893
|
return _currentUserProperties.apply(this, arguments);
|
|
732
894
|
}
|
|
733
895
|
return currentUserProperties;
|
|
734
|
-
}()
|
|
735
|
-
|
|
896
|
+
}()
|
|
897
|
+
/**
|
|
898
|
+
* Searches site users based on a substring match across common fields.
|
|
899
|
+
*
|
|
900
|
+
* @param searchValue Term to match against the SharePoint user directory.
|
|
901
|
+
* @returns Promise with matching site users and their groups.
|
|
902
|
+
*/
|
|
903
|
+
;
|
|
904
|
+
_proto.getSiteUser =
|
|
905
|
+
/*#__PURE__*/
|
|
906
|
+
function () {
|
|
736
907
|
var _getSiteUser = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee10(searchValue) {
|
|
737
908
|
var requestUrl, response;
|
|
738
909
|
return _regenerator().w(function (_context10) {
|
|
@@ -751,8 +922,16 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
751
922
|
return _getSiteUser.apply(this, arguments);
|
|
752
923
|
}
|
|
753
924
|
return getSiteUser;
|
|
754
|
-
}()
|
|
755
|
-
|
|
925
|
+
}()
|
|
926
|
+
/**
|
|
927
|
+
* Retrieves all available role definitions for the current site.
|
|
928
|
+
*
|
|
929
|
+
* @returns Promise resolving to an array of role definitions.
|
|
930
|
+
*/
|
|
931
|
+
;
|
|
932
|
+
_proto.roleDefinitions =
|
|
933
|
+
/*#__PURE__*/
|
|
934
|
+
function () {
|
|
756
935
|
var _roleDefinitions = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee11() {
|
|
757
936
|
var requestUrl, response;
|
|
758
937
|
return _regenerator().w(function (_context11) {
|
|
@@ -771,8 +950,16 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
771
950
|
return _roleDefinitions.apply(this, arguments);
|
|
772
951
|
}
|
|
773
952
|
return roleDefinitions;
|
|
774
|
-
}()
|
|
775
|
-
|
|
953
|
+
}()
|
|
954
|
+
/**
|
|
955
|
+
* Fetches the bit-encoded permissions of the current user.
|
|
956
|
+
*
|
|
957
|
+
* @returns Promise resolving to the `EffectiveBasePermissions` object.
|
|
958
|
+
*/
|
|
959
|
+
;
|
|
960
|
+
_proto.getEffectiveBasePermissions =
|
|
961
|
+
/*#__PURE__*/
|
|
962
|
+
function () {
|
|
776
963
|
var _getEffectiveBasePermissions = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee12() {
|
|
777
964
|
var requestUrl, response;
|
|
778
965
|
return _regenerator().w(function (_context12) {
|
|
@@ -791,8 +978,16 @@ var HTTPSharePointRequests = /*#__PURE__*/function () {
|
|
|
791
978
|
return _getEffectiveBasePermissions.apply(this, arguments);
|
|
792
979
|
}
|
|
793
980
|
return getEffectiveBasePermissions;
|
|
794
|
-
}()
|
|
795
|
-
|
|
981
|
+
}()
|
|
982
|
+
/**
|
|
983
|
+
* Matches the current user's effective permissions against known role definitions.
|
|
984
|
+
*
|
|
985
|
+
* @returns The matching SharePoint role definition as a structured permission object.
|
|
986
|
+
*/
|
|
987
|
+
;
|
|
988
|
+
_proto.currentUserPermissions =
|
|
989
|
+
/*#__PURE__*/
|
|
990
|
+
function () {
|
|
796
991
|
var _currentUserPermissions = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee13() {
|
|
797
992
|
var _yield$this$getEffect, High, roleDefinitions, result;
|
|
798
993
|
return _regenerator().w(function (_context13) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharepoint_requests.esm.js","sources":["../src/root/instance.ts","../src/root/index.ts","../src/index.ts"],"sourcesContent":["import axios, { CreateAxiosDefaults } from 'axios';\n\nexport const instance = (\n baseURL: string,\n config: CreateAxiosDefaults = {\n headers: {\n Accept: 'application/json; odata=verbose',\n 'Content-Type': 'application/json; odata=verbose',\n },\n timeout: 1000,\n withCredentials: true,\n }\n) => {\n return axios.create({\n baseURL: baseURL,\n ...config,\n });\n};\n\nexport default instance;\n","import { AxiosInstance, AxiosResponse } from 'axios';\r\nimport instance from './instance';\r\nimport {\r\n CreateFileProps,\r\n CurrentUser,\r\n EmailProps,\r\n Field_Options,\r\n Folder_Options,\r\n IListName,\r\n ItemID,\r\n ListData,\r\n Options,\r\n PersonField,\r\n SHAREPOINT_VER,\r\n SPItem,\r\n UserPermision,\r\n UserProfile,\r\n} from '../types';\r\n\r\nclass HTTPSharePointRequests<\r\n T extends { LISTS: Record<string, any>; FOLDERS?: Record<string, any> }\r\n> {\r\n private baseURL: string;\r\n private endpoint: string;\r\n private listName: string;\r\n private instance: AxiosInstance;\r\n\r\n constructor(baseURL: string) {\r\n this.baseURL = baseURL.endsWith('/') ? baseURL : `${baseURL}/`;\r\n this.endpoint = '/api';\r\n this.listName = '';\r\n\r\n this.instance = instance(this.baseURL);\r\n }\r\n\r\n private transformArraysToEdmStrings(data: ListData) {\r\n for (const key in data) {\r\n if (Array.isArray(data[key])) {\r\n data[key] = {\r\n __metadata: { type: 'Collection(Edm.String)' },\r\n results: data[key],\r\n };\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * @deprecated Use `from` instead.\r\n */\r\n list(listName: IListName<T>) {\r\n this.listName = listName;\r\n this.endpoint = `_vti_bin/ListData.svc/${listName}`;\r\n return this;\r\n }\r\n public readonly lists = {\r\n get: () => {\r\n this.endpoint = '_api/web/lists';\r\n return this.get_v2();\r\n },\r\n };\r\n\r\n from<K extends Extract<keyof T['LISTS'], string>>(\r\n listName: K,\r\n sharepoint_ver: SHAREPOINT_VER = '2013'\r\n ) {\r\n this.listName = listName;\r\n this.endpoint =\r\n sharepoint_ver === '2013'\r\n ? `_api/web/lists/GetByTitle('${this.listName}')/items`\r\n : `_vti_bin/ListData.svc/${listName}`;\r\n return {\r\n create: (data: ListData) => this.create_v2(data),\r\n get: (options?: Options<T['LISTS'][K]>) =>\r\n this.get_v2<T['LISTS'][K]>(options),\r\n update: (id: ItemID, data: ListData, digest?: string) =>\r\n this.update_2(id, data, digest),\r\n delete: (id: ItemID) => this.delete(id),\r\n createFile: (props: CreateFileProps) => this.createFile(props),\r\n fields: (options?: Field_Options<T['LISTS'][K]>) => {\r\n // return this.field_v2(options)\r\n this.endpoint = !options?.fieldName\r\n ? `_api/web/lists/GetByTitle('${this.listName}')/fields`\r\n : `_api/web/lists/GetByTitle('${this.listName}')/fields/getbytitle('${options.fieldName}')`;\r\n return {\r\n get: () => this.get_only(options),\r\n };\r\n },\r\n };\r\n }\r\n\r\n public folders = {\r\n get: () => {\r\n this.endpoint = '_api/web/folders';\r\n this.get_v2();\r\n },\r\n };\r\n\r\n public folder(folderName?: string | string[]) {\r\n let filePath = ['Shared Documents'];\r\n\r\n if (folderName) {\r\n filePath = Array.isArray(folderName)\r\n ? [...filePath, ...folderName]\r\n : [...filePath, folderName];\r\n }\r\n this.endpoint = `_api/web/GetFolderByServerRelativeUrl('${filePath.join(\r\n '/'\r\n )}')`;\r\n return {\r\n get: (options?: Folder_Options<any>) => {\r\n if (!options?.type) {\r\n this.endpoint += '/Files';\r\n } else {\r\n this.endpoint += `/${options.type}`;\r\n }\r\n\r\n return this.get_files(options);\r\n },\r\n };\r\n }\r\n\r\n public users(options?: Options<any>) {\r\n this.endpoint = '_api/web/SiteUserInfoList/items';\r\n return {\r\n get: () => this.get_v2(options),\r\n };\r\n }\r\n\r\n /**\r\n * Asynchronously retrieves the Form Digest Value from the context information API.\r\n *\r\n * @returns {Promise<string>} A promise that resolves to the Form Digest Value.\r\n * @throws {Error} If the HTTP request fails or the response does not contain the expected data.\r\n */\r\n private async getDigest(): Promise<string> {\r\n try {\r\n const response = await this.instance.post(\r\n `${this.baseURL}_api/contextinfo`\r\n );\r\n if (!response.data?.d?.GetContextWebInformation?.FormDigestValue) {\r\n throw new Error('Invalid response structure: Missing FormDigestValue');\r\n }\r\n return response.data.d.GetContextWebInformation.FormDigestValue;\r\n } catch (error) {\r\n console.error('Failed to retrieve the Form Digest Value:', error);\r\n throw new Error(`Error retrieving Form Digest Value`);\r\n }\r\n '';\r\n }\r\n\r\n private async get_only(options?: any) {\r\n const { expand, orderBy, limit, filter, cols, skip } = options || {};\r\n\r\n const params = {\r\n $expand: Array.isArray(expand) ? expand.join(',') : expand,\r\n $top: limit,\r\n $skip: skip,\r\n $select: Array.isArray(cols) ? cols.join(',') : cols,\r\n $filter: filter,\r\n $orderby: Array.isArray(orderBy) ? orderBy.join(',') : orderBy,\r\n };\r\n const { data } = await this.instance.get(this.endpoint, { params });\r\n if (data) {\r\n return data.d.results ? data.d.results : data.d;\r\n }\r\n }\r\n\r\n private async get_files(options?: Folder_Options<any>) {\r\n const { expand, orderBy, limit, filter, cols, skip } = options || {};\r\n const params = {\r\n $expand: Array.isArray(expand) ? expand.join(',') : expand,\r\n $top: limit,\r\n $skip: skip,\r\n $select: Array.isArray(cols) ? cols.join(',') : cols,\r\n $filter: filter,\r\n $orderby: Array.isArray(orderBy) ? orderBy.join(',') : orderBy,\r\n };\r\n const url = new URL(this.endpoint, this.instance.defaults.baseURL);\r\n Object.entries(params).forEach(([key, value]) => {\r\n if (value !== undefined && value !== null) {\r\n url.searchParams.append(key, String(value));\r\n }\r\n });\r\n\r\n const response = await this.instance.request({\r\n url: this.endpoint,\r\n method: 'GET',\r\n params,\r\n });\r\n\r\n const data =\r\n limit || !response.data.d.results\r\n ? response.data.d\r\n : response.data.d.results;\r\n\r\n const meta = { url };\r\n\r\n return { data, meta };\r\n }\r\n\r\n private async get_v2<K = any>(\r\n options?: Options<K>\r\n ): Promise<{ data: (K & Partial<SPItem>)[]; meta: { url: URL } }> {\r\n const { expand, orderBy, limit, filter, cols, skip } = options || {};\r\n\r\n const params = {\r\n $expand: Array.isArray(expand) ? expand.join(',') : expand,\r\n $top: limit,\r\n $skip: skip,\r\n $select: Array.isArray(cols) ? cols.join(',') : cols,\r\n $filter: filter,\r\n $orderby: Array.isArray(orderBy) ? orderBy.join(' ') : orderBy,\r\n };\r\n\r\n const url = new URL(this.endpoint, this.instance.defaults.baseURL);\r\n Object.entries(params).forEach(([key, value]) => {\r\n if (value !== undefined && value !== null) {\r\n url.searchParams.append(key, String(value));\r\n }\r\n });\r\n\r\n const response = await this.instance.request({\r\n url: this.endpoint,\r\n method: 'GET',\r\n params,\r\n });\r\n\r\n const data =\r\n limit || !response.data.d.results\r\n ? response.data.d\r\n : response.data.d.results;\r\n\r\n const meta = { url };\r\n\r\n return { data, meta };\r\n }\r\n\r\n private async update_2(id: ItemID, data: ListData, digest?: string) {\r\n const formDigestValue = digest || (await this.getDigest());\r\n\r\n data.__metadata = {\r\n type: `SP.Data.${this.listName}ListItem`,\r\n };\r\n const url = `_api/lists/getbytitle('${this.listName}')/getItemById('${id}')`;\r\n const response = await this.instance({\r\n url,\r\n method: 'POST',\r\n data: JSON.stringify(data),\r\n headers: {\r\n 'X-RequestDigest': formDigestValue,\r\n 'IF-MATCH': '*',\r\n 'X-Http-Method': 'PATCH',\r\n },\r\n });\r\n return response;\r\n }\r\n\r\n private async create_v2(listData: ListData) {\r\n this.transformArraysToEdmStrings(listData);\r\n listData.__metadata = {\r\n type: `SP.Data.${this.listName}ListItem`,\r\n };\r\n const response = await this.instance({\r\n url: this.endpoint,\r\n method: 'POST',\r\n data: JSON.stringify(listData),\r\n headers: {\r\n 'X-RequestDigest': await this.getDigest(),\r\n 'IF-MATCH': '*',\r\n },\r\n });\r\n return response;\r\n }\r\n\r\n private async createFile({ file, itemId }: CreateFileProps) {\r\n const requestUrl = `_api/lists/getbytitle('${this.listName}')/items(${itemId})/AttachmentFiles/add(FileName='${file.name}')`;\r\n const res = await this.instance.post(requestUrl, file, {\r\n headers: {\r\n 'X-RequestDigest': await this.getDigest(),\r\n },\r\n withCredentials: true,\r\n });\r\n\r\n return res;\r\n }\r\n\r\n private async delete(ID: string | number) {\r\n const response = await this.instance.delete(`${this.endpoint!}(${ID})`);\r\n return response;\r\n }\r\n\r\n public email = {\r\n /**\r\n * Sends an email using SharePoint's Utility.SendEmail API.\r\n *\r\n * @param {EmailProps} param0 - The email properties.\r\n * @param {string} param0.From - The sender's email address.\r\n * @example\r\n * Example of a sender's email address\r\n * \"sender@example.com\"\r\n * @param {string | string[]} param0.To - The recipient's email address or an array of email addresses.\r\n * @example\r\n * Example of a single recipient's email address\r\n * \"recipient@example.com\"\r\n * Example of multiple recipients' email addresses\r\n * [\"recipient1@example.com\", \"recipient2@example.com\"]\r\n * @param {string} param0.Subject - The subject of the email.\r\n * @example\r\n * Example of an email subject\r\n * \"Meeting Reminder\"\r\n * @param {string} param0.Body - The body content of the email.\r\n * @example\r\n * Example of an email body\r\n * \"Dear team, please be reminded of the meeting scheduled for tomorrow at 10 AM.\"\r\n * @returns {Promise<any>} - A promise that resolves to the response of the email send request.\r\n */\r\n send: (props: EmailProps) => this.sendEmail(props),\r\n };\r\n\r\n private async sendEmail({\r\n From,\r\n To,\r\n Subject,\r\n Body,\r\n }: EmailProps): Promise<\r\n AxiosResponse<{\r\n d: {\r\n SendEmail: null;\r\n };\r\n }>\r\n > {\r\n const httpRequest = '_api/SP.Utilities.Utility.SendEmail';\r\n const response = await this.instance({\r\n url: httpRequest,\r\n method: 'POST',\r\n headers: {\r\n 'X-RequestDigest': await this.getDigest(),\r\n 'X-Http-Method': 'POST',\r\n 'Content-Type': 'application/json;odata=verbose',\r\n },\r\n data: JSON.stringify({\r\n properties: {\r\n __metadata: {\r\n type: 'SP.Utilities.EmailProperties',\r\n },\r\n From,\r\n To: {\r\n results: Array.isArray(To) ? To : [To],\r\n },\r\n Body,\r\n Subject,\r\n },\r\n }),\r\n });\r\n\r\n return response;\r\n }\r\n\r\n private async typeAhead(input: string, filter?: string) {\r\n const filterValue = filter ? ` and ${filter}` : '';\r\n const response = await this.instance.get(\r\n `_vti_bin/listdata.svc/UserInformationList?$top=10&$filter=substringof('${input}',Name) or substringof('${input}',WorkEmail)${filterValue}`\r\n );\r\n return response.data.d;\r\n }\r\n\r\n private async currentUserProperties() {\r\n const requestUrl = '_api/sp.userprofiles.peoplemanager/getmyproperties';\r\n let profile: any = await this.instance.get(requestUrl);\r\n\r\n profile = profile.data.d;\r\n\r\n profile.UserProfileProperties.results.forEach(\r\n (prop: { Key: string; Value: string }) => {\r\n if (prop.Key === 'FirstName') {\r\n profile.FirstName = prop.Value;\r\n }\r\n if (prop.Key === 'LastName') {\r\n profile.LastName = prop.Value;\r\n }\r\n if (prop.Key === 'Country') {\r\n profile.Country = prop.Value;\r\n }\r\n if (prop.Key === 'UserName') {\r\n profile.UserName = prop.Value;\r\n }\r\n }\r\n );\r\n return profile as Promise<UserProfile>;\r\n }\r\n public user = {\r\n properties: () => {\r\n return {\r\n get: () => this.currentUserProperties(),\r\n };\r\n },\r\n searchSiteUser: (searchValue: string) => this.getSiteUser(searchValue),\r\n searchUser: (input: string, filter?: string): Promise<PersonField> =>\r\n this.typeAhead(input, filter),\r\n current: () => {\r\n this.endpoint = '_api/web/currentUser';\r\n return {\r\n get: (): Promise<CurrentUser> => this.get_only(),\r\n };\r\n },\r\n currentPermission: () => {\r\n return {\r\n get: () => this.currentUserPermissions(),\r\n };\r\n },\r\n };\r\n\r\n private async getSiteUser(searchValue: string) {\r\n const requestUrl = `_api/web/siteusers?&$filter=substringof('${searchValue}', Title) or substringof('${searchValue}', LoginName) or substringof('${searchValue}', Email)&$top=50&$expand=Groups`;\r\n const response = await this.instance.get(requestUrl);\r\n return response.data.d;\r\n }\r\n\r\n private async roleDefinitions() {\r\n const requestUrl = `_api/Web/RoleDefinitions`;\r\n const response = await this.instance.get(requestUrl);\r\n return response.data.d.results;\r\n }\r\n\r\n private async getEffectiveBasePermissions() {\r\n const requestUrl = `_api/Web/effectiveBasePermissions`;\r\n const response = await this.instance.get(requestUrl);\r\n return response.data.d.EffectiveBasePermissions;\r\n }\r\n\r\n private async currentUserPermissions() {\r\n const { High } = await this.getEffectiveBasePermissions();\r\n const roleDefinitions = await this.roleDefinitions();\r\n\r\n const result = roleDefinitions.find(\r\n ({ BasePermissions }: { BasePermissions: { High: string } }) =>\r\n BasePermissions.High === High\r\n );\r\n\r\n return result as UserPermision;\r\n }\r\n}\r\n\r\nexport default HTTPSharePointRequests;\r\n","import SHAREPOINT_REQUESTS from './root';\r\n\r\nimport type { LookupField, ChoiceField, PersonField } from './types';\r\n\r\n// Load environment variables from .env file\r\n\r\nexport default function createBase<\r\n T extends { LISTS: Record<string, any>; FOLDERS?: Record<string, any> } = any\r\n>(){\r\n function create({ baseURL }: { baseURL: string }) {\r\n if (!baseURL) {\r\n throw new Error('A valid SharePoint URL must be provided.');\r\n }\r\n return new SHAREPOINT_REQUESTS<T>(baseURL);\r\n }\r\n\r\n return {\r\n /**\r\n * @deprecated Use `create` instead.\r\n */\r\n baseURL(url: string) {\r\n return create({ baseURL: url });\r\n },\r\n create,\r\n };\r\n}\r\n\r\nexport { LookupField, ChoiceField, PersonField };\r\n"],"names":["instance","baseURL","config","headers","Accept","timeout","withCredentials","axios","create","_extends","HTTPSharePointRequests","get","_this","endpoint","get_v2","send","props","sendEmail","properties","currentUserProperties","searchSiteUser","searchValue","getSiteUser","searchUser","input","filter","typeAhead","current","get_only","currentPermission","currentUserPermissions","endsWith","listName","_proto","prototype","transformArraysToEdmStrings","data","key","Array","isArray","__metadata","type","results","list","from","sharepoint_ver","_this2","create_v2","options","update","id","digest","update_2","delete","createFile","fields","fieldName","folder","folderName","filePath","concat","join","_this3","get_files","users","_this4","getDigest","_getDigest","_asyncToGenerator","_regenerator","m","_callee","_response$data","response","_t","w","_context","p","n","post","v","d","GetContextWebInformation","FormDigestValue","Error","a","console","error","apply","arguments","_get_only","_callee2","_ref","expand","orderBy","limit","cols","skip","params","_yield$this$instance$","_context2","$expand","$top","$skip","$select","$filter","$orderby","_x","_get_files","_callee3","_ref2","url","meta","_context3","URL","defaults","Object","entries","forEach","_ref3","value","undefined","searchParams","append","String","request","method","_x2","_get_v","_callee4","_ref4","_context4","_ref5","_x3","_update_","_callee5","formDigestValue","_t2","_context5","JSON","stringify","_x4","_x5","_x6","_create_v","_callee6","listData","_t3","_t4","_t5","_t6","_t7","_context6","call","_x7","_createFile","_callee7","_ref6","file","itemId","requestUrl","res","_t8","_t9","_t0","_t1","_t10","_context7","name","_x8","_delete2","_callee8","ID","_context8","_x9","_sendEmail","_callee9","_ref7","From","To","Subject","Body","httpRequest","_t11","_t12","_t13","_t14","_t15","_context9","_x0","_typeAhead","_callee0","filterValue","_context0","_x1","_x10","_currentUserProperties","_callee1","profile","_context1","UserProfileProperties","prop","Key","FirstName","Value","LastName","Country","UserName","_getSiteUser","_callee10","_context10","_x11","roleDefinitions","_roleDefinitions","_callee11","_context11","getEffectiveBasePermissions","_getEffectiveBasePermissions","_callee12","_context12","EffectiveBasePermissions","_currentUserPermissions","_callee13","_yield$this$getEffect","High","result","_context13","find","_ref8","BasePermissions","createBase","SHAREPOINT_REQUESTS"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sharepoint_requests.esm.js","sources":["../src/root/instance.ts","../src/root/index.ts","../src/index.ts"],"sourcesContent":["import axios, { CreateAxiosDefaults } from 'axios';\n\nexport const instance = (\n baseURL: string,\n config: CreateAxiosDefaults = {\n headers: {\n Accept: 'application/json; odata=verbose',\n 'Content-Type': 'application/json; odata=verbose',\n },\n timeout: 15000,\n withCredentials: true,\n }\n) => {\n return axios.create({\n baseURL: baseURL,\n ...config,\n });\n};\n\nexport default instance;\n","import { AxiosInstance, AxiosResponse } from 'axios';\r\nimport instance from './instance';\r\nimport {\r\n CreateFileProps,\r\n CurrentUser,\r\n EmailProps,\r\n Field_Options,\r\n Folder_Options,\r\n IListName,\r\n ItemID,\r\n ListData,\r\n Options,\r\n PersonField,\r\n SHAREPOINT_VER,\r\n SPItem,\r\n UserPermision,\r\n UserProfile,\r\n} from '../types';\r\n\r\nclass HTTPSharePointRequests<\r\n T extends { LISTS: Record<string, any>; FOLDERS?: Record<string, any> }\r\n> {\r\n private baseURL: string;\r\n private endpoint: string;\r\n private listName: string;\r\n private instance: AxiosInstance;\r\n\r\n /**\r\n * Creates an HTTP SharePoint requester bound to the provided base URL.\r\n *\r\n * @param baseURL The root SharePoint site URL (with or without trailing slash).\r\n */\r\n constructor(baseURL: string) {\r\n this.baseURL = baseURL.endsWith('/') ? baseURL : `${baseURL}/`;\r\n this.endpoint = '/api';\r\n this.listName = '';\r\n\r\n this.instance = instance(this.baseURL);\r\n }\r\n\r\n /**\r\n * Converts array values in a payload to the `Collection(Edm.String)` structure\r\n * expected by SharePoint REST endpoints.\r\n *\r\n * @param data The list item payload to harmonise in-place.\r\n */\r\n private transformArraysToEdmStrings(data: ListData) {\r\n for (const key in data) {\r\n if (Array.isArray(data[key])) {\r\n data[key] = {\r\n __metadata: { type: 'Collection(Edm.String)' },\r\n results: data[key],\r\n };\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * @deprecated Use `from` instead.\r\n */\r\n list(listName: IListName<T>) {\r\n this.listName = listName;\r\n this.endpoint = `_vti_bin/ListData.svc/${listName}`;\r\n return this;\r\n }\r\n public readonly lists = {\r\n /**\r\n * Fetches all SharePoint lists available to the current site.\r\n *\r\n * @returns Promise resolving to the list collection response payload.\r\n */\r\n get: () => {\r\n this.endpoint = '_api/web/lists';\r\n return this.get_v2();\r\n },\r\n };\r\n\r\n /**\r\n * Selects a SharePoint list and exposes list-scoped CRUD helpers.\r\n *\r\n * @param listName Logical list key configured in the generic type map.\r\n * @param sharepoint_ver SharePoint version used to choose the correct REST endpoint.\r\n * @returns Chainable helpers bound to the selected list.\r\n */\r\n from<K extends Extract<keyof T['LISTS'], string>>(\r\n listName: K,\r\n sharepoint_ver: SHAREPOINT_VER = '2013'\r\n ) {\r\n this.listName = listName;\r\n this.endpoint =\r\n sharepoint_ver === '2013'\r\n ? `_api/web/lists/GetByTitle('${this.listName}')/items`\r\n : `_vti_bin/ListData.svc/${listName}`;\r\n return {\r\n create: (data: ListData) => this.create_v2(data),\r\n get: (options?: Options<T['LISTS'][K]>) =>\r\n this.get_v2<T['LISTS'][K]>(options),\r\n update: (id: ItemID, data: ListData, digest?: string) =>\r\n this.update_2(id, data, digest),\r\n delete: (id: ItemID) => this.delete(id),\r\n createFile: (props: CreateFileProps) => this.createFile(props),\r\n fields: (options?: Field_Options<T['LISTS'][K]>) => {\r\n // return this.field_v2(options)\r\n this.endpoint = !options?.fieldName\r\n ? `_api/web/lists/GetByTitle('${this.listName}')/fields`\r\n : `_api/web/lists/GetByTitle('${this.listName}')/fields/getbytitle('${options.fieldName}')`;\r\n return {\r\n get: () => this.get_only(options),\r\n };\r\n },\r\n };\r\n }\r\n\r\n public folders = {\r\n /**\r\n * Retrieves SharePoint folders from the default folders endpoint.\r\n *\r\n * @returns A promise resolving with folder metadata.\r\n */\r\n get: () => {\r\n this.endpoint = '_api/web/folders';\r\n this.get_v2();\r\n },\r\n };\r\n\r\n /**\r\n * Targets a SharePoint folder path and exposes file retrieval helpers.\r\n *\r\n * @param folderName Optional folder path relative to `Shared Documents`.\r\n * @returns Helper exposing `get` to fetch files or sub-folders.\r\n */\r\n public folder(folderName?: string | string[]) {\r\n let filePath = ['Shared Documents'];\r\n\r\n if (folderName) {\r\n filePath = Array.isArray(folderName)\r\n ? [...filePath, ...folderName]\r\n : [...filePath, folderName];\r\n }\r\n this.endpoint = `_api/web/GetFolderByServerRelativeUrl('${filePath.join(\r\n '/'\r\n )}')`;\r\n return {\r\n /**\r\n * Fetches files or folders from the targeted path.\r\n *\r\n * @param options Optional REST query options to refine the result set.\r\n * @returns Promise resolving to folder contents and metadata.\r\n */\r\n get: (options?: Folder_Options<any>) => {\r\n if (!options?.type) {\r\n this.endpoint += '/Files';\r\n } else {\r\n this.endpoint += `/${options.type}`;\r\n }\r\n\r\n return this.get_files(options);\r\n },\r\n };\r\n }\r\n\r\n /**\r\n * Retrieves user list items and exposes a get helper with optional query parameters.\r\n *\r\n * @param options Optional REST query options.\r\n * @returns Helper exposing `get` returning SharePoint user rows.\r\n */\r\n public users(options?: Options<any>) {\r\n this.endpoint = '_api/web/SiteUserInfoList/items';\r\n return {\r\n /**\r\n * Executes the user list request using the specified options.\r\n *\r\n * @returns Promise resolving to the SharePoint user list response.\r\n */\r\n get: () => this.get_v2(options),\r\n };\r\n }\r\n\r\n /**\r\n * Asynchronously retrieves the Form Digest Value from the context information API.\r\n *\r\n * @returns {Promise<string>} A promise that resolves to the Form Digest Value.\r\n * @throws {Error} If the HTTP request fails or the response does not contain the expected data.\r\n */\r\n private async getDigest(): Promise<string> {\r\n try {\r\n const response = await this.instance.post(\r\n `${this.baseURL}_api/contextinfo`\r\n );\r\n if (!response.data?.d?.GetContextWebInformation?.FormDigestValue) {\r\n throw new Error('Invalid response structure: Missing FormDigestValue');\r\n }\r\n return response.data.d.GetContextWebInformation.FormDigestValue;\r\n } catch (error) {\r\n console.error('Failed to retrieve the Form Digest Value:', error);\r\n throw new Error(`Error retrieving Form Digest Value`);\r\n }\r\n '';\r\n }\r\n\r\n /**\r\n * Executes a GET request without additional metadata wrapping.\r\n *\r\n * @param options Optional REST query options.\r\n * @returns SharePoint response payload or undefined when empty.\r\n */\r\n private async get_only(options?: any) {\r\n const { expand, orderBy, limit, filter, cols, skip } = options || {};\r\n\r\n const params = {\r\n $expand: Array.isArray(expand) ? expand.join(',') : expand,\r\n $top: limit,\r\n $skip: skip,\r\n $select: Array.isArray(cols) ? cols.join(',') : cols,\r\n $filter: filter,\r\n $orderby: Array.isArray(orderBy) ? orderBy.join(',') : orderBy,\r\n };\r\n const { data } = await this.instance.get(this.endpoint, { params });\r\n if (data) {\r\n return data.d.results ? data.d.results : data.d;\r\n }\r\n }\r\n\r\n /**\r\n * Retrieves folder contents with optional filtering and returns the payload with metadata.\r\n *\r\n * @param options REST options describing expand/filter/order conditions.\r\n * @returns Folder data and the fully resolved request URL.\r\n */\r\n private async get_files(options?: Folder_Options<any>) {\r\n const { expand, orderBy, limit, filter, cols, skip } = options || {};\r\n const params = {\r\n $expand: Array.isArray(expand) ? expand.join(',') : expand,\r\n $top: limit,\r\n $skip: skip,\r\n $select: Array.isArray(cols) ? cols.join(',') : cols,\r\n $filter: filter,\r\n $orderby: Array.isArray(orderBy) ? orderBy.join(',') : orderBy,\r\n };\r\n const url = new URL(this.endpoint, this.instance.defaults.baseURL);\r\n Object.entries(params).forEach(([key, value]) => {\r\n if (value !== undefined && value !== null) {\r\n url.searchParams.append(key, String(value));\r\n }\r\n });\r\n\r\n const response = await this.instance.request({\r\n url: this.endpoint,\r\n method: 'GET',\r\n params,\r\n });\r\n\r\n const data =\r\n limit || !response.data.d.results\r\n ? response.data.d\r\n : response.data.d.results;\r\n\r\n const meta = { url };\r\n\r\n return { data, meta };\r\n }\r\n\r\n /**\r\n * Performs a typed list read against the current endpoint.\r\n *\r\n * @param options Optional REST query options governing expand, filter, ordering and pagination.\r\n * @returns SharePoint list items alongside the fully-resolved request URL.\r\n */\r\n private async get_v2<K = any>(\r\n options?: Options<K>\r\n ): Promise<{ data: (K & Partial<SPItem>)[]; meta: { url: URL } }> {\r\n const { expand, orderBy, limit, filter, cols, skip } = options || {};\r\n\r\n const params = {\r\n $expand: Array.isArray(expand) ? expand.join(',') : expand,\r\n $top: limit,\r\n $skip: skip,\r\n $select: Array.isArray(cols) ? cols.join(',') : cols,\r\n $filter: filter,\r\n $orderby: Array.isArray(orderBy) ? orderBy.join(' ') : orderBy,\r\n };\r\n\r\n const url = new URL(this.endpoint, this.instance.defaults.baseURL);\r\n Object.entries(params).forEach(([key, value]) => {\r\n if (value !== undefined && value !== null) {\r\n url.searchParams.append(key, String(value));\r\n }\r\n });\r\n\r\n const response = await this.instance.request({\r\n url: this.endpoint,\r\n method: 'GET',\r\n params,\r\n });\r\n\r\n const data =\r\n limit || !response.data.d.results\r\n ? response.data.d\r\n : response.data.d.results;\r\n\r\n const meta = { url };\r\n\r\n return { data, meta };\r\n }\r\n\r\n /**\r\n * Updates an item in the currently selected list.\r\n *\r\n * @param id Target list item identifier.\r\n * @param data Payload with fields to update.\r\n * @param digest Optional pre-fetched form digest to reuse.\r\n * @returns Axios response of the update request.\r\n */\r\n private async update_2(id: ItemID, data: ListData, digest?: string) {\r\n const formDigestValue = digest || (await this.getDigest());\r\n\r\n data.__metadata = {\r\n type: `SP.Data.${this.listName}ListItem`,\r\n };\r\n const url = `_api/lists/getbytitle('${this.listName}')/getItemById('${id}')`;\r\n const response = await this.instance({\r\n url,\r\n method: 'POST',\r\n data: JSON.stringify(data),\r\n headers: {\r\n 'X-RequestDigest': formDigestValue,\r\n 'IF-MATCH': '*',\r\n 'X-Http-Method': 'PATCH',\r\n },\r\n });\r\n return response;\r\n }\r\n\r\n /**\r\n * Creates a new item within the active list.\r\n *\r\n * @param listData SharePoint list item payload.\r\n * @returns Axios response resolved from the create request.\r\n */\r\n private async create_v2(listData: ListData) {\r\n this.transformArraysToEdmStrings(listData);\r\n listData.__metadata = {\r\n type: `SP.Data.${this.listName}ListItem`,\r\n };\r\n const response = await this.instance({\r\n url: this.endpoint,\r\n method: 'POST',\r\n data: JSON.stringify(listData),\r\n headers: {\r\n 'X-RequestDigest': await this.getDigest(),\r\n 'IF-MATCH': '*',\r\n },\r\n });\r\n return response;\r\n }\r\n\r\n /**\r\n * Uploads an attachment file to an existing list item.\r\n *\r\n * @param props File payload and target item identifier.\r\n * @returns Axios response describing the upload result.\r\n */\r\n private async createFile({ file, itemId }: CreateFileProps) {\r\n const requestUrl = `_api/lists/getbytitle('${this.listName}')/items(${itemId})/AttachmentFiles/add(FileName='${file.name}')`;\r\n const res = await this.instance.post(requestUrl, file, {\r\n headers: {\r\n 'X-RequestDigest': await this.getDigest(),\r\n },\r\n withCredentials: true,\r\n });\r\n\r\n return res;\r\n }\r\n\r\n /**\r\n * Deletes an item using the current endpoint.\r\n *\r\n * @param ID Identifier of the entity to remove.\r\n * @returns Axios response from the delete call.\r\n */\r\n private async delete(ID: string | number) {\r\n const response = await this.instance.delete(`${this.endpoint!}(${ID})`);\r\n return response;\r\n }\r\n\r\n public email = {\r\n /**\r\n * Sends an email using SharePoint's Utility.SendEmail API.\r\n *\r\n * @param {EmailProps} param0 - The email properties.\r\n * @param {string} param0.From - The sender's email address.\r\n * @example\r\n * Example of a sender's email address\r\n * \"sender@example.com\"\r\n * @param {string | string[]} param0.To - The recipient's email address or an array of email addresses.\r\n * @example\r\n * Example of a single recipient's email address\r\n * \"recipient@example.com\"\r\n * Example of multiple recipients' email addresses\r\n * [\"recipient1@example.com\", \"recipient2@example.com\"]\r\n * @param {string} param0.Subject - The subject of the email.\r\n * @example\r\n * Example of an email subject\r\n * \"Meeting Reminder\"\r\n * @param {string} param0.Body - The body content of the email.\r\n * @example\r\n * Example of an email body\r\n * \"Dear team, please be reminded of the meeting scheduled for tomorrow at 10 AM.\"\r\n * @returns {Promise<any>} - A promise that resolves to the response of the email send request.\r\n */\r\n send: (props: EmailProps) => this.sendEmail(props),\r\n };\r\n\r\n private async sendEmail({\r\n From,\r\n To,\r\n Subject,\r\n Body,\r\n }: EmailProps): Promise<\r\n AxiosResponse<{\r\n d: {\r\n SendEmail: null;\r\n };\r\n }>\r\n > {\r\n const httpRequest = '_api/SP.Utilities.Utility.SendEmail';\r\n const response = await this.instance({\r\n url: httpRequest,\r\n method: 'POST',\r\n headers: {\r\n 'X-RequestDigest': await this.getDigest(),\r\n 'X-Http-Method': 'POST',\r\n 'Content-Type': 'application/json;odata=verbose',\r\n },\r\n data: JSON.stringify({\r\n properties: {\r\n __metadata: {\r\n type: 'SP.Utilities.EmailProperties',\r\n },\r\n From,\r\n To: {\r\n results: Array.isArray(To) ? To : [To],\r\n },\r\n Body,\r\n Subject,\r\n },\r\n }),\r\n });\r\n\r\n return response;\r\n }\r\n\r\n /**\r\n * Queries SharePoint's people picker endpoint for matching users.\r\n *\r\n * @param input Free-text search term.\r\n * @param filter Optional additional filter condition.\r\n * @returns Promise with type-ahead results payload.\r\n */\r\n private async typeAhead(input: string, filter?: string) {\r\n const filterValue = filter ? ` and ${filter}` : '';\r\n const response = await this.instance.get(\r\n `_vti_bin/listdata.svc/UserInformationList?$top=10&$filter=substringof('${input}',Name) or substringof('${input}',WorkEmail)${filterValue}`\r\n );\r\n return response.data.d;\r\n }\r\n\r\n /**\r\n * Retrieves the current user profile and flattens selected properties.\r\n *\r\n * @returns Promise containing the current user's profile information.\r\n */\r\n private async currentUserProperties() {\r\n const requestUrl = '_api/sp.userprofiles.peoplemanager/getmyproperties';\r\n let profile: any = await this.instance.get(requestUrl);\r\n\r\n profile = profile.data.d;\r\n\r\n profile.UserProfileProperties.results.forEach(\r\n (prop: { Key: string; Value: string }) => {\r\n if (prop.Key === 'FirstName') {\r\n profile.FirstName = prop.Value;\r\n }\r\n if (prop.Key === 'LastName') {\r\n profile.LastName = prop.Value;\r\n }\r\n if (prop.Key === 'Country') {\r\n profile.Country = prop.Value;\r\n }\r\n if (prop.Key === 'UserName') {\r\n profile.UserName = prop.Value;\r\n }\r\n }\r\n );\r\n return profile as Promise<UserProfile>;\r\n }\r\n public user = {\r\n /**\r\n * Provides accessors for the current user's profile information.\r\n *\r\n * @returns Helper exposing a `get` function to retrieve profile details.\r\n */\r\n properties: () => {\r\n return {\r\n get: () => this.currentUserProperties(),\r\n };\r\n },\r\n /**\r\n * Searches across site users and their groups.\r\n *\r\n * @param searchValue Query string to match site users.\r\n * @returns Promise resolving to matching site users.\r\n */\r\n searchSiteUser: (searchValue: string) => this.getSiteUser(searchValue),\r\n /**\r\n * Performs a people-picker search scoped to the current site collection.\r\n *\r\n * @param input Search prefix.\r\n * @param filter Optional additional filter condition.\r\n * @returns Promise with type-ahead person results.\r\n */\r\n searchUser: (input: string, filter?: string): Promise<PersonField> =>\r\n this.typeAhead(input, filter),\r\n /**\r\n * Fetches the currently authenticated SharePoint user.\r\n *\r\n * @returns Helper exposing `get` that resolves to the current user payload.\r\n */\r\n current: () => {\r\n this.endpoint = '_api/web/currentUser';\r\n return {\r\n get: (): Promise<CurrentUser> => this.get_only(),\r\n };\r\n },\r\n /**\r\n * Retrieves calculated permission level for the current user.\r\n *\r\n * @returns Helper exposing `get` resolving to the user's permission definition.\r\n */\r\n currentPermission: () => {\r\n return {\r\n get: () => this.currentUserPermissions(),\r\n };\r\n },\r\n };\r\n\r\n /**\r\n * Searches site users based on a substring match across common fields.\r\n *\r\n * @param searchValue Term to match against the SharePoint user directory.\r\n * @returns Promise with matching site users and their groups.\r\n */\r\n private async getSiteUser(searchValue: string) {\r\n const requestUrl = `_api/web/siteusers?&$filter=substringof('${searchValue}', Title) or substringof('${searchValue}', LoginName) or substringof('${searchValue}', Email)&$top=50&$expand=Groups`;\r\n const response = await this.instance.get(requestUrl);\r\n return response.data.d;\r\n }\r\n\r\n /**\r\n * Retrieves all available role definitions for the current site.\r\n *\r\n * @returns Promise resolving to an array of role definitions.\r\n */\r\n private async roleDefinitions() {\r\n const requestUrl = `_api/Web/RoleDefinitions`;\r\n const response = await this.instance.get(requestUrl);\r\n return response.data.d.results;\r\n }\r\n\r\n /**\r\n * Fetches the bit-encoded permissions of the current user.\r\n *\r\n * @returns Promise resolving to the `EffectiveBasePermissions` object.\r\n */\r\n private async getEffectiveBasePermissions() {\r\n const requestUrl = `_api/Web/effectiveBasePermissions`;\r\n const response = await this.instance.get(requestUrl);\r\n return response.data.d.EffectiveBasePermissions;\r\n }\r\n\r\n /**\r\n * Matches the current user's effective permissions against known role definitions.\r\n *\r\n * @returns The matching SharePoint role definition as a structured permission object.\r\n */\r\n private async currentUserPermissions() {\r\n const { High } = await this.getEffectiveBasePermissions();\r\n const roleDefinitions = await this.roleDefinitions();\r\n\r\n const result = roleDefinitions.find(\r\n ({ BasePermissions }: { BasePermissions: { High: string } }) =>\r\n BasePermissions.High === High\r\n );\r\n\r\n return result as UserPermision;\r\n }\r\n}\r\n\r\nexport default HTTPSharePointRequests;\r\n","import SHAREPOINT_REQUESTS from './root';\r\n\r\nimport type { LookupField, ChoiceField, PersonField } from './types';\r\n\r\n// Load environment variables from .env file\r\n\r\nexport default function createBase<\r\n T extends { LISTS: Record<string, any>; FOLDERS?: Record<string, any> } = any\r\n>(){\r\n function create({ baseURL }: { baseURL: string }) {\r\n if (!baseURL) {\r\n throw new Error('A valid SharePoint URL must be provided.');\r\n }\r\n return new SHAREPOINT_REQUESTS<T>(baseURL);\r\n }\r\n\r\n return {\r\n /**\r\n * @deprecated Use `create` instead.\r\n */\r\n baseURL(url: string) {\r\n return create({ baseURL: url });\r\n },\r\n create,\r\n };\r\n}\r\n\r\nexport { LookupField, ChoiceField, PersonField };\r\n"],"names":["instance","baseURL","config","headers","Accept","timeout","withCredentials","axios","create","_extends","HTTPSharePointRequests","get","_this","endpoint","get_v2","send","props","sendEmail","properties","currentUserProperties","searchSiteUser","searchValue","getSiteUser","searchUser","input","filter","typeAhead","current","get_only","currentPermission","currentUserPermissions","endsWith","listName","_proto","prototype","transformArraysToEdmStrings","data","key","Array","isArray","__metadata","type","results","list","from","sharepoint_ver","_this2","create_v2","options","update","id","digest","update_2","delete","createFile","fields","fieldName","folder","folderName","filePath","concat","join","_this3","get_files","users","_this4","getDigest","_getDigest","_asyncToGenerator","_regenerator","m","_callee","_response$data","response","_t","w","_context","p","n","post","v","d","GetContextWebInformation","FormDigestValue","Error","a","console","error","apply","arguments","_get_only","_callee2","_ref","expand","orderBy","limit","cols","skip","params","_yield$this$instance$","_context2","$expand","$top","$skip","$select","$filter","$orderby","_x","_get_files","_callee3","_ref2","url","meta","_context3","URL","defaults","Object","entries","forEach","_ref3","value","undefined","searchParams","append","String","request","method","_x2","_get_v","_callee4","_ref4","_context4","_ref5","_x3","_update_","_callee5","formDigestValue","_t2","_context5","JSON","stringify","_x4","_x5","_x6","_create_v","_callee6","listData","_t3","_t4","_t5","_t6","_t7","_context6","call","_x7","_createFile","_callee7","_ref6","file","itemId","requestUrl","res","_t8","_t9","_t0","_t1","_t10","_context7","name","_x8","_delete2","_callee8","ID","_context8","_x9","_sendEmail","_callee9","_ref7","From","To","Subject","Body","httpRequest","_t11","_t12","_t13","_t14","_t15","_context9","_x0","_typeAhead","_callee0","filterValue","_context0","_x1","_x10","_currentUserProperties","_callee1","profile","_context1","UserProfileProperties","prop","Key","FirstName","Value","LastName","Country","UserName","_getSiteUser","_callee10","_context10","_x11","roleDefinitions","_roleDefinitions","_callee11","_context11","getEffectiveBasePermissions","_getEffectiveBasePermissions","_callee12","_context12","EffectiveBasePermissions","_currentUserPermissions","_callee13","_yield$this$getEffect","High","result","_context13","find","_ref8","BasePermissions","createBase","SHAREPOINT_REQUESTS"],"mappings":"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"}
|
package/package.json
CHANGED