@archtx/core 2.0.6 → 3.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/dist/exports.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  export * from './src/Entity/Entity.js';
2
2
  export * from './src/Entity/utils.js';
3
- export * from './src/errors/AuthError.js';
3
+ export * from './src/errors/AuthenticationError.js';
4
+ export * from './src/errors/AuthorizationError.js';
4
5
  export * from './src/errors/EntityError.js';
5
6
  export * from './src/errors/ExpiredError.js';
6
7
  export * from './src/errors/NotFoundError.js';
@@ -9,6 +10,6 @@ export * from './src/errors/RootError.js';
9
10
  export * from './src/errors/UseCaseError.js';
10
11
  export * from './src/errors/ValidationError.js';
11
12
  export * from './src/common-types.js';
12
- export * from './src/Log.js';
13
+ export * from './src/Logger.js';
13
14
  export * from './src/ScheduledProcess.js';
14
15
  export * from './src/UseCase.js';
package/dist/exports.js CHANGED
@@ -1,6 +1,7 @@
1
1
  export * from './src/Entity/Entity.js';
2
2
  export * from './src/Entity/utils.js';
3
- export * from './src/errors/AuthError.js';
3
+ export * from './src/errors/AuthenticationError.js';
4
+ export * from './src/errors/AuthorizationError.js';
4
5
  export * from './src/errors/EntityError.js';
5
6
  export * from './src/errors/ExpiredError.js';
6
7
  export * from './src/errors/NotFoundError.js';
@@ -9,7 +10,7 @@ export * from './src/errors/RootError.js';
9
10
  export * from './src/errors/UseCaseError.js';
10
11
  export * from './src/errors/ValidationError.js';
11
12
  export * from './src/common-types.js';
12
- export * from './src/Log.js';
13
+ export * from './src/Logger.js';
13
14
  export * from './src/ScheduledProcess.js';
14
15
  export * from './src/UseCase.js';
15
16
  //# sourceMappingURL=exports.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"exports.js","sourceRoot":"","sources":["../exports.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AAErC,cAAc,2BAA2B,CAAA;AACzC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,2BAA2B,CAAA;AACzC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,iCAAiC,CAAA;AAE/C,cAAc,uBAAuB,CAAA;AAErC,cAAc,cAAc,CAAA;AAC5B,cAAc,2BAA2B,CAAA;AACzC,cAAc,kBAAkB,CAAA"}
1
+ {"version":3,"file":"exports.js","sourceRoot":"","sources":["../exports.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AAErC,cAAc,qCAAqC,CAAA;AACnD,cAAc,oCAAoC,CAAA;AAClD,cAAc,6BAA6B,CAAA;AAC3C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,2BAA2B,CAAA;AACzC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,iCAAiC,CAAA;AAE/C,cAAc,uBAAuB,CAAA;AAErC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,2BAA2B,CAAA;AACzC,cAAc,kBAAkB,CAAA"}
package/dist/src/DTO.d.ts CHANGED
@@ -5,5 +5,6 @@ export declare abstract class DTO<Schema extends object> implements IDTO<Schema>
5
5
  readonly data: Schema;
6
6
  protected constructor(data: Schema);
7
7
  get toJSON(): Schema;
8
+ get name(): string;
8
9
  }
9
10
  export {};
package/dist/src/DTO.js CHANGED
@@ -6,5 +6,8 @@ export class DTO {
6
6
  get toJSON() {
7
7
  return this.data;
8
8
  }
9
+ get name() {
10
+ return this.constructor.name;
11
+ }
9
12
  }
10
13
  //# sourceMappingURL=DTO.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DTO.js","sourceRoot":"","sources":["../../src/DTO.ts"],"names":[],"mappings":"AAIA,MAAM,OAAgB,GAAG;IACQ;IAA/B,YAA+B,IAAY;QAAZ,SAAI,GAAJ,IAAI,CAAQ;IAAG,CAAC;IAE/C,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;CACF"}
1
+ {"version":3,"file":"DTO.js","sourceRoot":"","sources":["../../src/DTO.ts"],"names":[],"mappings":"AAIA,MAAM,OAAgB,GAAG;IACQ;IAA/B,YAA+B,IAAY;QAAZ,SAAI,GAAJ,IAAI,CAAQ;IAAG,CAAC;IAE/C,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA;IAC9B,CAAC;CACF"}
@@ -1,8 +1,8 @@
1
1
  import { describe, it } from 'vitest';
2
2
  import { performance } from 'perf_hooks';
3
- import { Entity } from './Entity.js'; // Update with your actual import path
4
- // Create a concrete implementation of the abstract Entity class for testing
5
- class TestEntity extends Entity {
3
+ import { MutableEntity } from './Entity.js'; // Update with your actual import path
4
+ // Create a concrete implementation of the abstract MutableEntity class for testing
5
+ class TestEntity extends MutableEntity {
6
6
  validate(props) {
7
7
  // Simple validation
8
8
  if (!props.id)
@@ -100,7 +100,7 @@ function runBenchmark(name, fn, iterations) {
100
100
  timePerOp: timePerOperationMs,
101
101
  };
102
102
  }
103
- describe('Entity Performance Benchmarks', () => {
103
+ describe('MutableEntity Performance Benchmarks', () => {
104
104
  // Adjust iterations based on operation complexity
105
105
  const iterations = {
106
106
  small: 10000,
@@ -111,14 +111,14 @@ describe('Entity Performance Benchmarks', () => {
111
111
  const results = [];
112
112
  // Small entity
113
113
  const smallProps = createEntityProps('small');
114
- results.push(runBenchmark('Entity instantiation (small)', () => TestEntity.create({ ...smallProps, id: `small-${Math.random()}` }), iterations.small));
114
+ results.push(runBenchmark('MutableEntity instantiation (small)', () => TestEntity.create({ ...smallProps, id: `small-${Math.random()}` }), iterations.small));
115
115
  // Medium entity
116
116
  const mediumProps = createEntityProps('medium');
117
- results.push(runBenchmark('Entity instantiation (medium)', () => TestEntity.create({ ...mediumProps, id: `medium-${Math.random()}` }), iterations.medium));
117
+ results.push(runBenchmark('MutableEntity instantiation (medium)', () => TestEntity.create({ ...mediumProps, id: `medium-${Math.random()}` }), iterations.medium));
118
118
  // Large entity
119
119
  const largeProps = createEntityProps('large');
120
- results.push(runBenchmark('Entity instantiation (large)', () => TestEntity.create({ ...largeProps, id: `large-${Math.random()}` }), iterations.large));
121
- console.log('\nEntity instantiation comparison:');
120
+ results.push(runBenchmark('MutableEntity instantiation (large)', () => TestEntity.create({ ...largeProps, id: `large-${Math.random()}` }), iterations.large));
121
+ console.log('\nMutableEntity instantiation comparison:');
122
122
  results.forEach((r) => {
123
123
  console.log(` ${r.name}: ${r.opsPerSecond.toFixed(2)} ops/sec (${r.timePerOp.toFixed(3)} ms per op)`);
124
124
  });
@@ -245,7 +245,7 @@ describe('Entity Performance Benchmarks', () => {
245
245
  it('should benchmark complete entity operations', () => {
246
246
  const results = [];
247
247
  // Create an entity and perform a series of operations
248
- results.push(runBenchmark('Entity lifecycle (create + 5 property updates)', () => {
248
+ results.push(runBenchmark('MutableEntity lifecycle (create + 5 property updates)', () => {
249
249
  const entity = TestEntity.create(createEntityProps('small'));
250
250
  entity.set('name', `User-${Math.random()}`);
251
251
  entity.set('age', Math.floor(Math.random() * 100));
@@ -258,13 +258,13 @@ describe('Entity Performance Benchmarks', () => {
258
258
  entity.set('tags', Array(3)
259
259
  .fill(0)
260
260
  .map((_, i) => `tag-${Math.random()}`));
261
- return entity.toJSON();
261
+ return entity.props;
262
262
  }, iterations.medium / 5));
263
263
  // Create, update, and serialize
264
264
  results.push(runBenchmark('Create, update single property, and serialize', () => {
265
265
  const entity = TestEntity.create(createEntityProps('medium'));
266
266
  entity.set('name', `User-${Math.random()}`);
267
- return entity.toJSON();
267
+ return entity.props;
268
268
  }, iterations.medium / 2));
269
269
  // Multiple sequential updates to the same property
270
270
  results.push(runBenchmark('Multiple sequential updates to the same property', () => {
@@ -272,7 +272,7 @@ describe('Entity Performance Benchmarks', () => {
272
272
  for (let i = 0; i < 5; i++) {
273
273
  entity.set('name', `User-${i}-${Math.random()}`);
274
274
  }
275
- return entity.toJSON();
275
+ return entity.props;
276
276
  }, iterations.medium / 5));
277
277
  console.log('\nCommon operations comparison:');
278
278
  results.forEach((r) => {
@@ -1 +1 @@
1
- {"version":3,"file":"Entity.benchmark.test.js","sourceRoot":"","sources":["../../../src/Entity/Entity.benchmark.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Entity.benchmark.test.js","sourceRoot":"","sources":["../../../src/Entity/Entity.benchmark.test.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,21 @@
1
1
  import { DeepReadonly, IWithID } from '../common-types.js';
2
- export declare abstract class EntityImmutable<Schema extends IWithID> {
2
+ export declare abstract class Entity<Schema extends IWithID> {
3
3
  protected _props: Schema;
4
- get props(): DeepReadonly<Schema>;
5
4
  constructor(props: Schema);
6
- toJSON(): DeepReadonly<Schema>;
5
+ get props(): DeepReadonly<Schema>;
6
+ protected set props(props: DeepReadonly<Schema>);
7
+ get name(): string;
8
+ }
9
+ export declare abstract class ImmutableEntity<Schema extends IWithID> extends Entity<Schema> {
7
10
  }
8
- export declare abstract class Entity<Schema extends IWithID, PrivateSetters extends keyof Schema = never> {
11
+ export declare abstract class MutableEntity<Schema extends IWithID, PrivateSetters extends keyof Schema = never> extends Entity<Schema> {
9
12
  abstract validate(props: Schema): void;
13
+ protected _previousProps?: Schema;
14
+ protected constructor(props: Schema);
10
15
  get previousProps(): DeepReadonly<Schema>;
11
- get props(): DeepReadonly<Schema>;
12
16
  set(updater: (draft: Schema) => void): void;
13
17
  set<Key extends Exclude<keyof Schema, PrivateSetters | 'id'>>(key: Key, value: Schema[Key]): void;
14
18
  set<Key extends Exclude<keyof Schema, PrivateSetters | 'id'>>(key: Key, updater: (draft: Schema[Key]) => void | Schema[Key]): void;
15
- toJSON(): Schema;
16
- protected _previousProps?: Schema;
17
- protected _props: Schema;
18
- protected constructor(props: Schema);
19
19
  protected _cloneProps(obj: Schema): Schema;
20
20
  protected _deepFreeze(obj: any): void;
21
21
  }
@@ -1,22 +1,30 @@
1
- export class EntityImmutable {
1
+ export class Entity {
2
2
  _props;
3
+ constructor(props) {
4
+ this._props = props;
5
+ }
3
6
  get props() {
4
7
  return this._props;
5
8
  }
6
- constructor(props) {
9
+ set props(props) {
7
10
  this._props = props;
8
11
  }
9
- toJSON() {
10
- return this._props;
12
+ get name() {
13
+ return this.constructor.name;
11
14
  }
12
15
  }
13
- export class Entity {
16
+ export class ImmutableEntity extends Entity {
17
+ }
18
+ export class MutableEntity extends Entity {
19
+ /* Only exists if the _props were changed */
20
+ _previousProps;
21
+ constructor(props) {
22
+ super(props);
23
+ this._deepFreeze(this._props);
24
+ }
14
25
  get previousProps() {
15
26
  return (this._previousProps || this._props);
16
27
  }
17
- get props() {
18
- return this._props;
19
- }
20
28
  /**
21
29
  * Update the entity with a new value or function updater. The updater
22
30
  * function receives the current value and should return the new value.
@@ -69,16 +77,6 @@ export class Entity {
69
77
  this._deepFreeze(this._props);
70
78
  }
71
79
  }
72
- toJSON() {
73
- return this._cloneProps(this._props);
74
- }
75
- /* Only exists if the _props were changed */
76
- _previousProps;
77
- _props;
78
- constructor(props) {
79
- this._props = props;
80
- this._deepFreeze(this._props);
81
- }
82
80
  _cloneProps(obj) {
83
81
  // clone values only, do not clone object configuration
84
82
  if (obj === null || typeof obj !== 'object') {
@@ -116,114 +114,4 @@ export class Entity {
116
114
  }
117
115
  }
118
116
  }
119
- // import { DeepReadonly, IWithID } from './common-types'
120
- //
121
- // export abstract class EntityImmutable<Schema extends IWithID> {
122
- // protected _props: Schema
123
- //
124
- // get props(): DeepReadonly<Schema> {
125
- // return this._props as DeepReadonly<Schema>
126
- // }
127
- //
128
- // constructor(props: Schema) {
129
- // this._props = props
130
- // }
131
- //
132
- // public toJSON(): DeepReadonly<Schema> {
133
- // return this._props as DeepReadonly<Schema>
134
- // }
135
- // }
136
- //
137
- // export abstract class Entity<Schema extends IWithID, PrivateSetters extends keyof Schema = never> {
138
- // abstract validate(props: Schema): void
139
- //
140
- // get previousProps(): DeepReadonly<Schema> {
141
- // return (this._previousProps || this._props) as DeepReadonly<Schema>
142
- // }
143
- //
144
- // get props(): DeepReadonly<Schema> {
145
- // return this._props as DeepReadonly<Schema>
146
- // }
147
- //
148
- // public set<Key extends Exclude<keyof Schema, PrivateSetters | 'id'>>(key: Key, value: Schema[Key]): void {
149
- // // Check if key is private
150
- // if (key === 'id') throw new Error('Cannot set ID')
151
- //
152
- // // On the first change/set call, clone the props
153
- // this._previousProps ??= this._cloneProps(this._props)
154
- //
155
- // // Clone current props
156
- // const newProps = this._cloneProps(this._props)
157
- //
158
- // // Set new value
159
- // newProps[key] = value
160
- //
161
- // // Validate (must be before setting _props)
162
- // this.validate(newProps)
163
- //
164
- // this._props = newProps
165
- //
166
- // // Freeze props deeply in dev environment only
167
- // if (process.env.NODE_ENV !== 'production') {
168
- // this._deepFreeze(this._props)
169
- // }
170
- // }
171
- //
172
- // public toJSON(): DeepReadonly<Schema> {
173
- // return this._props as DeepReadonly<Schema>
174
- // }
175
- //
176
- // /* Only exists if the _props were changed */
177
- // protected _previousProps?: Schema
178
- // protected _props: Schema
179
- //
180
- // protected constructor(props: Schema) {
181
- // this._props = props
182
- // this._deepFreeze(this._props)
183
- // }
184
- //
185
- // protected _cloneProps(obj: Schema): Schema {
186
- // // clone values only, do not clone object configuration
187
- // if (obj === null || typeof obj !== 'object') {
188
- // return obj
189
- // }
190
- //
191
- // // Handle Date objects specially
192
- // if (obj instanceof Date) {
193
- // return new Date(obj) as any
194
- // }
195
- //
196
- // // Create a fresh object/array to avoid inheriting configurations
197
- // const clone: any = Array.isArray(obj)
198
- // ? ([] as any[])
199
- // : ({} as Record<string, any>)
200
- //
201
- // // Copy each property value
202
- // for (const key in obj) {
203
- // if (Object.prototype.hasOwnProperty.call(obj, key)) {
204
- // const val = obj[key]
205
- // // Recursively clone nested objects and arrays
206
- // clone[key as any] =
207
- // val && typeof val === 'object' ? this._cloneProps(val as any) : val
208
- // }
209
- // }
210
- //
211
- // return clone as Schema
212
- // }
213
- //
214
- // protected _deepFreeze(obj: any): void {
215
- // if (obj && typeof obj === 'object') {
216
- // Object.freeze(obj)
217
- // Object.getOwnPropertyNames(obj).forEach((prop) => {
218
- // if (
219
- // obj[prop] !== null &&
220
- // (typeof obj[prop] === 'object' || typeof obj[prop] === 'function') &&
221
- // !Object.isFrozen(obj[prop])
222
- // ) {
223
- // this._deepFreeze(obj[prop])
224
- // }
225
- // })
226
- // }
227
- // }
228
- // }
229
117
  //# sourceMappingURL=Entity.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Entity.js","sourceRoot":"","sources":["../../../src/Entity/Entity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Entity.js","sourceRoot":"","sources":["../../../src/Entity/Entity.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  import { describe, it, expect, afterEach } from 'vitest';
2
- import { Entity } from './Entity.js';
3
- describe('Entity', () => {
2
+ import { MutableEntity } from './Entity.js';
3
+ describe('MutableEntity', () => {
4
4
  afterEach(() => {
5
5
  process.env.NODE_ENV = 'development';
6
6
  });
7
7
  describe('Initialization', () => {
8
8
  it('should initialize with props', () => {
9
- class Profile extends Entity {
9
+ class Profile extends MutableEntity {
10
10
  static create(props) {
11
11
  return new Profile(props);
12
12
  }
@@ -22,7 +22,7 @@ describe('Entity', () => {
22
22
  });
23
23
  describe('Props Immutability', () => {
24
24
  it('should make props immutable in development mode', () => {
25
- class Profile extends Entity {
25
+ class Profile extends MutableEntity {
26
26
  static create(props) {
27
27
  return new Profile({
28
28
  ...props,
@@ -53,7 +53,7 @@ describe('Entity', () => {
53
53
  });
54
54
  describe('set() method', () => {
55
55
  it('should not allow setting the ID property', () => {
56
- class Profile extends Entity {
56
+ class Profile extends MutableEntity {
57
57
  static create(props) {
58
58
  return new Profile(props);
59
59
  }
@@ -70,7 +70,7 @@ describe('Entity', () => {
70
70
  }).toThrow('Cannot set ID');
71
71
  });
72
72
  it('should update a property value', () => {
73
- class Profile extends Entity {
73
+ class Profile extends MutableEntity {
74
74
  static create(props) {
75
75
  return new Profile({
76
76
  ...props,
@@ -88,7 +88,7 @@ describe('Entity', () => {
88
88
  expect(profile.props.name).toBe('Updated');
89
89
  });
90
90
  it('should allow null/undefined values', () => {
91
- class Profile extends Entity {
91
+ class Profile extends MutableEntity {
92
92
  static create(props) {
93
93
  return new Profile(props);
94
94
  }
@@ -107,7 +107,7 @@ describe('Entity', () => {
107
107
  expect(profile.props.maybe).toBe('value');
108
108
  });
109
109
  it('should create a new reference when updating props', () => {
110
- class Profile extends Entity {
110
+ class Profile extends MutableEntity {
111
111
  static create(props) {
112
112
  return new Profile({
113
113
  ...props,
@@ -128,7 +128,7 @@ describe('Entity', () => {
128
128
  });
129
129
  it('should deeply clone objects when updating', () => {
130
130
  const date = new Date();
131
- class Profile extends Entity {
131
+ class Profile extends MutableEntity {
132
132
  static create(props) {
133
133
  return new Profile({
134
134
  ...props,
@@ -154,11 +154,11 @@ describe('Entity', () => {
154
154
  expect(() => {
155
155
  newMetadata.nested.value = 200;
156
156
  }).toThrow();
157
- // Entity props should have the original value
157
+ // MutableEntity props should have the original value
158
158
  expect(profile.props.metadata?.nested?.value).toBe(100);
159
159
  });
160
160
  it('should deeply clone arrays when updating', () => {
161
- class Profile extends Entity {
161
+ class Profile extends MutableEntity {
162
162
  static create(props) {
163
163
  return new Profile({
164
164
  ...props,
@@ -174,19 +174,23 @@ describe('Entity', () => {
174
174
  const tags = ['tag1', 'tag2'];
175
175
  const profile = Profile.create({ id: '123', name: 'Test', tags });
176
176
  // Modify the original array
177
- expect(() => { tags.push('tag3'); }).toThrow;
178
- expect(() => { tags[0] = 'tag4'; }).toThrow;
179
- // Entity props should have the original value
177
+ expect(() => {
178
+ tags.push('tag3');
179
+ }).toThrow;
180
+ expect(() => {
181
+ tags[0] = 'tag4';
182
+ }).toThrow;
183
+ // MutableEntity props should have the original value
180
184
  expect(profile.props.tags.length).toBe(2);
181
185
  expect(profile.props.tags[0]).toBe('tag1');
182
186
  profile.set('tags', [...profile.props.tags, 'tag5', 'tag6']);
183
- // Entity props should have the new value
187
+ // MutableEntity props should have the new value
184
188
  expect(profile.props.tags.length).toBe(4);
185
189
  });
186
190
  });
187
191
  describe('Validation', () => {
188
192
  it('should validate properties when setting values', () => {
189
- class Profile extends Entity {
193
+ class Profile extends MutableEntity {
190
194
  static create(props) {
191
195
  return new Profile({
192
196
  ...props,
@@ -212,7 +216,7 @@ describe('Entity', () => {
212
216
  expect(() => profile.set('tags', undefined)).toThrow('Tags cannot be empty');
213
217
  });
214
218
  it('should not update props if validation fails', () => {
215
- class Profile extends Entity {
219
+ class Profile extends MutableEntity {
216
220
  static create(props) {
217
221
  return new Profile(props);
218
222
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Entity.test.js","sourceRoot":"","sources":["../../../src/Entity/Entity.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACtB,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,aAAa,CAAA;IACtC,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACtC,MAAM,OAAQ,SAAQ,MAAoC;gBACxD,MAAM,CAAC,MAAM,CAAC,KAAmC;oBAC/C,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAA;gBAC3B,CAAC;gBAED,QAAQ;oBACN,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;oBACzC,CAAC;gBACH,CAAC;aACF;YAED,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;YAE3D,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;QAC5D,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAClC,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,MAAM,OAAQ,SAAQ,MAKpB;gBACA,MAAM,CAAC,MAAM,CAAC,KAKb;oBACC,OAAO,IAAI,OAAO,CAAC;wBACjB,GAAG,KAAK;wBACR,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;qBACvB,CAAC,CAAA;gBACJ,CAAC;gBAED,QAAQ;oBACN,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;oBACzC,CAAC;gBACH,CAAC;aACF;YAED,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;YAE3D,kEAAkE;YAClE,MAAM,CAAC,GAAG,EAAE;gBACV,sEAAsE;gBACtE,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,UAAU,CAAA;YACjC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA;YAEZ,MAAM,CAAC,GAAG,EAAE;gBACV,sEAAsE;gBACtE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACjC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA;YAEZ,MAAM,CAAC,GAAG,EAAE;gBACV,sEAAsE;gBACtE,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,gBAAgB,CAAA;YACjD,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA;QACd,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;YAClD,MAAM,OAAQ,SAAQ,MAAoC;gBACxD,MAAM,CAAC,MAAM,CAAC,KAAmC;oBAC/C,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAA;gBAC3B,CAAC;gBAED,QAAQ;oBACN,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;oBACzC,CAAC;gBACH,CAAC;aACF;YAED,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;YAE3D,MAAM,CAAC,GAAG,EAAE;gBACV,oDAAoD;gBACpD,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;YAC1B,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAA;QAC7B,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;YACxC,MAAM,OAAQ,SAAQ,MAKpB;gBACA,MAAM,CAAC,MAAM,CAAC,KAKb;oBACC,OAAO,IAAI,OAAO,CAAC;wBACjB,GAAG,KAAK;wBACR,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;qBACvB,CAAC,CAAA;gBACJ,CAAC;gBAED,QAAQ;oBACN,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;oBACzC,CAAC;gBACH,CAAC;aACF;YAED,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;YAE3D,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;YAC9B,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAC5C,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAC5C,MAAM,OAAQ,SAAQ,MAAuE;gBAC3F,MAAM,CAAC,MAAM,CAAC,KAAsE;oBAClF,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAA;gBAC3B,CAAC;gBAED,QAAQ;oBACN,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;oBACzC,CAAC;gBACH,CAAC;aACF;YAED,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;YAC3D,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;YAC1B,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACtC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;YAC/B,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YAC3C,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAC7B,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC3C,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;YAC3D,MAAM,OAAQ,SAAQ,MAKpB;gBACA,MAAM,CAAC,MAAM,CAAC,KAKb;oBACC,OAAO,IAAI,OAAO,CAAC;wBACjB,GAAG,KAAK;wBACR,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;qBACvB,CAAC,CAAA;gBACJ,CAAC;gBAED,QAAQ;oBACN,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;oBACzC,CAAC;gBACH,CAAC;aACF;YAED,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;YAE3D,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CAAA;YACnC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;YAE9B,gCAAgC;YAChC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;QAC/C,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;YACnD,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAA;YACvB,MAAM,OAAQ,SAAQ,MAKpB;gBACA,MAAM,CAAC,MAAM,CAAC,KAKb;oBACC,OAAO,IAAI,OAAO,CAAC;wBACjB,GAAG,KAAK;wBACR,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;qBACvB,CAAC,CAAA;gBACJ,CAAC;gBAED,QAAQ;oBACN,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;oBACzC,CAAC;gBACH,CAAC;aACF;YAED,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;YAE3D,MAAM,WAAW,GAAG;gBAClB,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,IAAI,IAAI,EAAE;gBACrB,MAAM,EAAE;oBACN,KAAK,EAAE,GAAG;iBACX;aACF,CAAA;YAED,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;YAEpC,6BAA6B;YAC7B,MAAM,CAAC,GAAG,EAAE;gBACV,WAAW,CAAC,MAAM,CAAC,KAAK,GAAG,GAAG,CAAA;YAChC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA;YAEZ,8CAA8C;YAC9C,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACzD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;YAClD,MAAM,OAAQ,SAAQ,MAIpB;gBACA,MAAM,CAAC,MAAM,CAAC,KAAoD;oBAChE,OAAO,IAAI,OAAO,CAAC;wBACjB,GAAG,KAAK;wBACR,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;qBACvB,CAAC,CAAA;gBACJ,CAAC;gBAED,QAAQ;oBACN,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;oBACzC,CAAC;gBACH,CAAC;aACF;YAED,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;YAE7B,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;YAEjE,4BAA4B;YAC5B,MAAM,CAAC,GAAG,EAAE,GAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA,CAAA,CAAC,CAAC,CAAC,OAAO,CAAA;YACzC,MAAM,CAAC,GAAG,EAAE,GAAE,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAA,CAAA,CAAC,CAAC,CAAC,OAAO,CAAA;YAExC,8CAA8C;YAC9C,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACzC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAE1C,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;YAE5D,yCAAyC;YACzC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAC3C,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;QAC1B,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;YACxD,MAAM,OAAQ,SAAQ,MAIpB;gBACA,MAAM,CAAC,MAAM,CAAC,KAAoD;oBAChE,OAAO,IAAI,OAAO,CAAC;wBACjB,GAAG,KAAK;wBACR,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;qBACvB,CAAC,CAAA;gBACJ,CAAC;gBAED,QAAQ,CAAC,KAAmD;oBAC1D,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBAC5B,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;oBACzC,CAAC;oBAED,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;wBAChB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;oBACzC,CAAC;gBACH,CAAC;aACF;YAED,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;YAE3D,+BAA+B;YAC/B,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YAC7D,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YAE1D,+BAA+B;YAC/B,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAA;YACrE,qDAAqD;YACrD,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAA;QAC9E,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACrD,MAAM,OAAQ,SAAQ,MAGpB;gBACA,MAAM,CAAC,MAAM,CAAC,KAAoC;oBAChD,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAA;gBAC3B,CAAC;gBAED,QAAQ,CAAC,KAAmD;oBAC1D,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBAC5B,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;oBACzC,CAAC;gBACH,CAAC;aACF;YAED,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;YAE3D,8BAA8B;YAC9B,IAAI,CAAC;gBACH,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;YACzB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,mBAAmB;YACrB,CAAC;YAED,8BAA8B;YAC9B,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACzC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"Entity.test.js","sourceRoot":"","sources":["../../../src/Entity/Entity.test.ts"],"names":[],"mappings":"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"}
package/dist/src/Log.d.ts CHANGED
@@ -10,6 +10,6 @@ export interface ILog {
10
10
  * the actual logging implementation such as console, winston, etc.
11
11
  */
12
12
  export declare abstract class Log {
13
- protected log: ILog;
13
+ readonly log: ILog;
14
14
  constructor(log: ILog);
15
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Log.js","sourceRoot":"","sources":["../../src/Log.ts"],"names":[],"mappings":"AAOA;;;;GAIG;AACH,MAAM,OAAgB,GAAG;IACb,GAAG,CAAM;IAEnB,YAAY,GAAS;QACnB,IAAI,CAAC,GAAG,GAAG;YACT,KAAK,EAAE,CAAC,GAAW,EAAE,GAAsB,EAAE,EAAE,CAC7C,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,GAAG,EAAE,EAAE,GAAG,CAAC;YACrD,IAAI,EAAE,CAAC,GAAW,EAAE,GAAsB,EAAE,EAAE,CAC5C,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,GAAG,EAAE,EAAE,GAAG,CAAC;YACpD,IAAI,EAAE,CAAC,GAAW,EAAE,GAAsB,EAAE,EAAE,CAC5C,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,GAAG,EAAE,EAAE,GAAG,CAAC;YACpD,KAAK,EAAE,CAAC,GAAW,EAAE,GAAsB,EAAE,EAAE,CAC7C,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,GAAG,EAAE,EAAE,GAAG,CAAC;SACtD,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"Log.js","sourceRoot":"","sources":["../../src/Log.ts"],"names":[],"mappings":"AAOA;;;;GAIG;AACH,MAAM,OAAgB,GAAG;IACP,GAAG,CAAM;IAEzB,YAAY,GAAS;QACnB,IAAI,CAAC,GAAG,GAAG;YACT,KAAK,EAAE,CAAC,GAAW,EAAE,GAAsB,EAAE,EAAE,CAC7C,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,GAAG,EAAE,EAAE,GAAG,CAAC;YACrD,IAAI,EAAE,CAAC,GAAW,EAAE,GAAsB,EAAE,EAAE,CAC5C,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,GAAG,EAAE,EAAE,GAAG,CAAC;YACpD,IAAI,EAAE,CAAC,GAAW,EAAE,GAAsB,EAAE,EAAE,CAC5C,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,GAAG,EAAE,EAAE,GAAG,CAAC;YACpD,KAAK,EAAE,CAAC,GAAW,EAAE,GAAsB,EAAE,EAAE,CAC7C,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,GAAG,EAAE,EAAE,GAAG,CAAC;SACtD,CAAA;IACH,CAAC;CACF"}
@@ -0,0 +1,16 @@
1
+ export interface ILogger {
2
+ debug(msg: string, ctx?: Record<any, any>): void;
3
+ info(msg: string, ctx?: Record<any, any>): void;
4
+ warn(msg: string, ctx?: Record<any, any>): void;
5
+ error(msg: string, ctx?: Record<any, any>): void;
6
+ }
7
+ /**
8
+ * Logger class that provides a common interface for logging.
9
+ * This class is abstract and should be extended by a class that provides
10
+ * the actual logging implementation such as console, winston, etc.
11
+ */
12
+ export declare abstract class Logger {
13
+ readonly log: ILogger;
14
+ constructor(log: ILogger);
15
+ get name(): string;
16
+ }
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Logger class that provides a common interface for logging.
3
+ * This class is abstract and should be extended by a class that provides
4
+ * the actual logging implementation such as console, winston, etc.
5
+ */
6
+ export class Logger {
7
+ log;
8
+ constructor(log) {
9
+ this.log = {
10
+ error: (msg, ctx) => log.error(`[${this.constructor.name}] ${msg}`, ctx),
11
+ info: (msg, ctx) => log.info(`[${this.constructor.name}] ${msg}`, ctx),
12
+ warn: (msg, ctx) => log.warn(`[${this.constructor.name}] ${msg}`, ctx),
13
+ debug: (msg, ctx) => log.debug(`[${this.constructor.name}] ${msg}`, ctx),
14
+ };
15
+ }
16
+ get name() {
17
+ return this.constructor.name;
18
+ }
19
+ }
20
+ //# sourceMappingURL=Logger.js.map