@anglr/common 18.0.0-beta.20230822095843 → 18.0.0-beta.20230823095018
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 +125 -0
- package/es2022/floating-ui/src/services/floatingUiDomPosition.service.js +7 -22
- package/es2022/floating-ui/src/services/floatingUiDomPosition.service.js.map +1 -1
- package/es2022/src/index.js +4 -3
- package/es2022/src/index.js.map +1 -1
- package/es2022/src/modules/castPipes/pipes/castType/castType.pipe.js.map +1 -1
- package/es2022/src/modules/logger/components/console/console.component.animations.js.map +1 -0
- package/es2022/src/modules/logger/components/console/console.component.js +106 -0
- package/es2022/src/modules/logger/components/console/console.component.js.map +1 -0
- package/es2022/src/modules/logger/components/index.js +3 -0
- package/es2022/src/modules/logger/components/index.js.map +1 -0
- package/es2022/src/modules/logger/decorators/index.js +2 -0
- package/es2022/src/modules/logger/decorators/index.js.map +1 -0
- package/es2022/src/modules/logger/decorators/loggerSink.decorator.js +28 -0
- package/es2022/src/modules/logger/decorators/loggerSink.decorator.js.map +1 -0
- package/es2022/src/modules/logger/index.js +7 -0
- package/es2022/src/modules/logger/index.js.map +1 -0
- package/es2022/src/modules/logger/interfaces/index.js +7 -0
- package/es2022/src/modules/logger/interfaces/index.js.map +1 -0
- package/es2022/src/modules/logger/interfaces/loggerConfiguration.interface.js +2 -0
- package/es2022/src/modules/logger/interfaces/loggerConfiguration.interface.js.map +1 -0
- package/es2022/src/modules/logger/interfaces/loggerConsoleComponent.interface.js +2 -0
- package/es2022/src/modules/logger/interfaces/loggerConsoleComponent.interface.js.map +1 -0
- package/es2022/src/modules/logger/interfaces/loggerEnricher.interface.js +2 -0
- package/es2022/src/modules/logger/interfaces/loggerEnricher.interface.js.map +1 -0
- package/es2022/src/modules/logger/interfaces/loggerFilter.interface.js +2 -0
- package/es2022/src/modules/logger/interfaces/loggerFilter.interface.js.map +1 -0
- package/es2022/src/modules/logger/interfaces/loggerRest.interface.js +2 -0
- package/es2022/src/modules/logger/interfaces/loggerRest.interface.js.map +1 -0
- package/es2022/src/modules/logger/interfaces/loggerSink.interface.js +2 -0
- package/es2022/src/modules/logger/interfaces/loggerSink.interface.js.map +1 -0
- package/es2022/src/modules/logger/misc/index.js +5 -0
- package/es2022/src/modules/logger/misc/index.js.map +1 -0
- package/es2022/src/modules/logger/misc/providers.js +56 -0
- package/es2022/src/modules/logger/misc/providers.js.map +1 -0
- package/es2022/src/modules/logger/misc/tokens.js +11 -0
- package/es2022/src/modules/logger/misc/tokens.js.map +1 -0
- package/es2022/src/modules/logger/misc/types.js +2 -0
- package/es2022/src/modules/logger/misc/types.js.map +1 -0
- package/es2022/src/modules/logger/misc/utils.js +24 -0
- package/es2022/src/modules/logger/misc/utils.js.map +1 -0
- package/es2022/src/modules/logger/services/console/consoleComponent.sink.js +67 -0
- package/es2022/src/modules/logger/services/console/consoleComponent.sink.js.map +1 -0
- package/es2022/src/modules/logger/services/console/consoleComponentSink.options.js +31 -0
- package/es2022/src/modules/logger/services/console/consoleComponentSink.options.js.map +1 -0
- package/es2022/src/modules/logger/services/developmentConsoleSink/developmentConsole.sink.js +68 -0
- package/es2022/src/modules/logger/services/developmentConsoleSink/developmentConsole.sink.js.map +1 -0
- package/es2022/src/modules/logger/services/index.js +11 -0
- package/es2022/src/modules/logger/services/index.js.map +1 -0
- package/es2022/src/modules/logger/services/logLevelEnricher/logLevelEnricher.enricher.js +52 -0
- package/es2022/src/modules/logger/services/logLevelEnricher/logLevelEnricher.enricher.js.map +1 -0
- package/es2022/src/modules/logger/services/logger/logger.interface.js.map +1 -0
- package/es2022/src/modules/logger/services/logger/logger.service.js +107 -0
- package/es2022/src/modules/logger/services/logger/logger.service.js.map +1 -0
- package/es2022/src/modules/logger/services/rest/rest.sink.js +100 -0
- package/es2022/src/modules/logger/services/rest/rest.sink.js.map +1 -0
- package/es2022/src/modules/logger/services/rest/restSink.options.js +43 -0
- package/es2022/src/modules/logger/services/rest/restSink.options.js.map +1 -0
- package/es2022/src/modules/logger/services/subLoggerSink/subLogger.sink.js +46 -0
- package/es2022/src/modules/logger/services/subLoggerSink/subLogger.sink.js.map +1 -0
- package/es2022/src/modules/logger/services/timestampEnricher/timestamp.enricher.js +14 -0
- package/es2022/src/modules/logger/services/timestampEnricher/timestamp.enricher.js.map +1 -0
- package/es2022/src/modules/logger/types/index.js +4 -0
- package/es2022/src/modules/logger/types/index.js.map +1 -0
- package/es2022/src/modules/logger/types/logLevel.enum.js +35 -0
- package/es2022/src/modules/logger/types/logLevel.enum.js.map +1 -0
- package/es2022/src/modules/logger/types/loggerConfiguration.js +114 -0
- package/es2022/src/modules/logger/types/loggerConfiguration.js.map +1 -0
- package/es2022/src/modules/logger/types/loggerOptions.js +41 -0
- package/es2022/src/modules/logger/types/loggerOptions.js.map +1 -0
- package/es2022/src/modules/logger/types/messageLog.js +55 -0
- package/es2022/src/modules/logger/types/messageLog.js.map +1 -0
- package/es2022/src/services/permanentStorage/cookiePermanentStorage.service.js +13 -27
- package/es2022/src/services/permanentStorage/cookiePermanentStorage.service.js.map +1 -1
- package/es2022/src/services/permanentStorage/permanentStorage.interface.js.map +1 -1
- package/es2022/src/services/position/position.interface.js.map +1 -1
- package/es2022/src/services/stringLocalization/noStringLocalization.service.js +5 -5
- package/es2022/src/services/stringLocalization/noStringLocalization.service.js.map +1 -1
- package/es2022/src/services/stringLocalization/stringLocalization.interface.js.map +1 -1
- package/es2022/src/services/temporaryStorage/memoryTemporaryStorage.service.js +5 -5
- package/es2022/src/services/temporaryStorage/memoryTemporaryStorage.service.js.map +1 -1
- package/es2022/src/services/temporaryStorage/temporaryStorage.interface.js.map +1 -1
- package/es2022/src/types/providers.js.map +1 -1
- package/es2022/src/types/tokens.js +7 -7
- package/es2022/src/types/tokens.js.map +1 -1
- package/es2022/store/src/index.js +1 -1
- package/es2022/store/src/index.js.map +1 -1
- package/es2022/store/src/services/permanentStorage/localPermanentStorage.service.js +13 -27
- package/es2022/store/src/services/permanentStorage/localPermanentStorage.service.js.map +1 -1
- package/es2022/store/src/services/temporaryStorage/sessionTemporaryStorage.service.js +11 -26
- package/es2022/store/src/services/temporaryStorage/sessionTemporaryStorage.service.js.map +1 -1
- package/floating-ui/src/services/floatingUiDomPosition.service.d.ts +1 -5
- package/floating-ui/src/services/floatingUiDomPosition.service.d.ts.map +1 -1
- package/package.json +4 -30
- package/readme.md +0 -2
- package/src/index.d.ts +4 -4
- package/src/index.d.ts.map +1 -1
- package/src/modules/castPipes/pipes/castType/castType.pipe.d.ts +1 -1
- package/src/modules/castPipes/pipes/castType/castType.pipe.d.ts.map +1 -1
- package/src/modules/logger/components/console/console.component.d.ts +56 -0
- package/src/modules/logger/components/console/console.component.d.ts.map +1 -0
- package/src/modules/logger/components/index.d.ts +3 -0
- package/src/modules/logger/components/index.d.ts.map +1 -0
- package/src/modules/logger/decorators/index.d.ts +2 -0
- package/{positions/src → src/modules/logger/decorators}/index.d.ts.map +1 -1
- package/src/modules/logger/decorators/loggerSink.decorator.d.ts +11 -0
- package/src/modules/logger/decorators/loggerSink.decorator.d.ts.map +1 -0
- package/src/modules/logger/index.d.ts +7 -0
- package/src/modules/logger/index.d.ts.map +1 -0
- package/src/modules/logger/interfaces/index.d.ts +7 -0
- package/src/modules/logger/interfaces/index.d.ts.map +1 -0
- package/src/modules/logger/interfaces/loggerConfiguration.interface.d.ts +39 -0
- package/src/modules/logger/interfaces/loggerConfiguration.interface.d.ts.map +1 -0
- package/src/modules/logger/interfaces/loggerConsoleComponent.interface.d.ts +36 -0
- package/src/modules/logger/interfaces/loggerConsoleComponent.interface.d.ts.map +1 -0
- package/src/modules/logger/interfaces/loggerEnricher.interface.d.ts +19 -0
- package/src/modules/logger/interfaces/loggerEnricher.interface.d.ts.map +1 -0
- package/src/modules/logger/interfaces/loggerFilter.interface.d.ts +13 -0
- package/src/modules/logger/interfaces/loggerFilter.interface.d.ts.map +1 -0
- package/src/modules/logger/interfaces/loggerRest.interface.d.ts +29 -0
- package/src/modules/logger/interfaces/loggerRest.interface.d.ts.map +1 -0
- package/src/modules/logger/interfaces/loggerSink.interface.d.ts +35 -0
- package/src/modules/logger/interfaces/loggerSink.interface.d.ts.map +1 -0
- package/src/modules/logger/misc/index.d.ts +5 -0
- package/src/modules/logger/misc/index.d.ts.map +1 -0
- package/src/modules/logger/misc/providers.d.ts +25 -0
- package/src/modules/logger/misc/providers.d.ts.map +1 -0
- package/src/modules/logger/misc/tokens.d.ts +11 -0
- package/src/modules/logger/misc/tokens.d.ts.map +1 -0
- package/src/modules/logger/misc/types.d.ts +20 -0
- package/src/modules/logger/misc/types.d.ts.map +1 -0
- package/src/modules/logger/misc/utils.d.ts +15 -0
- package/src/modules/logger/misc/utils.d.ts.map +1 -0
- package/src/modules/logger/services/console/consoleComponent.sink.d.ts +38 -0
- package/src/modules/logger/services/console/consoleComponent.sink.d.ts.map +1 -0
- package/src/modules/logger/services/console/consoleComponentSink.options.d.ts +14 -0
- package/src/modules/logger/services/console/consoleComponentSink.options.d.ts.map +1 -0
- package/src/modules/logger/services/developmentConsoleSink/developmentConsole.sink.d.ts +18 -0
- package/src/modules/logger/services/developmentConsoleSink/developmentConsole.sink.d.ts.map +1 -0
- package/src/modules/logger/services/index.d.ts +11 -0
- package/src/modules/logger/services/index.d.ts.map +1 -0
- package/src/modules/logger/services/logLevelEnricher/logLevelEnricher.enricher.d.ts +12 -0
- package/src/modules/logger/services/logLevelEnricher/logLevelEnricher.enricher.d.ts.map +1 -0
- package/src/modules/logger/services/logger/logger.interface.d.ts +42 -0
- package/src/modules/logger/services/logger/logger.interface.d.ts.map +1 -0
- package/src/modules/logger/services/logger/logger.service.d.ts +44 -0
- package/src/modules/logger/services/logger/logger.service.d.ts.map +1 -0
- package/src/modules/logger/services/rest/rest.sink.d.ts +42 -0
- package/src/modules/logger/services/rest/rest.sink.d.ts.map +1 -0
- package/{structured-log/src → src/modules/logger}/services/rest/restSink.options.d.ts +6 -7
- package/src/modules/logger/services/rest/restSink.options.d.ts.map +1 -0
- package/src/modules/logger/services/subLoggerSink/subLogger.sink.d.ts +27 -0
- package/src/modules/logger/services/subLoggerSink/subLogger.sink.d.ts.map +1 -0
- package/src/modules/logger/services/timestampEnricher/timestamp.enricher.d.ts +12 -0
- package/src/modules/logger/services/timestampEnricher/timestamp.enricher.d.ts.map +1 -0
- package/src/modules/logger/types/index.d.ts +4 -0
- package/src/modules/logger/types/index.d.ts.map +1 -0
- package/src/modules/logger/types/logLevel.enum.d.ts +34 -0
- package/src/modules/logger/types/logLevel.enum.d.ts.map +1 -0
- package/src/modules/logger/types/loggerConfiguration.d.ts +54 -0
- package/src/modules/logger/types/loggerConfiguration.d.ts.map +1 -0
- package/src/modules/logger/types/loggerOptions.d.ts +35 -0
- package/src/modules/logger/types/loggerOptions.d.ts.map +1 -0
- package/src/modules/logger/types/messageLog.d.ts +34 -0
- package/src/modules/logger/types/messageLog.d.ts.map +1 -0
- package/src/services/permanentStorage/cookiePermanentStorage.service.d.ts +4 -8
- package/src/services/permanentStorage/cookiePermanentStorage.service.d.ts.map +1 -1
- package/src/services/permanentStorage/permanentStorage.interface.d.ts +0 -6
- package/src/services/permanentStorage/permanentStorage.interface.d.ts.map +1 -1
- package/src/services/position/position.interface.d.ts +0 -6
- package/src/services/position/position.interface.d.ts.map +1 -1
- package/src/services/stringLocalization/noStringLocalization.service.d.ts +3 -3
- package/src/services/stringLocalization/noStringLocalization.service.d.ts.map +1 -1
- package/src/services/stringLocalization/stringLocalization.interface.d.ts +0 -6
- package/src/services/stringLocalization/stringLocalization.interface.d.ts.map +1 -1
- package/src/services/temporaryStorage/memoryTemporaryStorage.service.d.ts +3 -3
- package/src/services/temporaryStorage/memoryTemporaryStorage.service.d.ts.map +1 -1
- package/src/services/temporaryStorage/temporaryStorage.interface.d.ts +0 -6
- package/src/services/temporaryStorage/temporaryStorage.interface.d.ts.map +1 -1
- package/src/types/providers.d.ts +11 -11
- package/src/types/providers.d.ts.map +1 -1
- package/src/types/tokens.d.ts +1 -1
- package/src/types/tokens.d.ts.map +1 -1
- package/store/src/index.d.ts +1 -1
- package/store/src/index.d.ts.map +1 -1
- package/store/src/services/permanentStorage/localPermanentStorage.service.d.ts +4 -8
- package/store/src/services/permanentStorage/localPermanentStorage.service.d.ts.map +1 -1
- package/store/src/services/temporaryStorage/sessionTemporaryStorage.service.d.ts +4 -8
- package/store/src/services/temporaryStorage/sessionTemporaryStorage.service.d.ts.map +1 -1
- package/version.bak +1 -1
- package/es2022/positions/src/index.js +0 -2
- package/es2022/positions/src/index.js.map +0 -1
- package/es2022/positions/src/misc/utils.js +0 -109
- package/es2022/positions/src/misc/utils.js.map +0 -1
- package/es2022/src/services/logger/index.js +0 -3
- package/es2022/src/services/logger/index.js.map +0 -1
- package/es2022/src/services/logger/logger.interface.js.map +0 -1
- package/es2022/src/services/logger/logger.service.js +0 -18
- package/es2022/src/services/logger/logger.service.js.map +0 -1
- package/es2022/structured-log/src/components/console/console.component.animations.js.map +0 -1
- package/es2022/structured-log/src/components/console/console.component.js +0 -103
- package/es2022/structured-log/src/components/console/console.component.js.map +0 -1
- package/es2022/structured-log/src/index.js +0 -15
- package/es2022/structured-log/src/index.js.map +0 -1
- package/es2022/structured-log/src/misc/providers.js +0 -12
- package/es2022/structured-log/src/misc/providers.js.map +0 -1
- package/es2022/structured-log/src/misc/utils.js +0 -39
- package/es2022/structured-log/src/misc/utils.js.map +0 -1
- package/es2022/structured-log/src/modules/consoleLog.module.js +0 -28
- package/es2022/structured-log/src/modules/consoleLog.module.js.map +0 -1
- package/es2022/structured-log/src/services/console/consoleComponentSink.service.js +0 -98
- package/es2022/structured-log/src/services/console/consoleComponentSink.service.js.map +0 -1
- package/es2022/structured-log/src/services/console/consoleSinkConfig.service.js +0 -47
- package/es2022/structured-log/src/services/console/consoleSinkConfig.service.js.map +0 -1
- package/es2022/structured-log/src/services/developerConsole/developerConsoleSink.options.js +0 -18
- package/es2022/structured-log/src/services/developerConsole/developerConsoleSink.options.js.map +0 -1
- package/es2022/structured-log/src/services/developerConsole/developerConsoleSink.service.js +0 -124
- package/es2022/structured-log/src/services/developerConsole/developerConsoleSink.service.js.map +0 -1
- package/es2022/structured-log/src/services/logger.service.js +0 -71
- package/es2022/structured-log/src/services/logger.service.js.map +0 -1
- package/es2022/structured-log/src/services/rest/restSink.options.js +0 -40
- package/es2022/structured-log/src/services/rest/restSink.options.js.map +0 -1
- package/es2022/structured-log/src/services/rest/restSink.service.js +0 -136
- package/es2022/structured-log/src/services/rest/restSink.service.js.map +0 -1
- package/es2022/structured-log/src/types/logger.interface.js +0 -2
- package/es2022/structured-log/src/types/logger.interface.js.map +0 -1
- package/es2022/structured-log/src/types/tokens.js +0 -56
- package/es2022/structured-log/src/types/tokens.js.map +0 -1
- package/positions/package.json +0 -8
- package/positions/src/index.d.ts +0 -2
- package/positions/src/misc/utils.d.ts +0 -22
- package/positions/src/misc/utils.d.ts.map +0 -1
- package/src/services/logger/index.d.ts +0 -3
- package/src/services/logger/index.d.ts.map +0 -1
- package/src/services/logger/logger.interface.d.ts +0 -90
- package/src/services/logger/logger.interface.d.ts.map +0 -1
- package/src/services/logger/logger.service.d.ts +0 -85
- package/src/services/logger/logger.service.d.ts.map +0 -1
- package/structured-log/package.json +0 -8
- package/structured-log/src/components/console/console.component.d.ts +0 -55
- package/structured-log/src/components/console/console.component.d.ts.map +0 -1
- package/structured-log/src/index.d.ts +0 -15
- package/structured-log/src/index.d.ts.map +0 -1
- package/structured-log/src/misc/providers.d.ts +0 -6
- package/structured-log/src/misc/providers.d.ts.map +0 -1
- package/structured-log/src/misc/utils.d.ts +0 -14
- package/structured-log/src/misc/utils.d.ts.map +0 -1
- package/structured-log/src/modules/consoleLog.module.d.ts +0 -12
- package/structured-log/src/modules/consoleLog.module.d.ts.map +0 -1
- package/structured-log/src/services/console/consoleComponentSink.service.d.ts +0 -45
- package/structured-log/src/services/console/consoleComponentSink.service.d.ts.map +0 -1
- package/structured-log/src/services/console/consoleSinkConfig.service.d.ts +0 -18
- package/structured-log/src/services/console/consoleSinkConfig.service.d.ts.map +0 -1
- package/structured-log/src/services/developerConsole/developerConsoleSink.options.d.ts +0 -12
- package/structured-log/src/services/developerConsole/developerConsoleSink.options.d.ts.map +0 -1
- package/structured-log/src/services/developerConsole/developerConsoleSink.service.d.ts +0 -39
- package/structured-log/src/services/developerConsole/developerConsoleSink.service.d.ts.map +0 -1
- package/structured-log/src/services/logger.service.d.ts +0 -98
- package/structured-log/src/services/logger.service.d.ts.map +0 -1
- package/structured-log/src/services/rest/restSink.options.d.ts.map +0 -1
- package/structured-log/src/services/rest/restSink.service.d.ts +0 -47
- package/structured-log/src/services/rest/restSink.service.d.ts.map +0 -1
- package/structured-log/src/types/logger.interface.d.ts +0 -63
- package/structured-log/src/types/logger.interface.d.ts.map +0 -1
- package/structured-log/src/types/tokens.d.ts +0 -38
- package/structured-log/src/types/tokens.d.ts.map +0 -1
- package/typings/positions/index.d.ts +0 -41
- package/typings/structured-log/index.d.ts +0 -391
- /package/es2022/{structured-log/src → src/modules/logger}/components/console/console.component.animations.js +0 -0
- /package/es2022/src/{services → modules/logger/services}/logger/logger.interface.js +0 -0
- /package/{structured-log/src → src/modules/logger}/components/console/console.component.animations.d.ts +0 -0
- /package/{structured-log/src → src/modules/logger}/components/console/console.component.animations.d.ts.map +0 -0
- /package/{structured-log/src → src/modules/logger}/components/console/console.component.css +0 -0
- /package/{structured-log/src → src/modules/logger}/components/console/console.component.html +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/logger/misc/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC","sourcesContent":["export * from './providers';\nexport * from './tokens';\nexport * from './types';\nexport * from './utils';\n"]}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { makeEnvironmentProviders } from '@angular/core';
|
|
2
|
+
import { LoggerConfigurationImpl } from '../types/loggerConfiguration';
|
|
3
|
+
import { LoggerOptions } from '../types';
|
|
4
|
+
import { LOGGER_REST_CLIENT } from './tokens';
|
|
5
|
+
import { ConsoleComponentSinkOptions, RestSinkOptions } from '../services';
|
|
6
|
+
/**
|
|
7
|
+
* Provides configuration for default built-in logger
|
|
8
|
+
* @param configBuilder - Configuration builder that is used for configuring logger
|
|
9
|
+
*/
|
|
10
|
+
export function provideLoggerConfig(configBuilder) {
|
|
11
|
+
const config = new LoggerConfigurationImpl();
|
|
12
|
+
configBuilder(config);
|
|
13
|
+
return makeEnvironmentProviders([
|
|
14
|
+
{
|
|
15
|
+
provide: LoggerOptions,
|
|
16
|
+
useFactory: config.buildOptions.bind(config),
|
|
17
|
+
}
|
|
18
|
+
]);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Provides logger rest client
|
|
22
|
+
* @param type - Type that implements `LoggerRestClient`
|
|
23
|
+
*/
|
|
24
|
+
export function provideLoggerRestClient(type) {
|
|
25
|
+
return makeEnvironmentProviders([
|
|
26
|
+
{
|
|
27
|
+
provide: LOGGER_REST_CLIENT,
|
|
28
|
+
useClass: type,
|
|
29
|
+
}
|
|
30
|
+
]);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Provides `ConsoleComponentSinkOptions`
|
|
34
|
+
* @param options - Value of options to be provided
|
|
35
|
+
*/
|
|
36
|
+
export function provideConsoleComponentSinkOptions(options) {
|
|
37
|
+
return makeEnvironmentProviders([
|
|
38
|
+
{
|
|
39
|
+
provide: ConsoleComponentSinkOptions,
|
|
40
|
+
useValue: options,
|
|
41
|
+
}
|
|
42
|
+
]);
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Provides `RestSinkOptions`
|
|
46
|
+
* @param options - Value of options to be provided
|
|
47
|
+
*/
|
|
48
|
+
export function provideRestSinkOptions(options) {
|
|
49
|
+
return makeEnvironmentProviders([
|
|
50
|
+
{
|
|
51
|
+
provide: RestSinkOptions,
|
|
52
|
+
useValue: options,
|
|
53
|
+
}
|
|
54
|
+
]);
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=providers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"providers.js","sourceRoot":"","sources":["../../../../../src/modules/logger/misc/providers.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4E,wBAAwB,EAAC,MAAM,eAAe,CAAC;AAIlI,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAC,aAAa,EAAC,MAAM,UAAU,CAAC;AACvC,OAAO,EAAC,kBAAkB,EAAC,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAC,2BAA2B,EAAE,eAAe,EAAC,MAAM,aAAa,CAAC;AAEzE;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,aAA2C;IAE3E,MAAM,MAAM,GAAG,IAAI,uBAAuB,EAAE,CAAC;IAE7C,aAAa,CAAC,MAAM,CAAC,CAAC;IAEtB,OAAO,wBAAwB,CAC/B;QAEI;YACI,OAAO,EAAE,aAAa;YACtB,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC;SAC/C;KACJ,CAAC,CAAC;AACP,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAA4B;IAEhE,OAAO,wBAAwB,CAC/B;QAEI;YACI,OAAO,EAAE,kBAAkB;YAC3B,QAAQ,EAAE,IAAI;SACjB;KACJ,CAAC,CAAC;AACP,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kCAAkC,CAAC,OAAoC;IAEnF,OAAO,wBAAwB,CAC/B;QAEI;YACI,OAAO,EAAE,2BAA2B;YACpC,QAAQ,EAAE,OAAO;SACpB;KACJ,CAAC,CAAC;AACP,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAwB;IAE3D,OAAO,wBAAwB,CAC/B;QAEI;YACI,OAAO,EAAE,eAAe;YACxB,QAAQ,EAAE,OAAO;SACpB;KACJ,CAAC,CAAC;AACP,CAAC","sourcesContent":["import {ClassProvider, EnvironmentProviders, FactoryProvider, Type, ValueProvider, makeEnvironmentProviders} from '@angular/core';\nimport {Action1} from '@jscrpt/common';\n\nimport {LoggerConfiguration, LoggerRestClient} from '../interfaces';\nimport {LoggerConfigurationImpl} from '../types/loggerConfiguration';\nimport {LoggerOptions} from '../types';\nimport {LOGGER_REST_CLIENT} from './tokens';\nimport {ConsoleComponentSinkOptions, RestSinkOptions} from '../services';\n\n/**\n * Provides configuration for default built-in logger\n * @param configBuilder - Configuration builder that is used for configuring logger\n */\nexport function provideLoggerConfig(configBuilder: Action1<LoggerConfiguration>): EnvironmentProviders\n{\n const config = new LoggerConfigurationImpl();\n\n configBuilder(config);\n\n return makeEnvironmentProviders(\n [\n <FactoryProvider>\n {\n provide: LoggerOptions,\n useFactory: config.buildOptions.bind(config),\n }\n ]);\n}\n\n/**\n * Provides logger rest client\n * @param type - Type that implements `LoggerRestClient`\n */\nexport function provideLoggerRestClient(type: Type<LoggerRestClient>): EnvironmentProviders\n{\n return makeEnvironmentProviders(\n [\n <ClassProvider>\n {\n provide: LOGGER_REST_CLIENT,\n useClass: type,\n }\n ]);\n}\n\n/**\n * Provides `ConsoleComponentSinkOptions`\n * @param options - Value of options to be provided\n */\nexport function provideConsoleComponentSinkOptions(options: ConsoleComponentSinkOptions): EnvironmentProviders\n{\n return makeEnvironmentProviders(\n [\n <ValueProvider>\n {\n provide: ConsoleComponentSinkOptions,\n useValue: options,\n }\n ]);\n}\n\n/**\n * Provides `RestSinkOptions`\n * @param options - Value of options to be provided\n */\nexport function provideRestSinkOptions(options: RestSinkOptions): EnvironmentProviders\n{\n return makeEnvironmentProviders(\n [\n <ValueProvider>\n {\n provide: RestSinkOptions,\n useValue: options,\n }\n ]);\n}\n"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
import { ConsoleComponentSink } from '../services/console/consoleComponent.sink';
|
|
3
|
+
/**
|
|
4
|
+
* Injection token for obtaining sink service for `ConsoleComponent`
|
|
5
|
+
*/
|
|
6
|
+
export const CONSOLE_COMPONENT_SINK_SERVICE = new InjectionToken('CONSOLE_COMPONENT_SINK_SERVICE', { factory: () => new ConsoleComponentSink() });
|
|
7
|
+
/**
|
|
8
|
+
* Injection token for obtaining rest client for rest sink
|
|
9
|
+
*/
|
|
10
|
+
export const LOGGER_REST_CLIENT = new InjectionToken('LOGGER_REST_CLIENT');
|
|
11
|
+
//# sourceMappingURL=tokens.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../../../../src/modules/logger/misc/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAC,oBAAoB,EAAC,MAAM,2CAA2C,CAAC;AAG/E;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAA6C,IAAI,cAAc,CAA2B,gCAAgC,EAAE,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,oBAAoB,EAAE,EAAC,CAAC,CAAC;AAEpN;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAqC,IAAI,cAAc,CAAmB,oBAAoB,CAAC,CAAC","sourcesContent":["import {InjectionToken} from '@angular/core';\n\nimport {ConsoleComponentSink} from '../services/console/consoleComponent.sink';\nimport {ConsoleComponentSinkData, LoggerRestClient} from '../interfaces';\n\n/**\n * Injection token for obtaining sink service for `ConsoleComponent`\n */\nexport const CONSOLE_COMPONENT_SINK_SERVICE: InjectionToken<ConsoleComponentSinkData> = new InjectionToken<ConsoleComponentSinkData>('CONSOLE_COMPONENT_SINK_SERVICE', {factory: () => new ConsoleComponentSink()});\n\n/**\n * Injection token for obtaining rest client for rest sink\n */\nexport const LOGGER_REST_CLIENT: InjectionToken<LoggerRestClient> = new InjectionToken<LoggerRestClient>('LOGGER_REST_CLIENT');\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/modules/logger/misc/types.ts"],"names":[],"mappings":"","sourcesContent":["import {Func1} from '@jscrpt/common';\n\nimport {LogLevel} from '../types';\nimport {LoggerConfiguration, LoggerSinkType} from '../interfaces';\n\n/**\n * Getter for obtaining minimum log level\n */\nexport type MinLogLevelGetter = () => LogLevel;\n\n/**\n * Factory that is used for obtaining minimum log level getter\n */\nexport type MinLogLevelGetterFactory = () => MinLogLevelGetter;\n\n/**\n * Static log level, or function that returns log level or function that returns function which is used like getter for log level\n */\nexport type MinimumLevelConfig = LogLevel|MinLogLevelGetter|MinLogLevelGetterFactory;\n\n/**\n * Type of sink or function that creates sublogger with custom configuration\n */\nexport type WriteToConfig = LoggerSinkType|Func1<LogLevel, LoggerConfiguration>;"]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { isBlank } from '@jscrpt/common';
|
|
2
|
+
/**
|
|
3
|
+
* Tests whether is logger sink enabled
|
|
4
|
+
* @param minimumLogLevel - Minimum log level to be tested
|
|
5
|
+
* @param messageLogLevel - Message log level
|
|
6
|
+
*/
|
|
7
|
+
export function loggerEnabled(minimumLogLevel, messageLogLevel) {
|
|
8
|
+
if (isBlank(minimumLogLevel)) {
|
|
9
|
+
return true;
|
|
10
|
+
}
|
|
11
|
+
return minimumLogLevel() <= messageLogLevel;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Creates logger properties by using enrichers
|
|
15
|
+
* @param messageLog - Message log to be used for creating enrichers
|
|
16
|
+
*/
|
|
17
|
+
export function useEnrichers(messageLog, enrichers) {
|
|
18
|
+
const properties = {};
|
|
19
|
+
for (const enricher of enrichers) {
|
|
20
|
+
enricher.enrich(properties, messageLog);
|
|
21
|
+
}
|
|
22
|
+
return properties;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/modules/logger/misc/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,gBAAgB,CAAC;AAMvC;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,eAAiD,EAAE,eAAyB;IAEtG,IAAG,OAAO,CAAC,eAAe,CAAC,EAC3B;QACI,OAAO,IAAI,CAAC;KACf;IAED,OAAO,eAAe,EAAE,IAAI,eAAe,CAAC;AAChD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,UAAsB,EAAE,SAA2B;IAE5E,MAAM,UAAU,GAA4B,EAAE,CAAC;IAE/C,KAAI,MAAM,QAAQ,IAAI,SAAS,EAC/B;QACI,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;KAC3C;IAED,OAAO,UAAU,CAAC;AACtB,CAAC","sourcesContent":["import {isBlank} from '@jscrpt/common';\n\nimport {LogLevel, MessageLog} from '../types';\nimport {MinLogLevelGetter} from './types';\nimport {LoggerEnricher} from '../interfaces';\n\n/**\n * Tests whether is logger sink enabled\n * @param minimumLogLevel - Minimum log level to be tested\n * @param messageLogLevel - Message log level\n */\nexport function loggerEnabled(minimumLogLevel: MinLogLevelGetter|null|undefined, messageLogLevel: LogLevel): boolean\n{\n if(isBlank(minimumLogLevel))\n {\n return true;\n }\n\n return minimumLogLevel() <= messageLogLevel;\n}\n\n/**\n * Creates logger properties by using enrichers\n * @param messageLog - Message log to be used for creating enrichers\n */\nexport function useEnrichers(messageLog: MessageLog, enrichers: LoggerEnricher[]): Record<string, unknown>\n{\n const properties: Record<string, unknown> = {};\n\n for(const enricher of enrichers)\n {\n enricher.enrich(properties, messageLog);\n }\n\n return properties;\n}"]}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { inject } from '@angular/core';
|
|
3
|
+
import { Subject } from 'rxjs';
|
|
4
|
+
import { ConsoleComponentSinkOptions } from './consoleComponentSink.options';
|
|
5
|
+
import { LogLevel } from '../../types';
|
|
6
|
+
import { SinkType } from '../../decorators';
|
|
7
|
+
/**
|
|
8
|
+
* Sink that is used for storing logs in `ConsoleComponent`
|
|
9
|
+
*/
|
|
10
|
+
let ConsoleComponentSink = class ConsoleComponentSink {
|
|
11
|
+
//######################### protected fields #########################
|
|
12
|
+
/**
|
|
13
|
+
* Array of current logs
|
|
14
|
+
*/
|
|
15
|
+
currentLogs = [];
|
|
16
|
+
/**
|
|
17
|
+
* Subject used for indicating logs change
|
|
18
|
+
*/
|
|
19
|
+
logsChangeSubject = new Subject();
|
|
20
|
+
/**
|
|
21
|
+
* Options for this sink
|
|
22
|
+
*/
|
|
23
|
+
options = inject(ConsoleComponentSinkOptions);
|
|
24
|
+
//######################### public properties - implementation of ConsoleComponentSink #########################
|
|
25
|
+
/**
|
|
26
|
+
* Occurs when logs change
|
|
27
|
+
*/
|
|
28
|
+
get logsChange() {
|
|
29
|
+
return this.logsChangeSubject.asObservable();
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Gets current logs
|
|
33
|
+
*/
|
|
34
|
+
get logs() {
|
|
35
|
+
return this.currentLogs;
|
|
36
|
+
}
|
|
37
|
+
//######################### public methods - implementation of ConsoleComponentSinkData #########################
|
|
38
|
+
/**
|
|
39
|
+
* Clears all current logs
|
|
40
|
+
*/
|
|
41
|
+
clear() {
|
|
42
|
+
this.currentLogs = [];
|
|
43
|
+
this.logsChangeSubject.next();
|
|
44
|
+
}
|
|
45
|
+
//######################### public methods - implementation of LoggerSink #########################
|
|
46
|
+
/**
|
|
47
|
+
* @inheritdoc
|
|
48
|
+
*/
|
|
49
|
+
log(options, loggerProperties, messageLog) {
|
|
50
|
+
const fullMessage = `${messageLog.buildMessage(options.messageTemplate ?? '{{messageLog}}', loggerProperties)}`;
|
|
51
|
+
this.currentLogs.push({
|
|
52
|
+
text: fullMessage,
|
|
53
|
+
logLevel: LogLevel[messageLog.logLevel],
|
|
54
|
+
});
|
|
55
|
+
//TRIM LOGS
|
|
56
|
+
if (this.currentLogs.length > this.options.maxLogsCount) {
|
|
57
|
+
const removeCount = this.currentLogs.length - this.options.maxLogsCount;
|
|
58
|
+
this.currentLogs.splice(0, removeCount);
|
|
59
|
+
}
|
|
60
|
+
this.logsChangeSubject.next();
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
ConsoleComponentSink = __decorate([
|
|
64
|
+
SinkType()
|
|
65
|
+
], ConsoleComponentSink);
|
|
66
|
+
export { ConsoleComponentSink };
|
|
67
|
+
//# sourceMappingURL=consoleComponent.sink.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consoleComponent.sink.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/console/consoleComponent.sink.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AACrC,OAAO,EAAa,OAAO,EAAC,MAAM,MAAM,CAAC;AAEzC,OAAO,EAAC,2BAA2B,EAAC,MAAM,gCAAgC,CAAC;AAE3E,OAAO,EAAC,QAAQ,EAA4B,MAAM,aAAa,CAAC;AAChE,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAE1C;;GAEG;AAEH,IAAa,oBAAoB,GAAjC,MAAa,oBAAoB;IAE7B,sEAAsE;IAEtE;;OAEG;IACO,WAAW,GAA0B,EAAE,CAAC;IAElD;;OAEG;IACO,iBAAiB,GAAkB,IAAI,OAAO,EAAQ,CAAC;IAEjE;;OAEG;IACO,OAAO,GAAgC,MAAM,CAAC,2BAA2B,CAAC,CAAC;IAErF,gHAAgH;IAEhH;;OAEG;IACH,IAAW,UAAU;QAEjB,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,IAAW,IAAI;QAEX,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,iHAAiH;IAEjH;;OAEG;IACI,KAAK;QAER,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;IAClC,CAAC;IAED,mGAAmG;IAEnG;;OAEG;IACI,GAAG,CAAC,OAAsB,EAAE,gBAAyC,EAAE,UAA+C;QAEzH,MAAM,WAAW,GAAG,GAAG,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,eAAe,IAAI,gBAAgB,EAAE,gBAAgB,CAAC,EAAE,CAAC;QAEhH,IAAI,CAAC,WAAW,CAAC,IAAI,CACrB;YACI,IAAI,EAAE,WAAW;YACjB,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC;SAC1C,CAAC,CAAC;QAEH,WAAW;QACX,IAAG,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EACtD;YACI,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;YAExE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;SAC3C;QAED,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;IAClC,CAAC;CACJ,CAAA;AAzEY,oBAAoB;IADhC,QAAQ,EAAE;GACE,oBAAoB,CAyEhC;SAzEY,oBAAoB","sourcesContent":["import {inject} from '@angular/core';\nimport {Observable, Subject} from 'rxjs';\n\nimport {ConsoleComponentSinkOptions} from './consoleComponentSink.options';\nimport {ConsoleComponentLog, ConsoleComponentSinkData, LoggerSink} from '../../interfaces';\nimport {LogLevel, LoggerOptions, MessageLog} from '../../types';\nimport {SinkType} from '../../decorators';\n\n/**\n * Sink that is used for storing logs in `ConsoleComponent`\n */\n@SinkType()\nexport class ConsoleComponentSink implements LoggerSink, ConsoleComponentSinkData\n{\n //######################### protected fields #########################\n\n /**\n * Array of current logs\n */\n protected currentLogs: ConsoleComponentLog[] = [];\n\n /**\n * Subject used for indicating logs change\n */\n protected logsChangeSubject: Subject<void> = new Subject<void>();\n\n /**\n * Options for this sink\n */\n protected options: ConsoleComponentSinkOptions = inject(ConsoleComponentSinkOptions);\n\n //######################### public properties - implementation of ConsoleComponentSink #########################\n\n /**\n * Occurs when logs change\n */\n public get logsChange(): Observable<void>\n {\n return this.logsChangeSubject.asObservable();\n }\n\n /**\n * Gets current logs\n */\n public get logs(): ConsoleComponentLog[]\n {\n return this.currentLogs;\n }\n\n //######################### public methods - implementation of ConsoleComponentSinkData #########################\n\n /**\n * Clears all current logs\n */\n public clear(): void\n {\n this.currentLogs = [];\n this.logsChangeSubject.next();\n }\n\n //######################### public methods - implementation of LoggerSink #########################\n\n /**\n * @inheritdoc\n */\n public log(options: LoggerOptions, loggerProperties: Record<string, unknown>, messageLog: MessageLog<Record<string, unknown>>): void\n {\n const fullMessage = `${messageLog.buildMessage(options.messageTemplate ?? '{{messageLog}}', loggerProperties)}`;\n\n this.currentLogs.push(\n {\n text: fullMessage,\n logLevel: LogLevel[messageLog.logLevel],\n });\n\n //TRIM LOGS\n if(this.currentLogs.length > this.options.maxLogsCount)\n {\n const removeCount = this.currentLogs.length - this.options.maxLogsCount;\n\n this.currentLogs.splice(0, removeCount);\n }\n\n this.logsChangeSubject.next();\n }\n}"]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { isPresent } from '@jscrpt/common';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Maximal number of logs that can be stored
|
|
6
|
+
*/
|
|
7
|
+
const MAX_LOGS = 1500;
|
|
8
|
+
/**
|
|
9
|
+
* Options for *console sink component*
|
|
10
|
+
*/
|
|
11
|
+
class ConsoleComponentSinkOptions {
|
|
12
|
+
//######################### public properties #########################
|
|
13
|
+
/**
|
|
14
|
+
* Maximal number of logs that can be stored
|
|
15
|
+
*/
|
|
16
|
+
maxLogsCount = MAX_LOGS;
|
|
17
|
+
//######################### constructor #########################
|
|
18
|
+
constructor(maxLogsCount) {
|
|
19
|
+
if (isPresent(maxLogsCount)) {
|
|
20
|
+
this.maxLogsCount = maxLogsCount;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: ConsoleComponentSinkOptions, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
|
|
24
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: ConsoleComponentSinkOptions, providedIn: 'root', useFactory: () => new ConsoleComponentSinkOptions() });
|
|
25
|
+
}
|
|
26
|
+
export { ConsoleComponentSinkOptions };
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: ConsoleComponentSinkOptions, decorators: [{
|
|
28
|
+
type: Injectable,
|
|
29
|
+
args: [{ providedIn: 'root', useFactory: () => new ConsoleComponentSinkOptions() }]
|
|
30
|
+
}], ctorParameters: function () { return [{ type: undefined }]; } });
|
|
31
|
+
//# sourceMappingURL=consoleComponentSink.options.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consoleComponentSink.options.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/console/consoleComponentSink.options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,OAAO,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;;AAEzC;;GAEG;AACH,MAAM,QAAQ,GAAW,IAAI,CAAC;AAE9B;;GAEG;AACH,MACa,2BAA2B;IAEpC,uEAAuE;IAEvE;;OAEG;IACI,YAAY,GAAW,QAAQ,CAAC;IAEvC,iEAAiE;IACjE,YAAY,YAAqB;QAE7B,IAAG,SAAS,CAAC,YAAY,CAAC,EAC1B;YACI,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;SACpC;IACL,CAAC;uGAhBQ,2BAA2B;2GAA3B,2BAA2B,cADf,MAAM,cAAc,GAAG,EAAE,CAAC,IAAI,2BAA2B,EAAE;;SACvE,2BAA2B;2FAA3B,2BAA2B;kBADvC,UAAU;mBAAC,EAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,iCAAiC,EAAC","sourcesContent":["import {Injectable} from '@angular/core';\nimport {isPresent} from '@jscrpt/common';\n\n/**\n * Maximal number of logs that can be stored\n */\nconst MAX_LOGS: number = 1500;\n\n/**\n * Options for *console sink component*\n */\n@Injectable({providedIn: 'root', useFactory: () => new ConsoleComponentSinkOptions()})\nexport class ConsoleComponentSinkOptions\n{\n //######################### public properties #########################\n\n /**\n * Maximal number of logs that can be stored\n */\n public maxLogsCount: number = MAX_LOGS;\n\n //######################### constructor #########################\n constructor(maxLogsCount?: number)\n {\n if(isPresent(maxLogsCount))\n {\n this.maxLogsCount = maxLogsCount;\n }\n }\n}\n"]}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { LogLevel } from '../../types';
|
|
3
|
+
import { SinkType } from '../../decorators';
|
|
4
|
+
/**
|
|
5
|
+
* Sink that is used for storing logs using browser developer console
|
|
6
|
+
*/
|
|
7
|
+
let DeveloperConsoleSink = class DeveloperConsoleSink {
|
|
8
|
+
//######################### public methods - implementation of LoggerSink #########################
|
|
9
|
+
/**
|
|
10
|
+
* @inheritdoc
|
|
11
|
+
*/
|
|
12
|
+
log(options, loggerProperties, messageLog) {
|
|
13
|
+
const fullMessage = `%c${messageLog.buildMessage(options.messageTemplate ?? '{{messageLog}}', loggerProperties)}`;
|
|
14
|
+
switch (messageLog.logLevel) {
|
|
15
|
+
default:
|
|
16
|
+
case LogLevel.Off:
|
|
17
|
+
{
|
|
18
|
+
break;
|
|
19
|
+
}
|
|
20
|
+
case LogLevel.Error:
|
|
21
|
+
case LogLevel.Fatal:
|
|
22
|
+
{
|
|
23
|
+
this.writeLog(fullMessage, 'FF3131');
|
|
24
|
+
break;
|
|
25
|
+
}
|
|
26
|
+
case LogLevel.Verbose:
|
|
27
|
+
case LogLevel.Debug:
|
|
28
|
+
{
|
|
29
|
+
this.writeLog(fullMessage, '31A1FF');
|
|
30
|
+
break;
|
|
31
|
+
}
|
|
32
|
+
case LogLevel.Information:
|
|
33
|
+
{
|
|
34
|
+
this.writeLog(fullMessage, 'ffffff');
|
|
35
|
+
break;
|
|
36
|
+
}
|
|
37
|
+
case LogLevel.Warning:
|
|
38
|
+
{
|
|
39
|
+
this.writeLog(fullMessage, 'FFC531');
|
|
40
|
+
break;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
//######################### protected methods #########################
|
|
45
|
+
/**
|
|
46
|
+
* Writes message to log
|
|
47
|
+
* @param fullMessage - Full message to be written
|
|
48
|
+
* @param color - Color of message
|
|
49
|
+
*/
|
|
50
|
+
writeLog(fullMessage, color) {
|
|
51
|
+
const index = fullMessage.indexOf('\n');
|
|
52
|
+
if (index >= 0) {
|
|
53
|
+
const firstLine = fullMessage.slice(0, index);
|
|
54
|
+
const restLines = fullMessage.slice(index + 1);
|
|
55
|
+
console.groupCollapsed(firstLine, `color: #${color};`);
|
|
56
|
+
console.log(`%c${restLines}`, `color: #${color};`);
|
|
57
|
+
console.groupEnd();
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
console.log(fullMessage, `color: #${color};`);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
DeveloperConsoleSink = __decorate([
|
|
65
|
+
SinkType()
|
|
66
|
+
], DeveloperConsoleSink);
|
|
67
|
+
export { DeveloperConsoleSink };
|
|
68
|
+
//# sourceMappingURL=developmentConsole.sink.js.map
|
package/es2022/src/modules/logger/services/developmentConsoleSink/developmentConsole.sink.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"developmentConsole.sink.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/developmentConsoleSink/developmentConsole.sink.ts"],"names":[],"mappings":";AACA,OAAO,EAAC,QAAQ,EAA4B,MAAM,aAAa,CAAC;AAChE,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAE1C;;GAEG;AAEH,IAAa,oBAAoB,GAAjC,MAAa,oBAAoB;IAE7B,mGAAmG;IAEnG;;OAEG;IACI,GAAG,CAAC,OAAsB,EAAE,gBAAyC,EAAE,UAAsB;QAEhG,MAAM,WAAW,GAAG,KAAK,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,eAAe,IAAI,gBAAgB,EAAE,gBAAgB,CAAC,EAAE,CAAC;QAElH,QAAO,UAAU,CAAC,QAAQ,EAC1B;YACI,QAAQ;YACR,KAAK,QAAQ,CAAC,GAAG;gBACjB;oBACI,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,KAAK,CAAC;YACpB,KAAK,QAAQ,CAAC,KAAK;gBACnB;oBACI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;oBAErC,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,OAAO,CAAC;YACtB,KAAK,QAAQ,CAAC,KAAK;gBACnB;oBACI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;oBAErC,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,WAAW;gBACzB;oBACI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;oBAErC,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,OAAO;gBACrB;oBACI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;oBAErC,MAAM;iBACT;SACJ;IACL,CAAC;IAED,uEAAuE;IAEvE;;;;OAIG;IACO,QAAQ,CAAC,WAAmB,EAAE,KAAa;QAEjD,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAExC,IAAG,KAAK,IAAI,CAAC,EACb;YACI,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC9C,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YAE/C,OAAO,CAAC,cAAc,CAAC,SAAS,EAAG,WAAW,KAAK,GAAG,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,EAAE,WAAW,KAAK,GAAG,CAAC,CAAC;YACnD,OAAO,CAAC,QAAQ,EAAE,CAAC;SACtB;aAED;YACI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,KAAK,GAAG,CAAC,CAAC;SACjD;IACL,CAAC;CACJ,CAAA;AAxEY,oBAAoB;IADhC,QAAQ,EAAE;GACE,oBAAoB,CAwEhC;SAxEY,oBAAoB","sourcesContent":["import {LoggerSink} from '../../interfaces';\nimport {LogLevel, LoggerOptions, MessageLog} from '../../types';\nimport {SinkType} from '../../decorators';\n\n/**\n * Sink that is used for storing logs using browser developer console\n */\n@SinkType()\nexport class DeveloperConsoleSink implements LoggerSink\n{\n //######################### public methods - implementation of LoggerSink #########################\n\n /**\n * @inheritdoc\n */\n public log(options: LoggerOptions, loggerProperties: Record<string, unknown>, messageLog: MessageLog): void\n {\n const fullMessage = `%c${messageLog.buildMessage(options.messageTemplate ?? '{{messageLog}}', loggerProperties)}`;\n \n switch(messageLog.logLevel)\n {\n default:\n case LogLevel.Off:\n {\n break;\n }\n case LogLevel.Error:\n case LogLevel.Fatal:\n {\n this.writeLog(fullMessage, 'FF3131');\n\n break;\n }\n case LogLevel.Verbose:\n case LogLevel.Debug:\n {\n this.writeLog(fullMessage, '31A1FF');\n\n break;\n }\n case LogLevel.Information:\n {\n this.writeLog(fullMessage, 'ffffff');\n\n break;\n }\n case LogLevel.Warning:\n {\n this.writeLog(fullMessage, 'FFC531');\n\n break;\n }\n }\n }\n\n //######################### protected methods #########################\n\n /**\n * Writes message to log\n * @param fullMessage - Full message to be written\n * @param color - Color of message\n */\n protected writeLog(fullMessage: string, color: string): void\n {\n const index = fullMessage.indexOf('\\n');\n\n if(index >= 0)\n {\n const firstLine = fullMessage.slice(0, index);\n const restLines = fullMessage.slice(index + 1);\n\n console.groupCollapsed(firstLine, `color: #${color};`);\n console.log(`%c${restLines}`, `color: #${color};`);\n console.groupEnd();\n }\n else\n {\n console.log(fullMessage, `color: #${color};`);\n }\n }\n}"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export * from './console/consoleComponent.sink';
|
|
2
|
+
export * from './console/consoleComponentSink.options';
|
|
3
|
+
export * from './developmentConsoleSink/developmentConsole.sink';
|
|
4
|
+
export * from './logger/logger.interface';
|
|
5
|
+
export * from './logger/logger.service';
|
|
6
|
+
export * from './logLevelEnricher/logLevelEnricher.enricher';
|
|
7
|
+
export * from './rest/rest.sink';
|
|
8
|
+
export * from './rest/restSink.options';
|
|
9
|
+
export * from './subLoggerSink/subLogger.sink';
|
|
10
|
+
export * from './timestampEnricher/timestamp.enricher';
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/logger/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAC;AAChD,cAAc,wCAAwC,CAAC;AACvD,cAAc,kDAAkD,CAAC;AACjE,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,8CAA8C,CAAC;AAC7D,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wCAAwC,CAAC","sourcesContent":["export * from './console/consoleComponent.sink';\nexport * from './console/consoleComponentSink.options';\nexport * from './developmentConsoleSink/developmentConsole.sink';\nexport * from './logger/logger.interface';\nexport * from './logger/logger.service';\nexport * from './logLevelEnricher/logLevelEnricher.enricher';\nexport * from './rest/rest.sink';\nexport * from './rest/restSink.options';\nexport * from './subLoggerSink/subLogger.sink';\nexport * from './timestampEnricher/timestamp.enricher';\n"]}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { LogLevel } from '../../types';
|
|
2
|
+
const LOG_LEVEL = 'logLevel';
|
|
3
|
+
const LOG_LEVEL_SHORT = 'logLevelShort';
|
|
4
|
+
/**
|
|
5
|
+
* Enricher used for adding logLevel and logLevelShort properties
|
|
6
|
+
*/
|
|
7
|
+
export class LogLevelEnricher {
|
|
8
|
+
//######################### public methods - implementation of LoggerEnricher #########################
|
|
9
|
+
/**
|
|
10
|
+
* @inheritdoc
|
|
11
|
+
*/
|
|
12
|
+
enrich(properties, messageLog) {
|
|
13
|
+
properties[LOG_LEVEL] = LogLevel[messageLog.logLevel];
|
|
14
|
+
switch (messageLog.logLevel) {
|
|
15
|
+
case LogLevel.Debug:
|
|
16
|
+
{
|
|
17
|
+
properties[LOG_LEVEL_SHORT] = 'DBG';
|
|
18
|
+
break;
|
|
19
|
+
}
|
|
20
|
+
case LogLevel.Verbose:
|
|
21
|
+
{
|
|
22
|
+
properties[LOG_LEVEL_SHORT] = 'VER';
|
|
23
|
+
break;
|
|
24
|
+
}
|
|
25
|
+
case LogLevel.Information:
|
|
26
|
+
{
|
|
27
|
+
properties[LOG_LEVEL_SHORT] = 'INF';
|
|
28
|
+
break;
|
|
29
|
+
}
|
|
30
|
+
case LogLevel.Error:
|
|
31
|
+
{
|
|
32
|
+
properties[LOG_LEVEL_SHORT] = 'ERR';
|
|
33
|
+
break;
|
|
34
|
+
}
|
|
35
|
+
case LogLevel.Fatal:
|
|
36
|
+
{
|
|
37
|
+
properties[LOG_LEVEL_SHORT] = 'FTL';
|
|
38
|
+
break;
|
|
39
|
+
}
|
|
40
|
+
case LogLevel.Warning:
|
|
41
|
+
{
|
|
42
|
+
properties[LOG_LEVEL_SHORT] = 'WRN';
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
case LogLevel.Off:
|
|
46
|
+
{
|
|
47
|
+
break;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=logLevelEnricher.enricher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logLevelEnricher.enricher.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/logLevelEnricher/logLevelEnricher.enricher.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,QAAQ,EAAa,MAAM,aAAa,CAAC;AAEjD,MAAM,SAAS,GAAG,UAAU,CAAC;AAC7B,MAAM,eAAe,GAAG,eAAe,CAAC;AAExC;;GAEG;AACH,MAAM,OAAO,gBAAgB;IAEzB,uGAAuG;IAEvG;;OAEG;IACI,MAAM,CAAC,UAAmC,EAAE,UAA+C;QAE9F,UAAU,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAEtD,QAAO,UAAU,CAAC,QAAQ,EAC1B;YACI,KAAK,QAAQ,CAAC,KAAK;gBACnB;oBACI,UAAU,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC;oBAEpC,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,OAAO;gBACrB;oBACI,UAAU,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC;oBAEpC,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,WAAW;gBACzB;oBACI,UAAU,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC;oBAEpC,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,KAAK;gBACnB;oBACI,UAAU,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC;oBAEpC,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,KAAK;gBACnB;oBACI,UAAU,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC;oBAEpC,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,OAAO;gBACrB;oBACI,UAAU,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC;oBAEpC,MAAM;iBACT;YACD,KAAK,QAAQ,CAAC,GAAG;gBACjB;oBACI,MAAM;iBACT;SACJ;IACL,CAAC;CAEJ","sourcesContent":["import {LoggerEnricher} from '../../interfaces';\nimport {LogLevel, MessageLog} from '../../types';\n\nconst LOG_LEVEL = 'logLevel';\nconst LOG_LEVEL_SHORT = 'logLevelShort';\n\n/**\n * Enricher used for adding logLevel and logLevelShort properties\n */\nexport class LogLevelEnricher implements LoggerEnricher\n{\n //######################### public methods - implementation of LoggerEnricher #########################\n\n /**\n * @inheritdoc\n */\n public enrich(properties: Record<string, unknown>, messageLog: MessageLog<Record<string, unknown>>): void\n {\n properties[LOG_LEVEL] = LogLevel[messageLog.logLevel];\n \n switch(messageLog.logLevel)\n {\n case LogLevel.Debug:\n {\n properties[LOG_LEVEL_SHORT] = 'DBG';\n\n break;\n }\n case LogLevel.Verbose:\n {\n properties[LOG_LEVEL_SHORT] = 'VER';\n\n break;\n }\n case LogLevel.Information:\n {\n properties[LOG_LEVEL_SHORT] = 'INF';\n\n break;\n }\n case LogLevel.Error:\n {\n properties[LOG_LEVEL_SHORT] = 'ERR';\n\n break;\n }\n case LogLevel.Fatal:\n {\n properties[LOG_LEVEL_SHORT] = 'FTL';\n\n break;\n }\n case LogLevel.Warning:\n {\n properties[LOG_LEVEL_SHORT] = 'WRN';\n\n break;\n }\n case LogLevel.Off:\n {\n break;\n }\n }\n }\n\n}"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.interface.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/logger/logger.interface.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * Interface for general logger\n */\nexport interface Logger\n{\n //######################### public methods #########################\n\n /**\n * Logs an event with the log level fatal severity .\n * @param messageTemplate - Message template for the log event.\n * @param properties - Properties that can be used to render the message template.\n */\n fatal(messageTemplate: string, properties?: Record<string, unknown>): void;\n\n /**\n * Logs an event with the log level error severity .\n * @param messageTemplate - Message template for the log event.\n * @param properties - Properties that can be used to render the message template.\n */\n error(messageTemplate: string, properties?: Record<string, unknown>): void;\n\n /**\n * Logs an event with the log level warn severity .\n * @param messageTemplate - Message template for the log event.\n * @param properties - Properties that can be used to render the message template.\n */\n warn(messageTemplate: string, properties?: Record<string, unknown>): void;\n\n /**\n * Logs an event with the log level info severity .\n * @param messageTemplate - Message template for the log event.\n * @param properties - Properties that can be used to render the message template.\n */\n info(messageTemplate: string, properties?: Record<string, unknown>): void;\n\n /**\n * Logs an event with the log level debug severity .\n * @param messageTemplate - Message template for the log event.\n * @param properties - Properties that can be used to render the message template.\n */\n debug(messageTemplate: string, properties?: Record<string, unknown>): void;\n\n /**\n * Logs an event with the log level verbose severity .\n * @param messageTemplate - Message template for the log event.\n * @param properties - Properties that can be used to render the message template.\n */\n verbose(messageTemplate: string, properties?: Record<string, unknown>): void;\n}\n"]}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
var DefaultLogger_1;
|
|
2
|
+
import { __decorate, __metadata } from "tslib";
|
|
3
|
+
import { Injectable, forwardRef } from '@angular/core';
|
|
4
|
+
import { isBlank } from '@jscrpt/common';
|
|
5
|
+
import { LogLevel, LoggerOptions, MessageLog } from '../../types';
|
|
6
|
+
import { loggerEnabled, useEnrichers } from '../../misc';
|
|
7
|
+
import { TypeProvider } from '../../../../types/providerDecoratedType';
|
|
8
|
+
import { LOGGER } from '../../../../types/tokens';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "../../types";
|
|
11
|
+
/**
|
|
12
|
+
* Default implementation of `Logger`
|
|
13
|
+
*/
|
|
14
|
+
let DefaultLogger = DefaultLogger_1 = class DefaultLogger {
|
|
15
|
+
options;
|
|
16
|
+
//######################### constructor #########################
|
|
17
|
+
constructor(options) {
|
|
18
|
+
this.options = options;
|
|
19
|
+
}
|
|
20
|
+
//######################### public methods - implementation of Logger #########################
|
|
21
|
+
/**
|
|
22
|
+
* @inheritdoc
|
|
23
|
+
*/
|
|
24
|
+
fatal(messageTemplate, properties) {
|
|
25
|
+
this.log(messageTemplate, LogLevel.Fatal, properties);
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* @inheritdoc
|
|
29
|
+
*/
|
|
30
|
+
error(messageTemplate, properties) {
|
|
31
|
+
this.log(messageTemplate, LogLevel.Error, properties);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* @inheritdoc
|
|
35
|
+
*/
|
|
36
|
+
warn(messageTemplate, properties) {
|
|
37
|
+
this.log(messageTemplate, LogLevel.Warning, properties);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* @inheritdoc
|
|
41
|
+
*/
|
|
42
|
+
info(messageTemplate, properties) {
|
|
43
|
+
this.log(messageTemplate, LogLevel.Information, properties);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* @inheritdoc
|
|
47
|
+
*/
|
|
48
|
+
debug(messageTemplate, properties) {
|
|
49
|
+
this.log(messageTemplate, LogLevel.Debug, properties);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* @inheritdoc
|
|
53
|
+
*/
|
|
54
|
+
verbose(messageTemplate, properties) {
|
|
55
|
+
this.log(messageTemplate, LogLevel.Verbose, properties);
|
|
56
|
+
}
|
|
57
|
+
//######################### protected methods #########################
|
|
58
|
+
/**
|
|
59
|
+
* Performs log logic
|
|
60
|
+
* @param messageTemplate - Message template of log to be used for logging
|
|
61
|
+
* @param level - Log level to be logged
|
|
62
|
+
* @param properties - Properties provided by message log
|
|
63
|
+
*/
|
|
64
|
+
log(messageTemplate, level, properties) {
|
|
65
|
+
const defaultLogLevelSinks = this.options.loggerSinks.filter(itm => isBlank(itm.minimumLogLevel));
|
|
66
|
+
const customLogLevelSinks = this.options.loggerSinks.filter(itm => !isBlank(itm.minimumLogLevel));
|
|
67
|
+
let loggerProperties;
|
|
68
|
+
const messageLog = new MessageLog(messageTemplate, level, properties ?? {});
|
|
69
|
+
let loggerFilterResult;
|
|
70
|
+
//only if logger is enabled
|
|
71
|
+
if (loggerEnabled(this.options.minimumLogLevel, level)) {
|
|
72
|
+
loggerProperties ??= useEnrichers(messageLog, this.options.enrichers);
|
|
73
|
+
loggerFilterResult = (!this.options.filter || this.options.filter(loggerProperties, messageLog));
|
|
74
|
+
if (loggerFilterResult) {
|
|
75
|
+
for (const sink of defaultLogLevelSinks) {
|
|
76
|
+
sink.log(this.options, loggerProperties, messageLog);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
//custom log level loggers
|
|
81
|
+
for (const sink of customLogLevelSinks) {
|
|
82
|
+
if (loggerEnabled(sink.minimumLogLevel, level)) {
|
|
83
|
+
loggerProperties ??= useEnrichers(messageLog, this.options.enrichers);
|
|
84
|
+
loggerFilterResult ??= (!this.options.filter || this.options.filter(loggerProperties, messageLog));
|
|
85
|
+
const sinkProperties = {
|
|
86
|
+
...loggerProperties,
|
|
87
|
+
...useEnrichers(messageLog, sink.enrichers ?? []),
|
|
88
|
+
};
|
|
89
|
+
const filter = loggerFilterResult && (!sink.filter || sink.filter(sinkProperties, messageLog));
|
|
90
|
+
if (filter) {
|
|
91
|
+
sink.log(this.options, loggerProperties, messageLog);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DefaultLogger, deps: [{ token: i1.LoggerOptions }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
97
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DefaultLogger });
|
|
98
|
+
};
|
|
99
|
+
DefaultLogger = DefaultLogger_1 = __decorate([
|
|
100
|
+
TypeProvider({ provide: LOGGER, useClass: forwardRef(() => DefaultLogger_1) }),
|
|
101
|
+
__metadata("design:paramtypes", [LoggerOptions])
|
|
102
|
+
], DefaultLogger);
|
|
103
|
+
export { DefaultLogger };
|
|
104
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DefaultLogger, decorators: [{
|
|
105
|
+
type: Injectable
|
|
106
|
+
}], ctorParameters: function () { return [{ type: i1.LoggerOptions }]; } });
|
|
107
|
+
//# sourceMappingURL=logger.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.service.js","sourceRoot":"","sources":["../../../../../../src/modules/logger/services/logger/logger.service.ts"],"names":[],"mappings":"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","sourcesContent":["import {Injectable, forwardRef} from '@angular/core';\nimport {isBlank} from '@jscrpt/common';\n\nimport {LogLevel, LoggerOptions, MessageLog} from '../../types';\nimport {loggerEnabled, useEnrichers} from '../../misc';\nimport {Logger} from './logger.interface';\nimport {TypeProvider} from '../../../../types/providerDecoratedType';\nimport {LOGGER} from '../../../../types/tokens';\n\n/**\n * Default implementation of `Logger`\n */\n@Injectable()\n@TypeProvider({provide: LOGGER, useClass: forwardRef(() => DefaultLogger)})\nexport class DefaultLogger implements Logger\n{\n //######################### constructor #########################\n constructor(protected options: LoggerOptions,)\n {\n }\n\n //######################### public methods - implementation of Logger #########################\n\n /**\n * @inheritdoc\n */\n public fatal(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Fatal, properties);\n }\n\n /**\n * @inheritdoc\n */\n public error(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Error, properties);\n }\n\n /**\n * @inheritdoc\n */\n public warn(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Warning, properties);\n }\n\n /**\n * @inheritdoc\n */\n public info(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Information, properties);\n }\n\n /**\n * @inheritdoc\n */\n public debug(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Debug, properties);\n }\n\n /**\n * @inheritdoc\n */\n public verbose(messageTemplate: string, properties?: Record<string, unknown>): void\n {\n this.log(messageTemplate, LogLevel.Verbose, properties);\n }\n\n //######################### protected methods #########################\n\n /**\n * Performs log logic\n * @param messageTemplate - Message template of log to be used for logging\n * @param level - Log level to be logged\n * @param properties - Properties provided by message log\n */\n protected log(messageTemplate: string, level: LogLevel, properties?: Record<string, unknown>): void\n {\n const defaultLogLevelSinks = this.options.loggerSinks.filter(itm => isBlank(itm.minimumLogLevel));\n const customLogLevelSinks = this.options.loggerSinks.filter(itm => !isBlank(itm.minimumLogLevel));\n let loggerProperties: Record<string, unknown>;\n const messageLog = new MessageLog(messageTemplate, level, properties ?? {});\n let loggerFilterResult: boolean;\n\n //only if logger is enabled\n if(loggerEnabled(this.options.minimumLogLevel, level))\n {\n loggerProperties ??= useEnrichers(messageLog, this.options.enrichers);\n loggerFilterResult = (!this.options.filter || this.options.filter(loggerProperties, messageLog));\n\n if(loggerFilterResult)\n {\n for(const sink of defaultLogLevelSinks)\n {\n sink.log(this.options, loggerProperties, messageLog);\n }\n }\n }\n\n //custom log level loggers\n for(const sink of customLogLevelSinks)\n {\n if(loggerEnabled(sink.minimumLogLevel, level))\n {\n loggerProperties ??= useEnrichers(messageLog, this.options.enrichers);\n loggerFilterResult ??= (!this.options.filter || this.options.filter(loggerProperties, messageLog));\n const sinkProperties =\n {\n ...loggerProperties,\n ...useEnrichers(messageLog, sink.enrichers ?? []),\n };\n const filter = loggerFilterResult && (!sink.filter || sink.filter(sinkProperties, messageLog));\n\n if(filter)\n {\n sink.log(this.options, loggerProperties, messageLog);\n }\n }\n }\n }\n}"]}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { __decorate, __metadata } from "tslib";
|
|
2
|
+
import { inject } from '@angular/core';
|
|
3
|
+
import { isPresent } from '@jscrpt/common';
|
|
4
|
+
import { lastValueFrom } from 'rxjs';
|
|
5
|
+
import { RestSinkOptions } from './restSink.options';
|
|
6
|
+
import { SinkType } from '../../decorators';
|
|
7
|
+
import { APP_STABLE } from '../../../../utils';
|
|
8
|
+
import { LOGGER_REST_CLIENT, loggerEnabled } from '../../misc';
|
|
9
|
+
import { LogLevel } from '../../types';
|
|
10
|
+
/**
|
|
11
|
+
* Sink that is used for storing logs using REST
|
|
12
|
+
*/
|
|
13
|
+
let RestSink = class RestSink {
|
|
14
|
+
//######################### protected fields #########################
|
|
15
|
+
/**
|
|
16
|
+
* Array of unflushed logs
|
|
17
|
+
*/
|
|
18
|
+
logs = [];
|
|
19
|
+
/**
|
|
20
|
+
* Interval timer id
|
|
21
|
+
*/
|
|
22
|
+
timer;
|
|
23
|
+
/**
|
|
24
|
+
* Configuration options for rest sink
|
|
25
|
+
*/
|
|
26
|
+
options = inject(RestSinkOptions);
|
|
27
|
+
/**
|
|
28
|
+
* Indication whether is app stable
|
|
29
|
+
*/
|
|
30
|
+
isStable = inject(APP_STABLE);
|
|
31
|
+
/**
|
|
32
|
+
* Rest client used for sending logs through REST
|
|
33
|
+
*/
|
|
34
|
+
restClient = inject(LOGGER_REST_CLIENT);
|
|
35
|
+
//######################### constructor #########################
|
|
36
|
+
constructor() {
|
|
37
|
+
if (!(this.options instanceof RestSinkOptions)) {
|
|
38
|
+
this.options = new RestSinkOptions();
|
|
39
|
+
}
|
|
40
|
+
this.isStable.then(() => {
|
|
41
|
+
this.timer = setInterval(() => {
|
|
42
|
+
this.flush();
|
|
43
|
+
}, (this.options.secondsToFlushAfter ?? 0) * 1000);
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
//######################### public methods - implementation of OnDestroy #########################
|
|
47
|
+
/**
|
|
48
|
+
* Called when component is destroyed
|
|
49
|
+
*/
|
|
50
|
+
ngOnDestroy() {
|
|
51
|
+
if (isPresent(this.timer)) {
|
|
52
|
+
clearInterval(this.timer);
|
|
53
|
+
}
|
|
54
|
+
this.flush();
|
|
55
|
+
}
|
|
56
|
+
//######################### public methods - implementation of Sink #########################
|
|
57
|
+
/**
|
|
58
|
+
* @inheritdoc
|
|
59
|
+
*/
|
|
60
|
+
log(options, loggerProperties, messageLog) {
|
|
61
|
+
let forceFlush = false;
|
|
62
|
+
const fullMessage = `${messageLog.buildMessage(options.messageTemplate ?? '{{messageLog}}', loggerProperties)}`;
|
|
63
|
+
this.logs.push({
|
|
64
|
+
logLevel: LogLevel[messageLog.logLevel],
|
|
65
|
+
message: fullMessage,
|
|
66
|
+
timestamp: messageLog.timestamp,
|
|
67
|
+
});
|
|
68
|
+
if (loggerEnabled(() => this.options.immediateFlushMinLevel, messageLog.logLevel)) {
|
|
69
|
+
forceFlush = true;
|
|
70
|
+
}
|
|
71
|
+
//flush if number of records is bigger than max or flush is required
|
|
72
|
+
if (forceFlush || this.logs.length >= this.options.flushAfterNumberOfLogs) {
|
|
73
|
+
this.flush();
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Flushes logs
|
|
78
|
+
*/
|
|
79
|
+
flush() {
|
|
80
|
+
let promise;
|
|
81
|
+
//no logs available
|
|
82
|
+
if (!this.logs.length) {
|
|
83
|
+
return Promise.resolve();
|
|
84
|
+
}
|
|
85
|
+
try {
|
|
86
|
+
promise = lastValueFrom(this.restClient.log(this.logs));
|
|
87
|
+
}
|
|
88
|
+
catch (e) {
|
|
89
|
+
console.log(e);
|
|
90
|
+
}
|
|
91
|
+
this.logs = [];
|
|
92
|
+
return promise ?? Promise.resolve();
|
|
93
|
+
}
|
|
94
|
+
};
|
|
95
|
+
RestSink = __decorate([
|
|
96
|
+
SinkType(),
|
|
97
|
+
__metadata("design:paramtypes", [])
|
|
98
|
+
], RestSink);
|
|
99
|
+
export { RestSink };
|
|
100
|
+
//# sourceMappingURL=rest.sink.js.map
|