@aristid/leav-types 1.4.1-79a6219c → 1.4.1-86f093d7

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.
@@ -63,6 +63,12 @@ export declare namespace mailer {
63
63
  export { port_1 as port };
64
64
  let secure_1: boolean;
65
65
  export { secure_1 as secure };
66
+ export namespace from {
67
+ let name_1: string;
68
+ export { name_1 as name };
69
+ let email_2: string;
70
+ export { email_2 as email };
71
+ }
66
72
  export namespace auth_1 {
67
73
  export let user: string;
68
74
  let password_1: string;
@@ -90,12 +96,6 @@ export declare namespace lang {
90
96
  let _default: string;
91
97
  export { _default as default };
92
98
  }
93
- export declare namespace logs {
94
- let level: string;
95
- let transport: string;
96
- let destinationFile: string;
97
- let useJsonFormat: boolean;
98
- }
99
99
  export declare namespace permissions {
100
100
  let _default_1: boolean;
101
101
  export { _default_1 as default };
@@ -1,10 +1,6 @@
1
1
  export namespace server {
2
2
  let allowIntrospection: boolean;
3
3
  }
4
- export namespace logs {
5
- let level: string;
6
- let transport: string;
7
- }
8
4
  export namespace auth {
9
5
  let refreshTokenExpiration: string;
10
6
  namespace cookie {
@@ -1,4 +1,3 @@
1
- import { type ILoggerConfig } from '@leav/logger';
2
1
  import { type Options } from 'amqplib';
3
2
  import { type IKeyValue } from './shared';
4
3
  export interface IConfig {
@@ -10,7 +9,6 @@ export interface IConfig {
10
9
  auth: IAuth;
11
10
  mailer: IMailer;
12
11
  lang: ILang;
13
- logs: ILogs;
14
12
  permissions: IPermissions;
15
13
  amqp: IAmqp;
16
14
  redis: IRedis;
@@ -100,6 +98,10 @@ export interface IMailer {
100
98
  host: string;
101
99
  port: number;
102
100
  secure: boolean;
101
+ from: {
102
+ name: string;
103
+ email: string;
104
+ };
103
105
  auth: {
104
106
  user: string;
105
107
  password: string;
@@ -109,7 +111,6 @@ export interface ILang {
109
111
  available: string[];
110
112
  default: string;
111
113
  }
112
- export type ILogs = ILoggerConfig;
113
114
  export interface IPermissions {
114
115
  default: boolean;
115
116
  enableCache: boolean;
@@ -22,8 +22,8 @@ export interface IRecordForm {
22
22
  sidePanel: IFormSidePanel;
23
23
  }
24
24
  export declare enum FormElementTypes {
25
- field = "field",
26
- layout = "layout"
25
+ FIELD = "field",
26
+ LAYOUT = "layout"
27
27
  }
28
28
  export type IFormStrict = Required<IForm>;
29
29
  export interface IFormElementsDependency {
@@ -88,11 +88,6 @@ export interface IValueDomain {
88
88
  ctx: IQueryInfos;
89
89
  }): Promise<IValue>;
90
90
  runActionsList(params: IRunActionListParams): Promise<IValue[]>;
91
- runActionsListAndFormatOnValue({ library, value, ctx }: {
92
- library: string;
93
- value: IValue;
94
- ctx: IQueryInfos;
95
- }): Promise<IValue[]>;
96
91
  }
97
92
  export interface IValueDomainDeps {
98
93
  config: Config.IConfig;
@@ -0,0 +1,14 @@
1
+ interface ICallerInfo {
2
+ path: string;
3
+ line: string;
4
+ col: string;
5
+ }
6
+ export declare class LoggerCallStack {
7
+ private callerLineIndexInStack;
8
+ getCallStackTrace(): string | null;
9
+ getLocationInfo(): ICallerInfo | null;
10
+ private getStackLines;
11
+ private detectCallLineIndexInStack;
12
+ private callStackTraceLongEnough;
13
+ }
14
+ export {};
@@ -0,0 +1,2 @@
1
+ import winston from 'winston';
2
+ export declare function catchErrorFormatter(onErrorLog?: (message: string, meta: any, getCallStackTrace: () => string) => void): winston.Logform.FormatWrap | null;
@@ -3,7 +3,7 @@ export interface ILoggerConfig {
3
3
  * Log level (error, warn, info, log, verbose, debug, silly)
4
4
  * @default info
5
5
  */
6
- level: string;
6
+ level?: string;
7
7
  /**
8
8
  * If true, disable all logging
9
9
  * Default: true if TS_JEST=1 (tests), false otherwise
@@ -18,7 +18,36 @@ export interface ILoggerConfig {
18
18
  * Default: false (plain text)
19
19
  */
20
20
  useJsonFormat?: boolean;
21
- onErrorLog?: (message: string, meta: any) => void;
21
+ /**
22
+ * If true, add timestamp to each log line, ISO format
23
+ */
24
+ addTimestamp?: boolean;
25
+ /**
26
+ * If true, add file and line number of the code that called the logger function (error, warn, info, debug, etc.)
27
+ */
28
+ addLocationInfo?: boolean;
29
+ /**
30
+ * Add those metadata to all logs
31
+ */
32
+ additionalMeta?: {
33
+ /**
34
+ * any string to identify the application those logs came from
35
+ */
36
+ app?: string;
37
+ /**
38
+ * any string to identify each client those logs came from
39
+ */
40
+ client?: string;
41
+ /**
42
+ * environment, like production, development, test, integration
43
+ */
44
+ env?: string;
45
+ /**
46
+ * application version, maybe semver format
47
+ */
48
+ version?: string;
49
+ };
50
+ onErrorLog?: (message: string, meta: any, getCallStackTrace: () => string) => void;
22
51
  }
23
52
  export declare function envToBool(value: string, defaultValue?: boolean): boolean;
24
- export declare const defaultLoggerConfig: ILoggerConfig;
53
+ export declare const defaultLoggerConfig: ILoggerConfig & Required<Omit<ILoggerConfig, 'onErrorLog'>>;
@@ -0,0 +1,2 @@
1
+ import winston from 'winston';
2
+ export declare const addLocationInfoInLog: winston.Logform.FormatWrap;
@@ -1,5 +1,5 @@
1
1
  import * as amqp from 'amqplib';
2
- import { type IAmqp, type onMessageFunc } from './types/amqp';
2
+ import { type IAmqp, type OnMessageFunc } from './types/amqp';
3
3
  export interface IAmqpService {
4
4
  publisher: {
5
5
  connection: amqp.ChannelModel;
@@ -10,7 +10,7 @@ export interface IAmqpService {
10
10
  channel: amqp.ConfirmChannel;
11
11
  };
12
12
  publish(exchange: string, routingKey: string, msg: string, priority?: number): Promise<void>;
13
- consume(queue: string, routingKey: string, onMessage: onMessageFunc, consumerTag?: string): Promise<amqp.Replies.Consume>;
13
+ consume(queue: string, routingKey: string, onMessage: OnMessageFunc, consumerTag?: string): Promise<amqp.Replies.Consume>;
14
14
  close(): Promise<void>;
15
15
  }
16
16
  interface IDeps {
@@ -12,4 +12,4 @@ export interface IAmqpConn {
12
12
  export interface IMessageBody {
13
13
  [key: string]: any;
14
14
  }
15
- export type onMessageFunc = (msg: amqp.ConsumeMessage) => Promise<void>;
15
+ export type OnMessageFunc = (msg: amqp.ConsumeMessage) => Promise<void>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aristid/leav-types",
3
- "version": "1.4.1-79a6219c",
3
+ "version": "1.4.1-86f093d7",
4
4
  "description": "Shared Leav types",
5
5
  "scripts": {
6
6
  "tscheck": "",
@@ -1,10 +0,0 @@
1
- import winston from 'winston';
2
- interface ICallerInfo {
3
- path: string;
4
- line: string;
5
- col: string;
6
- }
7
- export declare function getLocationInfo(): ICallerInfo | null;
8
- export declare const addLocationInfoInLog: winston.Logform.FormatWrap;
9
- export declare const mergeLocationInfoInLog: winston.Logform.FormatWrap;
10
- export {};