@nx-ddd/common 19.0.0-preview.9 → 19.1.1
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/domain/index.d.ts +117 -2
- package/fesm2022/nx-ddd-common-domain.mjs +262 -0
- package/fesm2022/nx-ddd-common-domain.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-chromium-impl.mjs +89 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-chromium-impl.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-chromium-token.mjs +10 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-chromium-token.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-chromium.mjs +10 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-chromium.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-cloud-storage.mjs +46 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-cloud-storage.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-crypto-impl-browser.mjs +12 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-crypto-impl-browser.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-crypto-impl-server.mjs +13 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-crypto-impl-server.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-crypto-token.mjs +10 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-crypto-token.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-crypto.mjs +10 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-crypto.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-firebase-admin-impl.mjs +16 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-firebase-admin-impl.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-firebase-admin-token.mjs +10 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-firebase-admin-token.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-firebase-admin.mjs +13 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-firebase-admin.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-openai-impl.mjs +37 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-openai-impl.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-openai-token.mjs +10 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-openai-token.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-openai.mjs +14 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-openai.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-stripe-impl.mjs +33 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-stripe-impl.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-stripe-token.mjs +10 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-stripe-token.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-stripe.mjs +13 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-stripe.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-websocket-impl-browser.mjs +15 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-websocket-impl-browser.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-websocket-impl-server.mjs +21 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-websocket-impl-server.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-websocket-token.mjs +11 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-websocket-token.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-websocket.mjs +11 -0
- package/fesm2022/nx-ddd-common-infrastructure-externals-websocket.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-logging.mjs +129 -0
- package/fesm2022/nx-ddd-common-infrastructure-logging.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure-queries.mjs +54 -0
- package/fesm2022/nx-ddd-common-infrastructure-queries.mjs.map +1 -0
- package/fesm2022/nx-ddd-common-infrastructure.mjs +31 -0
- package/fesm2022/nx-ddd-common-infrastructure.mjs.map +1 -0
- package/fesm2022/nx-ddd-common.mjs +58 -0
- package/fesm2022/nx-ddd-common.mjs.map +1 -0
- package/index.d.ts +8 -1
- package/infrastructure/externals/chromium/impl/index.d.ts +21 -0
- package/infrastructure/externals/chromium/index.d.ts +6 -1
- package/infrastructure/externals/chromium/token/index.d.ts +5 -0
- package/infrastructure/externals/cloud-storage/index.d.ts +19 -1
- package/infrastructure/externals/crypto/impl/browser/index.d.ts +5 -0
- package/infrastructure/externals/crypto/impl/server/index.d.ts +5 -0
- package/infrastructure/externals/crypto/index.d.ts +6 -0
- package/infrastructure/externals/crypto/token/index.d.ts +6 -0
- package/infrastructure/externals/firebase-admin/impl/index.d.ts +10 -0
- package/infrastructure/externals/firebase-admin/index.d.ts +5 -1
- package/infrastructure/externals/firebase-admin/token/index.d.ts +12 -0
- package/infrastructure/externals/openai/impl/index.d.ts +18 -0
- package/infrastructure/externals/openai/index.d.ts +7 -2
- package/infrastructure/externals/openai/token/index.d.ts +5 -0
- package/infrastructure/externals/stripe/impl/index.d.ts +28 -0
- package/infrastructure/externals/stripe/index.d.ts +5 -2
- package/infrastructure/externals/stripe/token/index.d.ts +5 -0
- package/infrastructure/externals/websocket/impl/browser/index.d.ts +5 -0
- package/infrastructure/externals/websocket/impl/server/index.d.ts +5 -0
- package/infrastructure/externals/websocket/index.d.ts +13 -0
- package/infrastructure/externals/websocket/token/index.d.ts +13 -0
- package/infrastructure/index.d.ts +37 -3
- package/infrastructure/logging/index.d.ts +114 -0
- package/infrastructure/queries/index.d.ts +50 -1
- package/package.json +118 -27
- package/README.md +0 -40
- package/domain/index.js +0 -6
- package/domain/index.js.map +0 -1
- package/domain/models.d.ts +0 -70
- package/domain/models.js +0 -129
- package/domain/models.js.map +0 -1
- package/domain/repository.d.ts +0 -11
- package/domain/repository.js +0 -27
- package/domain/repository.js.map +0 -1
- package/domain/resolver.d.ts +0 -8
- package/domain/resolver.js +0 -25
- package/domain/resolver.js.map +0 -1
- package/index.js +0 -5
- package/index.js.map +0 -1
- package/infrastructure/converter.d.ts +0 -4
- package/infrastructure/converter.js +0 -7
- package/infrastructure/converter.js.map +0 -1
- package/infrastructure/externals/backup/backup.service.d.ts +0 -24
- package/infrastructure/externals/backup/backup.service.js +0 -67
- package/infrastructure/externals/backup/backup.service.js.map +0 -1
- package/infrastructure/externals/backup/index.d.ts +0 -1
- package/infrastructure/externals/backup/index.js +0 -5
- package/infrastructure/externals/backup/index.js.map +0 -1
- package/infrastructure/externals/chromium/chromium.service.impl.d.ts +0 -18
- package/infrastructure/externals/chromium/chromium.service.impl.js +0 -58
- package/infrastructure/externals/chromium/chromium.service.impl.js.map +0 -1
- package/infrastructure/externals/chromium/chromuim.service.d.ts +0 -9
- package/infrastructure/externals/chromium/chromuim.service.js +0 -6
- package/infrastructure/externals/chromium/chromuim.service.js.map +0 -1
- package/infrastructure/externals/chromium/index.js +0 -5
- package/infrastructure/externals/chromium/index.js.map +0 -1
- package/infrastructure/externals/cloud-storage/cloud-storage.service.d.ts +0 -13
- package/infrastructure/externals/cloud-storage/cloud-storage.service.js +0 -43
- package/infrastructure/externals/cloud-storage/cloud-storage.service.js.map +0 -1
- package/infrastructure/externals/cloud-storage/index.js +0 -5
- package/infrastructure/externals/cloud-storage/index.js.map +0 -1
- package/infrastructure/externals/firebase-admin/firebase-admin.service.d.ts +0 -9
- package/infrastructure/externals/firebase-admin/firebase-admin.service.impl.d.ts +0 -5
- package/infrastructure/externals/firebase-admin/firebase-admin.service.impl.js +0 -13
- package/infrastructure/externals/firebase-admin/firebase-admin.service.impl.js.map +0 -1
- package/infrastructure/externals/firebase-admin/firebase-admin.service.js +0 -11
- package/infrastructure/externals/firebase-admin/firebase-admin.service.js.map +0 -1
- package/infrastructure/externals/firebase-admin/index.js +0 -5
- package/infrastructure/externals/firebase-admin/index.js.map +0 -1
- package/infrastructure/externals/openai/index.js +0 -6
- package/infrastructure/externals/openai/index.js.map +0 -1
- package/infrastructure/externals/openai/open-ai.config.d.ts +0 -7
- package/infrastructure/externals/openai/open-ai.config.js +0 -19
- package/infrastructure/externals/openai/open-ai.config.js.map +0 -1
- package/infrastructure/externals/openai/open-ai.service.d.ts +0 -4
- package/infrastructure/externals/openai/open-ai.service.impl.d.ts +0 -4
- package/infrastructure/externals/openai/open-ai.service.impl.js +0 -18
- package/infrastructure/externals/openai/open-ai.service.impl.js.map +0 -1
- package/infrastructure/externals/openai/open-ai.service.js +0 -11
- package/infrastructure/externals/openai/open-ai.service.js.map +0 -1
- package/infrastructure/externals/stripe/index.js +0 -6
- package/infrastructure/externals/stripe/index.js.map +0 -1
- package/infrastructure/externals/stripe/stripe.config.d.ts +0 -17
- package/infrastructure/externals/stripe/stripe.config.js +0 -15
- package/infrastructure/externals/stripe/stripe.config.js.map +0 -1
- package/infrastructure/externals/stripe/stripe.service.d.ts +0 -4
- package/infrastructure/externals/stripe/stripe.service.impl.d.ts +0 -5
- package/infrastructure/externals/stripe/stripe.service.impl.js +0 -44
- package/infrastructure/externals/stripe/stripe.service.impl.js.map +0 -1
- package/infrastructure/externals/stripe/stripe.service.js +0 -11
- package/infrastructure/externals/stripe/stripe.service.js.map +0 -1
- package/infrastructure/index.js +0 -7
- package/infrastructure/index.js.map +0 -1
- package/infrastructure/queries/cached-query.d.ts +0 -45
- package/infrastructure/queries/cached-query.js +0 -47
- package/infrastructure/queries/cached-query.js.map +0 -1
- package/infrastructure/queries/index.js +0 -5
- package/infrastructure/queries/index.js.map +0 -1
- package/infrastructure/repo/excel/excel.converter.d.ts +0 -29
- package/infrastructure/repo/excel/excel.converter.js +0 -71
- package/infrastructure/repo/excel/excel.converter.js.map +0 -1
- package/infrastructure/repo/excel/excel.decorators.d.ts +0 -29
- package/infrastructure/repo/excel/excel.decorators.js +0 -55
- package/infrastructure/repo/excel/excel.decorators.js.map +0 -1
- package/infrastructure/repo/excel/excel.repository.d.ts +0 -14
- package/infrastructure/repo/excel/excel.repository.js +0 -32
- package/infrastructure/repo/excel/excel.repository.js.map +0 -1
- package/infrastructure/repo/excel/excel.service.impl.d.ts +0 -17
- package/infrastructure/repo/excel/excel.service.impl.js +0 -61
- package/infrastructure/repo/excel/excel.service.impl.js.map +0 -1
- package/infrastructure/repo/excel/index.d.ts +0 -3
- package/infrastructure/repo/excel/index.js +0 -7
- package/infrastructure/repo/excel/index.js.map +0 -1
- package/infrastructure/synchronizer.d.ts +0 -16
- package/infrastructure/synchronizer.js +0 -18
- package/infrastructure/synchronizer.js.map +0 -1
- package/utilities/generate-id.d.ts +0 -1
- package/utilities/generate-id.js +0 -23
- package/utilities/generate-id.js.map +0 -1
- package/utilities/index.d.ts +0 -2
- package/utilities/index.js +0 -6
- package/utilities/index.js.map +0 -1
- package/utilities/message.d.ts +0 -1
- package/utilities/message.js +0 -26
- package/utilities/message.js.map +0 -1
- package/utilities/to-object.d.ts +0 -1
- package/utilities/to-object.js +0 -14
- package/utilities/to-object.js.map +0 -1
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { InjectionToken, Injectable, inject, makeEnvironmentProviders, provideAppInitializer } from '@angular/core';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* LoggingService interfaces
|
|
6
|
+
*
|
|
7
|
+
* Provides structured logging with different log levels and file output
|
|
8
|
+
*/
|
|
9
|
+
var LogLevel;
|
|
10
|
+
(function (LogLevel) {
|
|
11
|
+
LogLevel[LogLevel["DEBUG"] = 0] = "DEBUG";
|
|
12
|
+
LogLevel[LogLevel["INFO"] = 1] = "INFO";
|
|
13
|
+
LogLevel[LogLevel["WARN"] = 2] = "WARN";
|
|
14
|
+
LogLevel[LogLevel["ERROR"] = 3] = "ERROR";
|
|
15
|
+
LogLevel[LogLevel["FATAL"] = 4] = "FATAL";
|
|
16
|
+
})(LogLevel || (LogLevel = {}));
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Base Logger class for multi-provider logging system
|
|
20
|
+
*/
|
|
21
|
+
const LOGGER = new InjectionToken('Logger');
|
|
22
|
+
class BaseLogger {
|
|
23
|
+
// Convenience methods
|
|
24
|
+
debug(message, context) {
|
|
25
|
+
this.log(LogLevel.DEBUG, message, context);
|
|
26
|
+
}
|
|
27
|
+
info(message, context) {
|
|
28
|
+
this.log(LogLevel.INFO, message, context);
|
|
29
|
+
}
|
|
30
|
+
warn(message, context) {
|
|
31
|
+
this.log(LogLevel.WARN, message, context);
|
|
32
|
+
}
|
|
33
|
+
error(message, error, context) {
|
|
34
|
+
this.log(LogLevel.ERROR, message, context, error);
|
|
35
|
+
}
|
|
36
|
+
fatal(message, error, context) {
|
|
37
|
+
this.log(LogLevel.FATAL, message, context, error);
|
|
38
|
+
}
|
|
39
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BaseLogger, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
40
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BaseLogger });
|
|
41
|
+
}
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BaseLogger, decorators: [{
|
|
43
|
+
type: Injectable
|
|
44
|
+
}] });
|
|
45
|
+
function provideLogger(useFactory) {
|
|
46
|
+
return {
|
|
47
|
+
provide: LOGGER,
|
|
48
|
+
multi: true,
|
|
49
|
+
useFactory,
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
const LOGGING_SERVICE = new InjectionToken('LoggingService');
|
|
54
|
+
class LoggingService {
|
|
55
|
+
loggers = inject(LOGGER, { optional: true }) ?? [];
|
|
56
|
+
getLogger(name) {
|
|
57
|
+
const format = (...args) => {
|
|
58
|
+
return args.map(arg => typeof arg === 'string' ? arg : JSON.stringify(arg, null, 2)).join(' ');
|
|
59
|
+
};
|
|
60
|
+
return {
|
|
61
|
+
log: (...args) => this.log(LogLevel.DEBUG, format(`[${name}]`, ...args)),
|
|
62
|
+
debug: (...args) => this.log(LogLevel.DEBUG, format(`[${name}]`, ...args)),
|
|
63
|
+
info: (...args) => this.log(LogLevel.INFO, format(`[${name}]`, ...args)),
|
|
64
|
+
warn: (...args) => this.log(LogLevel.WARN, format(`[${name}]`, ...args)),
|
|
65
|
+
error: (...args) => this.log(LogLevel.ERROR, format(`[${name}]`, ...args)),
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
log(level, message, context, error) {
|
|
69
|
+
this.loggers.forEach(logger => logger.log(level, message, context, error));
|
|
70
|
+
}
|
|
71
|
+
close() {
|
|
72
|
+
this.loggers.forEach(logger => logger.close());
|
|
73
|
+
}
|
|
74
|
+
debug(message, context) {
|
|
75
|
+
this.log(LogLevel.DEBUG, message, context);
|
|
76
|
+
}
|
|
77
|
+
info(message, context) {
|
|
78
|
+
this.log(LogLevel.INFO, message, context);
|
|
79
|
+
}
|
|
80
|
+
warn(message, context) {
|
|
81
|
+
this.log(LogLevel.WARN, message, context);
|
|
82
|
+
}
|
|
83
|
+
error(message, error, context) {
|
|
84
|
+
this.log(LogLevel.ERROR, message, context, error);
|
|
85
|
+
}
|
|
86
|
+
fatal(message, error, context) {
|
|
87
|
+
this.log(LogLevel.FATAL, message, context, error);
|
|
88
|
+
}
|
|
89
|
+
setLogLevel(level) {
|
|
90
|
+
// this.loggers.forEach(logger => logger.setLogLevel(level));
|
|
91
|
+
}
|
|
92
|
+
setComponent(component) {
|
|
93
|
+
// this.loggers.forEach(logger => logger.setComponent(component));
|
|
94
|
+
}
|
|
95
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: LoggingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
96
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: LoggingService, providedIn: 'root' });
|
|
97
|
+
}
|
|
98
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: LoggingService, decorators: [{
|
|
99
|
+
type: Injectable,
|
|
100
|
+
args: [{ providedIn: 'root' }]
|
|
101
|
+
}] });
|
|
102
|
+
|
|
103
|
+
let globalLogging = null;
|
|
104
|
+
function setGlobalLogging(logging) {
|
|
105
|
+
globalLogging = logging;
|
|
106
|
+
}
|
|
107
|
+
function getGlobalLogging() {
|
|
108
|
+
return globalLogging;
|
|
109
|
+
}
|
|
110
|
+
function createLogger(name) {
|
|
111
|
+
return globalLogging;
|
|
112
|
+
}
|
|
113
|
+
function getLogger(name) {
|
|
114
|
+
return globalLogging?.getLogger(name);
|
|
115
|
+
}
|
|
116
|
+
function provideGlobalLogging() {
|
|
117
|
+
return makeEnvironmentProviders([
|
|
118
|
+
provideAppInitializer(() => {
|
|
119
|
+
return setGlobalLogging(inject(LoggingService));
|
|
120
|
+
})
|
|
121
|
+
]);
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* Generated bundle index. Do not edit.
|
|
126
|
+
*/
|
|
127
|
+
|
|
128
|
+
export { BaseLogger, LOGGER, LOGGING_SERVICE, LogLevel, LoggingService, createLogger, getGlobalLogging, getLogger, globalLogging as logging, provideGlobalLogging, provideLogger, setGlobalLogging };
|
|
129
|
+
//# sourceMappingURL=nx-ddd-common-infrastructure-logging.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nx-ddd-common-infrastructure-logging.mjs","sources":["../tmp-esm2022/infrastructure/logging/base/interfaces.js","../tmp-esm2022/infrastructure/logging/base/base.logger.js","../tmp-esm2022/infrastructure/logging/logging.service.js","../tmp-esm2022/infrastructure/logging/global-logging.js","../tmp-esm2022/infrastructure/logging/nx-ddd-common-infrastructure-logging.js"],"sourcesContent":["/**\n * LoggingService interfaces\n *\n * Provides structured logging with different log levels and file output\n */\nexport var LogLevel;\n(function (LogLevel) {\n LogLevel[LogLevel[\"DEBUG\"] = 0] = \"DEBUG\";\n LogLevel[LogLevel[\"INFO\"] = 1] = \"INFO\";\n LogLevel[LogLevel[\"WARN\"] = 2] = \"WARN\";\n LogLevel[LogLevel[\"ERROR\"] = 3] = \"ERROR\";\n LogLevel[LogLevel[\"FATAL\"] = 4] = \"FATAL\";\n})(LogLevel || (LogLevel = {}));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BueC1kZGQvY29tbW9uL3NyYy9saWIvaW5mcmFzdHJ1Y3R1cmUvbG9nZ2luZy9iYXNlL2ludGVyZmFjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILE1BQU0sQ0FBTixJQUFZLFFBTVg7QUFORCxXQUFZLFFBQVE7SUFDbEIseUNBQVMsQ0FBQTtJQUNULHVDQUFRLENBQUE7SUFDUix1Q0FBUSxDQUFBO0lBQ1IseUNBQVMsQ0FBQTtJQUNULHlDQUFTLENBQUE7QUFDWCxDQUFDLEVBTlcsUUFBUSxLQUFSLFFBQVEsUUFNbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIExvZ2dpbmdTZXJ2aWNlIGludGVyZmFjZXNcbiAqXG4gKiBQcm92aWRlcyBzdHJ1Y3R1cmVkIGxvZ2dpbmcgd2l0aCBkaWZmZXJlbnQgbG9nIGxldmVscyBhbmQgZmlsZSBvdXRwdXRcbiAqL1xuXG5leHBvcnQgZW51bSBMb2dMZXZlbCB7XG4gIERFQlVHID0gMCxcbiAgSU5GTyA9IDEsXG4gIFdBUk4gPSAyLFxuICBFUlJPUiA9IDMsXG4gIEZBVEFMID0gNCxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMb2dDb250ZXh0IHtcbiAgY29tcG9uZW50Pzogc3RyaW5nO1xuICBzZXNzaW9uSWQ/OiBzdHJpbmc7XG4gIGNsaWVudElkPzogc3RyaW5nO1xuICBba2V5OiBzdHJpbmddOiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUxvZ2dpbmdTZXJ2aWNlIHtcbiAgLyoqXG4gICAqIExvZyBkZWJ1ZyBtZXNzYWdlIChmb3IgZGV2ZWxvcG1lbnQvdHJvdWJsZXNob290aW5nKVxuICAgKi9cbiAgZGVidWcobWVzc2FnZTogc3RyaW5nLCBjb250ZXh0PzogTG9nQ29udGV4dCk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIExvZyBpbmZvcm1hdGlvbmFsIG1lc3NhZ2VcbiAgICovXG4gIGluZm8obWVzc2FnZTogc3RyaW5nLCBjb250ZXh0PzogTG9nQ29udGV4dCk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIExvZyB3YXJuaW5nIG1lc3NhZ2VcbiAgICovXG4gIHdhcm4obWVzc2FnZTogc3RyaW5nLCBjb250ZXh0PzogTG9nQ29udGV4dCk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIExvZyBlcnJvciBtZXNzYWdlXG4gICAqL1xuICBlcnJvcihtZXNzYWdlOiBzdHJpbmcsIGVycm9yPzogRXJyb3IsIGNvbnRleHQ/OiBMb2dDb250ZXh0KTogdm9pZDtcblxuICAvKipcbiAgICogTG9nIGZhdGFsIGVycm9yIG1lc3NhZ2UgKGFwcGxpY2F0aW9uIGNhbm5vdCBjb250aW51ZSlcbiAgICovXG4gIGZhdGFsKG1lc3NhZ2U6IHN0cmluZywgZXJyb3I/OiBFcnJvciwgY29udGV4dD86IExvZ0NvbnRleHQpOiB2b2lkO1xuXG4gIC8qKlxuICAgKiBTZXQgbG9nIGxldmVsIGZpbHRlclxuICAgKi9cbiAgc2V0TG9nTGV2ZWwobGV2ZWw6IExvZ0xldmVsKTogdm9pZDtcblxuICAvKipcbiAgICogU2V0IGNvbXBvbmVudCBuYW1lIGZvciB0aGlzIGxvZ2dlclxuICAgKi9cbiAgc2V0Q29tcG9uZW50KGNvbXBvbmVudDogc3RyaW5nKTogdm9pZDtcblxuICAvKipcbiAgICogQ2xvc2UgbG9nZ2VyIGFuZCBmbHVzaCBidWZmZXJzXG4gICAqL1xuICBjbG9zZSgpOiB2b2lkO1xufVxuIl19","/**\n * Base Logger class for multi-provider logging system\n */\nimport { Injectable, InjectionToken } from '@angular/core';\nimport { LogLevel } from './interfaces';\nimport * as i0 from \"@angular/core\";\nexport const LOGGER = new InjectionToken('Logger');\nexport class BaseLogger {\n // Convenience methods\n debug(message, context) {\n this.log(LogLevel.DEBUG, message, context);\n }\n info(message, context) {\n this.log(LogLevel.INFO, message, context);\n }\n warn(message, context) {\n this.log(LogLevel.WARN, message, context);\n }\n error(message, error, context) {\n this.log(LogLevel.ERROR, message, context, error);\n }\n fatal(message, error, context) {\n this.log(LogLevel.FATAL, message, context, error);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: BaseLogger, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: BaseLogger });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: BaseLogger, decorators: [{\n type: Injectable\n }] });\nexport function provideLogger(useFactory) {\n return {\n provide: LOGGER,\n multi: true,\n useFactory,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5sb2dnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbngtZGRkL2NvbW1vbi9zcmMvbGliL2luZnJhc3RydWN0dXJlL2xvZ2dpbmcvYmFzZS9iYXNlLmxvZ2dlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxRQUFRLEVBQWMsTUFBTSxjQUFjLENBQUM7O0FBRXBELE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxJQUFJLGNBQWMsQ0FBYSxRQUFRLENBQUMsQ0FBQztBQUcvRCxNQUFNLE9BQWdCLFVBQVU7SUFnQjlCLHNCQUFzQjtJQUN0QixLQUFLLENBQUMsT0FBZSxFQUFFLE9BQW9CO1FBQ3pDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELElBQUksQ0FBQyxPQUFlLEVBQUUsT0FBb0I7UUFDeEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQsSUFBSSxDQUFDLE9BQWUsRUFBRSxPQUFvQjtRQUN4QyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxLQUFLLENBQUMsT0FBZSxFQUFFLEtBQWEsRUFBRSxPQUFvQjtRQUN4RCxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQWUsRUFBRSxLQUFhLEVBQUUsT0FBb0I7UUFDeEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDcEQsQ0FBQzt1R0FuQ21CLFVBQVU7MkdBQVYsVUFBVTs7MkZBQVYsVUFBVTtrQkFEL0IsVUFBVTs7QUF1Q1gsTUFBTSxVQUFVLGFBQWEsQ0FBQyxVQUE0QjtJQUN4RCxPQUFPO1FBQ0wsT0FBTyxFQUFFLE1BQU07UUFDZixLQUFLLEVBQUUsSUFBSTtRQUNYLFVBQVU7S0FDWCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQmFzZSBMb2dnZXIgY2xhc3MgZm9yIG11bHRpLXByb3ZpZGVyIGxvZ2dpbmcgc3lzdGVtXG4gKi9cblxuaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMb2dMZXZlbCwgTG9nQ29udGV4dCB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5cbmV4cG9ydCBjb25zdCBMT0dHRVIgPSBuZXcgSW5qZWN0aW9uVG9rZW48QmFzZUxvZ2dlcj4oJ0xvZ2dlcicpO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZUxvZ2dlciB7XG4gIC8qKlxuICAgKiBNYWluIGxvZyBtZXRob2QgdGhhdCBhbGwgbG9nZ2VycyBtdXN0IGltcGxlbWVudFxuICAgKi9cbiAgYWJzdHJhY3QgbG9nKFxuICAgIGxldmVsOiBMb2dMZXZlbCxcbiAgICBtZXNzYWdlOiBzdHJpbmcsXG4gICAgY29udGV4dD86IExvZ0NvbnRleHQsXG4gICAgZXJyb3I/OiBFcnJvclxuICApOiB2b2lkO1xuXG4gIC8qKlxuICAgKiBDbG9zZSBsb2dnZXIgYW5kIGZsdXNoIGJ1ZmZlcnNcbiAgICovXG4gIGFic3RyYWN0IGNsb3NlKCk6IHZvaWQ7XG5cbiAgLy8gQ29udmVuaWVuY2UgbWV0aG9kc1xuICBkZWJ1ZyhtZXNzYWdlOiBzdHJpbmcsIGNvbnRleHQ/OiBMb2dDb250ZXh0KTogdm9pZCB7XG4gICAgdGhpcy5sb2coTG9nTGV2ZWwuREVCVUcsIG1lc3NhZ2UsIGNvbnRleHQpO1xuICB9XG5cbiAgaW5mbyhtZXNzYWdlOiBzdHJpbmcsIGNvbnRleHQ/OiBMb2dDb250ZXh0KTogdm9pZCB7XG4gICAgdGhpcy5sb2coTG9nTGV2ZWwuSU5GTywgbWVzc2FnZSwgY29udGV4dCk7XG4gIH1cblxuICB3YXJuKG1lc3NhZ2U6IHN0cmluZywgY29udGV4dD86IExvZ0NvbnRleHQpOiB2b2lkIHtcbiAgICB0aGlzLmxvZyhMb2dMZXZlbC5XQVJOLCBtZXNzYWdlLCBjb250ZXh0KTtcbiAgfVxuXG4gIGVycm9yKG1lc3NhZ2U6IHN0cmluZywgZXJyb3I/OiBFcnJvciwgY29udGV4dD86IExvZ0NvbnRleHQpOiB2b2lkIHtcbiAgICB0aGlzLmxvZyhMb2dMZXZlbC5FUlJPUiwgbWVzc2FnZSwgY29udGV4dCwgZXJyb3IpO1xuICB9XG5cbiAgZmF0YWwobWVzc2FnZTogc3RyaW5nLCBlcnJvcj86IEVycm9yLCBjb250ZXh0PzogTG9nQ29udGV4dCk6IHZvaWQge1xuICAgIHRoaXMubG9nKExvZ0xldmVsLkZBVEFMLCBtZXNzYWdlLCBjb250ZXh0LCBlcnJvcik7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVMb2dnZXIodXNlRmFjdG9yeTogKCkgPT4gQmFzZUxvZ2dlcik6IFByb3ZpZGVyIHtcbiAgcmV0dXJuIHtcbiAgICBwcm92aWRlOiBMT0dHRVIsXG4gICAgbXVsdGk6IHRydWUsXG4gICAgdXNlRmFjdG9yeSxcbiAgfTtcbn0iXX0=","import { inject, Injectable, InjectionToken } from \"@angular/core\";\nimport { LOGGER, LogLevel } from \"./base\";\nimport * as i0 from \"@angular/core\";\nexport const LOGGING_SERVICE = new InjectionToken('LoggingService');\nexport class LoggingService {\n loggers = inject(LOGGER, { optional: true }) ?? [];\n getLogger(name) {\n const format = (...args) => {\n return args.map(arg => typeof arg === 'string' ? arg : JSON.stringify(arg, null, 2)).join(' ');\n };\n return {\n log: (...args) => this.log(LogLevel.DEBUG, format(`[${name}]`, ...args)),\n debug: (...args) => this.log(LogLevel.DEBUG, format(`[${name}]`, ...args)),\n info: (...args) => this.log(LogLevel.INFO, format(`[${name}]`, ...args)),\n warn: (...args) => this.log(LogLevel.WARN, format(`[${name}]`, ...args)),\n error: (...args) => this.log(LogLevel.ERROR, format(`[${name}]`, ...args)),\n };\n }\n log(level, message, context, error) {\n this.loggers.forEach(logger => logger.log(level, message, context, error));\n }\n close() {\n this.loggers.forEach(logger => logger.close());\n }\n debug(message, context) {\n this.log(LogLevel.DEBUG, message, context);\n }\n info(message, context) {\n this.log(LogLevel.INFO, message, context);\n }\n warn(message, context) {\n this.log(LogLevel.WARN, message, context);\n }\n error(message, error, context) {\n this.log(LogLevel.ERROR, message, context, error);\n }\n fatal(message, error, context) {\n this.log(LogLevel.FATAL, message, context, error);\n }\n setLogLevel(level) {\n // this.loggers.forEach(logger => logger.setLogLevel(level));\n }\n setComponent(component) {\n // this.loggers.forEach(logger => logger.setComponent(component));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: LoggingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: LoggingService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: LoggingService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2luZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG54LWRkZC9jb21tb24vc3JjL2xpYi9pbmZyYXN0cnVjdHVyZS9sb2dnaW5nL2xvZ2dpbmcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUEyQyxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sUUFBUSxDQUFDOztBQUVuRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsSUFBSSxjQUFjLENBQWtCLGdCQUFnQixDQUFDLENBQUM7QUFXckYsTUFBTSxPQUFPLGNBQWM7SUFDakIsT0FBTyxHQUFHLE1BQU0sQ0FBZSxNQUFNLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUM7SUFFekUsU0FBUyxDQUFDLElBQVk7UUFDcEIsTUFBTSxNQUFNLEdBQUcsQ0FBQyxHQUFHLElBQXVDLEVBQUUsRUFBRTtZQUM1RCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEdBQUcsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pHLENBQUMsQ0FBQztRQUVGLE9BQU87WUFDTCxHQUFHLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxJQUFJLElBQUksR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDeEUsS0FBSyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxJQUFJLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO1lBQzFFLElBQUksRUFBRSxDQUFDLEdBQUcsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksSUFBSSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztZQUN4RSxJQUFJLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLElBQUksR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDeEUsS0FBSyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxJQUFJLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO1NBQzNFLENBQUM7SUFDSixDQUFDO0lBRUQsR0FBRyxDQUFDLEtBQWUsRUFBRSxPQUFlLEVBQUUsT0FBb0IsRUFBRSxLQUFhO1FBQ3ZFLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQWUsRUFBRSxPQUFvQjtRQUN6QyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxJQUFJLENBQUMsT0FBZSxFQUFFLE9BQW9CO1FBQ3hDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQUksQ0FBQyxPQUFlLEVBQUUsT0FBb0I7UUFDeEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQWUsRUFBRSxLQUFhLEVBQUUsT0FBb0I7UUFDeEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELEtBQUssQ0FBQyxPQUFlLEVBQUUsS0FBYSxFQUFFLE9BQW9CO1FBQ3hELElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxXQUFXLENBQUMsS0FBZTtRQUN6Qiw2REFBNkQ7SUFDL0QsQ0FBQztJQUVELFlBQVksQ0FBQyxTQUFpQjtRQUM1QixrRUFBa0U7SUFDcEUsQ0FBQzt1R0FuRFUsY0FBYzsyR0FBZCxjQUFjLGNBREQsTUFBTTs7MkZBQ25CLGNBQWM7a0JBRDFCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBCYXNlTG9nZ2VyLCBJTG9nZ2luZ1NlcnZpY2UsIExvZ0NvbnRleHQsIExPR0dFUiwgTG9nTGV2ZWwgfSBmcm9tIFwiLi9iYXNlXCI7XG5cbmV4cG9ydCBjb25zdCBMT0dHSU5HX1NFUlZJQ0UgPSBuZXcgSW5qZWN0aW9uVG9rZW48SUxvZ2dpbmdTZXJ2aWNlPignTG9nZ2luZ1NlcnZpY2UnKTsgXG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9nZ2VyIHtcbiAgbG9nOiAoLi4uYXJnczogUGFyYW1ldGVyczx0eXBlb2YgY29uc29sZVsnbG9nJ10+KSA9PiB2b2lkO1xuICBkZWJ1ZzogKC4uLmFyZ3M6IFBhcmFtZXRlcnM8dHlwZW9mIGNvbnNvbGVbJ2RlYnVnJ10+KSA9PiB2b2lkO1xuICBpbmZvOiAoLi4uYXJnczogUGFyYW1ldGVyczx0eXBlb2YgY29uc29sZVsnaW5mbyddPikgPT4gdm9pZDtcbiAgd2FybjogKC4uLmFyZ3M6IFBhcmFtZXRlcnM8dHlwZW9mIGNvbnNvbGVbJ3dhcm4nXT4pID0+IHZvaWQ7XG4gIGVycm9yOiAoLi4uYXJnczogUGFyYW1ldGVyczx0eXBlb2YgY29uc29sZVsnZXJyb3InXT4pID0+IHZvaWQ7XG59XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgTG9nZ2luZ1NlcnZpY2UgaW1wbGVtZW50cyBJTG9nZ2luZ1NlcnZpY2Uge1xuICBwcml2YXRlIGxvZ2dlcnMgPSBpbmplY3Q8QmFzZUxvZ2dlcltdPihMT0dHRVIsIHsgb3B0aW9uYWw6IHRydWUgfSkgPz8gW107XG5cbiAgZ2V0TG9nZ2VyKG5hbWU6IHN0cmluZyk6IExvZ2dlciB7XG4gICAgY29uc3QgZm9ybWF0ID0gKC4uLmFyZ3M6IFBhcmFtZXRlcnM8dHlwZW9mIGNvbnNvbGVbJ2xvZyddPikgPT4ge1xuICAgICAgcmV0dXJuIGFyZ3MubWFwKGFyZyA9PiB0eXBlb2YgYXJnID09PSAnc3RyaW5nJyA/IGFyZyA6IEpTT04uc3RyaW5naWZ5KGFyZywgbnVsbCwgMikpLmpvaW4oJyAnKTtcbiAgICB9O1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGxvZzogKC4uLmFyZ3MpID0+IHRoaXMubG9nKExvZ0xldmVsLkRFQlVHLCBmb3JtYXQoYFske25hbWV9XWAsIC4uLmFyZ3MpKSxcbiAgICAgIGRlYnVnOiAoLi4uYXJncykgPT4gdGhpcy5sb2coTG9nTGV2ZWwuREVCVUcsIGZvcm1hdChgWyR7bmFtZX1dYCwgLi4uYXJncykpLFxuICAgICAgaW5mbzogKC4uLmFyZ3MpID0+IHRoaXMubG9nKExvZ0xldmVsLklORk8sIGZvcm1hdChgWyR7bmFtZX1dYCwgLi4uYXJncykpLFxuICAgICAgd2FybjogKC4uLmFyZ3MpID0+IHRoaXMubG9nKExvZ0xldmVsLldBUk4sIGZvcm1hdChgWyR7bmFtZX1dYCwgLi4uYXJncykpLFxuICAgICAgZXJyb3I6ICguLi5hcmdzKSA9PiB0aGlzLmxvZyhMb2dMZXZlbC5FUlJPUiwgZm9ybWF0KGBbJHtuYW1lfV1gLCAuLi5hcmdzKSksXG4gICAgfTtcbiAgfVxuXG4gIGxvZyhsZXZlbDogTG9nTGV2ZWwsIG1lc3NhZ2U6IHN0cmluZywgY29udGV4dD86IExvZ0NvbnRleHQsIGVycm9yPzogRXJyb3IpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ2dlcnMuZm9yRWFjaChsb2dnZXIgPT4gbG9nZ2VyLmxvZyhsZXZlbCwgbWVzc2FnZSwgY29udGV4dCwgZXJyb3IpKTtcbiAgfVxuXG4gIGNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMubG9nZ2Vycy5mb3JFYWNoKGxvZ2dlciA9PiBsb2dnZXIuY2xvc2UoKSk7XG4gIH1cblxuICBkZWJ1ZyhtZXNzYWdlOiBzdHJpbmcsIGNvbnRleHQ/OiBMb2dDb250ZXh0KTogdm9pZCB7XG4gICAgdGhpcy5sb2coTG9nTGV2ZWwuREVCVUcsIG1lc3NhZ2UsIGNvbnRleHQpO1xuICB9XG5cbiAgaW5mbyhtZXNzYWdlOiBzdHJpbmcsIGNvbnRleHQ/OiBMb2dDb250ZXh0KTogdm9pZCB7XG4gICAgdGhpcy5sb2coTG9nTGV2ZWwuSU5GTywgbWVzc2FnZSwgY29udGV4dCk7XG4gIH1cblxuICB3YXJuKG1lc3NhZ2U6IHN0cmluZywgY29udGV4dD86IExvZ0NvbnRleHQpOiB2b2lkIHtcbiAgICB0aGlzLmxvZyhMb2dMZXZlbC5XQVJOLCBtZXNzYWdlLCBjb250ZXh0KTtcbiAgfVxuXG4gIGVycm9yKG1lc3NhZ2U6IHN0cmluZywgZXJyb3I/OiBFcnJvciwgY29udGV4dD86IExvZ0NvbnRleHQpOiB2b2lkIHtcbiAgICB0aGlzLmxvZyhMb2dMZXZlbC5FUlJPUiwgbWVzc2FnZSwgY29udGV4dCwgZXJyb3IpO1xuICB9XG5cbiAgZmF0YWwobWVzc2FnZTogc3RyaW5nLCBlcnJvcj86IEVycm9yLCBjb250ZXh0PzogTG9nQ29udGV4dCk6IHZvaWQge1xuICAgIHRoaXMubG9nKExvZ0xldmVsLkZBVEFMLCBtZXNzYWdlLCBjb250ZXh0LCBlcnJvcik7XG4gIH1cblxuICBzZXRMb2dMZXZlbChsZXZlbDogTG9nTGV2ZWwpOiB2b2lkIHtcbiAgICAvLyB0aGlzLmxvZ2dlcnMuZm9yRWFjaChsb2dnZXIgPT4gbG9nZ2VyLnNldExvZ0xldmVsKGxldmVsKSk7XG4gIH1cblxuICBzZXRDb21wb25lbnQoY29tcG9uZW50OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAvLyB0aGlzLmxvZ2dlcnMuZm9yRWFjaChsb2dnZXIgPT4gbG9nZ2VyLnNldENvbXBvbmVudChjb21wb25lbnQpKTtcbiAgfSBcbn0iXX0=","import { inject, makeEnvironmentProviders, provideAppInitializer } from '@angular/core';\nimport { LoggingService } from './logging.service';\nlet globalLogging = null;\nexport { globalLogging as logging };\nexport function setGlobalLogging(logging) {\n globalLogging = logging;\n}\nexport function getGlobalLogging() {\n return globalLogging;\n}\nexport function createLogger(name) {\n return globalLogging;\n}\nexport function getLogger(name) {\n return globalLogging?.getLogger(name);\n}\nexport function provideGlobalLogging() {\n return makeEnvironmentProviders([\n provideAppInitializer(() => {\n return setGlobalLogging(inject(LoggingService));\n })\n ]);\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWxvZ2dpbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbngtZGRkL2NvbW1vbi9zcmMvbGliL2luZnJhc3RydWN0dXJlL2xvZ2dpbmcvZ2xvYmFsLWxvZ2dpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF3QixNQUFNLEVBQUUsd0JBQXdCLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUcsT0FBTyxFQUFVLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTNELElBQUksYUFBYSxHQUEwQixJQUFJLENBQUM7QUFDaEQsT0FBTyxFQUFFLGFBQWEsSUFBSSxPQUFPLEVBQUUsQ0FBQztBQUVwQyxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsT0FBdUI7SUFDdEQsYUFBYSxHQUFHLE9BQU8sQ0FBQztBQUMxQixDQUFDO0FBRUQsTUFBTSxVQUFVLGdCQUFnQjtJQUM5QixPQUFPLGFBQWEsQ0FBQztBQUN2QixDQUFDO0FBRUQsTUFBTSxVQUFVLFlBQVksQ0FBQyxJQUFTO0lBQ3BDLE9BQU8sYUFBYSxDQUFDO0FBQ3ZCLENBQUM7QUFFRCxNQUFNLFVBQVUsU0FBUyxDQUFDLElBQVk7SUFDcEMsT0FBTyxhQUFhLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3hDLENBQUM7QUFFRCxNQUFNLFVBQVUsb0JBQW9CO0lBQ2xDLE9BQU8sd0JBQXdCLENBQUM7UUFDOUIscUJBQXFCLENBQUMsR0FBRyxFQUFFO1lBQ3pCLE9BQU8sZ0JBQWdCLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7UUFDbEQsQ0FBQyxDQUFDO0tBQ0gsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudmlyb25tZW50UHJvdmlkZXJzLCBpbmplY3QsIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycywgcHJvdmlkZUFwcEluaXRpYWxpemVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJTG9nZ2luZ1NlcnZpY2UgfSBmcm9tICcuL2Jhc2UnO1xuaW1wb3J0IHsgTG9nZ2VyLCBMb2dnaW5nU2VydmljZSB9IGZyb20gJy4vbG9nZ2luZy5zZXJ2aWNlJztcblxubGV0IGdsb2JhbExvZ2dpbmc6IExvZ2dpbmdTZXJ2aWNlIHwgbnVsbCA9IG51bGw7XG5leHBvcnQgeyBnbG9iYWxMb2dnaW5nIGFzIGxvZ2dpbmcgfTtcblxuZXhwb3J0IGZ1bmN0aW9uIHNldEdsb2JhbExvZ2dpbmcobG9nZ2luZzogTG9nZ2luZ1NlcnZpY2UpOiB2b2lkIHtcbiAgZ2xvYmFsTG9nZ2luZyA9IGxvZ2dpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRHbG9iYWxMb2dnaW5nKCk6IExvZ2dpbmdTZXJ2aWNlIHwgbnVsbCB7XG4gIHJldHVybiBnbG9iYWxMb2dnaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTG9nZ2VyKG5hbWU6IGFueSk6IElMb2dnaW5nU2VydmljZSB7XG4gIHJldHVybiBnbG9iYWxMb2dnaW5nO1xufSBcblxuZXhwb3J0IGZ1bmN0aW9uIGdldExvZ2dlcihuYW1lOiBzdHJpbmcpOiBMb2dnZXIge1xuICByZXR1cm4gZ2xvYmFsTG9nZ2luZz8uZ2V0TG9nZ2VyKG5hbWUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUdsb2JhbExvZ2dpbmcoKTogRW52aXJvbm1lbnRQcm92aWRlcnMge1xuICByZXR1cm4gbWFrZUVudmlyb25tZW50UHJvdmlkZXJzKFtcbiAgICBwcm92aWRlQXBwSW5pdGlhbGl6ZXIoKCkgPT4ge1xuICAgICAgcmV0dXJuIHNldEdsb2JhbExvZ2dpbmcoaW5qZWN0KExvZ2dpbmdTZXJ2aWNlKSk7XG4gICAgfSlcbiAgXSk7XG59XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibngtZGRkLWNvbW1vbi1pbmZyYXN0cnVjdHVyZS1sb2dnaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG54LWRkZC9jb21tb24vc3JjL2xpYi9pbmZyYXN0cnVjdHVyZS9sb2dnaW5nL254LWRkZC1jb21tb24taW5mcmFzdHJ1Y3R1cmUtbG9nZ2luZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { RepositorySynchronizer } from '@nx-ddd/common/infrastructure';
|
|
4
|
+
import dayjs from 'dayjs';
|
|
5
|
+
import { from, map, switchMap, throttleTime } from 'rxjs';
|
|
6
|
+
|
|
7
|
+
function getLastUpdatedAt(items) {
|
|
8
|
+
return items.reduce((acc, entity) => {
|
|
9
|
+
if (!entity?.updatedAt)
|
|
10
|
+
return acc;
|
|
11
|
+
return entity.updatedAt.isAfter(acc) ? entity.updatedAt : acc;
|
|
12
|
+
}, dayjs('1997-01-01'));
|
|
13
|
+
}
|
|
14
|
+
class CachedQuery {
|
|
15
|
+
repository;
|
|
16
|
+
indexedDb;
|
|
17
|
+
options;
|
|
18
|
+
constructor(repository, indexedDb, options = {
|
|
19
|
+
debounceTime: 5_000,
|
|
20
|
+
chunkSize: 100,
|
|
21
|
+
}) {
|
|
22
|
+
this.repository = repository;
|
|
23
|
+
this.indexedDb = indexedDb;
|
|
24
|
+
this.options = options;
|
|
25
|
+
}
|
|
26
|
+
synchronizer = new RepositorySynchronizer({
|
|
27
|
+
lastUpdatedAtChanges: () => this.indexedDb.listChanges().pipe(map(getLastUpdatedAt)),
|
|
28
|
+
saveMany: (items) => this.indexedDb.saveMany(items),
|
|
29
|
+
listChangesAfter: (updatedAt) => this.repository.query.listChangesAfter(updatedAt, { limit: this.options.chunkSize }),
|
|
30
|
+
srcCount: () => from(this.repository.count()),
|
|
31
|
+
destCount: () => this.indexedDb.count(),
|
|
32
|
+
});
|
|
33
|
+
list() {
|
|
34
|
+
return this.synchronizer.sync().pipe(switchMap(() => this.indexedDb.listChanges()), throttleTime(this.options.debounceTime));
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
class CachedQueryFactory {
|
|
38
|
+
create(repository, indexedDb) {
|
|
39
|
+
return new CachedQuery(repository, indexedDb);
|
|
40
|
+
}
|
|
41
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: CachedQueryFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
42
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: CachedQueryFactory, providedIn: 'root' });
|
|
43
|
+
}
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: CachedQueryFactory, decorators: [{
|
|
45
|
+
type: Injectable,
|
|
46
|
+
args: [{ providedIn: 'root' }]
|
|
47
|
+
}] });
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Generated bundle index. Do not edit.
|
|
51
|
+
*/
|
|
52
|
+
|
|
53
|
+
export { CachedQuery, CachedQueryFactory, getLastUpdatedAt };
|
|
54
|
+
//# sourceMappingURL=nx-ddd-common-infrastructure-queries.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nx-ddd-common-infrastructure-queries.mjs","sources":["../tmp-esm2022/infrastructure/queries/cached-query.js","../tmp-esm2022/infrastructure/queries/nx-ddd-common-infrastructure-queries.js"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { RepositorySynchronizer } from '@nx-ddd/common/infrastructure';\nimport dayjs from 'dayjs';\nimport { from, map, switchMap, throttleTime } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nexport function getLastUpdatedAt(items) {\n return items.reduce((acc, entity) => {\n if (!entity?.updatedAt)\n return acc;\n return entity.updatedAt.isAfter(acc) ? entity.updatedAt : acc;\n }, dayjs('1997-01-01'));\n}\nexport class CachedQuery {\n repository;\n indexedDb;\n options;\n constructor(repository, indexedDb, options = {\n debounceTime: 5_000,\n chunkSize: 100,\n }) {\n this.repository = repository;\n this.indexedDb = indexedDb;\n this.options = options;\n }\n synchronizer = new RepositorySynchronizer({\n lastUpdatedAtChanges: () => this.indexedDb.listChanges().pipe(map(getLastUpdatedAt)),\n saveMany: (items) => this.indexedDb.saveMany(items),\n listChangesAfter: (updatedAt) => this.repository.query.listChangesAfter(updatedAt, { limit: this.options.chunkSize }),\n srcCount: () => from(this.repository.count()),\n destCount: () => this.indexedDb.count(),\n });\n list() {\n return this.synchronizer.sync().pipe(switchMap(() => this.indexedDb.listChanges()), throttleTime(this.options.debounceTime));\n }\n}\nexport class CachedQueryFactory {\n create(repository, indexedDb) {\n return new CachedQuery(repository, indexedDb);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: CachedQueryFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: CachedQueryFactory, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: CachedQueryFactory, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGVkLXF1ZXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG54LWRkZC9jb21tb24vc3JjL2xpYi9pbmZyYXN0cnVjdHVyZS9xdWVyaWVzL2NhY2hlZC1xdWVyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3ZFLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQWdCLElBQUksRUFBRSxHQUFHLEVBQWMsU0FBUyxFQUFPLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFFekYsTUFBTSxVQUFVLGdCQUFnQixDQUFxQyxLQUFVO0lBQzdFLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsRUFBRTtRQUNsQyxJQUFJLENBQUMsTUFBTSxFQUFFLFNBQVM7WUFBRSxPQUFPLEdBQUcsQ0FBQztRQUNuQyxPQUFPLE1BQU0sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7SUFDaEUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0FBQzFCLENBQUM7QUFlRCxNQUFNLE9BQU8sV0FBVztJQUVWO0lBQ0E7SUFDQTtJQUhaLFlBQ1ksVUFBNEIsRUFDNUIsU0FBNEIsRUFDNUIsVUFHTjtRQUNGLFlBQVksRUFBRSxLQUFLO1FBQ25CLFNBQVMsRUFBRSxHQUFHO0tBQ2Y7UUFSUyxlQUFVLEdBQVYsVUFBVSxDQUFrQjtRQUM1QixjQUFTLEdBQVQsU0FBUyxDQUFtQjtRQUM1QixZQUFPLEdBQVAsT0FBTyxDQU1oQjtJQUNDLENBQUM7SUFDSSxZQUFZLEdBQUcsSUFBSSxzQkFBc0IsQ0FBQztRQUNqRCxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUNwRixRQUFRLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztRQUN4RCxnQkFBZ0IsRUFBRSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLEVBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFDLENBQUM7UUFDbkgsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzdDLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRTtLQUN4QyxDQUFDLENBQUM7SUFFSCxJQUFJO1FBQ0YsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDLElBQUksQ0FDbEMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsRUFDN0MsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQ3hDLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFHRCxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLE1BQU0sQ0FDSixVQUE0QixFQUM1QixTQUE0QjtRQUU1QixPQUFPLElBQUksV0FBVyxDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUNoRCxDQUFDO3VHQU5VLGtCQUFrQjsyR0FBbEIsa0JBQWtCLGNBRE4sTUFBTTs7MkZBQ2xCLGtCQUFrQjtrQkFEOUIsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZXBvc2l0b3J5U3luY2hyb25pemVyIH0gZnJvbSAnQG54LWRkZC9jb21tb24vaW5mcmFzdHJ1Y3R1cmUnO1xuaW1wb3J0IGRheWpzIGZyb20gJ2RheWpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZnJvbSwgbWFwLCBPYnNlcnZhYmxlLCBzd2l0Y2hNYXAsIHRhcCwgdGhyb3R0bGVUaW1lIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRMYXN0VXBkYXRlZEF0PFQgZXh0ZW5kcyB7dXBkYXRlZEF0OiBkYXlqcy5EYXlqc30+KGl0ZW1zOiBUW10pIHtcbiAgcmV0dXJuIGl0ZW1zLnJlZHVjZSgoYWNjLCBlbnRpdHkpID0+IHtcbiAgICBpZiAoIWVudGl0eT8udXBkYXRlZEF0KSByZXR1cm4gYWNjO1xuICAgIHJldHVybiBlbnRpdHkudXBkYXRlZEF0LmlzQWZ0ZXIoYWNjKSA/IGVudGl0eS51cGRhdGVkQXQgOiBhY2M7XG4gIH0sIGRheWpzKCcxOTk3LTAxLTAxJykpO1xufVxuXG5pbnRlcmZhY2UgU3JjUmVwb3NpdG9yeTxUIGV4dGVuZHMge3VwZGF0ZWRBdDogZGF5anMuRGF5anN9PiB7XG4gIGNvdW50OiAoKSA9PiBQcm9taXNlPG51bWJlcj47XG4gIHF1ZXJ5OiB7XG4gICAgbGlzdENoYW5nZXNBZnRlcjogKHVwZGF0ZWRBdDogZGF5anMuRGF5anMsIHtsaW1pdH06IHtsaW1pdD86IG51bWJlcn0pID0+IE9ic2VydmFibGU8VFtdPjtcbiAgfTtcbn1cblxuaW50ZXJmYWNlIERlc3RSZXBvc2l0b3J5PFQgZXh0ZW5kcyB7dXBkYXRlZEF0OiBkYXlqcy5EYXlqc30+IHtcbiAgbGlzdENoYW5nZXM6ICgpID0+IE9ic2VydmFibGU8VFtdPjtcbiAgc2F2ZU1hbnk6IChpdGVtczogVFtdKSA9PiB2b2lkO1xuICBjb3VudDogKCkgPT4gT2JzZXJ2YWJsZTxudW1iZXI+O1xufVxuXG5leHBvcnQgY2xhc3MgQ2FjaGVkUXVlcnk8VCBleHRlbmRzIHt1cGRhdGVkQXQ6IGRheWpzLkRheWpzfT4ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgcmVwb3NpdG9yeTogU3JjUmVwb3NpdG9yeTxUPixcbiAgICBwcm90ZWN0ZWQgaW5kZXhlZERiOiBEZXN0UmVwb3NpdG9yeTxUPixcbiAgICBwcm90ZWN0ZWQgb3B0aW9uczoge1xuICAgICAgZGVib3VuY2VUaW1lPzogbnVtYmVyLFxuICAgICAgY2h1bmtTaXplPzogbnVtYmVyXG4gICAgfSA9IHtcbiAgICAgIGRlYm91bmNlVGltZTogNV8wMDAsXG4gICAgICBjaHVua1NpemU6IDEwMCxcbiAgICB9LFxuICApIHsgfVxuICByZWFkb25seSBzeW5jaHJvbml6ZXIgPSBuZXcgUmVwb3NpdG9yeVN5bmNocm9uaXplcih7XG4gICAgbGFzdFVwZGF0ZWRBdENoYW5nZXM6ICgpID0+IHRoaXMuaW5kZXhlZERiLmxpc3RDaGFuZ2VzKCkucGlwZShtYXAoZ2V0TGFzdFVwZGF0ZWRBdCkpLFxuICAgIHNhdmVNYW55OiAoaXRlbXM6IFRbXSkgPT4gdGhpcy5pbmRleGVkRGIuc2F2ZU1hbnkoaXRlbXMpLFxuICAgIGxpc3RDaGFuZ2VzQWZ0ZXI6ICh1cGRhdGVkQXQpID0+IHRoaXMucmVwb3NpdG9yeS5xdWVyeS5saXN0Q2hhbmdlc0FmdGVyKHVwZGF0ZWRBdCwge2xpbWl0OiB0aGlzLm9wdGlvbnMuY2h1bmtTaXplfSksXG4gICAgc3JjQ291bnQ6ICgpID0+IGZyb20odGhpcy5yZXBvc2l0b3J5LmNvdW50KCkpLFxuICAgIGRlc3RDb3VudDogKCkgPT4gdGhpcy5pbmRleGVkRGIuY291bnQoKSxcbiAgfSk7XG5cbiAgbGlzdCgpIHtcbiAgICByZXR1cm4gdGhpcy5zeW5jaHJvbml6ZXIuc3luYygpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5pbmRleGVkRGIubGlzdENoYW5nZXMoKSksXG4gICAgICB0aHJvdHRsZVRpbWUodGhpcy5vcHRpb25zLmRlYm91bmNlVGltZSksXG4gICAgKTtcbiAgfVxufVxuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBDYWNoZWRRdWVyeUZhY3Rvcnkge1xuICBjcmVhdGU8VCBleHRlbmRzIHt1cGRhdGVkQXQ6IGRheWpzLkRheWpzfT4oXG4gICAgcmVwb3NpdG9yeTogU3JjUmVwb3NpdG9yeTxUPixcbiAgICBpbmRleGVkRGI6IERlc3RSZXBvc2l0b3J5PFQ+LFxuICApOiBDYWNoZWRRdWVyeTxUPiB7XG4gICAgcmV0dXJuIG5ldyBDYWNoZWRRdWVyeShyZXBvc2l0b3J5LCBpbmRleGVkRGIpO1xuICB9XG59Il19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibngtZGRkLWNvbW1vbi1pbmZyYXN0cnVjdHVyZS1xdWVyaWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG54LWRkZC9jb21tb24vc3JjL2xpYi9pbmZyYXN0cnVjdHVyZS9xdWVyaWVzL254LWRkZC1jb21tb24taW5mcmFzdHJ1Y3R1cmUtcXVlcmllcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { combineLatest, of, switchMap, map, shareReplay, retry, tap, catchError, NEVER } from 'rxjs';
|
|
2
|
+
import { makeDI } from '@nx-ddd/core';
|
|
3
|
+
|
|
4
|
+
class Converter {
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
class RepositorySynchronizer {
|
|
8
|
+
config;
|
|
9
|
+
constructor(config) {
|
|
10
|
+
this.config = config;
|
|
11
|
+
}
|
|
12
|
+
progress$ = combineLatest({
|
|
13
|
+
srcCount: of(null).pipe(switchMap(() => this.config.srcCount())),
|
|
14
|
+
destCount: of(null).pipe(switchMap(() => this.config.destCount())),
|
|
15
|
+
}).pipe(map(({ srcCount, destCount }) => destCount / srcCount), shareReplay(1));
|
|
16
|
+
sync() {
|
|
17
|
+
return this.config.lastUpdatedAtChanges().pipe(switchMap((lastUpdatedAt) => this.config.listChangesAfter(lastUpdatedAt).pipe(retry(3), tap((updated) => this.config.saveMany(updated)), catchError((error) => (console.error(error), NEVER)))));
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
const CRYPTO = makeDI('[@nx-dd/common] Crypto');
|
|
22
|
+
|
|
23
|
+
const WEBSOCKET = makeDI('[@nx-ddd/common] WebSocket');
|
|
24
|
+
const WEBSOCKET_SERVER = makeDI('[@nx-ddd/common] WebSocket.Server');
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Generated bundle index. Do not edit.
|
|
28
|
+
*/
|
|
29
|
+
|
|
30
|
+
export { CRYPTO, Converter, RepositorySynchronizer, WEBSOCKET, WEBSOCKET_SERVER };
|
|
31
|
+
//# sourceMappingURL=nx-ddd-common-infrastructure.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nx-ddd-common-infrastructure.mjs","sources":["../tmp-esm2022/infrastructure/converter.js","../tmp-esm2022/infrastructure/synchronizer.js","../tmp-esm2022/infrastructure/externals/crypto/token/crypto.token.js","../tmp-esm2022/infrastructure/externals/websocket/token/websocket.token.js","../tmp-esm2022/infrastructure/nx-ddd-common-infrastructure.js"],"sourcesContent":["export class Converter {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG54LWRkZC9jb21tb24vc3JjL2xpYi9pbmZyYXN0cnVjdHVyZS9jb252ZXJ0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFnQixTQUFTO0NBRzlCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGFic3RyYWN0IGNsYXNzIENvbnZlcnRlcjxFPiB7XG4gIGFic3RyYWN0IGZyb21SZWNvcmQocmVjb3JkOiBvYmplY3QpOiBFXG4gIGFic3RyYWN0IHRvUmVjb3JkKGVudGl0eTogRSk6IG9iamVjdFxufVxuIl19","import { catchError, combineLatest, map, NEVER, of, retry, shareReplay, switchMap, tap } from 'rxjs';\nexport class RepositorySynchronizer {\n config;\n constructor(config) {\n this.config = config;\n }\n progress$ = combineLatest({\n srcCount: of(null).pipe(switchMap(() => this.config.srcCount())),\n destCount: of(null).pipe(switchMap(() => this.config.destCount())),\n }).pipe(map(({ srcCount, destCount }) => destCount / srcCount), shareReplay(1));\n sync() {\n return this.config.lastUpdatedAtChanges().pipe(switchMap((lastUpdatedAt) => this.config.listChangesAfter(lastUpdatedAt).pipe(retry(3), tap((updated) => this.config.saveMany(updated)), catchError((error) => (console.error(error), NEVER)))));\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luY2hyb25pemVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG54LWRkZC9jb21tb24vc3JjL2xpYi9pbmZyYXN0cnVjdHVyZS9zeW5jaHJvbml6ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBYyxFQUFFLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBVWpILE1BQU0sT0FBTyxzQkFBc0I7SUFDYjtJQUFwQixZQUFvQixNQUF1QztRQUF2QyxXQUFNLEdBQU4sTUFBTSxDQUFpQztJQUFJLENBQUM7SUFFdkQsU0FBUyxHQUFHLGFBQWEsQ0FBQztRQUNqQyxRQUFRLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ2hFLFNBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7S0FDbkUsQ0FBQyxDQUFDLElBQUksQ0FDTCxHQUFHLENBQUMsQ0FBQyxFQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUMsRUFBRSxFQUFFLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQyxFQUNwRCxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztJQUVGLElBQUk7UUFDRixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxJQUFJLENBQzVDLFNBQVMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQzNFLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFDUixHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQy9DLFVBQVUsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQ3JELENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGRheWpzIGZyb20gJ2RheWpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGNvbWJpbmVMYXRlc3QsIG1hcCwgTkVWRVIsIE9ic2VydmFibGUsIG9mLCByZXRyeSwgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcyc7XG5cbmludGVyZmFjZSBSZXBvc2l0b3J5U3luY2hyb25pemVyQ29uZmlnPFQ+IHtcbiAgbGlzdENoYW5nZXNBZnRlcjogKHVwZGF0ZWRBdDogZGF5anMuRGF5anMpID0+IE9ic2VydmFibGU8VFtdPjtcbiAgbGFzdFVwZGF0ZWRBdENoYW5nZXM6ICgpID0+IE9ic2VydmFibGU8ZGF5anMuRGF5anM+O1xuICBzYXZlTWFueTogKGVudGl0aWVzOiBUW10pID0+IHZvaWQ7XG4gIHNyY0NvdW50OiAoKSA9PiBPYnNlcnZhYmxlPG51bWJlcj47XG4gIGRlc3RDb3VudDogKCkgPT4gT2JzZXJ2YWJsZTxudW1iZXI+O1xufVxuXG5leHBvcnQgY2xhc3MgUmVwb3NpdG9yeVN5bmNocm9uaXplcjxUPiB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29uZmlnOiBSZXBvc2l0b3J5U3luY2hyb25pemVyQ29uZmlnPFQ+KSB7IH1cblxuICByZWFkb25seSBwcm9ncmVzcyQgPSBjb21iaW5lTGF0ZXN0KHtcbiAgICBzcmNDb3VudDogb2YobnVsbCkucGlwZShzd2l0Y2hNYXAoKCkgPT4gdGhpcy5jb25maWcuc3JjQ291bnQoKSkpLFxuICAgIGRlc3RDb3VudDogb2YobnVsbCkucGlwZShzd2l0Y2hNYXAoKCkgPT4gdGhpcy5jb25maWcuZGVzdENvdW50KCkpKSxcbiAgfSkucGlwZShcbiAgICBtYXAoKHtzcmNDb3VudCwgZGVzdENvdW50fSkgPT4gZGVzdENvdW50IC8gc3JjQ291bnQpLFxuICAgIHNoYXJlUmVwbGF5KDEpLFxuICApO1xuXG4gIHN5bmMoKTogT2JzZXJ2YWJsZTxhbnlbXT4ge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZy5sYXN0VXBkYXRlZEF0Q2hhbmdlcygpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKGxhc3RVcGRhdGVkQXQpID0+IHRoaXMuY29uZmlnLmxpc3RDaGFuZ2VzQWZ0ZXIobGFzdFVwZGF0ZWRBdCkucGlwZShcbiAgICAgICAgcmV0cnkoMyksXG4gICAgICAgIHRhcCgodXBkYXRlZCkgPT4gdGhpcy5jb25maWcuc2F2ZU1hbnkodXBkYXRlZCkpLFxuICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gKGNvbnNvbGUuZXJyb3IoZXJyb3IpLCBORVZFUikpLFxuICAgICAgKSksXG4gICAgKTtcbiAgfVxufVxuIl19","import { makeDI } from '@nx-ddd/core';\nexport const CRYPTO = makeDI('[@nx-dd/common] Crypto');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J5cHRvLnRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG54LWRkZC9jb21tb24vc3JjL2xpYi9pbmZyYXN0cnVjdHVyZS9leHRlcm5hbHMvY3J5cHRvL3Rva2VuL2NyeXB0by50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBR3RDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQW1CLHdCQUF3QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtYWtlREkgfSBmcm9tICdAbngtZGRkL2NvcmUnO1xuaW1wb3J0IHR5cGUgeyB3ZWJjcnlwdG8gfSBmcm9tICdjcnlwdG8nO1xuXG5leHBvcnQgY29uc3QgQ1JZUFRPID0gbWFrZURJPHdlYmNyeXB0by5DcnlwdG8+KCdbQG54LWRkL2NvbW1vbl0gQ3J5cHRvJyk7XG4iXX0=","import { makeDI } from '@nx-ddd/core';\nexport const WEBSOCKET = makeDI('[@nx-ddd/common] WebSocket');\nexport const WEBSOCKET_SERVER = makeDI('[@nx-ddd/common] WebSocket.Server');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic29ja2V0LnRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG54LWRkZC9jb21tb24vc3JjL2xpYi9pbmZyYXN0cnVjdHVyZS9leHRlcm5hbHMvd2Vic29ja2V0L3Rva2VuL3dlYnNvY2tldC50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXRDLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQW1CLDRCQUE0QixDQUFDLENBQUM7QUFDaEYsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFNLG1DQUFtQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtYWtlREkgfSBmcm9tICdAbngtZGRkL2NvcmUnO1xuXG5leHBvcnQgY29uc3QgV0VCU09DS0VUID0gbWFrZURJPHR5cGVvZiBXZWJTb2NrZXQ+KCdbQG54LWRkZC9jb21tb25dIFdlYlNvY2tldCcpO1xuZXhwb3J0IGNvbnN0IFdFQlNPQ0tFVF9TRVJWRVIgPSBtYWtlREk8YW55PignW0BueC1kZGQvY29tbW9uXSBXZWJTb2NrZXQuU2VydmVyJyk7Il19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibngtZGRkLWNvbW1vbi1pbmZyYXN0cnVjdHVyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BueC1kZGQvY29tbW9uL3NyYy9saWIvaW5mcmFzdHJ1Y3R1cmUvbngtZGRkLWNvbW1vbi1pbmZyYXN0cnVjdHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":";;;AAAO,MAAM,SAAS,CAAC;AACvB;;ACAO,MAAM,sBAAsB,CAAC;AACpC,IAAI,MAAM;AACV,IAAI,WAAW,CAAC,MAAM,EAAE;AACxB,QAAQ,IAAI,CAAC,MAAM,GAAG,MAAM;AAC5B;AACA,IAAI,SAAS,GAAG,aAAa,CAAC;AAC9B,QAAQ,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;AACxE,QAAQ,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;AAC1E,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,SAAS,GAAG,QAAQ,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;AACnF,IAAI,IAAI,GAAG;AACX,QAAQ,OAAO,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,aAAa,KAAK,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,KAAK,MAAM,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACvP;AACA;;ACZY,MAAC,MAAM,GAAG,MAAM,CAAC,wBAAwB;;ACAzC,MAAC,SAAS,GAAG,MAAM,CAAC,4BAA4B;AAChD,MAAC,gBAAgB,GAAG,MAAM,CAAC,mCAAmC;;ACF1E;AACA;AACA;;;;"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
const defaultOptions = {
|
|
2
|
+
letters: true,
|
|
3
|
+
upperCase: true,
|
|
4
|
+
numbers: true,
|
|
5
|
+
symbols: false,
|
|
6
|
+
};
|
|
7
|
+
const CHARACTERS = {
|
|
8
|
+
letters: 'abcdefghijklmnopqrstuvwxyz',
|
|
9
|
+
upperCase: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',
|
|
10
|
+
numbers: '0123456789',
|
|
11
|
+
symbols: '!#$%&()',
|
|
12
|
+
};
|
|
13
|
+
const generateRandomString = (n, options = defaultOptions) => {
|
|
14
|
+
const characters = Object.entries(CHARACTERS).filter(([k]) => options[k]).map(([_, v]) => v).join('');
|
|
15
|
+
const genChar = () => characters.charAt(Math.floor(Math.random() * characters.length));
|
|
16
|
+
return [...Array(n)].map(() => genChar()).join('');
|
|
17
|
+
};
|
|
18
|
+
const generateId = (n = 20) => generateRandomString(n);
|
|
19
|
+
|
|
20
|
+
function format(strings, ...keys) {
|
|
21
|
+
let result = strings.reduce((prev, current, index) => {
|
|
22
|
+
const key = keys[index - 1];
|
|
23
|
+
return `${prev}${key}${current}`;
|
|
24
|
+
});
|
|
25
|
+
// 先頭が開業でなくなるまで改行コードを削除
|
|
26
|
+
while (result.startsWith('\n')) {
|
|
27
|
+
result = result.slice(1);
|
|
28
|
+
}
|
|
29
|
+
// 1行目のインデントの数を取得して、各行のインデントを同じ数削除
|
|
30
|
+
const firstLineIndent = result.match(/^(\s*)/)?.[1];
|
|
31
|
+
if (firstLineIndent) {
|
|
32
|
+
const regExp = new RegExp(`^${firstLineIndent}`);
|
|
33
|
+
result = result
|
|
34
|
+
.split('\n')
|
|
35
|
+
.map((line) => line.replace(regExp, ''))
|
|
36
|
+
.join('\n');
|
|
37
|
+
}
|
|
38
|
+
// 最初のスペースの数を取得して、各行のスペースを同じ数削除
|
|
39
|
+
return result;
|
|
40
|
+
}
|
|
41
|
+
const message = format;
|
|
42
|
+
|
|
43
|
+
const getAllProps = (obj, keys = Object.keys(obj)) => {
|
|
44
|
+
const proto = Object.getPrototypeOf(obj);
|
|
45
|
+
keys = Object.getOwnPropertyNames(proto)
|
|
46
|
+
.filter(v => v !== '__proto__')
|
|
47
|
+
.filter(v => Object.getOwnPropertyDescriptor(proto, v).get instanceof Function)
|
|
48
|
+
.concat(keys);
|
|
49
|
+
return proto.constructor.name === 'Object' ? keys : getAllProps(proto, keys);
|
|
50
|
+
};
|
|
51
|
+
const toObject = (obj) => getAllProps(obj).reduce((p, k) => ({ ...p, [k]: obj[k] }), {});
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Generated bundle index. Do not edit.
|
|
55
|
+
*/
|
|
56
|
+
|
|
57
|
+
export { format, generateId, message, toObject };
|
|
58
|
+
//# sourceMappingURL=nx-ddd-common.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nx-ddd-common.mjs","sources":["../tmp-esm2022/utilities/generate-id.js","../tmp-esm2022/utilities/message.js","../tmp-esm2022/utilities/to-object.js","../tmp-esm2022/nx-ddd-common.js"],"sourcesContent":["const defaultOptions = {\n letters: true,\n upperCase: true,\n numbers: true,\n symbols: false,\n};\nconst CHARACTERS = {\n letters: 'abcdefghijklmnopqrstuvwxyz',\n upperCase: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',\n numbers: '0123456789',\n symbols: '!#$%&()',\n};\nconst generateRandomString = (n, options = defaultOptions) => {\n const characters = Object.entries(CHARACTERS).filter(([k]) => options[k]).map(([_, v]) => v).join('');\n const genChar = () => characters.charAt(Math.floor(Math.random() * characters.length));\n return [...Array(n)].map(() => genChar()).join('');\n};\nexport const generateId = (n = 20) => generateRandomString(n);\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUtaWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbngtZGRkL2NvbW1vbi9zcmMvbGliL3V0aWxpdGllcy9nZW5lcmF0ZS1pZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxNQUFNLGNBQWMsR0FBWTtJQUM5QixPQUFPLEVBQUUsSUFBSTtJQUNiLFNBQVMsRUFBRSxJQUFJO0lBQ2YsT0FBTyxFQUFFLElBQUk7SUFDYixPQUFPLEVBQUUsS0FBSztDQUNmLENBQUE7QUFFRCxNQUFNLFVBQVUsR0FBRztJQUNqQixPQUFPLEVBQUUsNEJBQTRCO0lBQ3JDLFNBQVMsRUFBRSw0QkFBNEI7SUFDdkMsT0FBTyxFQUFFLFlBQVk7SUFDckIsT0FBTyxFQUFFLFNBQVM7Q0FDbkIsQ0FBQztBQUVGLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxDQUFTLEVBQUUsVUFBbUIsY0FBYyxFQUFVLEVBQUU7SUFDcEYsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3RHLE1BQU0sT0FBTyxHQUFHLEdBQVcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFFL0YsT0FBTyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ3JELENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQVUsRUFBRSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW50ZXJmYWNlIE9wdGlvbnMge1xuICBsZXR0ZXJzOiBib29sZWFuO1xuICB1cHBlckNhc2U6IGJvb2xlYW47XG4gIG51bWJlcnM6IGJvb2xlYW47XG4gIHN5bWJvbHM6IGJvb2xlYW47XG59XG5cbmNvbnN0IGRlZmF1bHRPcHRpb25zOiBPcHRpb25zID0ge1xuICBsZXR0ZXJzOiB0cnVlLFxuICB1cHBlckNhc2U6IHRydWUsXG4gIG51bWJlcnM6IHRydWUsXG4gIHN5bWJvbHM6IGZhbHNlLFxufVxuXG5jb25zdCBDSEFSQUNURVJTID0ge1xuICBsZXR0ZXJzOiAnYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXonLFxuICB1cHBlckNhc2U6ICdBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWicsXG4gIG51bWJlcnM6ICcwMTIzNDU2Nzg5JyxcbiAgc3ltYm9sczogJyEjJCUmKCknLFxufTtcblxuY29uc3QgZ2VuZXJhdGVSYW5kb21TdHJpbmcgPSAobjogbnVtYmVyLCBvcHRpb25zOiBPcHRpb25zID0gZGVmYXVsdE9wdGlvbnMpOiBzdHJpbmcgPT4ge1xuICBjb25zdCBjaGFyYWN0ZXJzID0gT2JqZWN0LmVudHJpZXMoQ0hBUkFDVEVSUykuZmlsdGVyKChba10pID0+IG9wdGlvbnNba10pLm1hcCgoW18sIHZdKSA9PiB2KS5qb2luKCcnKTtcbiAgY29uc3QgZ2VuQ2hhciA9ICgpOiBzdHJpbmcgPT4gY2hhcmFjdGVycy5jaGFyQXQoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogY2hhcmFjdGVycy5sZW5ndGgpKTtcblxuICByZXR1cm4gWy4uLkFycmF5KG4pXS5tYXAoKCkgPT4gZ2VuQ2hhcigpKS5qb2luKCcnKTtcbn1cblxuZXhwb3J0IGNvbnN0IGdlbmVyYXRlSWQgPSAobiA9IDIwKTogc3RyaW5nID0+IGdlbmVyYXRlUmFuZG9tU3RyaW5nKG4pO1xuIl19","export function format(strings, ...keys) {\n let result = strings.reduce((prev, current, index) => {\n const key = keys[index - 1];\n return `${prev}${key}${current}`;\n });\n // 先頭が開業でなくなるまで改行コードを削除\n while (result.startsWith('\\n')) {\n result = result.slice(1);\n }\n // 1行目のインデントの数を取得して、各行のインデントを同じ数削除\n const firstLineIndent = result.match(/^(\\s*)/)?.[1];\n if (firstLineIndent) {\n const regExp = new RegExp(`^${firstLineIndent}`);\n result = result\n .split('\\n')\n .map((line) => line.replace(regExp, ''))\n .join('\\n');\n }\n // 最初のスペースの数を取得して、各行のスペースを同じ数削除\n return result;\n}\nexport const message = format;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BueC1kZGQvY29tbW9uL3NyYy9saWIvdXRpbGl0aWVzL21lc3NhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLE1BQU0sQ0FDcEIsT0FBNkIsRUFDN0IsR0FBRyxJQUF5QjtJQUU1QixJQUFJLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRTtRQUNuRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzVCLE9BQU8sR0FBRyxJQUFJLEdBQUcsR0FBRyxHQUFHLE9BQU8sRUFBRSxDQUFDO0lBQ25DLENBQUMsQ0FBQyxDQUFDO0lBRUgsdUJBQXVCO0lBQ3ZCLE9BQU8sTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQy9CLE1BQU0sR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxrQ0FBa0M7SUFDbEMsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BELElBQUksZUFBZSxFQUFFLENBQUM7UUFDcEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxlQUFlLEVBQUUsQ0FBQyxDQUFDO1FBQ2pELE1BQU0sR0FBRyxNQUFNO2FBQ1osS0FBSyxDQUFDLElBQUksQ0FBQzthQUNYLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7YUFDdkMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hCLENBQUM7SUFDRCwrQkFBK0I7SUFFL0IsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gZm9ybWF0KFxuICBzdHJpbmdzOiBUZW1wbGF0ZVN0cmluZ3NBcnJheSxcbiAgLi4ua2V5czogKHN0cmluZyB8IG51bWJlcilbXVxuKTogc3RyaW5nIHtcbiAgbGV0IHJlc3VsdCA9IHN0cmluZ3MucmVkdWNlKChwcmV2LCBjdXJyZW50LCBpbmRleCkgPT4ge1xuICAgIGNvbnN0IGtleSA9IGtleXNbaW5kZXggLSAxXTtcbiAgICByZXR1cm4gYCR7cHJldn0ke2tleX0ke2N1cnJlbnR9YDtcbiAgfSk7XG5cbiAgLy8g5YWI6aCt44GM6ZaL5qWt44Gn44Gq44GP44Gq44KL44G+44Gn5pS56KGM44Kz44O844OJ44KS5YmK6ZmkXG4gIHdoaWxlIChyZXN1bHQuc3RhcnRzV2l0aCgnXFxuJykpIHtcbiAgICByZXN1bHQgPSByZXN1bHQuc2xpY2UoMSk7XG4gIH1cblxuICAvLyAx6KGM55uu44Gu44Kk44Oz44OH44Oz44OI44Gu5pWw44KS5Y+W5b6X44GX44Gm44CB5ZCE6KGM44Gu44Kk44Oz44OH44Oz44OI44KS5ZCM44GY5pWw5YmK6ZmkXG4gIGNvbnN0IGZpcnN0TGluZUluZGVudCA9IHJlc3VsdC5tYXRjaCgvXihcXHMqKS8pPy5bMV07XG4gIGlmIChmaXJzdExpbmVJbmRlbnQpIHtcbiAgICBjb25zdCByZWdFeHAgPSBuZXcgUmVnRXhwKGBeJHtmaXJzdExpbmVJbmRlbnR9YCk7XG4gICAgcmVzdWx0ID0gcmVzdWx0XG4gICAgICAuc3BsaXQoJ1xcbicpXG4gICAgICAubWFwKChsaW5lKSA9PiBsaW5lLnJlcGxhY2UocmVnRXhwLCAnJykpXG4gICAgICAuam9pbignXFxuJyk7XG4gIH1cbiAgLy8g5pyA5Yid44Gu44K544Oa44O844K544Gu5pWw44KS5Y+W5b6X44GX44Gm44CB5ZCE6KGM44Gu44K544Oa44O844K544KS5ZCM44GY5pWw5YmK6ZmkXG5cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuZXhwb3J0IGNvbnN0IG1lc3NhZ2UgPSBmb3JtYXQiXX0=","const getAllProps = (obj, keys = Object.keys(obj)) => {\n const proto = Object.getPrototypeOf(obj);\n keys = Object.getOwnPropertyNames(proto)\n .filter(v => v !== '__proto__')\n .filter(v => Object.getOwnPropertyDescriptor(proto, v).get instanceof Function)\n .concat(keys);\n return proto.constructor.name === 'Object' ? keys : getAllProps(proto, keys);\n};\nexport const toObject = (obj) => getAllProps(obj).reduce((p, k) => ({ ...p, [k]: obj[k] }), {});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG8tb2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG54LWRkZC9jb21tb24vc3JjL2xpYi91dGlsaXRpZXMvdG8tb2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sV0FBVyxHQUFHLENBQUMsR0FBVyxFQUFFLE9BQWlCLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQVksRUFBRTtJQUMvRSxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pDLElBQUksR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDO1NBQ3JDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxXQUFXLENBQUM7U0FDOUIsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLHdCQUF3QixDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLFlBQVksUUFBUSxDQUFDO1NBQzlFLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVoQixPQUFPLEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQy9FLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFDLEdBQVcsRUFBVSxFQUFFLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBnZXRBbGxQcm9wcyA9IChvYmo6IG9iamVjdCwga2V5czogc3RyaW5nW10gPSBPYmplY3Qua2V5cyhvYmopKTogc3RyaW5nW10gPT4ge1xuICBjb25zdCBwcm90byA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihvYmopO1xuICBrZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMocHJvdG8pXG4gICAgLmZpbHRlcih2ID0+IHYgIT09ICdfX3Byb3RvX18nKVxuICAgIC5maWx0ZXIodiA9PiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHByb3RvLCB2KS5nZXQgaW5zdGFuY2VvZiBGdW5jdGlvbilcbiAgICAuY29uY2F0KGtleXMpO1xuXG4gIHJldHVybiBwcm90by5jb25zdHJ1Y3Rvci5uYW1lID09PSAnT2JqZWN0JyA/IGtleXMgOiBnZXRBbGxQcm9wcyhwcm90bywga2V5cyk7XG59XG5cbmV4cG9ydCBjb25zdCB0b09iamVjdCA9IChvYmo6IG9iamVjdCk6IG9iamVjdCA9PiBnZXRBbGxQcm9wcyhvYmopLnJlZHVjZSgocCwgaykgPT4gKHsuLi5wLCBba106IG9ialtrXX0pLCB7fSk7XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibngtZGRkLWNvbW1vbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BueC1kZGQvY29tbW9uL3NyYy9saWIvbngtZGRkLWNvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|
package/index.d.ts
CHANGED
|
@@ -1 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
declare const generateId: (n?: number) => string;
|
|
2
|
+
|
|
3
|
+
declare function format(strings: TemplateStringsArray, ...keys: (string | number)[]): string;
|
|
4
|
+
declare const message: typeof format;
|
|
5
|
+
|
|
6
|
+
declare const toObject: (obj: object) => object;
|
|
7
|
+
|
|
8
|
+
export { format, generateId, message, toObject };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import * as _nx_ddd_core from '@nx-ddd/core';
|
|
2
|
+
import * as i0 from '@angular/core';
|
|
3
|
+
import { EnvironmentProviders } from '@angular/core';
|
|
4
|
+
import { Browser, LaunchOptions } from 'playwright';
|
|
5
|
+
|
|
6
|
+
interface ChromiumConfig {
|
|
7
|
+
headless: boolean;
|
|
8
|
+
args?: string[];
|
|
9
|
+
executablePath?: string;
|
|
10
|
+
}
|
|
11
|
+
declare const CHROMIUM_CONFIG: _nx_ddd_core.DiToken<ChromiumConfig>;
|
|
12
|
+
declare class ChromiumService {
|
|
13
|
+
protected readonly config: ChromiumConfig;
|
|
14
|
+
start<R = any>(callback: (browser: Browser) => Promise<R>, options?: LaunchOptions): Promise<R>;
|
|
15
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ChromiumService, never>;
|
|
16
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ChromiumService>;
|
|
17
|
+
}
|
|
18
|
+
declare function provideChromium(useFactory?: () => ChromiumConfig): EnvironmentProviders;
|
|
19
|
+
|
|
20
|
+
export { CHROMIUM_CONFIG, ChromiumService, provideChromium };
|
|
21
|
+
export type { ChromiumConfig };
|
|
@@ -1 +1,19 @@
|
|
|
1
|
-
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { UploadTask } from '@angular/fire/storage';
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
4
|
+
|
|
5
|
+
declare class CloudStorageService {
|
|
6
|
+
private storage;
|
|
7
|
+
private task;
|
|
8
|
+
private task$;
|
|
9
|
+
readonly progress: i0.Signal<number>;
|
|
10
|
+
readonly progress$: Observable<number>;
|
|
11
|
+
getDownloadUrl(filePath: string): Promise<string>;
|
|
12
|
+
private convertToObservable;
|
|
13
|
+
upload(path: string, file: File): UploadTask;
|
|
14
|
+
cancel(): void;
|
|
15
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CloudStorageService, never>;
|
|
16
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<CloudStorageService>;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export { CloudStorageService };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import * as _nx_ddd_common_infrastructure_externals_firebase_admin_token from '@nx-ddd/common/infrastructure/externals/firebase-admin/token';
|
|
3
|
+
import admin from 'firebase-admin';
|
|
4
|
+
|
|
5
|
+
declare function provideFirebaseAdmin(): {
|
|
6
|
+
provide: _angular_core.InjectionToken<_nx_ddd_common_infrastructure_externals_firebase_admin_token.FirebaseAdmin>;
|
|
7
|
+
useValue: typeof admin;
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
export { provideFirebaseAdmin };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
import admin from 'firebase-admin';
|
|
3
|
+
|
|
4
|
+
interface FirebaseAdmin {
|
|
5
|
+
auth(): admin.auth.Auth;
|
|
6
|
+
firestore(): admin.firestore.Firestore;
|
|
7
|
+
settings(): admin.firestore.Settings;
|
|
8
|
+
}
|
|
9
|
+
declare const FIREBASE_ADMIN: InjectionToken<FirebaseAdmin>;
|
|
10
|
+
|
|
11
|
+
export { FIREBASE_ADMIN };
|
|
12
|
+
export type { FirebaseAdmin };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { InjectionToken, Provider } from '@angular/core';
|
|
3
|
+
import * as openai from 'openai';
|
|
4
|
+
import { ClientOptions, OpenAI } from 'openai';
|
|
5
|
+
|
|
6
|
+
type OpenAiConfig = ClientOptions;
|
|
7
|
+
declare const OPENAI_CONFIG: InjectionToken<ClientOptions>;
|
|
8
|
+
declare function provideOpenAiConfig(useFactory: () => OpenAiConfig): Provider[];
|
|
9
|
+
declare function provideOpenaiService(useFactory: () => OpenAiConfig): Provider[];
|
|
10
|
+
|
|
11
|
+
declare class OpenAiServiceImpl extends OpenAI {
|
|
12
|
+
constructor(config?: openai.ClientOptions);
|
|
13
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<OpenAiServiceImpl, never>;
|
|
14
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<OpenAiServiceImpl>;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export { OPENAI_CONFIG, OpenAiServiceImpl, provideOpenAiConfig, provideOpenaiService };
|
|
18
|
+
export type { OpenAiConfig };
|
|
@@ -1,2 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { DiToken } from '@nx-ddd/core';
|
|
2
|
+
import { OpenAiServiceImpl } from '@nx-ddd/common/infrastructure/externals/openai/impl';
|
|
3
|
+
|
|
4
|
+
declare const OPENAI: DiToken<OpenAiServiceImpl>;
|
|
5
|
+
declare function injectOpenAiService(): OpenAiServiceImpl;
|
|
6
|
+
|
|
7
|
+
export { OPENAI, injectOpenAiService };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { InjectionToken, Injector } from '@angular/core';
|
|
3
|
+
import Stripe from 'stripe';
|
|
4
|
+
|
|
5
|
+
declare class StripeServiceImpl extends Stripe {
|
|
6
|
+
constructor(config: StripeConfig);
|
|
7
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<StripeServiceImpl, never>;
|
|
8
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<StripeServiceImpl>;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
interface StripeConfig {
|
|
12
|
+
secretKey: string;
|
|
13
|
+
}
|
|
14
|
+
declare const STRIPE_CONFIG: InjectionToken<StripeConfig>;
|
|
15
|
+
declare function provideStripe(configFactory: (injector: Injector) => StripeConfig): ({
|
|
16
|
+
provide: InjectionToken<unknown>;
|
|
17
|
+
useClass: typeof StripeServiceImpl;
|
|
18
|
+
deps: InjectionToken<StripeConfig>[];
|
|
19
|
+
useFactory?: undefined;
|
|
20
|
+
} | {
|
|
21
|
+
provide: InjectionToken<StripeConfig>;
|
|
22
|
+
useFactory: (injector: Injector) => StripeConfig;
|
|
23
|
+
deps: (typeof Injector)[];
|
|
24
|
+
useClass?: undefined;
|
|
25
|
+
})[];
|
|
26
|
+
|
|
27
|
+
export { STRIPE_CONFIG, StripeServiceImpl, provideStripe };
|
|
28
|
+
export type { StripeConfig };
|