@kwiz/common 1.0.69 → 1.0.71
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/helpers/promises.d.ts +12 -1
- package/dist/helpers/promises.js +37 -5
- package/dist/helpers/promises.js.map +1 -1
- package/dist/types/sharepoint.utils.types.d.ts +26 -0
- package/dist/types/sharepoint.utils.types.js +29 -1
- package/dist/types/sharepoint.utils.types.js.map +1 -1
- package/dist/utils/sharepoint.rest/file.folder.d.ts +7 -2
- package/dist/utils/sharepoint.rest/file.folder.js +42 -6
- package/dist/utils/sharepoint.rest/file.folder.js.map +1 -1
- package/package.json +1 -1
- package/src/helpers/promises.test.js +22 -2
- package/src/helpers/promises.ts +36 -5
- package/src/types/sharepoint.utils.types.ts +28 -0
- package/src/utils/sharepoint.rest/file.folder.ts +48 -6
|
@@ -1,3 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lock all concurrent calls to a resource to one promise for a set duration of time.
|
|
3
|
+
* @param {string} key - Unique key to identify the promise.
|
|
4
|
+
* @param {() => Promise<T>} promiseFunc - Function that will return the promise to be run only once.
|
|
5
|
+
* @param {number} duration - Duration to hold on to the promise result. (default=1)
|
|
6
|
+
* @returns {Promise<T>} Returns the single promise that will be fullfilled for all promises with the same key.
|
|
7
|
+
* @example
|
|
8
|
+
* // returns Promise<string>
|
|
9
|
+
* var initTests = await promiseLock<string>("initTests", async () => { ... }, 2);
|
|
10
|
+
*/
|
|
11
|
+
export declare function promiseLock<T>(key: string, promiseFunc: () => Promise<T>, duration?: number): Promise<T>;
|
|
1
12
|
/**
|
|
2
13
|
* Ensures that a promise runs only once
|
|
3
14
|
* @param {string} key - Unique key to identify the promise.
|
|
@@ -7,7 +18,7 @@
|
|
|
7
18
|
* @returns {Promise<T>} Returns the single promise that will be fullfilled for all promises with the same key.
|
|
8
19
|
* @example
|
|
9
20
|
* // returns Promise<string>
|
|
10
|
-
*
|
|
21
|
+
* var initTests = await promiseOnce<string>("initTests", async () => { ... });
|
|
11
22
|
*/
|
|
12
23
|
export declare function promiseOnce<T>(key: string, promiseFunc: () => Promise<T>, isValidResult?: (result: T) => Promise<boolean>): Promise<T>;
|
|
13
24
|
/**
|
package/dist/helpers/promises.js
CHANGED
|
@@ -1,11 +1,30 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.retryAsync = exports.sleepAsync = exports.promiseNParallel = exports.promiseAllSequential = exports.promiseOnce = void 0;
|
|
3
|
+
exports.retryAsync = exports.sleepAsync = exports.promiseNParallel = exports.promiseAllSequential = exports.promiseOnce = exports.promiseLock = void 0;
|
|
4
4
|
const objects_1 = require("./objects");
|
|
5
5
|
const typecheckers_1 = require("./typecheckers");
|
|
6
6
|
let _global = (0, objects_1.getGlobal)("helpers_promises", {
|
|
7
7
|
promises: {}
|
|
8
8
|
});
|
|
9
|
+
/**
|
|
10
|
+
* Lock all concurrent calls to a resource to one promise for a set duration of time.
|
|
11
|
+
* @param {string} key - Unique key to identify the promise.
|
|
12
|
+
* @param {() => Promise<T>} promiseFunc - Function that will return the promise to be run only once.
|
|
13
|
+
* @param {number} duration - Duration to hold on to the promise result. (default=1)
|
|
14
|
+
* @returns {Promise<T>} Returns the single promise that will be fullfilled for all promises with the same key.
|
|
15
|
+
* @example
|
|
16
|
+
* // returns Promise<string>
|
|
17
|
+
* var initTests = await promiseLock<string>("initTests", async () => { ... }, 2);
|
|
18
|
+
*/
|
|
19
|
+
async function promiseLock(key, promiseFunc, duration = 1) {
|
|
20
|
+
return promiseOnce(key, promiseFunc).then((result) => {
|
|
21
|
+
(globalThis || window).setTimeout(() => {
|
|
22
|
+
_deletePromiseByKey(key);
|
|
23
|
+
}, (0, typecheckers_1.isNumber)(duration) && duration >= 1 ? duration : 1);
|
|
24
|
+
return result;
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
exports.promiseLock = promiseLock;
|
|
9
28
|
/**
|
|
10
29
|
* Ensures that a promise runs only once
|
|
11
30
|
* @param {string} key - Unique key to identify the promise.
|
|
@@ -15,7 +34,7 @@ let _global = (0, objects_1.getGlobal)("helpers_promises", {
|
|
|
15
34
|
* @returns {Promise<T>} Returns the single promise that will be fullfilled for all promises with the same key.
|
|
16
35
|
* @example
|
|
17
36
|
* // returns Promise<string>
|
|
18
|
-
*
|
|
37
|
+
* var initTests = await promiseOnce<string>("initTests", async () => { ... });
|
|
19
38
|
*/
|
|
20
39
|
async function promiseOnce(key, promiseFunc, isValidResult) {
|
|
21
40
|
let promises = _global.promises;
|
|
@@ -26,8 +45,9 @@ async function promiseOnce(key, promiseFunc, isValidResult) {
|
|
|
26
45
|
queuedResult = await promises[key];
|
|
27
46
|
}
|
|
28
47
|
catch (e) { }
|
|
29
|
-
if ((await isValidResult(queuedResult)) !== true)
|
|
30
|
-
|
|
48
|
+
if ((await isValidResult(queuedResult)) !== true) {
|
|
49
|
+
_deletePromiseByKey(key);
|
|
50
|
+
}
|
|
31
51
|
}
|
|
32
52
|
if (!(0, objects_1.hasOwnProperty)(promises, key)) {
|
|
33
53
|
promises[key] = promiseFunc();
|
|
@@ -93,7 +113,7 @@ exports.promiseNParallel = promiseNParallel;
|
|
|
93
113
|
*/
|
|
94
114
|
function sleepAsync(seconds) {
|
|
95
115
|
return new Promise(resolve => {
|
|
96
|
-
window.setTimeout(() => resolve(), seconds > 0 ? seconds * 1000 : 3000);
|
|
116
|
+
(globalThis || window).setTimeout(() => resolve(), seconds > 0 ? seconds * 1000 : 3000);
|
|
97
117
|
});
|
|
98
118
|
}
|
|
99
119
|
exports.sleepAsync = sleepAsync;
|
|
@@ -121,4 +141,16 @@ async function retryAsync(fn, numberOfRetries, seconds = 1) {
|
|
|
121
141
|
throw new Error(`Failed retrying ${numberOfRetries} times`);
|
|
122
142
|
}
|
|
123
143
|
exports.retryAsync = retryAsync;
|
|
144
|
+
function _deletePromiseByKey(key) {
|
|
145
|
+
let promises = _global.promises;
|
|
146
|
+
if ((0, objects_1.hasOwnProperty)(promises, key)) {
|
|
147
|
+
try {
|
|
148
|
+
delete promises[key];
|
|
149
|
+
return true;
|
|
150
|
+
}
|
|
151
|
+
catch {
|
|
152
|
+
return false;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
}
|
|
124
156
|
//# sourceMappingURL=promises.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promises.js","sourceRoot":"","sources":["../../src/helpers/promises.ts"],"names":[],"mappings":";;;AACA,uCAAsD;AACtD,
|
|
1
|
+
{"version":3,"file":"promises.js","sourceRoot":"","sources":["../../src/helpers/promises.ts"],"names":[],"mappings":"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"}
|
|
@@ -251,3 +251,29 @@ export interface IWebRegionalSettings {
|
|
|
251
251
|
WorkDays: number;
|
|
252
252
|
WorkDayStartHour: number;
|
|
253
253
|
}
|
|
254
|
+
/**
|
|
255
|
+
* Specifies the moderation status for a file/item (https://learn.microsoft.com/en-us/openspecs/sharepoint_protocols/ms-wssfo3/4342322d-6fab-4dc5-8ccd-b808a5e25acf)
|
|
256
|
+
*/
|
|
257
|
+
export declare enum ModerationStatus {
|
|
258
|
+
/** The list item is approved. */
|
|
259
|
+
Approved = 0,
|
|
260
|
+
/** The list item has been denied approval. */
|
|
261
|
+
Rejected = 1,
|
|
262
|
+
/** The list item is pending approval. */
|
|
263
|
+
Pending = 2,
|
|
264
|
+
/** The list item is in the draft or checked out state. */
|
|
265
|
+
Draft = 3,
|
|
266
|
+
/** The list item is scheduled for automatic approval at a future date. */
|
|
267
|
+
Scheduled = 4
|
|
268
|
+
}
|
|
269
|
+
/**
|
|
270
|
+
* Specifies the publishing level for a file (https://learn.microsoft.com/en-us/previous-versions/office/sharepoint-visio/jj246272(v=office.15))
|
|
271
|
+
*/
|
|
272
|
+
export declare enum FileLevel {
|
|
273
|
+
/** Enumeration whose values specify whether the file is a published version. */
|
|
274
|
+
Published = 1,
|
|
275
|
+
/** Enumeration whose values specify whether the file is a draft.. */
|
|
276
|
+
Draft = 2,
|
|
277
|
+
/** Enumeration whose values specify whether the file is checked out to the current user. */
|
|
278
|
+
Checkout = 255
|
|
279
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GeListItemsFoldersBehaviour = exports.WebTypes = exports.ListExperienceOptions = void 0;
|
|
3
|
+
exports.FileLevel = exports.ModerationStatus = exports.GeListItemsFoldersBehaviour = exports.WebTypes = exports.ListExperienceOptions = void 0;
|
|
4
4
|
// eslint-disable-next-line no-shadow
|
|
5
5
|
var ListExperienceOptions;
|
|
6
6
|
(function (ListExperienceOptions) {
|
|
@@ -23,4 +23,32 @@ var GeListItemsFoldersBehaviour;
|
|
|
23
23
|
GeListItemsFoldersBehaviour[GeListItemsFoldersBehaviour["ItemsAndFoldersFlat"] = 1] = "ItemsAndFoldersFlat";
|
|
24
24
|
GeListItemsFoldersBehaviour[GeListItemsFoldersBehaviour["ItemsInsideFolders"] = 2] = "ItemsInsideFolders";
|
|
25
25
|
})(GeListItemsFoldersBehaviour || (exports.GeListItemsFoldersBehaviour = GeListItemsFoldersBehaviour = {}));
|
|
26
|
+
/**
|
|
27
|
+
* Specifies the moderation status for a file/item (https://learn.microsoft.com/en-us/openspecs/sharepoint_protocols/ms-wssfo3/4342322d-6fab-4dc5-8ccd-b808a5e25acf)
|
|
28
|
+
*/
|
|
29
|
+
var ModerationStatus;
|
|
30
|
+
(function (ModerationStatus) {
|
|
31
|
+
/** The list item is approved. */
|
|
32
|
+
ModerationStatus[ModerationStatus["Approved"] = 0] = "Approved";
|
|
33
|
+
/** The list item has been denied approval. */
|
|
34
|
+
ModerationStatus[ModerationStatus["Rejected"] = 1] = "Rejected";
|
|
35
|
+
/** The list item is pending approval. */
|
|
36
|
+
ModerationStatus[ModerationStatus["Pending"] = 2] = "Pending";
|
|
37
|
+
/** The list item is in the draft or checked out state. */
|
|
38
|
+
ModerationStatus[ModerationStatus["Draft"] = 3] = "Draft";
|
|
39
|
+
/** The list item is scheduled for automatic approval at a future date. */
|
|
40
|
+
ModerationStatus[ModerationStatus["Scheduled"] = 4] = "Scheduled";
|
|
41
|
+
})(ModerationStatus || (exports.ModerationStatus = ModerationStatus = {}));
|
|
42
|
+
/**
|
|
43
|
+
* Specifies the publishing level for a file (https://learn.microsoft.com/en-us/previous-versions/office/sharepoint-visio/jj246272(v=office.15))
|
|
44
|
+
*/
|
|
45
|
+
var FileLevel;
|
|
46
|
+
(function (FileLevel) {
|
|
47
|
+
/** Enumeration whose values specify whether the file is a published version. */
|
|
48
|
+
FileLevel[FileLevel["Published"] = 1] = "Published";
|
|
49
|
+
/** Enumeration whose values specify whether the file is a draft.. */
|
|
50
|
+
FileLevel[FileLevel["Draft"] = 2] = "Draft";
|
|
51
|
+
/** Enumeration whose values specify whether the file is checked out to the current user. */
|
|
52
|
+
FileLevel[FileLevel["Checkout"] = 255] = "Checkout";
|
|
53
|
+
})(FileLevel || (exports.FileLevel = FileLevel = {}));
|
|
26
54
|
//# sourceMappingURL=sharepoint.utils.types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharepoint.utils.types.js","sourceRoot":"","sources":["../../src/types/sharepoint.utils.types.ts"],"names":[],"mappings":";;;AA0CA,qCAAqC;AACrC,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC7B,uEAAW,CAAA;IACX,qEAAU,CAAA;IACV,uEAAW,CAAA;AACf,CAAC,EAJW,qBAAqB,qCAArB,qBAAqB,QAIhC;AAuFD,qCAAqC;AACrC,IAAY,QAKX;AALD,WAAY,QAAQ;IAChB,uCAAQ,CAAA;IACR,yCAAS,CAAA;IACT,qCAAO,CAAA;IACP,yCAAS,CAAA;AACb,CAAC,EALW,QAAQ,wBAAR,QAAQ,QAKnB;AA0CD,qCAAqC;AACrC,IAAY,2BAA0F;AAAtG,WAAY,2BAA2B;IAAG,uGAAiB,CAAA;IAAE,2GAAmB,CAAA;IAAE,yGAAkB,CAAA;AAAC,CAAC,EAA1F,2BAA2B,2CAA3B,2BAA2B,QAA+D"}
|
|
1
|
+
{"version":3,"file":"sharepoint.utils.types.js","sourceRoot":"","sources":["../../src/types/sharepoint.utils.types.ts"],"names":[],"mappings":";;;AA0CA,qCAAqC;AACrC,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC7B,uEAAW,CAAA;IACX,qEAAU,CAAA;IACV,uEAAW,CAAA;AACf,CAAC,EAJW,qBAAqB,qCAArB,qBAAqB,QAIhC;AAuFD,qCAAqC;AACrC,IAAY,QAKX;AALD,WAAY,QAAQ;IAChB,uCAAQ,CAAA;IACR,yCAAS,CAAA;IACT,qCAAO,CAAA;IACP,yCAAS,CAAA;AACb,CAAC,EALW,QAAQ,wBAAR,QAAQ,QAKnB;AA0CD,qCAAqC;AACrC,IAAY,2BAA0F;AAAtG,WAAY,2BAA2B;IAAG,uGAAiB,CAAA;IAAE,2GAAmB,CAAA;IAAE,yGAAkB,CAAA;AAAC,CAAC,EAA1F,2BAA2B,2CAA3B,2BAA2B,QAA+D;AAuEtG;;EAEE;AACF,IAAY,gBAWX;AAXD,WAAY,gBAAgB;IACxB,iCAAiC;IACjC,+DAAQ,CAAA;IACR,8CAA8C;IAC9C,+DAAQ,CAAA;IACR,yCAAyC;IACzC,6DAAO,CAAA;IACP,0DAA0D;IAC1D,yDAAK,CAAA;IACL,0EAA0E;IAC1E,iEAAS,CAAA;AACb,CAAC,EAXW,gBAAgB,gCAAhB,gBAAgB,QAW3B;AAED;;EAEE;AACF,IAAY,SAOX;AAPD,WAAY,SAAS;IACjB,iFAAiF;IACjF,mDAAa,CAAA;IACb,sEAAsE;IACtE,2CAAS,CAAA;IACT,6FAA6F;IAC7F,mDAAc,CAAA;AAClB,CAAC,EAPW,SAAS,yBAAT,SAAS,QAOpB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IDictionary, IFileInfo, IFolderBasicInfo, IFolderInfo, IRequestBody, IRestResponseType } from "../_dependencies";
|
|
1
|
+
import { FileLevel, IDictionary, IFileInfo, IFolderBasicInfo, IFolderInfo, IRequestBody, IRestResponseType, ModerationStatus } from "../_dependencies";
|
|
2
2
|
export declare function EnsureFolderPath(siteUrl: string, folderServerRelativeUrl: string): Promise<boolean>;
|
|
3
3
|
export declare function EnsureFolder(siteUrl: string, parentFolderServerRelativeUrl: string, folderName: string): Promise<{
|
|
4
4
|
Exists: boolean;
|
|
@@ -24,7 +24,10 @@ options?: {
|
|
|
24
24
|
ServerRelativeUrl?: string;
|
|
25
25
|
[fieldInternalName: string]: any;
|
|
26
26
|
}>;
|
|
27
|
-
export declare function
|
|
27
|
+
export declare function PublishFile(siteUrl: string, fileUrl: string, comment?: string): Promise<boolean>;
|
|
28
|
+
export declare function UnpublishFile(siteUrl: string, fileUrl: string, comment?: string): Promise<boolean>;
|
|
29
|
+
export declare function ApproveFile(siteUrl: string, fileUrl: string, comment?: string): Promise<boolean>;
|
|
30
|
+
export declare function RejectFile(siteUrl: string, fileUrl: string, comment?: string): Promise<boolean>;
|
|
28
31
|
export declare function RecycleFile(siteUrl: string, fileServerRelativeUrl: string): Promise<boolean>;
|
|
29
32
|
export declare function DeleteFile(siteUrl: string, fileServerRelativeUrl: string): Promise<boolean>;
|
|
30
33
|
export declare function GetFileSync<T>(siteUrl: string, fileServerRelativeUrl: string, responseType?: IRestResponseType, options?: {
|
|
@@ -49,6 +52,8 @@ export declare function GetFolder(siteUrl: string, folderUrl: string, options?:
|
|
|
49
52
|
includeFiles?: boolean;
|
|
50
53
|
}): Promise<IFolderInfo>;
|
|
51
54
|
export declare function GetFileItemId(siteUrl: string, fileServerRelativeUrl: string): Promise<number>;
|
|
55
|
+
export declare function GetFileModerationStatus(siteUrl: string, fileServerRelativeUrl: string): Promise<ModerationStatus>;
|
|
56
|
+
export declare function GetFilePublishingStatus(siteUrl: string, fileServerRelativeUrl: string): Promise<FileLevel>;
|
|
52
57
|
export declare function GetFileItemInfo(siteUrl: string, fileServerRelativeUrl: string): Promise<{
|
|
53
58
|
listId: string;
|
|
54
59
|
itemId: number;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CopyFile = exports.MoveFile = exports.CreateAppPage = exports.GetFolderItemInfo = exports.GetFileItemInfo = exports.GetFileItemId = exports.GetFolder = exports.GetListFolders = exports.GetFileSize = exports.GetFile = exports.GetFileSync = exports.DeleteFile = exports.RecycleFile = exports.
|
|
3
|
+
exports.CopyFile = exports.MoveFile = exports.CreateAppPage = exports.GetFolderItemInfo = exports.GetFileItemInfo = exports.GetFilePublishingStatus = exports.GetFileModerationStatus = exports.GetFileItemId = exports.GetFolder = exports.GetListFolders = exports.GetFileSize = exports.GetFile = exports.GetFileSync = exports.DeleteFile = exports.RecycleFile = exports.RejectFile = exports.ApproveFile = exports.UnpublishFile = exports.PublishFile = exports.UploadFile = exports.UploadFileSync = exports.GetFolderFiles = exports.DeleteFolder = exports.EnsureFolder = exports.EnsureFolderPath = void 0;
|
|
4
4
|
const _dependencies_1 = require("../_dependencies");
|
|
5
5
|
const consolelogger_1 = require("../consolelogger");
|
|
6
6
|
const rest_1 = require("../rest");
|
|
@@ -111,11 +111,32 @@ options) {
|
|
|
111
111
|
.catch(() => { return { Exists: false }; });
|
|
112
112
|
}
|
|
113
113
|
exports.UploadFile = UploadFile;
|
|
114
|
-
async function
|
|
114
|
+
async function PublishFile(siteUrl, fileUrl, comment = "") {
|
|
115
|
+
let result = await _moderateFile(siteUrl, fileUrl, "publish");
|
|
116
|
+
return result;
|
|
117
|
+
}
|
|
118
|
+
exports.PublishFile = PublishFile;
|
|
119
|
+
async function UnpublishFile(siteUrl, fileUrl, comment = "") {
|
|
120
|
+
let result = await _moderateFile(siteUrl, fileUrl, "unpublish");
|
|
121
|
+
return result;
|
|
122
|
+
}
|
|
123
|
+
exports.UnpublishFile = UnpublishFile;
|
|
124
|
+
async function ApproveFile(siteUrl, fileUrl, comment = "") {
|
|
125
|
+
siteUrl = (0, common_1.GetSiteUrl)(siteUrl);
|
|
126
|
+
let result = await _moderateFile(siteUrl, fileUrl, "approve");
|
|
127
|
+
return result;
|
|
128
|
+
}
|
|
129
|
+
exports.ApproveFile = ApproveFile;
|
|
130
|
+
async function RejectFile(siteUrl, fileUrl, comment = "") {
|
|
131
|
+
let result = await _moderateFile(siteUrl, fileUrl, "deny");
|
|
132
|
+
return result;
|
|
133
|
+
}
|
|
134
|
+
exports.RejectFile = RejectFile;
|
|
135
|
+
async function _moderateFile(siteUrl, fileUrl, action, comment = "") {
|
|
115
136
|
siteUrl = (0, common_1.GetSiteUrl)(siteUrl);
|
|
116
|
-
let
|
|
137
|
+
let fileServerRelativeUrl = (0, _dependencies_1.makeServerRelativeUrl)(fileUrl, siteUrl);
|
|
117
138
|
try {
|
|
118
|
-
let publishUrl = `${(0, common_1.GetRestBaseUrl)(siteUrl)}/Web/getFileByServerRelativeUrl('${
|
|
139
|
+
let publishUrl = `${(0, common_1.GetRestBaseUrl)(siteUrl)}/Web/getFileByServerRelativeUrl('${fileServerRelativeUrl}')/${action}('${comment}')`;
|
|
119
140
|
let publishResult = await (0, rest_1.GetJson)(publishUrl, null, {
|
|
120
141
|
method: "POST",
|
|
121
142
|
jsonMetadata: _dependencies_1.jsonTypes.nometadata,
|
|
@@ -127,7 +148,6 @@ async function PulishFile(siteUrl, folderUrl, comment = "") {
|
|
|
127
148
|
}
|
|
128
149
|
return null;
|
|
129
150
|
}
|
|
130
|
-
exports.PulishFile = PulishFile;
|
|
131
151
|
function RecycleFile(siteUrl, fileServerRelativeUrl) {
|
|
132
152
|
siteUrl = (0, common_1.GetSiteUrl)(siteUrl);
|
|
133
153
|
let fileRestUrl = GetFileRestUrl(siteUrl, fileServerRelativeUrl) + "/recycle()";
|
|
@@ -309,11 +329,27 @@ async function GetFileItemId(siteUrl, fileServerRelativeUrl) {
|
|
|
309
329
|
return result.value;
|
|
310
330
|
}
|
|
311
331
|
exports.GetFileItemId = GetFileItemId;
|
|
332
|
+
async function GetFileModerationStatus(siteUrl, fileServerRelativeUrl) {
|
|
333
|
+
siteUrl = (0, common_1.GetSiteUrl)(siteUrl);
|
|
334
|
+
const restUrl = `${(0, common_1.GetRestBaseUrl)(siteUrl)}/web/getFileByServerRelativeUrl('${(0, _dependencies_1.encodeURIComponentEX)(fileServerRelativeUrl)}')/ListItemAllFields/OData__ModerationStatus`;
|
|
335
|
+
const result = await (0, rest_1.GetJson)(restUrl, null, { jsonMetadata: _dependencies_1.jsonTypes.nometadata });
|
|
336
|
+
return result.value;
|
|
337
|
+
}
|
|
338
|
+
exports.GetFileModerationStatus = GetFileModerationStatus;
|
|
339
|
+
async function GetFilePublishingStatus(siteUrl, fileServerRelativeUrl) {
|
|
340
|
+
siteUrl = (0, common_1.GetSiteUrl)(siteUrl);
|
|
341
|
+
const restUrl = `${(0, common_1.GetRestBaseUrl)(siteUrl)}/web/getFileByServerRelativeUrl('${(0, _dependencies_1.encodeURIComponentEX)(fileServerRelativeUrl)}')/level`;
|
|
342
|
+
const result = await (0, rest_1.GetJson)(restUrl, null, { jsonMetadata: _dependencies_1.jsonTypes.nometadata });
|
|
343
|
+
return result.value;
|
|
344
|
+
}
|
|
345
|
+
exports.GetFilePublishingStatus = GetFilePublishingStatus;
|
|
312
346
|
async function GetFileItemInfo(siteUrl, fileServerRelativeUrl) {
|
|
313
347
|
try {
|
|
314
348
|
siteUrl = (0, common_1.GetSiteUrl)(siteUrl);
|
|
315
349
|
const restUrl = `${(0, common_1.GetRestBaseUrl)(siteUrl)}/web/getFileByServerRelativeUrl('${(0, _dependencies_1.encodeURIComponentEX)(fileServerRelativeUrl)}')/ListItemAllFields`;
|
|
316
|
-
const result = await (0, rest_1.GetJson)(restUrl, null, {
|
|
350
|
+
const result = await (0, rest_1.GetJson)(restUrl, null, {
|
|
351
|
+
jsonMetadata: _dependencies_1.jsonTypes.verbose
|
|
352
|
+
});
|
|
317
353
|
const itemId = result.d.Id;
|
|
318
354
|
const listId = result.d.__metadata.uri.split("'")[1];
|
|
319
355
|
return { listId, itemId };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.folder.js","sourceRoot":"","sources":["../../../src/utils/sharepoint.rest/file.folder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"file.folder.js","sourceRoot":"","sources":["../../../src/utils/sharepoint.rest/file.folder.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import assert from 'assert/strict';
|
|
2
2
|
import test from 'node:test';
|
|
3
|
-
import { promiseOnce } from './promises';
|
|
3
|
+
import { promiseLock, promiseOnce, sleepAsync } from './promises';
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
test('promiseOnce', async t => {
|
|
7
|
-
|
|
7
|
+
let promiseOnceTester = promiseOnce("promiseOnceTester", async() => {
|
|
8
8
|
return Date.now();
|
|
9
9
|
});
|
|
10
10
|
|
|
@@ -15,4 +15,24 @@ test('promiseOnce', async t => {
|
|
|
15
15
|
await t.test("Second call", t => assert.strictEqual(value === value2, true));
|
|
16
16
|
let value3 = await promiseOnceTester;
|
|
17
17
|
await t.test("Third call", t => assert.strictEqual(value === value3, true));
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
test('promisLock', async t => {
|
|
21
|
+
|
|
22
|
+
let promiseLockTester = async() => {
|
|
23
|
+
return new Date().getTime();
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
let p1 = promiseLock("promiseLockTest", promiseLockTester);
|
|
27
|
+
let p2 = promiseLock("promiseLockTest", promiseLockTester);
|
|
28
|
+
|
|
29
|
+
let v1 = await p1;
|
|
30
|
+
let v2 = await p2;
|
|
31
|
+
|
|
32
|
+
await sleepAsync(1);
|
|
33
|
+
|
|
34
|
+
let v3 = await promiseLock("promiseLockTest", promiseLockTester);
|
|
35
|
+
|
|
36
|
+
await t.test("During lock", t => assert.strictEqual(v1 === v2, true));
|
|
37
|
+
await t.test("After lock", t => assert.strictEqual(v1 === v3, false));
|
|
18
38
|
});
|
package/src/helpers/promises.ts
CHANGED
|
@@ -1,12 +1,30 @@
|
|
|
1
1
|
import { IDictionary } from "./_dependencies";
|
|
2
2
|
import { getGlobal, hasOwnProperty } from "./objects";
|
|
3
|
-
import { isFunction, isNullOrUndefined } from "./typecheckers";
|
|
3
|
+
import { isFunction, isNullOrUndefined, isNumber } from "./typecheckers";
|
|
4
4
|
|
|
5
5
|
let _global = getGlobal<{ promises: IDictionary<Promise<any>> }>("helpers_promises",
|
|
6
6
|
{
|
|
7
7
|
promises: {}
|
|
8
8
|
});
|
|
9
9
|
|
|
10
|
+
/**
|
|
11
|
+
* Lock all concurrent calls to a resource to one promise for a set duration of time.
|
|
12
|
+
* @param {string} key - Unique key to identify the promise.
|
|
13
|
+
* @param {() => Promise<T>} promiseFunc - Function that will return the promise to be run only once.
|
|
14
|
+
* @param {number} duration - Duration to hold on to the promise result. (default=1)
|
|
15
|
+
* @returns {Promise<T>} Returns the single promise that will be fullfilled for all promises with the same key.
|
|
16
|
+
* @example
|
|
17
|
+
* // returns Promise<string>
|
|
18
|
+
* var initTests = await promiseLock<string>("initTests", async () => { ... }, 2);
|
|
19
|
+
*/
|
|
20
|
+
export async function promiseLock<T>(key: string, promiseFunc: () => Promise<T>, duration = 1): Promise<T> {
|
|
21
|
+
return promiseOnce(key, promiseFunc).then((result) => {
|
|
22
|
+
(globalThis || window).setTimeout(() => {
|
|
23
|
+
_deletePromiseByKey(key);
|
|
24
|
+
}, isNumber(duration) && duration >= 1 ? duration : 1);
|
|
25
|
+
return result;
|
|
26
|
+
});
|
|
27
|
+
}
|
|
10
28
|
/**
|
|
11
29
|
* Ensures that a promise runs only once
|
|
12
30
|
* @param {string} key - Unique key to identify the promise.
|
|
@@ -16,7 +34,7 @@ let _global = getGlobal<{ promises: IDictionary<Promise<any>> }>("helpers_promis
|
|
|
16
34
|
* @returns {Promise<T>} Returns the single promise that will be fullfilled for all promises with the same key.
|
|
17
35
|
* @example
|
|
18
36
|
* // returns Promise<string>
|
|
19
|
-
*
|
|
37
|
+
* var initTests = await promiseOnce<string>("initTests", async () => { ... });
|
|
20
38
|
*/
|
|
21
39
|
export async function promiseOnce<T>(key: string, promiseFunc: () => Promise<T>, isValidResult?: (result: T) => Promise<boolean>): Promise<T> {
|
|
22
40
|
let promises = _global.promises;
|
|
@@ -25,8 +43,9 @@ export async function promiseOnce<T>(key: string, promiseFunc: () => Promise<T>,
|
|
|
25
43
|
//we have en existing pending promise...
|
|
26
44
|
let queuedResult: T = null;
|
|
27
45
|
try { queuedResult = await promises[key]; } catch (e) { }
|
|
28
|
-
if ((await isValidResult(queuedResult)) !== true)
|
|
29
|
-
|
|
46
|
+
if ((await isValidResult(queuedResult)) !== true) {
|
|
47
|
+
_deletePromiseByKey(key);
|
|
48
|
+
}
|
|
30
49
|
}
|
|
31
50
|
|
|
32
51
|
if (!hasOwnProperty(promises, key)) {
|
|
@@ -100,7 +119,7 @@ export function promiseNParallel<T>(asyncFuncs: (() => Promise<T>)[], maxParalle
|
|
|
100
119
|
*/
|
|
101
120
|
export function sleepAsync(seconds?: number): Promise<void> {
|
|
102
121
|
return new Promise(resolve => {
|
|
103
|
-
window.setTimeout(() => resolve(), seconds > 0 ? seconds * 1000 : 3000);
|
|
122
|
+
(globalThis || window).setTimeout(() => resolve(), seconds > 0 ? seconds * 1000 : 3000);
|
|
104
123
|
});
|
|
105
124
|
}
|
|
106
125
|
|
|
@@ -127,4 +146,16 @@ export async function retryAsync<T>(fn: (...args) => Promise<T>, numberOfRetries
|
|
|
127
146
|
throw error;
|
|
128
147
|
}
|
|
129
148
|
throw new Error(`Failed retrying ${numberOfRetries} times`);
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
function _deletePromiseByKey(key: string) {
|
|
152
|
+
let promises = _global.promises;
|
|
153
|
+
if (hasOwnProperty(promises, key)) {
|
|
154
|
+
try {
|
|
155
|
+
delete promises[key];
|
|
156
|
+
return true;
|
|
157
|
+
} catch {
|
|
158
|
+
return false;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
130
161
|
}
|
|
@@ -250,4 +250,32 @@ export interface IWebRegionalSettings {
|
|
|
250
250
|
WorkDayEndHour: number;
|
|
251
251
|
WorkDays: number;
|
|
252
252
|
WorkDayStartHour: number;
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
/**
|
|
256
|
+
* Specifies the moderation status for a file/item (https://learn.microsoft.com/en-us/openspecs/sharepoint_protocols/ms-wssfo3/4342322d-6fab-4dc5-8ccd-b808a5e25acf)
|
|
257
|
+
*/
|
|
258
|
+
export enum ModerationStatus {
|
|
259
|
+
/** The list item is approved. */
|
|
260
|
+
Approved,
|
|
261
|
+
/** The list item has been denied approval. */
|
|
262
|
+
Rejected,
|
|
263
|
+
/** The list item is pending approval. */
|
|
264
|
+
Pending,
|
|
265
|
+
/** The list item is in the draft or checked out state. */
|
|
266
|
+
Draft,
|
|
267
|
+
/** The list item is scheduled for automatic approval at a future date. */
|
|
268
|
+
Scheduled
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
/**
|
|
272
|
+
* Specifies the publishing level for a file (https://learn.microsoft.com/en-us/previous-versions/office/sharepoint-visio/jj246272(v=office.15))
|
|
273
|
+
*/
|
|
274
|
+
export enum FileLevel {
|
|
275
|
+
/** Enumeration whose values specify whether the file is a published version. */
|
|
276
|
+
Published = 1,
|
|
277
|
+
/** Enumeration whose values specify whether the file is a draft.. */
|
|
278
|
+
Draft = 2,
|
|
279
|
+
/** Enumeration whose values specify whether the file is checked out to the current user. */
|
|
280
|
+
Checkout = 255
|
|
253
281
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IDictionary, IFileInfo, IFolderBasicInfo, IFolderInfo, IRequestBody, IRestOptions, IRestResponseType, encodeURIComponentEX, isNotEmptyArray, isNullOrEmptyString, isNullOrUndefined, isNumber, isNumeric, jsonStringify, jsonTypes, makeServerRelativeUrl, newGuid, normalizeUrl } from "../_dependencies";
|
|
1
|
+
import { FileLevel, IDictionary, IFileInfo, IFolderBasicInfo, IFolderInfo, IRequestBody, IRestOptions, IRestResponseType, ModerationStatus, encodeURIComponentEX, isNotEmptyArray, isNullOrEmptyString, isNullOrUndefined, isNumber, isNumeric, jsonStringify, jsonTypes, makeServerRelativeUrl, newGuid, normalizeUrl } from "../_dependencies";
|
|
2
2
|
import { ConsoleLogger } from "../consolelogger";
|
|
3
3
|
import { GetJson, GetJsonSync, longLocalCache, mediumLocalCache, noLocalCache, shortLocalCache } from "../rest";
|
|
4
4
|
import { GetRestBaseUrl, GetSiteUrl } from "./common";
|
|
@@ -145,11 +145,32 @@ export async function UploadFile(siteUrl: string, folderServerRelativeUrl: strin
|
|
|
145
145
|
}>(() => { return { Exists: false }; });
|
|
146
146
|
}
|
|
147
147
|
|
|
148
|
-
export async function
|
|
148
|
+
export async function PublishFile(siteUrl: string, fileUrl: string, comment: string = "") {
|
|
149
|
+
let result = await _moderateFile(siteUrl, fileUrl, "publish");
|
|
150
|
+
return result;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
export async function UnpublishFile(siteUrl: string, fileUrl: string, comment: string = "") {
|
|
154
|
+
let result = await _moderateFile(siteUrl, fileUrl, "unpublish");
|
|
155
|
+
return result;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
export async function ApproveFile(siteUrl: string, fileUrl: string, comment: string = "") {
|
|
149
159
|
siteUrl = GetSiteUrl(siteUrl);
|
|
150
|
-
let
|
|
160
|
+
let result = await _moderateFile(siteUrl, fileUrl, "approve");
|
|
161
|
+
return result;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
export async function RejectFile(siteUrl: string, fileUrl: string, comment: string = "") {
|
|
165
|
+
let result = await _moderateFile(siteUrl, fileUrl, "deny");
|
|
166
|
+
return result;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
async function _moderateFile(siteUrl: string, fileUrl: string, action: "publish" | "unpublish" | "approve" | "deny", comment: string = "") {
|
|
170
|
+
siteUrl = GetSiteUrl(siteUrl);
|
|
171
|
+
let fileServerRelativeUrl = makeServerRelativeUrl(fileUrl, siteUrl);
|
|
151
172
|
try {
|
|
152
|
-
let publishUrl = `${GetRestBaseUrl(siteUrl)}/Web/getFileByServerRelativeUrl('${
|
|
173
|
+
let publishUrl = `${GetRestBaseUrl(siteUrl)}/Web/getFileByServerRelativeUrl('${fileServerRelativeUrl}')/${action}('${comment}')`;
|
|
153
174
|
let publishResult = await GetJson<{ "odata.null": boolean }>(publishUrl, null, {
|
|
154
175
|
method: "POST",
|
|
155
176
|
jsonMetadata: jsonTypes.nometadata,
|
|
@@ -229,6 +250,7 @@ export function GetFileSync<T>(siteUrl: string, fileServerRelativeUrl: string, r
|
|
|
229
250
|
Exists: false
|
|
230
251
|
};
|
|
231
252
|
}
|
|
253
|
+
|
|
232
254
|
export function GetFile<T>(siteUrl: string, fileServerRelativeUrl: string, allowCache?: boolean, responseType?: IRestResponseType): Promise<{ Exists: boolean; Content?: T; }> {
|
|
233
255
|
siteUrl = GetSiteUrl(siteUrl);
|
|
234
256
|
|
|
@@ -375,6 +397,21 @@ export async function GetFileItemId(siteUrl: string, fileServerRelativeUrl: stri
|
|
|
375
397
|
const result = await GetJson<{ value: number; }>(restUrl, null, { jsonMetadata: jsonTypes.nometadata });
|
|
376
398
|
return result.value;
|
|
377
399
|
}
|
|
400
|
+
|
|
401
|
+
export async function GetFileModerationStatus(siteUrl: string, fileServerRelativeUrl: string) {
|
|
402
|
+
siteUrl = GetSiteUrl(siteUrl);
|
|
403
|
+
const restUrl = `${GetRestBaseUrl(siteUrl)}/web/getFileByServerRelativeUrl('${encodeURIComponentEX(fileServerRelativeUrl)}')/ListItemAllFields/OData__ModerationStatus`;
|
|
404
|
+
const result = await GetJson<{ value: ModerationStatus; }>(restUrl, null, { jsonMetadata: jsonTypes.nometadata });
|
|
405
|
+
return result.value;
|
|
406
|
+
}
|
|
407
|
+
|
|
408
|
+
export async function GetFilePublishingStatus(siteUrl: string, fileServerRelativeUrl: string) {
|
|
409
|
+
siteUrl = GetSiteUrl(siteUrl);
|
|
410
|
+
const restUrl = `${GetRestBaseUrl(siteUrl)}/web/getFileByServerRelativeUrl('${encodeURIComponentEX(fileServerRelativeUrl)}')/level`;
|
|
411
|
+
const result = await GetJson<{ value: FileLevel; }>(restUrl, null, { jsonMetadata: jsonTypes.nometadata });
|
|
412
|
+
return result.value;
|
|
413
|
+
}
|
|
414
|
+
|
|
378
415
|
export async function GetFileItemInfo(siteUrl: string, fileServerRelativeUrl: string): Promise<{ listId: string; itemId: number; }> {
|
|
379
416
|
try {
|
|
380
417
|
siteUrl = GetSiteUrl(siteUrl);
|
|
@@ -387,15 +424,20 @@ export async function GetFileItemInfo(siteUrl: string, fileServerRelativeUrl: st
|
|
|
387
424
|
},
|
|
388
425
|
Id: number;
|
|
389
426
|
}
|
|
390
|
-
}>(restUrl, null, {
|
|
427
|
+
}>(restUrl, null, {
|
|
428
|
+
jsonMetadata: jsonTypes.verbose
|
|
429
|
+
});
|
|
391
430
|
|
|
392
431
|
const itemId = result.d.Id;
|
|
393
432
|
const listId = result.d.__metadata.uri.split("'")[1];
|
|
394
433
|
|
|
395
434
|
return { listId, itemId };
|
|
396
435
|
}
|
|
397
|
-
catch (e) {
|
|
436
|
+
catch (e) {
|
|
437
|
+
return null;
|
|
438
|
+
}
|
|
398
439
|
}
|
|
440
|
+
|
|
399
441
|
export async function GetFolderItemInfo(siteUrl: string, folderServerRelativeUrl: string): Promise<{ listId: string; itemId: number; }> {
|
|
400
442
|
try {
|
|
401
443
|
siteUrl = GetSiteUrl(siteUrl);
|