@kwiz/common 1.0.250 → 1.0.252
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/lib/cjs/helpers/crypto.js +5 -0
- package/lib/cjs/helpers/crypto.js.map +1 -1
- package/lib/cjs/helpers/exports-index.js +1 -0
- package/lib/cjs/helpers/exports-index.js.map +1 -1
- package/lib/cjs/helpers/file.js +2 -0
- package/lib/cjs/helpers/file.js.map +1 -1
- package/lib/cjs/helpers/file.validation.js +96 -0
- package/lib/cjs/helpers/file.validation.js.map +1 -0
- package/lib/esm/helpers/crypto.js +4 -0
- package/lib/esm/helpers/crypto.js.map +1 -1
- package/lib/esm/helpers/exports-index.js +1 -0
- package/lib/esm/helpers/exports-index.js.map +1 -1
- package/lib/esm/helpers/file.js +2 -0
- package/lib/esm/helpers/file.js.map +1 -1
- package/lib/esm/helpers/file.validation.js +92 -0
- package/lib/esm/helpers/file.validation.js.map +1 -0
- package/lib/types/helpers/crypto.d.ts +4 -0
- package/lib/types/helpers/exports-index.d.ts +1 -0
- package/lib/types/helpers/file.d.ts +2 -0
- package/lib/types/helpers/file.validation.d.ts +12 -0
- package/package.json +1 -1
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.sign = sign;
|
|
7
7
|
exports.unsign = unsign;
|
|
8
|
+
exports.isSignatureExpired = isSignatureExpired;
|
|
8
9
|
const crypto_js_1 = __importDefault(require("crypto-js"));
|
|
9
10
|
const common_logger_1 = require("../common-logger");
|
|
10
11
|
const date_1 = require("./date");
|
|
@@ -91,4 +92,8 @@ function unsign(jwtSecret, token) {
|
|
|
91
92
|
return null;
|
|
92
93
|
}
|
|
93
94
|
}
|
|
95
|
+
function isSignatureExpired(unsigned) {
|
|
96
|
+
const now = Math.floor(Date.now() / 1000);
|
|
97
|
+
return unsigned.iat >= now && now > unsigned.exp;
|
|
98
|
+
}
|
|
94
99
|
//# sourceMappingURL=crypto.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../../src/helpers/crypto.ts"],"names":[],"mappings":";;;;;AAgCA,oBAqBC;AAED,wBA6CC;
|
|
1
|
+
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../../src/helpers/crypto.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,6 +34,7 @@ __exportStar(require("./diagrams"), exports);
|
|
|
34
34
|
__exportStar(require("./emails"), exports);
|
|
35
35
|
__exportStar(require("./eval"), exports);
|
|
36
36
|
__exportStar(require("./file"), exports);
|
|
37
|
+
__exportStar(require("./file.validation"), exports);
|
|
37
38
|
__exportStar(require("./flatted"), exports);
|
|
38
39
|
__exportStar(require("./functions"), exports);
|
|
39
40
|
__exportStar(require("./http"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exports-index.js","sourceRoot":"","sources":["../../../src/helpers/exports-index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AACtC,qDAAmC;AACnC,4DAA0C;AAC1C,yCAAuB;AACvB,2CAAyB;AACzB,4CAA0B;AAC1B,gDAA8B;AAC9B,qDAAmC;AACnC,gDAA8B;AAC9B,0CAAwB;AACxB,4CAA0B;AAC1B,8CAA4B;AAC5B,4CAA0B;AAC1B,2CAAyB;AACzB,yCAAuB;AACvB,0CAAwB;AACxB,6CAA2B;AAC3B,2CAAyB;AACzB,yCAAuB;AACvB,yCAAuB;AACvB,4CAA0B;AAC1B,8CAA4B;AAC5B,yCAAuB;AACvB,2CAAyB;AACzB,yCAAuB;AACvB,6CAA2B;AAC3B,wCAAsB;AACtB,4CAA0B;AAC1B,6CAA2B;AAC3B,iDAA+B;AAC/B,6CAA2B;AAC3B,2CAAyB;AACzB,+CAA6B;AAC7B,4CAA0B;AAC1B,iDAA+B;AAC/B,wCAAsB;AACtB,8CAA4B"}
|
|
1
|
+
{"version":3,"file":"exports-index.js","sourceRoot":"","sources":["../../../src/helpers/exports-index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AACtC,qDAAmC;AACnC,4DAA0C;AAC1C,yCAAuB;AACvB,2CAAyB;AACzB,4CAA0B;AAC1B,gDAA8B;AAC9B,qDAAmC;AACnC,gDAA8B;AAC9B,0CAAwB;AACxB,4CAA0B;AAC1B,8CAA4B;AAC5B,4CAA0B;AAC1B,2CAAyB;AACzB,yCAAuB;AACvB,0CAAwB;AACxB,6CAA2B;AAC3B,2CAAyB;AACzB,yCAAuB;AACvB,yCAAuB;AACvB,oDAAkC;AAClC,4CAA0B;AAC1B,8CAA4B;AAC5B,yCAAuB;AACvB,2CAAyB;AACzB,yCAAuB;AACvB,6CAA2B;AAC3B,wCAAsB;AACtB,4CAA0B;AAC1B,6CAA2B;AAC3B,iDAA+B;AAC/B,6CAA2B;AAC3B,2CAAyB;AACzB,+CAA6B;AAC7B,4CAA0B;AAC1B,iDAA+B;AAC/B,wCAAsB;AACtB,8CAA4B"}
|
package/lib/cjs/helpers/file.js
CHANGED
|
@@ -22,6 +22,7 @@ function _getRegexCollection() {
|
|
|
22
22
|
IsDesktopIni: /^desktop\.ini$/gi
|
|
23
23
|
};
|
|
24
24
|
}
|
|
25
|
+
/** @deprecated use validateFilenameExplicit */
|
|
25
26
|
function validateFilename(fileNameWithExtension) {
|
|
26
27
|
let filenameWithOutExtension = fileNameWithExtension;
|
|
27
28
|
let split = filenameWithOutExtension.split(".");
|
|
@@ -36,6 +37,7 @@ function validateFilename(fileNameWithExtension) {
|
|
|
36
37
|
valid: !hasIllegalCharacter && !hasIllegalName
|
|
37
38
|
};
|
|
38
39
|
}
|
|
40
|
+
/** @deprecated use validateFoldernameExplicit */
|
|
39
41
|
function validateFoldername(folderName) {
|
|
40
42
|
let regexCollection = _getRegexCollection();
|
|
41
43
|
let hasIllegalCharacter = regexCollection.IllegalCharsRegex.test(folderName);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../../src/helpers/file.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../../src/helpers/file.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateFoldernameExplicit = validateFoldernameExplicit;
|
|
4
|
+
exports.validateFilenameExplicit = validateFilenameExplicit;
|
|
5
|
+
const typecheckers_1 = require("./typecheckers");
|
|
6
|
+
function _getIllegalCharsRegex(platform) {
|
|
7
|
+
switch (platform) {
|
|
8
|
+
case "m365":
|
|
9
|
+
return /["#%&*:<>?/\\{|}]/;
|
|
10
|
+
case "sf":
|
|
11
|
+
case "ns":
|
|
12
|
+
case "local":
|
|
13
|
+
case "all":
|
|
14
|
+
default:
|
|
15
|
+
return /[<>:"/\\|?*]/;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
function _validateNameExplicit(name, label, platform) {
|
|
19
|
+
if ((0, typecheckers_1.isNullOrEmptyString)(name === null || name === void 0 ? void 0 : name.trim()))
|
|
20
|
+
return { valid: false, error_code: "fname_empty", error: `${label} name cannot be empty` };
|
|
21
|
+
if (name !== name.trim())
|
|
22
|
+
return { valid: false, error_code: "fname_trim", error: `${label} name cannot start or end with spaces` };
|
|
23
|
+
if (name === "." || name === "..")
|
|
24
|
+
return { valid: false, error_code: "fname_dots", error: `${label} name cannot be . or ..` };
|
|
25
|
+
if (/[. ]$/.test(name))
|
|
26
|
+
return { valid: false, error_code: "fname_ending", error: `${label} name cannot end with a period or space` };
|
|
27
|
+
if (/[\u0000-\u001f]/.test(name))
|
|
28
|
+
return { valid: false, error_code: "fname_invalid_control", error: `${label} name contains invalid control characters` };
|
|
29
|
+
if (_getIllegalCharsRegex(platform).test(name))
|
|
30
|
+
return { valid: false, error_code: "fname_invalid", error: `${label} name contains invalid characters` };
|
|
31
|
+
return { valid: true };
|
|
32
|
+
}
|
|
33
|
+
function _validateReservedNames(name, label, platform) {
|
|
34
|
+
const nameToCheck = label === "File" ? name.split(".").slice(0, -1).join(".") || name : name;
|
|
35
|
+
if (platform === "local" || platform === "m365") {
|
|
36
|
+
if (/^(CON|PRN|AUX|NUL|COM[0-9]|LPT[0-9])$/i.test(nameToCheck)) {
|
|
37
|
+
return { valid: false, error_code: "fname_reserved", error: `${label} name uses a reserved name` };
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
if (platform === "m365") {
|
|
41
|
+
if (/^\.lock$/i.test(nameToCheck) || /^desktop\.ini$/i.test(name)) {
|
|
42
|
+
return { valid: false, error_code: "fname_reserved", error: `${label} name uses a reserved name` };
|
|
43
|
+
}
|
|
44
|
+
if (/_vti_/i.test(name)) {
|
|
45
|
+
return { valid: false, error_code: "fname_vti", error: `${label} name cannot contain _vti_` };
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
return { valid: true };
|
|
49
|
+
}
|
|
50
|
+
function _validateFoldernameExplicitByPlatform(folderName, platform) {
|
|
51
|
+
const baseValidation = _validateNameExplicit(folderName, "Folder", platform);
|
|
52
|
+
if (!baseValidation.valid)
|
|
53
|
+
return baseValidation;
|
|
54
|
+
const reservedValidation = _validateReservedNames(folderName, "Folder", platform);
|
|
55
|
+
if (!reservedValidation.valid)
|
|
56
|
+
return reservedValidation;
|
|
57
|
+
if (platform === "m365" && /^~/.test(folderName))
|
|
58
|
+
return { valid: false, error_code: "fldname_tilde", error: "Folder name cannot start with ~" };
|
|
59
|
+
return { valid: true };
|
|
60
|
+
}
|
|
61
|
+
function _validateFilenameExplicitByPlatform(fileName, platform) {
|
|
62
|
+
const baseValidation = _validateNameExplicit(fileName, "File", platform);
|
|
63
|
+
if (!baseValidation.valid)
|
|
64
|
+
return baseValidation;
|
|
65
|
+
const reservedValidation = _validateReservedNames(fileName, "File", platform);
|
|
66
|
+
if (!reservedValidation.valid)
|
|
67
|
+
return reservedValidation;
|
|
68
|
+
if (platform === "m365" && /^~\$/.test(fileName))
|
|
69
|
+
return { valid: false, error_code: "flname_tilde", error: "File name cannot start with ~$" };
|
|
70
|
+
return { valid: true };
|
|
71
|
+
}
|
|
72
|
+
function validateFoldernameExplicit(folderName, platform = "all") {
|
|
73
|
+
if (platform === "all") {
|
|
74
|
+
const platforms = ["local", "m365", "sf", "ns"];
|
|
75
|
+
for (const currentPlatform of platforms) {
|
|
76
|
+
const result = _validateFoldernameExplicitByPlatform(folderName, currentPlatform);
|
|
77
|
+
if (!result.valid)
|
|
78
|
+
return result;
|
|
79
|
+
}
|
|
80
|
+
return { valid: true };
|
|
81
|
+
}
|
|
82
|
+
return _validateFoldernameExplicitByPlatform(folderName, platform);
|
|
83
|
+
}
|
|
84
|
+
function validateFilenameExplicit(fileName, platform = "all") {
|
|
85
|
+
if (platform === "all") {
|
|
86
|
+
const platforms = ["local", "m365", "sf", "ns"];
|
|
87
|
+
for (const currentPlatform of platforms) {
|
|
88
|
+
const result = _validateFilenameExplicitByPlatform(fileName, currentPlatform);
|
|
89
|
+
if (!result.valid)
|
|
90
|
+
return result;
|
|
91
|
+
}
|
|
92
|
+
return { valid: true };
|
|
93
|
+
}
|
|
94
|
+
return _validateFilenameExplicitByPlatform(fileName, platform);
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=file.validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.validation.js","sourceRoot":"","sources":["../../../src/helpers/file.validation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../../src/helpers/crypto.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../../src/helpers/crypto.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exports-index.js","sourceRoot":"","sources":["../../../src/helpers/exports-index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,OAAO,CAAC;AACtB,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"exports-index.js","sourceRoot":"","sources":["../../../src/helpers/exports-index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,OAAO,CAAC;AACtB,cAAc,aAAa,CAAC"}
|
package/lib/esm/helpers/file.js
CHANGED
|
@@ -15,6 +15,7 @@ function _getRegexCollection() {
|
|
|
15
15
|
IsDesktopIni: /^desktop\.ini$/gi
|
|
16
16
|
};
|
|
17
17
|
}
|
|
18
|
+
/** @deprecated use validateFilenameExplicit */
|
|
18
19
|
export function validateFilename(fileNameWithExtension) {
|
|
19
20
|
let filenameWithOutExtension = fileNameWithExtension;
|
|
20
21
|
let split = filenameWithOutExtension.split(".");
|
|
@@ -29,6 +30,7 @@ export function validateFilename(fileNameWithExtension) {
|
|
|
29
30
|
valid: !hasIllegalCharacter && !hasIllegalName
|
|
30
31
|
};
|
|
31
32
|
}
|
|
33
|
+
/** @deprecated use validateFoldernameExplicit */
|
|
32
34
|
export function validateFoldername(folderName) {
|
|
33
35
|
let regexCollection = _getRegexCollection();
|
|
34
36
|
let hasIllegalCharacter = regexCollection.IllegalCharsRegex.test(folderName);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../../src/helpers/file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,
|
|
1
|
+
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../../src/helpers/file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAuB,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExE,yIAAyI;AACzI,+GAA+G;AAC/G,2FAA2F;AAE3F,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAClF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC7E,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACjF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAEpF,SAAS,mBAAmB;IACxB,OAAO;QACH,iBAAiB,EAAE,IAAI,MAAM,CAAC,GAAG,GAAG,YAAY,CAAC,YAAY,CAAC,GAAG,GAAG,EAAE,IAAI,CAAC;QAC3E,sBAAsB,EAAE,IAAI,MAAM,CAAC,GAAG,GAAG,YAAY,CAAC,gBAAgB,CAAC,GAAG,GAAG,EAAE,IAAI,CAAC;QACpF,iBAAiB,EAAE,0DAA0D;QAC7E,YAAY,EAAE,kBAAkB;KACnC,CAAC;AACN,CAAC;AAED,+CAA+C;AAC/C,MAAM,UAAU,gBAAgB,CAAC,qBAA6B;IAC1D,IAAI,wBAAwB,GAAG,qBAAqB,CAAC;IACrD,IAAI,KAAK,GAAG,wBAAwB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAChD,KAAK,CAAC,GAAG,EAAE,CAAC;IACZ,wBAAwB,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE3C,IAAI,eAAe,GAAG,mBAAmB,EAAE,CAAC;IAE5C,IAAI,mBAAmB,GAAG,eAAe,CAAC,iBAAiB,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IAC3F,IAAI,cAAc,GAAG,eAAe,CAAC,iBAAiB,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAElJ,OAAO;QACH,mBAAmB;QACnB,cAAc;QACd,KAAK,EAAE,CAAC,mBAAmB,IAAI,CAAC,cAAc;KACjD,CAAC;AACN,CAAC;AAED,iDAAiD;AACjD,MAAM,UAAU,kBAAkB,CAAC,UAAkB;IACjD,IAAI,eAAe,GAAG,mBAAmB,EAAE,CAAC;IAE5C,IAAI,mBAAmB,GAAG,eAAe,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC7E,IAAI,cAAc,GAAG,eAAe,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAEzH,OAAO;QACH,mBAAmB;QACnB,cAAc;QACd,KAAK,EAAE,CAAC,mBAAmB,IAAI,CAAC,cAAc;KACjD,CAAC;AACN,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,qBAA6B;IAChE,IAAI,eAAe,GAAG,mBAAmB,EAAE,CAAC;IAE5C,IAAI,mBAAmB,GAAG,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;IAClE,IAAI,CAAC,mBAAmB,CAAC,KAAK,IAAI,eAAe,CAAC,sBAAsB,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACnG,qBAAqB;YACjB,qBAAqB,CAAC,OAAO,CAAC,eAAe,CAAC,iBAAiB,EAAE,EAAE,CAAC;iBAC/D,OAAO,CAAC,eAAe,CAAC,sBAAsB,EAAE,EAAE,CAAC;iBACnD,OAAO,CAAC,eAAe,CAAC,iBAAiB,EAAE,EAAE,CAAC;iBAC9C,OAAO,CAAC,eAAe,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,qBAAqB,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,QAAgB,EAAE,OAGlD;IACG,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC1C,IAAI,OAAO,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACnE,qCAAqC;IACrC,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC1F,CAAC"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { isNullOrEmptyString } from "./typecheckers";
|
|
2
|
+
function _getIllegalCharsRegex(platform) {
|
|
3
|
+
switch (platform) {
|
|
4
|
+
case "m365":
|
|
5
|
+
return /["#%&*:<>?/\\{|}]/;
|
|
6
|
+
case "sf":
|
|
7
|
+
case "ns":
|
|
8
|
+
case "local":
|
|
9
|
+
case "all":
|
|
10
|
+
default:
|
|
11
|
+
return /[<>:"/\\|?*]/;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
function _validateNameExplicit(name, label, platform) {
|
|
15
|
+
if (isNullOrEmptyString(name === null || name === void 0 ? void 0 : name.trim()))
|
|
16
|
+
return { valid: false, error_code: "fname_empty", error: `${label} name cannot be empty` };
|
|
17
|
+
if (name !== name.trim())
|
|
18
|
+
return { valid: false, error_code: "fname_trim", error: `${label} name cannot start or end with spaces` };
|
|
19
|
+
if (name === "." || name === "..")
|
|
20
|
+
return { valid: false, error_code: "fname_dots", error: `${label} name cannot be . or ..` };
|
|
21
|
+
if (/[. ]$/.test(name))
|
|
22
|
+
return { valid: false, error_code: "fname_ending", error: `${label} name cannot end with a period or space` };
|
|
23
|
+
if (/[\u0000-\u001f]/.test(name))
|
|
24
|
+
return { valid: false, error_code: "fname_invalid_control", error: `${label} name contains invalid control characters` };
|
|
25
|
+
if (_getIllegalCharsRegex(platform).test(name))
|
|
26
|
+
return { valid: false, error_code: "fname_invalid", error: `${label} name contains invalid characters` };
|
|
27
|
+
return { valid: true };
|
|
28
|
+
}
|
|
29
|
+
function _validateReservedNames(name, label, platform) {
|
|
30
|
+
const nameToCheck = label === "File" ? name.split(".").slice(0, -1).join(".") || name : name;
|
|
31
|
+
if (platform === "local" || platform === "m365") {
|
|
32
|
+
if (/^(CON|PRN|AUX|NUL|COM[0-9]|LPT[0-9])$/i.test(nameToCheck)) {
|
|
33
|
+
return { valid: false, error_code: "fname_reserved", error: `${label} name uses a reserved name` };
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
if (platform === "m365") {
|
|
37
|
+
if (/^\.lock$/i.test(nameToCheck) || /^desktop\.ini$/i.test(name)) {
|
|
38
|
+
return { valid: false, error_code: "fname_reserved", error: `${label} name uses a reserved name` };
|
|
39
|
+
}
|
|
40
|
+
if (/_vti_/i.test(name)) {
|
|
41
|
+
return { valid: false, error_code: "fname_vti", error: `${label} name cannot contain _vti_` };
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return { valid: true };
|
|
45
|
+
}
|
|
46
|
+
function _validateFoldernameExplicitByPlatform(folderName, platform) {
|
|
47
|
+
const baseValidation = _validateNameExplicit(folderName, "Folder", platform);
|
|
48
|
+
if (!baseValidation.valid)
|
|
49
|
+
return baseValidation;
|
|
50
|
+
const reservedValidation = _validateReservedNames(folderName, "Folder", platform);
|
|
51
|
+
if (!reservedValidation.valid)
|
|
52
|
+
return reservedValidation;
|
|
53
|
+
if (platform === "m365" && /^~/.test(folderName))
|
|
54
|
+
return { valid: false, error_code: "fldname_tilde", error: "Folder name cannot start with ~" };
|
|
55
|
+
return { valid: true };
|
|
56
|
+
}
|
|
57
|
+
function _validateFilenameExplicitByPlatform(fileName, platform) {
|
|
58
|
+
const baseValidation = _validateNameExplicit(fileName, "File", platform);
|
|
59
|
+
if (!baseValidation.valid)
|
|
60
|
+
return baseValidation;
|
|
61
|
+
const reservedValidation = _validateReservedNames(fileName, "File", platform);
|
|
62
|
+
if (!reservedValidation.valid)
|
|
63
|
+
return reservedValidation;
|
|
64
|
+
if (platform === "m365" && /^~\$/.test(fileName))
|
|
65
|
+
return { valid: false, error_code: "flname_tilde", error: "File name cannot start with ~$" };
|
|
66
|
+
return { valid: true };
|
|
67
|
+
}
|
|
68
|
+
export function validateFoldernameExplicit(folderName, platform = "all") {
|
|
69
|
+
if (platform === "all") {
|
|
70
|
+
const platforms = ["local", "m365", "sf", "ns"];
|
|
71
|
+
for (const currentPlatform of platforms) {
|
|
72
|
+
const result = _validateFoldernameExplicitByPlatform(folderName, currentPlatform);
|
|
73
|
+
if (!result.valid)
|
|
74
|
+
return result;
|
|
75
|
+
}
|
|
76
|
+
return { valid: true };
|
|
77
|
+
}
|
|
78
|
+
return _validateFoldernameExplicitByPlatform(folderName, platform);
|
|
79
|
+
}
|
|
80
|
+
export function validateFilenameExplicit(fileName, platform = "all") {
|
|
81
|
+
if (platform === "all") {
|
|
82
|
+
const platforms = ["local", "m365", "sf", "ns"];
|
|
83
|
+
for (const currentPlatform of platforms) {
|
|
84
|
+
const result = _validateFilenameExplicitByPlatform(fileName, currentPlatform);
|
|
85
|
+
if (!result.valid)
|
|
86
|
+
return result;
|
|
87
|
+
}
|
|
88
|
+
return { valid: true };
|
|
89
|
+
}
|
|
90
|
+
return _validateFilenameExplicitByPlatform(fileName, platform);
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=file.validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.validation.js","sourceRoot":"","sources":["../../../src/helpers/file.validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAiBrD,SAAS,qBAAqB,CAAC,QAA6B;IACxD,QAAQ,QAAQ,EAAE,CAAC;QACf,KAAK,MAAM;YACP,OAAO,mBAAmB,CAAC;QAC/B,KAAK,IAAI,CAAC;QACV,KAAK,IAAI,CAAC;QACV,KAAK,OAAO,CAAC;QACb,KAAK,KAAK,CAAC;QACX;YACI,OAAO,cAAc,CAAC;IAC9B,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY,EAAE,KAAwB,EAAE,QAA6B;IAChG,IAAI,mBAAmB,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,EAAE,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,KAAK,uBAAuB,EAAE,CAAC;IAClI,IAAI,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,KAAK,uCAAuC,EAAE,CAAC;IACpI,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,KAAK,yBAAyB,EAAE,CAAC;IAC/H,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,GAAG,KAAK,yCAAyC,EAAE,CAAC;IACtI,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,uBAAuB,EAAE,KAAK,EAAE,GAAG,KAAK,2CAA2C,EAAE,CAAC;IAC3J,IAAI,qBAAqB,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,KAAK,EAAE,GAAG,KAAK,mCAAmC,EAAE,CAAC;IACzJ,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAY,EAAE,KAAwB,EAAE,QAA6B;IACjG,MAAM,WAAW,GAAG,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAE7F,IAAI,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QAC9C,IAAI,wCAAwC,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YAC7D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,KAAK,4BAA4B,EAAE,CAAC;QACvG,CAAC;IACL,CAAC;IAED,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QACtB,IAAI,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAChE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,KAAK,4BAA4B,EAAE,CAAC;QACvG,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,KAAK,4BAA4B,EAAE,CAAC;QAClG,CAAC;IACL,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC;AAED,SAAS,qCAAqC,CAAC,UAAkB,EAAE,QAA6C;IAC5G,MAAM,cAAc,GAAG,qBAAqB,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC7E,IAAI,CAAC,cAAc,CAAC,KAAK;QAAE,OAAO,cAAc,CAAC;IAEjD,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAClF,IAAI,CAAC,kBAAkB,CAAC,KAAK;QAAE,OAAO,kBAAkB,CAAC;IAEzD,IAAI,QAAQ,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAC;IACjJ,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC;AAED,SAAS,mCAAmC,CAAC,QAAgB,EAAE,QAA6C;IACxG,MAAM,cAAc,GAAG,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACzE,IAAI,CAAC,cAAc,CAAC,KAAK;QAAE,OAAO,cAAc,CAAC;IAEjD,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC9E,IAAI,CAAC,kBAAkB,CAAC,KAAK;QAAE,OAAO,kBAAkB,CAAC;IAEzD,IAAI,QAAQ,KAAK,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC;IAC/I,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,UAAkB,EAAE,WAAgC,KAAK;IAChG,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;QACrB,MAAM,SAAS,GAA+C,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC5F,KAAK,MAAM,eAAe,IAAI,SAAS,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,qCAAqC,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;YAClF,IAAI,CAAC,MAAM,CAAC,KAAK;gBAAE,OAAO,MAAM,CAAC;QACrC,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,OAAO,qCAAqC,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,QAAgB,EAAE,WAAgC,KAAK;IAC5F,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;QACrB,MAAM,SAAS,GAA+C,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC5F,KAAK,MAAM,eAAe,IAAI,SAAS,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,mCAAmC,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;YAC9E,IAAI,CAAC,MAAM,CAAC,KAAK;gBAAE,OAAO,MAAM,CAAC;QACrC,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,OAAO,mCAAmC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACnE,CAAC"}
|
|
@@ -5,3 +5,7 @@ export declare function sign<T extends IDictionary<string | number | boolean | s
|
|
|
5
5
|
}): string;
|
|
6
6
|
/** use the jose library from @kwiz/node for server apps */
|
|
7
7
|
export declare function unsign<T>(jwtSecret: string, token: string): T;
|
|
8
|
+
export declare function isSignatureExpired(unsigned: {
|
|
9
|
+
exp?: number;
|
|
10
|
+
iat?: number;
|
|
11
|
+
}): boolean;
|
|
@@ -2,11 +2,13 @@ export declare const ImageFileTypes: string[];
|
|
|
2
2
|
export declare const DocumentFileTypes: string[];
|
|
3
3
|
export declare const VideoFileTypes: string[];
|
|
4
4
|
export declare const OfficeFileTypes: string[];
|
|
5
|
+
/** @deprecated use validateFilenameExplicit */
|
|
5
6
|
export declare function validateFilename(fileNameWithExtension: string): {
|
|
6
7
|
hasIllegalCharacter: boolean;
|
|
7
8
|
hasIllegalName: boolean;
|
|
8
9
|
valid: boolean;
|
|
9
10
|
};
|
|
11
|
+
/** @deprecated use validateFoldernameExplicit */
|
|
10
12
|
export declare function validateFoldername(folderName: string): {
|
|
11
13
|
hasIllegalCharacter: boolean;
|
|
12
14
|
hasIllegalName: boolean;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** codes will match strings.common.validation_invalid context value */
|
|
2
|
+
export type tValidationErrorCode = "fname_empty" | "fname_trim" | "fname_dots" | "fname_ending" | "fname_invalid_control" | "fname_invalid" | "fname_reserved" | "fname_vti" | "fldname_tilde" | "flname_tilde";
|
|
3
|
+
export type tValidationResult = {
|
|
4
|
+
valid: false;
|
|
5
|
+
error: string;
|
|
6
|
+
error_code: tValidationErrorCode;
|
|
7
|
+
} | {
|
|
8
|
+
valid: true;
|
|
9
|
+
};
|
|
10
|
+
export type tValidationPlatform = "m365" | "sf" | "ns" | "local" | "all";
|
|
11
|
+
export declare function validateFoldernameExplicit(folderName: string, platform?: tValidationPlatform): tValidationResult;
|
|
12
|
+
export declare function validateFilenameExplicit(fileName: string, platform?: tValidationPlatform): tValidationResult;
|