@trash-streamers/common 1.2.53 → 1.2.55
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.
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as grpc from "@grpc/grpc-js";
|
|
1
2
|
import { ConfigService } from "@nestjs/config";
|
|
2
3
|
import { ClientGrpc } from "@nestjs/microservices";
|
|
3
4
|
export declare class GrpcClientFactory {
|
|
@@ -9,6 +10,7 @@ export declare class GrpcClientFactory {
|
|
|
9
10
|
protoPath: string;
|
|
10
11
|
url: string;
|
|
11
12
|
secure?: boolean;
|
|
13
|
+
credentials?: grpc.ChannelCredentials;
|
|
12
14
|
}): Promise<ClientGrpc>;
|
|
13
15
|
register(token: string, client: ClientGrpc): void;
|
|
14
16
|
getClient<T extends ClientGrpc = ClientGrpc>(token: string): T;
|
|
@@ -54,84 +54,16 @@ let GrpcClientFactory = class GrpcClientFactory {
|
|
|
54
54
|
}
|
|
55
55
|
clients = new Map();
|
|
56
56
|
async createClient(options) {
|
|
57
|
-
|
|
58
|
-
if (options.secure) {
|
|
59
|
-
const CA_PEM = `-----BEGIN CERTIFICATE-----
|
|
60
|
-
MIIDWzCCAkOgAwIBAgIULC3LplY9Eb6Bgk4dLVPd6pNYojIwDQYJKoZIhvcNAQEL
|
|
61
|
-
BQAwIjEgMB4GA1UEAxMXdHJhc2gtc3RyZWFtZXJzLXJvb3QtY2EwHhcNMjYwMzE4
|
|
62
|
-
MTE1NjU4WhcNMzYwMzE1MTE1NzI4WjAiMSAwHgYDVQQDExd0cmFzaC1zdHJlYW1l
|
|
63
|
-
cnMtcm9vdC1jYTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALpm/YW2
|
|
64
|
-
TP7Yj+76P4yFx2epmPaKGmeqIS+gOhSZ2c+IINnCREx+4UxiG75H8zq9H3GZfvsF
|
|
65
|
-
thaBBtNVh64j++CkqUN1NtsV920mkVKqhP08s/mexd0YS4bPjiLRE6Y/eXnAIK+X
|
|
66
|
-
hQ2JQA/MgreQCxc+0iEegAX3TgDkPX/TIL/vl1ZRu2daqupEfJWAn9MJ9Iq+viQW
|
|
67
|
-
bnex2HrqdpVUdOYtbemeO+tdaCzX8keGvHNJp2SqDQixNipAqfvwGcI/P/HjRigh
|
|
68
|
-
d4KJIkibdR/uOvbS76INPI4eOBCA0CMI8BWYXxhmJQMt7jlDqqnm8ZN3zeWc6/E4
|
|
69
|
-
cZ0JZH56OuPgqSECAwEAAaOBiDCBhTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/
|
|
70
|
-
BAUwAwEB/zAdBgNVHQ4EFgQUC+Aeq5pdTJ9Ztksb9EkEVXtv4q8wHwYDVR0jBBgw
|
|
71
|
-
FoAUC+Aeq5pdTJ9Ztksb9EkEVXtv4q8wIgYDVR0RBBswGYIXdHJhc2gtc3RyZWFt
|
|
72
|
-
ZXJzLXJvb3QtY2EwDQYJKoZIhvcNAQELBQADggEBAFs8oOYWE29KX6aoJZxNLMU5
|
|
73
|
-
VzVArkIkUv569Hic/1gRVy68wQ5bfvB8bZKJ+bo8rapbKTBVUWS8KE454qxmvCDz
|
|
74
|
-
vkn3mCVIhp5itToIezN5jBpN4vOHVLIK5vEPO1WAtqaX8LwxHmEaVPoD/DKtvVof
|
|
75
|
-
ObB+xckaNWb3/H784K1iqh3pKQ1WOkoVc7CM/fJcjMEdZYaaYthU86SZ9ym9CZPj
|
|
76
|
-
7Gn2qT/4Oed39JrK4bpakpV7EJPZOkKv44otW0qfooRRE4Oy0vryQNEqpKq6nAgR
|
|
77
|
-
9QDCNALA4SuO8pODznsET/vGRF2M1e8kBPnFNLi6Pfdfe9ncOhEB06QO6q1McL0=
|
|
78
|
-
-----END CERTIFICATE-----`;
|
|
79
|
-
const CERT_PEM = `-----BEGIN CERTIFICATE-----
|
|
80
|
-
MIIDSTCCAjGgAwIBAgIUA16Da2satwVRfGWeMNcz1D1zpbowDQYJKoZIhvcNAQEL
|
|
81
|
-
BQAwIjEgMB4GA1UEAxMXdHJhc2gtc3RyZWFtZXJzLXJvb3QtY2EwHhcNMjYwMzE4
|
|
82
|
-
MTcxMTM5WhcNMjcwMzE4MTcxMjA5WjASMRAwDgYDVQQDEwdnYXRld2F5MIIBIjAN
|
|
83
|
-
BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApXcQ/TXj4FLE2WWDDyRZdw7+kMUG
|
|
84
|
-
6kQCe5uQbBKiXo4QB0Yhrx3daf6gfjEYrzkcmRTZwa2L8e+v5rFxnBsj5SFRrvF6
|
|
85
|
-
tcfq3w2YO7VAs8SxNBkwBK1M7qt0ynenBEiYUrSGm8RMakqh0rRMKbXRsGKU6pqW
|
|
86
|
-
HFwje2nuAiaXi+CU2D6f/8pzBlorGh8tw3mlZykUdh22i8cW8vKQliQOy20skrC8
|
|
87
|
-
ckHnE6ctw7SPtGcpdayl2Qv6h7wbtAWYtFu8K8+YG6zj9+jBfheOPu6PLF0cWCOY
|
|
88
|
-
ERetYNYkCmxTe5rbqbQxMAeqW4Usw9/VZePFDlB2h+3D/0hkcy2suOIvpwIDAQAB
|
|
89
|
-
o4GGMIGDMA4GA1UdDwEB/wQEAwIDqDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYB
|
|
90
|
-
BQUHAwIwHQYDVR0OBBYEFKNCcXfquYP84T0B+cv5WQwKTC6vMB8GA1UdIwQYMBaA
|
|
91
|
-
FAvgHquaXUyfWbZLG/RJBFV7b+KvMBIGA1UdEQQLMAmCB2dhdGV3YXkwDQYJKoZI
|
|
92
|
-
hvcNAQELBQADggEBAJee4T8NEFUB1MOruo5t0qW07XPHVHgskgx81U2x2AyW12MT
|
|
93
|
-
8N4bzwMbw0abY7rA881/eaHDEzwjA70fEOzDiAKyVp5Q2VuTc7tMeAD414bBHqr0
|
|
94
|
-
jmHEXZlp++Iv8FHxX1kaeW09ywoGlHMLvlPC7R/7y5A9s8MbXgGoc+5zm5Lmuptv
|
|
95
|
-
LvgxQ44qmmfE8bxi9670SpTx+35yW33hwV7AxmQLKCdzFCalvdj3dOrKchsc6+MP
|
|
96
|
-
6bOqrLhcZJ0fumu3mty9znjBVd7/RpMlxvE0T90o0mmPS4xb0uNX66QCFV5JfV0j
|
|
97
|
-
NjBPGCaao3dz2+SfgNNYVCpiKH3o4mJM+vHwCk0=
|
|
98
|
-
-----END CERTIFICATE-----`;
|
|
99
|
-
const KEY_PEM = `-----BEGIN RSA PRIVATE KEY-----
|
|
100
|
-
MIIEpAIBAAKCAQEApXcQ/TXj4FLE2WWDDyRZdw7+kMUG6kQCe5uQbBKiXo4QB0Yh
|
|
101
|
-
rx3daf6gfjEYrzkcmRTZwa2L8e+v5rFxnBsj5SFRrvF6tcfq3w2YO7VAs8SxNBkw
|
|
102
|
-
BK1M7qt0ynenBEiYUrSGm8RMakqh0rRMKbXRsGKU6pqWHFwje2nuAiaXi+CU2D6f
|
|
103
|
-
/8pzBlorGh8tw3mlZykUdh22i8cW8vKQliQOy20skrC8ckHnE6ctw7SPtGcpdayl
|
|
104
|
-
2Qv6h7wbtAWYtFu8K8+YG6zj9+jBfheOPu6PLF0cWCOYERetYNYkCmxTe5rbqbQx
|
|
105
|
-
MAeqW4Usw9/VZePFDlB2h+3D/0hkcy2suOIvpwIDAQABAoIBAA1RpkEbmLoyhLyT
|
|
106
|
-
GpeaGhwmotXNu57D1rH9ywRIA7XkwuQzAFHI76Jb6ANVubebu0eUkWqw/jYn+wVw
|
|
107
|
-
0cT6Z6CcAVKPBuJMXgWSYedR0bbRZbTciixLiYkfWAlW1E+DSxpChHX+uRVH6KVo
|
|
108
|
-
n0Yu59rGNK0lwGDhXHcksbnj7V2e7GlQEyWy9WCNTdSwQq8BKhA5n4oehSD6OHUS
|
|
109
|
-
BVpQGHe2i26mRBntLG+cKNmRrHDnRTirzszrZqEetPrtOa3V4wUOP9GLWHcAONKm
|
|
110
|
-
DEfP58V3EiQgoatDSCFDHCG+xIpZGfm9q8WLnd83oGm0bytmzRH7ADCiJ1oB4r++
|
|
111
|
-
TMJnpPECgYEAwU25XSju3b0lPkPEioHHap1ndeajNH2NAQfUGlNxHpTRJrRpB201
|
|
112
|
-
faTTywTAl/3SLDNFHEgkXWjjP9rmklOTvG1IWFVTIj6zPVjo4UKrCAEGrS548/0K
|
|
113
|
-
ZBGtMeYjZ6lUZ5F/56NmC58H1R5rF4u0o94mmZnklNxhZZomWpPjYeUCgYEA2yHf
|
|
114
|
-
A9x7WVRVxqmbZ3lItfssOuWg6e3oGeZXDp8XGBR+bhzUsTmnx7NRZ/e8xmGLBNUi
|
|
115
|
-
feqbSQuQtZf8q5RnSk1Eh5LShpFJMdURvY5rmYsXLFSXoMBPxDhCZ2AoIon0Mw8Q
|
|
116
|
-
2nV2+e2PL6jYHciNxKgGCpBLw9FIiCq7E1kHopsCgYEAiv2rAgxTrMa7B8lMgdcN
|
|
117
|
-
H2Dsqn7a7Pw1rf8GCKPk23tf4/em6XsiEiS5UOoq3V7Zh4SZ9dr9otivRhPM5HwJ
|
|
118
|
-
51ugwDsh2qbA1KSgVpBMUCYEufOHbtCMbyWypgV3garkkM+y60i3MDX6OMh1cmm2
|
|
119
|
-
ynkKwjlAfbT0p0yutURPI+0CgYEAqZijY/emt9JfuKvYDNN/hOjqqILEcYihlDoD
|
|
120
|
-
sttKImbqGwrRSoDW6+ZK4O6J+ffQgmL6mP2URYpf60vAUINBFe6LVWo66c9UGO9R
|
|
121
|
-
FaY+fM17l+G4oL92fOUV77AqH+EpUMMeRhWXiYNkyHwjF5n6rvNkCZT4LouxWUHJ
|
|
122
|
-
HAZRtHUCgYBkWNUwuR4DLCHzfYdxvu6nd2Bpvg7JZgDD0B8ZMhN1lzNJn44jUMTr
|
|
123
|
-
UPZKYDgk2K64HYWZjUW85Cc3KvCJ0LDcEoepa/vOESLfhcDgPmTnK84S5M/jEWqG
|
|
124
|
-
wBGprTrO2M+BK9RBCJCQgc2dYurW/+/0NN/3nL0fzucVQFbR9+HAGw==
|
|
125
|
-
-----END RSA PRIVATE KEY-----`;
|
|
126
|
-
credentials = grpc.credentials.createSsl(Buffer.from(CA_PEM), Buffer.from(KEY_PEM), Buffer.from(CERT_PEM));
|
|
127
|
-
}
|
|
57
|
+
const credentials = options.credentials ?? grpc.credentials.createInsecure();
|
|
128
58
|
return microservices_1.ClientProxyFactory.create({
|
|
129
59
|
transport: microservices_1.Transport.GRPC,
|
|
130
60
|
options: {
|
|
131
61
|
...options,
|
|
132
62
|
credentials,
|
|
133
|
-
|
|
134
|
-
|
|
63
|
+
channelOptions: {
|
|
64
|
+
'grpc.ssl_target_name_override': 'system-chats.service',
|
|
65
|
+
'grpc.default_authority': 'system-chats.service',
|
|
66
|
+
},
|
|
135
67
|
loader: {
|
|
136
68
|
keepCase: false,
|
|
137
69
|
enums: String,
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
import * as grpc from "@grpc/grpc-js";
|
|
1
2
|
import { type DynamicModule } from '@nestjs/common';
|
|
2
3
|
import { GRPC_CLIENTS } from './registry/grpc.registry';
|
|
3
4
|
export declare class GrpcModule {
|
|
4
|
-
static register(clients: Array<keyof typeof GRPC_CLIENTS
|
|
5
|
+
static register(clients: Array<keyof typeof GRPC_CLIENTS>, options?: {
|
|
6
|
+
credentialsFactory?: () => Promise<grpc.ChannelCredentials>;
|
|
7
|
+
}): DynamicModule;
|
|
5
8
|
}
|
package/dist/grpc/grpc.module.js
CHANGED
|
@@ -14,7 +14,7 @@ const grpc_constants_1 = require("./constants/grpc.constants");
|
|
|
14
14
|
const grpc_client_factory_1 = require("./factory/grpc-client.factory");
|
|
15
15
|
const grpc_registry_1 = require("./registry/grpc.registry");
|
|
16
16
|
let GrpcModule = GrpcModule_1 = class GrpcModule {
|
|
17
|
-
static register(clients) {
|
|
17
|
+
static register(clients, options) {
|
|
18
18
|
return {
|
|
19
19
|
module: GrpcModule_1,
|
|
20
20
|
imports: [config_1.ConfigModule],
|
|
@@ -26,11 +26,15 @@ let GrpcModule = GrpcModule_1 = class GrpcModule {
|
|
|
26
26
|
provide: `${grpc_constants_1.GRPC_CLIENT_PREFIX}_${token}`,
|
|
27
27
|
useFactory: async (factory, config) => {
|
|
28
28
|
const url = config.getOrThrow(cfg.env);
|
|
29
|
+
const credentials = cfg.secure && options?.credentialsFactory
|
|
30
|
+
? await options.credentialsFactory()
|
|
31
|
+
: undefined;
|
|
29
32
|
const client = await factory.createClient({
|
|
30
33
|
package: cfg.package,
|
|
31
34
|
protoPath: cfg.protoPath,
|
|
32
35
|
url,
|
|
33
36
|
secure: cfg.secure,
|
|
37
|
+
credentials
|
|
34
38
|
});
|
|
35
39
|
factory.register(token, client);
|
|
36
40
|
return client;
|