@lindle/sharepoint_requests 0.1.16 → 0.1.17
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 +3 -1
- package/dist/root/internal/listRequests/uploadFile.d.ts +5 -2
- package/dist/sharepoint_requests.cjs.development.js +27 -2
- 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 +27 -2
- package/dist/sharepoint_requests.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/root/internal/listRequests/uploadFile.ts +32 -5
package/dist/root/index.d.ts
CHANGED
|
@@ -37,7 +37,9 @@ declare class HTTPSharePointRequests<T extends {
|
|
|
37
37
|
update: (id: ItemID, data: ListData, digest?: string) => Promise<import("axios").AxiosResponse<any, any, {}>>;
|
|
38
38
|
delete: (id: ItemID) => Promise<import("axios").AxiosResponse<any, any, {}>>;
|
|
39
39
|
createFile: (props: CreateFileProps) => Promise<import("axios").AxiosResponse<any, any, {}>>;
|
|
40
|
-
uploadFile: (props: UploadFileProps) => Promise<import("axios").AxiosResponse<any, any, {}
|
|
40
|
+
uploadFile: (props: UploadFileProps) => Promise<import("axios").AxiosResponse<any, any, {}> & {
|
|
41
|
+
itemId?: ItemID;
|
|
42
|
+
}>;
|
|
41
43
|
deleteFile: (props: DeleteFileProps) => Promise<import("axios").AxiosResponse<any, any, {}>>;
|
|
42
44
|
fields: (options?: Field_Options<T["LISTS"][K], V>) => {
|
|
43
45
|
get: () => Promise<any>;
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { AxiosResponse } from 'axios';
|
|
2
|
+
import type { ItemID, SHAREPOINT_VER, UploadFileProps } from '../../../types';
|
|
2
3
|
import type { RequestContext } from '../context';
|
|
3
|
-
export declare function uploadFile<V extends SHAREPOINT_VER = '2013'>(context: RequestContext<V>, { file, folderPath, overwrite }: UploadFileProps): Promise<
|
|
4
|
+
export declare function uploadFile<V extends SHAREPOINT_VER = '2013'>(context: RequestContext<V>, { file, folderPath, overwrite }: UploadFileProps): Promise<AxiosResponse & {
|
|
5
|
+
itemId?: ItemID;
|
|
6
|
+
}>;
|
|
@@ -620,7 +620,8 @@ function uploadFile(_x, _x2) {
|
|
|
620
620
|
}
|
|
621
621
|
function _uploadFile() {
|
|
622
622
|
_uploadFile = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(context, _ref) {
|
|
623
|
-
var
|
|
623
|
+
var _response$data$d, _response$data, _ref2, _ref3, _listItemFields$Id, _listItemFields$__def;
|
|
624
|
+
var file, folderPath, _ref$overwrite, overwrite, requestUrl, encodedFileName, digest, response, responseData, listItemFields, itemId, _listItemResponse$dat, _listItemResponse$dat2, _listItemResponse$dat3, listItemResponse, deferredId;
|
|
624
625
|
return _regenerator().w(function (_context) {
|
|
625
626
|
while (1) switch (_context.n) {
|
|
626
627
|
case 0:
|
|
@@ -640,7 +641,7 @@ function _uploadFile() {
|
|
|
640
641
|
requestUrl = "_api/web/lists/getbytitle('" + context.listName + "')/RootFolder";
|
|
641
642
|
requestUrl += buildLibraryPath(folderPath);
|
|
642
643
|
encodedFileName = encodeFileName(file.name);
|
|
643
|
-
requestUrl += "/Files/add(url='" + encodedFileName + "',overwrite=" + (overwrite ? 'true' : 'false') + ")";
|
|
644
|
+
requestUrl += "/Files/add(url='" + encodedFileName + "',overwrite=" + (overwrite ? 'true' : 'false') + ")?$expand=ListItemAllFields&$select=ListItemAllFields/Id";
|
|
644
645
|
_context.n = 3;
|
|
645
646
|
return fetchDigest(context.instance, context.baseURL);
|
|
646
647
|
case 3:
|
|
@@ -655,6 +656,30 @@ function _uploadFile() {
|
|
|
655
656
|
});
|
|
656
657
|
case 4:
|
|
657
658
|
response = _context.v;
|
|
659
|
+
responseData = (_response$data$d = (_response$data = response.data) == null ? void 0 : _response$data.d) != null ? _response$data$d : response.data;
|
|
660
|
+
listItemFields = responseData == null ? void 0 : responseData.ListItemAllFields;
|
|
661
|
+
itemId = (_ref2 = (_ref3 = (_listItemFields$Id = listItemFields == null ? void 0 : listItemFields.Id) != null ? _listItemFields$Id : listItemFields == null ? void 0 : listItemFields.ID) != null ? _ref3 : responseData == null ? void 0 : responseData.Id) != null ? _ref2 : responseData == null ? void 0 : responseData.ID;
|
|
662
|
+
if (!(typeof itemId !== 'undefined')) {
|
|
663
|
+
_context.n = 5;
|
|
664
|
+
break;
|
|
665
|
+
}
|
|
666
|
+
response.itemId = itemId;
|
|
667
|
+
_context.n = 7;
|
|
668
|
+
break;
|
|
669
|
+
case 5:
|
|
670
|
+
if (!(listItemFields != null && (_listItemFields$__def = listItemFields.__deferred) != null && _listItemFields$__def.uri)) {
|
|
671
|
+
_context.n = 7;
|
|
672
|
+
break;
|
|
673
|
+
}
|
|
674
|
+
_context.n = 6;
|
|
675
|
+
return context.instance.get(listItemFields.__deferred.uri);
|
|
676
|
+
case 6:
|
|
677
|
+
listItemResponse = _context.v;
|
|
678
|
+
deferredId = (_listItemResponse$dat = (_listItemResponse$dat2 = listItemResponse.data) == null || (_listItemResponse$dat2 = _listItemResponse$dat2.d) == null ? void 0 : _listItemResponse$dat2.Id) != null ? _listItemResponse$dat : (_listItemResponse$dat3 = listItemResponse.data) == null ? void 0 : _listItemResponse$dat3.Id;
|
|
679
|
+
if (typeof deferredId !== 'undefined') {
|
|
680
|
+
response.itemId = deferredId;
|
|
681
|
+
}
|
|
682
|
+
case 7:
|
|
658
683
|
return _context.a(2, response);
|
|
659
684
|
}
|
|
660
685
|
}, _callee);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharepoint_requests.cjs.development.js","sources":["../src/root/instance.ts","../src/root/internal/digest.ts","../src/root/internal/listRequests/createListItem.ts","../src/root/internal/listRequests/createAttachment.ts","../src/root/internal/listRequests/deleteItem.ts","../src/root/internal/listRequests/utils.ts","../src/root/internal/listRequests/deleteFile.ts","../src/root/internal/odata.ts","../src/root/internal/listRequests/getFiles.ts","../src/root/internal/listRequests/getListItems.ts","../src/root/internal/listRequests/getOnly.ts","../src/root/internal/listRequests/updateListItem.ts","../src/root/internal/listRequests/uploadFile.ts","../src/root/internal/emailRequests.ts","../src/root/internal/userRequests.ts","../src/root/index.ts","../src/index.ts"],"sourcesContent":["import axios, { AxiosHeaders, CreateAxiosDefaults as AxiosConfig } from 'axios';\n\nconst defaultConfig: AxiosConfig = {\n headers: {\n Accept: 'application/json; odata=verbose',\n 'Content-Type': 'application/json; odata=verbose',\n },\n timeout: 15000,\n withCredentials: true,\n};\n\nexport const instance = (baseURL: string, config?: AxiosConfig) => {\n const userHeaders =\n config?.headers instanceof AxiosHeaders\n ? config.headers.toJSON()\n : config?.headers ?? {};\n\n return axios.create({\n ...defaultConfig,\n ...config,\n baseURL,\n headers: {\n ...defaultConfig.headers,\n ...userHeaders,\n },\n });\n};\n\nexport default instance;\n","import type { AxiosInstance } from 'axios';\n\nexport async function fetchDigest(\n instance: AxiosInstance,\n baseURL: string\n): Promise<string> {\n try {\n const response = await instance.post(`${baseURL}_api/contextinfo`);\n\n const formDigestValue =\n response.data?.d?.GetContextWebInformation?.FormDigestValue;\n\n if (!formDigestValue) {\n throw new Error('Invalid response structure: Missing FormDigestValue');\n }\n\n return formDigestValue;\n } catch (error) {\n console.error('Failed to retrieve the Form Digest Value:', error);\n throw new Error(`Error retrieving Form Digest Value`);\n }\n}\n","import type { ListData, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nasync function resolveMetadataType<V extends SHAREPOINT_VER>(\n context: RequestContext<V>\n) {\n if (context.resolveListItemEntityType) {\n return context.resolveListItemEntityType();\n }\n\n if (context.listItemEntityTypeFullName) {\n return context.listItemEntityTypeFullName;\n }\n\n return `SP.Data.${context.listName}ListItem`;\n}\n\nexport async function createListItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n listData: ListData\n) {\n const metadataType = await resolveMetadataType(context);\n const payload = {\n ...listData,\n __metadata: {\n type: metadataType,\n },\n };\n\n const response = await context.instance({\n url: context.endpoint,\n method: 'POST',\n data: JSON.stringify(payload),\n headers: {\n 'X-RequestDigest': await fetchDigest(context.instance, context.baseURL),\n },\n });\n\n return response;\n}\n","import type { CreateFileProps, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nexport async function createAttachment<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { file, itemId }: CreateFileProps\n) {\n const requestUrl = `_api/lists/getbytitle('${context.listName}')/items(${itemId})/AttachmentFiles/add(FileName='${file.name}')`;\n const response = await context.instance.post(requestUrl, file, {\n headers: {\n 'X-RequestDigest': await fetchDigest(context.instance, context.baseURL),\n },\n withCredentials: true,\n });\n\n return response;\n}\n","import type { SHAREPOINT_VER } from '../../../types';\nimport type { RequestContext } from '../context';\n\nexport async function deleteItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n id: number | string\n) {\n const response = await context.instance.delete(`${context.endpoint}(${id})`);\n return response;\n}\n","export function buildLibraryPath(folderPath?: string | string[]) {\n if (!folderPath) {\n return '';\n }\n\n const segments = Array.isArray(folderPath)\n ? folderPath\n : folderPath.split('/').filter(Boolean);\n\n if (!segments.length) {\n return '';\n }\n\n const escapedSegments = segments.map((segment) => {\n if (!segment.trim()) {\n throw new Error('Folder path segments cannot be empty.');\n }\n\n const sanitized = segment.replace(/'/g, \"''\");\n\n return `/Folders('${encodeURIComponent(sanitized)}')`;\n });\n\n return escapedSegments.join('');\n}\n\nexport function encodeFileName(fileName: string) {\n if (!fileName.trim()) {\n throw new Error('File name cannot be empty.');\n }\n\n return encodeURIComponent(fileName.replace(/'/g, \"''\"));\n}\n","import type { SHAREPOINT_VER, DeleteFileProps } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\nimport { buildLibraryPath, encodeFileName } from './utils';\n\nconst SUPPORTED_VERSION: SHAREPOINT_VER = '2013';\n\nexport async function deleteFile<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { fileName, folderPath }: DeleteFileProps\n) {\n if (context.sharepointVersion !== SUPPORTED_VERSION) {\n throw new Error(\n 'deleteFile is only supported for SharePoint 2013 REST endpoints.'\n );\n }\n\n const encodedFileName = encodeFileName(fileName);\n let requestUrl = `_api/web/lists/getbytitle('${context.listName}')/RootFolder`;\n requestUrl += buildLibraryPath(folderPath);\n requestUrl += `/Files('${encodedFileName}')`;\n\n const digest = await fetchDigest(context.instance, context.baseURL);\n\n const response = await context.instance.post(requestUrl, undefined, {\n headers: {\n 'X-HTTP-Method': 'DELETE',\n 'IF-MATCH': '*',\n 'X-RequestDigest': digest,\n },\n withCredentials: true,\n });\n\n return response;\n}\n","import type { Folder_Options, Options, SHAREPOINT_VER } from '../../types';\n\ntype QueryableOptions<T, V extends SHAREPOINT_VER = '2013'> =\n | Options<T, V>\n | Folder_Options<T>;\n\nexport function buildODataParams<T, V extends SHAREPOINT_VER = '2013'>(\n options: QueryableOptions<T, V> | undefined,\n orderBySeparator: ',' | ' ' = ','\n) {\n const { expand, orderBy, limit, filter, cols, skip } = options || {};\n\n const params: Record<string, string | number | undefined> = {\n $expand: Array.isArray(expand) ? expand.join(',') : expand,\n $top: limit,\n $skip: skip,\n $select: Array.isArray(cols) ? cols.join(',') : cols,\n $filter: filter,\n $orderby: Array.isArray(orderBy)\n ? orderBy.join(orderBySeparator)\n : orderBy,\n };\n\n return params;\n}\n\nexport function appendParamsToUrl(\n baseUrl: URL,\n params: Record<string, string | number | undefined | null>\n) {\n Object.entries(params).forEach(([key, value]) => {\n if (value !== undefined && value !== null) {\n baseUrl.searchParams.append(key, String(value));\n }\n });\n}\n","import type { Folder_Options, SHAREPOINT_VER } from '../../../types';\nimport { appendParamsToUrl, buildODataParams } from '../odata';\nimport type { RequestContext } from '../context';\n\nexport async function getFiles<\n T,\n V extends SHAREPOINT_VER = '2013'\n>(\n context: RequestContext<V>,\n options?: Folder_Options<T>\n) {\n const params = buildODataParams(options, ',');\n const url = new URL(context.endpoint, context.instance.defaults.baseURL);\n\n appendParamsToUrl(url, params);\n\n const response = await context.instance.request({\n url: context.endpoint,\n method: 'GET',\n params,\n });\n\n const data =\n options?.limit || !response.data.d.results\n ? response.data.d\n : response.data.d.results;\n\n const meta = { url };\n\n return { data, meta };\n}\n","import type { Options, SPItem, SHAREPOINT_VER } from '../../../types';\nimport { appendParamsToUrl, buildODataParams } from '../odata';\nimport type { RequestContext } from '../context';\n\nexport async function getListItems<\n K,\n V extends SHAREPOINT_VER = '2013'\n>(\n context: RequestContext<V>,\n options?: Options<K, V>\n): Promise<{ data: (K & Partial<SPItem<V>>)[]; meta: { url: URL } }> {\n const params = buildODataParams(options, ' ');\n\n const url = new URL(context.endpoint, context.instance.defaults.baseURL);\n appendParamsToUrl(url, params);\n\n const response = await context.instance.request({\n url: context.endpoint,\n method: 'GET',\n params,\n });\n\n const rawData = response.data?.d?.results ?? response.data?.d ?? response.data;\n const cols = options?.cols;\n const keys = cols\n ? (Array.isArray(cols) ? cols : [cols]).filter(Boolean)\n : undefined;\n\n const filterItem = (item: unknown) => {\n if (!keys || !item || typeof item !== 'object') {\n return item;\n }\n\n return keys.reduce<Record<string, unknown>>((acc, key) => {\n if (key in item) {\n acc[key] = (item as Record<string, unknown>)[key];\n }\n\n return acc;\n }, {});\n };\n\n const data = Array.isArray(rawData)\n ? rawData.map(filterItem)\n : filterItem(rawData);\n\n const meta = { url };\n\n return { data: data as (K & Partial<SPItem<V>>)[], meta };\n}\n","import type { AxiosInstance } from 'axios';\nimport type { Options, SHAREPOINT_VER } from '../../../types';\nimport { buildODataParams } from '../odata';\n\nexport async function getOnly<\n T,\n V extends SHAREPOINT_VER = '2013'\n>(\n instance: AxiosInstance,\n endpoint: string,\n options?: Options<T, V>\n) {\n const params = buildODataParams(options, ',');\n const { data } = await instance.get(endpoint, { params });\n if (data) {\n return data.d.results ? data.d.results : data.d;\n }\n}\n","import type { ListData, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nasync function resolveMetadataType<V extends SHAREPOINT_VER>(\n context: RequestContext<V>\n) {\n if (context.resolveListItemEntityType) {\n return context.resolveListItemEntityType();\n }\n\n if (context.listItemEntityTypeFullName) {\n return context.listItemEntityTypeFullName;\n }\n\n return `SP.Data.${context.listName}ListItem`;\n}\n\nexport async function updateListItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n id: number | string,\n data: ListData,\n digest?: string\n) {\n const formDigestValue =\n digest || (await fetchDigest(context.instance, context.baseURL));\n\n const metadataType = await resolveMetadataType(context);\n const payload = {\n ...data,\n __metadata: {\n type: metadataType,\n },\n };\n\n const url = `_api/lists/getbytitle('${context.listName}')/getItemById('${id}')`;\n\n const response = await context.instance({\n url,\n method: 'POST',\n data: JSON.stringify(payload),\n headers: {\n 'X-RequestDigest': formDigestValue,\n 'IF-MATCH': '*',\n 'X-Http-Method': 'PATCH',\n },\n });\n\n return response;\n}\n","import type { SHAREPOINT_VER, UploadFileProps } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\nimport { buildLibraryPath, encodeFileName } from './utils';\n\nconst SUPPORTED_VERSION: SHAREPOINT_VER = '2013';\n\nexport async function uploadFile<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { file, folderPath, overwrite = true }: UploadFileProps\n) {\n if (context.sharepointVersion !== SUPPORTED_VERSION) {\n throw new Error(\n 'uploadFile is only supported for SharePoint 2013 REST endpoints.'\n );\n }\n\n if (!file?.name) {\n throw new Error('A file with a valid name must be provided.');\n }\n\n let requestUrl = `_api/web/lists/getbytitle('${context.listName}')/RootFolder`;\n\n requestUrl += buildLibraryPath(folderPath);\n\n const encodedFileName = encodeFileName(file.name);\n requestUrl += `/Files/add(url='${encodedFileName}',overwrite=${\n overwrite ? 'true' : 'false'\n })`;\n\n const digest = await fetchDigest(context.instance, context.baseURL);\n\n const response = await context.instance.post(requestUrl, file, {\n headers: {\n 'Content-Type': file.type || 'application/octet-stream',\n 'X-RequestDigest': digest,\n },\n withCredentials: true,\n });\n\n return response;\n}\n","import type { AxiosResponse } from 'axios';\nimport type { EmailProps } from '../../types';\nimport { fetchDigest } from './digest';\nimport type { RequestContext } from './context';\n\ntype SendEmailResponse = AxiosResponse<{\n d: {\n SendEmail: null;\n };\n}>;\n\nexport async function sendEmail(\n context: RequestContext,\n { From, To, Subject, Body }: EmailProps\n): Promise<SendEmailResponse> {\n const httpRequest = '_api/SP.Utilities.Utility.SendEmail';\n\n const response = await context.instance({\n url: httpRequest,\n method: 'POST',\n headers: {\n 'X-RequestDigest': await fetchDigest(\n context.instance,\n context.baseURL\n ),\n 'X-Http-Method': 'POST',\n 'Content-Type': 'application/json;odata=verbose',\n },\n data: JSON.stringify({\n properties: {\n __metadata: {\n type: 'SP.Utilities.EmailProperties',\n },\n From,\n To: {\n results: Array.isArray(To) ? To : [To],\n },\n Body,\n Subject,\n },\n }),\n });\n\n return response;\n}\n","import type { AxiosInstance } from 'axios';\nimport type {\n PersonField,\n UserPermision,\n UserProfile,\n} from '../../types';\nimport type { RequestContext } from './context';\n\ntype RoleDefinition = {\n BasePermissions: {\n High: string;\n };\n};\n\nexport async function typeAhead(\n instance: AxiosInstance,\n input: string,\n filter?: string\n): Promise<PersonField> {\n const requestUrl = `_api/SP.UI.ApplicationPages.ClientPeoplePickerWebServiceInterface.clientPeoplePickerSearchUser`;\n\n const data = {\n queryParams: {\n __metadata: {\n type: 'SP.UI.ApplicationPages.ClientPeoplePickerQueryParameters',\n },\n AllowEmailAddresses: true,\n AllowMultipleEntities: false,\n AllUrlZones: false,\n MaximumEntitySuggestions: 10,\n PrincipalSource: 15,\n PrincipalType: 1,\n QueryString: input,\n },\n };\n\n if (filter) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (data.queryParams as any).RequiredProperties = [filter];\n }\n\n const response = await instance.post(requestUrl, JSON.stringify(data), {\n headers: {\n Accept: 'application/json; odata=verbose',\n 'Content-Type': 'application/json;odata=verbose',\n },\n });\n\n return response.data.d.ClientPeoplePickerSearchUser;\n}\n\nexport async function currentUserProperties(\n instance: AxiosInstance\n): Promise<UserProfile> {\n const requestUrl = '_api/sp.userprofiles.peoplemanager/getmyproperties';\n let profile: any = await instance.get(requestUrl);\n\n profile = profile.data.d;\n\n profile.UserProfileProperties.results.forEach(\n (prop: { Key: string; Value: string }) => {\n if (prop.Key === 'FirstName') {\n profile.FirstName = prop.Value;\n }\n if (prop.Key === 'LastName') {\n profile.LastName = prop.Value;\n }\n if (prop.Key === 'Country') {\n profile.Country = prop.Value;\n }\n if (prop.Key === 'UserName') {\n profile.UserName = prop.Value;\n }\n }\n );\n\n return profile;\n}\n\nexport async function getSiteUser(instance: AxiosInstance, searchValue: string) {\n const requestUrl = `_api/web/siteusers?&$filter=substringof('${searchValue}', Title) or substringof('${searchValue}', LoginName) or substringof('${searchValue}', Email)&$top=50&$expand=Groups`;\n const response = await instance.get(requestUrl);\n return response.data.d;\n}\n\nexport async function roleDefinitions(instance: AxiosInstance) {\n const requestUrl = `_api/Web/RoleDefinitions`;\n const response = await instance.get(requestUrl);\n return response.data.d.results as RoleDefinition[];\n}\n\nexport async function getEffectiveBasePermissions(instance: AxiosInstance) {\n const requestUrl = `_api/Web/effectiveBasePermissions`;\n const response = await instance.get(requestUrl);\n return response.data.d.EffectiveBasePermissions;\n}\n\nexport async function currentUserPermissions(\n context: RequestContext\n): Promise<UserPermision> {\n const { High } = await getEffectiveBasePermissions(context.instance);\n const definitions = await roleDefinitions(context.instance);\n\n const result = definitions.find(\n ({ BasePermissions }: RoleDefinition) => BasePermissions.High === High\n );\n\n return result as UserPermision;\n}\n","import { AxiosInstance, CreateAxiosDefaults as AxiosConfig } from 'axios';\nimport instance from './instance';\nimport {\n CreateFileProps,\n DeleteFileProps,\n CurrentUser,\n EmailProps,\n Field_Options,\n Folder_Options,\n UploadFileProps,\n IListName,\n ItemID,\n ListData,\n Options,\n PersonField,\n SHAREPOINT_VER,\n UserPermision,\n UserProfile,\n} from '../types';\nimport { RequestContext } from './internal/context';\nimport {\n createAttachment,\n createListItem,\n deleteItem,\n deleteFile as deleteLibraryFile,\n getFiles,\n getListItems,\n getOnly,\n updateListItem,\n uploadFile,\n} from './internal/listRequests';\nimport { sendEmail as sendEmailRequest } from './internal/emailRequests';\nimport {\n currentUserPermissions as resolveCurrentUserPermissions,\n currentUserProperties as loadCurrentUserProperties,\n getSiteUser as fetchSiteUser,\n typeAhead,\n} from './internal/userRequests';\nimport { fetchDigest } from './internal/digest';\n\nclass HTTPSharePointRequests<\n T extends {\n LISTS: Record<string, unknown>;\n FOLDERS?: Record<string, unknown>;\n }\n> {\n private baseURL: string;\n private endpoint: string;\n private listName: string;\n private instance: AxiosInstance;\n private sharepointVersion: SHAREPOINT_VER;\n private listItemEntityTypeFullName?: string;\n\n constructor(baseURL: string, config?: AxiosConfig) {\n this.baseURL = baseURL.endsWith('/') ? baseURL : `${baseURL}/`;\n this.endpoint = '/api';\n this.listName = '';\n this.instance = instance(this.baseURL, config);\n this.sharepointVersion = '2013';\n this.listItemEntityTypeFullName = undefined;\n }\n\n private getContext<V extends SHAREPOINT_VER = '2013'>(): RequestContext<V> {\n return {\n instance: this.instance,\n baseURL: this.baseURL,\n endpoint: this.endpoint,\n listName: this.listName,\n sharepointVersion: this.sharepointVersion as V,\n listItemEntityTypeFullName: this.listItemEntityTypeFullName,\n resolveListItemEntityType: this.resolveListItemEntityTypeFullName.bind(\n this\n ),\n };\n }\n\n private async resolveListItemEntityTypeFullName(): Promise<string> {\n if (this.listItemEntityTypeFullName) {\n return this.listItemEntityTypeFullName;\n }\n\n if (!this.listName) {\n throw new Error('List name is not set.');\n }\n\n if (this.sharepointVersion !== '2013') {\n this.listItemEntityTypeFullName = `SP.Data.${this.listName}ListItem`;\n return this.listItemEntityTypeFullName;\n }\n\n const response = await this.instance.get(\n `_api/web/lists/GetByTitle('${this.listName}')?$select=ListItemEntityTypeFullName`\n );\n\n const entityType =\n response.data?.d?.ListItemEntityTypeFullName ??\n response.data?.ListItemEntityTypeFullName;\n\n if (!entityType || typeof entityType !== 'string') {\n throw new Error(\n `Unable to resolve ListItemEntityTypeFullName for list \"${this.listName}\".`\n );\n }\n\n this.listItemEntityTypeFullName = entityType;\n return this.listItemEntityTypeFullName;\n }\n\n /**\n * @deprecated Use `from` instead.\n */\n list(listName: IListName<T>) {\n this.listName = listName;\n this.endpoint = `_vti_bin/ListData.svc/${listName}`;\n this.sharepointVersion = '2010';\n this.listItemEntityTypeFullName = undefined;\n return this;\n }\n\n public readonly lists = {\n get: () => {\n this.endpoint = '_api/web/lists';\n this.sharepointVersion = '2013';\n return getListItems(this.getContext());\n },\n };\n\n public getDigest() {\n return fetchDigest(this.instance, this.baseURL);\n }\n\n public from<\n K extends Extract<keyof T['LISTS'], string>,\n V extends SHAREPOINT_VER = '2013'\n >(listName: K, sharepoint_ver?: V) {\n const version = (sharepoint_ver ?? '2013') as V;\n\n this.listName = listName;\n this.sharepointVersion = version;\n this.listItemEntityTypeFullName = undefined;\n this.endpoint =\n version === '2013'\n ? `_api/web/lists/GetByTitle('${this.listName}')/items`\n : `_vti_bin/ListData.svc/${listName}`;\n\n const getContext = () => this.getContext<V>();\n\n return {\n create: (data: ListData) => createListItem(getContext(), data),\n get: (options?: Options<T['LISTS'][K], V>) =>\n getListItems<T['LISTS'][K], V>(getContext(), options),\n update: (id: ItemID, data: ListData, digest?: string) =>\n updateListItem(getContext(), id, data, digest),\n delete: (id: ItemID) => deleteItem(getContext(), id),\n createFile: (props: CreateFileProps) =>\n createAttachment(getContext(), props),\n uploadFile: (props: UploadFileProps) => uploadFile(getContext(), props),\n deleteFile: (props: DeleteFileProps) =>\n deleteLibraryFile(getContext(), props),\n fields: (options?: Field_Options<T['LISTS'][K], V>) => {\n this.endpoint = !options?.fieldName\n ? `_api/web/lists/GetByTitle('${this.listName}')/fields`\n : `_api/web/lists/GetByTitle('${this.listName}')/fields/getbytitle('${options.fieldName}')`;\n return {\n get: () =>\n getOnly<T['LISTS'][K], V>(this.instance, this.endpoint, options),\n };\n },\n };\n }\n\n public folders = {\n get: () => {\n this.endpoint = '_api/web/folders';\n this.sharepointVersion = '2013';\n getListItems(this.getContext());\n },\n };\n\n public folder(folderName?: string | string[]) {\n let filePath = ['Shared Documents'];\n\n if (folderName) {\n filePath = Array.isArray(folderName)\n ? [...filePath, ...folderName]\n : [...filePath, folderName];\n }\n\n this.endpoint = `_api/web/GetFolderByServerRelativeUrl('${filePath.join(\n '/'\n )}')`;\n this.sharepointVersion = '2013';\n\n const getContext = () => this.getContext();\n\n return {\n get: (options?: Folder_Options<any>) => {\n if (!options?.type) {\n this.endpoint += '/Files';\n } else {\n this.endpoint += `/${options.type}`;\n }\n return getFiles(getContext(), options);\n },\n };\n }\n\n public users(options?: Options<any>) {\n this.endpoint = '_api/web/SiteUserInfoList/items';\n this.sharepointVersion = '2013';\n return {\n get: () => getListItems(this.getContext(), options),\n };\n }\n\n public email = {\n send: (props: EmailProps) => {\n this.sharepointVersion = '2013';\n return sendEmailRequest(this.getContext(), props);\n },\n };\n\n public user = {\n properties: () => ({\n get: (): Promise<UserProfile> => {\n this.sharepointVersion = '2013';\n return loadCurrentUserProperties(this.instance);\n },\n }),\n searchSiteUser: (searchValue: string) => {\n this.sharepointVersion = '2013';\n return fetchSiteUser(this.instance, searchValue);\n },\n searchUser: (input: string, filter?: string): Promise<PersonField> => {\n this.sharepointVersion = '2013';\n return typeAhead(this.instance, input, filter);\n },\n current: () => {\n this.endpoint = '_api/web/currentUser';\n this.sharepointVersion = '2013';\n return {\n get: (): Promise<CurrentUser> => getOnly(this.instance, this.endpoint),\n };\n },\n currentPermission: () => ({\n get: (): Promise<UserPermision> => {\n this.sharepointVersion = '2013';\n return resolveCurrentUserPermissions(this.getContext());\n },\n }),\n };\n}\n\nexport default HTTPSharePointRequests;\n","import SHAREPOINT_REQUESTS from './root';\n\nimport type { CreateAxiosDefaults as AxiosConfig } from 'axios';\nimport type { LookupField, ChoiceField, PersonField } from './types';\n\n// Load environment variables from .env file\n\nexport default function createBase<\n T extends { LISTS: Record<string, any>; FOLDERS?: Record<string, any> } = any\n>(){\n function create({\n baseURL,\n config,\n }: {\n baseURL: string;\n config?: AxiosConfig;\n }) {\n if (!baseURL) {\n throw new Error('A valid SharePoint URL must be provided.');\n }\n return new SHAREPOINT_REQUESTS<T>(baseURL, config);\n }\n\n return {\n /**\n * @deprecated Use `create` instead.\n */\n baseURL(url: string, config?: AxiosConfig) {\n return create({ baseURL: url, config });\n },\n create,\n };\n}\n\nexport { LookupField, ChoiceField, PersonField };\n\n\n"],"names":["defaultConfig","headers","Accept","timeout","withCredentials","instance","baseURL","config","userHeaders","AxiosHeaders","toJSON","_config$headers","axios","create","_extends","fetchDigest","_x","_x2","_fetchDigest","apply","arguments","_asyncToGenerator","_regenerator","m","_callee","_response$data","response","formDigestValue","_t","w","_context","p","n","post","v","data","d","GetContextWebInformation","FormDigestValue","Error","a","console","error","resolveMetadataType","_resolveMetadataType","context","resolveListItemEntityType","listItemEntityTypeFullName","listName","createListItem","_x3","_createListItem","_callee2","listData","metadataType","payload","_t2","_t3","_t4","_t5","_context2","__metadata","type","endpoint","JSON","stringify","call","url","method","createAttachment","_createAttachment","_ref","file","itemId","requestUrl","name","deleteItem","_deleteItem","id","buildLibraryPath","folderPath","segments","Array","isArray","split","filter","Boolean","length","escapedSegments","map","segment","trim","sanitized","replace","encodeURIComponent","join","encodeFileName","fileName","SUPPORTED_VERSION","deleteFile","_deleteFile","encodedFileName","digest","sharepointVersion","undefined","buildODataParams","options","orderBySeparator","expand","orderBy","limit","cols","skip","params","$expand","$top","$skip","$select","$filter","$orderby","appendParamsToUrl","baseUrl","Object","entries","forEach","_ref2","key","value","searchParams","append","String","getFiles","_getFiles","meta","URL","defaults","request","results","getListItems","_getListItems","_response$data$d$resu","_response$data2","rawData","keys","filterItem","item","reduce","acc","getOnly","_getOnly","_yield$instance$get","get","updateListItem","_x4","_x5","_updateListItem","uploadFile","_uploadFile","_ref$overwrite","overwrite","sendEmail","_sendEmail","From","To","Subject","Body","httpRequest","properties","typeAhead","_typeAhead","input","queryParams","AllowEmailAddresses","AllowMultipleEntities","AllUrlZones","MaximumEntitySuggestions","PrincipalSource","PrincipalType","QueryString","RequiredProperties","ClientPeoplePickerSearchUser","currentUserProperties","_currentUserProperties","profile","UserProfileProperties","prop","Key","FirstName","Value","LastName","Country","UserName","getSiteUser","_x6","_getSiteUser","_callee3","searchValue","_context3","roleDefinitions","_x7","_roleDefinitions","_callee4","_context4","getEffectiveBasePermissions","_x8","_getEffectiveBasePermissions","_callee5","_context5","EffectiveBasePermissions","currentUserPermissions","_x9","_currentUserPermissions","_callee6","_yield$getEffectiveBa","High","definitions","result","_context6","find","BasePermissions","HTTPSharePointRequests","lists","_this","getContext","folders","email","send","props","sendEmailRequest","user","loadCurrentUserProperties","searchSiteUser","fetchSiteUser","searchUser","current","currentPermission","resolveCurrentUserPermissions","endsWith","_proto","prototype","resolveListItemEntityTypeFullName","bind","_resolveListItemEntityTypeFullName","_response$data$d$List","entityType","ListItemEntityTypeFullName","list","getDigest","from","sharepoint_ver","version","_this2","update","delete","createFile","deleteLibraryFile","fields","fieldName","folder","folderName","filePath","concat","_this3","users","_this4","createBase","SHAREPOINT_REQUESTS"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sharepoint_requests.cjs.development.js","sources":["../src/root/instance.ts","../src/root/internal/digest.ts","../src/root/internal/listRequests/createListItem.ts","../src/root/internal/listRequests/createAttachment.ts","../src/root/internal/listRequests/deleteItem.ts","../src/root/internal/listRequests/utils.ts","../src/root/internal/listRequests/deleteFile.ts","../src/root/internal/odata.ts","../src/root/internal/listRequests/getFiles.ts","../src/root/internal/listRequests/getListItems.ts","../src/root/internal/listRequests/getOnly.ts","../src/root/internal/listRequests/updateListItem.ts","../src/root/internal/listRequests/uploadFile.ts","../src/root/internal/emailRequests.ts","../src/root/internal/userRequests.ts","../src/root/index.ts","../src/index.ts"],"sourcesContent":["import axios, { AxiosHeaders, CreateAxiosDefaults as AxiosConfig } from 'axios';\n\nconst defaultConfig: AxiosConfig = {\n headers: {\n Accept: 'application/json; odata=verbose',\n 'Content-Type': 'application/json; odata=verbose',\n },\n timeout: 15000,\n withCredentials: true,\n};\n\nexport const instance = (baseURL: string, config?: AxiosConfig) => {\n const userHeaders =\n config?.headers instanceof AxiosHeaders\n ? config.headers.toJSON()\n : config?.headers ?? {};\n\n return axios.create({\n ...defaultConfig,\n ...config,\n baseURL,\n headers: {\n ...defaultConfig.headers,\n ...userHeaders,\n },\n });\n};\n\nexport default instance;\n","import type { AxiosInstance } from 'axios';\n\nexport async function fetchDigest(\n instance: AxiosInstance,\n baseURL: string\n): Promise<string> {\n try {\n const response = await instance.post(`${baseURL}_api/contextinfo`);\n\n const formDigestValue =\n response.data?.d?.GetContextWebInformation?.FormDigestValue;\n\n if (!formDigestValue) {\n throw new Error('Invalid response structure: Missing FormDigestValue');\n }\n\n return formDigestValue;\n } catch (error) {\n console.error('Failed to retrieve the Form Digest Value:', error);\n throw new Error(`Error retrieving Form Digest Value`);\n }\n}\n","import type { ListData, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nasync function resolveMetadataType<V extends SHAREPOINT_VER>(\n context: RequestContext<V>\n) {\n if (context.resolveListItemEntityType) {\n return context.resolveListItemEntityType();\n }\n\n if (context.listItemEntityTypeFullName) {\n return context.listItemEntityTypeFullName;\n }\n\n return `SP.Data.${context.listName}ListItem`;\n}\n\nexport async function createListItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n listData: ListData\n) {\n const metadataType = await resolveMetadataType(context);\n const payload = {\n ...listData,\n __metadata: {\n type: metadataType,\n },\n };\n\n const response = await context.instance({\n url: context.endpoint,\n method: 'POST',\n data: JSON.stringify(payload),\n headers: {\n 'X-RequestDigest': await fetchDigest(context.instance, context.baseURL),\n },\n });\n\n return response;\n}\n","import type { CreateFileProps, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nexport async function createAttachment<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { file, itemId }: CreateFileProps\n) {\n const requestUrl = `_api/lists/getbytitle('${context.listName}')/items(${itemId})/AttachmentFiles/add(FileName='${file.name}')`;\n const response = await context.instance.post(requestUrl, file, {\n headers: {\n 'X-RequestDigest': await fetchDigest(context.instance, context.baseURL),\n },\n withCredentials: true,\n });\n\n return response;\n}\n","import type { SHAREPOINT_VER } from '../../../types';\nimport type { RequestContext } from '../context';\n\nexport async function deleteItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n id: number | string\n) {\n const response = await context.instance.delete(`${context.endpoint}(${id})`);\n return response;\n}\n","export function buildLibraryPath(folderPath?: string | string[]) {\n if (!folderPath) {\n return '';\n }\n\n const segments = Array.isArray(folderPath)\n ? folderPath\n : folderPath.split('/').filter(Boolean);\n\n if (!segments.length) {\n return '';\n }\n\n const escapedSegments = segments.map((segment) => {\n if (!segment.trim()) {\n throw new Error('Folder path segments cannot be empty.');\n }\n\n const sanitized = segment.replace(/'/g, \"''\");\n\n return `/Folders('${encodeURIComponent(sanitized)}')`;\n });\n\n return escapedSegments.join('');\n}\n\nexport function encodeFileName(fileName: string) {\n if (!fileName.trim()) {\n throw new Error('File name cannot be empty.');\n }\n\n return encodeURIComponent(fileName.replace(/'/g, \"''\"));\n}\n","import type { SHAREPOINT_VER, DeleteFileProps } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\nimport { buildLibraryPath, encodeFileName } from './utils';\n\nconst SUPPORTED_VERSION: SHAREPOINT_VER = '2013';\n\nexport async function deleteFile<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { fileName, folderPath }: DeleteFileProps\n) {\n if (context.sharepointVersion !== SUPPORTED_VERSION) {\n throw new Error(\n 'deleteFile is only supported for SharePoint 2013 REST endpoints.'\n );\n }\n\n const encodedFileName = encodeFileName(fileName);\n let requestUrl = `_api/web/lists/getbytitle('${context.listName}')/RootFolder`;\n requestUrl += buildLibraryPath(folderPath);\n requestUrl += `/Files('${encodedFileName}')`;\n\n const digest = await fetchDigest(context.instance, context.baseURL);\n\n const response = await context.instance.post(requestUrl, undefined, {\n headers: {\n 'X-HTTP-Method': 'DELETE',\n 'IF-MATCH': '*',\n 'X-RequestDigest': digest,\n },\n withCredentials: true,\n });\n\n return response;\n}\n","import type { Folder_Options, Options, SHAREPOINT_VER } from '../../types';\n\ntype QueryableOptions<T, V extends SHAREPOINT_VER = '2013'> =\n | Options<T, V>\n | Folder_Options<T>;\n\nexport function buildODataParams<T, V extends SHAREPOINT_VER = '2013'>(\n options: QueryableOptions<T, V> | undefined,\n orderBySeparator: ',' | ' ' = ','\n) {\n const { expand, orderBy, limit, filter, cols, skip } = options || {};\n\n const params: Record<string, string | number | undefined> = {\n $expand: Array.isArray(expand) ? expand.join(',') : expand,\n $top: limit,\n $skip: skip,\n $select: Array.isArray(cols) ? cols.join(',') : cols,\n $filter: filter,\n $orderby: Array.isArray(orderBy)\n ? orderBy.join(orderBySeparator)\n : orderBy,\n };\n\n return params;\n}\n\nexport function appendParamsToUrl(\n baseUrl: URL,\n params: Record<string, string | number | undefined | null>\n) {\n Object.entries(params).forEach(([key, value]) => {\n if (value !== undefined && value !== null) {\n baseUrl.searchParams.append(key, String(value));\n }\n });\n}\n","import type { Folder_Options, SHAREPOINT_VER } from '../../../types';\nimport { appendParamsToUrl, buildODataParams } from '../odata';\nimport type { RequestContext } from '../context';\n\nexport async function getFiles<\n T,\n V extends SHAREPOINT_VER = '2013'\n>(\n context: RequestContext<V>,\n options?: Folder_Options<T>\n) {\n const params = buildODataParams(options, ',');\n const url = new URL(context.endpoint, context.instance.defaults.baseURL);\n\n appendParamsToUrl(url, params);\n\n const response = await context.instance.request({\n url: context.endpoint,\n method: 'GET',\n params,\n });\n\n const data =\n options?.limit || !response.data.d.results\n ? response.data.d\n : response.data.d.results;\n\n const meta = { url };\n\n return { data, meta };\n}\n","import type { Options, SPItem, SHAREPOINT_VER } from '../../../types';\nimport { appendParamsToUrl, buildODataParams } from '../odata';\nimport type { RequestContext } from '../context';\n\nexport async function getListItems<\n K,\n V extends SHAREPOINT_VER = '2013'\n>(\n context: RequestContext<V>,\n options?: Options<K, V>\n): Promise<{ data: (K & Partial<SPItem<V>>)[]; meta: { url: URL } }> {\n const params = buildODataParams(options, ' ');\n\n const url = new URL(context.endpoint, context.instance.defaults.baseURL);\n appendParamsToUrl(url, params);\n\n const response = await context.instance.request({\n url: context.endpoint,\n method: 'GET',\n params,\n });\n\n const rawData = response.data?.d?.results ?? response.data?.d ?? response.data;\n const cols = options?.cols;\n const keys = cols\n ? (Array.isArray(cols) ? cols : [cols]).filter(Boolean)\n : undefined;\n\n const filterItem = (item: unknown) => {\n if (!keys || !item || typeof item !== 'object') {\n return item;\n }\n\n return keys.reduce<Record<string, unknown>>((acc, key) => {\n if (key in item) {\n acc[key] = (item as Record<string, unknown>)[key];\n }\n\n return acc;\n }, {});\n };\n\n const data = Array.isArray(rawData)\n ? rawData.map(filterItem)\n : filterItem(rawData);\n\n const meta = { url };\n\n return { data: data as (K & Partial<SPItem<V>>)[], meta };\n}\n","import type { AxiosInstance } from 'axios';\nimport type { Options, SHAREPOINT_VER } from '../../../types';\nimport { buildODataParams } from '../odata';\n\nexport async function getOnly<\n T,\n V extends SHAREPOINT_VER = '2013'\n>(\n instance: AxiosInstance,\n endpoint: string,\n options?: Options<T, V>\n) {\n const params = buildODataParams(options, ',');\n const { data } = await instance.get(endpoint, { params });\n if (data) {\n return data.d.results ? data.d.results : data.d;\n }\n}\n","import type { ListData, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nasync function resolveMetadataType<V extends SHAREPOINT_VER>(\n context: RequestContext<V>\n) {\n if (context.resolveListItemEntityType) {\n return context.resolveListItemEntityType();\n }\n\n if (context.listItemEntityTypeFullName) {\n return context.listItemEntityTypeFullName;\n }\n\n return `SP.Data.${context.listName}ListItem`;\n}\n\nexport async function updateListItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n id: number | string,\n data: ListData,\n digest?: string\n) {\n const formDigestValue =\n digest || (await fetchDigest(context.instance, context.baseURL));\n\n const metadataType = await resolveMetadataType(context);\n const payload = {\n ...data,\n __metadata: {\n type: metadataType,\n },\n };\n\n const url = `_api/lists/getbytitle('${context.listName}')/getItemById('${id}')`;\n\n const response = await context.instance({\n url,\n method: 'POST',\n data: JSON.stringify(payload),\n headers: {\n 'X-RequestDigest': formDigestValue,\n 'IF-MATCH': '*',\n 'X-Http-Method': 'PATCH',\n },\n });\n\n return response;\n}\n","import type { AxiosResponse } from 'axios';\nimport type {\n ItemID,\n SHAREPOINT_VER,\n UploadFileProps,\n} from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\nimport { buildLibraryPath, encodeFileName } from './utils';\n\nconst SUPPORTED_VERSION: SHAREPOINT_VER = '2013';\n\nexport async function uploadFile<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { file, folderPath, overwrite = true }: UploadFileProps\n): Promise<AxiosResponse & { itemId?: ItemID }> {\n if (context.sharepointVersion !== SUPPORTED_VERSION) {\n throw new Error(\n 'uploadFile is only supported for SharePoint 2013 REST endpoints.'\n );\n }\n\n if (!file?.name) {\n throw new Error('A file with a valid name must be provided.');\n }\n\n let requestUrl = `_api/web/lists/getbytitle('${context.listName}')/RootFolder`;\n\n requestUrl += buildLibraryPath(folderPath);\n\n const encodedFileName = encodeFileName(file.name);\n requestUrl += `/Files/add(url='${encodedFileName}',overwrite=${\n overwrite ? 'true' : 'false'\n })?$expand=ListItemAllFields&$select=ListItemAllFields/Id`;\n\n const digest = await fetchDigest(context.instance, context.baseURL);\n\n const response = (await context.instance.post(requestUrl, file, {\n headers: {\n 'Content-Type': file.type || 'application/octet-stream',\n 'X-RequestDigest': digest,\n },\n withCredentials: true,\n })) as AxiosResponse & { itemId?: ItemID };\n\n const responseData = response.data?.d ?? response.data;\n const listItemFields = responseData?.ListItemAllFields;\n const itemId =\n listItemFields?.Id ??\n listItemFields?.ID ??\n responseData?.Id ??\n responseData?.ID;\n\n if (typeof itemId !== 'undefined') {\n response.itemId = itemId;\n } else if (listItemFields?.__deferred?.uri) {\n const listItemResponse = await context.instance.get(\n listItemFields.__deferred.uri\n );\n const deferredId =\n listItemResponse.data?.d?.Id ?? listItemResponse.data?.Id;\n\n if (typeof deferredId !== 'undefined') {\n response.itemId = deferredId;\n }\n }\n\n return response;\n}\n","import type { AxiosResponse } from 'axios';\nimport type { EmailProps } from '../../types';\nimport { fetchDigest } from './digest';\nimport type { RequestContext } from './context';\n\ntype SendEmailResponse = AxiosResponse<{\n d: {\n SendEmail: null;\n };\n}>;\n\nexport async function sendEmail(\n context: RequestContext,\n { From, To, Subject, Body }: EmailProps\n): Promise<SendEmailResponse> {\n const httpRequest = '_api/SP.Utilities.Utility.SendEmail';\n\n const response = await context.instance({\n url: httpRequest,\n method: 'POST',\n headers: {\n 'X-RequestDigest': await fetchDigest(\n context.instance,\n context.baseURL\n ),\n 'X-Http-Method': 'POST',\n 'Content-Type': 'application/json;odata=verbose',\n },\n data: JSON.stringify({\n properties: {\n __metadata: {\n type: 'SP.Utilities.EmailProperties',\n },\n From,\n To: {\n results: Array.isArray(To) ? To : [To],\n },\n Body,\n Subject,\n },\n }),\n });\n\n return response;\n}\n","import type { AxiosInstance } from 'axios';\nimport type {\n PersonField,\n UserPermision,\n UserProfile,\n} from '../../types';\nimport type { RequestContext } from './context';\n\ntype RoleDefinition = {\n BasePermissions: {\n High: string;\n };\n};\n\nexport async function typeAhead(\n instance: AxiosInstance,\n input: string,\n filter?: string\n): Promise<PersonField> {\n const requestUrl = `_api/SP.UI.ApplicationPages.ClientPeoplePickerWebServiceInterface.clientPeoplePickerSearchUser`;\n\n const data = {\n queryParams: {\n __metadata: {\n type: 'SP.UI.ApplicationPages.ClientPeoplePickerQueryParameters',\n },\n AllowEmailAddresses: true,\n AllowMultipleEntities: false,\n AllUrlZones: false,\n MaximumEntitySuggestions: 10,\n PrincipalSource: 15,\n PrincipalType: 1,\n QueryString: input,\n },\n };\n\n if (filter) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (data.queryParams as any).RequiredProperties = [filter];\n }\n\n const response = await instance.post(requestUrl, JSON.stringify(data), {\n headers: {\n Accept: 'application/json; odata=verbose',\n 'Content-Type': 'application/json;odata=verbose',\n },\n });\n\n return response.data.d.ClientPeoplePickerSearchUser;\n}\n\nexport async function currentUserProperties(\n instance: AxiosInstance\n): Promise<UserProfile> {\n const requestUrl = '_api/sp.userprofiles.peoplemanager/getmyproperties';\n let profile: any = await instance.get(requestUrl);\n\n profile = profile.data.d;\n\n profile.UserProfileProperties.results.forEach(\n (prop: { Key: string; Value: string }) => {\n if (prop.Key === 'FirstName') {\n profile.FirstName = prop.Value;\n }\n if (prop.Key === 'LastName') {\n profile.LastName = prop.Value;\n }\n if (prop.Key === 'Country') {\n profile.Country = prop.Value;\n }\n if (prop.Key === 'UserName') {\n profile.UserName = prop.Value;\n }\n }\n );\n\n return profile;\n}\n\nexport async function getSiteUser(instance: AxiosInstance, searchValue: string) {\n const requestUrl = `_api/web/siteusers?&$filter=substringof('${searchValue}', Title) or substringof('${searchValue}', LoginName) or substringof('${searchValue}', Email)&$top=50&$expand=Groups`;\n const response = await instance.get(requestUrl);\n return response.data.d;\n}\n\nexport async function roleDefinitions(instance: AxiosInstance) {\n const requestUrl = `_api/Web/RoleDefinitions`;\n const response = await instance.get(requestUrl);\n return response.data.d.results as RoleDefinition[];\n}\n\nexport async function getEffectiveBasePermissions(instance: AxiosInstance) {\n const requestUrl = `_api/Web/effectiveBasePermissions`;\n const response = await instance.get(requestUrl);\n return response.data.d.EffectiveBasePermissions;\n}\n\nexport async function currentUserPermissions(\n context: RequestContext\n): Promise<UserPermision> {\n const { High } = await getEffectiveBasePermissions(context.instance);\n const definitions = await roleDefinitions(context.instance);\n\n const result = definitions.find(\n ({ BasePermissions }: RoleDefinition) => BasePermissions.High === High\n );\n\n return result as UserPermision;\n}\n","import { AxiosInstance, CreateAxiosDefaults as AxiosConfig } from 'axios';\nimport instance from './instance';\nimport {\n CreateFileProps,\n DeleteFileProps,\n CurrentUser,\n EmailProps,\n Field_Options,\n Folder_Options,\n UploadFileProps,\n IListName,\n ItemID,\n ListData,\n Options,\n PersonField,\n SHAREPOINT_VER,\n UserPermision,\n UserProfile,\n} from '../types';\nimport { RequestContext } from './internal/context';\nimport {\n createAttachment,\n createListItem,\n deleteItem,\n deleteFile as deleteLibraryFile,\n getFiles,\n getListItems,\n getOnly,\n updateListItem,\n uploadFile,\n} from './internal/listRequests';\nimport { sendEmail as sendEmailRequest } from './internal/emailRequests';\nimport {\n currentUserPermissions as resolveCurrentUserPermissions,\n currentUserProperties as loadCurrentUserProperties,\n getSiteUser as fetchSiteUser,\n typeAhead,\n} from './internal/userRequests';\nimport { fetchDigest } from './internal/digest';\n\nclass HTTPSharePointRequests<\n T extends {\n LISTS: Record<string, unknown>;\n FOLDERS?: Record<string, unknown>;\n }\n> {\n private baseURL: string;\n private endpoint: string;\n private listName: string;\n private instance: AxiosInstance;\n private sharepointVersion: SHAREPOINT_VER;\n private listItemEntityTypeFullName?: string;\n\n constructor(baseURL: string, config?: AxiosConfig) {\n this.baseURL = baseURL.endsWith('/') ? baseURL : `${baseURL}/`;\n this.endpoint = '/api';\n this.listName = '';\n this.instance = instance(this.baseURL, config);\n this.sharepointVersion = '2013';\n this.listItemEntityTypeFullName = undefined;\n }\n\n private getContext<V extends SHAREPOINT_VER = '2013'>(): RequestContext<V> {\n return {\n instance: this.instance,\n baseURL: this.baseURL,\n endpoint: this.endpoint,\n listName: this.listName,\n sharepointVersion: this.sharepointVersion as V,\n listItemEntityTypeFullName: this.listItemEntityTypeFullName,\n resolveListItemEntityType: this.resolveListItemEntityTypeFullName.bind(\n this\n ),\n };\n }\n\n private async resolveListItemEntityTypeFullName(): Promise<string> {\n if (this.listItemEntityTypeFullName) {\n return this.listItemEntityTypeFullName;\n }\n\n if (!this.listName) {\n throw new Error('List name is not set.');\n }\n\n if (this.sharepointVersion !== '2013') {\n this.listItemEntityTypeFullName = `SP.Data.${this.listName}ListItem`;\n return this.listItemEntityTypeFullName;\n }\n\n const response = await this.instance.get(\n `_api/web/lists/GetByTitle('${this.listName}')?$select=ListItemEntityTypeFullName`\n );\n\n const entityType =\n response.data?.d?.ListItemEntityTypeFullName ??\n response.data?.ListItemEntityTypeFullName;\n\n if (!entityType || typeof entityType !== 'string') {\n throw new Error(\n `Unable to resolve ListItemEntityTypeFullName for list \"${this.listName}\".`\n );\n }\n\n this.listItemEntityTypeFullName = entityType;\n return this.listItemEntityTypeFullName;\n }\n\n /**\n * @deprecated Use `from` instead.\n */\n list(listName: IListName<T>) {\n this.listName = listName;\n this.endpoint = `_vti_bin/ListData.svc/${listName}`;\n this.sharepointVersion = '2010';\n this.listItemEntityTypeFullName = undefined;\n return this;\n }\n\n public readonly lists = {\n get: () => {\n this.endpoint = '_api/web/lists';\n this.sharepointVersion = '2013';\n return getListItems(this.getContext());\n },\n };\n\n public getDigest() {\n return fetchDigest(this.instance, this.baseURL);\n }\n\n public from<\n K extends Extract<keyof T['LISTS'], string>,\n V extends SHAREPOINT_VER = '2013'\n >(listName: K, sharepoint_ver?: V) {\n const version = (sharepoint_ver ?? '2013') as V;\n\n this.listName = listName;\n this.sharepointVersion = version;\n this.listItemEntityTypeFullName = undefined;\n this.endpoint =\n version === '2013'\n ? `_api/web/lists/GetByTitle('${this.listName}')/items`\n : `_vti_bin/ListData.svc/${listName}`;\n\n const getContext = () => this.getContext<V>();\n\n return {\n create: (data: ListData) => createListItem(getContext(), data),\n get: (options?: Options<T['LISTS'][K], V>) =>\n getListItems<T['LISTS'][K], V>(getContext(), options),\n update: (id: ItemID, data: ListData, digest?: string) =>\n updateListItem(getContext(), id, data, digest),\n delete: (id: ItemID) => deleteItem(getContext(), id),\n createFile: (props: CreateFileProps) =>\n createAttachment(getContext(), props),\n uploadFile: (props: UploadFileProps) => uploadFile(getContext(), props),\n deleteFile: (props: DeleteFileProps) =>\n deleteLibraryFile(getContext(), props),\n fields: (options?: Field_Options<T['LISTS'][K], V>) => {\n this.endpoint = !options?.fieldName\n ? `_api/web/lists/GetByTitle('${this.listName}')/fields`\n : `_api/web/lists/GetByTitle('${this.listName}')/fields/getbytitle('${options.fieldName}')`;\n return {\n get: () =>\n getOnly<T['LISTS'][K], V>(this.instance, this.endpoint, options),\n };\n },\n };\n }\n\n public folders = {\n get: () => {\n this.endpoint = '_api/web/folders';\n this.sharepointVersion = '2013';\n getListItems(this.getContext());\n },\n };\n\n public folder(folderName?: string | string[]) {\n let filePath = ['Shared Documents'];\n\n if (folderName) {\n filePath = Array.isArray(folderName)\n ? [...filePath, ...folderName]\n : [...filePath, folderName];\n }\n\n this.endpoint = `_api/web/GetFolderByServerRelativeUrl('${filePath.join(\n '/'\n )}')`;\n this.sharepointVersion = '2013';\n\n const getContext = () => this.getContext();\n\n return {\n get: (options?: Folder_Options<any>) => {\n if (!options?.type) {\n this.endpoint += '/Files';\n } else {\n this.endpoint += `/${options.type}`;\n }\n return getFiles(getContext(), options);\n },\n };\n }\n\n public users(options?: Options<any>) {\n this.endpoint = '_api/web/SiteUserInfoList/items';\n this.sharepointVersion = '2013';\n return {\n get: () => getListItems(this.getContext(), options),\n };\n }\n\n public email = {\n send: (props: EmailProps) => {\n this.sharepointVersion = '2013';\n return sendEmailRequest(this.getContext(), props);\n },\n };\n\n public user = {\n properties: () => ({\n get: (): Promise<UserProfile> => {\n this.sharepointVersion = '2013';\n return loadCurrentUserProperties(this.instance);\n },\n }),\n searchSiteUser: (searchValue: string) => {\n this.sharepointVersion = '2013';\n return fetchSiteUser(this.instance, searchValue);\n },\n searchUser: (input: string, filter?: string): Promise<PersonField> => {\n this.sharepointVersion = '2013';\n return typeAhead(this.instance, input, filter);\n },\n current: () => {\n this.endpoint = '_api/web/currentUser';\n this.sharepointVersion = '2013';\n return {\n get: (): Promise<CurrentUser> => getOnly(this.instance, this.endpoint),\n };\n },\n currentPermission: () => ({\n get: (): Promise<UserPermision> => {\n this.sharepointVersion = '2013';\n return resolveCurrentUserPermissions(this.getContext());\n },\n }),\n };\n}\n\nexport default HTTPSharePointRequests;\n","import SHAREPOINT_REQUESTS from './root';\n\nimport type { CreateAxiosDefaults as AxiosConfig } from 'axios';\nimport type { LookupField, ChoiceField, PersonField } from './types';\n\n// Load environment variables from .env file\n\nexport default function createBase<\n T extends { LISTS: Record<string, any>; FOLDERS?: Record<string, any> } = any\n>(){\n function create({\n baseURL,\n config,\n }: {\n baseURL: string;\n config?: AxiosConfig;\n }) {\n if (!baseURL) {\n throw new Error('A valid SharePoint URL must be provided.');\n }\n return new SHAREPOINT_REQUESTS<T>(baseURL, config);\n }\n\n return {\n /**\n * @deprecated Use `create` instead.\n */\n baseURL(url: string, config?: AxiosConfig) {\n return create({ baseURL: url, config });\n },\n create,\n };\n}\n\nexport { LookupField, ChoiceField, PersonField };\n\n\n"],"names":["defaultConfig","headers","Accept","timeout","withCredentials","instance","baseURL","config","userHeaders","AxiosHeaders","toJSON","_config$headers","axios","create","_extends","fetchDigest","_x","_x2","_fetchDigest","apply","arguments","_asyncToGenerator","_regenerator","m","_callee","_response$data","response","formDigestValue","_t","w","_context","p","n","post","v","data","d","GetContextWebInformation","FormDigestValue","Error","a","console","error","resolveMetadataType","_resolveMetadataType","context","resolveListItemEntityType","listItemEntityTypeFullName","listName","createListItem","_x3","_createListItem","_callee2","listData","metadataType","payload","_t2","_t3","_t4","_t5","_context2","__metadata","type","endpoint","JSON","stringify","call","url","method","createAttachment","_createAttachment","_ref","file","itemId","requestUrl","name","deleteItem","_deleteItem","id","buildLibraryPath","folderPath","segments","Array","isArray","split","filter","Boolean","length","escapedSegments","map","segment","trim","sanitized","replace","encodeURIComponent","join","encodeFileName","fileName","SUPPORTED_VERSION","deleteFile","_deleteFile","encodedFileName","digest","sharepointVersion","undefined","buildODataParams","options","orderBySeparator","expand","orderBy","limit","cols","skip","params","$expand","$top","$skip","$select","$filter","$orderby","appendParamsToUrl","baseUrl","Object","entries","forEach","_ref2","key","value","searchParams","append","String","getFiles","_getFiles","meta","URL","defaults","request","results","getListItems","_getListItems","_response$data$d$resu","_response$data2","rawData","keys","filterItem","item","reduce","acc","getOnly","_getOnly","_yield$instance$get","get","updateListItem","_x4","_x5","_updateListItem","uploadFile","_uploadFile","_response$data$d","_ref3","_listItemFields$Id","_listItemFields$__def","_ref$overwrite","overwrite","responseData","listItemFields","_listItemResponse$dat","_listItemResponse$dat2","_listItemResponse$dat3","listItemResponse","deferredId","ListItemAllFields","Id","ID","__deferred","uri","sendEmail","_sendEmail","From","To","Subject","Body","httpRequest","properties","typeAhead","_typeAhead","input","queryParams","AllowEmailAddresses","AllowMultipleEntities","AllUrlZones","MaximumEntitySuggestions","PrincipalSource","PrincipalType","QueryString","RequiredProperties","ClientPeoplePickerSearchUser","currentUserProperties","_currentUserProperties","profile","UserProfileProperties","prop","Key","FirstName","Value","LastName","Country","UserName","getSiteUser","_x6","_getSiteUser","_callee3","searchValue","_context3","roleDefinitions","_x7","_roleDefinitions","_callee4","_context4","getEffectiveBasePermissions","_x8","_getEffectiveBasePermissions","_callee5","_context5","EffectiveBasePermissions","currentUserPermissions","_x9","_currentUserPermissions","_callee6","_yield$getEffectiveBa","High","definitions","result","_context6","find","BasePermissions","HTTPSharePointRequests","lists","_this","getContext","folders","email","send","props","sendEmailRequest","user","loadCurrentUserProperties","searchSiteUser","fetchSiteUser","searchUser","current","currentPermission","resolveCurrentUserPermissions","endsWith","_proto","prototype","resolveListItemEntityTypeFullName","bind","_resolveListItemEntityTypeFullName","_response$data$d$List","entityType","ListItemEntityTypeFullName","list","getDigest","from","sharepoint_ver","version","_this2","update","delete","createFile","deleteLibraryFile","fields","fieldName","folder","folderName","filePath","concat","_this3","users","_this4","createBase","SHAREPOINT_REQUESTS"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t,e=require("axios"),n=(t=e)&&"object"==typeof t&&"default"in t?t.default:t;function r(t,e,n,r,i,a,s){try{var o=t[a](s),u=o.value}catch(t){return void n(t)}o.done?e(u):Promise.resolve(u).then(r,i)}function i(t){return function(){var e=this,n=arguments;return new Promise((function(i,a){var s=t.apply(e,n);function o(t){r(s,i,a,o,u,"next",t)}function u(t){r(s,i,a,o,u,"throw",t)}o(void 0)}))}}function a(){return(a=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)({}).hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t}).apply(null,arguments)}function s(){var t,e,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function a(n,r,i,a){var s=Object.create((r&&r.prototype instanceof c?r:c).prototype);return o(s,"_invoke",function(n,r,i){var a,s,o,c=0,l=i||[],p=!1,f={p:0,n:0,v:t,a:h,f:h.bind(t,4),d:function(e,n){return a=e,s=0,o=t,f.n=n,u}};function h(n,r){for(s=n,o=r,e=0;!p&&c&&!i&&e<l.length;e++){var i,a=l[e],h=f.p,d=a[2];n>3?(i=d===r)&&(o=a[(s=a[4])?5:(s=3,3)],a[4]=a[5]=t):a[0]<=h&&((i=n<2&&h<a[1])?(s=0,f.v=r,f.n=a[1]):h<d&&(i=n<3||a[0]>r||r>d)&&(a[4]=n,a[5]=r,f.n=d,s=0))}if(i||n>1)return u;throw p=!0,r}return function(i,l,d){if(c>1)throw TypeError("Generator is already running");for(p&&1===l&&h(l,d),s=l,o=d;(e=s<2?t:o)||!p;){a||(s?s<3?(s>1&&(f.n=-1),h(s,o)):f.n=o:f.v=o);try{if(c=2,a){if(s||(i="next"),e=a[i]){if(!(e=e.call(a,o)))throw TypeError("iterator result is not an object");if(!e.done)return e;o=e.value,s<2&&(s=0)}else 1===s&&(e=a.return)&&e.call(a),s<2&&(o=TypeError("The iterator does not provide a '"+i+"' method"),s=1);a=t}else if((e=(p=f.n<0)?o:n.call(r,f))!==u)break}catch(e){a=t,s=1,o=e}finally{c=1}}return{value:e,done:p}}}(n,i,a),!0),s}var u={};function c(){}function l(){}function p(){}e=Object.getPrototypeOf;var f=[][r]?e(e([][r]())):(o(e={},r,(function(){return this})),e),h=p.prototype=c.prototype=Object.create(f);function d(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,p):(t.__proto__=p,o(t,i,"GeneratorFunction")),t.prototype=Object.create(h),t}return l.prototype=p,o(h,"constructor",p),o(p,"constructor",l),l.displayName="GeneratorFunction",o(p,i,"GeneratorFunction"),o(h),o(h,i,"Generator"),o(h,r,(function(){return this})),o(h,"toString",(function(){return"[object Generator]"})),(s=function(){return{w:a,m:d}})()}function o(t,e,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(t){i=0}(o=function(t,e,n,r){function a(e,n){o(t,e,(function(t){return this._invoke(e,n,t)}))}e?i?i(t,e,{value:n,enumerable:!r,configurable:!r,writable:!r}):t[e]=n:(a("next",0),a("throw",1),a("return",2))})(t,e,n,r)}var u={headers:{Accept:"application/json; odata=verbose","Content-Type":"application/json; odata=verbose"},timeout:15e3,withCredentials:!0};function c(t,e){return l.apply(this,arguments)}function l(){return(l=i(s().m((function t(e,n){var r,i;return s().w((function(t){for(;;)switch(t.p=t.n){case 0:return t.p=0,t.n=1,e.post(n+"_api/contextinfo");case 1:if(i=null==(r=t.v.data)||null==(r=r.d)||null==(r=r.GetContextWebInformation)?void 0:r.FormDigestValue){t.n=2;break}throw new Error("Invalid response structure: Missing FormDigestValue");case 2:return t.a(2,i);case 3:throw t.p=3,console.error("Failed to retrieve the Form Digest Value:",t.v),new Error("Error retrieving Form Digest Value");case 4:return t.a(2)}}),t,null,[[0,3]])})))).apply(this,arguments)}function p(t){return f.apply(this,arguments)}function f(){return(f=i(s().m((function t(e){return s().w((function(t){for(;;)switch(t.n){case 0:if(!e.resolveListItemEntityType){t.n=1;break}return t.a(2,e.resolveListItemEntityType());case 1:if(!e.listItemEntityTypeFullName){t.n=2;break}return t.a(2,e.listItemEntityTypeFullName);case 2:return t.a(2,"SP.Data."+e.listName+"ListItem")}}),t)})))).apply(this,arguments)}function h(){return(h=i(s().m((function t(e,n){var r,i,o,u,l;return s().w((function(t){for(;;)switch(t.n){case 0:return t.n=1,p(e);case 1:return r=a({},n,{__metadata:{type:t.v}}),i=e,o=e.endpoint,u=JSON.stringify(r),t.n=2,c(e.instance,e.baseURL);case 2:return l={"X-RequestDigest":t.v},t.n=3,i.instance.call(i,{url:o,method:"POST",data:u,headers:l});case 3:return t.a(2,t.v)}}),t)})))).apply(this,arguments)}function d(){return(d=i(s().m((function t(e,n){var r,i,a,o,u;return s().w((function(t){for(;;)switch(t.n){case 0:return i=e.instance,a="_api/lists/getbytitle('"+e.listName+"')/items("+n.itemId+")/AttachmentFiles/add(FileName='"+(r=n.file).name+"')",o=r,t.n=1,c(e.instance,e.baseURL);case 1:return u={"X-RequestDigest":t.v},t.n=2,i.post.call(i,a,o,{headers:u,withCredentials:!0});case 2:return t.a(2,t.v)}}),t)})))).apply(this,arguments)}function y(){return(y=i(s().m((function t(e,n){return s().w((function(t){for(;;)switch(t.n){case 0:return t.n=1,e.instance.delete(e.endpoint+"("+n+")");case 1:return t.a(2,t.v)}}),t)})))).apply(this,arguments)}function m(t){if(!t)return"";var e=Array.isArray(t)?t:t.split("/").filter(Boolean);return e.length?e.map((function(t){if(!t.trim())throw new Error("Folder path segments cannot be empty.");var e=t.replace(/'/g,"''");return"/Folders('"+encodeURIComponent(e)+"')"})).join(""):""}function v(t){if(!t.trim())throw new Error("File name cannot be empty.");return encodeURIComponent(t.replace(/'/g,"''"))}function b(){return(b=i(s().m((function t(e,n){var r,i,a,o,u;return s().w((function(t){for(;;)switch(t.n){case 0:if(r=n.fileName,i=n.folderPath,"2013"===e.sharepointVersion){t.n=1;break}throw new Error("deleteFile is only supported for SharePoint 2013 REST endpoints.");case 1:return a=v(r),o="_api/web/lists/getbytitle('"+e.listName+"')/RootFolder",o+=m(i),o+="/Files('"+a+"')",t.n=2,c(e.instance,e.baseURL);case 2:return u=t.v,t.n=3,e.instance.post(o,void 0,{headers:{"X-HTTP-Method":"DELETE","IF-MATCH":"*","X-RequestDigest":u},withCredentials:!0});case 3:return t.a(2,t.v)}}),t)})))).apply(this,arguments)}function w(t,e){void 0===e&&(e=",");var n=t||{},r=n.expand,i=n.orderBy,a=n.limit,s=n.filter,o=n.cols,u=n.skip;return{$expand:Array.isArray(r)?r.join(","):r,$top:a,$skip:u,$select:Array.isArray(o)?o.join(","):o,$filter:s,$orderby:Array.isArray(i)?i.join(e):i}}function g(t,e){Object.entries(e).forEach((function(e){var n=e[1];null!=n&&t.searchParams.append(e[0],String(n))}))}function T(){return(T=i(s().m((function t(e,n){var r,i,a;return s().w((function(t){for(;;)switch(t.n){case 0:return r=w(n,","),g(i=new URL(e.endpoint,e.instance.defaults.baseURL),r),t.n=1,e.instance.request({url:e.endpoint,method:"GET",params:r});case 1:return a=t.v,t.a(2,{data:null!=n&&n.limit||!a.data.d.results?a.data.d:a.data.d.results,meta:{url:i}})}}),t)})))).apply(this,arguments)}function N(t,e){return E.apply(this,arguments)}function E(){return(E=i(s().m((function t(e,n){var r,i,a,o,u,c,l,p,f,h,d,y;return s().w((function(t){for(;;)switch(t.n){case 0:return u=w(n," "),g(c=new URL(e.endpoint,e.instance.defaults.baseURL),u),t.n=1,e.instance.request({url:e.endpoint,method:"GET",params:u});case 1:return p=null!=(r=null!=(i=null==(a=(l=t.v).data)||null==(a=a.d)?void 0:a.results)?i:null==(o=l.data)?void 0:o.d)?r:l.data,h=(f=null==n?void 0:n.cols)?(Array.isArray(f)?f:[f]).filter(Boolean):void 0,d=function(t){return h&&t&&"object"==typeof t?h.reduce((function(e,n){return n in t&&(e[n]=t[n]),e}),{}):t},y=Array.isArray(p)?p.map(d):d(p),t.a(2,{data:y,meta:{url:c}})}}),t)})))).apply(this,arguments)}function F(t,e,n){return P.apply(this,arguments)}function P(){return(P=i(s().m((function t(e,n,r){var i,a;return s().w((function(t){for(;;)switch(t.n){case 0:return i=w(r,","),t.n=1,e.get(n,{params:i});case 1:if(!(a=t.v.data)){t.n=2;break}return t.a(2,a.d.results?a.d.results:a.d);case 2:return t.a(2)}}),t)})))).apply(this,arguments)}function I(t){return L.apply(this,arguments)}function L(){return(L=i(s().m((function t(e){return s().w((function(t){for(;;)switch(t.n){case 0:if(!e.resolveListItemEntityType){t.n=1;break}return t.a(2,e.resolveListItemEntityType());case 1:if(!e.listItemEntityTypeFullName){t.n=2;break}return t.a(2,e.listItemEntityTypeFullName);case 2:return t.a(2,"SP.Data."+e.listName+"ListItem")}}),t)})))).apply(this,arguments)}function S(){return(S=i(s().m((function t(e,n,r,i){var o,u,l,p;return s().w((function(t){for(;;)switch(t.n){case 0:if(p=i){t.n=2;break}return t.n=1,c(e.instance,e.baseURL);case 1:p=t.v;case 2:return o=p,t.n=3,I(e);case 3:return u=a({},r,{__metadata:{type:t.v}}),l="_api/lists/getbytitle('"+e.listName+"')/getItemById('"+n+"')",t.n=4,e.instance({url:l,method:"POST",data:JSON.stringify(u),headers:{"X-RequestDigest":o,"IF-MATCH":"*","X-Http-Method":"PATCH"}});case 4:return t.a(2,t.v)}}),t)})))).apply(this,arguments)}function U(){return(U=i(s().m((function t(e,n){var r,i,a,o,u,l,p;return s().w((function(t){for(;;)switch(t.n){case 0:if(r=n.file,i=n.folderPath,o=void 0===(a=n.overwrite)||a,"2013"===e.sharepointVersion){t.n=1;break}throw new Error("uploadFile is only supported for SharePoint 2013 REST endpoints.");case 1:if(null!=r&&r.name){t.n=2;break}throw new Error("A file with a valid name must be provided.");case 2:return u="_api/web/lists/getbytitle('"+e.listName+"')/RootFolder",u+=m(i),l=v(r.name),u+="/Files/add(url='"+l+"',overwrite="+(o?"true":"false")+")",t.n=3,c(e.instance,e.baseURL);case 3:return p=t.v,t.n=4,e.instance.post(u,r,{headers:{"Content-Type":r.type||"application/octet-stream","X-RequestDigest":p},withCredentials:!0});case 4:return t.a(2,t.v)}}),t)})))).apply(this,arguments)}function _(){return(_=i(s().m((function t(e,n){var r,i,a,o,u,l,p,f;return s().w((function(t){for(;;)switch(t.n){case 0:return r=n.From,i=n.To,a=n.Subject,o=n.Body,u=e,l="_api/SP.Utilities.Utility.SendEmail",t.n=1,c(e.instance,e.baseURL);case 1:return p={"X-RequestDigest":t.v,"X-Http-Method":"POST","Content-Type":"application/json;odata=verbose"},f=JSON.stringify({properties:{__metadata:{type:"SP.Utilities.EmailProperties"},From:r,To:{results:Array.isArray(i)?i:[i]},Body:o,Subject:a}}),t.n=2,u.instance.call(u,{url:l,method:"POST",headers:p,data:f});case 2:return t.a(2,t.v)}}),t)})))).apply(this,arguments)}function R(){return(R=i(s().m((function t(e,n,r){var i;return s().w((function(t){for(;;)switch(t.n){case 0:return i={queryParams:{__metadata:{type:"SP.UI.ApplicationPages.ClientPeoplePickerQueryParameters"},AllowEmailAddresses:!0,AllowMultipleEntities:!1,AllUrlZones:!1,MaximumEntitySuggestions:10,PrincipalSource:15,PrincipalType:1,QueryString:n}},r&&(i.queryParams.RequiredProperties=[r]),t.n=1,e.post("_api/SP.UI.ApplicationPages.ClientPeoplePickerWebServiceInterface.clientPeoplePickerSearchUser",JSON.stringify(i),{headers:{Accept:"application/json; odata=verbose","Content-Type":"application/json;odata=verbose"}});case 1:return t.a(2,t.v.data.d.ClientPeoplePickerSearchUser)}}),t)})))).apply(this,arguments)}function A(){return(A=i(s().m((function t(e){var n;return s().w((function(t){for(;;)switch(t.n){case 0:return t.n=1,e.get("_api/sp.userprofiles.peoplemanager/getmyproperties");case 1:return(n=(n=t.v).data.d).UserProfileProperties.results.forEach((function(t){"FirstName"===t.Key&&(n.FirstName=t.Value),"LastName"===t.Key&&(n.LastName=t.Value),"Country"===t.Key&&(n.Country=t.Value),"UserName"===t.Key&&(n.UserName=t.Value)})),t.a(2,n)}}),t)})))).apply(this,arguments)}function j(){return(j=i(s().m((function t(e,n){var r;return s().w((function(t){for(;;)switch(t.n){case 0:return r="_api/web/siteusers?&$filter=substringof('"+n+"', Title) or substringof('"+n+"', LoginName) or substringof('"+n+"', Email)&$top=50&$expand=Groups",t.n=1,e.get(r);case 1:return t.a(2,t.v.data.d)}}),t)})))).apply(this,arguments)}function C(t){return V.apply(this,arguments)}function V(){return(V=i(s().m((function t(e){return s().w((function(t){for(;;)switch(t.n){case 0:return t.n=1,e.get("_api/Web/RoleDefinitions");case 1:return t.a(2,t.v.data.d.results)}}),t)})))).apply(this,arguments)}function O(t){return k.apply(this,arguments)}function k(){return(k=i(s().m((function t(e){return s().w((function(t){for(;;)switch(t.n){case 0:return t.n=1,e.get("_api/Web/effectiveBasePermissions");case 1:return t.a(2,t.v.data.d.EffectiveBasePermissions)}}),t)})))).apply(this,arguments)}function x(){return(x=i(s().m((function t(e){var n,r;return s().w((function(t){for(;;)switch(t.n){case 0:return t.n=1,O(e.instance);case 1:return n=t.v.High,t.n=2,C(e.instance);case 2:return r=t.v.find((function(t){return t.BasePermissions.High===n})),t.a(2,r)}}),t)})))).apply(this,arguments)}var D=function(){function t(t,r){var i=this;this.baseURL=void 0,this.endpoint=void 0,this.listName=void 0,this.instance=void 0,this.sharepointVersion=void 0,this.listItemEntityTypeFullName=void 0,this.lists={get:function(){return i.endpoint="_api/web/lists",i.sharepointVersion="2013",N(i.getContext())}},this.folders={get:function(){i.endpoint="_api/web/folders",i.sharepointVersion="2013",N(i.getContext())}},this.email={send:function(t){return i.sharepointVersion="2013",function(t,e){return _.apply(this,arguments)}(i.getContext(),t)}},this.user={properties:function(){return{get:function(){return i.sharepointVersion="2013",function(t){return A.apply(this,arguments)}(i.instance)}}},searchSiteUser:function(t){return i.sharepointVersion="2013",function(t,e){return j.apply(this,arguments)}(i.instance,t)},searchUser:function(t,e){return i.sharepointVersion="2013",function(t,e,n){return R.apply(this,arguments)}(i.instance,t,e)},current:function(){return i.endpoint="_api/web/currentUser",i.sharepointVersion="2013",{get:function(){return F(i.instance,i.endpoint)}}},currentPermission:function(){return{get:function(){return i.sharepointVersion="2013",function(t){return x.apply(this,arguments)}(i.getContext())}}}},this.baseURL=t.endsWith("/")?t:t+"/",this.endpoint="/api",this.listName="",this.instance=function(t,r){var i,s=(null==r?void 0:r.headers)instanceof e.AxiosHeaders?r.headers.toJSON():null!=(i=null==r?void 0:r.headers)?i:{};return n.create(a({},u,r,{baseURL:t,headers:a({},u.headers,s)}))}(this.baseURL,r),this.sharepointVersion="2013",this.listItemEntityTypeFullName=void 0}var r=t.prototype;return r.getContext=function(){return{instance:this.instance,baseURL:this.baseURL,endpoint:this.endpoint,listName:this.listName,sharepointVersion:this.sharepointVersion,listItemEntityTypeFullName:this.listItemEntityTypeFullName,resolveListItemEntityType:this.resolveListItemEntityTypeFullName.bind(this)}},r.resolveListItemEntityTypeFullName=function(){var t=i(s().m((function t(){var e,n,r,i,a;return s().w((function(t){for(;;)switch(t.n){case 0:if(!this.listItemEntityTypeFullName){t.n=1;break}return t.a(2,this.listItemEntityTypeFullName);case 1:if(this.listName){t.n=2;break}throw new Error("List name is not set.");case 2:if("2013"===this.sharepointVersion){t.n=3;break}return this.listItemEntityTypeFullName="SP.Data."+this.listName+"ListItem",t.a(2,this.listItemEntityTypeFullName);case 3:return t.n=4,this.instance.get("_api/web/lists/GetByTitle('"+this.listName+"')?$select=ListItemEntityTypeFullName");case 4:if((a=null!=(e=null==(n=(i=t.v).data)||null==(n=n.d)?void 0:n.ListItemEntityTypeFullName)?e:null==(r=i.data)?void 0:r.ListItemEntityTypeFullName)&&"string"==typeof a){t.n=5;break}throw new Error('Unable to resolve ListItemEntityTypeFullName for list "'+this.listName+'".');case 5:return this.listItemEntityTypeFullName=a,t.a(2,this.listItemEntityTypeFullName)}}),t,this)})));return function(){return t.apply(this,arguments)}}(),r.list=function(t){return this.listName=t,this.endpoint="_vti_bin/ListData.svc/"+t,this.sharepointVersion="2010",this.listItemEntityTypeFullName=void 0,this},r.getDigest=function(){return c(this.instance,this.baseURL)},r.from=function(t,e){var n=this,r=null!=e?e:"2013";this.listName=t,this.sharepointVersion=r,this.listItemEntityTypeFullName=void 0,this.endpoint="2013"===r?"_api/web/lists/GetByTitle('"+this.listName+"')/items":"_vti_bin/ListData.svc/"+t;var i=function(){return n.getContext()};return{create:function(t){return function(t,e){return h.apply(this,arguments)}(i(),t)},get:function(t){return N(i(),t)},update:function(t,e,n){return function(t,e,n,r){return S.apply(this,arguments)}(i(),t,e,n)},delete:function(t){return function(t,e){return y.apply(this,arguments)}(i(),t)},createFile:function(t){return function(t,e){return d.apply(this,arguments)}(i(),t)},uploadFile:function(t){return function(t,e){return U.apply(this,arguments)}(i(),t)},deleteFile:function(t){return function(t,e){return b.apply(this,arguments)}(i(),t)},fields:function(t){return n.endpoint=null!=t&&t.fieldName?"_api/web/lists/GetByTitle('"+n.listName+"')/fields/getbytitle('"+t.fieldName+"')":"_api/web/lists/GetByTitle('"+n.listName+"')/fields",{get:function(){return F(n.instance,n.endpoint,t)}}}}},r.folder=function(t){var e=this,n=["Shared Documents"];return t&&(n=Array.isArray(t)?[].concat(n,t):[].concat(n,[t])),this.endpoint="_api/web/GetFolderByServerRelativeUrl('"+n.join("/")+"')",this.sharepointVersion="2013",{get:function(t){return e.endpoint+=null!=t&&t.type?"/"+t.type:"/Files",function(t,e){return T.apply(this,arguments)}(e.getContext(),t)}}},r.users=function(t){var e=this;return this.endpoint="_api/web/SiteUserInfoList/items",this.sharepointVersion="2013",{get:function(){return N(e.getContext(),t)}}},t}();exports.default=function(){function t(t){var e=t.baseURL,n=t.config;if(!e)throw new Error("A valid SharePoint URL must be provided.");return new D(e,n)}return{baseURL:function(e,n){return t({baseURL:e,config:n})},create:t}};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t,e=require("axios"),n=(t=e)&&"object"==typeof t&&"default"in t?t.default:t;function r(t,e,n,r,i,a,s){try{var o=t[a](s),u=o.value}catch(t){return void n(t)}o.done?e(u):Promise.resolve(u).then(r,i)}function i(t){return function(){var e=this,n=arguments;return new Promise((function(i,a){var s=t.apply(e,n);function o(t){r(s,i,a,o,u,"next",t)}function u(t){r(s,i,a,o,u,"throw",t)}o(void 0)}))}}function a(){return(a=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)({}).hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t}).apply(null,arguments)}function s(){var t,e,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",i=n.toStringTag||"@@toStringTag";function a(n,r,i,a){var s=Object.create((r&&r.prototype instanceof l?r:l).prototype);return o(s,"_invoke",function(n,r,i){var a,s,o,l=0,c=i||[],p=!1,f={p:0,n:0,v:t,a:d,f:d.bind(t,4),d:function(e,n){return a=e,s=0,o=t,f.n=n,u}};function d(n,r){for(s=n,o=r,e=0;!p&&l&&!i&&e<c.length;e++){var i,a=c[e],d=f.p,h=a[2];n>3?(i=h===r)&&(o=a[(s=a[4])?5:(s=3,3)],a[4]=a[5]=t):a[0]<=d&&((i=n<2&&d<a[1])?(s=0,f.v=r,f.n=a[1]):d<h&&(i=n<3||a[0]>r||r>h)&&(a[4]=n,a[5]=r,f.n=h,s=0))}if(i||n>1)return u;throw p=!0,r}return function(i,c,h){if(l>1)throw TypeError("Generator is already running");for(p&&1===c&&d(c,h),s=c,o=h;(e=s<2?t:o)||!p;){a||(s?s<3?(s>1&&(f.n=-1),d(s,o)):f.n=o:f.v=o);try{if(l=2,a){if(s||(i="next"),e=a[i]){if(!(e=e.call(a,o)))throw TypeError("iterator result is not an object");if(!e.done)return e;o=e.value,s<2&&(s=0)}else 1===s&&(e=a.return)&&e.call(a),s<2&&(o=TypeError("The iterator does not provide a '"+i+"' method"),s=1);a=t}else if((e=(p=f.n<0)?o:n.call(r,f))!==u)break}catch(e){a=t,s=1,o=e}finally{l=1}}return{value:e,done:p}}}(n,i,a),!0),s}var u={};function l(){}function c(){}function p(){}e=Object.getPrototypeOf;var f=[][r]?e(e([][r]())):(o(e={},r,(function(){return this})),e),d=p.prototype=l.prototype=Object.create(f);function h(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,p):(t.__proto__=p,o(t,i,"GeneratorFunction")),t.prototype=Object.create(d),t}return c.prototype=p,o(d,"constructor",p),o(p,"constructor",c),c.displayName="GeneratorFunction",o(p,i,"GeneratorFunction"),o(d),o(d,i,"Generator"),o(d,r,(function(){return this})),o(d,"toString",(function(){return"[object Generator]"})),(s=function(){return{w:a,m:h}})()}function o(t,e,n,r){var i=Object.defineProperty;try{i({},"",{})}catch(t){i=0}(o=function(t,e,n,r){function a(e,n){o(t,e,(function(t){return this._invoke(e,n,t)}))}e?i?i(t,e,{value:n,enumerable:!r,configurable:!r,writable:!r}):t[e]=n:(a("next",0),a("throw",1),a("return",2))})(t,e,n,r)}var u={headers:{Accept:"application/json; odata=verbose","Content-Type":"application/json; odata=verbose"},timeout:15e3,withCredentials:!0};function l(t,e){return c.apply(this,arguments)}function c(){return(c=i(s().m((function t(e,n){var r,i;return s().w((function(t){for(;;)switch(t.p=t.n){case 0:return t.p=0,t.n=1,e.post(n+"_api/contextinfo");case 1:if(i=null==(r=t.v.data)||null==(r=r.d)||null==(r=r.GetContextWebInformation)?void 0:r.FormDigestValue){t.n=2;break}throw new Error("Invalid response structure: Missing FormDigestValue");case 2:return t.a(2,i);case 3:throw t.p=3,console.error("Failed to retrieve the Form Digest Value:",t.v),new Error("Error retrieving Form Digest Value");case 4:return t.a(2)}}),t,null,[[0,3]])})))).apply(this,arguments)}function p(t){return f.apply(this,arguments)}function f(){return(f=i(s().m((function t(e){return s().w((function(t){for(;;)switch(t.n){case 0:if(!e.resolveListItemEntityType){t.n=1;break}return t.a(2,e.resolveListItemEntityType());case 1:if(!e.listItemEntityTypeFullName){t.n=2;break}return t.a(2,e.listItemEntityTypeFullName);case 2:return t.a(2,"SP.Data."+e.listName+"ListItem")}}),t)})))).apply(this,arguments)}function d(){return(d=i(s().m((function t(e,n){var r,i,o,u,c;return s().w((function(t){for(;;)switch(t.n){case 0:return t.n=1,p(e);case 1:return r=a({},n,{__metadata:{type:t.v}}),i=e,o=e.endpoint,u=JSON.stringify(r),t.n=2,l(e.instance,e.baseURL);case 2:return c={"X-RequestDigest":t.v},t.n=3,i.instance.call(i,{url:o,method:"POST",data:u,headers:c});case 3:return t.a(2,t.v)}}),t)})))).apply(this,arguments)}function h(){return(h=i(s().m((function t(e,n){var r,i,a,o,u;return s().w((function(t){for(;;)switch(t.n){case 0:return i=e.instance,a="_api/lists/getbytitle('"+e.listName+"')/items("+n.itemId+")/AttachmentFiles/add(FileName='"+(r=n.file).name+"')",o=r,t.n=1,l(e.instance,e.baseURL);case 1:return u={"X-RequestDigest":t.v},t.n=2,i.post.call(i,a,o,{headers:u,withCredentials:!0});case 2:return t.a(2,t.v)}}),t)})))).apply(this,arguments)}function y(){return(y=i(s().m((function t(e,n){return s().w((function(t){for(;;)switch(t.n){case 0:return t.n=1,e.instance.delete(e.endpoint+"("+n+")");case 1:return t.a(2,t.v)}}),t)})))).apply(this,arguments)}function m(t){if(!t)return"";var e=Array.isArray(t)?t:t.split("/").filter(Boolean);return e.length?e.map((function(t){if(!t.trim())throw new Error("Folder path segments cannot be empty.");var e=t.replace(/'/g,"''");return"/Folders('"+encodeURIComponent(e)+"')"})).join(""):""}function v(t){if(!t.trim())throw new Error("File name cannot be empty.");return encodeURIComponent(t.replace(/'/g,"''"))}function b(){return(b=i(s().m((function t(e,n){var r,i,a,o,u;return s().w((function(t){for(;;)switch(t.n){case 0:if(r=n.fileName,i=n.folderPath,"2013"===e.sharepointVersion){t.n=1;break}throw new Error("deleteFile is only supported for SharePoint 2013 REST endpoints.");case 1:return a=v(r),o="_api/web/lists/getbytitle('"+e.listName+"')/RootFolder",o+=m(i),o+="/Files('"+a+"')",t.n=2,l(e.instance,e.baseURL);case 2:return u=t.v,t.n=3,e.instance.post(o,void 0,{headers:{"X-HTTP-Method":"DELETE","IF-MATCH":"*","X-RequestDigest":u},withCredentials:!0});case 3:return t.a(2,t.v)}}),t)})))).apply(this,arguments)}function w(t,e){void 0===e&&(e=",");var n=t||{},r=n.expand,i=n.orderBy,a=n.limit,s=n.filter,o=n.cols,u=n.skip;return{$expand:Array.isArray(r)?r.join(","):r,$top:a,$skip:u,$select:Array.isArray(o)?o.join(","):o,$filter:s,$orderby:Array.isArray(i)?i.join(e):i}}function g(t,e){Object.entries(e).forEach((function(e){var n=e[1];null!=n&&t.searchParams.append(e[0],String(n))}))}function T(){return(T=i(s().m((function t(e,n){var r,i,a;return s().w((function(t){for(;;)switch(t.n){case 0:return r=w(n,","),g(i=new URL(e.endpoint,e.instance.defaults.baseURL),r),t.n=1,e.instance.request({url:e.endpoint,method:"GET",params:r});case 1:return a=t.v,t.a(2,{data:null!=n&&n.limit||!a.data.d.results?a.data.d:a.data.d.results,meta:{url:i}})}}),t)})))).apply(this,arguments)}function N(t,e){return E.apply(this,arguments)}function E(){return(E=i(s().m((function t(e,n){var r,i,a,o,u,l,c,p,f,d,h,y;return s().w((function(t){for(;;)switch(t.n){case 0:return u=w(n," "),g(l=new URL(e.endpoint,e.instance.defaults.baseURL),u),t.n=1,e.instance.request({url:e.endpoint,method:"GET",params:u});case 1:return p=null!=(r=null!=(i=null==(a=(c=t.v).data)||null==(a=a.d)?void 0:a.results)?i:null==(o=c.data)?void 0:o.d)?r:c.data,d=(f=null==n?void 0:n.cols)?(Array.isArray(f)?f:[f]).filter(Boolean):void 0,h=function(t){return d&&t&&"object"==typeof t?d.reduce((function(e,n){return n in t&&(e[n]=t[n]),e}),{}):t},y=Array.isArray(p)?p.map(h):h(p),t.a(2,{data:y,meta:{url:l}})}}),t)})))).apply(this,arguments)}function F(t,e,n){return I.apply(this,arguments)}function I(){return(I=i(s().m((function t(e,n,r){var i,a;return s().w((function(t){for(;;)switch(t.n){case 0:return i=w(r,","),t.n=1,e.get(n,{params:i});case 1:if(!(a=t.v.data)){t.n=2;break}return t.a(2,a.d.results?a.d.results:a.d);case 2:return t.a(2)}}),t)})))).apply(this,arguments)}function P(t){return L.apply(this,arguments)}function L(){return(L=i(s().m((function t(e){return s().w((function(t){for(;;)switch(t.n){case 0:if(!e.resolveListItemEntityType){t.n=1;break}return t.a(2,e.resolveListItemEntityType());case 1:if(!e.listItemEntityTypeFullName){t.n=2;break}return t.a(2,e.listItemEntityTypeFullName);case 2:return t.a(2,"SP.Data."+e.listName+"ListItem")}}),t)})))).apply(this,arguments)}function _(){return(_=i(s().m((function t(e,n,r,i){var o,u,c,p;return s().w((function(t){for(;;)switch(t.n){case 0:if(p=i){t.n=2;break}return t.n=1,l(e.instance,e.baseURL);case 1:p=t.v;case 2:return o=p,t.n=3,P(e);case 3:return u=a({},r,{__metadata:{type:t.v}}),c="_api/lists/getbytitle('"+e.listName+"')/getItemById('"+n+"')",t.n=4,e.instance({url:c,method:"POST",data:JSON.stringify(u),headers:{"X-RequestDigest":o,"IF-MATCH":"*","X-Http-Method":"PATCH"}});case 4:return t.a(2,t.v)}}),t)})))).apply(this,arguments)}function S(){return(S=i(s().m((function t(e,n){var r,i,a,o,u,c,p,f,d,h,y,b,w,g,T,N,E,F,I,P,L,_;return s().w((function(t){for(;;)switch(t.n){case 0:if(p=n.file,f=n.folderPath,h=void 0===(d=n.overwrite)||d,"2013"===e.sharepointVersion){t.n=1;break}throw new Error("uploadFile is only supported for SharePoint 2013 REST endpoints.");case 1:if(null!=p&&p.name){t.n=2;break}throw new Error("A file with a valid name must be provided.");case 2:return y="_api/web/lists/getbytitle('"+e.listName+"')/RootFolder",y+=m(f),b=v(p.name),y+="/Files/add(url='"+b+"',overwrite="+(h?"true":"false")+")?$expand=ListItemAllFields&$select=ListItemAllFields/Id",t.n=3,l(e.instance,e.baseURL);case 3:return w=t.v,t.n=4,e.instance.post(y,p,{headers:{"Content-Type":p.type||"application/octet-stream","X-RequestDigest":w},withCredentials:!0});case 4:if(T=null!=(r=null==(i=(g=t.v).data)?void 0:i.d)?r:g.data,void 0===(E=null!=(a=null!=(o=null!=(u=null==(N=null==T?void 0:T.ListItemAllFields)?void 0:N.Id)?u:null==N?void 0:N.ID)?o:null==T?void 0:T.Id)?a:null==T?void 0:T.ID)){t.n=5;break}g.itemId=E,t.n=7;break;case 5:if(null==N||null==(c=N.__deferred)||!c.uri){t.n=7;break}return t.n=6,e.instance.get(N.__deferred.uri);case 6:void 0!==(_=null!=(F=null==(I=(L=t.v).data)||null==(I=I.d)?void 0:I.Id)?F:null==(P=L.data)?void 0:P.Id)&&(g.itemId=_);case 7:return t.a(2,g)}}),t)})))).apply(this,arguments)}function U(){return(U=i(s().m((function t(e,n){var r,i,a,o,u,c,p,f;return s().w((function(t){for(;;)switch(t.n){case 0:return r=n.From,i=n.To,a=n.Subject,o=n.Body,u=e,c="_api/SP.Utilities.Utility.SendEmail",t.n=1,l(e.instance,e.baseURL);case 1:return p={"X-RequestDigest":t.v,"X-Http-Method":"POST","Content-Type":"application/json;odata=verbose"},f=JSON.stringify({properties:{__metadata:{type:"SP.Utilities.EmailProperties"},From:r,To:{results:Array.isArray(i)?i:[i]},Body:o,Subject:a}}),t.n=2,u.instance.call(u,{url:c,method:"POST",headers:p,data:f});case 2:return t.a(2,t.v)}}),t)})))).apply(this,arguments)}function R(){return(R=i(s().m((function t(e,n,r){var i;return s().w((function(t){for(;;)switch(t.n){case 0:return i={queryParams:{__metadata:{type:"SP.UI.ApplicationPages.ClientPeoplePickerQueryParameters"},AllowEmailAddresses:!0,AllowMultipleEntities:!1,AllUrlZones:!1,MaximumEntitySuggestions:10,PrincipalSource:15,PrincipalType:1,QueryString:n}},r&&(i.queryParams.RequiredProperties=[r]),t.n=1,e.post("_api/SP.UI.ApplicationPages.ClientPeoplePickerWebServiceInterface.clientPeoplePickerSearchUser",JSON.stringify(i),{headers:{Accept:"application/json; odata=verbose","Content-Type":"application/json;odata=verbose"}});case 1:return t.a(2,t.v.data.d.ClientPeoplePickerSearchUser)}}),t)})))).apply(this,arguments)}function A(){return(A=i(s().m((function t(e){var n;return s().w((function(t){for(;;)switch(t.n){case 0:return t.n=1,e.get("_api/sp.userprofiles.peoplemanager/getmyproperties");case 1:return(n=(n=t.v).data.d).UserProfileProperties.results.forEach((function(t){"FirstName"===t.Key&&(n.FirstName=t.Value),"LastName"===t.Key&&(n.LastName=t.Value),"Country"===t.Key&&(n.Country=t.Value),"UserName"===t.Key&&(n.UserName=t.Value)})),t.a(2,n)}}),t)})))).apply(this,arguments)}function j(){return(j=i(s().m((function t(e,n){var r;return s().w((function(t){for(;;)switch(t.n){case 0:return r="_api/web/siteusers?&$filter=substringof('"+n+"', Title) or substringof('"+n+"', LoginName) or substringof('"+n+"', Email)&$top=50&$expand=Groups",t.n=1,e.get(r);case 1:return t.a(2,t.v.data.d)}}),t)})))).apply(this,arguments)}function C(t){return V.apply(this,arguments)}function V(){return(V=i(s().m((function t(e){return s().w((function(t){for(;;)switch(t.n){case 0:return t.n=1,e.get("_api/Web/RoleDefinitions");case 1:return t.a(2,t.v.data.d.results)}}),t)})))).apply(this,arguments)}function k(t){return O.apply(this,arguments)}function O(){return(O=i(s().m((function t(e){return s().w((function(t){for(;;)switch(t.n){case 0:return t.n=1,e.get("_api/Web/effectiveBasePermissions");case 1:return t.a(2,t.v.data.d.EffectiveBasePermissions)}}),t)})))).apply(this,arguments)}function x(){return(x=i(s().m((function t(e){var n,r;return s().w((function(t){for(;;)switch(t.n){case 0:return t.n=1,k(e.instance);case 1:return n=t.v.High,t.n=2,C(e.instance);case 2:return r=t.v.find((function(t){return t.BasePermissions.High===n})),t.a(2,r)}}),t)})))).apply(this,arguments)}var D=function(){function t(t,r){var i=this;this.baseURL=void 0,this.endpoint=void 0,this.listName=void 0,this.instance=void 0,this.sharepointVersion=void 0,this.listItemEntityTypeFullName=void 0,this.lists={get:function(){return i.endpoint="_api/web/lists",i.sharepointVersion="2013",N(i.getContext())}},this.folders={get:function(){i.endpoint="_api/web/folders",i.sharepointVersion="2013",N(i.getContext())}},this.email={send:function(t){return i.sharepointVersion="2013",function(t,e){return U.apply(this,arguments)}(i.getContext(),t)}},this.user={properties:function(){return{get:function(){return i.sharepointVersion="2013",function(t){return A.apply(this,arguments)}(i.instance)}}},searchSiteUser:function(t){return i.sharepointVersion="2013",function(t,e){return j.apply(this,arguments)}(i.instance,t)},searchUser:function(t,e){return i.sharepointVersion="2013",function(t,e,n){return R.apply(this,arguments)}(i.instance,t,e)},current:function(){return i.endpoint="_api/web/currentUser",i.sharepointVersion="2013",{get:function(){return F(i.instance,i.endpoint)}}},currentPermission:function(){return{get:function(){return i.sharepointVersion="2013",function(t){return x.apply(this,arguments)}(i.getContext())}}}},this.baseURL=t.endsWith("/")?t:t+"/",this.endpoint="/api",this.listName="",this.instance=function(t,r){var i,s=(null==r?void 0:r.headers)instanceof e.AxiosHeaders?r.headers.toJSON():null!=(i=null==r?void 0:r.headers)?i:{};return n.create(a({},u,r,{baseURL:t,headers:a({},u.headers,s)}))}(this.baseURL,r),this.sharepointVersion="2013",this.listItemEntityTypeFullName=void 0}var r=t.prototype;return r.getContext=function(){return{instance:this.instance,baseURL:this.baseURL,endpoint:this.endpoint,listName:this.listName,sharepointVersion:this.sharepointVersion,listItemEntityTypeFullName:this.listItemEntityTypeFullName,resolveListItemEntityType:this.resolveListItemEntityTypeFullName.bind(this)}},r.resolveListItemEntityTypeFullName=function(){var t=i(s().m((function t(){var e,n,r,i,a;return s().w((function(t){for(;;)switch(t.n){case 0:if(!this.listItemEntityTypeFullName){t.n=1;break}return t.a(2,this.listItemEntityTypeFullName);case 1:if(this.listName){t.n=2;break}throw new Error("List name is not set.");case 2:if("2013"===this.sharepointVersion){t.n=3;break}return this.listItemEntityTypeFullName="SP.Data."+this.listName+"ListItem",t.a(2,this.listItemEntityTypeFullName);case 3:return t.n=4,this.instance.get("_api/web/lists/GetByTitle('"+this.listName+"')?$select=ListItemEntityTypeFullName");case 4:if((a=null!=(e=null==(n=(i=t.v).data)||null==(n=n.d)?void 0:n.ListItemEntityTypeFullName)?e:null==(r=i.data)?void 0:r.ListItemEntityTypeFullName)&&"string"==typeof a){t.n=5;break}throw new Error('Unable to resolve ListItemEntityTypeFullName for list "'+this.listName+'".');case 5:return this.listItemEntityTypeFullName=a,t.a(2,this.listItemEntityTypeFullName)}}),t,this)})));return function(){return t.apply(this,arguments)}}(),r.list=function(t){return this.listName=t,this.endpoint="_vti_bin/ListData.svc/"+t,this.sharepointVersion="2010",this.listItemEntityTypeFullName=void 0,this},r.getDigest=function(){return l(this.instance,this.baseURL)},r.from=function(t,e){var n=this,r=null!=e?e:"2013";this.listName=t,this.sharepointVersion=r,this.listItemEntityTypeFullName=void 0,this.endpoint="2013"===r?"_api/web/lists/GetByTitle('"+this.listName+"')/items":"_vti_bin/ListData.svc/"+t;var i=function(){return n.getContext()};return{create:function(t){return function(t,e){return d.apply(this,arguments)}(i(),t)},get:function(t){return N(i(),t)},update:function(t,e,n){return function(t,e,n,r){return _.apply(this,arguments)}(i(),t,e,n)},delete:function(t){return function(t,e){return y.apply(this,arguments)}(i(),t)},createFile:function(t){return function(t,e){return h.apply(this,arguments)}(i(),t)},uploadFile:function(t){return function(t,e){return S.apply(this,arguments)}(i(),t)},deleteFile:function(t){return function(t,e){return b.apply(this,arguments)}(i(),t)},fields:function(t){return n.endpoint=null!=t&&t.fieldName?"_api/web/lists/GetByTitle('"+n.listName+"')/fields/getbytitle('"+t.fieldName+"')":"_api/web/lists/GetByTitle('"+n.listName+"')/fields",{get:function(){return F(n.instance,n.endpoint,t)}}}}},r.folder=function(t){var e=this,n=["Shared Documents"];return t&&(n=Array.isArray(t)?[].concat(n,t):[].concat(n,[t])),this.endpoint="_api/web/GetFolderByServerRelativeUrl('"+n.join("/")+"')",this.sharepointVersion="2013",{get:function(t){return e.endpoint+=null!=t&&t.type?"/"+t.type:"/Files",function(t,e){return T.apply(this,arguments)}(e.getContext(),t)}}},r.users=function(t){var e=this;return this.endpoint="_api/web/SiteUserInfoList/items",this.sharepointVersion="2013",{get:function(){return N(e.getContext(),t)}}},t}();exports.default=function(){function t(t){var e=t.baseURL,n=t.config;if(!e)throw new Error("A valid SharePoint URL must be provided.");return new D(e,n)}return{baseURL:function(e,n){return t({baseURL:e,config:n})},create:t}};
|
|
2
2
|
//# sourceMappingURL=sharepoint_requests.cjs.production.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharepoint_requests.cjs.production.min.js","sources":["../src/root/instance.ts","../src/root/internal/digest.ts","../src/root/internal/listRequests/createListItem.ts","../src/root/internal/listRequests/createAttachment.ts","../src/root/internal/listRequests/deleteItem.ts","../src/root/internal/listRequests/utils.ts","../src/root/internal/listRequests/deleteFile.ts","../src/root/internal/odata.ts","../src/root/internal/listRequests/getFiles.ts","../src/root/internal/listRequests/getListItems.ts","../src/root/internal/listRequests/getOnly.ts","../src/root/internal/listRequests/updateListItem.ts","../src/root/internal/listRequests/uploadFile.ts","../src/root/internal/emailRequests.ts","../src/root/internal/userRequests.ts","../src/root/index.ts","../src/index.ts"],"sourcesContent":["import axios, { AxiosHeaders, CreateAxiosDefaults as AxiosConfig } from 'axios';\n\nconst defaultConfig: AxiosConfig = {\n headers: {\n Accept: 'application/json; odata=verbose',\n 'Content-Type': 'application/json; odata=verbose',\n },\n timeout: 15000,\n withCredentials: true,\n};\n\nexport const instance = (baseURL: string, config?: AxiosConfig) => {\n const userHeaders =\n config?.headers instanceof AxiosHeaders\n ? config.headers.toJSON()\n : config?.headers ?? {};\n\n return axios.create({\n ...defaultConfig,\n ...config,\n baseURL,\n headers: {\n ...defaultConfig.headers,\n ...userHeaders,\n },\n });\n};\n\nexport default instance;\n","import type { AxiosInstance } from 'axios';\n\nexport async function fetchDigest(\n instance: AxiosInstance,\n baseURL: string\n): Promise<string> {\n try {\n const response = await instance.post(`${baseURL}_api/contextinfo`);\n\n const formDigestValue =\n response.data?.d?.GetContextWebInformation?.FormDigestValue;\n\n if (!formDigestValue) {\n throw new Error('Invalid response structure: Missing FormDigestValue');\n }\n\n return formDigestValue;\n } catch (error) {\n console.error('Failed to retrieve the Form Digest Value:', error);\n throw new Error(`Error retrieving Form Digest Value`);\n }\n}\n","import type { ListData, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nasync function resolveMetadataType<V extends SHAREPOINT_VER>(\n context: RequestContext<V>\n) {\n if (context.resolveListItemEntityType) {\n return context.resolveListItemEntityType();\n }\n\n if (context.listItemEntityTypeFullName) {\n return context.listItemEntityTypeFullName;\n }\n\n return `SP.Data.${context.listName}ListItem`;\n}\n\nexport async function createListItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n listData: ListData\n) {\n const metadataType = await resolveMetadataType(context);\n const payload = {\n ...listData,\n __metadata: {\n type: metadataType,\n },\n };\n\n const response = await context.instance({\n url: context.endpoint,\n method: 'POST',\n data: JSON.stringify(payload),\n headers: {\n 'X-RequestDigest': await fetchDigest(context.instance, context.baseURL),\n },\n });\n\n return response;\n}\n","import type { CreateFileProps, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nexport async function createAttachment<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { file, itemId }: CreateFileProps\n) {\n const requestUrl = `_api/lists/getbytitle('${context.listName}')/items(${itemId})/AttachmentFiles/add(FileName='${file.name}')`;\n const response = await context.instance.post(requestUrl, file, {\n headers: {\n 'X-RequestDigest': await fetchDigest(context.instance, context.baseURL),\n },\n withCredentials: true,\n });\n\n return response;\n}\n","import type { SHAREPOINT_VER } from '../../../types';\nimport type { RequestContext } from '../context';\n\nexport async function deleteItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n id: number | string\n) {\n const response = await context.instance.delete(`${context.endpoint}(${id})`);\n return response;\n}\n","export function buildLibraryPath(folderPath?: string | string[]) {\n if (!folderPath) {\n return '';\n }\n\n const segments = Array.isArray(folderPath)\n ? folderPath\n : folderPath.split('/').filter(Boolean);\n\n if (!segments.length) {\n return '';\n }\n\n const escapedSegments = segments.map((segment) => {\n if (!segment.trim()) {\n throw new Error('Folder path segments cannot be empty.');\n }\n\n const sanitized = segment.replace(/'/g, \"''\");\n\n return `/Folders('${encodeURIComponent(sanitized)}')`;\n });\n\n return escapedSegments.join('');\n}\n\nexport function encodeFileName(fileName: string) {\n if (!fileName.trim()) {\n throw new Error('File name cannot be empty.');\n }\n\n return encodeURIComponent(fileName.replace(/'/g, \"''\"));\n}\n","import type { SHAREPOINT_VER, DeleteFileProps } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\nimport { buildLibraryPath, encodeFileName } from './utils';\n\nconst SUPPORTED_VERSION: SHAREPOINT_VER = '2013';\n\nexport async function deleteFile<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { fileName, folderPath }: DeleteFileProps\n) {\n if (context.sharepointVersion !== SUPPORTED_VERSION) {\n throw new Error(\n 'deleteFile is only supported for SharePoint 2013 REST endpoints.'\n );\n }\n\n const encodedFileName = encodeFileName(fileName);\n let requestUrl = `_api/web/lists/getbytitle('${context.listName}')/RootFolder`;\n requestUrl += buildLibraryPath(folderPath);\n requestUrl += `/Files('${encodedFileName}')`;\n\n const digest = await fetchDigest(context.instance, context.baseURL);\n\n const response = await context.instance.post(requestUrl, undefined, {\n headers: {\n 'X-HTTP-Method': 'DELETE',\n 'IF-MATCH': '*',\n 'X-RequestDigest': digest,\n },\n withCredentials: true,\n });\n\n return response;\n}\n","import type { Folder_Options, Options, SHAREPOINT_VER } from '../../types';\n\ntype QueryableOptions<T, V extends SHAREPOINT_VER = '2013'> =\n | Options<T, V>\n | Folder_Options<T>;\n\nexport function buildODataParams<T, V extends SHAREPOINT_VER = '2013'>(\n options: QueryableOptions<T, V> | undefined,\n orderBySeparator: ',' | ' ' = ','\n) {\n const { expand, orderBy, limit, filter, cols, skip } = options || {};\n\n const params: Record<string, string | number | undefined> = {\n $expand: Array.isArray(expand) ? expand.join(',') : expand,\n $top: limit,\n $skip: skip,\n $select: Array.isArray(cols) ? cols.join(',') : cols,\n $filter: filter,\n $orderby: Array.isArray(orderBy)\n ? orderBy.join(orderBySeparator)\n : orderBy,\n };\n\n return params;\n}\n\nexport function appendParamsToUrl(\n baseUrl: URL,\n params: Record<string, string | number | undefined | null>\n) {\n Object.entries(params).forEach(([key, value]) => {\n if (value !== undefined && value !== null) {\n baseUrl.searchParams.append(key, String(value));\n }\n });\n}\n","import type { Folder_Options, SHAREPOINT_VER } from '../../../types';\nimport { appendParamsToUrl, buildODataParams } from '../odata';\nimport type { RequestContext } from '../context';\n\nexport async function getFiles<\n T,\n V extends SHAREPOINT_VER = '2013'\n>(\n context: RequestContext<V>,\n options?: Folder_Options<T>\n) {\n const params = buildODataParams(options, ',');\n const url = new URL(context.endpoint, context.instance.defaults.baseURL);\n\n appendParamsToUrl(url, params);\n\n const response = await context.instance.request({\n url: context.endpoint,\n method: 'GET',\n params,\n });\n\n const data =\n options?.limit || !response.data.d.results\n ? response.data.d\n : response.data.d.results;\n\n const meta = { url };\n\n return { data, meta };\n}\n","import type { Options, SPItem, SHAREPOINT_VER } from '../../../types';\nimport { appendParamsToUrl, buildODataParams } from '../odata';\nimport type { RequestContext } from '../context';\n\nexport async function getListItems<\n K,\n V extends SHAREPOINT_VER = '2013'\n>(\n context: RequestContext<V>,\n options?: Options<K, V>\n): Promise<{ data: (K & Partial<SPItem<V>>)[]; meta: { url: URL } }> {\n const params = buildODataParams(options, ' ');\n\n const url = new URL(context.endpoint, context.instance.defaults.baseURL);\n appendParamsToUrl(url, params);\n\n const response = await context.instance.request({\n url: context.endpoint,\n method: 'GET',\n params,\n });\n\n const rawData = response.data?.d?.results ?? response.data?.d ?? response.data;\n const cols = options?.cols;\n const keys = cols\n ? (Array.isArray(cols) ? cols : [cols]).filter(Boolean)\n : undefined;\n\n const filterItem = (item: unknown) => {\n if (!keys || !item || typeof item !== 'object') {\n return item;\n }\n\n return keys.reduce<Record<string, unknown>>((acc, key) => {\n if (key in item) {\n acc[key] = (item as Record<string, unknown>)[key];\n }\n\n return acc;\n }, {});\n };\n\n const data = Array.isArray(rawData)\n ? rawData.map(filterItem)\n : filterItem(rawData);\n\n const meta = { url };\n\n return { data: data as (K & Partial<SPItem<V>>)[], meta };\n}\n","import type { AxiosInstance } from 'axios';\nimport type { Options, SHAREPOINT_VER } from '../../../types';\nimport { buildODataParams } from '../odata';\n\nexport async function getOnly<\n T,\n V extends SHAREPOINT_VER = '2013'\n>(\n instance: AxiosInstance,\n endpoint: string,\n options?: Options<T, V>\n) {\n const params = buildODataParams(options, ',');\n const { data } = await instance.get(endpoint, { params });\n if (data) {\n return data.d.results ? data.d.results : data.d;\n }\n}\n","import type { ListData, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nasync function resolveMetadataType<V extends SHAREPOINT_VER>(\n context: RequestContext<V>\n) {\n if (context.resolveListItemEntityType) {\n return context.resolveListItemEntityType();\n }\n\n if (context.listItemEntityTypeFullName) {\n return context.listItemEntityTypeFullName;\n }\n\n return `SP.Data.${context.listName}ListItem`;\n}\n\nexport async function updateListItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n id: number | string,\n data: ListData,\n digest?: string\n) {\n const formDigestValue =\n digest || (await fetchDigest(context.instance, context.baseURL));\n\n const metadataType = await resolveMetadataType(context);\n const payload = {\n ...data,\n __metadata: {\n type: metadataType,\n },\n };\n\n const url = `_api/lists/getbytitle('${context.listName}')/getItemById('${id}')`;\n\n const response = await context.instance({\n url,\n method: 'POST',\n data: JSON.stringify(payload),\n headers: {\n 'X-RequestDigest': formDigestValue,\n 'IF-MATCH': '*',\n 'X-Http-Method': 'PATCH',\n },\n });\n\n return response;\n}\n","import type { SHAREPOINT_VER, UploadFileProps } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\nimport { buildLibraryPath, encodeFileName } from './utils';\n\nconst SUPPORTED_VERSION: SHAREPOINT_VER = '2013';\n\nexport async function uploadFile<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { file, folderPath, overwrite = true }: UploadFileProps\n) {\n if (context.sharepointVersion !== SUPPORTED_VERSION) {\n throw new Error(\n 'uploadFile is only supported for SharePoint 2013 REST endpoints.'\n );\n }\n\n if (!file?.name) {\n throw new Error('A file with a valid name must be provided.');\n }\n\n let requestUrl = `_api/web/lists/getbytitle('${context.listName}')/RootFolder`;\n\n requestUrl += buildLibraryPath(folderPath);\n\n const encodedFileName = encodeFileName(file.name);\n requestUrl += `/Files/add(url='${encodedFileName}',overwrite=${\n overwrite ? 'true' : 'false'\n })`;\n\n const digest = await fetchDigest(context.instance, context.baseURL);\n\n const response = await context.instance.post(requestUrl, file, {\n headers: {\n 'Content-Type': file.type || 'application/octet-stream',\n 'X-RequestDigest': digest,\n },\n withCredentials: true,\n });\n\n return response;\n}\n","import type { AxiosResponse } from 'axios';\nimport type { EmailProps } from '../../types';\nimport { fetchDigest } from './digest';\nimport type { RequestContext } from './context';\n\ntype SendEmailResponse = AxiosResponse<{\n d: {\n SendEmail: null;\n };\n}>;\n\nexport async function sendEmail(\n context: RequestContext,\n { From, To, Subject, Body }: EmailProps\n): Promise<SendEmailResponse> {\n const httpRequest = '_api/SP.Utilities.Utility.SendEmail';\n\n const response = await context.instance({\n url: httpRequest,\n method: 'POST',\n headers: {\n 'X-RequestDigest': await fetchDigest(\n context.instance,\n context.baseURL\n ),\n 'X-Http-Method': 'POST',\n 'Content-Type': 'application/json;odata=verbose',\n },\n data: JSON.stringify({\n properties: {\n __metadata: {\n type: 'SP.Utilities.EmailProperties',\n },\n From,\n To: {\n results: Array.isArray(To) ? To : [To],\n },\n Body,\n Subject,\n },\n }),\n });\n\n return response;\n}\n","import type { AxiosInstance } from 'axios';\nimport type {\n PersonField,\n UserPermision,\n UserProfile,\n} from '../../types';\nimport type { RequestContext } from './context';\n\ntype RoleDefinition = {\n BasePermissions: {\n High: string;\n };\n};\n\nexport async function typeAhead(\n instance: AxiosInstance,\n input: string,\n filter?: string\n): Promise<PersonField> {\n const requestUrl = `_api/SP.UI.ApplicationPages.ClientPeoplePickerWebServiceInterface.clientPeoplePickerSearchUser`;\n\n const data = {\n queryParams: {\n __metadata: {\n type: 'SP.UI.ApplicationPages.ClientPeoplePickerQueryParameters',\n },\n AllowEmailAddresses: true,\n AllowMultipleEntities: false,\n AllUrlZones: false,\n MaximumEntitySuggestions: 10,\n PrincipalSource: 15,\n PrincipalType: 1,\n QueryString: input,\n },\n };\n\n if (filter) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (data.queryParams as any).RequiredProperties = [filter];\n }\n\n const response = await instance.post(requestUrl, JSON.stringify(data), {\n headers: {\n Accept: 'application/json; odata=verbose',\n 'Content-Type': 'application/json;odata=verbose',\n },\n });\n\n return response.data.d.ClientPeoplePickerSearchUser;\n}\n\nexport async function currentUserProperties(\n instance: AxiosInstance\n): Promise<UserProfile> {\n const requestUrl = '_api/sp.userprofiles.peoplemanager/getmyproperties';\n let profile: any = await instance.get(requestUrl);\n\n profile = profile.data.d;\n\n profile.UserProfileProperties.results.forEach(\n (prop: { Key: string; Value: string }) => {\n if (prop.Key === 'FirstName') {\n profile.FirstName = prop.Value;\n }\n if (prop.Key === 'LastName') {\n profile.LastName = prop.Value;\n }\n if (prop.Key === 'Country') {\n profile.Country = prop.Value;\n }\n if (prop.Key === 'UserName') {\n profile.UserName = prop.Value;\n }\n }\n );\n\n return profile;\n}\n\nexport async function getSiteUser(instance: AxiosInstance, searchValue: string) {\n const requestUrl = `_api/web/siteusers?&$filter=substringof('${searchValue}', Title) or substringof('${searchValue}', LoginName) or substringof('${searchValue}', Email)&$top=50&$expand=Groups`;\n const response = await instance.get(requestUrl);\n return response.data.d;\n}\n\nexport async function roleDefinitions(instance: AxiosInstance) {\n const requestUrl = `_api/Web/RoleDefinitions`;\n const response = await instance.get(requestUrl);\n return response.data.d.results as RoleDefinition[];\n}\n\nexport async function getEffectiveBasePermissions(instance: AxiosInstance) {\n const requestUrl = `_api/Web/effectiveBasePermissions`;\n const response = await instance.get(requestUrl);\n return response.data.d.EffectiveBasePermissions;\n}\n\nexport async function currentUserPermissions(\n context: RequestContext\n): Promise<UserPermision> {\n const { High } = await getEffectiveBasePermissions(context.instance);\n const definitions = await roleDefinitions(context.instance);\n\n const result = definitions.find(\n ({ BasePermissions }: RoleDefinition) => BasePermissions.High === High\n );\n\n return result as UserPermision;\n}\n","import { AxiosInstance, CreateAxiosDefaults as AxiosConfig } from 'axios';\nimport instance from './instance';\nimport {\n CreateFileProps,\n DeleteFileProps,\n CurrentUser,\n EmailProps,\n Field_Options,\n Folder_Options,\n UploadFileProps,\n IListName,\n ItemID,\n ListData,\n Options,\n PersonField,\n SHAREPOINT_VER,\n UserPermision,\n UserProfile,\n} from '../types';\nimport { RequestContext } from './internal/context';\nimport {\n createAttachment,\n createListItem,\n deleteItem,\n deleteFile as deleteLibraryFile,\n getFiles,\n getListItems,\n getOnly,\n updateListItem,\n uploadFile,\n} from './internal/listRequests';\nimport { sendEmail as sendEmailRequest } from './internal/emailRequests';\nimport {\n currentUserPermissions as resolveCurrentUserPermissions,\n currentUserProperties as loadCurrentUserProperties,\n getSiteUser as fetchSiteUser,\n typeAhead,\n} from './internal/userRequests';\nimport { fetchDigest } from './internal/digest';\n\nclass HTTPSharePointRequests<\n T extends {\n LISTS: Record<string, unknown>;\n FOLDERS?: Record<string, unknown>;\n }\n> {\n private baseURL: string;\n private endpoint: string;\n private listName: string;\n private instance: AxiosInstance;\n private sharepointVersion: SHAREPOINT_VER;\n private listItemEntityTypeFullName?: string;\n\n constructor(baseURL: string, config?: AxiosConfig) {\n this.baseURL = baseURL.endsWith('/') ? baseURL : `${baseURL}/`;\n this.endpoint = '/api';\n this.listName = '';\n this.instance = instance(this.baseURL, config);\n this.sharepointVersion = '2013';\n this.listItemEntityTypeFullName = undefined;\n }\n\n private getContext<V extends SHAREPOINT_VER = '2013'>(): RequestContext<V> {\n return {\n instance: this.instance,\n baseURL: this.baseURL,\n endpoint: this.endpoint,\n listName: this.listName,\n sharepointVersion: this.sharepointVersion as V,\n listItemEntityTypeFullName: this.listItemEntityTypeFullName,\n resolveListItemEntityType: this.resolveListItemEntityTypeFullName.bind(\n this\n ),\n };\n }\n\n private async resolveListItemEntityTypeFullName(): Promise<string> {\n if (this.listItemEntityTypeFullName) {\n return this.listItemEntityTypeFullName;\n }\n\n if (!this.listName) {\n throw new Error('List name is not set.');\n }\n\n if (this.sharepointVersion !== '2013') {\n this.listItemEntityTypeFullName = `SP.Data.${this.listName}ListItem`;\n return this.listItemEntityTypeFullName;\n }\n\n const response = await this.instance.get(\n `_api/web/lists/GetByTitle('${this.listName}')?$select=ListItemEntityTypeFullName`\n );\n\n const entityType =\n response.data?.d?.ListItemEntityTypeFullName ??\n response.data?.ListItemEntityTypeFullName;\n\n if (!entityType || typeof entityType !== 'string') {\n throw new Error(\n `Unable to resolve ListItemEntityTypeFullName for list \"${this.listName}\".`\n );\n }\n\n this.listItemEntityTypeFullName = entityType;\n return this.listItemEntityTypeFullName;\n }\n\n /**\n * @deprecated Use `from` instead.\n */\n list(listName: IListName<T>) {\n this.listName = listName;\n this.endpoint = `_vti_bin/ListData.svc/${listName}`;\n this.sharepointVersion = '2010';\n this.listItemEntityTypeFullName = undefined;\n return this;\n }\n\n public readonly lists = {\n get: () => {\n this.endpoint = '_api/web/lists';\n this.sharepointVersion = '2013';\n return getListItems(this.getContext());\n },\n };\n\n public getDigest() {\n return fetchDigest(this.instance, this.baseURL);\n }\n\n public from<\n K extends Extract<keyof T['LISTS'], string>,\n V extends SHAREPOINT_VER = '2013'\n >(listName: K, sharepoint_ver?: V) {\n const version = (sharepoint_ver ?? '2013') as V;\n\n this.listName = listName;\n this.sharepointVersion = version;\n this.listItemEntityTypeFullName = undefined;\n this.endpoint =\n version === '2013'\n ? `_api/web/lists/GetByTitle('${this.listName}')/items`\n : `_vti_bin/ListData.svc/${listName}`;\n\n const getContext = () => this.getContext<V>();\n\n return {\n create: (data: ListData) => createListItem(getContext(), data),\n get: (options?: Options<T['LISTS'][K], V>) =>\n getListItems<T['LISTS'][K], V>(getContext(), options),\n update: (id: ItemID, data: ListData, digest?: string) =>\n updateListItem(getContext(), id, data, digest),\n delete: (id: ItemID) => deleteItem(getContext(), id),\n createFile: (props: CreateFileProps) =>\n createAttachment(getContext(), props),\n uploadFile: (props: UploadFileProps) => uploadFile(getContext(), props),\n deleteFile: (props: DeleteFileProps) =>\n deleteLibraryFile(getContext(), props),\n fields: (options?: Field_Options<T['LISTS'][K], V>) => {\n this.endpoint = !options?.fieldName\n ? `_api/web/lists/GetByTitle('${this.listName}')/fields`\n : `_api/web/lists/GetByTitle('${this.listName}')/fields/getbytitle('${options.fieldName}')`;\n return {\n get: () =>\n getOnly<T['LISTS'][K], V>(this.instance, this.endpoint, options),\n };\n },\n };\n }\n\n public folders = {\n get: () => {\n this.endpoint = '_api/web/folders';\n this.sharepointVersion = '2013';\n getListItems(this.getContext());\n },\n };\n\n public folder(folderName?: string | string[]) {\n let filePath = ['Shared Documents'];\n\n if (folderName) {\n filePath = Array.isArray(folderName)\n ? [...filePath, ...folderName]\n : [...filePath, folderName];\n }\n\n this.endpoint = `_api/web/GetFolderByServerRelativeUrl('${filePath.join(\n '/'\n )}')`;\n this.sharepointVersion = '2013';\n\n const getContext = () => this.getContext();\n\n return {\n get: (options?: Folder_Options<any>) => {\n if (!options?.type) {\n this.endpoint += '/Files';\n } else {\n this.endpoint += `/${options.type}`;\n }\n return getFiles(getContext(), options);\n },\n };\n }\n\n public users(options?: Options<any>) {\n this.endpoint = '_api/web/SiteUserInfoList/items';\n this.sharepointVersion = '2013';\n return {\n get: () => getListItems(this.getContext(), options),\n };\n }\n\n public email = {\n send: (props: EmailProps) => {\n this.sharepointVersion = '2013';\n return sendEmailRequest(this.getContext(), props);\n },\n };\n\n public user = {\n properties: () => ({\n get: (): Promise<UserProfile> => {\n this.sharepointVersion = '2013';\n return loadCurrentUserProperties(this.instance);\n },\n }),\n searchSiteUser: (searchValue: string) => {\n this.sharepointVersion = '2013';\n return fetchSiteUser(this.instance, searchValue);\n },\n searchUser: (input: string, filter?: string): Promise<PersonField> => {\n this.sharepointVersion = '2013';\n return typeAhead(this.instance, input, filter);\n },\n current: () => {\n this.endpoint = '_api/web/currentUser';\n this.sharepointVersion = '2013';\n return {\n get: (): Promise<CurrentUser> => getOnly(this.instance, this.endpoint),\n };\n },\n currentPermission: () => ({\n get: (): Promise<UserPermision> => {\n this.sharepointVersion = '2013';\n return resolveCurrentUserPermissions(this.getContext());\n },\n }),\n };\n}\n\nexport default HTTPSharePointRequests;\n","import SHAREPOINT_REQUESTS from './root';\n\nimport type { CreateAxiosDefaults as AxiosConfig } from 'axios';\nimport type { LookupField, ChoiceField, PersonField } from './types';\n\n// Load environment variables from .env file\n\nexport default function createBase<\n T extends { LISTS: Record<string, any>; FOLDERS?: Record<string, any> } = any\n>(){\n function create({\n baseURL,\n config,\n }: {\n baseURL: string;\n config?: AxiosConfig;\n }) {\n if (!baseURL) {\n throw new Error('A valid SharePoint URL must be provided.');\n }\n return new SHAREPOINT_REQUESTS<T>(baseURL, config);\n }\n\n return {\n /**\n * @deprecated Use `create` instead.\n */\n baseURL(url: string, config?: AxiosConfig) {\n return create({ baseURL: url, config });\n },\n create,\n };\n}\n\nexport { LookupField, ChoiceField, PersonField };\n\n\n"],"names":["defaultConfig","headers","Accept","Content-Type","timeout","withCredentials","fetchDigest","_x","_x2","_fetchDigest","apply","arguments","_asyncToGenerator","_regenerator","m","_callee","instance","baseURL","_response$data","formDigestValue","w","_context","p","n","post","v","data","d","GetContextWebInformation","FormDigestValue","Error","a","console","error","resolveMetadataType","_resolveMetadataType","context","resolveListItemEntityType","listItemEntityTypeFullName","listName","_createListItem","_callee2","listData","payload","_t","_t2","_t3","_t5","_context2","_extends","__metadata","type","endpoint","JSON","stringify","X-RequestDigest","call","url","method","_createAttachment","_ref","file","itemId","name","_deleteItem","id","buildLibraryPath","folderPath","segments","Array","isArray","split","filter","Boolean","length","map","segment","trim","sanitized","replace","encodeURIComponent","join","encodeFileName","fileName","_deleteFile","encodedFileName","requestUrl","digest","sharepointVersion","undefined","X-HTTP-Method","IF-MATCH","buildODataParams","options","orderBySeparator","expand","orderBy","limit","cols","skip","$expand","$top","$skip","$select","$filter","$orderby","appendParamsToUrl","baseUrl","params","Object","entries","forEach","_ref2","value","searchParams","append","String","_getFiles","response","URL","defaults","request","results","meta","getListItems","_getListItems","_response$data$d$resu","_response$data2","rawData","keys","filterItem","item","reduce","acc","key","getOnly","_x3","_getOnly","get","_updateListItem","X-Http-Method","_uploadFile","_ref$overwrite","overwrite","_sendEmail","From","To","Subject","Body","_t4","properties","_typeAhead","input","queryParams","AllowEmailAddresses","AllowMultipleEntities","AllUrlZones","MaximumEntitySuggestions","PrincipalSource","PrincipalType","QueryString","RequiredProperties","ClientPeoplePickerSearchUser","_currentUserProperties","profile","UserProfileProperties","prop","Key","FirstName","Value","LastName","Country","UserName","_getSiteUser","_callee3","searchValue","_context3","roleDefinitions","_x7","_roleDefinitions","_callee4","_context4","getEffectiveBasePermissions","_x8","_getEffectiveBasePermissions","_callee5","_context5","EffectiveBasePermissions","_currentUserPermissions","_callee6","High","result","_context6","find","BasePermissions","HTTPSharePointRequests","config","this","lists","_this","getContext","folders","email","send","props","sendEmailRequest","user","_x4","loadCurrentUserProperties","searchSiteUser","_x5","_x6","fetchSiteUser","searchUser","typeAhead","current","currentPermission","_x9","resolveCurrentUserPermissions","endsWith","userHeaders","AxiosHeaders","toJSON","_config$headers","axios","create","_proto","prototype","resolveListItemEntityTypeFullName","bind","_resolveListItemEntityTypeFullName","_response$data$d$List","entityType","ListItemEntityTypeFullName","list","getDigest","from","sharepoint_ver","version","_this2","createListItem","update","updateListItem","delete","deleteItem","createFile","createAttachment","uploadFile","deleteFile","deleteLibraryFile","fields","fieldName","folder","folderName","filePath","concat","_this3","getFiles","users","_this4","SHAREPOINT_REQUESTS"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sharepoint_requests.cjs.production.min.js","sources":["../src/root/instance.ts","../src/root/internal/digest.ts","../src/root/internal/listRequests/createListItem.ts","../src/root/internal/listRequests/createAttachment.ts","../src/root/internal/listRequests/deleteItem.ts","../src/root/internal/listRequests/utils.ts","../src/root/internal/listRequests/deleteFile.ts","../src/root/internal/odata.ts","../src/root/internal/listRequests/getFiles.ts","../src/root/internal/listRequests/getListItems.ts","../src/root/internal/listRequests/getOnly.ts","../src/root/internal/listRequests/updateListItem.ts","../src/root/internal/listRequests/uploadFile.ts","../src/root/internal/emailRequests.ts","../src/root/internal/userRequests.ts","../src/root/index.ts","../src/index.ts"],"sourcesContent":["import axios, { AxiosHeaders, CreateAxiosDefaults as AxiosConfig } from 'axios';\n\nconst defaultConfig: AxiosConfig = {\n headers: {\n Accept: 'application/json; odata=verbose',\n 'Content-Type': 'application/json; odata=verbose',\n },\n timeout: 15000,\n withCredentials: true,\n};\n\nexport const instance = (baseURL: string, config?: AxiosConfig) => {\n const userHeaders =\n config?.headers instanceof AxiosHeaders\n ? config.headers.toJSON()\n : config?.headers ?? {};\n\n return axios.create({\n ...defaultConfig,\n ...config,\n baseURL,\n headers: {\n ...defaultConfig.headers,\n ...userHeaders,\n },\n });\n};\n\nexport default instance;\n","import type { AxiosInstance } from 'axios';\n\nexport async function fetchDigest(\n instance: AxiosInstance,\n baseURL: string\n): Promise<string> {\n try {\n const response = await instance.post(`${baseURL}_api/contextinfo`);\n\n const formDigestValue =\n response.data?.d?.GetContextWebInformation?.FormDigestValue;\n\n if (!formDigestValue) {\n throw new Error('Invalid response structure: Missing FormDigestValue');\n }\n\n return formDigestValue;\n } catch (error) {\n console.error('Failed to retrieve the Form Digest Value:', error);\n throw new Error(`Error retrieving Form Digest Value`);\n }\n}\n","import type { ListData, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nasync function resolveMetadataType<V extends SHAREPOINT_VER>(\n context: RequestContext<V>\n) {\n if (context.resolveListItemEntityType) {\n return context.resolveListItemEntityType();\n }\n\n if (context.listItemEntityTypeFullName) {\n return context.listItemEntityTypeFullName;\n }\n\n return `SP.Data.${context.listName}ListItem`;\n}\n\nexport async function createListItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n listData: ListData\n) {\n const metadataType = await resolveMetadataType(context);\n const payload = {\n ...listData,\n __metadata: {\n type: metadataType,\n },\n };\n\n const response = await context.instance({\n url: context.endpoint,\n method: 'POST',\n data: JSON.stringify(payload),\n headers: {\n 'X-RequestDigest': await fetchDigest(context.instance, context.baseURL),\n },\n });\n\n return response;\n}\n","import type { CreateFileProps, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nexport async function createAttachment<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { file, itemId }: CreateFileProps\n) {\n const requestUrl = `_api/lists/getbytitle('${context.listName}')/items(${itemId})/AttachmentFiles/add(FileName='${file.name}')`;\n const response = await context.instance.post(requestUrl, file, {\n headers: {\n 'X-RequestDigest': await fetchDigest(context.instance, context.baseURL),\n },\n withCredentials: true,\n });\n\n return response;\n}\n","import type { SHAREPOINT_VER } from '../../../types';\nimport type { RequestContext } from '../context';\n\nexport async function deleteItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n id: number | string\n) {\n const response = await context.instance.delete(`${context.endpoint}(${id})`);\n return response;\n}\n","export function buildLibraryPath(folderPath?: string | string[]) {\n if (!folderPath) {\n return '';\n }\n\n const segments = Array.isArray(folderPath)\n ? folderPath\n : folderPath.split('/').filter(Boolean);\n\n if (!segments.length) {\n return '';\n }\n\n const escapedSegments = segments.map((segment) => {\n if (!segment.trim()) {\n throw new Error('Folder path segments cannot be empty.');\n }\n\n const sanitized = segment.replace(/'/g, \"''\");\n\n return `/Folders('${encodeURIComponent(sanitized)}')`;\n });\n\n return escapedSegments.join('');\n}\n\nexport function encodeFileName(fileName: string) {\n if (!fileName.trim()) {\n throw new Error('File name cannot be empty.');\n }\n\n return encodeURIComponent(fileName.replace(/'/g, \"''\"));\n}\n","import type { SHAREPOINT_VER, DeleteFileProps } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\nimport { buildLibraryPath, encodeFileName } from './utils';\n\nconst SUPPORTED_VERSION: SHAREPOINT_VER = '2013';\n\nexport async function deleteFile<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { fileName, folderPath }: DeleteFileProps\n) {\n if (context.sharepointVersion !== SUPPORTED_VERSION) {\n throw new Error(\n 'deleteFile is only supported for SharePoint 2013 REST endpoints.'\n );\n }\n\n const encodedFileName = encodeFileName(fileName);\n let requestUrl = `_api/web/lists/getbytitle('${context.listName}')/RootFolder`;\n requestUrl += buildLibraryPath(folderPath);\n requestUrl += `/Files('${encodedFileName}')`;\n\n const digest = await fetchDigest(context.instance, context.baseURL);\n\n const response = await context.instance.post(requestUrl, undefined, {\n headers: {\n 'X-HTTP-Method': 'DELETE',\n 'IF-MATCH': '*',\n 'X-RequestDigest': digest,\n },\n withCredentials: true,\n });\n\n return response;\n}\n","import type { Folder_Options, Options, SHAREPOINT_VER } from '../../types';\n\ntype QueryableOptions<T, V extends SHAREPOINT_VER = '2013'> =\n | Options<T, V>\n | Folder_Options<T>;\n\nexport function buildODataParams<T, V extends SHAREPOINT_VER = '2013'>(\n options: QueryableOptions<T, V> | undefined,\n orderBySeparator: ',' | ' ' = ','\n) {\n const { expand, orderBy, limit, filter, cols, skip } = options || {};\n\n const params: Record<string, string | number | undefined> = {\n $expand: Array.isArray(expand) ? expand.join(',') : expand,\n $top: limit,\n $skip: skip,\n $select: Array.isArray(cols) ? cols.join(',') : cols,\n $filter: filter,\n $orderby: Array.isArray(orderBy)\n ? orderBy.join(orderBySeparator)\n : orderBy,\n };\n\n return params;\n}\n\nexport function appendParamsToUrl(\n baseUrl: URL,\n params: Record<string, string | number | undefined | null>\n) {\n Object.entries(params).forEach(([key, value]) => {\n if (value !== undefined && value !== null) {\n baseUrl.searchParams.append(key, String(value));\n }\n });\n}\n","import type { Folder_Options, SHAREPOINT_VER } from '../../../types';\nimport { appendParamsToUrl, buildODataParams } from '../odata';\nimport type { RequestContext } from '../context';\n\nexport async function getFiles<\n T,\n V extends SHAREPOINT_VER = '2013'\n>(\n context: RequestContext<V>,\n options?: Folder_Options<T>\n) {\n const params = buildODataParams(options, ',');\n const url = new URL(context.endpoint, context.instance.defaults.baseURL);\n\n appendParamsToUrl(url, params);\n\n const response = await context.instance.request({\n url: context.endpoint,\n method: 'GET',\n params,\n });\n\n const data =\n options?.limit || !response.data.d.results\n ? response.data.d\n : response.data.d.results;\n\n const meta = { url };\n\n return { data, meta };\n}\n","import type { Options, SPItem, SHAREPOINT_VER } from '../../../types';\nimport { appendParamsToUrl, buildODataParams } from '../odata';\nimport type { RequestContext } from '../context';\n\nexport async function getListItems<\n K,\n V extends SHAREPOINT_VER = '2013'\n>(\n context: RequestContext<V>,\n options?: Options<K, V>\n): Promise<{ data: (K & Partial<SPItem<V>>)[]; meta: { url: URL } }> {\n const params = buildODataParams(options, ' ');\n\n const url = new URL(context.endpoint, context.instance.defaults.baseURL);\n appendParamsToUrl(url, params);\n\n const response = await context.instance.request({\n url: context.endpoint,\n method: 'GET',\n params,\n });\n\n const rawData = response.data?.d?.results ?? response.data?.d ?? response.data;\n const cols = options?.cols;\n const keys = cols\n ? (Array.isArray(cols) ? cols : [cols]).filter(Boolean)\n : undefined;\n\n const filterItem = (item: unknown) => {\n if (!keys || !item || typeof item !== 'object') {\n return item;\n }\n\n return keys.reduce<Record<string, unknown>>((acc, key) => {\n if (key in item) {\n acc[key] = (item as Record<string, unknown>)[key];\n }\n\n return acc;\n }, {});\n };\n\n const data = Array.isArray(rawData)\n ? rawData.map(filterItem)\n : filterItem(rawData);\n\n const meta = { url };\n\n return { data: data as (K & Partial<SPItem<V>>)[], meta };\n}\n","import type { AxiosInstance } from 'axios';\nimport type { Options, SHAREPOINT_VER } from '../../../types';\nimport { buildODataParams } from '../odata';\n\nexport async function getOnly<\n T,\n V extends SHAREPOINT_VER = '2013'\n>(\n instance: AxiosInstance,\n endpoint: string,\n options?: Options<T, V>\n) {\n const params = buildODataParams(options, ',');\n const { data } = await instance.get(endpoint, { params });\n if (data) {\n return data.d.results ? data.d.results : data.d;\n }\n}\n","import type { ListData, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nasync function resolveMetadataType<V extends SHAREPOINT_VER>(\n context: RequestContext<V>\n) {\n if (context.resolveListItemEntityType) {\n return context.resolveListItemEntityType();\n }\n\n if (context.listItemEntityTypeFullName) {\n return context.listItemEntityTypeFullName;\n }\n\n return `SP.Data.${context.listName}ListItem`;\n}\n\nexport async function updateListItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n id: number | string,\n data: ListData,\n digest?: string\n) {\n const formDigestValue =\n digest || (await fetchDigest(context.instance, context.baseURL));\n\n const metadataType = await resolveMetadataType(context);\n const payload = {\n ...data,\n __metadata: {\n type: metadataType,\n },\n };\n\n const url = `_api/lists/getbytitle('${context.listName}')/getItemById('${id}')`;\n\n const response = await context.instance({\n url,\n method: 'POST',\n data: JSON.stringify(payload),\n headers: {\n 'X-RequestDigest': formDigestValue,\n 'IF-MATCH': '*',\n 'X-Http-Method': 'PATCH',\n },\n });\n\n return response;\n}\n","import type { AxiosResponse } from 'axios';\nimport type {\n ItemID,\n SHAREPOINT_VER,\n UploadFileProps,\n} from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\nimport { buildLibraryPath, encodeFileName } from './utils';\n\nconst SUPPORTED_VERSION: SHAREPOINT_VER = '2013';\n\nexport async function uploadFile<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { file, folderPath, overwrite = true }: UploadFileProps\n): Promise<AxiosResponse & { itemId?: ItemID }> {\n if (context.sharepointVersion !== SUPPORTED_VERSION) {\n throw new Error(\n 'uploadFile is only supported for SharePoint 2013 REST endpoints.'\n );\n }\n\n if (!file?.name) {\n throw new Error('A file with a valid name must be provided.');\n }\n\n let requestUrl = `_api/web/lists/getbytitle('${context.listName}')/RootFolder`;\n\n requestUrl += buildLibraryPath(folderPath);\n\n const encodedFileName = encodeFileName(file.name);\n requestUrl += `/Files/add(url='${encodedFileName}',overwrite=${\n overwrite ? 'true' : 'false'\n })?$expand=ListItemAllFields&$select=ListItemAllFields/Id`;\n\n const digest = await fetchDigest(context.instance, context.baseURL);\n\n const response = (await context.instance.post(requestUrl, file, {\n headers: {\n 'Content-Type': file.type || 'application/octet-stream',\n 'X-RequestDigest': digest,\n },\n withCredentials: true,\n })) as AxiosResponse & { itemId?: ItemID };\n\n const responseData = response.data?.d ?? response.data;\n const listItemFields = responseData?.ListItemAllFields;\n const itemId =\n listItemFields?.Id ??\n listItemFields?.ID ??\n responseData?.Id ??\n responseData?.ID;\n\n if (typeof itemId !== 'undefined') {\n response.itemId = itemId;\n } else if (listItemFields?.__deferred?.uri) {\n const listItemResponse = await context.instance.get(\n listItemFields.__deferred.uri\n );\n const deferredId =\n listItemResponse.data?.d?.Id ?? listItemResponse.data?.Id;\n\n if (typeof deferredId !== 'undefined') {\n response.itemId = deferredId;\n }\n }\n\n return response;\n}\n","import type { AxiosResponse } from 'axios';\nimport type { EmailProps } from '../../types';\nimport { fetchDigest } from './digest';\nimport type { RequestContext } from './context';\n\ntype SendEmailResponse = AxiosResponse<{\n d: {\n SendEmail: null;\n };\n}>;\n\nexport async function sendEmail(\n context: RequestContext,\n { From, To, Subject, Body }: EmailProps\n): Promise<SendEmailResponse> {\n const httpRequest = '_api/SP.Utilities.Utility.SendEmail';\n\n const response = await context.instance({\n url: httpRequest,\n method: 'POST',\n headers: {\n 'X-RequestDigest': await fetchDigest(\n context.instance,\n context.baseURL\n ),\n 'X-Http-Method': 'POST',\n 'Content-Type': 'application/json;odata=verbose',\n },\n data: JSON.stringify({\n properties: {\n __metadata: {\n type: 'SP.Utilities.EmailProperties',\n },\n From,\n To: {\n results: Array.isArray(To) ? To : [To],\n },\n Body,\n Subject,\n },\n }),\n });\n\n return response;\n}\n","import type { AxiosInstance } from 'axios';\nimport type {\n PersonField,\n UserPermision,\n UserProfile,\n} from '../../types';\nimport type { RequestContext } from './context';\n\ntype RoleDefinition = {\n BasePermissions: {\n High: string;\n };\n};\n\nexport async function typeAhead(\n instance: AxiosInstance,\n input: string,\n filter?: string\n): Promise<PersonField> {\n const requestUrl = `_api/SP.UI.ApplicationPages.ClientPeoplePickerWebServiceInterface.clientPeoplePickerSearchUser`;\n\n const data = {\n queryParams: {\n __metadata: {\n type: 'SP.UI.ApplicationPages.ClientPeoplePickerQueryParameters',\n },\n AllowEmailAddresses: true,\n AllowMultipleEntities: false,\n AllUrlZones: false,\n MaximumEntitySuggestions: 10,\n PrincipalSource: 15,\n PrincipalType: 1,\n QueryString: input,\n },\n };\n\n if (filter) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (data.queryParams as any).RequiredProperties = [filter];\n }\n\n const response = await instance.post(requestUrl, JSON.stringify(data), {\n headers: {\n Accept: 'application/json; odata=verbose',\n 'Content-Type': 'application/json;odata=verbose',\n },\n });\n\n return response.data.d.ClientPeoplePickerSearchUser;\n}\n\nexport async function currentUserProperties(\n instance: AxiosInstance\n): Promise<UserProfile> {\n const requestUrl = '_api/sp.userprofiles.peoplemanager/getmyproperties';\n let profile: any = await instance.get(requestUrl);\n\n profile = profile.data.d;\n\n profile.UserProfileProperties.results.forEach(\n (prop: { Key: string; Value: string }) => {\n if (prop.Key === 'FirstName') {\n profile.FirstName = prop.Value;\n }\n if (prop.Key === 'LastName') {\n profile.LastName = prop.Value;\n }\n if (prop.Key === 'Country') {\n profile.Country = prop.Value;\n }\n if (prop.Key === 'UserName') {\n profile.UserName = prop.Value;\n }\n }\n );\n\n return profile;\n}\n\nexport async function getSiteUser(instance: AxiosInstance, searchValue: string) {\n const requestUrl = `_api/web/siteusers?&$filter=substringof('${searchValue}', Title) or substringof('${searchValue}', LoginName) or substringof('${searchValue}', Email)&$top=50&$expand=Groups`;\n const response = await instance.get(requestUrl);\n return response.data.d;\n}\n\nexport async function roleDefinitions(instance: AxiosInstance) {\n const requestUrl = `_api/Web/RoleDefinitions`;\n const response = await instance.get(requestUrl);\n return response.data.d.results as RoleDefinition[];\n}\n\nexport async function getEffectiveBasePermissions(instance: AxiosInstance) {\n const requestUrl = `_api/Web/effectiveBasePermissions`;\n const response = await instance.get(requestUrl);\n return response.data.d.EffectiveBasePermissions;\n}\n\nexport async function currentUserPermissions(\n context: RequestContext\n): Promise<UserPermision> {\n const { High } = await getEffectiveBasePermissions(context.instance);\n const definitions = await roleDefinitions(context.instance);\n\n const result = definitions.find(\n ({ BasePermissions }: RoleDefinition) => BasePermissions.High === High\n );\n\n return result as UserPermision;\n}\n","import { AxiosInstance, CreateAxiosDefaults as AxiosConfig } from 'axios';\nimport instance from './instance';\nimport {\n CreateFileProps,\n DeleteFileProps,\n CurrentUser,\n EmailProps,\n Field_Options,\n Folder_Options,\n UploadFileProps,\n IListName,\n ItemID,\n ListData,\n Options,\n PersonField,\n SHAREPOINT_VER,\n UserPermision,\n UserProfile,\n} from '../types';\nimport { RequestContext } from './internal/context';\nimport {\n createAttachment,\n createListItem,\n deleteItem,\n deleteFile as deleteLibraryFile,\n getFiles,\n getListItems,\n getOnly,\n updateListItem,\n uploadFile,\n} from './internal/listRequests';\nimport { sendEmail as sendEmailRequest } from './internal/emailRequests';\nimport {\n currentUserPermissions as resolveCurrentUserPermissions,\n currentUserProperties as loadCurrentUserProperties,\n getSiteUser as fetchSiteUser,\n typeAhead,\n} from './internal/userRequests';\nimport { fetchDigest } from './internal/digest';\n\nclass HTTPSharePointRequests<\n T extends {\n LISTS: Record<string, unknown>;\n FOLDERS?: Record<string, unknown>;\n }\n> {\n private baseURL: string;\n private endpoint: string;\n private listName: string;\n private instance: AxiosInstance;\n private sharepointVersion: SHAREPOINT_VER;\n private listItemEntityTypeFullName?: string;\n\n constructor(baseURL: string, config?: AxiosConfig) {\n this.baseURL = baseURL.endsWith('/') ? baseURL : `${baseURL}/`;\n this.endpoint = '/api';\n this.listName = '';\n this.instance = instance(this.baseURL, config);\n this.sharepointVersion = '2013';\n this.listItemEntityTypeFullName = undefined;\n }\n\n private getContext<V extends SHAREPOINT_VER = '2013'>(): RequestContext<V> {\n return {\n instance: this.instance,\n baseURL: this.baseURL,\n endpoint: this.endpoint,\n listName: this.listName,\n sharepointVersion: this.sharepointVersion as V,\n listItemEntityTypeFullName: this.listItemEntityTypeFullName,\n resolveListItemEntityType: this.resolveListItemEntityTypeFullName.bind(\n this\n ),\n };\n }\n\n private async resolveListItemEntityTypeFullName(): Promise<string> {\n if (this.listItemEntityTypeFullName) {\n return this.listItemEntityTypeFullName;\n }\n\n if (!this.listName) {\n throw new Error('List name is not set.');\n }\n\n if (this.sharepointVersion !== '2013') {\n this.listItemEntityTypeFullName = `SP.Data.${this.listName}ListItem`;\n return this.listItemEntityTypeFullName;\n }\n\n const response = await this.instance.get(\n `_api/web/lists/GetByTitle('${this.listName}')?$select=ListItemEntityTypeFullName`\n );\n\n const entityType =\n response.data?.d?.ListItemEntityTypeFullName ??\n response.data?.ListItemEntityTypeFullName;\n\n if (!entityType || typeof entityType !== 'string') {\n throw new Error(\n `Unable to resolve ListItemEntityTypeFullName for list \"${this.listName}\".`\n );\n }\n\n this.listItemEntityTypeFullName = entityType;\n return this.listItemEntityTypeFullName;\n }\n\n /**\n * @deprecated Use `from` instead.\n */\n list(listName: IListName<T>) {\n this.listName = listName;\n this.endpoint = `_vti_bin/ListData.svc/${listName}`;\n this.sharepointVersion = '2010';\n this.listItemEntityTypeFullName = undefined;\n return this;\n }\n\n public readonly lists = {\n get: () => {\n this.endpoint = '_api/web/lists';\n this.sharepointVersion = '2013';\n return getListItems(this.getContext());\n },\n };\n\n public getDigest() {\n return fetchDigest(this.instance, this.baseURL);\n }\n\n public from<\n K extends Extract<keyof T['LISTS'], string>,\n V extends SHAREPOINT_VER = '2013'\n >(listName: K, sharepoint_ver?: V) {\n const version = (sharepoint_ver ?? '2013') as V;\n\n this.listName = listName;\n this.sharepointVersion = version;\n this.listItemEntityTypeFullName = undefined;\n this.endpoint =\n version === '2013'\n ? `_api/web/lists/GetByTitle('${this.listName}')/items`\n : `_vti_bin/ListData.svc/${listName}`;\n\n const getContext = () => this.getContext<V>();\n\n return {\n create: (data: ListData) => createListItem(getContext(), data),\n get: (options?: Options<T['LISTS'][K], V>) =>\n getListItems<T['LISTS'][K], V>(getContext(), options),\n update: (id: ItemID, data: ListData, digest?: string) =>\n updateListItem(getContext(), id, data, digest),\n delete: (id: ItemID) => deleteItem(getContext(), id),\n createFile: (props: CreateFileProps) =>\n createAttachment(getContext(), props),\n uploadFile: (props: UploadFileProps) => uploadFile(getContext(), props),\n deleteFile: (props: DeleteFileProps) =>\n deleteLibraryFile(getContext(), props),\n fields: (options?: Field_Options<T['LISTS'][K], V>) => {\n this.endpoint = !options?.fieldName\n ? `_api/web/lists/GetByTitle('${this.listName}')/fields`\n : `_api/web/lists/GetByTitle('${this.listName}')/fields/getbytitle('${options.fieldName}')`;\n return {\n get: () =>\n getOnly<T['LISTS'][K], V>(this.instance, this.endpoint, options),\n };\n },\n };\n }\n\n public folders = {\n get: () => {\n this.endpoint = '_api/web/folders';\n this.sharepointVersion = '2013';\n getListItems(this.getContext());\n },\n };\n\n public folder(folderName?: string | string[]) {\n let filePath = ['Shared Documents'];\n\n if (folderName) {\n filePath = Array.isArray(folderName)\n ? [...filePath, ...folderName]\n : [...filePath, folderName];\n }\n\n this.endpoint = `_api/web/GetFolderByServerRelativeUrl('${filePath.join(\n '/'\n )}')`;\n this.sharepointVersion = '2013';\n\n const getContext = () => this.getContext();\n\n return {\n get: (options?: Folder_Options<any>) => {\n if (!options?.type) {\n this.endpoint += '/Files';\n } else {\n this.endpoint += `/${options.type}`;\n }\n return getFiles(getContext(), options);\n },\n };\n }\n\n public users(options?: Options<any>) {\n this.endpoint = '_api/web/SiteUserInfoList/items';\n this.sharepointVersion = '2013';\n return {\n get: () => getListItems(this.getContext(), options),\n };\n }\n\n public email = {\n send: (props: EmailProps) => {\n this.sharepointVersion = '2013';\n return sendEmailRequest(this.getContext(), props);\n },\n };\n\n public user = {\n properties: () => ({\n get: (): Promise<UserProfile> => {\n this.sharepointVersion = '2013';\n return loadCurrentUserProperties(this.instance);\n },\n }),\n searchSiteUser: (searchValue: string) => {\n this.sharepointVersion = '2013';\n return fetchSiteUser(this.instance, searchValue);\n },\n searchUser: (input: string, filter?: string): Promise<PersonField> => {\n this.sharepointVersion = '2013';\n return typeAhead(this.instance, input, filter);\n },\n current: () => {\n this.endpoint = '_api/web/currentUser';\n this.sharepointVersion = '2013';\n return {\n get: (): Promise<CurrentUser> => getOnly(this.instance, this.endpoint),\n };\n },\n currentPermission: () => ({\n get: (): Promise<UserPermision> => {\n this.sharepointVersion = '2013';\n return resolveCurrentUserPermissions(this.getContext());\n },\n }),\n };\n}\n\nexport default HTTPSharePointRequests;\n","import SHAREPOINT_REQUESTS from './root';\n\nimport type { CreateAxiosDefaults as AxiosConfig } from 'axios';\nimport type { LookupField, ChoiceField, PersonField } from './types';\n\n// Load environment variables from .env file\n\nexport default function createBase<\n T extends { LISTS: Record<string, any>; FOLDERS?: Record<string, any> } = any\n>(){\n function create({\n baseURL,\n config,\n }: {\n baseURL: string;\n config?: AxiosConfig;\n }) {\n if (!baseURL) {\n throw new Error('A valid SharePoint URL must be provided.');\n }\n return new SHAREPOINT_REQUESTS<T>(baseURL, config);\n }\n\n return {\n /**\n * @deprecated Use `create` instead.\n */\n baseURL(url: string, config?: AxiosConfig) {\n return create({ baseURL: url, config });\n },\n create,\n };\n}\n\nexport { LookupField, ChoiceField, PersonField };\n\n\n"],"names":["defaultConfig","headers","Accept","Content-Type","timeout","withCredentials","fetchDigest","_x","_x2","_fetchDigest","apply","arguments","_asyncToGenerator","_regenerator","m","_callee","instance","baseURL","_response$data","formDigestValue","w","_context","p","n","post","v","data","d","GetContextWebInformation","FormDigestValue","Error","a","console","error","resolveMetadataType","_resolveMetadataType","context","resolveListItemEntityType","listItemEntityTypeFullName","listName","_createListItem","_callee2","listData","payload","_t","_t2","_t3","_t5","_context2","_extends","__metadata","type","endpoint","JSON","stringify","X-RequestDigest","call","url","method","_createAttachment","_ref","file","itemId","name","_deleteItem","id","buildLibraryPath","folderPath","segments","Array","isArray","split","filter","Boolean","length","map","segment","trim","sanitized","replace","encodeURIComponent","join","encodeFileName","fileName","_deleteFile","encodedFileName","requestUrl","digest","sharepointVersion","undefined","X-HTTP-Method","IF-MATCH","buildODataParams","options","orderBySeparator","expand","orderBy","limit","cols","skip","$expand","$top","$skip","$select","$filter","$orderby","appendParamsToUrl","baseUrl","params","Object","entries","forEach","_ref2","value","searchParams","append","String","_getFiles","response","URL","defaults","request","results","meta","getListItems","_getListItems","_response$data$d$resu","_response$data2","rawData","keys","filterItem","item","reduce","acc","key","getOnly","_x3","_getOnly","get","_updateListItem","X-Http-Method","_uploadFile","_response$data$d","_ref3","_listItemFields$Id","_listItemFields$__def","_ref$overwrite","overwrite","responseData","listItemFields","_listItemResponse$dat","_listItemResponse$dat2","_listItemResponse$dat3","listItemResponse","deferredId","ListItemAllFields","Id","ID","__deferred","uri","_sendEmail","From","To","Subject","Body","_t4","properties","_typeAhead","input","queryParams","AllowEmailAddresses","AllowMultipleEntities","AllUrlZones","MaximumEntitySuggestions","PrincipalSource","PrincipalType","QueryString","RequiredProperties","ClientPeoplePickerSearchUser","_currentUserProperties","profile","UserProfileProperties","prop","Key","FirstName","Value","LastName","Country","UserName","_getSiteUser","_callee3","searchValue","_context3","roleDefinitions","_x7","_roleDefinitions","_callee4","_context4","getEffectiveBasePermissions","_x8","_getEffectiveBasePermissions","_callee5","_context5","EffectiveBasePermissions","_currentUserPermissions","_callee6","High","result","_context6","find","BasePermissions","HTTPSharePointRequests","config","this","lists","_this","getContext","folders","email","send","props","sendEmailRequest","user","_x4","loadCurrentUserProperties","searchSiteUser","_x5","_x6","fetchSiteUser","searchUser","typeAhead","current","currentPermission","_x9","resolveCurrentUserPermissions","endsWith","userHeaders","AxiosHeaders","toJSON","_config$headers","axios","create","_proto","prototype","resolveListItemEntityTypeFullName","bind","_resolveListItemEntityTypeFullName","_response$data$d$List","entityType","ListItemEntityTypeFullName","list","getDigest","from","sharepoint_ver","version","_this2","createListItem","update","updateListItem","delete","deleteItem","createFile","createAttachment","uploadFile","deleteFile","deleteLibraryFile","fields","fieldName","folder","folderName","filePath","concat","_this3","getFiles","users","_this4","SHAREPOINT_REQUESTS"],"mappings":"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"}
|
|
@@ -613,7 +613,8 @@ function uploadFile(_x, _x2) {
|
|
|
613
613
|
}
|
|
614
614
|
function _uploadFile() {
|
|
615
615
|
_uploadFile = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(context, _ref) {
|
|
616
|
-
var
|
|
616
|
+
var _response$data$d, _response$data, _ref2, _ref3, _listItemFields$Id, _listItemFields$__def;
|
|
617
|
+
var file, folderPath, _ref$overwrite, overwrite, requestUrl, encodedFileName, digest, response, responseData, listItemFields, itemId, _listItemResponse$dat, _listItemResponse$dat2, _listItemResponse$dat3, listItemResponse, deferredId;
|
|
617
618
|
return _regenerator().w(function (_context) {
|
|
618
619
|
while (1) switch (_context.n) {
|
|
619
620
|
case 0:
|
|
@@ -633,7 +634,7 @@ function _uploadFile() {
|
|
|
633
634
|
requestUrl = "_api/web/lists/getbytitle('" + context.listName + "')/RootFolder";
|
|
634
635
|
requestUrl += buildLibraryPath(folderPath);
|
|
635
636
|
encodedFileName = encodeFileName(file.name);
|
|
636
|
-
requestUrl += "/Files/add(url='" + encodedFileName + "',overwrite=" + (overwrite ? 'true' : 'false') + ")";
|
|
637
|
+
requestUrl += "/Files/add(url='" + encodedFileName + "',overwrite=" + (overwrite ? 'true' : 'false') + ")?$expand=ListItemAllFields&$select=ListItemAllFields/Id";
|
|
637
638
|
_context.n = 3;
|
|
638
639
|
return fetchDigest(context.instance, context.baseURL);
|
|
639
640
|
case 3:
|
|
@@ -648,6 +649,30 @@ function _uploadFile() {
|
|
|
648
649
|
});
|
|
649
650
|
case 4:
|
|
650
651
|
response = _context.v;
|
|
652
|
+
responseData = (_response$data$d = (_response$data = response.data) == null ? void 0 : _response$data.d) != null ? _response$data$d : response.data;
|
|
653
|
+
listItemFields = responseData == null ? void 0 : responseData.ListItemAllFields;
|
|
654
|
+
itemId = (_ref2 = (_ref3 = (_listItemFields$Id = listItemFields == null ? void 0 : listItemFields.Id) != null ? _listItemFields$Id : listItemFields == null ? void 0 : listItemFields.ID) != null ? _ref3 : responseData == null ? void 0 : responseData.Id) != null ? _ref2 : responseData == null ? void 0 : responseData.ID;
|
|
655
|
+
if (!(typeof itemId !== 'undefined')) {
|
|
656
|
+
_context.n = 5;
|
|
657
|
+
break;
|
|
658
|
+
}
|
|
659
|
+
response.itemId = itemId;
|
|
660
|
+
_context.n = 7;
|
|
661
|
+
break;
|
|
662
|
+
case 5:
|
|
663
|
+
if (!(listItemFields != null && (_listItemFields$__def = listItemFields.__deferred) != null && _listItemFields$__def.uri)) {
|
|
664
|
+
_context.n = 7;
|
|
665
|
+
break;
|
|
666
|
+
}
|
|
667
|
+
_context.n = 6;
|
|
668
|
+
return context.instance.get(listItemFields.__deferred.uri);
|
|
669
|
+
case 6:
|
|
670
|
+
listItemResponse = _context.v;
|
|
671
|
+
deferredId = (_listItemResponse$dat = (_listItemResponse$dat2 = listItemResponse.data) == null || (_listItemResponse$dat2 = _listItemResponse$dat2.d) == null ? void 0 : _listItemResponse$dat2.Id) != null ? _listItemResponse$dat : (_listItemResponse$dat3 = listItemResponse.data) == null ? void 0 : _listItemResponse$dat3.Id;
|
|
672
|
+
if (typeof deferredId !== 'undefined') {
|
|
673
|
+
response.itemId = deferredId;
|
|
674
|
+
}
|
|
675
|
+
case 7:
|
|
651
676
|
return _context.a(2, response);
|
|
652
677
|
}
|
|
653
678
|
}, _callee);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharepoint_requests.esm.js","sources":["../src/root/instance.ts","../src/root/internal/digest.ts","../src/root/internal/listRequests/createListItem.ts","../src/root/internal/listRequests/createAttachment.ts","../src/root/internal/listRequests/deleteItem.ts","../src/root/internal/listRequests/utils.ts","../src/root/internal/listRequests/deleteFile.ts","../src/root/internal/odata.ts","../src/root/internal/listRequests/getFiles.ts","../src/root/internal/listRequests/getListItems.ts","../src/root/internal/listRequests/getOnly.ts","../src/root/internal/listRequests/updateListItem.ts","../src/root/internal/listRequests/uploadFile.ts","../src/root/internal/emailRequests.ts","../src/root/internal/userRequests.ts","../src/root/index.ts","../src/index.ts"],"sourcesContent":["import axios, { AxiosHeaders, CreateAxiosDefaults as AxiosConfig } from 'axios';\n\nconst defaultConfig: AxiosConfig = {\n headers: {\n Accept: 'application/json; odata=verbose',\n 'Content-Type': 'application/json; odata=verbose',\n },\n timeout: 15000,\n withCredentials: true,\n};\n\nexport const instance = (baseURL: string, config?: AxiosConfig) => {\n const userHeaders =\n config?.headers instanceof AxiosHeaders\n ? config.headers.toJSON()\n : config?.headers ?? {};\n\n return axios.create({\n ...defaultConfig,\n ...config,\n baseURL,\n headers: {\n ...defaultConfig.headers,\n ...userHeaders,\n },\n });\n};\n\nexport default instance;\n","import type { AxiosInstance } from 'axios';\n\nexport async function fetchDigest(\n instance: AxiosInstance,\n baseURL: string\n): Promise<string> {\n try {\n const response = await instance.post(`${baseURL}_api/contextinfo`);\n\n const formDigestValue =\n response.data?.d?.GetContextWebInformation?.FormDigestValue;\n\n if (!formDigestValue) {\n throw new Error('Invalid response structure: Missing FormDigestValue');\n }\n\n return formDigestValue;\n } catch (error) {\n console.error('Failed to retrieve the Form Digest Value:', error);\n throw new Error(`Error retrieving Form Digest Value`);\n }\n}\n","import type { ListData, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nasync function resolveMetadataType<V extends SHAREPOINT_VER>(\n context: RequestContext<V>\n) {\n if (context.resolveListItemEntityType) {\n return context.resolveListItemEntityType();\n }\n\n if (context.listItemEntityTypeFullName) {\n return context.listItemEntityTypeFullName;\n }\n\n return `SP.Data.${context.listName}ListItem`;\n}\n\nexport async function createListItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n listData: ListData\n) {\n const metadataType = await resolveMetadataType(context);\n const payload = {\n ...listData,\n __metadata: {\n type: metadataType,\n },\n };\n\n const response = await context.instance({\n url: context.endpoint,\n method: 'POST',\n data: JSON.stringify(payload),\n headers: {\n 'X-RequestDigest': await fetchDigest(context.instance, context.baseURL),\n },\n });\n\n return response;\n}\n","import type { CreateFileProps, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nexport async function createAttachment<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { file, itemId }: CreateFileProps\n) {\n const requestUrl = `_api/lists/getbytitle('${context.listName}')/items(${itemId})/AttachmentFiles/add(FileName='${file.name}')`;\n const response = await context.instance.post(requestUrl, file, {\n headers: {\n 'X-RequestDigest': await fetchDigest(context.instance, context.baseURL),\n },\n withCredentials: true,\n });\n\n return response;\n}\n","import type { SHAREPOINT_VER } from '../../../types';\nimport type { RequestContext } from '../context';\n\nexport async function deleteItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n id: number | string\n) {\n const response = await context.instance.delete(`${context.endpoint}(${id})`);\n return response;\n}\n","export function buildLibraryPath(folderPath?: string | string[]) {\n if (!folderPath) {\n return '';\n }\n\n const segments = Array.isArray(folderPath)\n ? folderPath\n : folderPath.split('/').filter(Boolean);\n\n if (!segments.length) {\n return '';\n }\n\n const escapedSegments = segments.map((segment) => {\n if (!segment.trim()) {\n throw new Error('Folder path segments cannot be empty.');\n }\n\n const sanitized = segment.replace(/'/g, \"''\");\n\n return `/Folders('${encodeURIComponent(sanitized)}')`;\n });\n\n return escapedSegments.join('');\n}\n\nexport function encodeFileName(fileName: string) {\n if (!fileName.trim()) {\n throw new Error('File name cannot be empty.');\n }\n\n return encodeURIComponent(fileName.replace(/'/g, \"''\"));\n}\n","import type { SHAREPOINT_VER, DeleteFileProps } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\nimport { buildLibraryPath, encodeFileName } from './utils';\n\nconst SUPPORTED_VERSION: SHAREPOINT_VER = '2013';\n\nexport async function deleteFile<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { fileName, folderPath }: DeleteFileProps\n) {\n if (context.sharepointVersion !== SUPPORTED_VERSION) {\n throw new Error(\n 'deleteFile is only supported for SharePoint 2013 REST endpoints.'\n );\n }\n\n const encodedFileName = encodeFileName(fileName);\n let requestUrl = `_api/web/lists/getbytitle('${context.listName}')/RootFolder`;\n requestUrl += buildLibraryPath(folderPath);\n requestUrl += `/Files('${encodedFileName}')`;\n\n const digest = await fetchDigest(context.instance, context.baseURL);\n\n const response = await context.instance.post(requestUrl, undefined, {\n headers: {\n 'X-HTTP-Method': 'DELETE',\n 'IF-MATCH': '*',\n 'X-RequestDigest': digest,\n },\n withCredentials: true,\n });\n\n return response;\n}\n","import type { Folder_Options, Options, SHAREPOINT_VER } from '../../types';\n\ntype QueryableOptions<T, V extends SHAREPOINT_VER = '2013'> =\n | Options<T, V>\n | Folder_Options<T>;\n\nexport function buildODataParams<T, V extends SHAREPOINT_VER = '2013'>(\n options: QueryableOptions<T, V> | undefined,\n orderBySeparator: ',' | ' ' = ','\n) {\n const { expand, orderBy, limit, filter, cols, skip } = options || {};\n\n const params: Record<string, string | number | undefined> = {\n $expand: Array.isArray(expand) ? expand.join(',') : expand,\n $top: limit,\n $skip: skip,\n $select: Array.isArray(cols) ? cols.join(',') : cols,\n $filter: filter,\n $orderby: Array.isArray(orderBy)\n ? orderBy.join(orderBySeparator)\n : orderBy,\n };\n\n return params;\n}\n\nexport function appendParamsToUrl(\n baseUrl: URL,\n params: Record<string, string | number | undefined | null>\n) {\n Object.entries(params).forEach(([key, value]) => {\n if (value !== undefined && value !== null) {\n baseUrl.searchParams.append(key, String(value));\n }\n });\n}\n","import type { Folder_Options, SHAREPOINT_VER } from '../../../types';\nimport { appendParamsToUrl, buildODataParams } from '../odata';\nimport type { RequestContext } from '../context';\n\nexport async function getFiles<\n T,\n V extends SHAREPOINT_VER = '2013'\n>(\n context: RequestContext<V>,\n options?: Folder_Options<T>\n) {\n const params = buildODataParams(options, ',');\n const url = new URL(context.endpoint, context.instance.defaults.baseURL);\n\n appendParamsToUrl(url, params);\n\n const response = await context.instance.request({\n url: context.endpoint,\n method: 'GET',\n params,\n });\n\n const data =\n options?.limit || !response.data.d.results\n ? response.data.d\n : response.data.d.results;\n\n const meta = { url };\n\n return { data, meta };\n}\n","import type { Options, SPItem, SHAREPOINT_VER } from '../../../types';\nimport { appendParamsToUrl, buildODataParams } from '../odata';\nimport type { RequestContext } from '../context';\n\nexport async function getListItems<\n K,\n V extends SHAREPOINT_VER = '2013'\n>(\n context: RequestContext<V>,\n options?: Options<K, V>\n): Promise<{ data: (K & Partial<SPItem<V>>)[]; meta: { url: URL } }> {\n const params = buildODataParams(options, ' ');\n\n const url = new URL(context.endpoint, context.instance.defaults.baseURL);\n appendParamsToUrl(url, params);\n\n const response = await context.instance.request({\n url: context.endpoint,\n method: 'GET',\n params,\n });\n\n const rawData = response.data?.d?.results ?? response.data?.d ?? response.data;\n const cols = options?.cols;\n const keys = cols\n ? (Array.isArray(cols) ? cols : [cols]).filter(Boolean)\n : undefined;\n\n const filterItem = (item: unknown) => {\n if (!keys || !item || typeof item !== 'object') {\n return item;\n }\n\n return keys.reduce<Record<string, unknown>>((acc, key) => {\n if (key in item) {\n acc[key] = (item as Record<string, unknown>)[key];\n }\n\n return acc;\n }, {});\n };\n\n const data = Array.isArray(rawData)\n ? rawData.map(filterItem)\n : filterItem(rawData);\n\n const meta = { url };\n\n return { data: data as (K & Partial<SPItem<V>>)[], meta };\n}\n","import type { AxiosInstance } from 'axios';\nimport type { Options, SHAREPOINT_VER } from '../../../types';\nimport { buildODataParams } from '../odata';\n\nexport async function getOnly<\n T,\n V extends SHAREPOINT_VER = '2013'\n>(\n instance: AxiosInstance,\n endpoint: string,\n options?: Options<T, V>\n) {\n const params = buildODataParams(options, ',');\n const { data } = await instance.get(endpoint, { params });\n if (data) {\n return data.d.results ? data.d.results : data.d;\n }\n}\n","import type { ListData, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nasync function resolveMetadataType<V extends SHAREPOINT_VER>(\n context: RequestContext<V>\n) {\n if (context.resolveListItemEntityType) {\n return context.resolveListItemEntityType();\n }\n\n if (context.listItemEntityTypeFullName) {\n return context.listItemEntityTypeFullName;\n }\n\n return `SP.Data.${context.listName}ListItem`;\n}\n\nexport async function updateListItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n id: number | string,\n data: ListData,\n digest?: string\n) {\n const formDigestValue =\n digest || (await fetchDigest(context.instance, context.baseURL));\n\n const metadataType = await resolveMetadataType(context);\n const payload = {\n ...data,\n __metadata: {\n type: metadataType,\n },\n };\n\n const url = `_api/lists/getbytitle('${context.listName}')/getItemById('${id}')`;\n\n const response = await context.instance({\n url,\n method: 'POST',\n data: JSON.stringify(payload),\n headers: {\n 'X-RequestDigest': formDigestValue,\n 'IF-MATCH': '*',\n 'X-Http-Method': 'PATCH',\n },\n });\n\n return response;\n}\n","import type { SHAREPOINT_VER, UploadFileProps } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\nimport { buildLibraryPath, encodeFileName } from './utils';\n\nconst SUPPORTED_VERSION: SHAREPOINT_VER = '2013';\n\nexport async function uploadFile<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { file, folderPath, overwrite = true }: UploadFileProps\n) {\n if (context.sharepointVersion !== SUPPORTED_VERSION) {\n throw new Error(\n 'uploadFile is only supported for SharePoint 2013 REST endpoints.'\n );\n }\n\n if (!file?.name) {\n throw new Error('A file with a valid name must be provided.');\n }\n\n let requestUrl = `_api/web/lists/getbytitle('${context.listName}')/RootFolder`;\n\n requestUrl += buildLibraryPath(folderPath);\n\n const encodedFileName = encodeFileName(file.name);\n requestUrl += `/Files/add(url='${encodedFileName}',overwrite=${\n overwrite ? 'true' : 'false'\n })`;\n\n const digest = await fetchDigest(context.instance, context.baseURL);\n\n const response = await context.instance.post(requestUrl, file, {\n headers: {\n 'Content-Type': file.type || 'application/octet-stream',\n 'X-RequestDigest': digest,\n },\n withCredentials: true,\n });\n\n return response;\n}\n","import type { AxiosResponse } from 'axios';\nimport type { EmailProps } from '../../types';\nimport { fetchDigest } from './digest';\nimport type { RequestContext } from './context';\n\ntype SendEmailResponse = AxiosResponse<{\n d: {\n SendEmail: null;\n };\n}>;\n\nexport async function sendEmail(\n context: RequestContext,\n { From, To, Subject, Body }: EmailProps\n): Promise<SendEmailResponse> {\n const httpRequest = '_api/SP.Utilities.Utility.SendEmail';\n\n const response = await context.instance({\n url: httpRequest,\n method: 'POST',\n headers: {\n 'X-RequestDigest': await fetchDigest(\n context.instance,\n context.baseURL\n ),\n 'X-Http-Method': 'POST',\n 'Content-Type': 'application/json;odata=verbose',\n },\n data: JSON.stringify({\n properties: {\n __metadata: {\n type: 'SP.Utilities.EmailProperties',\n },\n From,\n To: {\n results: Array.isArray(To) ? To : [To],\n },\n Body,\n Subject,\n },\n }),\n });\n\n return response;\n}\n","import type { AxiosInstance } from 'axios';\nimport type {\n PersonField,\n UserPermision,\n UserProfile,\n} from '../../types';\nimport type { RequestContext } from './context';\n\ntype RoleDefinition = {\n BasePermissions: {\n High: string;\n };\n};\n\nexport async function typeAhead(\n instance: AxiosInstance,\n input: string,\n filter?: string\n): Promise<PersonField> {\n const requestUrl = `_api/SP.UI.ApplicationPages.ClientPeoplePickerWebServiceInterface.clientPeoplePickerSearchUser`;\n\n const data = {\n queryParams: {\n __metadata: {\n type: 'SP.UI.ApplicationPages.ClientPeoplePickerQueryParameters',\n },\n AllowEmailAddresses: true,\n AllowMultipleEntities: false,\n AllUrlZones: false,\n MaximumEntitySuggestions: 10,\n PrincipalSource: 15,\n PrincipalType: 1,\n QueryString: input,\n },\n };\n\n if (filter) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (data.queryParams as any).RequiredProperties = [filter];\n }\n\n const response = await instance.post(requestUrl, JSON.stringify(data), {\n headers: {\n Accept: 'application/json; odata=verbose',\n 'Content-Type': 'application/json;odata=verbose',\n },\n });\n\n return response.data.d.ClientPeoplePickerSearchUser;\n}\n\nexport async function currentUserProperties(\n instance: AxiosInstance\n): Promise<UserProfile> {\n const requestUrl = '_api/sp.userprofiles.peoplemanager/getmyproperties';\n let profile: any = await instance.get(requestUrl);\n\n profile = profile.data.d;\n\n profile.UserProfileProperties.results.forEach(\n (prop: { Key: string; Value: string }) => {\n if (prop.Key === 'FirstName') {\n profile.FirstName = prop.Value;\n }\n if (prop.Key === 'LastName') {\n profile.LastName = prop.Value;\n }\n if (prop.Key === 'Country') {\n profile.Country = prop.Value;\n }\n if (prop.Key === 'UserName') {\n profile.UserName = prop.Value;\n }\n }\n );\n\n return profile;\n}\n\nexport async function getSiteUser(instance: AxiosInstance, searchValue: string) {\n const requestUrl = `_api/web/siteusers?&$filter=substringof('${searchValue}', Title) or substringof('${searchValue}', LoginName) or substringof('${searchValue}', Email)&$top=50&$expand=Groups`;\n const response = await instance.get(requestUrl);\n return response.data.d;\n}\n\nexport async function roleDefinitions(instance: AxiosInstance) {\n const requestUrl = `_api/Web/RoleDefinitions`;\n const response = await instance.get(requestUrl);\n return response.data.d.results as RoleDefinition[];\n}\n\nexport async function getEffectiveBasePermissions(instance: AxiosInstance) {\n const requestUrl = `_api/Web/effectiveBasePermissions`;\n const response = await instance.get(requestUrl);\n return response.data.d.EffectiveBasePermissions;\n}\n\nexport async function currentUserPermissions(\n context: RequestContext\n): Promise<UserPermision> {\n const { High } = await getEffectiveBasePermissions(context.instance);\n const definitions = await roleDefinitions(context.instance);\n\n const result = definitions.find(\n ({ BasePermissions }: RoleDefinition) => BasePermissions.High === High\n );\n\n return result as UserPermision;\n}\n","import { AxiosInstance, CreateAxiosDefaults as AxiosConfig } from 'axios';\nimport instance from './instance';\nimport {\n CreateFileProps,\n DeleteFileProps,\n CurrentUser,\n EmailProps,\n Field_Options,\n Folder_Options,\n UploadFileProps,\n IListName,\n ItemID,\n ListData,\n Options,\n PersonField,\n SHAREPOINT_VER,\n UserPermision,\n UserProfile,\n} from '../types';\nimport { RequestContext } from './internal/context';\nimport {\n createAttachment,\n createListItem,\n deleteItem,\n deleteFile as deleteLibraryFile,\n getFiles,\n getListItems,\n getOnly,\n updateListItem,\n uploadFile,\n} from './internal/listRequests';\nimport { sendEmail as sendEmailRequest } from './internal/emailRequests';\nimport {\n currentUserPermissions as resolveCurrentUserPermissions,\n currentUserProperties as loadCurrentUserProperties,\n getSiteUser as fetchSiteUser,\n typeAhead,\n} from './internal/userRequests';\nimport { fetchDigest } from './internal/digest';\n\nclass HTTPSharePointRequests<\n T extends {\n LISTS: Record<string, unknown>;\n FOLDERS?: Record<string, unknown>;\n }\n> {\n private baseURL: string;\n private endpoint: string;\n private listName: string;\n private instance: AxiosInstance;\n private sharepointVersion: SHAREPOINT_VER;\n private listItemEntityTypeFullName?: string;\n\n constructor(baseURL: string, config?: AxiosConfig) {\n this.baseURL = baseURL.endsWith('/') ? baseURL : `${baseURL}/`;\n this.endpoint = '/api';\n this.listName = '';\n this.instance = instance(this.baseURL, config);\n this.sharepointVersion = '2013';\n this.listItemEntityTypeFullName = undefined;\n }\n\n private getContext<V extends SHAREPOINT_VER = '2013'>(): RequestContext<V> {\n return {\n instance: this.instance,\n baseURL: this.baseURL,\n endpoint: this.endpoint,\n listName: this.listName,\n sharepointVersion: this.sharepointVersion as V,\n listItemEntityTypeFullName: this.listItemEntityTypeFullName,\n resolveListItemEntityType: this.resolveListItemEntityTypeFullName.bind(\n this\n ),\n };\n }\n\n private async resolveListItemEntityTypeFullName(): Promise<string> {\n if (this.listItemEntityTypeFullName) {\n return this.listItemEntityTypeFullName;\n }\n\n if (!this.listName) {\n throw new Error('List name is not set.');\n }\n\n if (this.sharepointVersion !== '2013') {\n this.listItemEntityTypeFullName = `SP.Data.${this.listName}ListItem`;\n return this.listItemEntityTypeFullName;\n }\n\n const response = await this.instance.get(\n `_api/web/lists/GetByTitle('${this.listName}')?$select=ListItemEntityTypeFullName`\n );\n\n const entityType =\n response.data?.d?.ListItemEntityTypeFullName ??\n response.data?.ListItemEntityTypeFullName;\n\n if (!entityType || typeof entityType !== 'string') {\n throw new Error(\n `Unable to resolve ListItemEntityTypeFullName for list \"${this.listName}\".`\n );\n }\n\n this.listItemEntityTypeFullName = entityType;\n return this.listItemEntityTypeFullName;\n }\n\n /**\n * @deprecated Use `from` instead.\n */\n list(listName: IListName<T>) {\n this.listName = listName;\n this.endpoint = `_vti_bin/ListData.svc/${listName}`;\n this.sharepointVersion = '2010';\n this.listItemEntityTypeFullName = undefined;\n return this;\n }\n\n public readonly lists = {\n get: () => {\n this.endpoint = '_api/web/lists';\n this.sharepointVersion = '2013';\n return getListItems(this.getContext());\n },\n };\n\n public getDigest() {\n return fetchDigest(this.instance, this.baseURL);\n }\n\n public from<\n K extends Extract<keyof T['LISTS'], string>,\n V extends SHAREPOINT_VER = '2013'\n >(listName: K, sharepoint_ver?: V) {\n const version = (sharepoint_ver ?? '2013') as V;\n\n this.listName = listName;\n this.sharepointVersion = version;\n this.listItemEntityTypeFullName = undefined;\n this.endpoint =\n version === '2013'\n ? `_api/web/lists/GetByTitle('${this.listName}')/items`\n : `_vti_bin/ListData.svc/${listName}`;\n\n const getContext = () => this.getContext<V>();\n\n return {\n create: (data: ListData) => createListItem(getContext(), data),\n get: (options?: Options<T['LISTS'][K], V>) =>\n getListItems<T['LISTS'][K], V>(getContext(), options),\n update: (id: ItemID, data: ListData, digest?: string) =>\n updateListItem(getContext(), id, data, digest),\n delete: (id: ItemID) => deleteItem(getContext(), id),\n createFile: (props: CreateFileProps) =>\n createAttachment(getContext(), props),\n uploadFile: (props: UploadFileProps) => uploadFile(getContext(), props),\n deleteFile: (props: DeleteFileProps) =>\n deleteLibraryFile(getContext(), props),\n fields: (options?: Field_Options<T['LISTS'][K], V>) => {\n this.endpoint = !options?.fieldName\n ? `_api/web/lists/GetByTitle('${this.listName}')/fields`\n : `_api/web/lists/GetByTitle('${this.listName}')/fields/getbytitle('${options.fieldName}')`;\n return {\n get: () =>\n getOnly<T['LISTS'][K], V>(this.instance, this.endpoint, options),\n };\n },\n };\n }\n\n public folders = {\n get: () => {\n this.endpoint = '_api/web/folders';\n this.sharepointVersion = '2013';\n getListItems(this.getContext());\n },\n };\n\n public folder(folderName?: string | string[]) {\n let filePath = ['Shared Documents'];\n\n if (folderName) {\n filePath = Array.isArray(folderName)\n ? [...filePath, ...folderName]\n : [...filePath, folderName];\n }\n\n this.endpoint = `_api/web/GetFolderByServerRelativeUrl('${filePath.join(\n '/'\n )}')`;\n this.sharepointVersion = '2013';\n\n const getContext = () => this.getContext();\n\n return {\n get: (options?: Folder_Options<any>) => {\n if (!options?.type) {\n this.endpoint += '/Files';\n } else {\n this.endpoint += `/${options.type}`;\n }\n return getFiles(getContext(), options);\n },\n };\n }\n\n public users(options?: Options<any>) {\n this.endpoint = '_api/web/SiteUserInfoList/items';\n this.sharepointVersion = '2013';\n return {\n get: () => getListItems(this.getContext(), options),\n };\n }\n\n public email = {\n send: (props: EmailProps) => {\n this.sharepointVersion = '2013';\n return sendEmailRequest(this.getContext(), props);\n },\n };\n\n public user = {\n properties: () => ({\n get: (): Promise<UserProfile> => {\n this.sharepointVersion = '2013';\n return loadCurrentUserProperties(this.instance);\n },\n }),\n searchSiteUser: (searchValue: string) => {\n this.sharepointVersion = '2013';\n return fetchSiteUser(this.instance, searchValue);\n },\n searchUser: (input: string, filter?: string): Promise<PersonField> => {\n this.sharepointVersion = '2013';\n return typeAhead(this.instance, input, filter);\n },\n current: () => {\n this.endpoint = '_api/web/currentUser';\n this.sharepointVersion = '2013';\n return {\n get: (): Promise<CurrentUser> => getOnly(this.instance, this.endpoint),\n };\n },\n currentPermission: () => ({\n get: (): Promise<UserPermision> => {\n this.sharepointVersion = '2013';\n return resolveCurrentUserPermissions(this.getContext());\n },\n }),\n };\n}\n\nexport default HTTPSharePointRequests;\n","import SHAREPOINT_REQUESTS from './root';\n\nimport type { CreateAxiosDefaults as AxiosConfig } from 'axios';\nimport type { LookupField, ChoiceField, PersonField } from './types';\n\n// Load environment variables from .env file\n\nexport default function createBase<\n T extends { LISTS: Record<string, any>; FOLDERS?: Record<string, any> } = any\n>(){\n function create({\n baseURL,\n config,\n }: {\n baseURL: string;\n config?: AxiosConfig;\n }) {\n if (!baseURL) {\n throw new Error('A valid SharePoint URL must be provided.');\n }\n return new SHAREPOINT_REQUESTS<T>(baseURL, config);\n }\n\n return {\n /**\n * @deprecated Use `create` instead.\n */\n baseURL(url: string, config?: AxiosConfig) {\n return create({ baseURL: url, config });\n },\n create,\n };\n}\n\nexport { LookupField, ChoiceField, PersonField };\n\n\n"],"names":["defaultConfig","headers","Accept","timeout","withCredentials","instance","baseURL","config","userHeaders","AxiosHeaders","toJSON","_config$headers","axios","create","_extends","fetchDigest","_x","_x2","_fetchDigest","apply","arguments","_asyncToGenerator","_regenerator","m","_callee","_response$data","response","formDigestValue","_t","w","_context","p","n","post","v","data","d","GetContextWebInformation","FormDigestValue","Error","a","console","error","resolveMetadataType","_resolveMetadataType","context","resolveListItemEntityType","listItemEntityTypeFullName","listName","createListItem","_x3","_createListItem","_callee2","listData","metadataType","payload","_t2","_t3","_t4","_t5","_context2","__metadata","type","endpoint","JSON","stringify","call","url","method","createAttachment","_createAttachment","_ref","file","itemId","requestUrl","name","deleteItem","_deleteItem","id","buildLibraryPath","folderPath","segments","Array","isArray","split","filter","Boolean","length","escapedSegments","map","segment","trim","sanitized","replace","encodeURIComponent","join","encodeFileName","fileName","SUPPORTED_VERSION","deleteFile","_deleteFile","encodedFileName","digest","sharepointVersion","undefined","buildODataParams","options","orderBySeparator","expand","orderBy","limit","cols","skip","params","$expand","$top","$skip","$select","$filter","$orderby","appendParamsToUrl","baseUrl","Object","entries","forEach","_ref2","key","value","searchParams","append","String","getFiles","_getFiles","meta","URL","defaults","request","results","getListItems","_getListItems","_response$data$d$resu","_response$data2","rawData","keys","filterItem","item","reduce","acc","getOnly","_getOnly","_yield$instance$get","get","updateListItem","_x4","_x5","_updateListItem","uploadFile","_uploadFile","_ref$overwrite","overwrite","sendEmail","_sendEmail","From","To","Subject","Body","httpRequest","properties","typeAhead","_typeAhead","input","queryParams","AllowEmailAddresses","AllowMultipleEntities","AllUrlZones","MaximumEntitySuggestions","PrincipalSource","PrincipalType","QueryString","RequiredProperties","ClientPeoplePickerSearchUser","currentUserProperties","_currentUserProperties","profile","UserProfileProperties","prop","Key","FirstName","Value","LastName","Country","UserName","getSiteUser","_x6","_getSiteUser","_callee3","searchValue","_context3","roleDefinitions","_x7","_roleDefinitions","_callee4","_context4","getEffectiveBasePermissions","_x8","_getEffectiveBasePermissions","_callee5","_context5","EffectiveBasePermissions","currentUserPermissions","_x9","_currentUserPermissions","_callee6","_yield$getEffectiveBa","High","definitions","result","_context6","find","BasePermissions","HTTPSharePointRequests","lists","_this","getContext","folders","email","send","props","sendEmailRequest","user","loadCurrentUserProperties","searchSiteUser","fetchSiteUser","searchUser","current","currentPermission","resolveCurrentUserPermissions","endsWith","_proto","prototype","resolveListItemEntityTypeFullName","bind","_resolveListItemEntityTypeFullName","_response$data$d$List","entityType","ListItemEntityTypeFullName","list","getDigest","from","sharepoint_ver","version","_this2","update","delete","createFile","deleteLibraryFile","fields","fieldName","folder","folderName","filePath","concat","_this3","users","_this4","createBase","SHAREPOINT_REQUESTS"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,aAAa,GAAgB;EACjCC,OAAO,EAAE;IACPC,MAAM,EAAE,iCAAiC;IACzC,cAAc,EAAE;GACjB;EACDC,OAAO,EAAE,KAAK;EACdC,eAAe,EAAE;CAClB;AAEM,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAIC,OAAe,EAAEC,MAAoB;;EAC5D,IAAMC,WAAW,GACf,CAAAD,MAAM,oBAANA,MAAM,CAAEN,OAAO,aAAYQ,YAAY,GACnCF,MAAM,CAACN,OAAO,CAACS,MAAM,EAAE,IAAAC,eAAA,GACvBJ,MAAM,oBAANA,MAAM,CAAEN,OAAO,YAAAU,eAAA,GAAI,EAAE;EAE3B,OAAOC,KAAK,CAACC,MAAM,CAAAC,QAAA,KACdd,aAAa,EACbO,MAAM;IACTD,OAAO,EAAPA,OAAO;IACPL,OAAO,EAAAa,QAAA,KACFd,aAAa,CAACC,OAAO,EACrBO,WAAW;IAEjB,CAAC;AACJ,CAAC;;SCxBqBO,WAAWA,CAAAC,EAAA,EAAAC,GAAA;EAAA,OAAAC,YAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;AAmBhC,SAAAF;EAAAA,YAAA,GAAAG,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAnBM,SAAAC,QACLnB,QAAuB,EACvBC,OAAe;IAAA,IAAAmB,cAAA,EAAAC,QAAA,EAAAC,eAAA,EAAAC,EAAA;IAAA,OAAAN,YAAA,GAAAO,CAAA,WAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,CAAA,GAAAD,QAAA,CAAAE,CAAA;QAAA;UAAAF,QAAA,CAAAC,CAAA;UAAAD,QAAA,CAAAE,CAAA;UAAA,OAGU3B,QAAQ,CAAC4B,IAAI,CAAI3B,OAAO,qBAAkB,CAAC;QAAA;UAA5DoB,QAAQ,GAAAI,QAAA,CAAAI,CAAA;UAERP,eAAe,IAAAF,cAAA,GACnBC,QAAQ,CAACS,IAAI,cAAAV,cAAA,GAAbA,cAAA,CAAeW,CAAC,cAAAX,cAAA,GAAhBA,cAAA,CAAkBY,wBAAwB,qBAA1CZ,cAAA,CAA4Ca,eAAe;UAAA,IAExDX,eAAe;YAAAG,QAAA,CAAAE,CAAA;YAAA;;UAAA,MACZ,IAAIO,KAAK,CAAC,qDAAqD,CAAC;QAAA;UAAA,OAAAT,QAAA,CAAAU,CAAA,IAGjEb,eAAe;QAAA;UAAAG,QAAA,CAAAC,CAAA;UAAAH,EAAA,GAAAE,QAAA,CAAAI,CAAA;UAEtBO,OAAO,CAACC,KAAK,CAAC,2CAA2C,EAAAd,EAAO,CAAC;UAAC,MAC5D,IAAIW,KAAK,qCAAqC,CAAC;QAAA;UAAA,OAAAT,QAAA,CAAAU,CAAA;;OAAAhB,OAAA;GAExD;EAAA,OAAAN,YAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;;ACpBuC,SAGzBuB,mBAAmBA,CAAA3B,EAAA;EAAA,OAAA4B,oBAAA,CAAAzB,KAAA,OAAAC,SAAA;AAAA;AAAA,SAAAwB;EAAAA,oBAAA,GAAAvB,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAlC,SAAAC,QACEqB,OAA0B;IAAA,OAAAvB,YAAA,GAAAO,CAAA,WAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAE,CAAA;QAAA;UAAA,KAEtBa,OAAO,CAACC,yBAAyB;YAAAhB,QAAA,CAAAE,CAAA;YAAA;;UAAA,OAAAF,QAAA,CAAAU,CAAA,IAC5BK,OAAO,CAACC,yBAAyB,EAAE;QAAA;UAAA,KAGxCD,OAAO,CAACE,0BAA0B;YAAAjB,QAAA,CAAAE,CAAA;YAAA;;UAAA,OAAAF,QAAA,CAAAU,CAAA,IAC7BK,OAAO,CAACE,0BAA0B;QAAA;UAAA,OAAAjB,QAAA,CAAAU,CAAA,iBAGzBK,OAAO,CAACG,QAAQ;;OAAAxB,OAAA;GACnC;EAAA,OAAAoB,oBAAA,CAAAzB,KAAA,OAAAC,SAAA;AAAA;AAED,SAAsB6B,cAAcA,CAAAhC,GAAA,EAAAiC,GAAA;EAAA,OAAAC,eAAA,CAAAhC,KAAA,OAAAC,SAAA;AAAA;AAsBnC,SAAA+B;EAAAA,eAAA,GAAA9B,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAtBM,SAAA6B,SACLP,OAA0B,EAC1BQ,QAAkB;IAAA,IAAAC,YAAA,EAAAC,OAAA,EAAA7B,QAAA,EAAAE,EAAA,EAAA4B,GAAA,EAAAC,GAAA,EAAAC,GAAA,EAAAC,GAAA;IAAA,OAAArC,YAAA,GAAAO,CAAA,WAAA+B,SAAA;MAAA,kBAAAA,SAAA,CAAA5B,CAAA;QAAA;UAAA4B,SAAA,CAAA5B,CAAA;UAAA,OAESW,mBAAmB,CAACE,OAAO,CAAC;QAAA;UAAjDS,YAAY,GAAAM,SAAA,CAAA1B,CAAA;UACZqB,OAAO,GAAAzC,QAAA,KACRuC,QAAQ;YACXQ,UAAU,EAAE;cACVC,IAAI,EAAER;;;UACP1B,EAAA,GAGoBiB,OAAO;UAAAW,GAAA,GACvBX,OAAO,CAACkB,QAAQ;UAAAN,GAAA,GAEfO,IAAI,CAACC,SAAS,CAACV,OAAO,CAAC;UAAAK,SAAA,CAAA5B,CAAA;UAAA,OAEFjB,WAAW,CAAC8B,OAAO,CAACxC,QAAQ,EAAEwC,OAAO,CAACvC,OAAO,CAAC;QAAA;UAAAoD,GAAA,GAAAE,SAAA,CAAA1B,CAAA;UAAAyB,GAAA;YAAvE,iBAAiB,EAAAD;;UAAAE,SAAA,CAAA5B,CAAA;UAAA,OAAAJ,EAAA,CALUvB,QAAQ,CAAA6D,IAAA,CAAAtC,EAAA;YACrCuC,GAAG,EAAAX,GAAA;YACHY,MAAM,EAAE,MAAM;YACdjC,IAAI,EAAAsB,GAAA;YACJxD,OAAO,EAAA0D;;QAAA;UAJHjC,QAAQ,GAAAkC,SAAA,CAAA1B,CAAA;UAAA,OAAA0B,SAAA,CAAApB,CAAA,IASPd,QAAQ;;OAAA0B,QAAA;GAChB;EAAA,OAAAD,eAAA,CAAAhC,KAAA,OAAAC,SAAA;AAAA;;SCpCqBiD,gBAAgBA,CAAArD,EAAA,EAAAC,GAAA;EAAA,OAAAqD,iBAAA,CAAAnD,KAAA,OAAAC,SAAA;AAAA;AAarC,SAAAkD;EAAAA,iBAAA,GAAAjD,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAbM,SAAAC,QACLqB,OAA0B,EAAA0B,IAAA;IAAA,IAAAC,IAAA,EAAAC,MAAA,EAAAC,UAAA,EAAAhD,QAAA,EAAAE,EAAA,EAAA4B,GAAA,EAAAC,GAAA,EAAAC,GAAA,EAAAC,GAAA;IAAA,OAAArC,YAAA,GAAAO,CAAA,WAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAE,CAAA;QAAA;UACxBwC,IAAI,GAAAD,IAAA,CAAJC,IAAI,EAAEC,MAAM,GAAAF,IAAA,CAANE,MAAM;UAERC,UAAU,+BAA6B7B,OAAO,CAACG,QAAQ,iBAAYyB,MAAM,wCAAmCD,IAAI,CAACG,IAAI;UAAA/C,EAAA,GACpGiB,OAAO,CAACxC,QAAQ;UAAAmD,GAAA,GAAMkB,UAAU;UAAAjB,GAAA,GAAEe,IAAI;UAAA1C,QAAA,CAAAE,CAAA;UAAA,OAEhCjB,WAAW,CAAC8B,OAAO,CAACxC,QAAQ,EAAEwC,OAAO,CAACvC,OAAO,CAAC;QAAA;UAAAoD,GAAA,GAAA5B,QAAA,CAAAI,CAAA;UAAAyB,GAAA;YAAvE,iBAAiB,EAAAD;;UAAA5B,QAAA,CAAAE,CAAA;UAAA,OAAAJ,EAAA,CAFmBK,IAAI,CAAAiC,IAAA,CAAAtC,EAAA,EAAA4B,GAAA,EAAAC,GAAA;YAC1CxD,OAAO,EAAA0D,GAAA;YAGPvD,eAAe,EAAE;;QAAI;UAJjBsB,QAAQ,GAAAI,QAAA,CAAAI,CAAA;UAAA,OAAAJ,QAAA,CAAAU,CAAA,IAOPd,QAAQ;;OAAAF,OAAA;GAChB;EAAA,OAAA8C,iBAAA,CAAAnD,KAAA,OAAAC,SAAA;AAAA;;SCdqBwD,UAAUA,CAAA5D,EAAA,EAAAC,GAAA;EAAA,OAAA4D,WAAA,CAAA1D,KAAA,OAAAC,SAAA;AAAA;AAM/B,SAAAyD;EAAAA,WAAA,GAAAxD,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CANM,SAAAC,QACLqB,OAA0B,EAC1BiC,EAAmB;IAAA,IAAApD,QAAA;IAAA,OAAAJ,YAAA,GAAAO,CAAA,WAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAE,CAAA;QAAA;UAAAF,QAAA,CAAAE,CAAA;UAAA,OAEIa,OAAO,CAACxC,QAAQ,UAAO,CAAIwC,OAAO,CAACkB,QAAQ,SAAIe,EAAE,MAAG,CAAC;QAAA;UAAtEpD,QAAQ,GAAAI,QAAA,CAAAI,CAAA;UAAA,OAAAJ,QAAA,CAAAU,CAAA,IACPd,QAAQ;;OAAAF,OAAA;GAChB;EAAA,OAAAqD,WAAA,CAAA1D,KAAA,OAAAC,SAAA;AAAA;;SCTe2D,gBAAgBA,CAACC,UAA8B;EAC7D,IAAI,CAACA,UAAU,EAAE;IACf,OAAO,EAAE;;EAGX,IAAMC,QAAQ,GAAGC,KAAK,CAACC,OAAO,CAACH,UAAU,CAAC,GACtCA,UAAU,GACVA,UAAU,CAACI,KAAK,CAAC,GAAG,CAAC,CAACC,MAAM,CAACC,OAAO,CAAC;EAEzC,IAAI,CAACL,QAAQ,CAACM,MAAM,EAAE;IACpB,OAAO,EAAE;;EAGX,IAAMC,eAAe,GAAGP,QAAQ,CAACQ,GAAG,CAAC,UAACC,OAAO;IAC3C,IAAI,CAACA,OAAO,CAACC,IAAI,EAAE,EAAE;MACnB,MAAM,IAAIpD,KAAK,CAAC,uCAAuC,CAAC;;IAG1D,IAAMqD,SAAS,GAAGF,OAAO,CAACG,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC;IAE7C,sBAAoBC,kBAAkB,CAACF,SAAS,CAAC;GAClD,CAAC;EAEF,OAAOJ,eAAe,CAACO,IAAI,CAAC,EAAE,CAAC;AACjC;AAEA,SAAgBC,cAAcA,CAACC,QAAgB;EAC7C,IAAI,CAACA,QAAQ,CAACN,IAAI,EAAE,EAAE;IACpB,MAAM,IAAIpD,KAAK,CAAC,4BAA4B,CAAC;;EAG/C,OAAOuD,kBAAkB,CAACG,QAAQ,CAACJ,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACzD;;AC3BA,IAAMK,iBAAiB,GAAmB,MAAM;AAEhD,SAAsBC,UAAUA,CAAAnF,EAAA,EAAAC,GAAA;EAAA,OAAAmF,WAAA,CAAAjF,KAAA,OAAAC,SAAA;AAAA;AA2B/B,SAAAgF;EAAAA,WAAA,GAAA/E,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CA3BM,SAAAC,QACLqB,OAA0B,EAAA0B,IAAA;IAAA,IAAA0B,QAAA,EAAAjB,UAAA,EAAAqB,eAAA,EAAA3B,UAAA,EAAA4B,MAAA,EAAA5E,QAAA;IAAA,OAAAJ,YAAA,GAAAO,CAAA,WAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAE,CAAA;QAAA;UACxBiE,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ,EAAEjB,UAAU,GAAAT,IAAA,CAAVS,UAAU;UAAA,MAElBnC,OAAO,CAAC0D,iBAAiB,KAAKL,iBAAiB;YAAApE,QAAA,CAAAE,CAAA;YAAA;;UAAA,MAC3C,IAAIO,KAAK,CACb,kEAAkE,CACnE;QAAA;UAGG8D,eAAe,GAAGL,cAAc,CAACC,QAAQ,CAAC;UAC5CvB,UAAU,mCAAiC7B,OAAO,CAACG,QAAQ;UAC/D0B,UAAU,IAAIK,gBAAgB,CAACC,UAAU,CAAC;UAC1CN,UAAU,iBAAe2B,eAAe,OAAI;UAACvE,QAAA,CAAAE,CAAA;UAAA,OAExBjB,WAAW,CAAC8B,OAAO,CAACxC,QAAQ,EAAEwC,OAAO,CAACvC,OAAO,CAAC;QAAA;UAA7DgG,MAAM,GAAAxE,QAAA,CAAAI,CAAA;UAAAJ,QAAA,CAAAE,CAAA;UAAA,OAEWa,OAAO,CAACxC,QAAQ,CAAC4B,IAAI,CAACyC,UAAU,EAAE8B,SAAS,EAAE;YAClEvG,OAAO,EAAE;cACP,eAAe,EAAE,QAAQ;cACzB,UAAU,EAAE,GAAG;cACf,iBAAiB,EAAEqG;aACpB;YACDlG,eAAe,EAAE;WAClB,CAAC;QAAA;UAPIsB,QAAQ,GAAAI,QAAA,CAAAI,CAAA;UAAA,OAAAJ,QAAA,CAAAU,CAAA,IASPd,QAAQ;;OAAAF,OAAA;GAChB;EAAA,OAAA4E,WAAA,CAAAjF,KAAA,OAAAC,SAAA;AAAA;;SC5BeqF,gBAAgBA,CAC9BC,OAA2C,EAC3CC;MAAAA;IAAAA,mBAA8B,GAAG;;EAEjC,IAAApC,IAAA,GAAuDmC,OAAO,IAAI,EAAE;IAA5DE,MAAM,GAAArC,IAAA,CAANqC,MAAM;IAAEC,OAAO,GAAAtC,IAAA,CAAPsC,OAAO;IAAEC,KAAK,GAAAvC,IAAA,CAALuC,KAAK;IAAEzB,MAAM,GAAAd,IAAA,CAANc,MAAM;IAAE0B,IAAI,GAAAxC,IAAA,CAAJwC,IAAI;IAAEC,IAAI,GAAAzC,IAAA,CAAJyC,IAAI;EAElD,IAAMC,MAAM,GAAgD;IAC1DC,OAAO,EAAEhC,KAAK,CAACC,OAAO,CAACyB,MAAM,CAAC,GAAGA,MAAM,CAACb,IAAI,CAAC,GAAG,CAAC,GAAGa,MAAM;IAC1DO,IAAI,EAAEL,KAAK;IACXM,KAAK,EAAEJ,IAAI;IACXK,OAAO,EAAEnC,KAAK,CAACC,OAAO,CAAC4B,IAAI,CAAC,GAAGA,IAAI,CAAChB,IAAI,CAAC,GAAG,CAAC,GAAGgB,IAAI;IACpDO,OAAO,EAAEjC,MAAM;IACfkC,QAAQ,EAAErC,KAAK,CAACC,OAAO,CAAC0B,OAAO,CAAC,GAC5BA,OAAO,CAACd,IAAI,CAACY,gBAAgB,CAAC,GAC9BE;GACL;EAED,OAAOI,MAAM;AACf;AAEA,SAAgBO,iBAAiBA,CAC/BC,OAAY,EACZR,MAA0D;EAE1DS,MAAM,CAACC,OAAO,CAACV,MAAM,CAAC,CAACW,OAAO,CAAC,UAAAC,KAAA;QAAEC,GAAG,GAAAD,KAAA;MAAEE,KAAK,GAAAF,KAAA;IACzC,IAAIE,KAAK,KAAKvB,SAAS,IAAIuB,KAAK,KAAK,IAAI,EAAE;MACzCN,OAAO,CAACO,YAAY,CAACC,MAAM,CAACH,GAAG,EAAEI,MAAM,CAACH,KAAK,CAAC,CAAC;;GAElD,CAAC;AACJ;;SC/BsBI,QAAQA,CAAAnH,EAAA,EAAAC,GAAA;EAAA,OAAAmH,SAAA,CAAAjH,KAAA,OAAAC,SAAA;AAAA;AA0B7B,SAAAgH;EAAAA,SAAA,GAAA/G,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CA1BM,SAAAC,QAILqB,OAA0B,EAC1B6D,OAA2B;IAAA,IAAAO,MAAA,EAAA9C,GAAA,EAAAzC,QAAA,EAAAS,IAAA,EAAAkG,IAAA;IAAA,OAAA/G,YAAA,GAAAO,CAAA,WAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAE,CAAA;QAAA;UAErBiF,MAAM,GAAGR,gBAAgB,CAACC,OAAO,EAAE,GAAG,CAAC;UACvCvC,GAAG,GAAG,IAAImE,GAAG,CAACzF,OAAO,CAACkB,QAAQ,EAAElB,OAAO,CAACxC,QAAQ,CAACkI,QAAQ,CAACjI,OAAO,CAAC;UAExEkH,iBAAiB,CAACrD,GAAG,EAAE8C,MAAM,CAAC;UAACnF,QAAA,CAAAE,CAAA;UAAA,OAERa,OAAO,CAACxC,QAAQ,CAACmI,OAAO,CAAC;YAC9CrE,GAAG,EAAEtB,OAAO,CAACkB,QAAQ;YACrBK,MAAM,EAAE,KAAK;YACb6C,MAAM,EAANA;WACD,CAAC;QAAA;UAJIvF,QAAQ,GAAAI,QAAA,CAAAI,CAAA;UAMRC,IAAI,GACRuE,OAAO,YAAPA,OAAO,CAAEI,KAAK,IAAI,CAACpF,QAAQ,CAACS,IAAI,CAACC,CAAC,CAACqG,OAAO,GACtC/G,QAAQ,CAACS,IAAI,CAACC,CAAC,GACfV,QAAQ,CAACS,IAAI,CAACC,CAAC,CAACqG,OAAO;UAEvBJ,IAAI,GAAG;YAAElE,GAAG,EAAHA;WAAK;UAAA,OAAArC,QAAA,CAAAU,CAAA,IAEb;YAAEL,IAAI,EAAJA,IAAI;YAAEkG,IAAI,EAAJA;WAAM;;OAAA7G,OAAA;GACtB;EAAA,OAAA4G,SAAA,CAAAjH,KAAA,OAAAC,SAAA;AAAA;;SC1BqBsH,YAAYA,CAAA1H,EAAA,EAAAC,GAAA;EAAA,OAAA0H,aAAA,CAAAxH,KAAA,OAAAC,SAAA;AAAA;AA6CjC,SAAAuH;EAAAA,aAAA,GAAAtH,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CA7CM,SAAAC,QAILqB,OAA0B,EAC1B6D,OAAuB;IAAA,IAAAnC,IAAA,EAAAqE,qBAAA,EAAAnH,cAAA,EAAAoH,eAAA;IAAA,IAAA5B,MAAA,EAAA9C,GAAA,EAAAzC,QAAA,EAAAoH,OAAA,EAAA/B,IAAA,EAAAgC,IAAA,EAAAC,UAAA,EAAA7G,IAAA,EAAAkG,IAAA;IAAA,OAAA/G,YAAA,GAAAO,CAAA,WAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAE,CAAA;QAAA;UAEjBiF,MAAM,GAAGR,gBAAgB,CAACC,OAAO,EAAE,GAAG,CAAC;UAEvCvC,GAAG,GAAG,IAAImE,GAAG,CAACzF,OAAO,CAACkB,QAAQ,EAAElB,OAAO,CAACxC,QAAQ,CAACkI,QAAQ,CAACjI,OAAO,CAAC;UACxEkH,iBAAiB,CAACrD,GAAG,EAAE8C,MAAM,CAAC;UAACnF,QAAA,CAAAE,CAAA;UAAA,OAERa,OAAO,CAACxC,QAAQ,CAACmI,OAAO,CAAC;YAC9CrE,GAAG,EAAEtB,OAAO,CAACkB,QAAQ;YACrBK,MAAM,EAAE,KAAK;YACb6C,MAAM,EAANA;WACD,CAAC;QAAA;UAJIvF,QAAQ,GAAAI,QAAA,CAAAI,CAAA;UAMR4G,OAAO,IAAAvE,IAAA,IAAAqE,qBAAA,IAAAnH,cAAA,GAAGC,QAAQ,CAACS,IAAI,cAAAV,cAAA,GAAbA,cAAA,CAAeW,CAAC,qBAAhBX,cAAA,CAAkBgH,OAAO,YAAAG,qBAAA,IAAAC,eAAA,GAAInH,QAAQ,CAACS,IAAI,qBAAb0G,eAAA,CAAezG,CAAC,YAAAmC,IAAA,GAAI7C,QAAQ,CAACS,IAAI;UACxE4E,IAAI,GAAGL,OAAO,oBAAPA,OAAO,CAAEK,IAAI;UACpBgC,IAAI,GAAGhC,IAAI,GACb,CAAC7B,KAAK,CAACC,OAAO,CAAC4B,IAAI,CAAC,GAAGA,IAAI,GAAG,CAACA,IAAI,CAAC,EAAE1B,MAAM,CAACC,OAAO,CAAC,GACrDkB,SAAS;UAEPwC,UAAU,GAAG,SAAbA,UAAUA,CAAIC,IAAa;YAC/B,IAAI,CAACF,IAAI,IAAI,CAACE,IAAI,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;cAC9C,OAAOA,IAAI;;YAGb,OAAOF,IAAI,CAACG,MAAM,CAA0B,UAACC,GAAG,EAAErB,GAAG;cACnD,IAAIA,GAAG,IAAImB,IAAI,EAAE;gBACfE,GAAG,CAACrB,GAAG,CAAC,GAAImB,IAAgC,CAACnB,GAAG,CAAC;;cAGnD,OAAOqB,GAAG;aACX,EAAE,EAAE,CAAC;WACP;UAEKhH,IAAI,GAAG+C,KAAK,CAACC,OAAO,CAAC2D,OAAO,CAAC,GAC/BA,OAAO,CAACrD,GAAG,CAACuD,UAAU,CAAC,GACvBA,UAAU,CAACF,OAAO,CAAC;UAEjBT,IAAI,GAAG;YAAElE,GAAG,EAAHA;WAAK;UAAA,OAAArC,QAAA,CAAAU,CAAA,IAEb;YAAEL,IAAI,EAAEA,IAAkC;YAAEkG,IAAI,EAAJA;WAAM;;OAAA7G,OAAA;GAC1D;EAAA,OAAAmH,aAAA,CAAAxH,KAAA,OAAAC,SAAA;AAAA;;SC7CqBgI,OAAOA,CAAApI,EAAA,EAAAC,GAAA,EAAAiC,GAAA;EAAA,OAAAmG,QAAA,CAAAlI,KAAA,OAAAC,SAAA;AAAA;AAa5B,SAAAiI;EAAAA,QAAA,GAAAhI,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAbM,SAAAC,QAILnB,QAAuB,EACvB0D,QAAgB,EAChB2C,OAAuB;IAAA,IAAAO,MAAA,EAAAqC,mBAAA,EAAAnH,IAAA;IAAA,OAAAb,YAAA,GAAAO,CAAA,WAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAE,CAAA;QAAA;UAEjBiF,MAAM,GAAGR,gBAAgB,CAACC,OAAO,EAAE,GAAG,CAAC;UAAA5E,QAAA,CAAAE,CAAA;UAAA,OACtB3B,QAAQ,CAACkJ,GAAG,CAACxF,QAAQ,EAAE;YAAEkD,MAAM,EAANA;WAAQ,CAAC;QAAA;UAAAqC,mBAAA,GAAAxH,QAAA,CAAAI,CAAA;UAAjDC,IAAI,GAAAmH,mBAAA,CAAJnH,IAAI;UAAA,KACRA,IAAI;YAAAL,QAAA,CAAAE,CAAA;YAAA;;UAAA,OAAAF,QAAA,CAAAU,CAAA,IACCL,IAAI,CAACC,CAAC,CAACqG,OAAO,GAAGtG,IAAI,CAACC,CAAC,CAACqG,OAAO,GAAGtG,IAAI,CAACC,CAAC;QAAA;UAAA,OAAAN,QAAA,CAAAU,CAAA;;OAAAhB,OAAA;GAElD;EAAA,OAAA6H,QAAA,CAAAlI,KAAA,OAAAC,SAAA;AAAA;;AChBuC,SAGzBuB,qBAAmBA,CAAA3B,EAAA;EAAA,OAAA4B,sBAAA,CAAAzB,KAAA,OAAAC,SAAA;AAAA;AAAA,SAAAwB;EAAAA,sBAAA,GAAAvB,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAlC,SAAAC,QACEqB,OAA0B;IAAA,OAAAvB,YAAA,GAAAO,CAAA,WAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAE,CAAA;QAAA;UAAA,KAEtBa,OAAO,CAACC,yBAAyB;YAAAhB,QAAA,CAAAE,CAAA;YAAA;;UAAA,OAAAF,QAAA,CAAAU,CAAA,IAC5BK,OAAO,CAACC,yBAAyB,EAAE;QAAA;UAAA,KAGxCD,OAAO,CAACE,0BAA0B;YAAAjB,QAAA,CAAAE,CAAA;YAAA;;UAAA,OAAAF,QAAA,CAAAU,CAAA,IAC7BK,OAAO,CAACE,0BAA0B;QAAA;UAAA,OAAAjB,QAAA,CAAAU,CAAA,iBAGzBK,OAAO,CAACG,QAAQ;;OAAAxB,OAAA;GACnC;EAAA,OAAAoB,sBAAA,CAAAzB,KAAA,OAAAC,SAAA;AAAA;AAED,SAAsBoI,cAAcA,CAAAvI,GAAA,EAAAiC,GAAA,EAAAuG,GAAA,EAAAC,GAAA;EAAA,OAAAC,eAAA,CAAAxI,KAAA,OAAAC,SAAA;AAAA;AA+BnC,SAAAuI;EAAAA,eAAA,GAAAtI,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CA/BM,SAAA6B,SACLP,OAA0B,EAC1BiC,EAAmB,EACnB3C,IAAc,EACdmE,MAAe;IAAA,IAAA3E,eAAA,EAAA2B,YAAA,EAAAC,OAAA,EAAAY,GAAA,EAAAzC,QAAA,EAAAE,EAAA;IAAA,OAAAN,YAAA,GAAAO,CAAA,WAAA+B,SAAA;MAAA,kBAAAA,SAAA,CAAA5B,CAAA;QAAA;UAAAJ,EAAA,GAGb0E,MAAM;UAAA,IAAA1E,EAAA;YAAAgC,SAAA,CAAA5B,CAAA;YAAA;;UAAA4B,SAAA,CAAA5B,CAAA;UAAA,OAAWjB,WAAW,CAAC8B,OAAO,CAACxC,QAAQ,EAAEwC,OAAO,CAACvC,OAAO,CAAC;QAAA;UAAAsB,EAAA,GAAAgC,SAAA,CAAA1B,CAAA;QAAA;UAD3DP,eAAe,GAAAC,EAAA;UAAAgC,SAAA,CAAA5B,CAAA;UAAA,OAGMW,qBAAmB,CAACE,OAAO,CAAC;QAAA;UAAjDS,YAAY,GAAAM,SAAA,CAAA1B,CAAA;UACZqB,OAAO,GAAAzC,QAAA,KACRqB,IAAI;YACP0B,UAAU,EAAE;cACVC,IAAI,EAAER;;;UAIJa,GAAG,+BAA6BtB,OAAO,CAACG,QAAQ,wBAAmB8B,EAAE;UAAAlB,SAAA,CAAA5B,CAAA;UAAA,OAEpDa,OAAO,CAACxC,QAAQ,CAAC;YACtC8D,GAAG,EAAHA,GAAG;YACHC,MAAM,EAAE,MAAM;YACdjC,IAAI,EAAE6B,IAAI,CAACC,SAAS,CAACV,OAAO,CAAC;YAC7BtD,OAAO,EAAE;cACP,iBAAiB,EAAE0B,eAAe;cAClC,UAAU,EAAE,GAAG;cACf,eAAe,EAAE;;WAEpB,CAAC;QAAA;UATID,QAAQ,GAAAkC,SAAA,CAAA1B,CAAA;UAAA,OAAA0B,SAAA,CAAApB,CAAA,IAWPd,QAAQ;;OAAA0B,QAAA;GAChB;EAAA,OAAAuG,eAAA,CAAAxI,KAAA,OAAAC,SAAA;AAAA;;AC5CD,IAAM8E,mBAAiB,GAAmB,MAAM;AAEhD,SAAsB0D,UAAUA,CAAA5I,EAAA,EAAAC,GAAA;EAAA,OAAA4I,WAAA,CAAA1I,KAAA,OAAAC,SAAA;AAAA;AAkC/B,SAAAyI;EAAAA,WAAA,GAAAxI,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAlCM,SAAAC,QACLqB,OAA0B,EAAA0B,IAAA;IAAA,IAAAC,IAAA,EAAAQ,UAAA,EAAA8E,cAAA,EAAAC,SAAA,EAAArF,UAAA,EAAA2B,eAAA,EAAAC,MAAA,EAAA5E,QAAA;IAAA,OAAAJ,YAAA,GAAAO,CAAA,WAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAE,CAAA;QAAA;UACxBwC,IAAI,GAAAD,IAAA,CAAJC,IAAI,EAAEQ,UAAU,GAAAT,IAAA,CAAVS,UAAU,EAAA8E,cAAA,GAAAvF,IAAA,CAAEwF,SAAS,EAATA,SAAS,GAAAD,cAAA,cAAG,IAAI,GAAAA,cAAA;UAAA,MAEhCjH,OAAO,CAAC0D,iBAAiB,KAAKL,mBAAiB;YAAApE,QAAA,CAAAE,CAAA;YAAA;;UAAA,MAC3C,IAAIO,KAAK,CACb,kEAAkE,CACnE;QAAA;UAAA,IAGEiC,IAAI,YAAJA,IAAI,CAAEG,IAAI;YAAA7C,QAAA,CAAAE,CAAA;YAAA;;UAAA,MACP,IAAIO,KAAK,CAAC,4CAA4C,CAAC;QAAA;UAG3DmC,UAAU,mCAAiC7B,OAAO,CAACG,QAAQ;UAE/D0B,UAAU,IAAIK,gBAAgB,CAACC,UAAU,CAAC;UAEpCqB,eAAe,GAAGL,cAAc,CAACxB,IAAI,CAACG,IAAI,CAAC;UACjDD,UAAU,yBAAuB2B,eAAe,qBAC9C0D,SAAS,GAAG,MAAM,GAAG,OACvB,OAAG;UAACjI,QAAA,CAAAE,CAAA;UAAA,OAEiBjB,WAAW,CAAC8B,OAAO,CAACxC,QAAQ,EAAEwC,OAAO,CAACvC,OAAO,CAAC;QAAA;UAA7DgG,MAAM,GAAAxE,QAAA,CAAAI,CAAA;UAAAJ,QAAA,CAAAE,CAAA;UAAA,OAEWa,OAAO,CAACxC,QAAQ,CAAC4B,IAAI,CAACyC,UAAU,EAAEF,IAAI,EAAE;YAC7DvE,OAAO,EAAE;cACP,cAAc,EAAEuE,IAAI,CAACV,IAAI,IAAI,0BAA0B;cACvD,iBAAiB,EAAEwC;aACpB;YACDlG,eAAe,EAAE;WAClB,CAAC;QAAA;UANIsB,QAAQ,GAAAI,QAAA,CAAAI,CAAA;UAAA,OAAAJ,QAAA,CAAAU,CAAA,IAQPd,QAAQ;;OAAAF,OAAA;GAChB;EAAA,OAAAqI,WAAA,CAAA1I,KAAA,OAAAC,SAAA;AAAA;;SC9BqB4I,SAASA,CAAAhJ,EAAA,EAAAC,GAAA;EAAA,OAAAgJ,UAAA,CAAA9I,KAAA,OAAAC,SAAA;AAAA;AAiC9B,SAAA6I;EAAAA,UAAA,GAAA5I,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAjCM,SAAAC,QACLqB,OAAuB,EAAA0B,IAAA;IAAA,IAAA2F,IAAA,EAAAC,EAAA,EAAAC,OAAA,EAAAC,IAAA,EAAAC,WAAA,EAAA5I,QAAA,EAAAE,EAAA,EAAA4B,GAAA,EAAAC,GAAA,EAAAC,GAAA,EAAAC,GAAA;IAAA,OAAArC,YAAA,GAAAO,CAAA,WAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAE,CAAA;QAAA;UACrBkI,IAAI,GAAA3F,IAAA,CAAJ2F,IAAI,EAAEC,EAAE,GAAA5F,IAAA,CAAF4F,EAAE,EAAEC,OAAO,GAAA7F,IAAA,CAAP6F,OAAO,EAAEC,IAAI,GAAA9F,IAAA,CAAJ8F,IAAI;UAEnBC,WAAW,GAAG,qCAAqC;UAAA1I,EAAA,GAElCiB,OAAO;UAAAW,GAAA,GACvB8G,WAAW;UAAAxI,QAAA,CAAAE,CAAA;UAAA,OAGWjB,WAAW,CAClC8B,OAAO,CAACxC,QAAQ,EAChBwC,OAAO,CAACvC,OAAO,CAChB;QAAA;UAAAmD,GAAA,GAAA3B,QAAA,CAAAI,CAAA;UAAAwB,GAAA;YAHD,iBAAiB,EAAAD,GAAA;YAIjB,eAAe,EAAE,MAAM;YACvB,cAAc,EAAE;;UAAgCE,GAAA,GAE5CK,IAAI,CAACC,SAAS,CAAC;YACnBsG,UAAU,EAAE;cACV1G,UAAU,EAAE;gBACVC,IAAI,EAAE;eACP;cACDoG,IAAI,EAAJA,IAAI;cACJC,EAAE,EAAE;gBACF1B,OAAO,EAAEvD,KAAK,CAACC,OAAO,CAACgF,EAAE,CAAC,GAAGA,EAAE,GAAG,CAACA,EAAE;eACtC;cACDE,IAAI,EAAJA,IAAI;cACJD,OAAO,EAAPA;;WAEH,CAAC;UAAAtI,QAAA,CAAAE,CAAA;UAAA,OAAAJ,EAAA,CAvB2BvB,QAAQ,CAAA6D,IAAA,CAAAtC,EAAA;YACrCuC,GAAG,EAAAX,GAAA;YACHY,MAAM,EAAE,MAAM;YACdnE,OAAO,EAAAyD,GAAA;YAQPvB,IAAI,EAAAwB;;QAAA;UAXAjC,QAAQ,GAAAI,QAAA,CAAAI,CAAA;UAAA,OAAAJ,QAAA,CAAAU,CAAA,IA0BPd,QAAQ;;OAAAF,OAAA;GAChB;EAAA,OAAAyI,UAAA,CAAA9I,KAAA,OAAAC,SAAA;AAAA;;SC9BqBoJ,SAASA,CAAAxJ,EAAA,EAAAC,GAAA,EAAAiC,GAAA;EAAA,OAAAuH,UAAA,CAAAtJ,KAAA,OAAAC,SAAA;AAAA;AAmC9B,SAAAqJ;EAAAA,UAAA,GAAApJ,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAnCM,SAAAC,QACLnB,QAAuB,EACvBqK,KAAa,EACbrF,MAAe;IAAA,IAAAX,UAAA,EAAAvC,IAAA,EAAAT,QAAA;IAAA,OAAAJ,YAAA,GAAAO,CAAA,WAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAE,CAAA;QAAA;UAET0C,UAAU;UAEVvC,IAAI,GAAG;YACXwI,WAAW,EAAE;cACX9G,UAAU,EAAE;gBACVC,IAAI,EAAE;eACP;cACD8G,mBAAmB,EAAE,IAAI;cACzBC,qBAAqB,EAAE,KAAK;cAC5BC,WAAW,EAAE,KAAK;cAClBC,wBAAwB,EAAE,EAAE;cAC5BC,eAAe,EAAE,EAAE;cACnBC,aAAa,EAAE,CAAC;cAChBC,WAAW,EAAER;;WAEhB;UAED,IAAIrF,MAAM,EAAE;;YAETlD,IAAI,CAACwI,WAAmB,CAACQ,kBAAkB,GAAG,CAAC9F,MAAM,CAAC;;UACxDvD,QAAA,CAAAE,CAAA;UAAA,OAEsB3B,QAAQ,CAAC4B,IAAI,CAACyC,UAAU,EAAEV,IAAI,CAACC,SAAS,CAAC9B,IAAI,CAAC,EAAE;YACrElC,OAAO,EAAE;cACPC,MAAM,EAAE,iCAAiC;cACzC,cAAc,EAAE;;WAEnB,CAAC;QAAA;UALIwB,QAAQ,GAAAI,QAAA,CAAAI,CAAA;UAAA,OAAAJ,QAAA,CAAAU,CAAA,IAOPd,QAAQ,CAACS,IAAI,CAACC,CAAC,CAACgJ,4BAA4B;;OAAA5J,OAAA;GACpD;EAAA,OAAAiJ,UAAA,CAAAtJ,KAAA,OAAAC,SAAA;AAAA;AAED,SAAsBiK,qBAAqBA,CAAA5B,GAAA;EAAA,OAAA6B,sBAAA,CAAAnK,KAAA,OAAAC,SAAA;AAAA;AA0B1C,SAAAkK;EAAAA,sBAAA,GAAAjK,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CA1BM,SAAA6B,SACL/C,QAAuB;IAAA,IAAAqE,UAAA,EAAA6G,OAAA;IAAA,OAAAjK,YAAA,GAAAO,CAAA,WAAA+B,SAAA;MAAA,kBAAAA,SAAA,CAAA5B,CAAA;QAAA;UAEjB0C,UAAU,GAAG,oDAAoD;UAAAd,SAAA,CAAA5B,CAAA;UAAA,OAC9C3B,QAAQ,CAACkJ,GAAG,CAAC7E,UAAU,CAAC;QAAA;UAA7C6G,OAAO,GAAA3H,SAAA,CAAA1B,CAAA;UAEXqJ,OAAO,GAAGA,OAAO,CAACpJ,IAAI,CAACC,CAAC;UAExBmJ,OAAO,CAACC,qBAAqB,CAAC/C,OAAO,CAACb,OAAO,CAC3C,UAAC6D,IAAoC;YACnC,IAAIA,IAAI,CAACC,GAAG,KAAK,WAAW,EAAE;cAC5BH,OAAO,CAACI,SAAS,GAAGF,IAAI,CAACG,KAAK;;YAEhC,IAAIH,IAAI,CAACC,GAAG,KAAK,UAAU,EAAE;cAC3BH,OAAO,CAACM,QAAQ,GAAGJ,IAAI,CAACG,KAAK;;YAE/B,IAAIH,IAAI,CAACC,GAAG,KAAK,SAAS,EAAE;cAC1BH,OAAO,CAACO,OAAO,GAAGL,IAAI,CAACG,KAAK;;YAE9B,IAAIH,IAAI,CAACC,GAAG,KAAK,UAAU,EAAE;cAC3BH,OAAO,CAACQ,QAAQ,GAAGN,IAAI,CAACG,KAAK;;WAEhC,CACF;UAAC,OAAAhI,SAAA,CAAApB,CAAA,IAEK+I,OAAO;;OAAAnI,QAAA;GACf;EAAA,OAAAkI,sBAAA,CAAAnK,KAAA,OAAAC,SAAA;AAAA;AAED,SAAsB4K,WAAWA,CAAAtC,GAAA,EAAAuC,GAAA;EAAA,OAAAC,YAAA,CAAA/K,KAAA,OAAAC,SAAA;AAAA;AAIhC,SAAA8K;EAAAA,YAAA,GAAA7K,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAJM,SAAA4K,SAA2B9L,QAAuB,EAAE+L,WAAmB;IAAA,IAAA1H,UAAA,EAAAhD,QAAA;IAAA,OAAAJ,YAAA,GAAAO,CAAA,WAAAwK,SAAA;MAAA,kBAAAA,SAAA,CAAArK,CAAA;QAAA;UACtE0C,UAAU,iDAA+C0H,WAAW,kCAA6BA,WAAW,sCAAiCA,WAAW;UAAAC,SAAA,CAAArK,CAAA;UAAA,OACvI3B,QAAQ,CAACkJ,GAAG,CAAC7E,UAAU,CAAC;QAAA;UAAzChD,QAAQ,GAAA2K,SAAA,CAAAnK,CAAA;UAAA,OAAAmK,SAAA,CAAA7J,CAAA,IACPd,QAAQ,CAACS,IAAI,CAACC,CAAC;;OAAA+J,QAAA;GACvB;EAAA,OAAAD,YAAA,CAAA/K,KAAA,OAAAC,SAAA;AAAA;AAED,SAAsBkL,eAAeA,CAAAC,GAAA;EAAA,OAAAC,gBAAA,CAAArL,KAAA,OAAAC,SAAA;AAAA;AAIpC,SAAAoL;EAAAA,gBAAA,GAAAnL,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAJM,SAAAkL,SAA+BpM,QAAuB;IAAA,IAAAqE,UAAA,EAAAhD,QAAA;IAAA,OAAAJ,YAAA,GAAAO,CAAA,WAAA6K,SAAA;MAAA,kBAAAA,SAAA,CAAA1K,CAAA;QAAA;UACrD0C,UAAU;UAAAgI,SAAA,CAAA1K,CAAA;UAAA,OACO3B,QAAQ,CAACkJ,GAAG,CAAC7E,UAAU,CAAC;QAAA;UAAzChD,QAAQ,GAAAgL,SAAA,CAAAxK,CAAA;UAAA,OAAAwK,SAAA,CAAAlK,CAAA,IACPd,QAAQ,CAACS,IAAI,CAACC,CAAC,CAACqG,OAA2B;;OAAAgE,QAAA;GACnD;EAAA,OAAAD,gBAAA,CAAArL,KAAA,OAAAC,SAAA;AAAA;AAED,SAAsBuL,2BAA2BA,CAAAC,GAAA;EAAA,OAAAC,4BAAA,CAAA1L,KAAA,OAAAC,SAAA;AAAA;AAIhD,SAAAyL;EAAAA,4BAAA,GAAAxL,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAJM,SAAAuL,SAA2CzM,QAAuB;IAAA,IAAAqE,UAAA,EAAAhD,QAAA;IAAA,OAAAJ,YAAA,GAAAO,CAAA,WAAAkL,SAAA;MAAA,kBAAAA,SAAA,CAAA/K,CAAA;QAAA;UACjE0C,UAAU;UAAAqI,SAAA,CAAA/K,CAAA;UAAA,OACO3B,QAAQ,CAACkJ,GAAG,CAAC7E,UAAU,CAAC;QAAA;UAAzChD,QAAQ,GAAAqL,SAAA,CAAA7K,CAAA;UAAA,OAAA6K,SAAA,CAAAvK,CAAA,IACPd,QAAQ,CAACS,IAAI,CAACC,CAAC,CAAC4K,wBAAwB;;OAAAF,QAAA;GAChD;EAAA,OAAAD,4BAAA,CAAA1L,KAAA,OAAAC,SAAA;AAAA;AAED,SAAsB6L,sBAAsBA,CAAAC,GAAA;EAAA,OAAAC,uBAAA,CAAAhM,KAAA,OAAAC,SAAA;AAAA;AAW3C,SAAA+L;EAAAA,uBAAA,GAAA9L,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAXM,SAAA6L,SACLvK,OAAuB;IAAA,IAAAwK,qBAAA,EAAAC,IAAA,EAAAC,WAAA,EAAAC,MAAA;IAAA,OAAAlM,YAAA,GAAAO,CAAA,WAAA4L,SAAA;MAAA,kBAAAA,SAAA,CAAAzL,CAAA;QAAA;UAAAyL,SAAA,CAAAzL,CAAA;UAAA,OAEA2K,2BAA2B,CAAC9J,OAAO,CAACxC,QAAQ,CAAC;QAAA;UAAAgN,qBAAA,GAAAI,SAAA,CAAAvL,CAAA;UAA5DoL,IAAI,GAAAD,qBAAA,CAAJC,IAAI;UAAAG,SAAA,CAAAzL,CAAA;UAAA,OACcsK,eAAe,CAACzJ,OAAO,CAACxC,QAAQ,CAAC;QAAA;UAArDkN,WAAW,GAAAE,SAAA,CAAAvL,CAAA;UAEXsL,MAAM,GAAGD,WAAW,CAACG,IAAI,CAC7B,UAAAnJ,IAAA;YAAA,IAAGoJ,eAAe,GAAApJ,IAAA,CAAfoJ,eAAe;YAAA,OAAuBA,eAAe,CAACL,IAAI,KAAKA,IAAI;YACvE;UAAA,OAAAG,SAAA,CAAAjL,CAAA,IAEMgL,MAAuB;;OAAAJ,QAAA;GAC/B;EAAA,OAAAD,uBAAA,CAAAhM,KAAA,OAAAC,SAAA;AAAA;;ACtE+C,IAE1CwM,sBAAsB;EAa1B,SAAAA,uBAAYtN,OAAe,EAAEC,MAAoB;;SAPzCD,OAAO;IAAA,KACPyD,QAAQ;IAAA,KACRf,QAAQ;IAAA,KACR3C,QAAQ;IAAA,KACRkG,iBAAiB;IAAA,KACjBxD,0BAA0B;IAAA,KAoElB8K,KAAK,GAAG;MACtBtE,GAAG,EAAE,SAALA,GAAGA;QACDuE,KAAI,CAAC/J,QAAQ,GAAG,gBAAgB;QAChC+J,KAAI,CAACvH,iBAAiB,GAAG,MAAM;QAC/B,OAAOmC,YAAY,CAACoF,KAAI,CAACC,UAAU,EAAE,CAAC;;KAEzC;IAAA,KA8CMC,OAAO,GAAG;MACfzE,GAAG,EAAE,SAALA,GAAGA;QACDuE,KAAI,CAAC/J,QAAQ,GAAG,kBAAkB;QAClC+J,KAAI,CAACvH,iBAAiB,GAAG,MAAM;QAC/BmC,YAAY,CAACoF,KAAI,CAACC,UAAU,EAAE,CAAC;;KAElC;IAAA,KAsCME,KAAK,GAAG;MACbC,IAAI,EAAE,SAANA,IAAIA,CAAGC,KAAiB;QACtBL,KAAI,CAACvH,iBAAiB,GAAG,MAAM;QAC/B,OAAO6H,SAAgB,CAACN,KAAI,CAACC,UAAU,EAAE,EAAEI,KAAK,CAAC;;KAEpD;IAAA,KAEME,IAAI,GAAG;MACZ9D,UAAU,EAAE,SAAZA,UAAUA;QAAA,OAAS;UACjBhB,GAAG,EAAE,SAALA,GAAGA;YACDuE,KAAI,CAACvH,iBAAiB,GAAG,MAAM;YAC/B,OAAO+H,qBAAyB,CAACR,KAAI,CAACzN,QAAQ,CAAC;;SAElD;OAAC;MACFkO,cAAc,EAAE,SAAhBA,cAAcA,CAAGnC,WAAmB;QAClC0B,KAAI,CAACvH,iBAAiB,GAAG,MAAM;QAC/B,OAAOiI,WAAa,CAACV,KAAI,CAACzN,QAAQ,EAAE+L,WAAW,CAAC;OACjD;MACDqC,UAAU,EAAE,SAAZA,UAAUA,CAAG/D,KAAa,EAAErF,MAAe;QACzCyI,KAAI,CAACvH,iBAAiB,GAAG,MAAM;QAC/B,OAAOiE,SAAS,CAACsD,KAAI,CAACzN,QAAQ,EAAEqK,KAAK,EAAErF,MAAM,CAAC;OAC/C;MACDqJ,OAAO,EAAE,SAATA,OAAOA;QACLZ,KAAI,CAAC/J,QAAQ,GAAG,sBAAsB;QACtC+J,KAAI,CAACvH,iBAAiB,GAAG,MAAM;QAC/B,OAAO;UACLgD,GAAG,EAAE,SAALA,GAAGA;YAAA,OAA8BH,OAAO,CAAC0E,KAAI,CAACzN,QAAQ,EAAEyN,KAAI,CAAC/J,QAAQ,CAAC;;SACvE;OACF;MACD4K,iBAAiB,EAAE,SAAnBA,iBAAiBA;QAAA,OAAS;UACxBpF,GAAG,EAAE,SAALA,GAAGA;YACDuE,KAAI,CAACvH,iBAAiB,GAAG,MAAM;YAC/B,OAAOqI,sBAA6B,CAACd,KAAI,CAACC,UAAU,EAAE,CAAC;;SAE1D;;KACF;IApMC,IAAI,CAACzN,OAAO,GAAGA,OAAO,CAACuO,QAAQ,CAAC,GAAG,CAAC,GAAGvO,OAAO,GAAMA,OAAO,MAAG;IAC9D,IAAI,CAACyD,QAAQ,GAAG,MAAM;IACtB,IAAI,CAACf,QAAQ,GAAG,EAAE;IAClB,IAAI,CAAC3C,QAAQ,GAAGA,QAAQ,CAAC,IAAI,CAACC,OAAO,EAAEC,MAAM,CAAC;IAC9C,IAAI,CAACgG,iBAAiB,GAAG,MAAM;IAC/B,IAAI,CAACxD,0BAA0B,GAAGyD,SAAS;;EAC5C,IAAAsI,MAAA,GAAAlB,sBAAA,CAAAmB,SAAA;EAAAD,MAAA,CAEOf,UAAU,GAAV,SAAAA,UAAUA;IAChB,OAAO;MACL1N,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBC,OAAO,EAAE,IAAI,CAACA,OAAO;MACrByD,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBf,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBuD,iBAAiB,EAAE,IAAI,CAACA,iBAAsB;MAC9CxD,0BAA0B,EAAE,IAAI,CAACA,0BAA0B;MAC3DD,yBAAyB,EAAE,IAAI,CAACkM,iCAAiC,CAACC,IAAI,CACpE,IAAI;KAEP;GACF;EAAAH,MAAA,CAEaE,iCAAiC;IAAA,IAAAE,kCAAA,gBAAA7N,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAvC,SAAAC;MAAA,IAAA2N,qBAAA,EAAA1N,cAAA,EAAAoH,eAAA;MAAA,IAAAnH,QAAA,EAAA0N,UAAA;MAAA,OAAA9N,YAAA,GAAAO,CAAA,WAAAC,QAAA;QAAA,kBAAAA,QAAA,CAAAE,CAAA;UAAA;YAAA,KACF,IAAI,CAACe,0BAA0B;cAAAjB,QAAA,CAAAE,CAAA;cAAA;;YAAA,OAAAF,QAAA,CAAAU,CAAA,IAC1B,IAAI,CAACO,0BAA0B;UAAA;YAAA,IAGnC,IAAI,CAACC,QAAQ;cAAAlB,QAAA,CAAAE,CAAA;cAAA;;YAAA,MACV,IAAIO,KAAK,CAAC,uBAAuB,CAAC;UAAA;YAAA,MAGtC,IAAI,CAACgE,iBAAiB,KAAK,MAAM;cAAAzE,QAAA,CAAAE,CAAA;cAAA;;YACnC,IAAI,CAACe,0BAA0B,gBAAc,IAAI,CAACC,QAAQ,aAAU;YAAC,OAAAlB,QAAA,CAAAU,CAAA,IAC9D,IAAI,CAACO,0BAA0B;UAAA;YAAAjB,QAAA,CAAAE,CAAA;YAAA,OAGjB,IAAI,CAAC3B,QAAQ,CAACkJ,GAAG,iCACR,IAAI,CAACvG,QAAQ,0CAAuC,CACnF;UAAA;YAFKtB,QAAQ,GAAAI,QAAA,CAAAI,CAAA;YAIRkN,UAAU,IAAAD,qBAAA,IAAA1N,cAAA,GACdC,QAAQ,CAACS,IAAI,cAAAV,cAAA,GAAbA,cAAA,CAAeW,CAAC,qBAAhBX,cAAA,CAAkB4N,0BAA0B,YAAAF,qBAAA,IAAAtG,eAAA,GAC5CnH,QAAQ,CAACS,IAAI,qBAAb0G,eAAA,CAAewG,0BAA0B;YAAA,MAEvC,CAACD,UAAU,IAAI,OAAOA,UAAU,KAAK,QAAQ;cAAAtN,QAAA,CAAAE,CAAA;cAAA;;YAAA,MACzC,IAAIO,KAAK,8DAC6C,IAAI,CAACS,QAAQ,QAAI,CAC5E;UAAA;YAGH,IAAI,CAACD,0BAA0B,GAAGqM,UAAU;YAAC,OAAAtN,QAAA,CAAAU,CAAA,IACtC,IAAI,CAACO,0BAA0B;;SAAAvB,OAAA;KACvC;IAAA,SA9BawN,iCAAiCA;MAAA,OAAAE,kCAAA,CAAA/N,KAAA,OAAAC,SAAA;;IAAA,OAAjC4N,iCAAiC;;;;;;EAgC/CF,MAAA,CAGAQ,IAAI,GAAJ,SAAAA,IAAIA,CAACtM,QAAsB;IACzB,IAAI,CAACA,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACe,QAAQ,8BAA4Bf,QAAU;IACnD,IAAI,CAACuD,iBAAiB,GAAG,MAAM;IAC/B,IAAI,CAACxD,0BAA0B,GAAGyD,SAAS;IAC3C,OAAO,IAAI;GACZ;EAAAsI,MAAA,CAUMS,SAAS,GAAT,SAAAA,SAASA;IACd,OAAOxO,WAAW,CAAC,IAAI,CAACV,QAAQ,EAAE,IAAI,CAACC,OAAO,CAAC;GAChD;EAAAwO,MAAA,CAEMU,IAAI,GAAJ,SAAAA,IAAIA,CAGTxM,QAAW,EAAEyM,cAAkB;;IAC/B,IAAMC,OAAO,GAAID,cAAc,WAAdA,cAAc,GAAI,MAAY;IAE/C,IAAI,CAACzM,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACuD,iBAAiB,GAAGmJ,OAAO;IAChC,IAAI,CAAC3M,0BAA0B,GAAGyD,SAAS;IAC3C,IAAI,CAACzC,QAAQ,GACX2L,OAAO,KAAK,MAAM,mCACgB,IAAI,CAAC1M,QAAQ,2CAClBA,QAAU;IAEzC,IAAM+K,UAAU,GAAG,SAAbA,UAAUA;MAAA,OAAS4B,MAAI,CAAC5B,UAAU,EAAK;;IAE7C,OAAO;MACLlN,MAAM,EAAE,SAARA,MAAMA,CAAGsB,IAAc;QAAA,OAAKc,cAAc,CAAC8K,UAAU,EAAE,EAAE5L,IAAI,CAAC;;MAC9DoH,GAAG,EAAE,SAALA,GAAGA,CAAG7C,OAAmC;QAAA,OACvCgC,YAAY,CAAmBqF,UAAU,EAAE,EAAErH,OAAO,CAAC;;MACvDkJ,MAAM,EAAE,SAARA,MAAMA,CAAG9K,EAAU,EAAE3C,IAAc,EAAEmE,MAAe;QAAA,OAClDkD,cAAc,CAACuE,UAAU,EAAE,EAAEjJ,EAAE,EAAE3C,IAAI,EAAEmE,MAAM,CAAC;;MAChD,UAAQ,SAARuJ,OAAMA,CAAG/K,EAAU;QAAA,OAAKF,UAAU,CAACmJ,UAAU,EAAE,EAAEjJ,EAAE,CAAC;;MACpDgL,UAAU,EAAE,SAAZA,UAAUA,CAAG3B,KAAsB;QAAA,OACjC9J,gBAAgB,CAAC0J,UAAU,EAAE,EAAEI,KAAK,CAAC;;MACvCvE,UAAU,EAAE,SAAZA,YAAUA,CAAGuE,KAAsB;QAAA,OAAKvE,UAAU,CAACmE,UAAU,EAAE,EAAEI,KAAK,CAAC;;MACvEhI,UAAU,EAAE,SAAZA,YAAUA,CAAGgI,KAAsB;QAAA,OACjC4B,UAAiB,CAAChC,UAAU,EAAE,EAAEI,KAAK,CAAC;;MACxC6B,MAAM,EAAE,SAARA,MAAMA,CAAGtJ,OAAyC;QAChDiJ,MAAI,CAAC5L,QAAQ,GAAG,EAAC2C,OAAO,YAAPA,OAAO,CAAEuJ,SAAS,oCACDN,MAAI,CAAC3M,QAAQ,iDACb2M,MAAI,CAAC3M,QAAQ,8BAAyB0D,OAAO,CAACuJ,SAAS,OAAI;QAC7F,OAAO;UACL1G,GAAG,EAAE,SAALA,GAAGA;YAAA,OACDH,OAAO,CAAmBuG,MAAI,CAACtP,QAAQ,EAAEsP,MAAI,CAAC5L,QAAQ,EAAE2C,OAAO,CAAC;;SACnE;;KAEJ;GACF;EAAAoI,MAAA,CAUMoB,MAAM,GAAN,SAAAA,MAAMA,CAACC,UAA8B;;IAC1C,IAAIC,QAAQ,GAAG,CAAC,kBAAkB,CAAC;IAEnC,IAAID,UAAU,EAAE;MACdC,QAAQ,GAAGlL,KAAK,CAACC,OAAO,CAACgL,UAAU,CAAC,MAAAE,MAAA,CAC5BD,QAAQ,EAAKD,UAAU,OAAAE,MAAA,CACvBD,QAAQ,GAAED,UAAU,EAAC;;IAG/B,IAAI,CAACpM,QAAQ,+CAA6CqM,QAAQ,CAACrK,IAAI,CACrE,GAAG,CACJ,OAAI;IACL,IAAI,CAACQ,iBAAiB,GAAG,MAAM;IAE/B,IAAMwH,UAAU,GAAG,SAAbA,UAAUA;MAAA,OAASuC,MAAI,CAACvC,UAAU,EAAE;;IAE1C,OAAO;MACLxE,GAAG,EAAE,SAALA,GAAGA,CAAG7C,OAA6B;QACjC,IAAI,EAACA,OAAO,YAAPA,OAAO,CAAE5C,IAAI,GAAE;UAClBwM,MAAI,CAACvM,QAAQ,IAAI,QAAQ;SAC1B,MAAM;UACLuM,MAAI,CAACvM,QAAQ,UAAQ2C,OAAO,CAAC5C,IAAM;;QAErC,OAAOqE,QAAQ,CAAC4F,UAAU,EAAE,EAAErH,OAAO,CAAC;;KAEzC;GACF;EAAAoI,MAAA,CAEMyB,KAAK,GAAL,SAAAA,KAAKA,CAAC7J,OAAsB;;IACjC,IAAI,CAAC3C,QAAQ,GAAG,iCAAiC;IACjD,IAAI,CAACwC,iBAAiB,GAAG,MAAM;IAC/B,OAAO;MACLgD,GAAG,EAAE,SAALA,GAAGA;QAAA,OAAQb,YAAY,CAAC8H,MAAI,CAACzC,UAAU,EAAE,EAAErH,OAAO,CAAC;;KACpD;GACF;EAAA,OAAAkH,sBAAA;AAAA;;AChNH;AAEA,SAAwB6C,UAAUA;EAGhC,SAAS5P,MAAMA,CAAA0D,IAAA;QACbjE,OAAO,GAAAiE,IAAA,CAAPjE,OAAO;MACPC,MAAM,GAAAgE,IAAA,CAANhE,MAAM;IAKN,IAAI,CAACD,OAAO,EAAE;MACZ,MAAM,IAAIiC,KAAK,CAAC,0CAA0C,CAAC;;IAE7D,OAAO,IAAImO,sBAAmB,CAAIpQ,OAAO,EAAEC,MAAM,CAAC;;EAGpD,OAAO;;;;IAILD,OAAO,WAAPA,OAAOA,CAAC6D,GAAW,EAAE5D,MAAoB;MACvC,OAAOM,MAAM,CAAC;QAAEP,OAAO,EAAE6D,GAAG;QAAE5D,MAAM,EAANA;OAAQ,CAAC;KACxC;IACDM,MAAM,EAANA;GACD;AACH;;;;"}
|
|
1
|
+
{"version":3,"file":"sharepoint_requests.esm.js","sources":["../src/root/instance.ts","../src/root/internal/digest.ts","../src/root/internal/listRequests/createListItem.ts","../src/root/internal/listRequests/createAttachment.ts","../src/root/internal/listRequests/deleteItem.ts","../src/root/internal/listRequests/utils.ts","../src/root/internal/listRequests/deleteFile.ts","../src/root/internal/odata.ts","../src/root/internal/listRequests/getFiles.ts","../src/root/internal/listRequests/getListItems.ts","../src/root/internal/listRequests/getOnly.ts","../src/root/internal/listRequests/updateListItem.ts","../src/root/internal/listRequests/uploadFile.ts","../src/root/internal/emailRequests.ts","../src/root/internal/userRequests.ts","../src/root/index.ts","../src/index.ts"],"sourcesContent":["import axios, { AxiosHeaders, CreateAxiosDefaults as AxiosConfig } from 'axios';\n\nconst defaultConfig: AxiosConfig = {\n headers: {\n Accept: 'application/json; odata=verbose',\n 'Content-Type': 'application/json; odata=verbose',\n },\n timeout: 15000,\n withCredentials: true,\n};\n\nexport const instance = (baseURL: string, config?: AxiosConfig) => {\n const userHeaders =\n config?.headers instanceof AxiosHeaders\n ? config.headers.toJSON()\n : config?.headers ?? {};\n\n return axios.create({\n ...defaultConfig,\n ...config,\n baseURL,\n headers: {\n ...defaultConfig.headers,\n ...userHeaders,\n },\n });\n};\n\nexport default instance;\n","import type { AxiosInstance } from 'axios';\n\nexport async function fetchDigest(\n instance: AxiosInstance,\n baseURL: string\n): Promise<string> {\n try {\n const response = await instance.post(`${baseURL}_api/contextinfo`);\n\n const formDigestValue =\n response.data?.d?.GetContextWebInformation?.FormDigestValue;\n\n if (!formDigestValue) {\n throw new Error('Invalid response structure: Missing FormDigestValue');\n }\n\n return formDigestValue;\n } catch (error) {\n console.error('Failed to retrieve the Form Digest Value:', error);\n throw new Error(`Error retrieving Form Digest Value`);\n }\n}\n","import type { ListData, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nasync function resolveMetadataType<V extends SHAREPOINT_VER>(\n context: RequestContext<V>\n) {\n if (context.resolveListItemEntityType) {\n return context.resolveListItemEntityType();\n }\n\n if (context.listItemEntityTypeFullName) {\n return context.listItemEntityTypeFullName;\n }\n\n return `SP.Data.${context.listName}ListItem`;\n}\n\nexport async function createListItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n listData: ListData\n) {\n const metadataType = await resolveMetadataType(context);\n const payload = {\n ...listData,\n __metadata: {\n type: metadataType,\n },\n };\n\n const response = await context.instance({\n url: context.endpoint,\n method: 'POST',\n data: JSON.stringify(payload),\n headers: {\n 'X-RequestDigest': await fetchDigest(context.instance, context.baseURL),\n },\n });\n\n return response;\n}\n","import type { CreateFileProps, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nexport async function createAttachment<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { file, itemId }: CreateFileProps\n) {\n const requestUrl = `_api/lists/getbytitle('${context.listName}')/items(${itemId})/AttachmentFiles/add(FileName='${file.name}')`;\n const response = await context.instance.post(requestUrl, file, {\n headers: {\n 'X-RequestDigest': await fetchDigest(context.instance, context.baseURL),\n },\n withCredentials: true,\n });\n\n return response;\n}\n","import type { SHAREPOINT_VER } from '../../../types';\nimport type { RequestContext } from '../context';\n\nexport async function deleteItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n id: number | string\n) {\n const response = await context.instance.delete(`${context.endpoint}(${id})`);\n return response;\n}\n","export function buildLibraryPath(folderPath?: string | string[]) {\n if (!folderPath) {\n return '';\n }\n\n const segments = Array.isArray(folderPath)\n ? folderPath\n : folderPath.split('/').filter(Boolean);\n\n if (!segments.length) {\n return '';\n }\n\n const escapedSegments = segments.map((segment) => {\n if (!segment.trim()) {\n throw new Error('Folder path segments cannot be empty.');\n }\n\n const sanitized = segment.replace(/'/g, \"''\");\n\n return `/Folders('${encodeURIComponent(sanitized)}')`;\n });\n\n return escapedSegments.join('');\n}\n\nexport function encodeFileName(fileName: string) {\n if (!fileName.trim()) {\n throw new Error('File name cannot be empty.');\n }\n\n return encodeURIComponent(fileName.replace(/'/g, \"''\"));\n}\n","import type { SHAREPOINT_VER, DeleteFileProps } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\nimport { buildLibraryPath, encodeFileName } from './utils';\n\nconst SUPPORTED_VERSION: SHAREPOINT_VER = '2013';\n\nexport async function deleteFile<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { fileName, folderPath }: DeleteFileProps\n) {\n if (context.sharepointVersion !== SUPPORTED_VERSION) {\n throw new Error(\n 'deleteFile is only supported for SharePoint 2013 REST endpoints.'\n );\n }\n\n const encodedFileName = encodeFileName(fileName);\n let requestUrl = `_api/web/lists/getbytitle('${context.listName}')/RootFolder`;\n requestUrl += buildLibraryPath(folderPath);\n requestUrl += `/Files('${encodedFileName}')`;\n\n const digest = await fetchDigest(context.instance, context.baseURL);\n\n const response = await context.instance.post(requestUrl, undefined, {\n headers: {\n 'X-HTTP-Method': 'DELETE',\n 'IF-MATCH': '*',\n 'X-RequestDigest': digest,\n },\n withCredentials: true,\n });\n\n return response;\n}\n","import type { Folder_Options, Options, SHAREPOINT_VER } from '../../types';\n\ntype QueryableOptions<T, V extends SHAREPOINT_VER = '2013'> =\n | Options<T, V>\n | Folder_Options<T>;\n\nexport function buildODataParams<T, V extends SHAREPOINT_VER = '2013'>(\n options: QueryableOptions<T, V> | undefined,\n orderBySeparator: ',' | ' ' = ','\n) {\n const { expand, orderBy, limit, filter, cols, skip } = options || {};\n\n const params: Record<string, string | number | undefined> = {\n $expand: Array.isArray(expand) ? expand.join(',') : expand,\n $top: limit,\n $skip: skip,\n $select: Array.isArray(cols) ? cols.join(',') : cols,\n $filter: filter,\n $orderby: Array.isArray(orderBy)\n ? orderBy.join(orderBySeparator)\n : orderBy,\n };\n\n return params;\n}\n\nexport function appendParamsToUrl(\n baseUrl: URL,\n params: Record<string, string | number | undefined | null>\n) {\n Object.entries(params).forEach(([key, value]) => {\n if (value !== undefined && value !== null) {\n baseUrl.searchParams.append(key, String(value));\n }\n });\n}\n","import type { Folder_Options, SHAREPOINT_VER } from '../../../types';\nimport { appendParamsToUrl, buildODataParams } from '../odata';\nimport type { RequestContext } from '../context';\n\nexport async function getFiles<\n T,\n V extends SHAREPOINT_VER = '2013'\n>(\n context: RequestContext<V>,\n options?: Folder_Options<T>\n) {\n const params = buildODataParams(options, ',');\n const url = new URL(context.endpoint, context.instance.defaults.baseURL);\n\n appendParamsToUrl(url, params);\n\n const response = await context.instance.request({\n url: context.endpoint,\n method: 'GET',\n params,\n });\n\n const data =\n options?.limit || !response.data.d.results\n ? response.data.d\n : response.data.d.results;\n\n const meta = { url };\n\n return { data, meta };\n}\n","import type { Options, SPItem, SHAREPOINT_VER } from '../../../types';\nimport { appendParamsToUrl, buildODataParams } from '../odata';\nimport type { RequestContext } from '../context';\n\nexport async function getListItems<\n K,\n V extends SHAREPOINT_VER = '2013'\n>(\n context: RequestContext<V>,\n options?: Options<K, V>\n): Promise<{ data: (K & Partial<SPItem<V>>)[]; meta: { url: URL } }> {\n const params = buildODataParams(options, ' ');\n\n const url = new URL(context.endpoint, context.instance.defaults.baseURL);\n appendParamsToUrl(url, params);\n\n const response = await context.instance.request({\n url: context.endpoint,\n method: 'GET',\n params,\n });\n\n const rawData = response.data?.d?.results ?? response.data?.d ?? response.data;\n const cols = options?.cols;\n const keys = cols\n ? (Array.isArray(cols) ? cols : [cols]).filter(Boolean)\n : undefined;\n\n const filterItem = (item: unknown) => {\n if (!keys || !item || typeof item !== 'object') {\n return item;\n }\n\n return keys.reduce<Record<string, unknown>>((acc, key) => {\n if (key in item) {\n acc[key] = (item as Record<string, unknown>)[key];\n }\n\n return acc;\n }, {});\n };\n\n const data = Array.isArray(rawData)\n ? rawData.map(filterItem)\n : filterItem(rawData);\n\n const meta = { url };\n\n return { data: data as (K & Partial<SPItem<V>>)[], meta };\n}\n","import type { AxiosInstance } from 'axios';\nimport type { Options, SHAREPOINT_VER } from '../../../types';\nimport { buildODataParams } from '../odata';\n\nexport async function getOnly<\n T,\n V extends SHAREPOINT_VER = '2013'\n>(\n instance: AxiosInstance,\n endpoint: string,\n options?: Options<T, V>\n) {\n const params = buildODataParams(options, ',');\n const { data } = await instance.get(endpoint, { params });\n if (data) {\n return data.d.results ? data.d.results : data.d;\n }\n}\n","import type { ListData, SHAREPOINT_VER } from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\n\nasync function resolveMetadataType<V extends SHAREPOINT_VER>(\n context: RequestContext<V>\n) {\n if (context.resolveListItemEntityType) {\n return context.resolveListItemEntityType();\n }\n\n if (context.listItemEntityTypeFullName) {\n return context.listItemEntityTypeFullName;\n }\n\n return `SP.Data.${context.listName}ListItem`;\n}\n\nexport async function updateListItem<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n id: number | string,\n data: ListData,\n digest?: string\n) {\n const formDigestValue =\n digest || (await fetchDigest(context.instance, context.baseURL));\n\n const metadataType = await resolveMetadataType(context);\n const payload = {\n ...data,\n __metadata: {\n type: metadataType,\n },\n };\n\n const url = `_api/lists/getbytitle('${context.listName}')/getItemById('${id}')`;\n\n const response = await context.instance({\n url,\n method: 'POST',\n data: JSON.stringify(payload),\n headers: {\n 'X-RequestDigest': formDigestValue,\n 'IF-MATCH': '*',\n 'X-Http-Method': 'PATCH',\n },\n });\n\n return response;\n}\n","import type { AxiosResponse } from 'axios';\nimport type {\n ItemID,\n SHAREPOINT_VER,\n UploadFileProps,\n} from '../../../types';\nimport { fetchDigest } from '../digest';\nimport type { RequestContext } from '../context';\nimport { buildLibraryPath, encodeFileName } from './utils';\n\nconst SUPPORTED_VERSION: SHAREPOINT_VER = '2013';\n\nexport async function uploadFile<V extends SHAREPOINT_VER = '2013'>(\n context: RequestContext<V>,\n { file, folderPath, overwrite = true }: UploadFileProps\n): Promise<AxiosResponse & { itemId?: ItemID }> {\n if (context.sharepointVersion !== SUPPORTED_VERSION) {\n throw new Error(\n 'uploadFile is only supported for SharePoint 2013 REST endpoints.'\n );\n }\n\n if (!file?.name) {\n throw new Error('A file with a valid name must be provided.');\n }\n\n let requestUrl = `_api/web/lists/getbytitle('${context.listName}')/RootFolder`;\n\n requestUrl += buildLibraryPath(folderPath);\n\n const encodedFileName = encodeFileName(file.name);\n requestUrl += `/Files/add(url='${encodedFileName}',overwrite=${\n overwrite ? 'true' : 'false'\n })?$expand=ListItemAllFields&$select=ListItemAllFields/Id`;\n\n const digest = await fetchDigest(context.instance, context.baseURL);\n\n const response = (await context.instance.post(requestUrl, file, {\n headers: {\n 'Content-Type': file.type || 'application/octet-stream',\n 'X-RequestDigest': digest,\n },\n withCredentials: true,\n })) as AxiosResponse & { itemId?: ItemID };\n\n const responseData = response.data?.d ?? response.data;\n const listItemFields = responseData?.ListItemAllFields;\n const itemId =\n listItemFields?.Id ??\n listItemFields?.ID ??\n responseData?.Id ??\n responseData?.ID;\n\n if (typeof itemId !== 'undefined') {\n response.itemId = itemId;\n } else if (listItemFields?.__deferred?.uri) {\n const listItemResponse = await context.instance.get(\n listItemFields.__deferred.uri\n );\n const deferredId =\n listItemResponse.data?.d?.Id ?? listItemResponse.data?.Id;\n\n if (typeof deferredId !== 'undefined') {\n response.itemId = deferredId;\n }\n }\n\n return response;\n}\n","import type { AxiosResponse } from 'axios';\nimport type { EmailProps } from '../../types';\nimport { fetchDigest } from './digest';\nimport type { RequestContext } from './context';\n\ntype SendEmailResponse = AxiosResponse<{\n d: {\n SendEmail: null;\n };\n}>;\n\nexport async function sendEmail(\n context: RequestContext,\n { From, To, Subject, Body }: EmailProps\n): Promise<SendEmailResponse> {\n const httpRequest = '_api/SP.Utilities.Utility.SendEmail';\n\n const response = await context.instance({\n url: httpRequest,\n method: 'POST',\n headers: {\n 'X-RequestDigest': await fetchDigest(\n context.instance,\n context.baseURL\n ),\n 'X-Http-Method': 'POST',\n 'Content-Type': 'application/json;odata=verbose',\n },\n data: JSON.stringify({\n properties: {\n __metadata: {\n type: 'SP.Utilities.EmailProperties',\n },\n From,\n To: {\n results: Array.isArray(To) ? To : [To],\n },\n Body,\n Subject,\n },\n }),\n });\n\n return response;\n}\n","import type { AxiosInstance } from 'axios';\nimport type {\n PersonField,\n UserPermision,\n UserProfile,\n} from '../../types';\nimport type { RequestContext } from './context';\n\ntype RoleDefinition = {\n BasePermissions: {\n High: string;\n };\n};\n\nexport async function typeAhead(\n instance: AxiosInstance,\n input: string,\n filter?: string\n): Promise<PersonField> {\n const requestUrl = `_api/SP.UI.ApplicationPages.ClientPeoplePickerWebServiceInterface.clientPeoplePickerSearchUser`;\n\n const data = {\n queryParams: {\n __metadata: {\n type: 'SP.UI.ApplicationPages.ClientPeoplePickerQueryParameters',\n },\n AllowEmailAddresses: true,\n AllowMultipleEntities: false,\n AllUrlZones: false,\n MaximumEntitySuggestions: 10,\n PrincipalSource: 15,\n PrincipalType: 1,\n QueryString: input,\n },\n };\n\n if (filter) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (data.queryParams as any).RequiredProperties = [filter];\n }\n\n const response = await instance.post(requestUrl, JSON.stringify(data), {\n headers: {\n Accept: 'application/json; odata=verbose',\n 'Content-Type': 'application/json;odata=verbose',\n },\n });\n\n return response.data.d.ClientPeoplePickerSearchUser;\n}\n\nexport async function currentUserProperties(\n instance: AxiosInstance\n): Promise<UserProfile> {\n const requestUrl = '_api/sp.userprofiles.peoplemanager/getmyproperties';\n let profile: any = await instance.get(requestUrl);\n\n profile = profile.data.d;\n\n profile.UserProfileProperties.results.forEach(\n (prop: { Key: string; Value: string }) => {\n if (prop.Key === 'FirstName') {\n profile.FirstName = prop.Value;\n }\n if (prop.Key === 'LastName') {\n profile.LastName = prop.Value;\n }\n if (prop.Key === 'Country') {\n profile.Country = prop.Value;\n }\n if (prop.Key === 'UserName') {\n profile.UserName = prop.Value;\n }\n }\n );\n\n return profile;\n}\n\nexport async function getSiteUser(instance: AxiosInstance, searchValue: string) {\n const requestUrl = `_api/web/siteusers?&$filter=substringof('${searchValue}', Title) or substringof('${searchValue}', LoginName) or substringof('${searchValue}', Email)&$top=50&$expand=Groups`;\n const response = await instance.get(requestUrl);\n return response.data.d;\n}\n\nexport async function roleDefinitions(instance: AxiosInstance) {\n const requestUrl = `_api/Web/RoleDefinitions`;\n const response = await instance.get(requestUrl);\n return response.data.d.results as RoleDefinition[];\n}\n\nexport async function getEffectiveBasePermissions(instance: AxiosInstance) {\n const requestUrl = `_api/Web/effectiveBasePermissions`;\n const response = await instance.get(requestUrl);\n return response.data.d.EffectiveBasePermissions;\n}\n\nexport async function currentUserPermissions(\n context: RequestContext\n): Promise<UserPermision> {\n const { High } = await getEffectiveBasePermissions(context.instance);\n const definitions = await roleDefinitions(context.instance);\n\n const result = definitions.find(\n ({ BasePermissions }: RoleDefinition) => BasePermissions.High === High\n );\n\n return result as UserPermision;\n}\n","import { AxiosInstance, CreateAxiosDefaults as AxiosConfig } from 'axios';\nimport instance from './instance';\nimport {\n CreateFileProps,\n DeleteFileProps,\n CurrentUser,\n EmailProps,\n Field_Options,\n Folder_Options,\n UploadFileProps,\n IListName,\n ItemID,\n ListData,\n Options,\n PersonField,\n SHAREPOINT_VER,\n UserPermision,\n UserProfile,\n} from '../types';\nimport { RequestContext } from './internal/context';\nimport {\n createAttachment,\n createListItem,\n deleteItem,\n deleteFile as deleteLibraryFile,\n getFiles,\n getListItems,\n getOnly,\n updateListItem,\n uploadFile,\n} from './internal/listRequests';\nimport { sendEmail as sendEmailRequest } from './internal/emailRequests';\nimport {\n currentUserPermissions as resolveCurrentUserPermissions,\n currentUserProperties as loadCurrentUserProperties,\n getSiteUser as fetchSiteUser,\n typeAhead,\n} from './internal/userRequests';\nimport { fetchDigest } from './internal/digest';\n\nclass HTTPSharePointRequests<\n T extends {\n LISTS: Record<string, unknown>;\n FOLDERS?: Record<string, unknown>;\n }\n> {\n private baseURL: string;\n private endpoint: string;\n private listName: string;\n private instance: AxiosInstance;\n private sharepointVersion: SHAREPOINT_VER;\n private listItemEntityTypeFullName?: string;\n\n constructor(baseURL: string, config?: AxiosConfig) {\n this.baseURL = baseURL.endsWith('/') ? baseURL : `${baseURL}/`;\n this.endpoint = '/api';\n this.listName = '';\n this.instance = instance(this.baseURL, config);\n this.sharepointVersion = '2013';\n this.listItemEntityTypeFullName = undefined;\n }\n\n private getContext<V extends SHAREPOINT_VER = '2013'>(): RequestContext<V> {\n return {\n instance: this.instance,\n baseURL: this.baseURL,\n endpoint: this.endpoint,\n listName: this.listName,\n sharepointVersion: this.sharepointVersion as V,\n listItemEntityTypeFullName: this.listItemEntityTypeFullName,\n resolveListItemEntityType: this.resolveListItemEntityTypeFullName.bind(\n this\n ),\n };\n }\n\n private async resolveListItemEntityTypeFullName(): Promise<string> {\n if (this.listItemEntityTypeFullName) {\n return this.listItemEntityTypeFullName;\n }\n\n if (!this.listName) {\n throw new Error('List name is not set.');\n }\n\n if (this.sharepointVersion !== '2013') {\n this.listItemEntityTypeFullName = `SP.Data.${this.listName}ListItem`;\n return this.listItemEntityTypeFullName;\n }\n\n const response = await this.instance.get(\n `_api/web/lists/GetByTitle('${this.listName}')?$select=ListItemEntityTypeFullName`\n );\n\n const entityType =\n response.data?.d?.ListItemEntityTypeFullName ??\n response.data?.ListItemEntityTypeFullName;\n\n if (!entityType || typeof entityType !== 'string') {\n throw new Error(\n `Unable to resolve ListItemEntityTypeFullName for list \"${this.listName}\".`\n );\n }\n\n this.listItemEntityTypeFullName = entityType;\n return this.listItemEntityTypeFullName;\n }\n\n /**\n * @deprecated Use `from` instead.\n */\n list(listName: IListName<T>) {\n this.listName = listName;\n this.endpoint = `_vti_bin/ListData.svc/${listName}`;\n this.sharepointVersion = '2010';\n this.listItemEntityTypeFullName = undefined;\n return this;\n }\n\n public readonly lists = {\n get: () => {\n this.endpoint = '_api/web/lists';\n this.sharepointVersion = '2013';\n return getListItems(this.getContext());\n },\n };\n\n public getDigest() {\n return fetchDigest(this.instance, this.baseURL);\n }\n\n public from<\n K extends Extract<keyof T['LISTS'], string>,\n V extends SHAREPOINT_VER = '2013'\n >(listName: K, sharepoint_ver?: V) {\n const version = (sharepoint_ver ?? '2013') as V;\n\n this.listName = listName;\n this.sharepointVersion = version;\n this.listItemEntityTypeFullName = undefined;\n this.endpoint =\n version === '2013'\n ? `_api/web/lists/GetByTitle('${this.listName}')/items`\n : `_vti_bin/ListData.svc/${listName}`;\n\n const getContext = () => this.getContext<V>();\n\n return {\n create: (data: ListData) => createListItem(getContext(), data),\n get: (options?: Options<T['LISTS'][K], V>) =>\n getListItems<T['LISTS'][K], V>(getContext(), options),\n update: (id: ItemID, data: ListData, digest?: string) =>\n updateListItem(getContext(), id, data, digest),\n delete: (id: ItemID) => deleteItem(getContext(), id),\n createFile: (props: CreateFileProps) =>\n createAttachment(getContext(), props),\n uploadFile: (props: UploadFileProps) => uploadFile(getContext(), props),\n deleteFile: (props: DeleteFileProps) =>\n deleteLibraryFile(getContext(), props),\n fields: (options?: Field_Options<T['LISTS'][K], V>) => {\n this.endpoint = !options?.fieldName\n ? `_api/web/lists/GetByTitle('${this.listName}')/fields`\n : `_api/web/lists/GetByTitle('${this.listName}')/fields/getbytitle('${options.fieldName}')`;\n return {\n get: () =>\n getOnly<T['LISTS'][K], V>(this.instance, this.endpoint, options),\n };\n },\n };\n }\n\n public folders = {\n get: () => {\n this.endpoint = '_api/web/folders';\n this.sharepointVersion = '2013';\n getListItems(this.getContext());\n },\n };\n\n public folder(folderName?: string | string[]) {\n let filePath = ['Shared Documents'];\n\n if (folderName) {\n filePath = Array.isArray(folderName)\n ? [...filePath, ...folderName]\n : [...filePath, folderName];\n }\n\n this.endpoint = `_api/web/GetFolderByServerRelativeUrl('${filePath.join(\n '/'\n )}')`;\n this.sharepointVersion = '2013';\n\n const getContext = () => this.getContext();\n\n return {\n get: (options?: Folder_Options<any>) => {\n if (!options?.type) {\n this.endpoint += '/Files';\n } else {\n this.endpoint += `/${options.type}`;\n }\n return getFiles(getContext(), options);\n },\n };\n }\n\n public users(options?: Options<any>) {\n this.endpoint = '_api/web/SiteUserInfoList/items';\n this.sharepointVersion = '2013';\n return {\n get: () => getListItems(this.getContext(), options),\n };\n }\n\n public email = {\n send: (props: EmailProps) => {\n this.sharepointVersion = '2013';\n return sendEmailRequest(this.getContext(), props);\n },\n };\n\n public user = {\n properties: () => ({\n get: (): Promise<UserProfile> => {\n this.sharepointVersion = '2013';\n return loadCurrentUserProperties(this.instance);\n },\n }),\n searchSiteUser: (searchValue: string) => {\n this.sharepointVersion = '2013';\n return fetchSiteUser(this.instance, searchValue);\n },\n searchUser: (input: string, filter?: string): Promise<PersonField> => {\n this.sharepointVersion = '2013';\n return typeAhead(this.instance, input, filter);\n },\n current: () => {\n this.endpoint = '_api/web/currentUser';\n this.sharepointVersion = '2013';\n return {\n get: (): Promise<CurrentUser> => getOnly(this.instance, this.endpoint),\n };\n },\n currentPermission: () => ({\n get: (): Promise<UserPermision> => {\n this.sharepointVersion = '2013';\n return resolveCurrentUserPermissions(this.getContext());\n },\n }),\n };\n}\n\nexport default HTTPSharePointRequests;\n","import SHAREPOINT_REQUESTS from './root';\n\nimport type { CreateAxiosDefaults as AxiosConfig } from 'axios';\nimport type { LookupField, ChoiceField, PersonField } from './types';\n\n// Load environment variables from .env file\n\nexport default function createBase<\n T extends { LISTS: Record<string, any>; FOLDERS?: Record<string, any> } = any\n>(){\n function create({\n baseURL,\n config,\n }: {\n baseURL: string;\n config?: AxiosConfig;\n }) {\n if (!baseURL) {\n throw new Error('A valid SharePoint URL must be provided.');\n }\n return new SHAREPOINT_REQUESTS<T>(baseURL, config);\n }\n\n return {\n /**\n * @deprecated Use `create` instead.\n */\n baseURL(url: string, config?: AxiosConfig) {\n return create({ baseURL: url, config });\n },\n create,\n };\n}\n\nexport { LookupField, ChoiceField, PersonField };\n\n\n"],"names":["defaultConfig","headers","Accept","timeout","withCredentials","instance","baseURL","config","userHeaders","AxiosHeaders","toJSON","_config$headers","axios","create","_extends","fetchDigest","_x","_x2","_fetchDigest","apply","arguments","_asyncToGenerator","_regenerator","m","_callee","_response$data","response","formDigestValue","_t","w","_context","p","n","post","v","data","d","GetContextWebInformation","FormDigestValue","Error","a","console","error","resolveMetadataType","_resolveMetadataType","context","resolveListItemEntityType","listItemEntityTypeFullName","listName","createListItem","_x3","_createListItem","_callee2","listData","metadataType","payload","_t2","_t3","_t4","_t5","_context2","__metadata","type","endpoint","JSON","stringify","call","url","method","createAttachment","_createAttachment","_ref","file","itemId","requestUrl","name","deleteItem","_deleteItem","id","buildLibraryPath","folderPath","segments","Array","isArray","split","filter","Boolean","length","escapedSegments","map","segment","trim","sanitized","replace","encodeURIComponent","join","encodeFileName","fileName","SUPPORTED_VERSION","deleteFile","_deleteFile","encodedFileName","digest","sharepointVersion","undefined","buildODataParams","options","orderBySeparator","expand","orderBy","limit","cols","skip","params","$expand","$top","$skip","$select","$filter","$orderby","appendParamsToUrl","baseUrl","Object","entries","forEach","_ref2","key","value","searchParams","append","String","getFiles","_getFiles","meta","URL","defaults","request","results","getListItems","_getListItems","_response$data$d$resu","_response$data2","rawData","keys","filterItem","item","reduce","acc","getOnly","_getOnly","_yield$instance$get","get","updateListItem","_x4","_x5","_updateListItem","uploadFile","_uploadFile","_response$data$d","_ref3","_listItemFields$Id","_listItemFields$__def","_ref$overwrite","overwrite","responseData","listItemFields","_listItemResponse$dat","_listItemResponse$dat2","_listItemResponse$dat3","listItemResponse","deferredId","ListItemAllFields","Id","ID","__deferred","uri","sendEmail","_sendEmail","From","To","Subject","Body","httpRequest","properties","typeAhead","_typeAhead","input","queryParams","AllowEmailAddresses","AllowMultipleEntities","AllUrlZones","MaximumEntitySuggestions","PrincipalSource","PrincipalType","QueryString","RequiredProperties","ClientPeoplePickerSearchUser","currentUserProperties","_currentUserProperties","profile","UserProfileProperties","prop","Key","FirstName","Value","LastName","Country","UserName","getSiteUser","_x6","_getSiteUser","_callee3","searchValue","_context3","roleDefinitions","_x7","_roleDefinitions","_callee4","_context4","getEffectiveBasePermissions","_x8","_getEffectiveBasePermissions","_callee5","_context5","EffectiveBasePermissions","currentUserPermissions","_x9","_currentUserPermissions","_callee6","_yield$getEffectiveBa","High","definitions","result","_context6","find","BasePermissions","HTTPSharePointRequests","lists","_this","getContext","folders","email","send","props","sendEmailRequest","user","loadCurrentUserProperties","searchSiteUser","fetchSiteUser","searchUser","current","currentPermission","resolveCurrentUserPermissions","endsWith","_proto","prototype","resolveListItemEntityTypeFullName","bind","_resolveListItemEntityTypeFullName","_response$data$d$List","entityType","ListItemEntityTypeFullName","list","getDigest","from","sharepoint_ver","version","_this2","update","delete","createFile","deleteLibraryFile","fields","fieldName","folder","folderName","filePath","concat","_this3","users","_this4","createBase","SHAREPOINT_REQUESTS"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { AxiosResponse } from 'axios';
|
|
2
|
+
import type {
|
|
3
|
+
ItemID,
|
|
4
|
+
SHAREPOINT_VER,
|
|
5
|
+
UploadFileProps,
|
|
6
|
+
} from '../../../types';
|
|
2
7
|
import { fetchDigest } from '../digest';
|
|
3
8
|
import type { RequestContext } from '../context';
|
|
4
9
|
import { buildLibraryPath, encodeFileName } from './utils';
|
|
@@ -8,7 +13,7 @@ const SUPPORTED_VERSION: SHAREPOINT_VER = '2013';
|
|
|
8
13
|
export async function uploadFile<V extends SHAREPOINT_VER = '2013'>(
|
|
9
14
|
context: RequestContext<V>,
|
|
10
15
|
{ file, folderPath, overwrite = true }: UploadFileProps
|
|
11
|
-
) {
|
|
16
|
+
): Promise<AxiosResponse & { itemId?: ItemID }> {
|
|
12
17
|
if (context.sharepointVersion !== SUPPORTED_VERSION) {
|
|
13
18
|
throw new Error(
|
|
14
19
|
'uploadFile is only supported for SharePoint 2013 REST endpoints.'
|
|
@@ -26,17 +31,39 @@ export async function uploadFile<V extends SHAREPOINT_VER = '2013'>(
|
|
|
26
31
|
const encodedFileName = encodeFileName(file.name);
|
|
27
32
|
requestUrl += `/Files/add(url='${encodedFileName}',overwrite=${
|
|
28
33
|
overwrite ? 'true' : 'false'
|
|
29
|
-
})`;
|
|
34
|
+
})?$expand=ListItemAllFields&$select=ListItemAllFields/Id`;
|
|
30
35
|
|
|
31
36
|
const digest = await fetchDigest(context.instance, context.baseURL);
|
|
32
37
|
|
|
33
|
-
const response = await context.instance.post(requestUrl, file, {
|
|
38
|
+
const response = (await context.instance.post(requestUrl, file, {
|
|
34
39
|
headers: {
|
|
35
40
|
'Content-Type': file.type || 'application/octet-stream',
|
|
36
41
|
'X-RequestDigest': digest,
|
|
37
42
|
},
|
|
38
43
|
withCredentials: true,
|
|
39
|
-
});
|
|
44
|
+
})) as AxiosResponse & { itemId?: ItemID };
|
|
45
|
+
|
|
46
|
+
const responseData = response.data?.d ?? response.data;
|
|
47
|
+
const listItemFields = responseData?.ListItemAllFields;
|
|
48
|
+
const itemId =
|
|
49
|
+
listItemFields?.Id ??
|
|
50
|
+
listItemFields?.ID ??
|
|
51
|
+
responseData?.Id ??
|
|
52
|
+
responseData?.ID;
|
|
53
|
+
|
|
54
|
+
if (typeof itemId !== 'undefined') {
|
|
55
|
+
response.itemId = itemId;
|
|
56
|
+
} else if (listItemFields?.__deferred?.uri) {
|
|
57
|
+
const listItemResponse = await context.instance.get(
|
|
58
|
+
listItemFields.__deferred.uri
|
|
59
|
+
);
|
|
60
|
+
const deferredId =
|
|
61
|
+
listItemResponse.data?.d?.Id ?? listItemResponse.data?.Id;
|
|
62
|
+
|
|
63
|
+
if (typeof deferredId !== 'undefined') {
|
|
64
|
+
response.itemId = deferredId;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
40
67
|
|
|
41
68
|
return response;
|
|
42
69
|
}
|