@achtt/cat-tools 1.0.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/README.md ADDED
@@ -0,0 +1 @@
1
+ npm publish --access public
@@ -0,0 +1,4 @@
1
+ export * from './interfaces';
2
+ export { newError } from './new-error.function';
3
+ export { rejectError } from './reject-error.function';
4
+ export { toHttpException } from './to-http-exception.function';
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.toHttpException = exports.rejectError = exports.newError = void 0;
18
+ __exportStar(require("./interfaces"), exports);
19
+ var new_error_function_1 = require("./new-error.function");
20
+ Object.defineProperty(exports, "newError", { enumerable: true, get: function () { return new_error_function_1.newError; } });
21
+ var reject_error_function_1 = require("./reject-error.function");
22
+ Object.defineProperty(exports, "rejectError", { enumerable: true, get: function () { return reject_error_function_1.rejectError; } });
23
+ var to_http_exception_function_1 = require("./to-http-exception.function");
24
+ Object.defineProperty(exports, "toHttpException", { enumerable: true, get: function () { return to_http_exception_function_1.toHttpException; } });
@@ -0,0 +1,18 @@
1
+ import { HttpStatus } from '@nestjs/common';
2
+ export type THttpStatus = keyof typeof HttpStatus;
3
+ export interface IErrorResponse<T = any> {
4
+ title?: string;
5
+ subTitle?: string;
6
+ code: string;
7
+ message: string;
8
+ description?: string;
9
+ metadata?: T;
10
+ uuid?: string;
11
+ dateTime?: string;
12
+ }
13
+ export interface IErrorHttpContent<T = any> {
14
+ isCapturedErrorInEmited?: boolean;
15
+ status: THttpStatus;
16
+ contentError: IErrorResponse<T>;
17
+ }
18
+ export type TNewErrorResponse<T = any> = Omit<IErrorResponse<T>, 'uuid' | 'dateTime'>;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1 @@
1
+ export * from './error-http.interface';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./error-http.interface"), exports);
@@ -0,0 +1,6 @@
1
+ import { IErrorHttpContent, THttpStatus, TNewErrorResponse } from '../interfaces/';
2
+ export declare class ErrorHttpHelp {
3
+ setNewError<T = any>(status: THttpStatus, errorResponse: TNewErrorResponse): IErrorHttpContent<T>;
4
+ generateUuidV4(): string;
5
+ getErrorContentError<T>(error: any): IErrorHttpContent<T> | undefined;
6
+ }
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ErrorHttpHelp = void 0;
4
+ const common_1 = require("@nestjs/common");
5
+ const uuid_1 = require("uuid");
6
+ class ErrorHttpHelp {
7
+ setNewError(status, errorResponse) {
8
+ const newErrorResponse = {
9
+ isCapturedErrorInEmited: true,
10
+ status: status,
11
+ contentError: {
12
+ ...errorResponse,
13
+ dateTime: new Date().toISOString(),
14
+ uuid: (0, uuid_1.v4)(),
15
+ },
16
+ };
17
+ return newErrorResponse;
18
+ }
19
+ generateUuidV4() {
20
+ return (0, uuid_1.v4)();
21
+ }
22
+ getErrorContentError(error) {
23
+ try {
24
+ const errorHttpContent = error;
25
+ if (errorHttpContent?.isCapturedErrorInEmited === true &&
26
+ common_1.HttpStatus[errorHttpContent?.status] &&
27
+ errorHttpContent?.contentError) {
28
+ return errorHttpContent;
29
+ }
30
+ const errorHttpContentParsed = JSON.parse(error?.message);
31
+ if (errorHttpContentParsed?.isCapturedErrorInEmited === true &&
32
+ common_1.HttpStatus[errorHttpContentParsed?.status] &&
33
+ errorHttpContentParsed?.contentError) {
34
+ return errorHttpContentParsed;
35
+ }
36
+ return undefined;
37
+ }
38
+ catch (error) {
39
+ return undefined;
40
+ }
41
+ }
42
+ }
43
+ exports.ErrorHttpHelp = ErrorHttpHelp;
@@ -0,0 +1 @@
1
+ export * from './error-http-help.model';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./error-http-help.model"), exports);
@@ -0,0 +1,2 @@
1
+ import { THttpStatus, TNewErrorResponse } from './interfaces';
2
+ export declare function newError<T = any>(status: THttpStatus, errorResponse: TNewErrorResponse<T>): Error;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.newError = newError;
4
+ const models_1 = require("./models");
5
+ function newError(status, errorResponse) {
6
+ const errorHttpHelp = new models_1.ErrorHttpHelp();
7
+ const newError = JSON.stringify(errorHttpHelp.setNewError(status, errorResponse));
8
+ return new Error(newError);
9
+ }
@@ -0,0 +1,2 @@
1
+ import { THttpStatus, TNewErrorResponse } from './interfaces';
2
+ export declare function rejectError<T = any>(status: THttpStatus, errorResponse: TNewErrorResponse<T>): Promise<never>;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.rejectError = rejectError;
4
+ const models_1 = require("./models");
5
+ function rejectError(status, errorResponse) {
6
+ const errorHttpHelp = new models_1.ErrorHttpHelp();
7
+ const newError = errorHttpHelp.setNewError(status, errorResponse);
8
+ return Promise.reject(newError);
9
+ }
@@ -0,0 +1,2 @@
1
+ import { HttpException } from '@nestjs/common';
2
+ export declare function toHttpException(error: any, codeGeneric?: string): HttpException;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toHttpException = toHttpException;
4
+ const common_1 = require("@nestjs/common");
5
+ const models_1 = require("./models");
6
+ function toHttpException(error, codeGeneric) {
7
+ const errorHttpHelp = new models_1.ErrorHttpHelp();
8
+ const errorHttpContent = errorHttpHelp.getErrorContentError(error);
9
+ if (errorHttpContent) {
10
+ return new common_1.HttpException(errorHttpContent.contentError, common_1.HttpStatus[errorHttpContent.status]);
11
+ }
12
+ const CODE_GENERIC = 'ERROR_CODE_GENERIC_UNKNOWN';
13
+ const MESSAGE_GENERIC = 'Ocurrio un error, si desea intente nuevamente.';
14
+ return new common_1.HttpException({
15
+ uuid: errorHttpHelp.generateUuidV4(),
16
+ code: codeGeneric ?? CODE_GENERIC,
17
+ message: MESSAGE_GENERIC,
18
+ dateTime: new Date().toISOString(),
19
+ }, common_1.HttpStatus.INTERNAL_SERVER_ERROR);
20
+ }
@@ -0,0 +1 @@
1
+ export * from "./error-http";
package/dist/index.js ADDED
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./error-http"), exports);
package/package.json ADDED
@@ -0,0 +1,47 @@
1
+ {
2
+ "name": "@achtt/cat-tools",
3
+ "version": "1.0.0",
4
+ "description": "Herramientas para NestJs Api",
5
+ "author": "Carlos Abramonte",
6
+ "license": "MIT",
7
+ "type": "commonjs",
8
+ "main": "./dist/index.js",
9
+ "types": "./dist/index.d.ts",
10
+ "exports": {
11
+ ".": {
12
+ "types": "./dist/index.d.ts",
13
+ "require": "./dist/index.js",
14
+ "default": "./dist/index.js"
15
+ }
16
+ },
17
+ "engines": {
18
+ "node": ">=16.0.0"
19
+ },
20
+ "scripts": {
21
+ "clean": "rimraf dist",
22
+ "build": "npm run clean && tsc",
23
+ "build:watch": "tsc -w",
24
+ "prepublishOnly": "npm run build"
25
+ },
26
+ "files": [
27
+ "dist",
28
+ "README.md"
29
+ ],
30
+ "peerDependencies": {
31
+ "@nestjs/common": "^10.0.0",
32
+ "@nestjs/core": "^10.0.0",
33
+ "reflect-metadata": "^0.1.12 || ^0.2.0",
34
+ "rxjs": "^7.8.1",
35
+ "uuid": "^11.1.0"
36
+ },
37
+ "devDependencies": {
38
+ "@nestjs/common": "^10.0.0",
39
+ "@nestjs/core": "^10.0.0",
40
+ "reflect-metadata": "^0.2.0",
41
+ "rxjs": "^7.8.1",
42
+ "uuid": "^11.1.0",
43
+ "@types/node": "^20.0.0",
44
+ "rimraf": "^6.1.3",
45
+ "typescript": "^5.0.0"
46
+ }
47
+ }