@baklavabg/common-ts 1.0.21 → 1.0.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/safeExit/safe.d.ts.map +1 -1
- package/dist/safeExit/safe.js +5 -6
- package/dist/safeExit/safe.js.map +1 -1
- package/dist/utils/index.d.ts +3 -2
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +3 -2
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/tryCatchSafeDecorator.d.ts +1 -0
- package/dist/utils/tryCatchSafeDecorator.d.ts.map +1 -1
- package/dist/utils/tryCatchSafeDecorator.js +19 -0
- package/dist/utils/tryCatchSafeDecorator.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -2,7 +2,6 @@ export * from "./safeExit/index.js";
|
|
|
2
2
|
export * from "./utils/index.js";
|
|
3
3
|
export type { User1, User2 } from "./types/index.js";
|
|
4
4
|
export { formatUserName } from "./utils/user.utils.js";
|
|
5
|
-
export { TryCatch } from "./utils/tryCatchSafeDecorator.js";
|
|
6
5
|
export { equals, greaterThan, isEmpty, isEven, isNegative, isNotEmpty, isNull, isNullOrUndefined, isOdd, isPositive, isUndefined, isZero, lessThan, notEquals, } from "./safeExit/conditionHelpers.js";
|
|
7
6
|
export { createFolder } from "./utils/file.utils.js";
|
|
8
7
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AAEjC,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EACH,MAAM,EACN,WAAW,EACX,OAAO,EACP,MAAM,EACN,UAAU,EACV,UAAU,EACV,MAAM,EACN,iBAAiB,EACjB,KAAK,EACL,UAAU,EACV,WAAW,EACX,MAAM,EACN,QAAQ,EACR,SAAS,GACZ,MAAM,gCAAgC,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
export * from "./safeExit/index.js";
|
|
2
2
|
export * from "./utils/index.js";
|
|
3
3
|
export { formatUserName } from "./utils/user.utils.js";
|
|
4
|
-
export { TryCatch } from "./utils/tryCatchSafeDecorator.js";
|
|
5
4
|
export { equals, greaterThan, isEmpty, isEven, isNegative, isNotEmpty, isNull, isNullOrUndefined, isOdd, isPositive, isUndefined, isZero, lessThan, notEquals, } from "./safeExit/conditionHelpers.js";
|
|
6
5
|
export { createFolder } from "./utils/file.utils.js";
|
|
7
6
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AAIjC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EACH,MAAM,EACN,WAAW,EACX,OAAO,EACP,MAAM,EACN,UAAU,EACV,UAAU,EACV,MAAM,EACN,iBAAiB,EACjB,KAAK,EACL,UAAU,EACV,WAAW,EACX,MAAM,EACN,QAAQ,EACR,SAAS,GACZ,MAAM,gCAAgC,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safe.d.ts","sourceRoot":"","sources":["../../src/safeExit/safe.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"safe.d.ts","sourceRoot":"","sources":["../../src/safeExit/safe.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AACH,wBAAgB,IAAI,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAClD,EAAE,EAAE,CAAC,EACL,UAAU,GAAE,OAAc,EAC1B,UAAU,GAAE,OAAc,EAC1B,kBAAkB,CAAC,EAAE,GAAG,EACxB,eAAe,CAAC,EAAE,MAAM,EACxB,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAC/B,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,kBAAkB,CA+DvE"}
|
package/dist/safeExit/safe.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { print } from "../utils/log.utils.js";
|
|
2
|
-
import { EarlyReturnError } from "./types.js";
|
|
3
|
-
// @mii use this instead of the other function `safe`
|
|
2
|
+
import { EarlyReturnError, ConditionalResult as Result } from "./types.js";
|
|
4
3
|
/**
|
|
5
4
|
* Enhanced safe function that handles both regular errors and early returns
|
|
6
5
|
* @param fn - The function to wrap
|
|
@@ -12,9 +11,9 @@ import { EarlyReturnError } from "./types.js";
|
|
|
12
11
|
*/
|
|
13
12
|
export function safe(fn, printError = true, printStack = true, defaultReturnValue, defaultErrorMsg, cbk) {
|
|
14
13
|
const getFileInfoFromStack = (stackTrace, functionName) => {
|
|
15
|
-
const lines = stackTrace.split("\n").map(
|
|
16
|
-
const fnLine = lines.find(
|
|
17
|
-
lines.find(
|
|
14
|
+
const lines = stackTrace.split("\n").map(line => line.trim());
|
|
15
|
+
const fnLine = lines.find(line => line.startsWith(`at ${functionName}`)) ||
|
|
16
|
+
lines.find(line => /at .*:\d+:\d+/.test(line)) ||
|
|
18
17
|
lines[1] ||
|
|
19
18
|
"";
|
|
20
19
|
const regex = /at (?:\S+ \()?(.+):(\d+):(\d+)\)?$/;
|
|
@@ -42,7 +41,7 @@ export function safe(fn, printError = true, printStack = true, defaultReturnValu
|
|
|
42
41
|
if (cbk) {
|
|
43
42
|
cbk(e);
|
|
44
43
|
}
|
|
45
|
-
return defaultReturnValue;
|
|
44
|
+
return defaultReturnValue ?? new Result(null, "An unexpected error occurred");
|
|
46
45
|
};
|
|
47
46
|
const handleEarlyReturn = (e) => {
|
|
48
47
|
return e.returnValue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safe.js","sourceRoot":"","sources":["../../src/safeExit/safe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,
|
|
1
|
+
{"version":3,"file":"safe.js","sourceRoot":"","sources":["../../src/safeExit/safe.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
export { saveFile, loadFile, loadJson, saveJson, createFolder } from "./file.utils.js";
|
|
2
|
-
export { print } from "./log.utils.js";
|
|
3
1
|
export { blue, cyan, green, magenta, red, white, yellow } from "console-log-colors";
|
|
2
|
+
export { createFolder, loadFile, loadJson, saveFile, saveJson } from "./file.utils.js";
|
|
3
|
+
export { print } from "./log.utils.js";
|
|
4
|
+
export { TryCatch, TryCatchRethrow } from "./tryCatchSafeDecorator.js";
|
|
4
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACvF,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC"}
|
package/dist/utils/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
export { saveFile, loadFile, loadJson, saveJson, createFolder } from "./file.utils.js";
|
|
2
|
-
export { print } from "./log.utils.js";
|
|
3
1
|
export { blue, cyan, green, magenta, red, white, yellow } from "console-log-colors";
|
|
2
|
+
export { createFolder, loadFile, loadJson, saveFile, saveJson } from "./file.utils.js";
|
|
3
|
+
export { print } from "./log.utils.js";
|
|
4
|
+
export { TryCatch, TryCatchRethrow } from "./tryCatchSafeDecorator.js";
|
|
4
5
|
//# sourceMappingURL=index.js.map
|
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACvF,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
export declare function TryCatch<C = undefined>(printError?: boolean, printStack?: boolean, customReturn?: C): (originalMethod: (...args: any[]) => any, _context: ClassMethodDecoratorContext) => any;
|
|
2
|
+
export declare function TryCatchRethrow(printError?: boolean, printStack?: boolean): (originalMethod: (...args: any[]) => any, _context: ClassMethodDecoratorContext) => (this: any, ...args: any[]) => any;
|
|
2
3
|
//# sourceMappingURL=tryCatchSafeDecorator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tryCatchSafeDecorator.d.ts","sourceRoot":"","sources":["../../src/utils/tryCatchSafeDecorator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tryCatchSafeDecorator.d.ts","sourceRoot":"","sources":["../../src/utils/tryCatchSafeDecorator.ts"],"names":[],"mappings":"AAiCA,wBAAgB,QAAQ,CAAC,CAAC,GAAG,SAAS,EAAE,UAAU,GAAE,OAAc,EAAE,UAAU,GAAE,OAAc,EAAE,YAAY,CAAC,EAAE,CAAC,IAC3F,gBAAgB,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,UAAU,2BAA2B,KACf,GAAG,CAEtF;AAED,wBAAgB,eAAe,CAAC,UAAU,GAAE,OAAc,EAAE,UAAU,GAAE,OAAe,IAClE,gBAAgB,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,UAAU,2BAA2B,MAC1E,MAAM,GAAG,EAAE,GAAG,MAAM,GAAG,EAAE,SAcjD"}
|
|
@@ -28,10 +28,29 @@
|
|
|
28
28
|
// See tryCatchSafe.ts for more details on parameter behavior.
|
|
29
29
|
// import { safe } from "./tryCatchSafe.js";
|
|
30
30
|
import { safe } from "../safeExit/safe.js";
|
|
31
|
+
import { print } from "../utils/log.utils.js";
|
|
31
32
|
//@mii to move to safeExit folder
|
|
32
33
|
export function TryCatch(printError = true, printStack = true, customReturn) {
|
|
33
34
|
return function (originalMethod, _context) {
|
|
34
35
|
return safe(originalMethod, printError, printStack, customReturn);
|
|
35
36
|
};
|
|
36
37
|
}
|
|
38
|
+
export function TryCatchRethrow(printError = true, printStack = false) {
|
|
39
|
+
return function (originalMethod, _context) {
|
|
40
|
+
return function (...args) {
|
|
41
|
+
try {
|
|
42
|
+
return originalMethod.apply(this, args);
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
if (printError) {
|
|
46
|
+
print.red(error instanceof Error ? `${error.message}` : `${error}`);
|
|
47
|
+
}
|
|
48
|
+
if (printStack && error instanceof Error) {
|
|
49
|
+
print.red(`${error.stack}`);
|
|
50
|
+
}
|
|
51
|
+
throw error;
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
};
|
|
55
|
+
}
|
|
37
56
|
//# sourceMappingURL=tryCatchSafeDecorator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tryCatchSafeDecorator.js","sourceRoot":"","sources":["../../src/utils/tryCatchSafeDecorator.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,sFAAsF;AACtF,6FAA6F;AAC7F,kGAAkG;AAClG,EAAE;AACF,iBAAiB;AACjB,sDAAsD;AACtD,EAAE;AACF,kBAAkB;AAClB,wGAAwG;AACxG,4CAA4C;AAC5C,oBAAoB;AACpB,wCAAwC;AACxC,MAAM;AACN,EAAE;AACF,6FAA6F;AAC7F,2BAA2B;AAC3B,2BAA2B;AAC3B,wCAAwC;AACxC,MAAM;AACN,IAAI;AACJ,EAAE;AACF,sBAAsB;AACtB,iEAAiE;AACjE,kEAAkE;AAClE,2EAA2E;AAC3E,EAAE;AACF,8DAA8D;AAC9D,4CAA4C;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"tryCatchSafeDecorator.js","sourceRoot":"","sources":["../../src/utils/tryCatchSafeDecorator.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,sFAAsF;AACtF,6FAA6F;AAC7F,kGAAkG;AAClG,EAAE;AACF,iBAAiB;AACjB,sDAAsD;AACtD,EAAE;AACF,kBAAkB;AAClB,wGAAwG;AACxG,4CAA4C;AAC5C,oBAAoB;AACpB,wCAAwC;AACxC,MAAM;AACN,EAAE;AACF,6FAA6F;AAC7F,2BAA2B;AAC3B,2BAA2B;AAC3B,wCAAwC;AACxC,MAAM;AACN,IAAI;AACJ,EAAE;AACF,sBAAsB;AACtB,iEAAiE;AACjE,kEAAkE;AAClE,2EAA2E;AAC3E,EAAE;AACF,8DAA8D;AAC9D,4CAA4C;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE9C,iCAAiC;AACjC,MAAM,UAAU,QAAQ,CAAgB,aAAsB,IAAI,EAAE,aAAsB,IAAI,EAAE,YAAgB;IAC5G,OAAO,UAAU,cAAuC,EAAE,QAAqC;QAC3F,OAAO,IAAI,CAAC,cAAc,EAAE,UAAU,EAAE,UAAU,EAAE,YAAmB,CAAQ,CAAC;IACpF,CAAC,CAAC;AACN,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,aAAsB,IAAI,EAAE,aAAsB,KAAK;IACnF,OAAO,UAAU,cAAuC,EAAE,QAAqC;QAC3F,OAAO,UAAqB,GAAG,IAAW;YACtC,IAAI,CAAC;gBACD,OAAO,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC5C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,IAAI,UAAU,EAAE,CAAC;oBACb,KAAK,CAAC,GAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;gBACxE,CAAC;gBACD,IAAI,UAAU,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;oBACvC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;gBAChC,CAAC;gBACD,MAAM,KAAK,CAAC;YAChB,CAAC;QACL,CAAC,CAAC;IACN,CAAC,CAAC;AACN,CAAC"}
|