Package breakdown. Commit v1.0.0 of services-common stuff

This commit is contained in:
2023-05-23 14:22:12 -04:00
commit c062bae677
11 changed files with 7444 additions and 0 deletions

View File

@@ -0,0 +1,9 @@
import { Payload } from '../../types/Payload';
import { ServiceError } from './ServiceError';
export class ApiError extends ServiceError {
constructor(message: string, debug?: Payload) {
super(message, debug);
this.name = 'ApiError';
}
}

View File

@@ -0,0 +1,9 @@
import { Payload } from '../../types/Payload';
import { ServiceError } from './ServiceError';
export class DatabaseError extends ServiceError {
constructor(message: string, debug?: Payload) {
super(message, debug);
this.name = 'DatabaseError';
}
}

View File

@@ -0,0 +1,12 @@
import { Payload } from '../../types/Payload';
export class ServiceError extends Error {
public env = process.env;
public debug?: Payload;
constructor(message: string, debug?: Payload) {
super(message);
this.name = 'ServiceError';
this.debug = debug;
}
}

7
lib/types/ApiResponse.ts Normal file
View File

@@ -0,0 +1,7 @@
import { Payload } from './Payload';
export interface ApiResponse<T = Payload> {
data?: T;
error?: Error | string | number;
success: boolean;
}

7
lib/types/Payload.ts Normal file
View File

@@ -0,0 +1,7 @@
type PayloadPrimitives = boolean | null | number | string;
type PayloadArray = (PayloadPrimitives | Payload)[];
type PayloadValid = PayloadPrimitives | PayloadArray | Payload;
export interface Payload<T = object> {
[key: string]: PayloadValid | T;
}