melperjs 6.0.0 → 6.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/index.js +212 -185
- package/cjs/index.js.map +1 -1
- package/cjs/node.js +151 -194
- package/cjs/node.js.map +1 -1
- package/lib/index.js +260 -234
- package/lib/index.js.map +1 -1
- package/mjs/index.js +182 -156
- package/mjs/index.js.map +1 -1
- package/mjs/node.js +132 -175
- package/mjs/node.js.map +1 -1
- package/package.json +1 -1
- package/src/index.js +4 -0
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","catch","_catch","delegateYield","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","Array","isArray","_createForOfIteratorHelper","allowArrayLike","it","F","_e","normalCompletion","didErr","err","step","_e2","minLen","_arrayLikeToArray","toString","from","test","len","arr2","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","arguments","apply","undefined","xss","camelCase","capitalize","isEmpty","setCookieParser","CONSTANTS","LOWER_CASE","UPPER_CASE","HEXADECIMAL","NUMBERS","Exception","message","response","status","pascalCase","time","Math","floor","Date","now","sleepMs","_x","_sleepMs","_callee","milliseconds","_callee$","_context","setTimeout","sleep","_x2","_sleep","_callee2","seconds","_callee2$","_context2","promiseTimeout","promise","timer","clearTimeout","reason","splitLines","text","split","filter","item","checkEmpty","map","trim","findKeyNode","node","pair","index","result","str","upperCaseFirst","toUpperCase","lowerCaseFirst","toLowerCase","titleString","word","join","limitString","limit","substring","safeString","whiteList","stripIgnoreTag","stripIgnoreTagBody","randomString","useNumbers","useUppercase","characters","randomIndex","random","randomHex","randomUuid","useDashes","uuid","replace","replaceAll","randomWeighted","dict","randomFunc","totalWeight","elements","weights","reduce","sum","weight","randomNum","weightSum","cookieDict","res","decodeValues","cookies","parse","_iterator","_step","cookie","cookieHeader","entries","_ref","_ref2","concat","isIntlHttpCode","httpCode","isIntlError","_e$message","_e$message$toLowerCas","_e$message$toLowerCas2","_e$message2","_e$message2$toLowerCa","_e$message2$toLowerCa2","_e$message3","_e$message3$toLowerCa","_e$message3$toLowerCa2","_e$message4","_e$message4$toLowerCa","_e$message4$toLowerCa2","_e$response","includes"],"sources":["../src/index.js"],"sourcesContent":["import xss from \"xss\";\r\nimport camelCase from \"lodash/camelCase.js\";\r\nimport capitalize from \"lodash/capitalize.js\";\r\nimport isEmpty from \"lodash/isEmpty.js\";\r\nimport setCookieParser from \"set-cookie-parser\";\r\n\r\n\r\nexport const CONSTANTS = {\r\n LOWER_CASE: \"abcdefghijklmnopqrstuvwxyz\",\r\n UPPER_CASE: \"ABCDEFGHIJKLMNOPQRSTUVWXYZ\",\r\n HEXADECIMAL: \"0123456789abcdef\",\r\n NUMBERS: \"0123456789\",\r\n};\r\n\r\nexport function Exception(message, response = {}, name = null) {\r\n response.status = response.status || 400;\r\n return {\r\n name: pascalCase(name),\r\n message,\r\n response,\r\n }\r\n}\r\n\r\nexport function time() {\r\n return Math.floor(Date.now() / 1000);\r\n}\r\n\r\nexport async function sleepMs(milliseconds) {\r\n return new Promise(resolve => setTimeout(resolve, milliseconds));\r\n}\r\n\r\nexport async function sleep(seconds) {\r\n return await sleepMs(seconds * 1000);\r\n}\r\n\r\nexport function promiseTimeout(milliseconds, promise) {\r\n return new Promise((resolve, reject) => {\r\n const timer = setTimeout(() => {\r\n reject(new Error('Promise timed out after ' + milliseconds + 'ms'));\r\n }, milliseconds);\r\n\r\n promise\r\n .then(value => {\r\n clearTimeout(timer);\r\n resolve(value);\r\n })\r\n .catch(reason => {\r\n clearTimeout(timer);\r\n reject(reason);\r\n });\r\n });\r\n}\r\n\r\nexport function splitLines(text) {\r\n return text.split(/\\r?\\n/).filter(item => !checkEmpty(item)).map(item => item.trim());\r\n}\r\n\r\nexport function findKeyNode(key, node, pair = null) {\r\n if (node && node.hasOwnProperty(key) && (pair ? node[key] === pair : true)) {\r\n return node;\r\n } else if (typeof node === 'object') {\r\n for (let index in node) {\r\n const result = findKeyNode(key, node[index], pair);\r\n if (result) {\r\n return result;\r\n }\r\n }\r\n }\r\n return null;\r\n}\r\n\r\nexport function checkEmpty(value) {\r\n if (typeof value === \"number\") {\r\n return value === 0;\r\n } else {\r\n return isEmpty(value);\r\n }\r\n}\r\n\r\nexport function pascalCase(str) {\r\n return upperCaseFirst(camelCase(str));\r\n}\r\n\r\nexport function upperCaseFirst(str) {\r\n str = str || \"\";\r\n return str[0].toUpperCase() + str.slice(1);\r\n}\r\n\r\nexport function lowerCaseFirst(str) {\r\n str = str || \"\";\r\n return str[0].toLowerCase() + str.slice(1);\r\n}\r\n\r\nexport function titleString(str) {\r\n str = str || \"\";\r\n return str\r\n .split(' ')\r\n .map(word => capitalize(word))\r\n .join(' ');\r\n}\r\n\r\nexport function limitString(str, limit = 35) {\r\n str = str || \"\";\r\n if (str.length <= limit) {\r\n return str;\r\n } else {\r\n return str.substring(0, limit - 3) + \"...\";\r\n }\r\n}\r\n\r\nexport function safeString(str) {\r\n str = str || \"\";\r\n return xss(str, {\r\n whiteList: {},\r\n stripIgnoreTag: true,\r\n stripIgnoreTagBody: [\"script\"]\r\n });\r\n}\r\n\r\nexport function randomString(length, useNumbers = true, useUppercase = false) {\r\n\r\n let characters = CONSTANTS.LOWER_CASE;\r\n if (useUppercase) characters += CONSTANTS.UPPER_CASE;\r\n if (useNumbers) characters += CONSTANTS.NUMBERS;\r\n\r\n let randomString = '';\r\n for (let i = 0; i < length; i++) {\r\n const randomIndex = Math.floor(Math.random() * characters.length);\r\n randomString += characters[randomIndex];\r\n }\r\n\r\n return randomString;\r\n}\r\n\r\nexport function randomHex(length) {\r\n let result = '';\r\n for (let i = 0; i < length; i++) {\r\n const randomIndex = Math.floor(Math.random() * CONSTANTS.HEXADECIMAL.length);\r\n result += CONSTANTS.HEXADECIMAL[randomIndex];\r\n }\r\n\r\n return result;\r\n}\r\n\r\nexport function randomUuid(useDashes = true) {\r\n let d = Date.now();\r\n const uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\r\n const r = (d + Math.random() * 16) % 16 | 0;\r\n d = Math.floor(d / 16);\r\n return (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16);\r\n });\r\n return useDashes ? uuid : uuid.replaceAll(\"-\", \"\");\r\n}\r\n\r\nexport function randomWeighted(dict, randomFunc = (totalWeight) => Math.random() * totalWeight) {\r\n let elements = Object.keys(dict);\r\n let weights = Object.values(dict);\r\n\r\n let totalWeight = weights.reduce((sum, weight) => sum + weight, 0);\r\n\r\n let randomNum = randomFunc(totalWeight);\r\n let weightSum = 0;\r\n\r\n for (let i = 0; i < elements.length; i++) {\r\n weightSum += weights[i];\r\n if (randomNum <= weightSum) {\r\n return elements[i];\r\n }\r\n }\r\n}\r\n\r\nexport function cookieDict(res, decodeValues = false) {\r\n let dict = {};\r\n const cookies = setCookieParser.parse(res, {decodeValues: decodeValues});\r\n for (let cookie of cookies) {\r\n dict[cookie.name] = cookie.value;\r\n }\r\n return dict;\r\n}\r\n\r\nexport function cookieHeader(cookieDict) {\r\n return Object.entries(cookieDict)\r\n .map(([key, value]) => `${key}=${value}`)\r\n .join(';')\r\n}\r\n\r\nexport function isIntlHttpCode(httpCode) {\r\n return (\r\n httpCode === undefined ||\r\n httpCode === null ||\r\n httpCode === 0 ||\r\n httpCode === 402 ||\r\n httpCode === 407 ||\r\n httpCode === 466 ||\r\n 500 <= httpCode\r\n );\r\n}\r\n\r\nexport function isIntlError(e) {\r\n return (\r\n e?.message?.toLowerCase?.()?.includes?.(\"timeout\") ||\r\n e?.message?.toLowerCase?.()?.includes?.(\"aborted\") ||\r\n e?.message?.toLowerCase?.()?.includes?.(\"tls connection\") ||\r\n e?.message?.toLowerCase?.()?.includes?.(\"socket hang\") ||\r\n isIntlHttpCode(e?.response?.status)\r\n )\r\n}"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","catch","_catch","delegateYield","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","Array","isArray","_createForOfIteratorHelper","allowArrayLike","it","F","_e","normalCompletion","didErr","err","step","_e2","minLen","_arrayLikeToArray","toString","from","test","len","arr2","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","arguments","apply","undefined","xss","setCookieParser","camelCase","capitalize","isEmpty","CONSTANTS","LOWER_CASE","UPPER_CASE","HEXADECIMAL","NUMBERS","Exception","message","response","status","pascalCase","time","Math","floor","Date","now","sleepMs","_x","_sleepMs","_callee","milliseconds","_callee$","_context","setTimeout","sleep","_x2","_sleep","_callee2","seconds","_callee2$","_context2","promiseTimeout","promise","timer","clearTimeout","reason","splitLines","text","split","map","item","trim","filter","findKeyNode","node","pair","index","result","checkEmpty","str","upperCaseFirst","toUpperCase","lowerCaseFirst","toLowerCase","titleCase","word","join","limitString","limit","substring","safeString","whiteList","stripIgnoreTag","stripIgnoreTagBody","randomString","useNumbers","useUppercase","characters","randomIndex","random","randomHex","randomInteger","min","max","callback","minNotSpecified","isSync","randomNumber","randomUuid","useDashes","uuid","replace","replaceAll","randomWeighted","dict","randomFunc","totalWeight","elements","weights","reduce","sum","weight","randomNum","weightSum","cookieDict","res","decodeValues","cookies","parse","_iterator","_step","cookie","cookieHeader","entries","_ref","_ref2","concat","isIntlHttpCode","httpCode","isIntlError","_e$message","_e$message$toLowerCas","_e$message$toLowerCas2","_e$message2","_e$message2$toLowerCa","_e$message2$toLowerCa2","_e$message3","_e$message3$toLowerCa","_e$message3$toLowerCa2","_e$message4","_e$message4$toLowerCa","_e$message4$toLowerCa2","_e$response","includes"],"sources":["../src/index.js"],"sourcesContent":["import xss from \"xss\";\r\nimport setCookieParser from \"set-cookie-parser\";\r\nimport camelCase from \"lodash/camelCase.js\";\r\nimport capitalize from \"lodash/capitalize.js\";\r\nimport isEmpty from \"lodash/isEmpty.js\";\r\n\r\n\r\nexport const CONSTANTS = {\r\n LOWER_CASE: \"abcdefghijklmnopqrstuvwxyz\",\r\n UPPER_CASE: \"ABCDEFGHIJKLMNOPQRSTUVWXYZ\",\r\n HEXADECIMAL: \"0123456789abcdef\",\r\n NUMBERS: \"0123456789\",\r\n};\r\n\r\nexport function Exception(message, response = {}, name = null) {\r\n response.status = response.status || 400;\r\n return {\r\n name: pascalCase(name),\r\n message,\r\n response\r\n };\r\n}\r\n\r\nexport function time() {\r\n return Math.floor(Date.now() / 1000);\r\n}\r\n\r\nexport async function sleepMs(milliseconds) {\r\n return new Promise(resolve => setTimeout(resolve, milliseconds));\r\n}\r\n\r\nexport async function sleep(seconds) {\r\n return await sleepMs(seconds * 1000);\r\n}\r\n\r\nexport function promiseTimeout(milliseconds, promise) {\r\n return new Promise((resolve, reject) => {\r\n const timer = setTimeout(() => {\r\n reject(new Error('Promise timed out after ' + milliseconds + 'ms'));\r\n }, milliseconds);\r\n\r\n promise\r\n .then(value => {\r\n clearTimeout(timer);\r\n resolve(value);\r\n })\r\n .catch(reason => {\r\n clearTimeout(timer);\r\n reject(reason);\r\n });\r\n });\r\n}\r\n\r\nexport function splitLines(text) {\r\n return text.split(/\\r?\\n/).map(item => item.trim()).filter(item => !isEmpty(item));\r\n}\r\n\r\nexport function findKeyNode(key, node, pair = null) {\r\n if (node && node.hasOwnProperty(key) && (pair ? node[key] === pair : true)) {\r\n return node;\r\n } else if (typeof node === 'object') {\r\n for (let index in node) {\r\n const result = findKeyNode(key, node[index], pair);\r\n if (result) {\r\n return result;\r\n }\r\n }\r\n }\r\n return null;\r\n}\r\n\r\nexport function checkEmpty(value) {\r\n if (typeof value === \"number\") {\r\n return value === 0;\r\n } else {\r\n return isEmpty(value);\r\n }\r\n}\r\n\r\nexport function pascalCase(str) {\r\n return upperCaseFirst(camelCase(str));\r\n}\r\n\r\nexport function upperCaseFirst(str) {\r\n str = str || \"\";\r\n if(str.length < 1)\r\n return \"\";\r\n return str[0].toUpperCase() + str.slice(1);\r\n}\r\n\r\nexport function lowerCaseFirst(str) {\r\n str = str || \"\";\r\n if(str.length < 1)\r\n return \"\";\r\n return str[0].toLowerCase() + str.slice(1);\r\n}\r\n\r\nexport function titleCase(str) {\r\n str = str || \"\";\r\n return str\r\n .split(' ')\r\n .map(word => capitalize(word))\r\n .join(' ');\r\n}\r\n\r\nexport function limitString(str, limit = 35) {\r\n str = str || \"\";\r\n if (str.length <= limit) {\r\n return str;\r\n } else {\r\n return str.substring(0, limit - 3) + \"...\";\r\n }\r\n}\r\n\r\nexport function safeString(str) {\r\n str = str || \"\";\r\n return xss(str, {\r\n whiteList: {},\r\n stripIgnoreTag: true,\r\n stripIgnoreTagBody: [\"script\"]\r\n });\r\n}\r\n\r\nexport function randomString(length, useNumbers = true, useUppercase = false) {\r\n\r\n let characters = CONSTANTS.LOWER_CASE;\r\n if (useUppercase) characters += CONSTANTS.UPPER_CASE;\r\n if (useNumbers) characters += CONSTANTS.NUMBERS;\r\n\r\n let randomString = '';\r\n for (let i = 0; i < length; i++) {\r\n const randomIndex = Math.floor(Math.random() * characters.length);\r\n randomString += characters[randomIndex];\r\n }\r\n\r\n return randomString;\r\n}\r\n\r\nexport function randomHex(length) {\r\n let result = '';\r\n for (let i = 0; i < length; i++) {\r\n const randomIndex = Math.floor(Math.random() * CONSTANTS.HEXADECIMAL.length);\r\n result += CONSTANTS.HEXADECIMAL[randomIndex];\r\n }\r\n\r\n return result;\r\n}\r\n\r\nexport function randomInteger(min, max, callback) {\r\n const minNotSpecified = typeof max === 'undefined' || typeof max === 'function';\r\n\r\n if (minNotSpecified) {\r\n callback = max;\r\n max = min;\r\n min = 0;\r\n }\r\n\r\n const isSync = typeof callback === 'undefined';\r\n\r\n if (typeof min !== 'number' || typeof max !== 'number') {\r\n throw new Error('min and max must be numerical values');\r\n }\r\n if (max <= min) {\r\n throw new Error('max must be greater than min');\r\n }\r\n\r\n const randomNumber = Math.floor(Math.random() * (max - min)) + min;\r\n\r\n if (isSync) {\r\n return randomNumber;\r\n } else {\r\n if (typeof callback !== 'function') {\r\n throw new Error('callback must be a function');\r\n }\r\n callback(randomNumber);\r\n }\r\n}\r\n\r\nexport function randomUuid(useDashes = true) {\r\n let d = Date.now();\r\n const uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\r\n const r = (d + Math.random() * 16) % 16 | 0;\r\n d = Math.floor(d / 16);\r\n return (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16);\r\n });\r\n return useDashes ? uuid : uuid.replaceAll(\"-\", \"\");\r\n}\r\n\r\nexport function randomWeighted(dict, randomFunc = (totalWeight) => Math.random() * totalWeight) {\r\n let elements = Object.keys(dict);\r\n let weights = Object.values(dict);\r\n\r\n let totalWeight = weights.reduce((sum, weight) => sum + weight, 0);\r\n\r\n let randomNum = randomFunc(totalWeight);\r\n let weightSum = 0;\r\n\r\n for (let i = 0; i < elements.length; i++) {\r\n weightSum += weights[i];\r\n if (randomNum <= weightSum) {\r\n return elements[i];\r\n }\r\n }\r\n}\r\n\r\nexport function cookieDict(res, decodeValues = false) {\r\n let dict = {};\r\n const cookies = setCookieParser.parse(res, {decodeValues: decodeValues});\r\n for (let cookie of cookies) {\r\n dict[cookie.name] = cookie.value;\r\n }\r\n return dict;\r\n}\r\n\r\nexport function cookieHeader(cookieDict) {\r\n return Object.entries(cookieDict)\r\n .map(([key, value]) => `${key}=${value}`)\r\n .join(';')\r\n}\r\n\r\nexport function isIntlHttpCode(httpCode) {\r\n return (\r\n httpCode === undefined ||\r\n httpCode === null ||\r\n httpCode === 0 ||\r\n httpCode === 100 ||\r\n httpCode === 402 ||\r\n httpCode === 407 ||\r\n (460 <= httpCode && httpCode < 470) ||\r\n 500 <= httpCode\r\n );\r\n}\r\n\r\nexport function isIntlError(e) {\r\n return (\r\n e?.message?.toLowerCase?.()?.includes?.(\"timeout\") ||\r\n e?.message?.toLowerCase?.()?.includes?.(\"aborted\") ||\r\n e?.message?.toLowerCase?.()?.includes?.(\"tls connection\") ||\r\n e?.message?.toLowerCase?.()?.includes?.(\"socket hang\") ||\r\n isIntlHttpCode(e?.response?.status)\r\n )\r\n}"],"mappings":"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"}
|
package/mjs/index.js
CHANGED
|
@@ -1,157 +1,183 @@
|
|
|
1
|
-
import xss from "xss";
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
export const CONSTANTS = {
|
|
7
|
-
LOWER_CASE: "abcdefghijklmnopqrstuvwxyz",
|
|
8
|
-
UPPER_CASE: "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
|
|
9
|
-
HEXADECIMAL: "0123456789abcdef",
|
|
10
|
-
NUMBERS: "0123456789"
|
|
11
|
-
};
|
|
12
|
-
export function Exception(message, response = {}, name = null) {
|
|
13
|
-
response.status = response.status || 400;
|
|
14
|
-
return {
|
|
15
|
-
name: pascalCase(name),
|
|
16
|
-
message,
|
|
17
|
-
response
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
export function time() {
|
|
21
|
-
return Math.floor(Date.now() / 1000);
|
|
22
|
-
}
|
|
23
|
-
export async function sleepMs(milliseconds) {
|
|
24
|
-
return new Promise(resolve => setTimeout(resolve, milliseconds));
|
|
25
|
-
}
|
|
26
|
-
export async function sleep(seconds) {
|
|
27
|
-
return await sleepMs(seconds * 1000);
|
|
28
|
-
}
|
|
29
|
-
export function promiseTimeout(milliseconds, promise) {
|
|
30
|
-
return new Promise((resolve, reject) => {
|
|
31
|
-
const timer = setTimeout(() => {
|
|
32
|
-
reject(new Error('Promise timed out after ' + milliseconds + 'ms'));
|
|
33
|
-
}, milliseconds);
|
|
34
|
-
promise.then(value => {
|
|
35
|
-
clearTimeout(timer);
|
|
36
|
-
resolve(value);
|
|
37
|
-
}).catch(reason => {
|
|
38
|
-
clearTimeout(timer);
|
|
39
|
-
reject(reason);
|
|
40
|
-
});
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
export function splitLines(text) {
|
|
44
|
-
return text.split(/\r?\n/).
|
|
45
|
-
}
|
|
46
|
-
export function findKeyNode(key, node, pair = null) {
|
|
47
|
-
if (node && node.hasOwnProperty(key) && (pair ? node[key] === pair : true)) {
|
|
48
|
-
return node;
|
|
49
|
-
} else if (typeof node === 'object') {
|
|
50
|
-
for (let index in node) {
|
|
51
|
-
const result = findKeyNode(key, node[index], pair);
|
|
52
|
-
if (result) {
|
|
53
|
-
return result;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
return null;
|
|
58
|
-
}
|
|
59
|
-
export function checkEmpty(value) {
|
|
60
|
-
if (typeof value === "number") {
|
|
61
|
-
return value === 0;
|
|
62
|
-
} else {
|
|
63
|
-
return isEmpty(value);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
export function pascalCase(str) {
|
|
67
|
-
return upperCaseFirst(camelCase(str));
|
|
68
|
-
}
|
|
69
|
-
export function upperCaseFirst(str) {
|
|
70
|
-
str = str || "";
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
return str
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
return
|
|
150
|
-
}
|
|
151
|
-
export function
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
1
|
+
import xss from "xss";
|
|
2
|
+
import setCookieParser from "set-cookie-parser";
|
|
3
|
+
import camelCase from "lodash/camelCase.js";
|
|
4
|
+
import capitalize from "lodash/capitalize.js";
|
|
5
|
+
import isEmpty from "lodash/isEmpty.js";
|
|
6
|
+
export const CONSTANTS = {
|
|
7
|
+
LOWER_CASE: "abcdefghijklmnopqrstuvwxyz",
|
|
8
|
+
UPPER_CASE: "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
|
|
9
|
+
HEXADECIMAL: "0123456789abcdef",
|
|
10
|
+
NUMBERS: "0123456789"
|
|
11
|
+
};
|
|
12
|
+
export function Exception(message, response = {}, name = null) {
|
|
13
|
+
response.status = response.status || 400;
|
|
14
|
+
return {
|
|
15
|
+
name: pascalCase(name),
|
|
16
|
+
message,
|
|
17
|
+
response
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export function time() {
|
|
21
|
+
return Math.floor(Date.now() / 1000);
|
|
22
|
+
}
|
|
23
|
+
export async function sleepMs(milliseconds) {
|
|
24
|
+
return new Promise(resolve => setTimeout(resolve, milliseconds));
|
|
25
|
+
}
|
|
26
|
+
export async function sleep(seconds) {
|
|
27
|
+
return await sleepMs(seconds * 1000);
|
|
28
|
+
}
|
|
29
|
+
export function promiseTimeout(milliseconds, promise) {
|
|
30
|
+
return new Promise((resolve, reject) => {
|
|
31
|
+
const timer = setTimeout(() => {
|
|
32
|
+
reject(new Error('Promise timed out after ' + milliseconds + 'ms'));
|
|
33
|
+
}, milliseconds);
|
|
34
|
+
promise.then(value => {
|
|
35
|
+
clearTimeout(timer);
|
|
36
|
+
resolve(value);
|
|
37
|
+
}).catch(reason => {
|
|
38
|
+
clearTimeout(timer);
|
|
39
|
+
reject(reason);
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
export function splitLines(text) {
|
|
44
|
+
return text.split(/\r?\n/).map(item => item.trim()).filter(item => !isEmpty(item));
|
|
45
|
+
}
|
|
46
|
+
export function findKeyNode(key, node, pair = null) {
|
|
47
|
+
if (node && node.hasOwnProperty(key) && (pair ? node[key] === pair : true)) {
|
|
48
|
+
return node;
|
|
49
|
+
} else if (typeof node === 'object') {
|
|
50
|
+
for (let index in node) {
|
|
51
|
+
const result = findKeyNode(key, node[index], pair);
|
|
52
|
+
if (result) {
|
|
53
|
+
return result;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
59
|
+
export function checkEmpty(value) {
|
|
60
|
+
if (typeof value === "number") {
|
|
61
|
+
return value === 0;
|
|
62
|
+
} else {
|
|
63
|
+
return isEmpty(value);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
export function pascalCase(str) {
|
|
67
|
+
return upperCaseFirst(camelCase(str));
|
|
68
|
+
}
|
|
69
|
+
export function upperCaseFirst(str) {
|
|
70
|
+
str = str || "";
|
|
71
|
+
if (str.length < 1) return "";
|
|
72
|
+
return str[0].toUpperCase() + str.slice(1);
|
|
73
|
+
}
|
|
74
|
+
export function lowerCaseFirst(str) {
|
|
75
|
+
str = str || "";
|
|
76
|
+
if (str.length < 1) return "";
|
|
77
|
+
return str[0].toLowerCase() + str.slice(1);
|
|
78
|
+
}
|
|
79
|
+
export function titleCase(str) {
|
|
80
|
+
str = str || "";
|
|
81
|
+
return str.split(' ').map(word => capitalize(word)).join(' ');
|
|
82
|
+
}
|
|
83
|
+
export function limitString(str, limit = 35) {
|
|
84
|
+
str = str || "";
|
|
85
|
+
if (str.length <= limit) {
|
|
86
|
+
return str;
|
|
87
|
+
} else {
|
|
88
|
+
return str.substring(0, limit - 3) + "...";
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
export function safeString(str) {
|
|
92
|
+
str = str || "";
|
|
93
|
+
return xss(str, {
|
|
94
|
+
whiteList: {},
|
|
95
|
+
stripIgnoreTag: true,
|
|
96
|
+
stripIgnoreTagBody: ["script"]
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
export function randomString(length, useNumbers = true, useUppercase = false) {
|
|
100
|
+
let characters = CONSTANTS.LOWER_CASE;
|
|
101
|
+
if (useUppercase) characters += CONSTANTS.UPPER_CASE;
|
|
102
|
+
if (useNumbers) characters += CONSTANTS.NUMBERS;
|
|
103
|
+
let randomString = '';
|
|
104
|
+
for (let i = 0; i < length; i++) {
|
|
105
|
+
const randomIndex = Math.floor(Math.random() * characters.length);
|
|
106
|
+
randomString += characters[randomIndex];
|
|
107
|
+
}
|
|
108
|
+
return randomString;
|
|
109
|
+
}
|
|
110
|
+
export function randomHex(length) {
|
|
111
|
+
let result = '';
|
|
112
|
+
for (let i = 0; i < length; i++) {
|
|
113
|
+
const randomIndex = Math.floor(Math.random() * CONSTANTS.HEXADECIMAL.length);
|
|
114
|
+
result += CONSTANTS.HEXADECIMAL[randomIndex];
|
|
115
|
+
}
|
|
116
|
+
return result;
|
|
117
|
+
}
|
|
118
|
+
export function randomInteger(min, max, callback) {
|
|
119
|
+
const minNotSpecified = typeof max === 'undefined' || typeof max === 'function';
|
|
120
|
+
if (minNotSpecified) {
|
|
121
|
+
callback = max;
|
|
122
|
+
max = min;
|
|
123
|
+
min = 0;
|
|
124
|
+
}
|
|
125
|
+
const isSync = typeof callback === 'undefined';
|
|
126
|
+
if (typeof min !== 'number' || typeof max !== 'number') {
|
|
127
|
+
throw new Error('min and max must be numerical values');
|
|
128
|
+
}
|
|
129
|
+
if (max <= min) {
|
|
130
|
+
throw new Error('max must be greater than min');
|
|
131
|
+
}
|
|
132
|
+
const randomNumber = Math.floor(Math.random() * (max - min)) + min;
|
|
133
|
+
if (isSync) {
|
|
134
|
+
return randomNumber;
|
|
135
|
+
} else {
|
|
136
|
+
if (typeof callback !== 'function') {
|
|
137
|
+
throw new Error('callback must be a function');
|
|
138
|
+
}
|
|
139
|
+
callback(randomNumber);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
export function randomUuid(useDashes = true) {
|
|
143
|
+
let d = Date.now();
|
|
144
|
+
const uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
|
|
145
|
+
const r = (d + Math.random() * 16) % 16 | 0;
|
|
146
|
+
d = Math.floor(d / 16);
|
|
147
|
+
return (c === 'x' ? r : r & 0x3 | 0x8).toString(16);
|
|
148
|
+
});
|
|
149
|
+
return useDashes ? uuid : uuid.replaceAll("-", "");
|
|
150
|
+
}
|
|
151
|
+
export function randomWeighted(dict, randomFunc = totalWeight => Math.random() * totalWeight) {
|
|
152
|
+
let elements = Object.keys(dict);
|
|
153
|
+
let weights = Object.values(dict);
|
|
154
|
+
let totalWeight = weights.reduce((sum, weight) => sum + weight, 0);
|
|
155
|
+
let randomNum = randomFunc(totalWeight);
|
|
156
|
+
let weightSum = 0;
|
|
157
|
+
for (let i = 0; i < elements.length; i++) {
|
|
158
|
+
weightSum += weights[i];
|
|
159
|
+
if (randomNum <= weightSum) {
|
|
160
|
+
return elements[i];
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
export function cookieDict(res, decodeValues = false) {
|
|
165
|
+
let dict = {};
|
|
166
|
+
const cookies = setCookieParser.parse(res, {
|
|
167
|
+
decodeValues: decodeValues
|
|
168
|
+
});
|
|
169
|
+
for (let cookie of cookies) {
|
|
170
|
+
dict[cookie.name] = cookie.value;
|
|
171
|
+
}
|
|
172
|
+
return dict;
|
|
173
|
+
}
|
|
174
|
+
export function cookieHeader(cookieDict) {
|
|
175
|
+
return Object.entries(cookieDict).map(([key, value]) => `${key}=${value}`).join(';');
|
|
176
|
+
}
|
|
177
|
+
export function isIntlHttpCode(httpCode) {
|
|
178
|
+
return httpCode === undefined || httpCode === null || httpCode === 0 || httpCode === 100 || httpCode === 402 || httpCode === 407 || 460 <= httpCode && httpCode < 470 || 500 <= httpCode;
|
|
179
|
+
}
|
|
180
|
+
export function isIntlError(e) {
|
|
181
|
+
return e?.message?.toLowerCase?.()?.includes?.("timeout") || e?.message?.toLowerCase?.()?.includes?.("aborted") || e?.message?.toLowerCase?.()?.includes?.("tls connection") || e?.message?.toLowerCase?.()?.includes?.("socket hang") || isIntlHttpCode(e?.response?.status);
|
|
182
|
+
}
|
|
157
183
|
//# sourceMappingURL=index.js.map
|
package/mjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["xss","camelCase","capitalize","isEmpty","setCookieParser","CONSTANTS","LOWER_CASE","UPPER_CASE","HEXADECIMAL","NUMBERS","Exception","message","response","name","status","pascalCase","time","Math","floor","Date","now","sleepMs","milliseconds","Promise","resolve","setTimeout","sleep","seconds","promiseTimeout","promise","reject","timer","Error","then","value","clearTimeout","catch","reason","splitLines","text","split","filter","item","checkEmpty","map","trim","findKeyNode","key","node","pair","hasOwnProperty","index","result","str","upperCaseFirst","toUpperCase","slice","lowerCaseFirst","toLowerCase","titleString","word","join","limitString","limit","length","substring","safeString","whiteList","stripIgnoreTag","stripIgnoreTagBody","randomString","useNumbers","useUppercase","characters","i","randomIndex","random","randomHex","randomUuid","useDashes","d","uuid","replace","c","r","toString","replaceAll","randomWeighted","dict","randomFunc","totalWeight","elements","Object","keys","weights","values","reduce","sum","weight","randomNum","weightSum","cookieDict","res","decodeValues","cookies","parse","cookie","cookieHeader","entries","isIntlHttpCode","httpCode","undefined","isIntlError","e","includes"],"sources":["../src/index.js"],"sourcesContent":["import xss from \"xss\";\r\nimport camelCase from \"lodash/camelCase.js\";\r\nimport capitalize from \"lodash/capitalize.js\";\r\nimport isEmpty from \"lodash/isEmpty.js\";\r\nimport setCookieParser from \"set-cookie-parser\";\r\n\r\n\r\nexport const CONSTANTS = {\r\n LOWER_CASE: \"abcdefghijklmnopqrstuvwxyz\",\r\n UPPER_CASE: \"ABCDEFGHIJKLMNOPQRSTUVWXYZ\",\r\n HEXADECIMAL: \"0123456789abcdef\",\r\n NUMBERS: \"0123456789\",\r\n};\r\n\r\nexport function Exception(message, response = {}, name = null) {\r\n response.status = response.status || 400;\r\n return {\r\n name: pascalCase(name),\r\n message,\r\n response,\r\n }\r\n}\r\n\r\nexport function time() {\r\n return Math.floor(Date.now() / 1000);\r\n}\r\n\r\nexport async function sleepMs(milliseconds) {\r\n return new Promise(resolve => setTimeout(resolve, milliseconds));\r\n}\r\n\r\nexport async function sleep(seconds) {\r\n return await sleepMs(seconds * 1000);\r\n}\r\n\r\nexport function promiseTimeout(milliseconds, promise) {\r\n return new Promise((resolve, reject) => {\r\n const timer = setTimeout(() => {\r\n reject(new Error('Promise timed out after ' + milliseconds + 'ms'));\r\n }, milliseconds);\r\n\r\n promise\r\n .then(value => {\r\n clearTimeout(timer);\r\n resolve(value);\r\n })\r\n .catch(reason => {\r\n clearTimeout(timer);\r\n reject(reason);\r\n });\r\n });\r\n}\r\n\r\nexport function splitLines(text) {\r\n return text.split(/\\r?\\n/).filter(item => !checkEmpty(item)).map(item => item.trim());\r\n}\r\n\r\nexport function findKeyNode(key, node, pair = null) {\r\n if (node && node.hasOwnProperty(key) && (pair ? node[key] === pair : true)) {\r\n return node;\r\n } else if (typeof node === 'object') {\r\n for (let index in node) {\r\n const result = findKeyNode(key, node[index], pair);\r\n if (result) {\r\n return result;\r\n }\r\n }\r\n }\r\n return null;\r\n}\r\n\r\nexport function checkEmpty(value) {\r\n if (typeof value === \"number\") {\r\n return value === 0;\r\n } else {\r\n return isEmpty(value);\r\n }\r\n}\r\n\r\nexport function pascalCase(str) {\r\n return upperCaseFirst(camelCase(str));\r\n}\r\n\r\nexport function upperCaseFirst(str) {\r\n str = str || \"\";\r\n return str[0].toUpperCase() + str.slice(1);\r\n}\r\n\r\nexport function lowerCaseFirst(str) {\r\n str = str || \"\";\r\n return str[0].toLowerCase() + str.slice(1);\r\n}\r\n\r\nexport function titleString(str) {\r\n str = str || \"\";\r\n return str\r\n .split(' ')\r\n .map(word => capitalize(word))\r\n .join(' ');\r\n}\r\n\r\nexport function limitString(str, limit = 35) {\r\n str = str || \"\";\r\n if (str.length <= limit) {\r\n return str;\r\n } else {\r\n return str.substring(0, limit - 3) + \"...\";\r\n }\r\n}\r\n\r\nexport function safeString(str) {\r\n str = str || \"\";\r\n return xss(str, {\r\n whiteList: {},\r\n stripIgnoreTag: true,\r\n stripIgnoreTagBody: [\"script\"]\r\n });\r\n}\r\n\r\nexport function randomString(length, useNumbers = true, useUppercase = false) {\r\n\r\n let characters = CONSTANTS.LOWER_CASE;\r\n if (useUppercase) characters += CONSTANTS.UPPER_CASE;\r\n if (useNumbers) characters += CONSTANTS.NUMBERS;\r\n\r\n let randomString = '';\r\n for (let i = 0; i < length; i++) {\r\n const randomIndex = Math.floor(Math.random() * characters.length);\r\n randomString += characters[randomIndex];\r\n }\r\n\r\n return randomString;\r\n}\r\n\r\nexport function randomHex(length) {\r\n let result = '';\r\n for (let i = 0; i < length; i++) {\r\n const randomIndex = Math.floor(Math.random() * CONSTANTS.HEXADECIMAL.length);\r\n result += CONSTANTS.HEXADECIMAL[randomIndex];\r\n }\r\n\r\n return result;\r\n}\r\n\r\nexport function randomUuid(useDashes = true) {\r\n let d = Date.now();\r\n const uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\r\n const r = (d + Math.random() * 16) % 16 | 0;\r\n d = Math.floor(d / 16);\r\n return (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16);\r\n });\r\n return useDashes ? uuid : uuid.replaceAll(\"-\", \"\");\r\n}\r\n\r\nexport function randomWeighted(dict, randomFunc = (totalWeight) => Math.random() * totalWeight) {\r\n let elements = Object.keys(dict);\r\n let weights = Object.values(dict);\r\n\r\n let totalWeight = weights.reduce((sum, weight) => sum + weight, 0);\r\n\r\n let randomNum = randomFunc(totalWeight);\r\n let weightSum = 0;\r\n\r\n for (let i = 0; i < elements.length; i++) {\r\n weightSum += weights[i];\r\n if (randomNum <= weightSum) {\r\n return elements[i];\r\n }\r\n }\r\n}\r\n\r\nexport function cookieDict(res, decodeValues = false) {\r\n let dict = {};\r\n const cookies = setCookieParser.parse(res, {decodeValues: decodeValues});\r\n for (let cookie of cookies) {\r\n dict[cookie.name] = cookie.value;\r\n }\r\n return dict;\r\n}\r\n\r\nexport function cookieHeader(cookieDict) {\r\n return Object.entries(cookieDict)\r\n .map(([key, value]) => `${key}=${value}`)\r\n .join(';')\r\n}\r\n\r\nexport function isIntlHttpCode(httpCode) {\r\n return (\r\n httpCode === undefined ||\r\n httpCode === null ||\r\n httpCode === 0 ||\r\n httpCode === 402 ||\r\n httpCode === 407 ||\r\n httpCode === 466 ||\r\n 500 <= httpCode\r\n );\r\n}\r\n\r\nexport function isIntlError(e) {\r\n return (\r\n e?.message?.toLowerCase?.()?.includes?.(\"timeout\") ||\r\n e?.message?.toLowerCase?.()?.includes?.(\"aborted\") ||\r\n e?.message?.toLowerCase?.()?.includes?.(\"tls connection\") ||\r\n e?.message?.toLowerCase?.()?.includes?.(\"socket hang\") ||\r\n isIntlHttpCode(e?.response?.status)\r\n )\r\n}"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["xss","setCookieParser","camelCase","capitalize","isEmpty","CONSTANTS","LOWER_CASE","UPPER_CASE","HEXADECIMAL","NUMBERS","Exception","message","response","name","status","pascalCase","time","Math","floor","Date","now","sleepMs","milliseconds","Promise","resolve","setTimeout","sleep","seconds","promiseTimeout","promise","reject","timer","Error","then","value","clearTimeout","catch","reason","splitLines","text","split","map","item","trim","filter","findKeyNode","key","node","pair","hasOwnProperty","index","result","checkEmpty","str","upperCaseFirst","length","toUpperCase","slice","lowerCaseFirst","toLowerCase","titleCase","word","join","limitString","limit","substring","safeString","whiteList","stripIgnoreTag","stripIgnoreTagBody","randomString","useNumbers","useUppercase","characters","i","randomIndex","random","randomHex","randomInteger","min","max","callback","minNotSpecified","isSync","randomNumber","randomUuid","useDashes","d","uuid","replace","c","r","toString","replaceAll","randomWeighted","dict","randomFunc","totalWeight","elements","Object","keys","weights","values","reduce","sum","weight","randomNum","weightSum","cookieDict","res","decodeValues","cookies","parse","cookie","cookieHeader","entries","isIntlHttpCode","httpCode","undefined","isIntlError","e","includes"],"sources":["../src/index.js"],"sourcesContent":["import xss from \"xss\";\r\nimport setCookieParser from \"set-cookie-parser\";\r\nimport camelCase from \"lodash/camelCase.js\";\r\nimport capitalize from \"lodash/capitalize.js\";\r\nimport isEmpty from \"lodash/isEmpty.js\";\r\n\r\n\r\nexport const CONSTANTS = {\r\n LOWER_CASE: \"abcdefghijklmnopqrstuvwxyz\",\r\n UPPER_CASE: \"ABCDEFGHIJKLMNOPQRSTUVWXYZ\",\r\n HEXADECIMAL: \"0123456789abcdef\",\r\n NUMBERS: \"0123456789\",\r\n};\r\n\r\nexport function Exception(message, response = {}, name = null) {\r\n response.status = response.status || 400;\r\n return {\r\n name: pascalCase(name),\r\n message,\r\n response\r\n };\r\n}\r\n\r\nexport function time() {\r\n return Math.floor(Date.now() / 1000);\r\n}\r\n\r\nexport async function sleepMs(milliseconds) {\r\n return new Promise(resolve => setTimeout(resolve, milliseconds));\r\n}\r\n\r\nexport async function sleep(seconds) {\r\n return await sleepMs(seconds * 1000);\r\n}\r\n\r\nexport function promiseTimeout(milliseconds, promise) {\r\n return new Promise((resolve, reject) => {\r\n const timer = setTimeout(() => {\r\n reject(new Error('Promise timed out after ' + milliseconds + 'ms'));\r\n }, milliseconds);\r\n\r\n promise\r\n .then(value => {\r\n clearTimeout(timer);\r\n resolve(value);\r\n })\r\n .catch(reason => {\r\n clearTimeout(timer);\r\n reject(reason);\r\n });\r\n });\r\n}\r\n\r\nexport function splitLines(text) {\r\n return text.split(/\\r?\\n/).map(item => item.trim()).filter(item => !isEmpty(item));\r\n}\r\n\r\nexport function findKeyNode(key, node, pair = null) {\r\n if (node && node.hasOwnProperty(key) && (pair ? node[key] === pair : true)) {\r\n return node;\r\n } else if (typeof node === 'object') {\r\n for (let index in node) {\r\n const result = findKeyNode(key, node[index], pair);\r\n if (result) {\r\n return result;\r\n }\r\n }\r\n }\r\n return null;\r\n}\r\n\r\nexport function checkEmpty(value) {\r\n if (typeof value === \"number\") {\r\n return value === 0;\r\n } else {\r\n return isEmpty(value);\r\n }\r\n}\r\n\r\nexport function pascalCase(str) {\r\n return upperCaseFirst(camelCase(str));\r\n}\r\n\r\nexport function upperCaseFirst(str) {\r\n str = str || \"\";\r\n if(str.length < 1)\r\n return \"\";\r\n return str[0].toUpperCase() + str.slice(1);\r\n}\r\n\r\nexport function lowerCaseFirst(str) {\r\n str = str || \"\";\r\n if(str.length < 1)\r\n return \"\";\r\n return str[0].toLowerCase() + str.slice(1);\r\n}\r\n\r\nexport function titleCase(str) {\r\n str = str || \"\";\r\n return str\r\n .split(' ')\r\n .map(word => capitalize(word))\r\n .join(' ');\r\n}\r\n\r\nexport function limitString(str, limit = 35) {\r\n str = str || \"\";\r\n if (str.length <= limit) {\r\n return str;\r\n } else {\r\n return str.substring(0, limit - 3) + \"...\";\r\n }\r\n}\r\n\r\nexport function safeString(str) {\r\n str = str || \"\";\r\n return xss(str, {\r\n whiteList: {},\r\n stripIgnoreTag: true,\r\n stripIgnoreTagBody: [\"script\"]\r\n });\r\n}\r\n\r\nexport function randomString(length, useNumbers = true, useUppercase = false) {\r\n\r\n let characters = CONSTANTS.LOWER_CASE;\r\n if (useUppercase) characters += CONSTANTS.UPPER_CASE;\r\n if (useNumbers) characters += CONSTANTS.NUMBERS;\r\n\r\n let randomString = '';\r\n for (let i = 0; i < length; i++) {\r\n const randomIndex = Math.floor(Math.random() * characters.length);\r\n randomString += characters[randomIndex];\r\n }\r\n\r\n return randomString;\r\n}\r\n\r\nexport function randomHex(length) {\r\n let result = '';\r\n for (let i = 0; i < length; i++) {\r\n const randomIndex = Math.floor(Math.random() * CONSTANTS.HEXADECIMAL.length);\r\n result += CONSTANTS.HEXADECIMAL[randomIndex];\r\n }\r\n\r\n return result;\r\n}\r\n\r\nexport function randomInteger(min, max, callback) {\r\n const minNotSpecified = typeof max === 'undefined' || typeof max === 'function';\r\n\r\n if (minNotSpecified) {\r\n callback = max;\r\n max = min;\r\n min = 0;\r\n }\r\n\r\n const isSync = typeof callback === 'undefined';\r\n\r\n if (typeof min !== 'number' || typeof max !== 'number') {\r\n throw new Error('min and max must be numerical values');\r\n }\r\n if (max <= min) {\r\n throw new Error('max must be greater than min');\r\n }\r\n\r\n const randomNumber = Math.floor(Math.random() * (max - min)) + min;\r\n\r\n if (isSync) {\r\n return randomNumber;\r\n } else {\r\n if (typeof callback !== 'function') {\r\n throw new Error('callback must be a function');\r\n }\r\n callback(randomNumber);\r\n }\r\n}\r\n\r\nexport function randomUuid(useDashes = true) {\r\n let d = Date.now();\r\n const uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\r\n const r = (d + Math.random() * 16) % 16 | 0;\r\n d = Math.floor(d / 16);\r\n return (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16);\r\n });\r\n return useDashes ? uuid : uuid.replaceAll(\"-\", \"\");\r\n}\r\n\r\nexport function randomWeighted(dict, randomFunc = (totalWeight) => Math.random() * totalWeight) {\r\n let elements = Object.keys(dict);\r\n let weights = Object.values(dict);\r\n\r\n let totalWeight = weights.reduce((sum, weight) => sum + weight, 0);\r\n\r\n let randomNum = randomFunc(totalWeight);\r\n let weightSum = 0;\r\n\r\n for (let i = 0; i < elements.length; i++) {\r\n weightSum += weights[i];\r\n if (randomNum <= weightSum) {\r\n return elements[i];\r\n }\r\n }\r\n}\r\n\r\nexport function cookieDict(res, decodeValues = false) {\r\n let dict = {};\r\n const cookies = setCookieParser.parse(res, {decodeValues: decodeValues});\r\n for (let cookie of cookies) {\r\n dict[cookie.name] = cookie.value;\r\n }\r\n return dict;\r\n}\r\n\r\nexport function cookieHeader(cookieDict) {\r\n return Object.entries(cookieDict)\r\n .map(([key, value]) => `${key}=${value}`)\r\n .join(';')\r\n}\r\n\r\nexport function isIntlHttpCode(httpCode) {\r\n return (\r\n httpCode === undefined ||\r\n httpCode === null ||\r\n httpCode === 0 ||\r\n httpCode === 100 ||\r\n httpCode === 402 ||\r\n httpCode === 407 ||\r\n (460 <= httpCode && httpCode < 470) ||\r\n 500 <= httpCode\r\n );\r\n}\r\n\r\nexport function isIntlError(e) {\r\n return (\r\n e?.message?.toLowerCase?.()?.includes?.(\"timeout\") ||\r\n e?.message?.toLowerCase?.()?.includes?.(\"aborted\") ||\r\n e?.message?.toLowerCase?.()?.includes?.(\"tls connection\") ||\r\n e?.message?.toLowerCase?.()?.includes?.(\"socket hang\") ||\r\n isIntlHttpCode(e?.response?.status)\r\n )\r\n}"],"mappings":"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"}
|