@routr/common 2.0.8-alpha.19 → 2.0.8-alpha.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/connect/api/client.js +23 -17
- package/dist/connect/api/types.d.ts +4 -2
- package/dist/connect/{grpc_client.d.ts → client.d.ts} +2 -2
- package/dist/connect/{grpc_client.js → client.js} +5 -5
- package/dist/connect/index.d.ts +1 -1
- package/dist/connect/index.js +1 -1
- package/dist/types.d.ts +2 -0
- package/package.json +3 -3
|
@@ -46,7 +46,7 @@ exports.serviceAPI = exports.apiClient = void 0;
|
|
|
46
46
|
const grpc = __importStar(require("@grpc/grpc-js"));
|
|
47
47
|
const pb_util_1 = require("pb-util");
|
|
48
48
|
const errors_1 = require("../../errors");
|
|
49
|
-
const
|
|
49
|
+
const client_1 = require("../client");
|
|
50
50
|
const types_1 = require("../types");
|
|
51
51
|
function fire(err, apiAddr) {
|
|
52
52
|
if (err.code === grpc.status.UNAVAILABLE) {
|
|
@@ -55,21 +55,27 @@ function fire(err, apiAddr) {
|
|
|
55
55
|
return err;
|
|
56
56
|
}
|
|
57
57
|
function apiClient(options) {
|
|
58
|
-
const { apiAddr, credentials } = options;
|
|
59
58
|
return {
|
|
60
|
-
agents: serviceAPI({ kind: types_1.Kind.AGENT
|
|
61
|
-
domains: serviceAPI({ kind: types_1.Kind.DOMAIN
|
|
62
|
-
trunks: serviceAPI({ kind: types_1.Kind.TRUNK
|
|
63
|
-
credentials: serviceAPI({ kind: types_1.Kind.CREDENTIALS
|
|
64
|
-
acl: serviceAPI({ kind: types_1.Kind.
|
|
65
|
-
peers: serviceAPI({ kind: types_1.Kind.PEER
|
|
66
|
-
numbers: serviceAPI({ kind: types_1.Kind.NUMBER
|
|
59
|
+
agents: serviceAPI(Object.assign({ kind: types_1.Kind.AGENT }, options)),
|
|
60
|
+
domains: serviceAPI(Object.assign({ kind: types_1.Kind.DOMAIN }, options)),
|
|
61
|
+
trunks: serviceAPI(Object.assign({ kind: types_1.Kind.TRUNK }, options)),
|
|
62
|
+
credentials: serviceAPI(Object.assign({ kind: types_1.Kind.CREDENTIALS }, options)),
|
|
63
|
+
acl: serviceAPI(Object.assign({ kind: types_1.Kind.ACL }, options)),
|
|
64
|
+
peers: serviceAPI(Object.assign({ kind: types_1.Kind.PEER }, options)),
|
|
65
|
+
numbers: serviceAPI(Object.assign({ kind: types_1.Kind.NUMBER }, options))
|
|
67
66
|
};
|
|
68
67
|
}
|
|
69
68
|
exports.apiClient = apiClient;
|
|
70
69
|
function serviceAPI(options) {
|
|
71
|
-
const { kind, apiAddr, credentials } = options;
|
|
72
|
-
|
|
70
|
+
const { kind, apiAddr, credentials, metadata } = options;
|
|
71
|
+
// Workaround for issue not allowing to pass metadata to grpc-js
|
|
72
|
+
const meta = new grpc.Metadata();
|
|
73
|
+
if (metadata) {
|
|
74
|
+
Object.keys(metadata.toJSON()).forEach((key) => {
|
|
75
|
+
meta.set(key, metadata.getMap()[key]);
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
const client = (0, client_1.createConnectClient)({
|
|
73
79
|
kind,
|
|
74
80
|
apiAddr,
|
|
75
81
|
credentials: credentials !== null && credentials !== void 0 ? credentials : grpc.credentials.createInsecure()
|
|
@@ -79,7 +85,7 @@ function serviceAPI(options) {
|
|
|
79
85
|
if (request.extended) {
|
|
80
86
|
request.extended = pb_util_1.struct.encode(request.extended);
|
|
81
87
|
}
|
|
82
|
-
client.create(request, (err, response) => {
|
|
88
|
+
client.create(request, meta, (err, response) => {
|
|
83
89
|
if (err) {
|
|
84
90
|
return reject(fire(err, apiAddr));
|
|
85
91
|
}
|
|
@@ -93,7 +99,7 @@ function serviceAPI(options) {
|
|
|
93
99
|
if (request.extended) {
|
|
94
100
|
request.extended = pb_util_1.struct.encode(request.extended);
|
|
95
101
|
}
|
|
96
|
-
client.update(request, (err, response) => {
|
|
102
|
+
client.update(request, meta, (err, response) => {
|
|
97
103
|
if (err) {
|
|
98
104
|
return reject(fire(err, apiAddr));
|
|
99
105
|
}
|
|
@@ -104,7 +110,7 @@ function serviceAPI(options) {
|
|
|
104
110
|
});
|
|
105
111
|
}),
|
|
106
112
|
get: (ref) => new Promise((resolve, reject) => {
|
|
107
|
-
client.get({ ref }, (err, response) => {
|
|
113
|
+
client.get({ ref }, meta, (err, response) => {
|
|
108
114
|
if (err) {
|
|
109
115
|
return reject(fire(err, apiAddr));
|
|
110
116
|
}
|
|
@@ -115,7 +121,7 @@ function serviceAPI(options) {
|
|
|
115
121
|
});
|
|
116
122
|
}),
|
|
117
123
|
list: (request) => new Promise((resolve, reject) => {
|
|
118
|
-
client.list(request, (err, response) => {
|
|
124
|
+
client.list(request, meta, (err, response) => {
|
|
119
125
|
var _a;
|
|
120
126
|
if (err) {
|
|
121
127
|
return reject(fire(err, apiAddr));
|
|
@@ -132,7 +138,7 @@ function serviceAPI(options) {
|
|
|
132
138
|
});
|
|
133
139
|
}),
|
|
134
140
|
findBy: (request) => new Promise((resolve, reject) => {
|
|
135
|
-
client.findBy(request, (err, response) => {
|
|
141
|
+
client.findBy(request, meta, (err, response) => {
|
|
136
142
|
if (err) {
|
|
137
143
|
return reject(fire(err, apiAddr));
|
|
138
144
|
}
|
|
@@ -145,7 +151,7 @@ function serviceAPI(options) {
|
|
|
145
151
|
});
|
|
146
152
|
}),
|
|
147
153
|
del: (ref) => new Promise((resolve, reject) => {
|
|
148
|
-
client.get({ ref }, (err) => err ? reject(fire(err, apiAddr)) : resolve());
|
|
154
|
+
client.get({ ref }, meta, (err) => err ? reject(fire(err, apiAddr)) : resolve());
|
|
149
155
|
})
|
|
150
156
|
};
|
|
151
157
|
}
|
|
@@ -4,11 +4,13 @@ import { AccessControlList, Agent, Credentials, Domain, INumber, Kind, Peer, Tru
|
|
|
4
4
|
export interface DataAPIOptions {
|
|
5
5
|
apiAddr: string;
|
|
6
6
|
credentials?: grpc.ChannelCredentials;
|
|
7
|
+
metadata?: grpc.Metadata;
|
|
7
8
|
}
|
|
8
9
|
export interface ServiceAPIOptions {
|
|
9
10
|
apiAddr: string;
|
|
10
11
|
kind: Kind;
|
|
11
12
|
credentials?: grpc.ChannelCredentials;
|
|
13
|
+
metadata?: grpc.Metadata;
|
|
12
14
|
}
|
|
13
15
|
export interface FindByRequest {
|
|
14
16
|
fieldName: string;
|
|
@@ -37,8 +39,8 @@ export type APIClient = {
|
|
|
37
39
|
export type ServiceAPI<R extends {
|
|
38
40
|
extended?: JsonObject;
|
|
39
41
|
}> = {
|
|
40
|
-
create: (request:
|
|
41
|
-
update: (request:
|
|
42
|
+
create: (request: unknown) => Promise<R>;
|
|
43
|
+
update: (request: unknown) => Promise<R>;
|
|
42
44
|
get: (ref: string) => Promise<R>;
|
|
43
45
|
del: (ref: string) => Promise<void>;
|
|
44
46
|
list: (request: {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import * as grpc from "@grpc/grpc-js";
|
|
2
2
|
import { Kind, KindWithoutUnknown } from "./types";
|
|
3
|
-
export declare function
|
|
3
|
+
export declare function createConnectClient(options: {
|
|
4
4
|
kind: Kind;
|
|
5
5
|
credentials: grpc.ChannelCredentials;
|
|
6
6
|
apiAddr: string;
|
|
7
7
|
}): any;
|
|
8
|
-
export declare function
|
|
8
|
+
export declare function createConnectService(kind: KindWithoutUnknown): any;
|
|
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.
|
|
26
|
+
exports.createConnectService = exports.createConnectClient = void 0;
|
|
27
27
|
/*
|
|
28
28
|
* Copyright (C) 2022 by Fonoster Inc (https://fonoster.com)
|
|
29
29
|
* http://github.com/fonoster/routr
|
|
@@ -64,7 +64,7 @@ function getProtoPath(kind) {
|
|
|
64
64
|
return __dirname + `/protos/${kind}s.proto`;
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
|
-
function
|
|
67
|
+
function createConnectClient(options) {
|
|
68
68
|
const def = protoLoader.loadSync(getProtoPath(options.kind), protoOptions);
|
|
69
69
|
const descriptor = grpc.loadPackageDefinition(def);
|
|
70
70
|
const base = descriptor.fonoster.routr.connect;
|
|
@@ -77,8 +77,8 @@ function createClient(options) {
|
|
|
77
77
|
return new base[options.kind + "s"].v2draft1[(0, helper_1.toPascaleCase)(options.kind) + "s"](options.apiAddr, options.credentials);
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
|
-
exports.
|
|
81
|
-
function
|
|
80
|
+
exports.createConnectClient = createConnectClient;
|
|
81
|
+
function createConnectService(kind) {
|
|
82
82
|
const def = protoLoader.loadSync(getProtoPath(kind), protoOptions);
|
|
83
83
|
const descriptor = grpc.loadPackageDefinition(def);
|
|
84
84
|
const base = descriptor.fonoster.routr.connect;
|
|
@@ -91,4 +91,4 @@ function createService(kind) {
|
|
|
91
91
|
return base[kind + "s"].v2draft1[(0, helper_1.toPascaleCase)(kind) + "s"].service;
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
|
-
exports.
|
|
94
|
+
exports.createConnectService = createConnectService;
|
package/dist/connect/index.d.ts
CHANGED
package/dist/connect/index.js
CHANGED
|
@@ -33,7 +33,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
33
33
|
* limitations under the License.
|
|
34
34
|
*/
|
|
35
35
|
__exportStar(require("./api"), exports);
|
|
36
|
-
__exportStar(require("./
|
|
36
|
+
__exportStar(require("./client"), exports);
|
|
37
37
|
__exportStar(require("./types"), exports);
|
|
38
38
|
__exportStar(require("./config"), exports);
|
|
39
39
|
__exportStar(require("./mappers"), exports);
|
package/dist/types.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as grpc from "@grpc/grpc-js";
|
|
1
2
|
import { ServiceDefinition } from "@grpc/proto-loader";
|
|
2
3
|
import { JsonArray, JsonValue, Struct } from "pb-util/build";
|
|
3
4
|
export type JsonData = Record<string, string | number | boolean | JsonValue | JsonArray | Struct>;
|
|
@@ -313,4 +314,5 @@ export interface GrpcCallback {
|
|
|
313
314
|
}
|
|
314
315
|
export interface GrpcCall {
|
|
315
316
|
request: Record<string, any>;
|
|
317
|
+
metadata?: grpc.Metadata;
|
|
316
318
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@routr/common",
|
|
3
|
-
"version": "2.0.8-alpha.
|
|
3
|
+
"version": "2.0.8-alpha.20",
|
|
4
4
|
"description": "Common package",
|
|
5
5
|
"author": "Pedro Sanders <psanders@fonoster.com>",
|
|
6
6
|
"homepage": "https://github.com/fonoster/routr#readme",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
16
|
"@fonoster/logger": "0.3.18",
|
|
17
|
-
"@grpc/grpc-js": "^1.
|
|
17
|
+
"@grpc/grpc-js": "^1.8.4",
|
|
18
18
|
"@grpc/proto-loader": "^0.6.9",
|
|
19
19
|
"@opentelemetry/api": "^1.0.4",
|
|
20
20
|
"@opentelemetry/exporter-jaeger": "^1.0.4",
|
|
@@ -51,5 +51,5 @@
|
|
|
51
51
|
"devDependencies": {
|
|
52
52
|
"@types/js-yaml": "^4.0.5"
|
|
53
53
|
},
|
|
54
|
-
"gitHead": "
|
|
54
|
+
"gitHead": "a22ee8342d03f5dfe46fddba89ffe3e6d0d5deb6"
|
|
55
55
|
}
|