@clickhouse/client-common 0.2.0-beta1 → 0.2.0

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 CHANGED
@@ -16,11 +16,12 @@ thoroughly tested with actual ClickHouse versions.
16
16
 
17
17
  The repository consists of three packages:
18
18
 
19
- - `@clickhouse/client` - Node.js client, built on top of [HTTP](https://nodejs.org/api/http.html)
19
+ - `@clickhouse/client` - a version of the client designed for Node.js platform only. It is built on top of [HTTP](https://nodejs.org/api/http.html)
20
20
  and [Stream](https://nodejs.org/api/stream.html) APIs; supports streaming for both selects and inserts.
21
- - `@clickhouse/client-browser` - browser client, built on top of [Fetch](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API)
21
+ - `@clickhouse/client-web` - a version of the client built on top of [Fetch](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API)
22
22
  and [Web Streams](https://developer.mozilla.org/en-US/docs/Web/API/Streams_API) APIs; supports streaming for selects.
23
- - `@clickhouse/common` - shared common types and the base framework for building a custom client implementation.
23
+ Compatible with Chrome/Firefox browsers and CloudFlare workers.
24
+ - `@clickhouse/client-common` - shared common types and the base framework for building a custom client implementation.
24
25
 
25
26
  ## Documentation
26
27
 
package/dist/client.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import type { ClickHouseLogLevel, ClickHouseSettings, Connection, ConnectionParams, ConnInsertResult, ConnQueryResult, Logger } from '@clickhouse/client-common';
2
2
  import { type DataFormat } from '@clickhouse/client-common';
3
3
  import type { InputJSON, InputJSONObjectEachRow } from './clickhouse_types';
4
+ import type { ConnPingResult } from './connection';
4
5
  import type { BaseResultSet } from './result';
5
6
  export type MakeConnection<Stream> = (params: ConnectionParams) => Connection<Stream>;
6
7
  export type MakeResultSet<Stream> = (stream: Stream, format: DataFormat, session_id: string) => BaseResultSet<Stream>;
@@ -89,6 +90,7 @@ export interface CommandResult {
89
90
  }
90
91
  export type InsertResult = ConnInsertResult;
91
92
  export type ExecResult<Stream> = ConnQueryResult<Stream>;
93
+ export type PingResult = ConnPingResult;
92
94
  export type InsertValues<Stream, T = unknown> = ReadonlyArray<T> | Stream | InputJSON<T> | InputJSONObjectEachRow<T>;
93
95
  export interface InsertParams<Stream = unknown, T = unknown> extends BaseQueryParams {
94
96
  /** Name of a table to insert into. */
@@ -137,9 +139,10 @@ export declare class ClickHouseClient<Stream = unknown> {
137
139
  */
138
140
  insert<T>(params: InsertParams<Stream, T>): Promise<InsertResult>;
139
141
  /**
140
- * Health-check request. Can throw an error if the connection is refused.
142
+ * Health-check request. It does not throw if an error occurs -
143
+ * the error is returned inside the result object.
141
144
  */
142
- ping(): Promise<boolean>;
145
+ ping(): Promise<PingResult>;
143
146
  /**
144
147
  * Shuts down the underlying connection.
145
148
  * This method should ideally be called only once per application lifecycle,
package/dist/client.js CHANGED
@@ -2,39 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ClickHouseClient = void 0;
4
4
  const client_common_1 = require("@clickhouse/client-common");
5
- function validateConnectionParams({ url }) {
6
- if (url.protocol !== 'http:' && url.protocol !== 'https:') {
7
- throw new Error(`Only http(s) protocol is supported, but given: [${url.protocol}]`);
8
- }
9
- }
10
- function createUrl(host) {
11
- try {
12
- return new URL(host);
13
- }
14
- catch (err) {
15
- throw new Error('Configuration parameter "host" contains malformed url.');
16
- }
17
- }
18
- function getConnectionParams(config) {
19
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
20
- return {
21
- application_id: config.application,
22
- url: createUrl((_a = config.host) !== null && _a !== void 0 ? _a : 'http://localhost:8123'),
23
- request_timeout: (_b = config.request_timeout) !== null && _b !== void 0 ? _b : 300000,
24
- max_open_connections: (_c = config.max_open_connections) !== null && _c !== void 0 ? _c : Infinity,
25
- compression: {
26
- decompress_response: (_e = (_d = config.compression) === null || _d === void 0 ? void 0 : _d.response) !== null && _e !== void 0 ? _e : true,
27
- compress_request: (_g = (_f = config.compression) === null || _f === void 0 ? void 0 : _f.request) !== null && _g !== void 0 ? _g : false,
28
- },
29
- username: (_h = config.username) !== null && _h !== void 0 ? _h : 'default',
30
- password: (_j = config.password) !== null && _j !== void 0 ? _j : '',
31
- database: (_k = config.database) !== null && _k !== void 0 ? _k : 'default',
32
- clickhouse_settings: (_l = config.clickhouse_settings) !== null && _l !== void 0 ? _l : {},
33
- logWriter: new client_common_1.LogWriter(((_m = config === null || config === void 0 ? void 0 : config.log) === null || _m === void 0 ? void 0 : _m.LoggerClass)
34
- ? new config.log.LoggerClass()
35
- : new client_common_1.DefaultLogger(), (_o = config.log) === null || _o === void 0 ? void 0 : _o.level),
36
- };
37
- }
38
5
  class ClickHouseClient {
39
6
  constructor(config) {
40
7
  Object.defineProperty(this, "connectionParams", {
@@ -151,7 +118,8 @@ class ClickHouseClient {
151
118
  });
152
119
  }
153
120
  /**
154
- * Health-check request. Can throw an error if the connection is refused.
121
+ * Health-check request. It does not throw if an error occurs -
122
+ * the error is returned inside the result object.
155
123
  */
156
124
  async ping() {
157
125
  return await this.connection.ping();
@@ -184,4 +152,37 @@ function removeTrailingSemi(query) {
184
152
  }
185
153
  return query;
186
154
  }
155
+ function validateConnectionParams({ url }) {
156
+ if (url.protocol !== 'http:' && url.protocol !== 'https:') {
157
+ throw new Error(`Only http(s) protocol is supported, but given: [${url.protocol}]`);
158
+ }
159
+ }
160
+ function createUrl(host) {
161
+ try {
162
+ return new URL(host);
163
+ }
164
+ catch (err) {
165
+ throw new Error('Configuration parameter "host" contains malformed url.');
166
+ }
167
+ }
168
+ function getConnectionParams(config) {
169
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
170
+ return {
171
+ application_id: config.application,
172
+ url: createUrl((_a = config.host) !== null && _a !== void 0 ? _a : 'http://localhost:8123'),
173
+ request_timeout: (_b = config.request_timeout) !== null && _b !== void 0 ? _b : 300000,
174
+ max_open_connections: (_c = config.max_open_connections) !== null && _c !== void 0 ? _c : Infinity,
175
+ compression: {
176
+ decompress_response: (_e = (_d = config.compression) === null || _d === void 0 ? void 0 : _d.response) !== null && _e !== void 0 ? _e : true,
177
+ compress_request: (_g = (_f = config.compression) === null || _f === void 0 ? void 0 : _f.request) !== null && _g !== void 0 ? _g : false,
178
+ },
179
+ username: (_h = config.username) !== null && _h !== void 0 ? _h : 'default',
180
+ password: (_j = config.password) !== null && _j !== void 0 ? _j : '',
181
+ database: (_k = config.database) !== null && _k !== void 0 ? _k : 'default',
182
+ clickhouse_settings: (_l = config.clickhouse_settings) !== null && _l !== void 0 ? _l : {},
183
+ logWriter: new client_common_1.LogWriter(((_m = config === null || config === void 0 ? void 0 : config.log) === null || _m === void 0 ? void 0 : _m.LoggerClass)
184
+ ? new config.log.LoggerClass()
185
+ : new client_common_1.DefaultLogger(), (_o = config.log) === null || _o === void 0 ? void 0 : _o.level),
186
+ };
187
+ }
187
188
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../packages/client-common/src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../packages/client-common/src/client.ts"],"names":[],"mappings":"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"}
@@ -35,8 +35,14 @@ export interface ConnQueryResult<Stream> extends ConnBaseResult {
35
35
  }
36
36
  export type ConnInsertResult = ConnBaseResult;
37
37
  export type ConnExecResult<Stream> = ConnQueryResult<Stream>;
38
+ export type ConnPingResult = {
39
+ success: true;
40
+ } | {
41
+ success: false;
42
+ error: Error;
43
+ };
38
44
  export interface Connection<Stream> {
39
- ping(): Promise<boolean>;
45
+ ping(): Promise<ConnPingResult>;
40
46
  close(): Promise<void>;
41
47
  query(params: ConnBaseQueryParams): Promise<ConnQueryResult<Stream>>;
42
48
  exec(params: ConnBaseQueryParams): Promise<ConnExecResult<Stream>>;
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /** Should be re-exported by the implementation */
2
- export { type BaseClickHouseClientConfigOptions, type ClickHouseClientConfigOptions, type BaseQueryParams, type QueryParams, type ExecParams, type InsertParams, type InsertValues, ClickHouseClient, type CommandParams, type CommandResult, type ExecResult, type InsertResult, } from './client';
2
+ export { type BaseClickHouseClientConfigOptions, type ClickHouseClientConfigOptions, type BaseQueryParams, type QueryParams, type ExecParams, type InsertParams, type InsertValues, ClickHouseClient, type CommandParams, type CommandResult, type ExecResult, type InsertResult, type PingResult, } from './client';
3
3
  export type { Row, BaseResultSet } from './result';
4
4
  export { type DataFormat } from './data_formatter';
5
5
  export { ClickHouseError } from './error';
@@ -12,5 +12,5 @@ export { type ValuesEncoder, type MakeResultSet, type MakeConnection, } from './
12
12
  export { withCompressionHeaders, isSuccessfulResponse, toSearchParams, transformUrl, withHttpSettings, } from './utils';
13
13
  export { LogWriter, DefaultLogger } from './logger';
14
14
  export { parseError } from './error';
15
- export type { Connection, ConnectionParams, ConnInsertResult, ConnExecResult, ConnQueryResult, ConnBaseQueryParams, ConnBaseResult, ConnInsertParams, } from './connection';
15
+ export type { Connection, ConnectionParams, ConnInsertResult, ConnExecResult, ConnQueryResult, ConnBaseQueryParams, ConnBaseResult, ConnInsertParams, ConnPingResult, } from './connection';
16
16
  export { type RawDataFormat, type JSONDataFormat, formatQuerySettings, formatQueryParams, } from './data_formatter';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../packages/client-common/src/index.ts"],"names":[],"mappings":";;;AAAA,kDAAkD;AAClD,mCAaiB;AALf,0GAAA,gBAAgB,OAAA;AAQlB,iCAAyC;AAAhC,wGAAA,eAAe,OAAA;AACxB,mCAKiB;AAJf,4GAAA,kBAAkB,OAAA;AAUpB,uCAImB;AADjB,uGAAA,WAAW,OAAA;AAGb,qCAAqC;AACrC,mDAKyB;AAJvB,4GAAA,UAAU,OAAA;AACV,sHAAA,oBAAoB,OAAA;AACpB,wGAAA,MAAM,OAAA;AACN,sHAAA,oBAAoB,OAAA;AAOtB,iCAMgB;AALd,+GAAA,sBAAsB,OAAA;AACtB,6GAAA,oBAAoB,OAAA;AACpB,uGAAA,cAAc,OAAA;AACd,qGAAA,YAAY,OAAA;AACZ,yGAAA,gBAAgB,OAAA;AAElB,mCAAmD;AAA1C,mGAAA,SAAS,OAAA;AAAE,uGAAA,aAAa,OAAA;AACjC,iCAAoC;AAA3B,mGAAA,UAAU,OAAA;AAWnB,mDAKyB;AAFvB,qHAAA,mBAAmB,OAAA;AACnB,mHAAA,iBAAiB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../packages/client-common/src/index.ts"],"names":[],"mappings":";;;AAAA,kDAAkD;AAClD,mCAciB;AANf,0GAAA,gBAAgB,OAAA;AASlB,iCAAyC;AAAhC,wGAAA,eAAe,OAAA;AACxB,mCAKiB;AAJf,4GAAA,kBAAkB,OAAA;AAUpB,uCAImB;AADjB,uGAAA,WAAW,OAAA;AAGb,qCAAqC;AACrC,mDAKyB;AAJvB,4GAAA,UAAU,OAAA;AACV,sHAAA,oBAAoB,OAAA;AACpB,wGAAA,MAAM,OAAA;AACN,sHAAA,oBAAoB,OAAA;AAOtB,iCAMgB;AALd,+GAAA,sBAAsB,OAAA;AACtB,6GAAA,oBAAoB,OAAA;AACpB,uGAAA,cAAc,OAAA;AACd,qGAAA,YAAY,OAAA;AACZ,yGAAA,gBAAgB,OAAA;AAElB,mCAAmD;AAA1C,mGAAA,SAAS,OAAA;AAAE,uGAAA,aAAa,OAAA;AACjC,iCAAoC;AAA3B,mGAAA,UAAU,OAAA;AAYnB,mDAKyB;AAFvB,qHAAA,mBAAmB,OAAA;AACnB,mHAAA,iBAAiB,OAAA"}