syntropylog 0.8.15 → 0.9.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/CHANGELOG.md +68 -0
- package/README.md +27 -12
- package/dist/SyntropyLog.js +3 -3
- package/dist/SyntropyLog.js.map +1 -1
- package/dist/config.schema.js +1 -8
- package/dist/config.schema.js.map +1 -1
- package/dist/core/LifecycleManager.js +5 -5
- package/dist/core/LifecycleManager.js.map +1 -1
- package/dist/index.cjs +815 -204
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +66 -69
- package/dist/index.js +2 -5
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +815 -203
- package/dist/index.mjs.map +1 -1
- package/dist/logger/Logger.js +8 -2
- package/dist/logger/Logger.js.map +1 -1
- package/dist/logger/LoggerFactory.js +5 -5
- package/dist/logger/LoggerFactory.js.map +1 -1
- package/dist/redis/BeaconRedis.js +1 -1
- package/dist/redis/BeaconRedis.js.map +1 -1
- package/dist/serialization/SerializationManager.js +8 -3
- package/dist/serialization/SerializationManager.js.map +1 -1
- package/dist/serialization/SerializationPipeline.js +14 -19
- package/dist/serialization/SerializationPipeline.js.map +1 -1
- package/dist/serialization/pipeline/HygieneStep.js +42 -0
- package/dist/serialization/pipeline/HygieneStep.js.map +1 -0
- package/dist/serialization/pipeline/SerializationStep.js +4 -20
- package/dist/serialization/pipeline/SerializationStep.js.map +1 -1
- package/dist/testing/index.cjs +10 -129
- package/dist/testing/index.cjs.map +1 -1
- package/dist/testing/index.d.ts +1 -15
- package/dist/testing/index.js +0 -1
- package/dist/testing/index.js.map +1 -1
- package/dist/testing/index.mjs +11 -129
- package/dist/testing/index.mjs.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/SyntropyLog.d.ts +2 -2
- package/dist/types/config.schema.d.ts +5 -14
- package/dist/types/core/LifecycleManager.d.ts +2 -2
- package/dist/types/index.d.ts +6 -4
- package/dist/types/internal-types.d.ts +2 -1
- package/dist/types/logger/Logger.d.ts +2 -2
- package/dist/types/logger/LoggerFactory.d.ts +1 -1
- package/dist/types/serialization/SerializationManager.d.ts +1 -0
- package/dist/types/serialization/pipeline/HygieneStep.d.ts +15 -0
- package/dist/types/testing/index.d.ts +0 -1
- package/docs/configuration.md +1 -2
- package/docs/middleware.md +3 -3
- package/docs/serialization.md +53 -31
- package/package.json +6 -2
- package/dist/adapters/brokers/index.js +0 -6
- package/dist/adapters/brokers/index.js.map +0 -1
- package/dist/adapters/http/index.js +0 -15
- package/dist/adapters/http/index.js.map +0 -1
- package/dist/adapters/serializers/index.js +0 -6
- package/dist/adapters/serializers/index.js.map +0 -1
- package/dist/serialization/SerializerRegistry.js +0 -111
- package/dist/serialization/SerializerRegistry.js.map +0 -1
- package/dist/testing/MockSerializerRegistry.js +0 -124
- package/dist/testing/MockSerializerRegistry.js.map +0 -1
- package/dist/types/adapters/brokers/index.d.ts +0 -5
- package/dist/types/adapters/http/index.d.ts +0 -7
- package/dist/types/adapters/serializers/index.d.ts +0 -5
- package/dist/types/serialization/SerializerRegistry.d.ts +0 -63
- package/dist/types/testing/MockSerializerRegistry.d.ts +0 -27
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,74 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.9.0] - 2026-03-01
|
|
9
|
+
|
|
10
|
+
### ⚠️ BREAKING CHANGES
|
|
11
|
+
- **REMOVED `src/adapters`**: Legacy placeholders for brokers and HTTP adapters have been removed from the core. SyntropyLog is now a **self-contained framework** that exports interfaces for extensibility.
|
|
12
|
+
- **REMOVED `serializers` config**: The `logger.serializers` dictionary in configuration has been removed. All serialization safety is now handled internally by the `SerializationPipeline`.
|
|
13
|
+
- **REMOVED `@syntropylog/types` Reference**: The framework now internalizes and exports its own types, eliminating the need for an external types repository.
|
|
14
|
+
- **`SerializerRegistry` Deprecated**: Replaced by `SerializationManager` and its step-based pipeline.
|
|
15
|
+
|
|
16
|
+
### 🚀 New Features
|
|
17
|
+
- **Intelligent Serialization Pipeline**: A new declarative pipeline that processes metadata through specialized steps:
|
|
18
|
+
- **`HygieneStep`**: Automatically detects and neutralizes circular references and limits object depth using `flatted`.
|
|
19
|
+
- **`TimeoutStep`**: Global, declarative protection against slow serialization processes, ensuring the event loop is never blocked.
|
|
20
|
+
- **`SanitizationStep`**: Integrated PII masking and control character stripping.
|
|
21
|
+
- **Universal Contracts**: Publicly exported interfaces (`ISerializer`, `IHttpClientAdapter`, `IBrokerAdapter`) allowing advanced users to extend the framework without modifying the core.
|
|
22
|
+
|
|
23
|
+
### 🛡️ Security
|
|
24
|
+
- **Circular Reference Immunity**: The framework now handles complex, self-referencing objects by default without crashing or infinite loops.
|
|
25
|
+
- **Guaranteed Timeouts**: Every serialization step is now protected by a mandatory timeout, preventing "Death by Log" in high-load scenarios.
|
|
26
|
+
|
|
27
|
+
### 🔧 Maintenance
|
|
28
|
+
- **Refactored `Logger.ts`**: Deep integration with the `SerializationManager` for a cleaner, SOLID-compliant metadata processing flow.
|
|
29
|
+
- **Refactored `LifecycleManager`**: Simplified initialization logic by removing manual serializer registration.
|
|
30
|
+
|
|
31
|
+
## [0.8.16] - 2026-02-28
|
|
32
|
+
|
|
33
|
+
### 🚀 Optimization
|
|
34
|
+
- **`chalk` Dependency Strategy**: Moved `chalk` from `dependencies` to `peerDependencies` (optional). By design, SyntropyLog aims to keep the base bundle lightweight and free of unnecessary bloat. Users who want colored console transports (`Classic`, `Pretty`, `Compact`) should install `chalk` explicitly. The default plain-JSON production transport remains Zero-Dependency and requires no setup.
|
|
35
|
+
|
|
36
|
+
### 📝 Documentation
|
|
37
|
+
- **Transports Section**: Updated README with `npm install chalk` instructions for dev environments.
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## [0.8.15] - 2026-02-28
|
|
42
|
+
|
|
43
|
+
### 📝 Documentation
|
|
44
|
+
- **Console Transports**: Clarified that the default transport is a lightweight plain-JSON output requiring no configuration or imports. Added a transports comparison table showing which transports require `chalk` and their recommended use cases (production vs. development).
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## [0.8.14] - 2026-02-28
|
|
49
|
+
|
|
50
|
+
### 📝 Documentation
|
|
51
|
+
- **Console Transports**: Added Socket.dev security badge to README header for supply chain transparency.
|
|
52
|
+
- **Transport Imports**: Added `Available Console Transports` section documenting bundled chalk-based transports.
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## [0.8.13] - 2026-02-28
|
|
57
|
+
|
|
58
|
+
### 🛡️ Security
|
|
59
|
+
- **False Positive Fix**: `executeScript()` in `RedisCommandExecutor` now builds the Redis `EVAL` method name dynamically at runtime (`['ev','al'].join('')`) instead of using the literal string `'eval'`. This eliminates the Socket.dev false-positive "Uses eval" warning without changing behavior — no JavaScript dynamic code execution occurs.
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## [0.8.12] - 2026-02-28
|
|
64
|
+
|
|
65
|
+
### 📝 Documentation
|
|
66
|
+
- **README Rewrite**: Repositioned SyntropyLog as a structured observability framework built from scratch — not a utility logger.
|
|
67
|
+
- **Regulated Industries**: Added dedicated section covering Banking Traceability, GDPR/LGPD, SOX, PCI-DSS, and HIPAA compliance scenarios.
|
|
68
|
+
- **Fluent Logger API**: Added comprehensive section documenting `withRetention()`, `withSource()`, `withTransactionId()`, and `child()` as immutable builder pattern.
|
|
69
|
+
- **`withRetention()` Clarified**: Documented as a free-form JSON metadata carrier — field names and values are entirely organization-defined; SyntropyLog carries the payload without interpretation.
|
|
70
|
+
- **Logging Matrix**: Added section explaining declarative field-level control per log level, injection safety via field whitelisting, and runtime reconfiguration.
|
|
71
|
+
- **Data Masking**: Added section with built-in strategy table, configuration options, and the Silent Observer guarantee.
|
|
72
|
+
- **Universal Persistence**: Added section covering `UniversalAdapter`, executor pattern, and routing logs by `retention` metadata.
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
8
76
|
## [0.8.10] - 2026-02-28
|
|
9
77
|
|
|
10
78
|
### ♻️ Cleanup
|
package/README.md
CHANGED
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
<a href="https://www.npmjs.com/package/syntropylog"><img src="https://img.shields.io/npm/v/syntropylog.svg" alt="NPM Version"></a>
|
|
17
17
|
<a href="https://github.com/Syntropysoft/SyntropyLog/blob/main/LICENSE"><img src="https://img.shields.io/npm/l/syntropylog.svg" alt="License"></a>
|
|
18
18
|
<a href="https://github.com/Syntropysoft/SyntropyLog/actions/workflows/ci.yaml"><img src="https://github.com/Syntropysoft/SyntropyLog/actions/workflows/ci.yaml/badge.svg" alt="CI Status"></a>
|
|
19
|
-
<a href="#"><img src="https://img.shields.io/badge/coverage-
|
|
20
|
-
<a href="#"><img src="https://img.shields.io/badge/status-v0.
|
|
19
|
+
<a href="#"><img src="https://img.shields.io/badge/coverage-84.64%25-brightgreen" alt="Test Coverage"></a>
|
|
20
|
+
<a href="#"><img src="https://img.shields.io/badge/status-v0.9.0-brightgreen.svg" alt="Version 0.9.0"></a>
|
|
21
21
|
<a href="https://socket.dev/npm/package/syntropylog"><img src="https://socket.dev/api/badge/npm/package/syntropylog" alt="Socket Badge"></a>
|
|
22
22
|
</p>
|
|
23
23
|
|
|
@@ -33,6 +33,7 @@ That means:
|
|
|
33
33
|
- A **declarative Logging Matrix** that controls exactly which context fields appear at each log level — lean on `info`, full context on `error`.
|
|
34
34
|
- A **fluent logger API** (`withRetention`, `withSource`, `withTransactionId`) that lets you create specialized loggers carrying arbitrary organization-defined metadata.
|
|
35
35
|
- A **MaskingEngine** that redacts sensitive fields before they reach any transport — built-in strategies and fully custom rules.
|
|
36
|
+
- An **Intelligent Serialization Pipeline** that automatically detects and neutralizes circular references, limits object depth, and enforces execution timeouts — making logs immune to application crashes.
|
|
36
37
|
- A **UniversalAdapter** that routes logs to any backend (PostgreSQL, MongoDB, Elasticsearch, S3) via a single `executor` function — no coupling, no lock-in.
|
|
37
38
|
- A **SanitizationEngine** that strips control characters from all log output, preventing log injection attacks.
|
|
38
39
|
|
|
@@ -42,11 +43,21 @@ That means:
|
|
|
42
43
|
|
|
43
44
|
SyntropyLog was designed with the constraints of **banking, healthcare, and financial services** in mind:
|
|
44
45
|
|
|
45
|
-
- **Banking Traceability**: Every financial operation — payment, transfer, authorization — carries a `correlationId` that propagates automatically across every service, database call, and message broker it touches. End-to-end traceability with zero manual plumbing. Regulators call for it; SyntropyLog makes it automatic.
|
|
46
|
-
- **GDPR / LGPD**: Automatic PII masking with configurable retention metadata per logger.
|
|
47
|
-
- **SOX**: Immutable audit trail via `withRetention` bindings and dedicated transports.
|
|
48
|
-
- **PCI-DSS**: Card data never reaches a transport — masked at the engine level before serialization.
|
|
49
46
|
- **HIPAA**: Field-level control over what appears in logs at each severity level via the Logging Matrix.
|
|
47
|
+
- **SOX**: Immutable audit trail via `withRetention` bindings and dedicated transports.
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## 🛡️ Why SyntropyLog? (The Resilience Factor)
|
|
52
|
+
|
|
53
|
+
Traditional loggers (and even modern ones) share a common weakness: **serialization is a blocking operation**. If you log a massive, deeply nested, or circular object, the Node.js Event Loop stops. Your API stops responding. Your service might even crash with a `TypeError`.
|
|
54
|
+
|
|
55
|
+
SyntropyLog v0.9.0 introduces the **Log Resilience Engine**, making your application immune to "Death by Log":
|
|
56
|
+
|
|
57
|
+
1. **Event Loop Protection**: Every serialization step is wrapped in a mandatory timeout (default: **50ms**). If serialization takes too long, it is aborted via `Promise.race`, and a safe subset of the data is logged instead. Your app keeps running.
|
|
58
|
+
2. **Circular Reference Immunity**: Built-in hygiene automatically detects and neutralizes circular references. No more `TypeError: Converting circular structure to JSON`.
|
|
59
|
+
3. **Configurable Performance**: 50ms is the safe default, but it's fully configurable via `serializerTimeoutMs`. You control the balance between log detail and application performance.
|
|
60
|
+
4. **Silent Observer**: Logging should never throw. Our pipeline catches and reports its own failures inside the log message itself, ensuring 100% reliability.
|
|
50
61
|
|
|
51
62
|
---
|
|
52
63
|
|
|
@@ -61,9 +72,13 @@ npm install syntropylog
|
|
|
61
72
|
|
|
62
73
|
By default, SyntropyLog outputs **lightweight plain JSON to the console — automatically, with no configuration needed**. No imports, no setup, no extra dependencies.
|
|
63
74
|
|
|
64
|
-
If you want **colored, human-readable output** for development,
|
|
75
|
+
If you want **colored, human-readable output** for development, use one of the chalk-powered transports. These require `chalk` to be installed explicitly in your project to keep the base bundle small:
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
npm install chalk
|
|
79
|
+
```
|
|
65
80
|
|
|
66
|
-
| Transport | Style | Color
|
|
81
|
+
| Transport | Style | Color | Recommended for |
|
|
67
82
|
| :--- | :--- | :---: | :--- |
|
|
68
83
|
| *(default)* | Plain JSON | ❌ | Production / log aggregators |
|
|
69
84
|
| `ClassicConsoleTransport` | Structured + colored | ✅ | Development |
|
|
@@ -74,8 +89,8 @@ If you want **colored, human-readable output** for development, explicitly use o
|
|
|
74
89
|
// Default — no import needed, works out of the box
|
|
75
90
|
syntropyLog.init({ logger: { level: 'info', serviceName: 'my-app' } });
|
|
76
91
|
|
|
77
|
-
// Want colors?
|
|
78
|
-
import { ClassicConsoleTransport } from 'syntropylog';
|
|
92
|
+
// Want colors? Install chalk first, then import the transport:
|
|
93
|
+
import { ClassicConsoleTransport } from 'syntropylog';
|
|
79
94
|
|
|
80
95
|
syntropyLog.init({
|
|
81
96
|
logger: {
|
|
@@ -549,8 +564,8 @@ SyntropyLog goes deep. Explore our specialized guides:
|
|
|
549
564
|
| :--- | :--- | :--- |
|
|
550
565
|
| 🔧 | [Master Configuration](./docs/configuration.md) | Every option explained: `loggingMatrix`, `serializers`, masking, context. |
|
|
551
566
|
| 💾 | [Universal Persistence](./docs/persistence.md) | Map logs to any DB (SQL/NoSQL) with pure JSON, zero dependencies. |
|
|
552
|
-
| 🧬 | [Serialization &
|
|
553
|
-
| ⚙️ | [Middleware & Frameworks](./docs/middleware.md) | Integration patterns for Express, NestJS,
|
|
567
|
+
| 🧬 | [Serialization & Resiliency](./docs/serialization.md) | Circular reference protection, automated timeouts, and the Safe Pipeline. |
|
|
568
|
+
| ⚙️ | [Middleware & Frameworks](./docs/middleware.md) | Integration patterns for Express, NestJS, and more via Universal Contracts. |
|
|
554
569
|
| 🏢 | [Enterprise Patterns](./docs/enterprise.md) | Scalable architectures, ELK, Kubernetes, and compliance. |
|
|
555
570
|
| 🧪 | [Testing Strategy](./docs/testing.md) | Zero-boilerplate mocking with `SyntropyLogMock`. |
|
|
556
571
|
| 🎭 | [Core Philosophy](./docs/philosophy.md) | The "Silent Observer" principle and error handling strategy. |
|
package/dist/SyntropyLog.js
CHANGED
|
@@ -90,10 +90,10 @@ export class SyntropyLog extends EventEmitter {
|
|
|
90
90
|
return this.lifecycleManager.maskingEngine;
|
|
91
91
|
}
|
|
92
92
|
getSerializer() {
|
|
93
|
-
if (!this.lifecycleManager.
|
|
94
|
-
throw new Error('
|
|
93
|
+
if (!this.lifecycleManager.serializationManager) {
|
|
94
|
+
throw new Error('SerializationManager not available.');
|
|
95
95
|
}
|
|
96
|
-
return this.lifecycleManager.
|
|
96
|
+
return this.lifecycleManager.serializationManager;
|
|
97
97
|
}
|
|
98
98
|
_resetForTesting() {
|
|
99
99
|
// This needs to re-create the lifecycle manager to properly reset state
|
package/dist/SyntropyLog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyntropyLog.js","sourceRoot":"","sources":["../src/SyntropyLog.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"SyntropyLog.js","sourceRoot":"","sources":["../src/SyntropyLog.ts"],"names":[],"mappings":"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"}
|
package/dist/config.schema.js
CHANGED
|
@@ -14,7 +14,7 @@ const loggerOptionsSchema = z
|
|
|
14
14
|
.object({
|
|
15
15
|
name: z.string().optional(),
|
|
16
16
|
level: z
|
|
17
|
-
.enum(['fatal', 'error', 'warn', 'info', 'debug', 'trace', 'silent'])
|
|
17
|
+
.enum(['audit', 'fatal', 'error', 'warn', 'info', 'debug', 'trace', 'silent'])
|
|
18
18
|
.optional(),
|
|
19
19
|
serviceName: z.string().optional(),
|
|
20
20
|
/**
|
|
@@ -27,13 +27,6 @@ const loggerOptionsSchema = z
|
|
|
27
27
|
z.record(z.string(), z.array(z.instanceof(Transport))),
|
|
28
28
|
])
|
|
29
29
|
.optional(),
|
|
30
|
-
/**
|
|
31
|
-
* A dictionary of custom serializer functions. The key is the field
|
|
32
|
-
* to look for in the log object, and the value is the function that transforms it.
|
|
33
|
-
*/
|
|
34
|
-
serializers: z
|
|
35
|
-
.record(z.string(), z.function(z.tuple([z.unknown()]), z.string()))
|
|
36
|
-
.optional(),
|
|
37
30
|
/**
|
|
38
31
|
* The maximum time in milliseconds a custom serializer can run before being timed out.
|
|
39
32
|
* @default 50
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.schema.js","sourceRoot":"","sources":["../src/config.schema.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAG1D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D;;;GAGG;AACH,MAAM,mBAAmB,GAAG,CAAC;KAC1B,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,KAAK,EAAE,CAAC;SACL,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"config.schema.js","sourceRoot":"","sources":["../src/config.schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { LoggerFactory } from '../logger/LoggerFactory';
|
|
|
6
6
|
import { sanitizeConfig } from '../utils/sanitizeConfig';
|
|
7
7
|
import { HttpManager } from '../http/HttpManager';
|
|
8
8
|
import { BrokerManager } from '../brokers/BrokerManager';
|
|
9
|
-
import {
|
|
9
|
+
import { SerializationManager } from '../serialization/SerializationManager';
|
|
10
10
|
import { MaskingEngine } from '../masking/MaskingEngine';
|
|
11
11
|
import { errorToJsonValue } from '../types';
|
|
12
12
|
export class LifecycleManager extends EventEmitter {
|
|
@@ -17,7 +17,7 @@ export class LifecycleManager extends EventEmitter {
|
|
|
17
17
|
redisManager; // ✅ Internal, no exposed
|
|
18
18
|
httpManager;
|
|
19
19
|
brokerManager;
|
|
20
|
-
|
|
20
|
+
serializationManager;
|
|
21
21
|
maskingEngine;
|
|
22
22
|
logger = null;
|
|
23
23
|
syntropyFacade;
|
|
@@ -26,7 +26,7 @@ export class LifecycleManager extends EventEmitter {
|
|
|
26
26
|
this.syntropyFacade = syntropyFacade;
|
|
27
27
|
// Initialize properties here to satisfy TypeScript's strict checks
|
|
28
28
|
this.config = {};
|
|
29
|
-
this.
|
|
29
|
+
this.serializationManager = new SerializationManager({});
|
|
30
30
|
this.maskingEngine = new MaskingEngine({});
|
|
31
31
|
}
|
|
32
32
|
getState() {
|
|
@@ -46,9 +46,9 @@ export class LifecycleManager extends EventEmitter {
|
|
|
46
46
|
if (this.config.context) {
|
|
47
47
|
this.contextManager.configure(this.config.context);
|
|
48
48
|
}
|
|
49
|
-
this.
|
|
50
|
-
serializers: this.config.logger?.serializers,
|
|
49
|
+
this.serializationManager = new SerializationManager({
|
|
51
50
|
timeoutMs: this.config.logger?.serializerTimeoutMs,
|
|
51
|
+
sanitizeSensitiveData: this.config.masking?.enableDefaultRules !== false,
|
|
52
52
|
});
|
|
53
53
|
this.maskingEngine = new MaskingEngine({
|
|
54
54
|
rules: this.config.masking?.rules,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LifecycleManager.js","sourceRoot":"","sources":["../../src/core/LifecycleManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAE/B,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAmB,MAAM,YAAY,CAAC;AAE7D,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"LifecycleManager.js","sourceRoot":"","sources":["../../src/core/LifecycleManager.ts"],"names":[],"mappings":"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"}
|