@spinajs/orm 1.0.60 → 1.2.32

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.
Files changed (91) hide show
  1. package/README.md +11 -2
  2. package/lib/builders.d.ts +30 -23
  3. package/lib/builders.js +74 -195
  4. package/lib/builders.js.map +1 -1
  5. package/lib/decorators.d.ts +18 -19
  6. package/lib/decorators.js +30 -30
  7. package/lib/decorators.js.map +1 -1
  8. package/lib/driver.d.ts +10 -9
  9. package/lib/driver.js +10 -20
  10. package/lib/driver.js.map +1 -1
  11. package/lib/exceptions.d.ts +6 -0
  12. package/lib/exceptions.js +11 -0
  13. package/lib/exceptions.js.map +1 -0
  14. package/lib/helpers.js +2 -2
  15. package/lib/helpers.js.map +1 -1
  16. package/lib/hydrators.d.ts +4 -4
  17. package/lib/hydrators.js +6 -6
  18. package/lib/hydrators.js.map +1 -1
  19. package/lib/index.d.ts +0 -1
  20. package/lib/index.js +1 -2
  21. package/lib/index.js.map +1 -1
  22. package/lib/interfaces.d.ts +19 -27
  23. package/lib/interfaces.js +14 -14
  24. package/lib/interfaces.js.map +1 -1
  25. package/lib/log-common/src/index.d.ts +180 -0
  26. package/lib/log-common/src/index.js +49 -0
  27. package/lib/log-common/src/index.js.map +1 -0
  28. package/lib/model.d.ts +55 -53
  29. package/lib/model.js +132 -149
  30. package/lib/model.js.map +1 -1
  31. package/lib/orm/src/builders.d.ts +429 -0
  32. package/lib/orm/src/builders.js +1082 -0
  33. package/lib/orm/src/builders.js.map +1 -0
  34. package/lib/orm/src/cli.d.ts +1 -0
  35. package/lib/orm/src/cli.js +2 -0
  36. package/lib/orm/src/cli.js.map +1 -0
  37. package/lib/orm/src/converters.d.ts +9 -0
  38. package/lib/orm/src/converters.js +22 -0
  39. package/lib/orm/src/converters.js.map +1 -0
  40. package/lib/orm/src/decorators.d.ts +122 -0
  41. package/lib/orm/src/decorators.js +380 -0
  42. package/lib/orm/src/decorators.js.map +1 -0
  43. package/lib/orm/src/driver.d.ts +77 -0
  44. package/lib/orm/src/driver.js +84 -0
  45. package/lib/orm/src/driver.js.map +1 -0
  46. package/lib/orm/src/enums.d.ts +111 -0
  47. package/lib/orm/src/enums.js +122 -0
  48. package/lib/orm/src/enums.js.map +1 -0
  49. package/lib/orm/src/exceptions.d.ts +6 -0
  50. package/lib/orm/src/exceptions.js +11 -0
  51. package/lib/orm/src/exceptions.js.map +1 -0
  52. package/lib/orm/src/hydrators.d.ts +16 -0
  53. package/lib/orm/src/hydrators.js +70 -0
  54. package/lib/orm/src/hydrators.js.map +1 -0
  55. package/lib/orm/src/index.d.ts +12 -0
  56. package/lib/orm/src/index.js +25 -0
  57. package/lib/orm/src/index.js.map +1 -0
  58. package/lib/orm/src/interfaces.d.ts +615 -0
  59. package/lib/orm/src/interfaces.js +186 -0
  60. package/lib/orm/src/interfaces.js.map +1 -0
  61. package/lib/orm/src/model.d.ts +135 -0
  62. package/lib/orm/src/model.js +449 -0
  63. package/lib/orm/src/model.js.map +1 -0
  64. package/lib/orm/src/orm.d.ts +59 -0
  65. package/lib/orm/src/orm.js +278 -0
  66. package/lib/orm/src/orm.js.map +1 -0
  67. package/lib/orm/src/relations.d.ts +96 -0
  68. package/lib/orm/src/relations.js +503 -0
  69. package/lib/orm/src/relations.js.map +1 -0
  70. package/lib/orm/src/statements.d.ts +132 -0
  71. package/lib/orm/src/statements.js +257 -0
  72. package/lib/orm/src/statements.js.map +1 -0
  73. package/lib/orm/src/types.d.ts +2 -0
  74. package/lib/orm/src/types.js +3 -0
  75. package/lib/orm/src/types.js.map +1 -0
  76. package/lib/orm/src/wrappers.d.ts +5 -0
  77. package/lib/orm/src/wrappers.js +13 -0
  78. package/lib/orm/src/wrappers.js.map +1 -0
  79. package/lib/orm.d.ts +9 -9
  80. package/lib/orm.js +69 -47
  81. package/lib/orm.js.map +1 -1
  82. package/lib/relations.d.ts +14 -13
  83. package/lib/relations.js +60 -81
  84. package/lib/relations.js.map +1 -1
  85. package/lib/statements.d.ts +1 -1
  86. package/lib/statements.js +19 -21
  87. package/lib/statements.js.map +1 -1
  88. package/lib/wrappers.d.ts +1 -1
  89. package/lib/wrappers.js.map +1 -1
  90. package/package.json +37 -61
  91. package/LICENSE +0 -674
@@ -3,14 +3,14 @@ export declare abstract class ModelHydrator {
3
3
  abstract hydrate(target: any, values: any): void;
4
4
  }
5
5
  export declare class OneToOneRelationHydrator extends ModelHydrator {
6
- hydrate<T>(target: ModelBase<T>, values: any): void;
6
+ hydrate(target: ModelBase, values: any): void;
7
7
  }
8
8
  export declare class DbPropertyHydrator extends ModelHydrator {
9
- hydrate<T>(target: ModelBase<T>, values: any): void;
9
+ hydrate(target: ModelBase, values: any): void;
10
10
  }
11
11
  export declare class NonDbPropertyHydrator extends ModelHydrator {
12
- hydrate<T>(target: ModelBase<T>, values: any): void;
12
+ hydrate(target: ModelBase, values: any): void;
13
13
  }
14
14
  export declare class JunctionModelPropertyHydrator extends ModelHydrator {
15
- hydrate<T>(target: ModelBase<T>, values: any): void;
15
+ hydrate(target: ModelBase, values: any): void;
16
16
  }
package/lib/hydrators.js CHANGED
@@ -14,7 +14,7 @@ class OneToOneRelationHydrator extends ModelHydrator {
14
14
  for (const [key, val] of descriptor.Relations) {
15
15
  if (values[key] != null) {
16
16
  const entity = target;
17
- entity[key] = !di_1.isConstructor(val.TargetModel) ? new (val.TargetModel())() : new val.TargetModel();
17
+ entity[key] = !(0, di_1.isConstructor)(val.TargetModel) ? new (val.TargetModel())() : new val.TargetModel();
18
18
  entity[key].hydrate(values[key]);
19
19
  delete target[val.ForeignKey];
20
20
  }
@@ -30,10 +30,10 @@ class DbPropertyHydrator extends ModelHydrator {
30
30
  }
31
31
  // filter out model joined properties
32
32
  // we handle it in later
33
- const keys = Object.keys(values).filter(k => { var _a; return (_a = descriptor.Columns) === null || _a === void 0 ? void 0 : _a.find(c => c.Name === k); });
34
- keys.forEach(k => {
33
+ const keys = Object.keys(values).filter((k) => { var _a; return (_a = descriptor.Columns) === null || _a === void 0 ? void 0 : _a.find((c) => c.Name === k); });
34
+ keys.forEach((k) => {
35
35
  var _a;
36
- const column = (_a = descriptor.Columns) === null || _a === void 0 ? void 0 : _a.find(c => c.Name === k);
36
+ const column = (_a = descriptor.Columns) === null || _a === void 0 ? void 0 : _a.find((c) => c.Name === k);
37
37
  target[k] = column.Converter ? column.Converter.fromDB(values[k]) : values[k];
38
38
  });
39
39
  }
@@ -46,8 +46,8 @@ class NonDbPropertyHydrator extends ModelHydrator {
46
46
  throw new Error(`cannot hydrate model ${target.constructor.name}, no model descriptor found`);
47
47
  }
48
48
  // get only properties that are not in DB
49
- const keys = Object.keys(values).filter(k => { var _a; return ((_a = descriptor.Columns) === null || _a === void 0 ? void 0 : _a.find(c => c.Name === k)) === undefined; });
50
- keys.forEach(k => {
49
+ const keys = Object.keys(values).filter((k) => { var _a; return ((_a = descriptor.Columns) === null || _a === void 0 ? void 0 : _a.find((c) => c.Name === k)) === undefined; });
50
+ keys.forEach((k) => {
51
51
  target[k] = values[k];
52
52
  });
53
53
  }
@@ -1 +1 @@
1
- {"version":3,"file":"hydrators.js","sourceRoot":"","sources":["../src/hydrators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hydrators.js","sourceRoot":"","sources":["../src/hydrators.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  export * from './interfaces';
2
2
  export * from './statements';
3
3
  export * from './builders';
4
- export * from './helpers';
5
4
  export * from './model';
6
5
  export * from './relations';
7
6
  export * from './orm';
package/lib/index.js CHANGED
@@ -7,13 +7,12 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
7
7
  o[k2] = m[k];
8
8
  }));
9
9
  var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
- for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./interfaces"), exports);
14
14
  __exportStar(require("./statements"), exports);
15
15
  __exportStar(require("./builders"), exports);
16
- __exportStar(require("./helpers"), exports);
17
16
  __exportStar(require("./model"), exports);
18
17
  __exportStar(require("./relations"), exports);
19
18
  __exportStar(require("./orm"), exports);
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAA6B;AAC7B,+CAA6B;AAC7B,6CAA2B;AAC3B,4CAA0B;AAC1B,0CAAwB;AACxB,8CAA4B;AAC5B,wCAAsB;AACtB,0CAAwB;AACxB,+CAA6B;AAC7B,8CAA4B;AAC5B,2CAAyB;AACzB,+CAA6B;AAC7B,6CAA2B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAA6B;AAC7B,+CAA6B;AAC7B,6CAA2B;AAC3B,0CAAwB;AACxB,8CAA4B;AAC5B,wCAAsB;AACtB,0CAAwB;AACxB,+CAA6B;AAC7B,8CAA4B;AAC5B,2CAAyB;AACzB,+CAA6B;AAC7B,6CAA2B"}
@@ -3,6 +3,7 @@ import { SORT_ORDER, WhereBoolean } from './enums';
3
3
  import { IQueryStatement, WrapStatement } from './statements';
4
4
  import { WhereFunction } from './types';
5
5
  import { OrmDriver } from './driver';
6
+ import { Constructor } from '@spinajs/di';
6
7
  import { ModelBase } from './model';
7
8
  export declare enum QueryContext {
8
9
  Insert = 0,
@@ -113,12 +114,6 @@ export interface IDriverOptions {
113
114
  };
114
115
  };
115
116
  DefaultConnection: boolean;
116
- /**
117
- * Debug queries sent to orm driver. It writes raw queries queries to log for debug purposes
118
- */
119
- Debug?: {
120
- Queries?: boolean;
121
- };
122
117
  }
123
118
  export interface IMigrationDescriptor {
124
119
  /**
@@ -189,18 +184,18 @@ export interface IDiscriminationMap {
189
184
  /**
190
185
  * Field values mapped for proper models
191
186
  */
192
- Models: Map<string, Constructor<ModelBase<any>>>;
187
+ Models: Map<string, Constructor<ModelBase>>;
193
188
  }
194
189
  export interface IDiscriminationEntry {
195
190
  Key: string;
196
- Value: Constructor<ModelBase<any>>;
191
+ Value: Constructor<ModelBase>;
197
192
  }
198
193
  export declare enum RelationType {
199
194
  One = 0,
200
195
  Many = 1,
201
196
  ManyToMany = 2
202
197
  }
203
- export declare type ForwardRefFunction = () => Constructor<ModelBase<any>>;
198
+ export declare type ForwardRefFunction = () => Constructor<ModelBase>;
204
199
  export interface IRelationDescriptor {
205
200
  /**
206
201
  * Name of relations, defaults for property name in model that owns relation
@@ -213,11 +208,11 @@ export interface IRelationDescriptor {
213
208
  /**
214
209
  * Relation model ( foreign )
215
210
  */
216
- TargetModel: Constructor<ModelBase<any>> | ForwardRefFunction;
211
+ TargetModel: Constructor<ModelBase> | ForwardRefFunction;
217
212
  /**
218
213
  * Relation owner
219
214
  */
220
- SourceModel: Constructor<ModelBase<any>>;
215
+ SourceModel: Constructor<ModelBase>;
221
216
  /**
222
217
  * Relation foreign key (one to one, one to many)
223
218
  */
@@ -229,7 +224,7 @@ export interface IRelationDescriptor {
229
224
  /**
230
225
  * Used in many to many relations, model for join table
231
226
  */
232
- JunctionModel?: Constructor<ModelBase<any>>;
227
+ JunctionModel?: Constructor<ModelBase>;
233
228
  /**
234
229
  * Join table foreign keys, defaults to auto generated field names. Can be override.
235
230
  */
@@ -242,7 +237,7 @@ export interface IRelationDescriptor {
242
237
  }
243
238
  export interface IJunctionProperty {
244
239
  Name: string;
245
- Model: Constructor<ModelBase<any>>;
240
+ Model: Constructor<ModelBase>;
246
241
  }
247
242
  /**
248
243
  * Table column description, used in models to build schema, validate & other stuff
@@ -351,13 +346,10 @@ export declare abstract class OrmMigration {
351
346
  * Migrate up - create tables, indices etc.
352
347
  * Be aware that model function are not avaible yet. To fill tables with
353
348
  * data use fill function
354
- *
355
- * @param connection
356
349
  */
357
350
  abstract up(connection: OrmDriver): Promise<void>;
358
351
  /**
359
352
  * Migrate down - undo changes made in up
360
- * @param connection
361
353
  */
362
354
  abstract down(connection: OrmDriver): Promise<void>;
363
355
  }
@@ -408,7 +400,7 @@ export interface IColumnsBuilder {
408
400
  *
409
401
  * Select columns from db result ( multiple at once )
410
402
  *
411
- * @param names column names to select
403
+ * @param names - column names to select
412
404
  */
413
405
  columns(names: string[]): this;
414
406
  /**
@@ -419,20 +411,20 @@ export interface IColumnsBuilder {
419
411
  * Selects single column from DB result with optional alias
420
412
  * Can be used multiple times
421
413
  *
422
- * @param column column to select
423
- * @param alias column alias ( optional )
414
+ * @param column - column to select
415
+ * @param alias - column alias ( optional )
424
416
  */
425
417
  select(column: string, alias?: string): this;
426
418
  /**
427
419
  * Selects custom values from DB. eg. Count(*)
428
420
  *
429
- * @param rawQuery raw query to be executed
421
+ * @param rawQuery - raw query to be executed
430
422
  */
431
423
  select(rawQuery: RawQuery): this;
432
424
  /**
433
425
  * Selects multiple columns at once with aliases. Map key property is column name, value is its alias
434
426
  *
435
- * @param columns column list with aliases
427
+ * @param columns - column list with aliases
436
428
  */
437
429
  select(columns: Map<string, string>): this;
438
430
  }
@@ -576,10 +568,10 @@ export declare abstract class GroupByQueryCompiler implements IQueryCompiler {
576
568
  export interface IBuilderMiddleware {
577
569
  /**
578
570
  *
579
- * Executed AFTER query is executed in DB and fetcher raw data
571
+ * Executed AFTER query is executed in DB and raw data is fetched
580
572
  * Use it to transform DB data before everything else
581
573
  *
582
- * @param data raw data fetched from DB
574
+ * @param data - raw data fetched from DB
583
575
  */
584
576
  afterData(data: any[]): any[];
585
577
  /**
@@ -587,15 +579,15 @@ export interface IBuilderMiddleware {
587
579
  * override model creation logic. If null is returned, default model
588
580
  * is executed
589
581
  *
590
- * @param data raw data to create
582
+ * @param data - raw data to create
591
583
  */
592
- modelCreation(data: any): ModelBase<any>;
584
+ modelCreation(data: any): ModelBase;
593
585
  /**
594
586
  * executed after model was created ( all returned data by query is executed)
595
587
  *
596
- * @param data hydrated data. Models are created and hydrated with data
588
+ * @param data - hydrated data. Models are created and hydrated with data
597
589
  */
598
- afterHydration(data: Array<ModelBase<any>>): Promise<any[] | void>;
590
+ afterHydration(data: ModelBase[]): Promise<any[] | void>;
599
591
  }
600
592
  export declare class ValueConverter implements IValueConverter {
601
593
  /**
package/lib/interfaces.js CHANGED
@@ -67,7 +67,7 @@ var RelationType;
67
67
  let OrmMigration = class OrmMigration {
68
68
  };
69
69
  OrmMigration = __decorate([
70
- di_1.NewInstance()
70
+ (0, di_1.NewInstance)()
71
71
  ], OrmMigration);
72
72
  exports.OrmMigration = OrmMigration;
73
73
  /**
@@ -77,79 +77,79 @@ exports.OrmMigration = OrmMigration;
77
77
  let RecursiveQueryCompiler = class RecursiveQueryCompiler {
78
78
  };
79
79
  RecursiveQueryCompiler = __decorate([
80
- di_1.NewInstance()
80
+ (0, di_1.NewInstance)()
81
81
  ], RecursiveQueryCompiler);
82
82
  exports.RecursiveQueryCompiler = RecursiveQueryCompiler;
83
83
  let SelectQueryCompiler = class SelectQueryCompiler {
84
84
  };
85
85
  SelectQueryCompiler = __decorate([
86
- di_1.NewInstance()
86
+ (0, di_1.NewInstance)()
87
87
  ], SelectQueryCompiler);
88
88
  exports.SelectQueryCompiler = SelectQueryCompiler;
89
89
  let JoinQueryCompiler = class JoinQueryCompiler {
90
90
  };
91
91
  JoinQueryCompiler = __decorate([
92
- di_1.NewInstance()
92
+ (0, di_1.NewInstance)()
93
93
  ], JoinQueryCompiler);
94
94
  exports.JoinQueryCompiler = JoinQueryCompiler;
95
95
  let IndexQueryCompiler = class IndexQueryCompiler {
96
96
  };
97
97
  IndexQueryCompiler = __decorate([
98
- di_1.NewInstance()
98
+ (0, di_1.NewInstance)()
99
99
  ], IndexQueryCompiler);
100
100
  exports.IndexQueryCompiler = IndexQueryCompiler;
101
101
  let ForeignKeyQueryCompiler = class ForeignKeyQueryCompiler {
102
102
  };
103
103
  ForeignKeyQueryCompiler = __decorate([
104
- di_1.NewInstance()
104
+ (0, di_1.NewInstance)()
105
105
  ], ForeignKeyQueryCompiler);
106
106
  exports.ForeignKeyQueryCompiler = ForeignKeyQueryCompiler;
107
107
  let DeleteQueryCompiler = class DeleteQueryCompiler {
108
108
  };
109
109
  DeleteQueryCompiler = __decorate([
110
- di_1.NewInstance()
110
+ (0, di_1.NewInstance)()
111
111
  ], DeleteQueryCompiler);
112
112
  exports.DeleteQueryCompiler = DeleteQueryCompiler;
113
113
  let UpdateQueryCompiler = class UpdateQueryCompiler {
114
114
  };
115
115
  UpdateQueryCompiler = __decorate([
116
- di_1.NewInstance()
116
+ (0, di_1.NewInstance)()
117
117
  ], UpdateQueryCompiler);
118
118
  exports.UpdateQueryCompiler = UpdateQueryCompiler;
119
119
  let InsertQueryCompiler = class InsertQueryCompiler {
120
120
  };
121
121
  InsertQueryCompiler = __decorate([
122
- di_1.NewInstance()
122
+ (0, di_1.NewInstance)()
123
123
  ], InsertQueryCompiler);
124
124
  exports.InsertQueryCompiler = InsertQueryCompiler;
125
125
  let OnDuplicateQueryCompiler = class OnDuplicateQueryCompiler {
126
126
  };
127
127
  OnDuplicateQueryCompiler = __decorate([
128
- di_1.NewInstance()
128
+ (0, di_1.NewInstance)()
129
129
  ], OnDuplicateQueryCompiler);
130
130
  exports.OnDuplicateQueryCompiler = OnDuplicateQueryCompiler;
131
131
  let TableQueryCompiler = class TableQueryCompiler {
132
132
  };
133
133
  TableQueryCompiler = __decorate([
134
- di_1.NewInstance()
134
+ (0, di_1.NewInstance)()
135
135
  ], TableQueryCompiler);
136
136
  exports.TableQueryCompiler = TableQueryCompiler;
137
137
  let ColumnQueryCompiler = class ColumnQueryCompiler {
138
138
  };
139
139
  ColumnQueryCompiler = __decorate([
140
- di_1.NewInstance()
140
+ (0, di_1.NewInstance)()
141
141
  ], ColumnQueryCompiler);
142
142
  exports.ColumnQueryCompiler = ColumnQueryCompiler;
143
143
  let OrderByQueryCompiler = class OrderByQueryCompiler {
144
144
  };
145
145
  OrderByQueryCompiler = __decorate([
146
- di_1.NewInstance()
146
+ (0, di_1.NewInstance)()
147
147
  ], OrderByQueryCompiler);
148
148
  exports.OrderByQueryCompiler = OrderByQueryCompiler;
149
149
  let GroupByQueryCompiler = class GroupByQueryCompiler {
150
150
  };
151
151
  GroupByQueryCompiler = __decorate([
152
- di_1.NewInstance()
152
+ (0, di_1.NewInstance)()
153
153
  ], GroupByQueryCompiler);
154
154
  exports.GroupByQueryCompiler = GroupByQueryCompiler;
155
155
  class ValueConverter {
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,180 @@
1
+ export declare enum LogLevel {
2
+ Security = 999,
3
+ Fatal = 6,
4
+ Error = 5,
5
+ Warn = 4,
6
+ Success = 3,
7
+ Info = 2,
8
+ Debug = 1,
9
+ Trace = 0
10
+ }
11
+ export declare const StrToLogLevel: {
12
+ trace: LogLevel;
13
+ debug: LogLevel;
14
+ info: LogLevel;
15
+ success: LogLevel;
16
+ warn: LogLevel;
17
+ error: LogLevel;
18
+ fatal: LogLevel;
19
+ security: LogLevel;
20
+ };
21
+ export declare const LogLevelStrings: {
22
+ 1: string;
23
+ 5: string;
24
+ 6: string;
25
+ 2: string;
26
+ 999: string;
27
+ 3: string;
28
+ 0: string;
29
+ 4: string;
30
+ };
31
+ export declare abstract class LogVariable {
32
+ abstract get Name(): string;
33
+ abstract Value(option?: string): string;
34
+ }
35
+ export interface ILogRule {
36
+ name: string;
37
+ level: "trace" | "debug" | "info" | "warn" | "error" | "fatal" | "security" | "success";
38
+ target: string | string[];
39
+ }
40
+ export interface ITargetsOption {
41
+ name: string;
42
+ type: string;
43
+ options: ICommonTargetOptions;
44
+ }
45
+ export interface ILogOptions {
46
+ targets: ITargetsOption[];
47
+ rules: ILogRule[];
48
+ variables: Record<string, unknown>;
49
+ }
50
+ export interface ICommonTargetOptions {
51
+ /**
52
+ * Message layout. You can use variables
53
+ *
54
+ * Default message layout is: datetime level message (logger)
55
+ */
56
+ layout: string;
57
+ /**
58
+ * Target name
59
+ */
60
+ name: string;
61
+ /**
62
+ * Target type
63
+ */
64
+ type: string;
65
+ /**
66
+ * Is logger enabled
67
+ */
68
+ enabled: boolean;
69
+ }
70
+ export interface IColoredConsoleTargetOptions extends ICommonTargetOptions {
71
+ /**
72
+ * Color theme for console message. Best leave it for default.
73
+ */
74
+ theme: {
75
+ security: string | string[];
76
+ fatal: string | string[];
77
+ error: string | string[];
78
+ warn: string | string[];
79
+ success: string | string[];
80
+ info: string | string[];
81
+ debug: string | string[];
82
+ trace: string | string[];
83
+ };
84
+ }
85
+ export interface IFileTargetOptions extends ICommonTargetOptions {
86
+ options: {
87
+ /**
88
+ * path whre log is stored. It is allowed to use variables to create path eg. date / time etc.
89
+ */
90
+ path: string;
91
+ /**
92
+ * Archive path for logs eg. when size is exceeded. Is is allowed to use variables eg. date / time etc.
93
+ *
94
+ * Default is none. When not set archive files are stored in same folder as logs.
95
+ */
96
+ archivePath: string;
97
+ /**
98
+ * Maximum log file size, if exceeded it is moved to archive, and new log file is created
99
+ *
100
+ * Default is 1mb
101
+ */
102
+ maxSize: number;
103
+ /**
104
+ * Should compress log file when moved to archive
105
+ *
106
+ * Default is false
107
+ */
108
+ compress: boolean;
109
+ /**
110
+ * Should rotate log file eg. new file every new day.
111
+ * You should use cron like definition eg. at 1am every day: 0 1 * * *
112
+ * When rotate event occurs, old file is moved to archive, and new one is created
113
+ *
114
+ * Default is not set
115
+ */
116
+ rotate: string;
117
+ /**
118
+ * How mutch archive files should be preserved before deletion. Default is 0
119
+ * Eg. to store max 5 archive files, set it to 5. Oldest by modification time are deleted.
120
+ */
121
+ maxArchiveFiles: number;
122
+ /**
123
+ * Buffer size for incoming log messages. Messages are stored in buffer before write to file.
124
+ *
125
+ * Default is 8kb
126
+ */
127
+ bufferSize: number;
128
+ /**
129
+ * Time in ms after whitch flush will be forced. If set to 0 feature is disabled ( any data hangin in temp buffer will not be saved before it reaches bufferSize)
130
+ * Default time is 10s.
131
+ */
132
+ flushTimeout: number;
133
+ };
134
+ }
135
+ export interface ILogStaticVariables {
136
+ error: Error | undefined;
137
+ level: string;
138
+ logger: string;
139
+ message: string;
140
+ }
141
+ export interface ILogVariable {
142
+ [key: string]: unknown | (() => unknown);
143
+ }
144
+ export interface ILogEntry {
145
+ Level: LogLevel;
146
+ Variables: LogVariables;
147
+ }
148
+ export interface ILog {
149
+ trace(message: string, ...args: any[]): void;
150
+ trace(err: Error, message: string, ...args: any[]): void;
151
+ trace(err: Error | string, message: string | any[], ...args: any[]): void;
152
+ debug(message: string, ...args: any[]): void;
153
+ debug(err: Error, message: string, ...args: any[]): void;
154
+ debug(err: Error | string, message: string | any[], ...args: any[]): void;
155
+ info(message: string, ...args: any[]): void;
156
+ info(err: Error, message: string, ...args: any[]): void;
157
+ info(err: Error | string, message: string | any[], ...args: any[]): void;
158
+ warn(message: string, ...args: any[]): void;
159
+ warn(err: Error, message: string, ...args: any[]): void;
160
+ warn(err: Error | string, message: string | any[], ...args: any[]): void;
161
+ error(message: string, ...args: any[]): void;
162
+ error(err: Error, message: string, ...args: any[]): void;
163
+ error(err: Error | string, message: string | any[], ...args: any[]): void;
164
+ fatal(message: string, ...args: any[]): void;
165
+ fatal(err: Error, message: string, ...args: any[]): void;
166
+ fatal(err: Error | string, message: string | any[], ...args: any[]): void;
167
+ security(message: string, ...args: any[]): void;
168
+ security(err: Error, message: string, ...args: any[]): void;
169
+ security(err: Error | string, message: string | any[], ...args: any[]): void;
170
+ success(message: string, ...args: any[]): void;
171
+ success(err: Error, message: string, ...args: any[]): void;
172
+ success(err: Error | string, message: string | any[], ...args: any[]): void;
173
+ child(name: string, variables?: LogVariables): ILog;
174
+ write(entry: ILogEntry): Promise<PromiseSettledResult<void>[]>;
175
+ addVariable(name: string, value: unknown): void;
176
+ timeStart(name: string): void;
177
+ timeEnd(name: string): number;
178
+ }
179
+ export declare type LogVariables = ILogStaticVariables & ILogVariable;
180
+ export declare function createLogMessageObject(err: Error | string, message: string | any[], level: LogLevel, logger: string, variables: any, ...args: any[]): ILogEntry;
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createLogMessageObject = exports.LogVariable = exports.LogLevelStrings = exports.StrToLogLevel = exports.LogLevel = void 0;
4
+ const util = require("util");
5
+ var LogLevel;
6
+ (function (LogLevel) {
7
+ LogLevel[LogLevel["Security"] = 999] = "Security";
8
+ LogLevel[LogLevel["Fatal"] = 6] = "Fatal";
9
+ LogLevel[LogLevel["Error"] = 5] = "Error";
10
+ LogLevel[LogLevel["Warn"] = 4] = "Warn";
11
+ LogLevel[LogLevel["Success"] = 3] = "Success";
12
+ LogLevel[LogLevel["Info"] = 2] = "Info";
13
+ LogLevel[LogLevel["Debug"] = 1] = "Debug";
14
+ LogLevel[LogLevel["Trace"] = 0] = "Trace";
15
+ })(LogLevel = exports.LogLevel || (exports.LogLevel = {}));
16
+ exports.StrToLogLevel = {
17
+ trace: LogLevel.Trace,
18
+ debug: LogLevel.Debug,
19
+ info: LogLevel.Info,
20
+ success: LogLevel.Success,
21
+ warn: LogLevel.Warn,
22
+ error: LogLevel.Error,
23
+ fatal: LogLevel.Fatal,
24
+ security: LogLevel.Security,
25
+ };
26
+ exports.LogLevelStrings = {
27
+ [LogLevel.Debug]: "debug",
28
+ [LogLevel.Error]: "error",
29
+ [LogLevel.Fatal]: "fatal",
30
+ [LogLevel.Info]: "info",
31
+ [LogLevel.Security]: "security",
32
+ [LogLevel.Success]: "success",
33
+ [LogLevel.Trace]: "trace",
34
+ [LogLevel.Warn]: "warn",
35
+ };
36
+ class LogVariable {
37
+ }
38
+ exports.LogVariable = LogVariable;
39
+ function createLogMessageObject(err, message, level, logger, variables, ...args) {
40
+ const sMsg = err instanceof Error ? message : err;
41
+ const tMsg = args.length !== 0 ? util.format(sMsg, ...args) : sMsg;
42
+ const lName = logger !== null && logger !== void 0 ? logger : message;
43
+ return {
44
+ Level: level,
45
+ Variables: Object.assign({ error: err instanceof Error ? err : undefined, level: exports.LogLevelStrings[`${level}`].toUpperCase(), logger: lName, message: tMsg }, variables),
46
+ };
47
+ }
48
+ exports.createLogMessageObject = createLogMessageObject;
49
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../log-common/src/index.ts"],"names":[],"mappings":";;;AAAA,6BAA6B;AAE7B,IAAY,QAgBX;AAhBD,WAAY,QAAQ;IAClB,iDAAc,CAAA;IAEd,yCAAS,CAAA;IAET,yCAAS,CAAA;IAET,uCAAQ,CAAA;IAER,6CAAW,CAAA;IAEX,uCAAQ,CAAA;IAER,yCAAS,CAAA;IAET,yCAAS,CAAA;AACX,CAAC,EAhBW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAgBnB;AAEY,QAAA,aAAa,GAAG;IAC3B,KAAK,EAAE,QAAQ,CAAC,KAAK;IACrB,KAAK,EAAE,QAAQ,CAAC,KAAK;IACrB,IAAI,EAAE,QAAQ,CAAC,IAAI;IACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;IACzB,IAAI,EAAE,QAAQ,CAAC,IAAI;IACnB,KAAK,EAAE,QAAQ,CAAC,KAAK;IACrB,KAAK,EAAE,QAAQ,CAAC,KAAK;IACrB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;CAC5B,CAAC;AAEW,QAAA,eAAe,GAAG;IAC7B,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO;IACzB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO;IACzB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO;IACzB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM;IACvB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAU;IAC/B,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS;IAC7B,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO;IACzB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM;CACxB,CAAC;AAEF,MAAsB,WAAW;CAGhC;AAHD,kCAGC;AAmLD,SAAgB,sBAAsB,CAAC,GAAmB,EAAE,OAAuB,EAAE,KAAe,EAAE,MAAc,EAAE,SAAc,EAAE,GAAG,IAAW;IAClJ,MAAM,IAAI,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAE,OAAkB,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACnE,MAAM,KAAK,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,OAAO,CAAC;IAEhC,OAAO;QACL,KAAK,EAAE,KAAK;QACZ,SAAS,kBACP,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAC7C,KAAK,EAAE,uBAAe,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC,WAAW,EAAE,EAChD,MAAM,EAAE,KAAK,EACb,OAAO,EAAE,IAAI,IACV,SAAS,CACb;KACF,CAAC;AACJ,CAAC;AAfD,wDAeC"}