@knsdev330/node-utils 1.0.1
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/LICENSE +21 -0
- package/README.md +85 -0
- package/dist/Cookies.d.ts +33 -0
- package/dist/Cookies.d.ts.map +1 -0
- package/dist/Cookies.js +54 -0
- package/dist/Cookies.js.map +1 -0
- package/dist/EApiCodes.d.ts +2 -0
- package/dist/EApiCodes.d.ts.map +1 -0
- package/dist/EApiCodes.js +2 -0
- package/dist/EApiCodes.js.map +1 -0
- package/dist/ErrorClasses.d.ts +78 -0
- package/dist/ErrorClasses.d.ts.map +1 -0
- package/dist/ErrorClasses.js +118 -0
- package/dist/ErrorClasses.js.map +1 -0
- package/dist/FBUtils.d.ts +22 -0
- package/dist/FBUtils.d.ts.map +1 -0
- package/dist/FBUtils.js +68 -0
- package/dist/FBUtils.js.map +1 -0
- package/dist/GoogleUtils.d.ts +43 -0
- package/dist/GoogleUtils.d.ts.map +1 -0
- package/dist/GoogleUtils.js +80 -0
- package/dist/GoogleUtils.js.map +1 -0
- package/dist/HMACUtils.d.ts +39 -0
- package/dist/HMACUtils.d.ts.map +1 -0
- package/dist/HMACUtils.js +61 -0
- package/dist/HMACUtils.js.map +1 -0
- package/dist/HttpCodes.d.ts +26 -0
- package/dist/HttpCodes.d.ts.map +1 -0
- package/dist/HttpCodes.js +25 -0
- package/dist/HttpCodes.js.map +1 -0
- package/dist/IDUtils.d.ts +28 -0
- package/dist/IDUtils.d.ts.map +1 -0
- package/dist/IDUtils.js +47 -0
- package/dist/IDUtils.js.map +1 -0
- package/dist/JwtUtils.d.ts +79 -0
- package/dist/JwtUtils.d.ts.map +1 -0
- package/dist/JwtUtils.js +94 -0
- package/dist/JwtUtils.js.map +1 -0
- package/dist/Nums.d.ts +101 -0
- package/dist/Nums.d.ts.map +1 -0
- package/dist/Nums.js +141 -0
- package/dist/Nums.js.map +1 -0
- package/dist/PasswordUtils.d.ts +58 -0
- package/dist/PasswordUtils.d.ts.map +1 -0
- package/dist/PasswordUtils.js +82 -0
- package/dist/PasswordUtils.js.map +1 -0
- package/dist/Rand.d.ts +44 -0
- package/dist/Rand.d.ts.map +1 -0
- package/dist/Rand.js +72 -0
- package/dist/Rand.js.map +1 -0
- package/dist/TurnstileValidator.d.ts +57 -0
- package/dist/TurnstileValidator.d.ts.map +1 -0
- package/dist/TurnstileValidator.js +99 -0
- package/dist/TurnstileValidator.js.map +1 -0
- package/dist/bnUtils.d.ts +15 -0
- package/dist/bnUtils.d.ts.map +1 -0
- package/dist/bnUtils.js +67 -0
- package/dist/bnUtils.js.map +1 -0
- package/dist/getEnvv.d.ts +21 -0
- package/dist/getEnvv.d.ts.map +1 -0
- package/dist/getEnvv.js +68 -0
- package/dist/getEnvv.js.map +1 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +17 -0
- package/dist/index.js.map +1 -0
- package/dist/tryCatch.d.ts +23 -0
- package/dist/tryCatch.d.ts.map +1 -0
- package/dist/tryCatch.js +29 -0
- package/dist/tryCatch.js.map +1 -0
- package/dist/types.d.ts +8 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/validators.d.ts +7 -0
- package/dist/validators.d.ts.map +1 -0
- package/dist/validators.js +11 -0
- package/dist/validators.js.map +1 -0
- package/package.json +80 -0
package/dist/bnUtils.js
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Convert ASCII digits in the input to Bengali digits.
|
|
3
|
+
* Non-digit characters are preserved as-is.
|
|
4
|
+
* @param num - A number or string to convert.
|
|
5
|
+
* @returns A string where `0-9` are replaced by their Bengali equivalents.
|
|
6
|
+
*/
|
|
7
|
+
export const bnNum = (num) => {
|
|
8
|
+
let numStr = "";
|
|
9
|
+
for (const char of String(num)) {
|
|
10
|
+
if (char === '0')
|
|
11
|
+
numStr += '০';
|
|
12
|
+
else if (char === '1')
|
|
13
|
+
numStr += '১';
|
|
14
|
+
else if (char === '2')
|
|
15
|
+
numStr += '২';
|
|
16
|
+
else if (char === '3')
|
|
17
|
+
numStr += '৩';
|
|
18
|
+
else if (char === '4')
|
|
19
|
+
numStr += '৪';
|
|
20
|
+
else if (char === '5')
|
|
21
|
+
numStr += '৫';
|
|
22
|
+
else if (char === '6')
|
|
23
|
+
numStr += '৬';
|
|
24
|
+
else if (char === '7')
|
|
25
|
+
numStr += '৭';
|
|
26
|
+
else if (char === '8')
|
|
27
|
+
numStr += '৮';
|
|
28
|
+
else if (char === '9')
|
|
29
|
+
numStr += '৯';
|
|
30
|
+
else
|
|
31
|
+
numStr += char;
|
|
32
|
+
}
|
|
33
|
+
return numStr;
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Convert a lowercase English month (full/short) or month number to the Bengali month name.
|
|
37
|
+
* @param month - Month as a number (`1-12`), lowercase full English month name, or lowercase short English month name.
|
|
38
|
+
* @returns The Bengali month name string for known inputs; otherwise returns the original `month` value.
|
|
39
|
+
*/
|
|
40
|
+
export const monthToBn = (month) => {
|
|
41
|
+
if (month === 'january' || month === 'jan' || month === 1)
|
|
42
|
+
return 'জানুয়ারি';
|
|
43
|
+
if (month === 'february' || month === 'feb' || month === 2)
|
|
44
|
+
return 'ফেব্রুয়ারি';
|
|
45
|
+
if (month === 'march' || month === 'mar' || month === 3)
|
|
46
|
+
return 'মার্চ';
|
|
47
|
+
if (month === 'april' || month === 'apr' || month === 4)
|
|
48
|
+
return 'এপ্রিল';
|
|
49
|
+
if (month === 'may' || month === 5)
|
|
50
|
+
return 'মে';
|
|
51
|
+
if (month === 'june' || month === 'jun' || month === 6)
|
|
52
|
+
return 'জুন';
|
|
53
|
+
if (month === 'july' || month === 'jul' || month === 7)
|
|
54
|
+
return 'জুলাই';
|
|
55
|
+
if (month === 'august' || month === 'aug' || month === 8)
|
|
56
|
+
return 'আগস্ট';
|
|
57
|
+
if (month === 'september' || month === 'sep' || month === 9)
|
|
58
|
+
return 'সেপ্টেম্বর';
|
|
59
|
+
if (month === 'october' || month === 'oct' || month === 10)
|
|
60
|
+
return 'অক্টোবর';
|
|
61
|
+
if (month === 'november' || month === 'nov' || month === 11)
|
|
62
|
+
return 'নভেম্বর';
|
|
63
|
+
if (month === 'december' || month === 'dec' || month === 12)
|
|
64
|
+
return 'ডিসেম্বর';
|
|
65
|
+
return month;
|
|
66
|
+
};
|
|
67
|
+
//# sourceMappingURL=bnUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bnUtils.js","sourceRoot":"","sources":["../src/bnUtils.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,GAAoB,EAAU,EAAE;IACrD,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;QAChC,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,GAAG,CAAC;aAC3B,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,GAAG,CAAC;aAChC,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,GAAG,CAAC;aAChC,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,GAAG,CAAC;aAChC,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,GAAG,CAAC;aAChC,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,GAAG,CAAC;aAChC,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,GAAG,CAAC;aAChC,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,GAAG,CAAC;aAChC,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,GAAG,CAAC;aAChC,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,GAAG,CAAC;;YAChC,MAAM,IAAI,IAAI,CAAC;IACrB,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CACxB,KAAiF,EACxE,EAAE;IACX,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,WAAW,CAAC;IAC9E,IAAI,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,aAAa,CAAC;IACjF,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IACxE,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAC;IACzE,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAChD,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACrE,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IACvE,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IACzE,IAAI,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,YAAY,CAAC;IACjF,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAC7E,IAAI,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAC9E,IAAI,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,UAAU,CAAC;IAC/E,OAAO,KAAK,CAAC;AACd,CAAC,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { TAppEnvs } from './types.js';
|
|
2
|
+
type TypeMap = {
|
|
3
|
+
string: string;
|
|
4
|
+
int: number;
|
|
5
|
+
float: number;
|
|
6
|
+
boolean: boolean;
|
|
7
|
+
appEnv: TAppEnvs;
|
|
8
|
+
};
|
|
9
|
+
type EnvSchema = Record<string, keyof TypeMap>;
|
|
10
|
+
type ResolvedEnv<T extends EnvSchema> = {
|
|
11
|
+
[K in keyof T]: TypeMap[T[K]];
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Resolve and validate environment variables from a schema.
|
|
15
|
+
* @param schema - Map of env keys to expected primitive types.
|
|
16
|
+
* @returns Parsed environment object with inferred value types.
|
|
17
|
+
* @throws {Error} If required keys are missing or values fail validation.
|
|
18
|
+
*/
|
|
19
|
+
export declare const getEnvv: <T extends EnvSchema>(schema: T) => ResolvedEnv<T>;
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=getEnvv.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getEnvv.d.ts","sourceRoot":"","sources":["../src/getEnvv.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,KAAK,OAAO,GAAG;IACd,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,QAAQ,CAAC;CACjB,CAAC;AAEF,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC;AAE/C,KAAK,WAAW,CAAC,CAAC,SAAS,SAAS,IAAI;KACtC,CAAC,IAAI,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC7B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,SAAS,SAAS,EAAE,QAAQ,CAAC,KAAG,WAAW,CAAC,CAAC,CAiErE,CAAC"}
|
package/dist/getEnvv.js
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resolve and validate environment variables from a schema.
|
|
3
|
+
* @param schema - Map of env keys to expected primitive types.
|
|
4
|
+
* @returns Parsed environment object with inferred value types.
|
|
5
|
+
* @throws {Error} If required keys are missing or values fail validation.
|
|
6
|
+
*/
|
|
7
|
+
export const getEnvv = (schema) => {
|
|
8
|
+
const result = {};
|
|
9
|
+
const notFoundKeys = [];
|
|
10
|
+
const valueErrors = [];
|
|
11
|
+
for (const key of Object.keys(schema)) {
|
|
12
|
+
const raw = process.env[key];
|
|
13
|
+
if (raw === undefined || raw === '') {
|
|
14
|
+
notFoundKeys.push(key);
|
|
15
|
+
continue;
|
|
16
|
+
}
|
|
17
|
+
const type = schema[key];
|
|
18
|
+
if (type === 'int') {
|
|
19
|
+
if (!/^-?\d+$/.test(raw)) {
|
|
20
|
+
valueErrors.push(`${key} is not a valid integer`);
|
|
21
|
+
continue;
|
|
22
|
+
}
|
|
23
|
+
const parsed = parseInt(raw, 10);
|
|
24
|
+
result[key] = parsed;
|
|
25
|
+
}
|
|
26
|
+
else if (type === 'float') {
|
|
27
|
+
if (!/^-?\d+(\.\d+)?$/.test(raw)) {
|
|
28
|
+
valueErrors.push(`${key} is not a valid float`);
|
|
29
|
+
continue;
|
|
30
|
+
}
|
|
31
|
+
const parsed = parseFloat(raw);
|
|
32
|
+
result[key] = parsed;
|
|
33
|
+
}
|
|
34
|
+
else if (type === 'boolean') {
|
|
35
|
+
const lowerRaw = raw.toLowerCase();
|
|
36
|
+
const parsed = ['true', '1', 'yes', 'y', 'false', '0', 'no', 'n'].includes(lowerRaw)
|
|
37
|
+
? ['true', '1', 'yes', 'y'].includes(lowerRaw)
|
|
38
|
+
: null;
|
|
39
|
+
if (parsed === null) {
|
|
40
|
+
valueErrors.push(`${key} is not a valid boolean`);
|
|
41
|
+
continue;
|
|
42
|
+
}
|
|
43
|
+
result[key] = parsed;
|
|
44
|
+
}
|
|
45
|
+
else if (type === 'string') {
|
|
46
|
+
result[key] = raw;
|
|
47
|
+
}
|
|
48
|
+
else if (type === 'appEnv') {
|
|
49
|
+
if (!['dev', 'test', 'prod'].includes(raw)) {
|
|
50
|
+
valueErrors.push(`${key} is not a valid app environment`);
|
|
51
|
+
continue;
|
|
52
|
+
}
|
|
53
|
+
result[key] = raw;
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
valueErrors.push(`${key} is not a valid type`);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
if (notFoundKeys.length + valueErrors.length > 0) {
|
|
60
|
+
throw new Error(`
|
|
61
|
+
${notFoundKeys.length > 0 ? `Not found keys: ${notFoundKeys.join(', ')}` : ''}
|
|
62
|
+
================================
|
|
63
|
+
${valueErrors.length > 0 ? `Value errors: ${valueErrors.join(', ')}` : ''}
|
|
64
|
+
`);
|
|
65
|
+
}
|
|
66
|
+
return result;
|
|
67
|
+
};
|
|
68
|
+
//# sourceMappingURL=getEnvv.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getEnvv.js","sourceRoot":"","sources":["../src/getEnvv.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export { CookieUtils } from "./Cookies.js";
|
|
2
|
+
export * from "./bnUtils.js";
|
|
3
|
+
export type { EApiCodes } from "./EApiCodes.js";
|
|
4
|
+
export * from "./ErrorClasses.js";
|
|
5
|
+
export { FacebookUtils } from "./FBUtils.js";
|
|
6
|
+
export { getEnvv } from "./getEnvv.js";
|
|
7
|
+
export { GoogleUtils } from "./GoogleUtils.js";
|
|
8
|
+
export { HMACUtils } from "./HMACUtils.js";
|
|
9
|
+
export { HttpCodes, type THttpCodes } from "./HttpCodes.js";
|
|
10
|
+
export { IDUtils } from "./IDUtils.js";
|
|
11
|
+
export { JwtUtils } from "./JwtUtils.js";
|
|
12
|
+
export * from "./Nums.js";
|
|
13
|
+
export { PasswordUtils } from "./PasswordUtils.js";
|
|
14
|
+
export * from "./Rand.js";
|
|
15
|
+
export { tryCatch, tryCatch2 } from "./tryCatch.js";
|
|
16
|
+
export { TurnstileValidator } from "./TurnstileValidator.js";
|
|
17
|
+
export type * from "./types.js";
|
|
18
|
+
export { validateUUID } from "./validators.js";
|
|
19
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,cAAc,cAAc,CAAC;AAC7B,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,mBAAmB,YAAY,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export { CookieUtils } from "./Cookies.js";
|
|
2
|
+
export * from "./bnUtils.js";
|
|
3
|
+
export * from "./ErrorClasses.js";
|
|
4
|
+
export { FacebookUtils } from "./FBUtils.js";
|
|
5
|
+
export { getEnvv } from "./getEnvv.js";
|
|
6
|
+
export { GoogleUtils } from "./GoogleUtils.js";
|
|
7
|
+
export { HMACUtils } from "./HMACUtils.js";
|
|
8
|
+
export { HttpCodes } from "./HttpCodes.js";
|
|
9
|
+
export { IDUtils } from "./IDUtils.js";
|
|
10
|
+
export { JwtUtils } from "./JwtUtils.js";
|
|
11
|
+
export * from "./Nums.js";
|
|
12
|
+
export { PasswordUtils } from "./PasswordUtils.js";
|
|
13
|
+
export * from "./Rand.js";
|
|
14
|
+
export { tryCatch, tryCatch2 } from "./tryCatch.js";
|
|
15
|
+
export { TurnstileValidator } from "./TurnstileValidator.js";
|
|
16
|
+
export { validateUUID } from "./validators.js";
|
|
17
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,cAAc,cAAc,CAAC;AAE7B,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAmB,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
type Success<T> = [
|
|
2
|
+
data: T,
|
|
3
|
+
error: null
|
|
4
|
+
];
|
|
5
|
+
type Failure<E> = [
|
|
6
|
+
data: null,
|
|
7
|
+
error: E
|
|
8
|
+
];
|
|
9
|
+
type Result<T, E = Error> = Success<T> | Failure<E>;
|
|
10
|
+
/**
|
|
11
|
+
* Wrap a promise and return tuple-style `[data, error]`.
|
|
12
|
+
* @param promise - Promise to execute.
|
|
13
|
+
* @returns Tuple with successful data and `null` error, or `null` data and captured error.
|
|
14
|
+
*/
|
|
15
|
+
export declare function tryCatch<T, E = Error>(promise: Promise<T>): Promise<Result<T, E>>;
|
|
16
|
+
/**
|
|
17
|
+
* Wrap a sync function and return tuple-style `[data, error]`.
|
|
18
|
+
* @param fn - Function to execute.
|
|
19
|
+
* @returns Tuple with successful data and `null` error, or `null` data and captured error.
|
|
20
|
+
*/
|
|
21
|
+
export declare function tryCatch2<T, E = Error>(fn: () => T): Result<T, E>;
|
|
22
|
+
export {};
|
|
23
|
+
//# sourceMappingURL=tryCatch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tryCatch.d.ts","sourceRoot":"","sources":["../src/tryCatch.ts"],"names":[],"mappings":"AAAA,KAAK,OAAO,CAAC,CAAC,IAAI;IACjB,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,IAAI;CACX,CAAC;AAEF,KAAK,OAAO,CAAC,CAAC,IAAI;IACjB,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,CAAC;CACR,CAAA;AAED,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAGpD;;;;GAIG;AACH,wBAAsB,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,EAC1C,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GACjB,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAQvB;AAGD;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,EACrC,EAAE,EAAE,MAAM,CAAC,GACT,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAQd"}
|
package/dist/tryCatch.js
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Wrap a promise and return tuple-style `[data, error]`.
|
|
3
|
+
* @param promise - Promise to execute.
|
|
4
|
+
* @returns Tuple with successful data and `null` error, or `null` data and captured error.
|
|
5
|
+
*/
|
|
6
|
+
export async function tryCatch(promise) {
|
|
7
|
+
try {
|
|
8
|
+
const data = await promise;
|
|
9
|
+
return [data, null];
|
|
10
|
+
}
|
|
11
|
+
catch (error) {
|
|
12
|
+
return [null, error];
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Wrap a sync function and return tuple-style `[data, error]`.
|
|
17
|
+
* @param fn - Function to execute.
|
|
18
|
+
* @returns Tuple with successful data and `null` error, or `null` data and captured error.
|
|
19
|
+
*/
|
|
20
|
+
export function tryCatch2(fn) {
|
|
21
|
+
try {
|
|
22
|
+
const data = fn();
|
|
23
|
+
return [data, null];
|
|
24
|
+
}
|
|
25
|
+
catch (error) {
|
|
26
|
+
return [null, error];
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=tryCatch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tryCatch.js","sourceRoot":"","sources":["../src/tryCatch.ts"],"names":[],"mappings":"AAaA;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC7B,OAAmB;IAEnB,IAAI,CAAC;QACJ,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC;QAC3B,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,KAAK,EAAE,CAAC;QACd,OAAO,CAAC,IAAI,EAAE,KAAU,CAAC,CAAC;IAC3B,CAAC;AACF,CAAC;AAGD;;;;GAIG;AACH,MAAM,UAAU,SAAS,CACxB,EAAW;IAEX,IAAI,CAAC;QACJ,MAAM,IAAI,GAAG,EAAE,EAAE,CAAC;QAClB,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,KAAK,EAAE,CAAC;QACd,OAAO,CAAC,IAAI,EAAE,KAAU,CAAC,CAAC;IAC3B,CAAC;AACF,CAAC"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export type TMonths = `january` | `february` | `march` | `april` | `may` | `june` | `july` | `august` | `september` | `october` | `november` | `december`;
|
|
2
|
+
export type TMonthsShorts = `jan` | `feb` | `mar` | `apr` | `may` | `jun` | `jul` | `aug` | `sep` | `oct` | `nov` | `dec`;
|
|
3
|
+
export type TAppEnvs = 'dev' | 'test' | 'prod';
|
|
4
|
+
export type TUserRoles = 'user' | 'admin' | 'super_admin' | 'bot' | 'moderator' | 'guest' | 'developer';
|
|
5
|
+
export type TUserStatuses = 'active' | 'inactive' | 'pending' | 'blocked' | 'deleted';
|
|
6
|
+
export type TUserGenders = 'male' | 'female' | 'other' | 'prefer_not_to_say';
|
|
7
|
+
export type TVisibility = 'public' | 'private' | 'protected' | 'hidden';
|
|
8
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,OAAO,GAAG,SAAS,GAAG,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC;AAC1J,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAC1H,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;AAC/C,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,OAAO,GAAG,aAAa,GAAG,KAAK,GAAG,WAAW,GAAG,OAAO,GAAG,WAAW,CAAC;AACxG,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AACtF,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,mBAAmB,CAAC;AAC7E,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../src/validators.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,MAAM,OAAO,KAAG,IAAI,IAAI,MAGpD,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validate whether an unknown value is a UUID string.
|
|
3
|
+
* @param uuid - Value to validate.
|
|
4
|
+
* @returns `true` when `uuid` is a UUID string.
|
|
5
|
+
*/
|
|
6
|
+
export const validateUUID = (uuid) => {
|
|
7
|
+
if (typeof uuid !== 'string')
|
|
8
|
+
return false;
|
|
9
|
+
return /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/.test(uuid);
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=validators.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../src/validators.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAa,EAAkB,EAAE;IAC7D,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC3C,OAAO,+EAA+E,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACnG,CAAC,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@knsdev330/node-utils",
|
|
3
|
+
"version": "1.0.1",
|
|
4
|
+
"description": "Node.js utilities: auth helpers, cookies, JWT, passwords, env parsing, IDs, validation, and more.",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/index.js",
|
|
7
|
+
"types": "./dist/index.d.ts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"types": "./dist/index.d.ts",
|
|
11
|
+
"import": "./dist/index.js"
|
|
12
|
+
},
|
|
13
|
+
"./*": {
|
|
14
|
+
"types": "./dist/*.d.ts",
|
|
15
|
+
"import": "./dist/*.js"
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
"files": [
|
|
19
|
+
"dist",
|
|
20
|
+
"README.md",
|
|
21
|
+
"LICENSE"
|
|
22
|
+
],
|
|
23
|
+
"scripts": {
|
|
24
|
+
"build": "tsc",
|
|
25
|
+
"prepublishOnly": "pnpm run build",
|
|
26
|
+
"test": "echo \"Error: no test specified\" && exit 1"
|
|
27
|
+
},
|
|
28
|
+
"keywords": [
|
|
29
|
+
"nodejs",
|
|
30
|
+
"utilities",
|
|
31
|
+
"jwt",
|
|
32
|
+
"bcrypt",
|
|
33
|
+
"password",
|
|
34
|
+
"cookies",
|
|
35
|
+
"express",
|
|
36
|
+
"oauth",
|
|
37
|
+
"turnstile",
|
|
38
|
+
"typescript"
|
|
39
|
+
],
|
|
40
|
+
"author": "Khandaker Sajjat",
|
|
41
|
+
"repository": {
|
|
42
|
+
"type": "git",
|
|
43
|
+
"url": "https://github.com/KnsDev330/node-utils"
|
|
44
|
+
},
|
|
45
|
+
"bugs": {
|
|
46
|
+
"url": "https://github.com/KnsDev330/node-utils/issues"
|
|
47
|
+
},
|
|
48
|
+
"homepage": "https://github.com/KnsDev330/node-utils#readme",
|
|
49
|
+
"license": "MIT",
|
|
50
|
+
"publishConfig": {
|
|
51
|
+
"access": "public"
|
|
52
|
+
},
|
|
53
|
+
"packageManager": "pnpm@10.30.3",
|
|
54
|
+
"peerDependencies": {
|
|
55
|
+
"express": "^4.18.0 || ^5.0.0"
|
|
56
|
+
},
|
|
57
|
+
"devDependencies": {
|
|
58
|
+
"@eslint/js": "^10.0.1",
|
|
59
|
+
"@types/bcrypt": "^6.0.0",
|
|
60
|
+
"@types/express": "^5.0.6",
|
|
61
|
+
"@types/jsonwebtoken": "^9.0.10",
|
|
62
|
+
"@types/node": "^25.5.0",
|
|
63
|
+
"eslint": "^10.1.0",
|
|
64
|
+
"eslint-config-prettier": "^10.1.8",
|
|
65
|
+
"eslint-plugin-only-warn": "^1.2.1",
|
|
66
|
+
"express": "^5.2.1",
|
|
67
|
+
"fs-extra": "^11.3.4",
|
|
68
|
+
"prettier": "^3.8.1",
|
|
69
|
+
"tsc-watch": "^7.2.0",
|
|
70
|
+
"tsx": "^4.21.0",
|
|
71
|
+
"typescript": "^5.9.3",
|
|
72
|
+
"typescript-eslint": "^8.57.2",
|
|
73
|
+
"semantic-release": "^25.0.3"
|
|
74
|
+
},
|
|
75
|
+
"dependencies": {
|
|
76
|
+
"bcrypt": "^6.0.0",
|
|
77
|
+
"jose": "^6.2.2",
|
|
78
|
+
"jsonwebtoken": "^9.0.3"
|
|
79
|
+
}
|
|
80
|
+
}
|