melperjs 6.0.0 → 6.1.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 CHANGED
@@ -1,186 +1,211 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.CONSTANTS = void 0;
7
- exports.Exception = Exception;
8
- exports.checkEmpty = checkEmpty;
9
- exports.cookieDict = cookieDict;
10
- exports.cookieHeader = cookieHeader;
11
- exports.findKeyNode = findKeyNode;
12
- exports.isIntlError = isIntlError;
13
- exports.isIntlHttpCode = isIntlHttpCode;
14
- exports.limitString = limitString;
15
- exports.lowerCaseFirst = lowerCaseFirst;
16
- exports.pascalCase = pascalCase;
17
- exports.promiseTimeout = promiseTimeout;
18
- exports.randomHex = randomHex;
19
- exports.randomString = randomString;
20
- exports.randomUuid = randomUuid;
21
- exports.randomWeighted = randomWeighted;
22
- exports.safeString = safeString;
23
- exports.sleep = sleep;
24
- exports.sleepMs = sleepMs;
25
- exports.splitLines = splitLines;
26
- exports.time = time;
27
- exports.titleString = titleString;
28
- exports.upperCaseFirst = upperCaseFirst;
29
- var _xss = _interopRequireDefault(require("xss"));
30
- var _camelCase = _interopRequireDefault(require("lodash/camelCase.js"));
31
- var _capitalize = _interopRequireDefault(require("lodash/capitalize.js"));
32
- var _isEmpty = _interopRequireDefault(require("lodash/isEmpty.js"));
33
- var _setCookieParser = _interopRequireDefault(require("set-cookie-parser"));
34
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
35
- const CONSTANTS = exports.CONSTANTS = {
36
- LOWER_CASE: "abcdefghijklmnopqrstuvwxyz",
37
- UPPER_CASE: "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
38
- HEXADECIMAL: "0123456789abcdef",
39
- NUMBERS: "0123456789"
40
- };
41
- function Exception(message, response = {}, name = null) {
42
- response.status = response.status || 400;
43
- return {
44
- name: pascalCase(name),
45
- message,
46
- response
47
- };
48
- }
49
- function time() {
50
- return Math.floor(Date.now() / 1000);
51
- }
52
- async function sleepMs(milliseconds) {
53
- return new Promise(resolve => setTimeout(resolve, milliseconds));
54
- }
55
- async function sleep(seconds) {
56
- return await sleepMs(seconds * 1000);
57
- }
58
- function promiseTimeout(milliseconds, promise) {
59
- return new Promise((resolve, reject) => {
60
- const timer = setTimeout(() => {
61
- reject(new Error('Promise timed out after ' + milliseconds + 'ms'));
62
- }, milliseconds);
63
- promise.then(value => {
64
- clearTimeout(timer);
65
- resolve(value);
66
- }).catch(reason => {
67
- clearTimeout(timer);
68
- reject(reason);
69
- });
70
- });
71
- }
72
- function splitLines(text) {
73
- return text.split(/\r?\n/).filter(item => !checkEmpty(item)).map(item => item.trim());
74
- }
75
- function findKeyNode(key, node, pair = null) {
76
- if (node && node.hasOwnProperty(key) && (pair ? node[key] === pair : true)) {
77
- return node;
78
- } else if (typeof node === 'object') {
79
- for (let index in node) {
80
- const result = findKeyNode(key, node[index], pair);
81
- if (result) {
82
- return result;
83
- }
84
- }
85
- }
86
- return null;
87
- }
88
- function checkEmpty(value) {
89
- if (typeof value === "number") {
90
- return value === 0;
91
- } else {
92
- return (0, _isEmpty.default)(value);
93
- }
94
- }
95
- function pascalCase(str) {
96
- return upperCaseFirst((0, _camelCase.default)(str));
97
- }
98
- function upperCaseFirst(str) {
99
- str = str || "";
100
- return str[0].toUpperCase() + str.slice(1);
101
- }
102
- function lowerCaseFirst(str) {
103
- str = str || "";
104
- return str[0].toLowerCase() + str.slice(1);
105
- }
106
- function titleString(str) {
107
- str = str || "";
108
- return str.split(' ').map(word => (0, _capitalize.default)(word)).join(' ');
109
- }
110
- function limitString(str, limit = 35) {
111
- str = str || "";
112
- if (str.length <= limit) {
113
- return str;
114
- } else {
115
- return str.substring(0, limit - 3) + "...";
116
- }
117
- }
118
- function safeString(str) {
119
- str = str || "";
120
- return (0, _xss.default)(str, {
121
- whiteList: {},
122
- stripIgnoreTag: true,
123
- stripIgnoreTagBody: ["script"]
124
- });
125
- }
126
- function randomString(length, useNumbers = true, useUppercase = false) {
127
- let characters = CONSTANTS.LOWER_CASE;
128
- if (useUppercase) characters += CONSTANTS.UPPER_CASE;
129
- if (useNumbers) characters += CONSTANTS.NUMBERS;
130
- let randomString = '';
131
- for (let i = 0; i < length; i++) {
132
- const randomIndex = Math.floor(Math.random() * characters.length);
133
- randomString += characters[randomIndex];
134
- }
135
- return randomString;
136
- }
137
- function randomHex(length) {
138
- let result = '';
139
- for (let i = 0; i < length; i++) {
140
- const randomIndex = Math.floor(Math.random() * CONSTANTS.HEXADECIMAL.length);
141
- result += CONSTANTS.HEXADECIMAL[randomIndex];
142
- }
143
- return result;
144
- }
145
- function randomUuid(useDashes = true) {
146
- let d = Date.now();
147
- const uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
148
- const r = (d + Math.random() * 16) % 16 | 0;
149
- d = Math.floor(d / 16);
150
- return (c === 'x' ? r : r & 0x3 | 0x8).toString(16);
151
- });
152
- return useDashes ? uuid : uuid.replaceAll("-", "");
153
- }
154
- function randomWeighted(dict, randomFunc = totalWeight => Math.random() * totalWeight) {
155
- let elements = Object.keys(dict);
156
- let weights = Object.values(dict);
157
- let totalWeight = weights.reduce((sum, weight) => sum + weight, 0);
158
- let randomNum = randomFunc(totalWeight);
159
- let weightSum = 0;
160
- for (let i = 0; i < elements.length; i++) {
161
- weightSum += weights[i];
162
- if (randomNum <= weightSum) {
163
- return elements[i];
164
- }
165
- }
166
- }
167
- function cookieDict(res, decodeValues = false) {
168
- let dict = {};
169
- const cookies = _setCookieParser.default.parse(res, {
170
- decodeValues: decodeValues
171
- });
172
- for (let cookie of cookies) {
173
- dict[cookie.name] = cookie.value;
174
- }
175
- return dict;
176
- }
177
- function cookieHeader(cookieDict) {
178
- return Object.entries(cookieDict).map(([key, value]) => `${key}=${value}`).join(';');
179
- }
180
- function isIntlHttpCode(httpCode) {
181
- return httpCode === undefined || httpCode === null || httpCode === 0 || httpCode === 402 || httpCode === 407 || httpCode === 466 || 500 <= httpCode;
182
- }
183
- function isIntlError(e) {
184
- 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);
185
- }
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.CONSTANTS = void 0;
7
+ exports.Exception = Exception;
8
+ exports.checkEmpty = checkEmpty;
9
+ exports.cookieDict = cookieDict;
10
+ exports.cookieHeader = cookieHeader;
11
+ exports.findKeyNode = findKeyNode;
12
+ exports.isIntlError = isIntlError;
13
+ exports.isIntlHttpCode = isIntlHttpCode;
14
+ exports.limitString = limitString;
15
+ exports.lowerCaseFirst = lowerCaseFirst;
16
+ exports.pascalCase = pascalCase;
17
+ exports.promiseTimeout = promiseTimeout;
18
+ exports.randomHex = randomHex;
19
+ exports.randomInteger = randomInteger;
20
+ exports.randomString = randomString;
21
+ exports.randomUuid = randomUuid;
22
+ exports.randomWeighted = randomWeighted;
23
+ exports.safeString = safeString;
24
+ exports.sleep = sleep;
25
+ exports.sleepMs = sleepMs;
26
+ exports.splitLines = splitLines;
27
+ exports.time = time;
28
+ exports.titleCase = titleCase;
29
+ exports.upperCaseFirst = upperCaseFirst;
30
+ var _xss = _interopRequireDefault(require("xss"));
31
+ var _setCookieParser = _interopRequireDefault(require("set-cookie-parser"));
32
+ var _camelCase = _interopRequireDefault(require("lodash/camelCase.js"));
33
+ var _capitalize = _interopRequireDefault(require("lodash/capitalize.js"));
34
+ var _isEmpty = _interopRequireDefault(require("lodash/isEmpty.js"));
35
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
36
+ const CONSTANTS = exports.CONSTANTS = {
37
+ LOWER_CASE: "abcdefghijklmnopqrstuvwxyz",
38
+ UPPER_CASE: "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
39
+ HEXADECIMAL: "0123456789abcdef",
40
+ NUMBERS: "0123456789"
41
+ };
42
+ function Exception(message, response = {}, name = null) {
43
+ response.status = response.status || 400;
44
+ return {
45
+ name: pascalCase(name),
46
+ message,
47
+ response
48
+ };
49
+ }
50
+ function time() {
51
+ return Math.floor(Date.now() / 1000);
52
+ }
53
+ async function sleepMs(milliseconds) {
54
+ return new Promise(resolve => setTimeout(resolve, milliseconds));
55
+ }
56
+ async function sleep(seconds) {
57
+ return await sleepMs(seconds * 1000);
58
+ }
59
+ function promiseTimeout(milliseconds, promise) {
60
+ return new Promise((resolve, reject) => {
61
+ const timer = setTimeout(() => {
62
+ reject(new Error('Promise timed out after ' + milliseconds + 'ms'));
63
+ }, milliseconds);
64
+ promise.then(value => {
65
+ clearTimeout(timer);
66
+ resolve(value);
67
+ }).catch(reason => {
68
+ clearTimeout(timer);
69
+ reject(reason);
70
+ });
71
+ });
72
+ }
73
+ function splitLines(text) {
74
+ return text.split(/\r?\n/).map(item => item.trim()).filter(item => !(0, _isEmpty.default)(item));
75
+ }
76
+ function findKeyNode(key, node, pair = null) {
77
+ if (node && node.hasOwnProperty(key) && (pair ? node[key] === pair : true)) {
78
+ return node;
79
+ } else if (typeof node === 'object') {
80
+ for (let index in node) {
81
+ const result = findKeyNode(key, node[index], pair);
82
+ if (result) {
83
+ return result;
84
+ }
85
+ }
86
+ }
87
+ return null;
88
+ }
89
+ function checkEmpty(value) {
90
+ if (typeof value === "number") {
91
+ return value === 0;
92
+ } else {
93
+ return (0, _isEmpty.default)(value);
94
+ }
95
+ }
96
+ function pascalCase(str) {
97
+ return upperCaseFirst((0, _camelCase.default)(str));
98
+ }
99
+ function upperCaseFirst(str) {
100
+ str = str || "";
101
+ return str[0].toUpperCase() + str.slice(1);
102
+ }
103
+ function lowerCaseFirst(str) {
104
+ str = str || "";
105
+ return str[0].toLowerCase() + str.slice(1);
106
+ }
107
+ function titleCase(str) {
108
+ str = str || "";
109
+ return str.split(' ').map(word => (0, _capitalize.default)(word)).join(' ');
110
+ }
111
+ function limitString(str, limit = 35) {
112
+ str = str || "";
113
+ if (str.length <= limit) {
114
+ return str;
115
+ } else {
116
+ return str.substring(0, limit - 3) + "...";
117
+ }
118
+ }
119
+ function safeString(str) {
120
+ str = str || "";
121
+ return (0, _xss.default)(str, {
122
+ whiteList: {},
123
+ stripIgnoreTag: true,
124
+ stripIgnoreTagBody: ["script"]
125
+ });
126
+ }
127
+ function randomString(length, useNumbers = true, useUppercase = false) {
128
+ let characters = CONSTANTS.LOWER_CASE;
129
+ if (useUppercase) characters += CONSTANTS.UPPER_CASE;
130
+ if (useNumbers) characters += CONSTANTS.NUMBERS;
131
+ let randomString = '';
132
+ for (let i = 0; i < length; i++) {
133
+ const randomIndex = Math.floor(Math.random() * characters.length);
134
+ randomString += characters[randomIndex];
135
+ }
136
+ return randomString;
137
+ }
138
+ function randomHex(length) {
139
+ let result = '';
140
+ for (let i = 0; i < length; i++) {
141
+ const randomIndex = Math.floor(Math.random() * CONSTANTS.HEXADECIMAL.length);
142
+ result += CONSTANTS.HEXADECIMAL[randomIndex];
143
+ }
144
+ return result;
145
+ }
146
+ function randomInteger(min, max, callback) {
147
+ const minNotSpecified = typeof max === 'undefined' || typeof max === 'function';
148
+ if (minNotSpecified) {
149
+ callback = max;
150
+ max = min;
151
+ min = 0;
152
+ }
153
+ const isSync = typeof callback === 'undefined';
154
+ if (typeof min !== 'number' || typeof max !== 'number') {
155
+ throw new Error('min and max must be numerical values');
156
+ }
157
+ if (max <= min) {
158
+ throw new Error('max must be greater than min');
159
+ }
160
+ const randomNumber = Math.floor(Math.random() * (max - min)) + min;
161
+ if (isSync) {
162
+ return randomNumber;
163
+ } else {
164
+ if (typeof callback !== 'function') {
165
+ throw new Error('callback must be a function');
166
+ }
167
+ callback(randomNumber);
168
+ }
169
+ }
170
+ function randomUuid(useDashes = true) {
171
+ let d = Date.now();
172
+ const uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
173
+ const r = (d + Math.random() * 16) % 16 | 0;
174
+ d = Math.floor(d / 16);
175
+ return (c === 'x' ? r : r & 0x3 | 0x8).toString(16);
176
+ });
177
+ return useDashes ? uuid : uuid.replaceAll("-", "");
178
+ }
179
+ function randomWeighted(dict, randomFunc = totalWeight => Math.random() * totalWeight) {
180
+ let elements = Object.keys(dict);
181
+ let weights = Object.values(dict);
182
+ let totalWeight = weights.reduce((sum, weight) => sum + weight, 0);
183
+ let randomNum = randomFunc(totalWeight);
184
+ let weightSum = 0;
185
+ for (let i = 0; i < elements.length; i++) {
186
+ weightSum += weights[i];
187
+ if (randomNum <= weightSum) {
188
+ return elements[i];
189
+ }
190
+ }
191
+ }
192
+ function cookieDict(res, decodeValues = false) {
193
+ let dict = {};
194
+ const cookies = _setCookieParser.default.parse(res, {
195
+ decodeValues: decodeValues
196
+ });
197
+ for (let cookie of cookies) {
198
+ dict[cookie.name] = cookie.value;
199
+ }
200
+ return dict;
201
+ }
202
+ function cookieHeader(cookieDict) {
203
+ return Object.entries(cookieDict).map(([key, value]) => `${key}=${value}`).join(';');
204
+ }
205
+ function isIntlHttpCode(httpCode) {
206
+ return httpCode === undefined || httpCode === null || httpCode === 0 || httpCode === 100 || httpCode === 402 || httpCode === 407 || 460 <= httpCode && httpCode < 470 || 500 <= httpCode;
207
+ }
208
+ function isIntlError(e) {
209
+ 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);
210
+ }
186
211
  //# sourceMappingURL=index.js.map
package/cjs/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_xss","_interopRequireDefault","require","_camelCase","_capitalize","_isEmpty","_setCookieParser","obj","__esModule","default","CONSTANTS","exports","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","isEmpty","str","upperCaseFirst","camelCase","toUpperCase","slice","lowerCaseFirst","toLowerCase","titleString","word","capitalize","join","limitString","limit","length","substring","safeString","xss","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","setCookieParser","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","_interopRequireDefault","require","_setCookieParser","_camelCase","_capitalize","_isEmpty","obj","__esModule","default","CONSTANTS","exports","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","isEmpty","findKeyNode","key","node","pair","hasOwnProperty","index","result","checkEmpty","str","upperCaseFirst","camelCase","toUpperCase","slice","lowerCaseFirst","toLowerCase","titleCase","word","capitalize","join","limitString","limit","length","substring","safeString","xss","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","setCookieParser","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 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 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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"}