@cichol/logger 4.0.0-alpha.3 → 4.0.0-alpha.5

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cichol/logger",
3
- "version": "4.0.0-alpha.3",
3
+ "version": "4.0.0-alpha.5",
4
4
  "description": "A logger based on `winston` for personal projects.",
5
5
  "homepage": "https://github.com/morrighan/packages",
6
6
  "bugs": {
@@ -14,7 +14,7 @@
14
14
  },
15
15
  "main": "releases/cjs.js",
16
16
  "module": "releases/esm.js",
17
- "types": "releases/index.d.ts",
17
+ "types": "types/index.d.ts",
18
18
  "directories": {
19
19
  "lib": "releases"
20
20
  },
@@ -29,7 +29,7 @@
29
29
  },
30
30
  "scripts": {
31
31
  "build": "npm run build:tsc",
32
- "build:tsc": "npx tsc --project sources --outFile releases/index.d.ts"
32
+ "build:tsc": "npx tsc --project sources --outDir types"
33
33
  },
34
34
  "dependencies": {
35
35
  "bluebird": "^3.7.2",
@@ -0,0 +1,33 @@
1
+ /// <reference types="node" />
2
+ import 'reflect-metadata';
3
+ import { IncomingMessage as HttpRequest, ServerResponse as HttpResponse } from 'http';
4
+ import Promise from 'bluebird';
5
+ import type { LoggingLevelName } from '../handlers';
6
+ declare class Logger {
7
+ #private;
8
+ private constructor();
9
+ static get instance(): Logger;
10
+ /**
11
+ * Logging message with specific level.
12
+ *
13
+ * @param level
14
+ * @param message
15
+ * @param args Additional metadata.
16
+ */
17
+ log(level: LoggingLevelName, message: string, ...args: any[]): void;
18
+ /**
19
+ * Logging HTTP I/O.
20
+ *
21
+ * @param request Node.js built-in `IncomingMessage` instance from `http` module.
22
+ * @param response Node.js built-in `ServerResponse` instance from `http` module.
23
+ */
24
+ log(request: HttpRequest, response: HttpResponse): Promise<void>;
25
+ /**
26
+ * Logging errors in detail.
27
+ *
28
+ * @param error
29
+ */
30
+ log(error: Error): void;
31
+ }
32
+ declare const _default: Logger;
33
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: import("logform").Format;
2
+ export default _default;
@@ -0,0 +1,8 @@
1
+ /// <reference types="node" />
2
+ import { IncomingMessage as HttpRequest, ServerResponse as HttpResponse } from 'http';
3
+ import morgan from 'morgan';
4
+ declare module 'morgan' {
5
+ const combined: morgan.FormatFn;
6
+ }
7
+ declare const _default: morgan.FormatFn<HttpRequest, HttpResponse>;
8
+ export default _default;
@@ -0,0 +1,5 @@
1
+ export declare const name = "debug";
2
+ export declare const level: 5;
3
+ export declare const label: "DEBUG";
4
+ declare const _default: null;
5
+ export default _default;
@@ -0,0 +1,13 @@
1
+ declare type LoggingData = {
2
+ level: string;
3
+ message: string;
4
+ } & Record<PropertyKey, any>;
5
+ declare type HandledData = {
6
+ label: string;
7
+ payload: string;
8
+ };
9
+ export declare const name = "error";
10
+ export declare const level: 1;
11
+ export declare const label: "ERROR";
12
+ export default function handle(data: LoggingData): HandledData | undefined;
13
+ export {};
@@ -0,0 +1,4 @@
1
+ export declare const name = "fatal";
2
+ export declare const level: 0;
3
+ export declare const label: "FATAL";
4
+ export { default } from './error';
@@ -0,0 +1,5 @@
1
+ export declare const name = "http";
2
+ export declare const level: 4;
3
+ export declare const label: "HTTP";
4
+ declare const _default: null;
5
+ export default _default;
@@ -0,0 +1,12 @@
1
+ import * as FatalHandler from './fatal';
2
+ import * as ErrorHandler from './error';
3
+ import * as WarningHandler from './warning';
4
+ import * as NoticeHandler from './notice';
5
+ import * as InfoHandler from './info';
6
+ import * as HttpHandler from './http';
7
+ import * as QueryHandler from './query';
8
+ import * as VerboseHandler from './verbose';
9
+ import * as DebugHandler from './debug';
10
+ declare const handlers: (typeof FatalHandler | typeof ErrorHandler | typeof WarningHandler | typeof NoticeHandler | typeof InfoHandler | typeof HttpHandler | typeof QueryHandler | typeof VerboseHandler | typeof DebugHandler)[];
11
+ export declare type LoggingLevelName = (typeof handlers extends (infer T)[] ? T : never)['name'];
12
+ export default handlers;
@@ -0,0 +1,5 @@
1
+ export declare const name = "info";
2
+ export declare const level: 3;
3
+ export declare const label: "INFO";
4
+ declare const _default: null;
5
+ export default _default;
@@ -0,0 +1,5 @@
1
+ export declare const name = "notice";
2
+ export declare const level: 3;
3
+ export declare const label: "NOTICE";
4
+ declare const _default: null;
5
+ export default _default;
@@ -0,0 +1,13 @@
1
+ declare type LoggingData = {
2
+ level: string;
3
+ message: string;
4
+ } & Record<PropertyKey, any>;
5
+ declare type HandledData = {
6
+ label: string;
7
+ payload: string;
8
+ };
9
+ export declare const name = "query";
10
+ export declare const level: 4;
11
+ export declare const label: "QUERY";
12
+ export default function handle(data: LoggingData): HandledData | undefined;
13
+ export {};
@@ -0,0 +1,5 @@
1
+ export declare const name = "verbose";
2
+ export declare const level: 5;
3
+ export declare const label: "VERBOSE";
4
+ declare const _default: null;
5
+ export default _default;
@@ -0,0 +1,5 @@
1
+ export declare const name = "warning";
2
+ export declare const level: 2;
3
+ export declare const label: "WARNING";
4
+ declare const _default: null;
5
+ export default _default;
@@ -0,0 +1,12 @@
1
+ import { Chalk } from 'chalk';
2
+ declare const ColorScheme: {
3
+ readonly Critical: number;
4
+ readonly Warning: number;
5
+ readonly Regular: number;
6
+ readonly Http: number;
7
+ readonly Query: number;
8
+ readonly Loud: number;
9
+ };
10
+ declare type ColorScheme = typeof ColorScheme[keyof typeof ColorScheme];
11
+ export declare function getChalkOf(colorSet: ColorScheme): Chalk;
12
+ export default ColorScheme;
@@ -0,0 +1,18 @@
1
+ export declare const ExecutionMode: {
2
+ readonly DevelopmentMode: "development";
3
+ readonly ProductionMode: "production";
4
+ };
5
+ export declare const ClusteringMode: {
6
+ readonly MasterProcess: 0;
7
+ readonly WorkerProcess: 1;
8
+ };
9
+ export declare const ThreadingMode: {
10
+ readonly MainThread: 0;
11
+ readonly WorkerThread: 1;
12
+ };
13
+ export declare type ExecutionMode = typeof ExecutionMode[keyof typeof ExecutionMode];
14
+ export declare type ClusteringMode = typeof ClusteringMode[keyof typeof ClusteringMode];
15
+ export declare type ThreadingMode = typeof ThreadingMode[keyof typeof ThreadingMode];
16
+ export declare const executionMode: ExecutionMode;
17
+ export declare const clusteringMode: ClusteringMode;
18
+ export declare const threadingMode: ThreadingMode;
@@ -0,0 +1,2 @@
1
+ import ColorScheme from './color-scheme';
2
+ export default function decorateLabel<T extends string>(label: T, scheme: ColorScheme): T;
@@ -0,0 +1,13 @@
1
+ declare const LoggingLevel: {
2
+ readonly Fatal: 0;
3
+ readonly Error: 1;
4
+ readonly Warning: 2;
5
+ readonly Notice: 3;
6
+ readonly Info: 3;
7
+ readonly Http: 4;
8
+ readonly Query: 4;
9
+ readonly Verbose: 5;
10
+ readonly Debug: 5;
11
+ };
12
+ declare type LoggingLevel = typeof LoggingLevel[keyof typeof LoggingLevel];
13
+ export default LoggingLevel;
@@ -0,0 +1 @@
1
+ export { default } from './classes/logger';
@@ -1,196 +0,0 @@
1
- /// <reference types="morgan" />
2
- /// <reference types="node" />
3
- /// <reference types="bluebird" />
4
- declare module "helpers/logging-level" {
5
- const LoggingLevel: {
6
- readonly Fatal: 0;
7
- readonly Error: 1;
8
- readonly Warning: 2;
9
- readonly Notice: 3;
10
- readonly Info: 3;
11
- readonly Http: 4;
12
- readonly Query: 4;
13
- readonly Verbose: 5;
14
- readonly Debug: 5;
15
- };
16
- type LoggingLevel = typeof LoggingLevel[keyof typeof LoggingLevel];
17
- export default LoggingLevel;
18
- }
19
- declare module "helpers/color-scheme" {
20
- import { Chalk } from 'chalk';
21
- const ColorScheme: {
22
- readonly Critical: number;
23
- readonly Warning: number;
24
- readonly Regular: number;
25
- readonly Http: number;
26
- readonly Query: number;
27
- readonly Loud: number;
28
- };
29
- type ColorScheme = typeof ColorScheme[keyof typeof ColorScheme];
30
- export function getChalkOf(colorSet: ColorScheme): Chalk;
31
- export default ColorScheme;
32
- }
33
- declare module "helpers/label-decorator" {
34
- import ColorScheme from "helpers/color-scheme";
35
- export default function decorateLabel<T extends string>(label: T, scheme: ColorScheme): T;
36
- }
37
- declare module "handlers/error" {
38
- type LoggingData = {
39
- level: string;
40
- message: string;
41
- } & Record<PropertyKey, any>;
42
- type HandledData = {
43
- label: string;
44
- payload: string;
45
- };
46
- export const name = "error";
47
- export const level: 1;
48
- export const label: "ERROR";
49
- export default function handle(data: LoggingData): HandledData | undefined;
50
- }
51
- declare module "handlers/fatal" {
52
- export const name = "fatal";
53
- export const level: 0;
54
- export const label: "FATAL";
55
- export { default } from "handlers/error";
56
- }
57
- declare module "handlers/warning" {
58
- export const name = "warning";
59
- export const level: 2;
60
- export const label: "WARNING";
61
- const _default: null;
62
- export default _default;
63
- }
64
- declare module "handlers/notice" {
65
- export const name = "notice";
66
- export const level: 3;
67
- export const label: "NOTICE";
68
- const _default_1: null;
69
- export default _default_1;
70
- }
71
- declare module "handlers/info" {
72
- export const name = "info";
73
- export const level: 3;
74
- export const label: "INFO";
75
- const _default_2: null;
76
- export default _default_2;
77
- }
78
- declare module "handlers/http" {
79
- export const name = "http";
80
- export const level: 4;
81
- export const label: "HTTP";
82
- const _default_3: null;
83
- export default _default_3;
84
- }
85
- declare module "handlers/query" {
86
- type LoggingData = {
87
- level: string;
88
- message: string;
89
- } & Record<PropertyKey, any>;
90
- type HandledData = {
91
- label: string;
92
- payload: string;
93
- };
94
- export const name = "query";
95
- export const level: 4;
96
- export const label: "QUERY";
97
- export default function handle(data: LoggingData): HandledData | undefined;
98
- }
99
- declare module "handlers/verbose" {
100
- export const name = "verbose";
101
- export const level: 5;
102
- export const label: "VERBOSE";
103
- const _default_4: null;
104
- export default _default_4;
105
- }
106
- declare module "handlers/debug" {
107
- export const name = "debug";
108
- export const level: 5;
109
- export const label: "DEBUG";
110
- const _default_5: null;
111
- export default _default_5;
112
- }
113
- declare module "handlers/index" {
114
- import * as FatalHandler from "handlers/fatal";
115
- import * as ErrorHandler from "handlers/error";
116
- import * as WarningHandler from "handlers/warning";
117
- import * as NoticeHandler from "handlers/notice";
118
- import * as InfoHandler from "handlers/info";
119
- import * as HttpHandler from "handlers/http";
120
- import * as QueryHandler from "handlers/query";
121
- import * as VerboseHandler from "handlers/verbose";
122
- import * as DebugHandler from "handlers/debug";
123
- const handlers: (typeof FatalHandler | typeof ErrorHandler | typeof WarningHandler | typeof NoticeHandler | typeof InfoHandler | typeof HttpHandler | typeof QueryHandler | typeof VerboseHandler | typeof DebugHandler)[];
124
- export type LoggingLevelName = (typeof handlers extends (infer T)[] ? T : never)['name'];
125
- export default handlers;
126
- }
127
- declare module "formatters/command-line" {
128
- const _default_6: import("logform").Format;
129
- export default _default_6;
130
- }
131
- declare module "helpers/constants" {
132
- export const ExecutionMode: {
133
- readonly DevelopmentMode: "development";
134
- readonly ProductionMode: "production";
135
- };
136
- export const ClusteringMode: {
137
- readonly MasterProcess: 0;
138
- readonly WorkerProcess: 1;
139
- };
140
- export const ThreadingMode: {
141
- readonly MainThread: 0;
142
- readonly WorkerThread: 1;
143
- };
144
- export type ExecutionMode = typeof ExecutionMode[keyof typeof ExecutionMode];
145
- export type ClusteringMode = typeof ClusteringMode[keyof typeof ClusteringMode];
146
- export type ThreadingMode = typeof ThreadingMode[keyof typeof ThreadingMode];
147
- export const executionMode: ExecutionMode;
148
- export const clusteringMode: ClusteringMode;
149
- export const threadingMode: ThreadingMode;
150
- }
151
- declare module "formatters/morgan" {
152
- import { IncomingMessage as HttpRequest, ServerResponse as HttpResponse } from 'http';
153
- import morgan from 'morgan';
154
- module 'morgan' {
155
- const combined: morgan.FormatFn;
156
- }
157
- const _default_7: morgan.FormatFn<HttpRequest, HttpResponse>;
158
- export default _default_7;
159
- }
160
- declare module "classes/logger" {
161
- import 'reflect-metadata';
162
- import { IncomingMessage as HttpRequest, ServerResponse as HttpResponse } from 'http';
163
- import Promise from 'bluebird';
164
- import type { LoggingLevelName } from "handlers/index";
165
- class Logger {
166
- #private;
167
- private constructor();
168
- static get instance(): Logger;
169
- /**
170
- * Logging message with specific level.
171
- *
172
- * @param level
173
- * @param message
174
- * @param args Additional metadata.
175
- */
176
- log(level: LoggingLevelName, message: string, ...args: any[]): void;
177
- /**
178
- * Logging HTTP I/O.
179
- *
180
- * @param request Node.js built-in `IncomingMessage` instance from `http` module.
181
- * @param response Node.js built-in `ServerResponse` instance from `http` module.
182
- */
183
- log(request: HttpRequest, response: HttpResponse): Promise<void>;
184
- /**
185
- * Logging errors in detail.
186
- *
187
- * @param error
188
- */
189
- log(error: Error): void;
190
- }
191
- const _default_8: Logger;
192
- export default _default_8;
193
- }
194
- declare module "index" {
195
- export { default } from "classes/logger";
196
- }