@clickhouse/client 0.0.7 → 0.0.8
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/README.md +13 -0
- package/dist/client.d.ts +12 -2
- package/dist/client.js +16 -1
- package/dist/client.js.map +1 -1
- package/dist/connection/adapter/base_http_adapter.d.ts +2 -1
- package/dist/connection/adapter/base_http_adapter.js +6 -6
- package/dist/connection/adapter/base_http_adapter.js.map +1 -1
- package/dist/connection/adapter/https_adapter.d.ts +1 -0
- package/dist/connection/adapter/https_adapter.js +21 -0
- package/dist/connection/adapter/https_adapter.js.map +1 -1
- package/dist/connection/connection.d.ts +11 -0
- package/dist/connection/connection.js.map +1 -1
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -139,6 +139,19 @@ export interface ClickHouseClientConfigOptions {
|
|
|
139
139
|
// use it to override default clickhouse-js logger with your own implementation
|
|
140
140
|
LoggerClass?: new (enabled: boolean) => Logger
|
|
141
141
|
}
|
|
142
|
+
|
|
143
|
+
// TLS settings
|
|
144
|
+
tls?:
|
|
145
|
+
| {
|
|
146
|
+
// Basic TLS without client certificates
|
|
147
|
+
ca_cert: Buffer
|
|
148
|
+
}
|
|
149
|
+
| {
|
|
150
|
+
// Mutual TLS with client certificates
|
|
151
|
+
ca_cert: Buffer
|
|
152
|
+
cert: Buffer
|
|
153
|
+
key: Buffer
|
|
154
|
+
}
|
|
142
155
|
}
|
|
143
156
|
```
|
|
144
157
|
|
package/dist/client.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
2
3
|
import Stream from 'stream';
|
|
3
4
|
import { Logger } from './logger';
|
|
4
5
|
import { type DataFormat } from './data_formatter';
|
|
@@ -28,14 +29,23 @@ export interface ClickHouseClientConfigOptions {
|
|
|
28
29
|
application?: string;
|
|
29
30
|
/** Database name to use. Default value: `default`. */
|
|
30
31
|
database?: string;
|
|
31
|
-
/** ClickHouse settings to apply to all requests. Default value: {}
|
|
32
|
+
/** ClickHouse settings to apply to all requests. Default value: {} */
|
|
32
33
|
clickhouse_settings?: ClickHouseSettings;
|
|
33
34
|
log?: {
|
|
34
|
-
/** Enable logging. Default value: false.
|
|
35
|
+
/** Enable logging. Default value: false. */
|
|
35
36
|
enable?: boolean;
|
|
36
37
|
/** A class to instantiate a custom logger implementation. */
|
|
37
38
|
LoggerClass?: new (enabled: boolean) => Logger;
|
|
38
39
|
};
|
|
40
|
+
tls?: BasicTLSOptions | MutualTLSOptions;
|
|
41
|
+
}
|
|
42
|
+
interface BasicTLSOptions {
|
|
43
|
+
ca_cert: Buffer;
|
|
44
|
+
}
|
|
45
|
+
interface MutualTLSOptions {
|
|
46
|
+
ca_cert: Buffer;
|
|
47
|
+
cert: Buffer;
|
|
48
|
+
key: Buffer;
|
|
39
49
|
}
|
|
40
50
|
export interface BaseParams {
|
|
41
51
|
/** ClickHouse settings that can be applied on query level. */
|
package/dist/client.js
CHANGED
|
@@ -26,12 +26,27 @@ function createUrl(host) {
|
|
|
26
26
|
}
|
|
27
27
|
function normalizeConfig(config, loggingEnabled) {
|
|
28
28
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
|
29
|
+
let tls = undefined;
|
|
30
|
+
if (config.tls) {
|
|
31
|
+
if ('cert' in config.tls && 'key' in config.tls) {
|
|
32
|
+
tls = {
|
|
33
|
+
type: 'Mutual',
|
|
34
|
+
...config.tls,
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
tls = {
|
|
39
|
+
type: 'Basic',
|
|
40
|
+
...config.tls,
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
}
|
|
29
44
|
return {
|
|
30
45
|
url: createUrl((_a = config.host) !== null && _a !== void 0 ? _a : 'http://localhost:8123'),
|
|
31
46
|
connect_timeout: (_b = config.connect_timeout) !== null && _b !== void 0 ? _b : 10000,
|
|
32
47
|
request_timeout: (_c = config.request_timeout) !== null && _c !== void 0 ? _c : 300000,
|
|
33
48
|
max_open_connections: (_d = config.max_open_connections) !== null && _d !== void 0 ? _d : Infinity,
|
|
34
|
-
|
|
49
|
+
tls,
|
|
35
50
|
compression: {
|
|
36
51
|
decompress_response: (_f = (_e = config.compression) === null || _e === void 0 ? void 0 : _e.response) !== null && _f !== void 0 ? _f : true,
|
|
37
52
|
compress_request: (_h = (_g = config.compression) === null || _g === void 0 ? void 0 : _g.request) !== null && _h !== void 0 ? _h : false,
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA2B;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,11 +13,12 @@ export interface RequestParams {
|
|
|
13
13
|
compress_request?: boolean;
|
|
14
14
|
}
|
|
15
15
|
export declare abstract class BaseHttpAdapter implements Connection {
|
|
16
|
-
|
|
16
|
+
protected readonly config: ConnectionParams;
|
|
17
17
|
private readonly logger;
|
|
18
18
|
protected readonly agent: Http.Agent;
|
|
19
19
|
protected readonly headers: Http.OutgoingHttpHeaders;
|
|
20
20
|
protected constructor(config: ConnectionParams, logger: Logger, agent: Http.Agent);
|
|
21
|
+
protected buildDefaultHeaders(username: string, password: string): Http.OutgoingHttpHeaders;
|
|
21
22
|
protected abstract createClientRequest(url: URL, params: RequestParams): Http.ClientRequest;
|
|
22
23
|
protected request(params: RequestParams): Promise<Stream.Readable>;
|
|
23
24
|
ping(): Promise<boolean>;
|
|
@@ -26,11 +26,6 @@ function withHttpSettings(clickhouse_settings, compression) {
|
|
|
26
26
|
...clickhouse_settings,
|
|
27
27
|
};
|
|
28
28
|
}
|
|
29
|
-
function buildDefaultHeaders(username, password) {
|
|
30
|
-
return {
|
|
31
|
-
Authorization: `Basic ${Buffer.from(`${username}:${password}`).toString('base64')}`,
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
29
|
function decompressResponse(response) {
|
|
35
30
|
const encoding = response.headers['content-encoding'];
|
|
36
31
|
if (encoding === 'gzip') {
|
|
@@ -78,7 +73,12 @@ class BaseHttpAdapter {
|
|
|
78
73
|
writable: true,
|
|
79
74
|
value: void 0
|
|
80
75
|
});
|
|
81
|
-
this.headers = buildDefaultHeaders(config.username, config.password);
|
|
76
|
+
this.headers = this.buildDefaultHeaders(config.username, config.password);
|
|
77
|
+
}
|
|
78
|
+
buildDefaultHeaders(username, password) {
|
|
79
|
+
return {
|
|
80
|
+
Authorization: `Basic ${Buffer.from(`${username}:${password}`).toString('base64')}`,
|
|
81
|
+
};
|
|
82
82
|
}
|
|
83
83
|
async request(params) {
|
|
84
84
|
return new Promise((resolve, reject) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base_http_adapter.js","sourceRoot":"","sources":["../../../src/connection/adapter/base_http_adapter.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA2B;AAE3B,gDAAuB;AACvB,uCAAwC;AAUxC,6DAAqD;AACrD,mDAA8C;AAC9C,uCAAiD;AAYjD,SAAS,oBAAoB,CAAC,UAAmB;IAC/C,OAAO,OAAO,CAAC,UAAU,IAAI,GAAG,IAAI,UAAU,IAAI,UAAU,GAAG,GAAG,CAAC,CAAA;AACrE,CAAC;AAED,SAAS,aAAa,CAAC,MAAW;IAChC,OAAO,qBAAqB,IAAI,MAAM,CAAA;AACxC,CAAC;AAED,SAAS,gBAAgB,CACvB,mBAAwC,EACxC,WAAqB;IAErB,OAAO;QACL,GAAG,CAAC,WAAW;YACb,CAAC,CAAC;gBACE,uBAAuB,EAAE,CAAC;aAC3B;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,mBAAmB;KACvB,CAAA;AACH,CAAC;AAED,SAAS,
|
|
1
|
+
{"version":3,"file":"base_http_adapter.js","sourceRoot":"","sources":["../../../src/connection/adapter/base_http_adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,5 +6,6 @@ import type { Logger } from '../../logger';
|
|
|
6
6
|
import type Http from 'http';
|
|
7
7
|
export declare class HttpsAdapter extends BaseHttpAdapter implements Connection {
|
|
8
8
|
constructor(config: ConnectionParams, logger: Logger);
|
|
9
|
+
protected buildDefaultHeaders(username: string, password: string): Http.OutgoingHttpHeaders;
|
|
9
10
|
protected createClientRequest(url: URL, params: RequestParams): Http.ClientRequest;
|
|
10
11
|
}
|
|
@@ -8,13 +8,34 @@ const base_http_adapter_1 = require("./base_http_adapter");
|
|
|
8
8
|
const https_1 = __importDefault(require("https"));
|
|
9
9
|
class HttpsAdapter extends base_http_adapter_1.BaseHttpAdapter {
|
|
10
10
|
constructor(config, logger) {
|
|
11
|
+
var _a, _b, _c;
|
|
11
12
|
const agent = new https_1.default.Agent({
|
|
12
13
|
keepAlive: true,
|
|
13
14
|
timeout: config.request_timeout,
|
|
14
15
|
maxSockets: config.max_open_connections,
|
|
16
|
+
ca: (_a = config.tls) === null || _a === void 0 ? void 0 : _a.ca_cert,
|
|
17
|
+
key: ((_b = config.tls) === null || _b === void 0 ? void 0 : _b.type) === 'Mutual' ? config.tls.key : undefined,
|
|
18
|
+
cert: ((_c = config.tls) === null || _c === void 0 ? void 0 : _c.type) === 'Mutual' ? config.tls.cert : undefined,
|
|
15
19
|
});
|
|
16
20
|
super(config, logger, agent);
|
|
17
21
|
}
|
|
22
|
+
buildDefaultHeaders(username, password) {
|
|
23
|
+
var _a, _b;
|
|
24
|
+
if (((_a = this.config.tls) === null || _a === void 0 ? void 0 : _a.type) === 'Mutual') {
|
|
25
|
+
return {
|
|
26
|
+
'X-ClickHouse-User': username,
|
|
27
|
+
'X-ClickHouse-Key': password,
|
|
28
|
+
'X-ClickHouse-SSL-Certificate-Auth': 'on',
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
if (((_b = this.config.tls) === null || _b === void 0 ? void 0 : _b.type) === 'Basic') {
|
|
32
|
+
return {
|
|
33
|
+
'X-ClickHouse-User': username,
|
|
34
|
+
'X-ClickHouse-Key': password,
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
return super.buildDefaultHeaders(username, password);
|
|
38
|
+
}
|
|
18
39
|
createClientRequest(url, params) {
|
|
19
40
|
return https_1.default.request(params.url, {
|
|
20
41
|
method: params.method,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"https_adapter.js","sourceRoot":"","sources":["../../../src/connection/adapter/https_adapter.ts"],"names":[],"mappings":";;;;;;AACA,2DAAqD;AAGrD,kDAAyB;AAGzB,MAAa,YAAa,SAAQ,mCAAe;IAC/C,YAAY,MAAwB,EAAE,MAAc
|
|
1
|
+
{"version":3,"file":"https_adapter.js","sourceRoot":"","sources":["../../../src/connection/adapter/https_adapter.ts"],"names":[],"mappings":";;;;;;AACA,2DAAqD;AAGrD,kDAAyB;AAGzB,MAAa,YAAa,SAAQ,mCAAe;IAC/C,YAAY,MAAwB,EAAE,MAAc;;QAClD,MAAM,KAAK,GAAG,IAAI,eAAK,CAAC,KAAK,CAAC;YAC5B,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,MAAM,CAAC,eAAe;YAC/B,UAAU,EAAE,MAAM,CAAC,oBAAoB;YACvC,EAAE,EAAE,MAAA,MAAM,CAAC,GAAG,0CAAE,OAAO;YACvB,GAAG,EAAE,CAAA,MAAA,MAAM,CAAC,GAAG,0CAAE,IAAI,MAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;YAC/D,IAAI,EAAE,CAAA,MAAA,MAAM,CAAC,GAAG,0CAAE,IAAI,MAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;SAClE,CAAC,CAAA;QACF,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;IAC9B,CAAC;IAEkB,mBAAmB,CACpC,QAAgB,EAChB,QAAgB;;QAEhB,IAAI,CAAA,MAAA,IAAI,CAAC,MAAM,CAAC,GAAG,0CAAE,IAAI,MAAK,QAAQ,EAAE;YACtC,OAAO;gBACL,mBAAmB,EAAE,QAAQ;gBAC7B,kBAAkB,EAAE,QAAQ;gBAC5B,mCAAmC,EAAE,IAAI;aAC1C,CAAA;SACF;QACD,IAAI,CAAA,MAAA,IAAI,CAAC,MAAM,CAAC,GAAG,0CAAE,IAAI,MAAK,OAAO,EAAE;YACrC,OAAO;gBACL,mBAAmB,EAAE,QAAQ;gBAC7B,kBAAkB,EAAE,QAAQ;aAC7B,CAAA;SACF;QACD,OAAO,KAAK,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IACtD,CAAC;IAES,mBAAmB,CAC3B,GAAQ,EACR,MAAqB;QAErB,OAAO,eAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE;YAC/B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;SACjC,CAAC,CAAA;IACJ,CAAC;CACF;AA3CD,oCA2CC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
2
3
|
import type Stream from 'stream';
|
|
3
4
|
import type { Logger } from '../logger';
|
|
4
5
|
import type { ClickHouseSettings } from '../settings';
|
|
@@ -11,10 +12,20 @@ export interface ConnectionParams {
|
|
|
11
12
|
decompress_response: boolean;
|
|
12
13
|
compress_request: boolean;
|
|
13
14
|
};
|
|
15
|
+
tls?: TLSParams;
|
|
14
16
|
username: string;
|
|
15
17
|
password: string;
|
|
16
18
|
database: string;
|
|
17
19
|
}
|
|
20
|
+
export declare type TLSParams = {
|
|
21
|
+
ca_cert: Buffer;
|
|
22
|
+
type: 'Basic';
|
|
23
|
+
} | {
|
|
24
|
+
ca_cert: Buffer;
|
|
25
|
+
cert: Buffer;
|
|
26
|
+
key: Buffer;
|
|
27
|
+
type: 'Mutual';
|
|
28
|
+
};
|
|
18
29
|
export interface BaseParams {
|
|
19
30
|
query: string;
|
|
20
31
|
clickhouse_settings?: ClickHouseSettings;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/connection/connection.ts"],"names":[],"mappings":";;;AAEA,uCAAqD;
|
|
1
|
+
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/connection/connection.ts"],"names":[],"mappings":";;;AAEA,uCAAqD;AAqDrD,SAAgB,gBAAgB,CAC9B,MAAwB,EACxB,MAAc;IAEd,oCAAoC;IACpC,QAAQ,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE;QAC3B,KAAK,OAAO;YACV,OAAO,IAAI,qBAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACxC,KAAK,QAAQ;YACX,OAAO,IAAI,sBAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACzC;YACE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;KACzD;AACH,CAAC;AAbD,4CAaC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@clickhouse/client",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.8",
|
|
4
4
|
"description": "Official JS client for ClickHouse DB",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"keywords": [
|
|
@@ -24,6 +24,7 @@
|
|
|
24
24
|
"lint": "eslint . --ext .ts",
|
|
25
25
|
"lint:fix": "eslint --fix . --ext .ts",
|
|
26
26
|
"test": "jest --reporters jest-silent-reporter --testPathPattern=__tests__ --globalSetup='<rootDir>/__tests__/setup.integration.ts'",
|
|
27
|
+
"test:tls": "jest --testMatch='**/__tests__/tls/*.test.ts'",
|
|
27
28
|
"test:unit": "jest --reporters jest-silent-reporter --testMatch='**/__tests__/{unit,utils}/*.test.ts'",
|
|
28
29
|
"test:integration": "jest --reporters jest-silent-reporter --runInBand --testPathPattern=__tests__/integration --globalSetup='<rootDir>/__tests__/setup.integration.ts'",
|
|
29
30
|
"test:integration:local_cluster": "CLICKHOUSE_TEST_ENVIRONMENT=local_cluster jest --reporters jest-silent-reporter --runInBand --testPathPattern=__tests__/integration --globalSetup='<rootDir>/__tests__/setup.integration.ts'",
|