@tdengine/websocket 3.2.3 → 3.3.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.
Files changed (224) hide show
  1. package/lib/package.json +1 -1
  2. package/lib/src/client/wsClient.d.ts +23 -7
  3. package/lib/src/client/wsClient.d.ts.map +1 -1
  4. package/lib/src/client/wsClient.js +154 -139
  5. package/lib/src/client/wsConnector.d.ts +55 -9
  6. package/lib/src/client/wsConnector.d.ts.map +1 -1
  7. package/lib/src/client/wsConnector.js +519 -100
  8. package/lib/src/client/wsConnectorPool.d.ts +5 -1
  9. package/lib/src/client/wsConnectorPool.d.ts.map +1 -1
  10. package/lib/src/client/wsConnectorPool.js +61 -43
  11. package/lib/src/client/wsEventCallback.d.ts +3 -0
  12. package/lib/src/client/wsEventCallback.d.ts.map +1 -1
  13. package/lib/src/client/wsEventCallback.js +67 -8
  14. package/lib/src/common/addressConnectionTracker.d.ts +11 -0
  15. package/lib/src/common/addressConnectionTracker.d.ts.map +1 -0
  16. package/lib/src/common/addressConnectionTracker.js +53 -0
  17. package/lib/src/common/dsn.d.ts +14 -2
  18. package/lib/src/common/dsn.d.ts.map +1 -1
  19. package/lib/src/common/dsn.js +91 -22
  20. package/lib/src/common/taosResult.d.ts.map +1 -1
  21. package/lib/src/common/taosResult.js +0 -5
  22. package/lib/src/common/urlParser.d.ts +32 -0
  23. package/lib/src/common/urlParser.d.ts.map +1 -0
  24. package/lib/src/common/urlParser.js +201 -0
  25. package/lib/src/common/utils.d.ts +2 -1
  26. package/lib/src/common/utils.d.ts.map +1 -1
  27. package/lib/src/common/utils.js +35 -34
  28. package/lib/src/sql/wsSql.js +2 -2
  29. package/lib/src/stmt/FieldBindParams.d.ts.map +1 -1
  30. package/lib/src/stmt/wsColumnInfo.d.ts.map +1 -1
  31. package/lib/src/stmt/wsParams1.d.ts.map +1 -1
  32. package/lib/src/stmt/wsParams1.js +26 -26
  33. package/lib/src/stmt/wsParams2.d.ts.map +1 -1
  34. package/lib/src/stmt/wsParams2.js +0 -3
  35. package/lib/src/stmt/wsParamsBase.d.ts.map +1 -1
  36. package/lib/src/stmt/wsProto.d.ts.map +1 -1
  37. package/lib/src/stmt/wsProto.js +16 -16
  38. package/lib/src/stmt/wsStmt1.d.ts.map +1 -1
  39. package/lib/src/stmt/wsStmt2.d.ts +12 -4
  40. package/lib/src/stmt/wsStmt2.d.ts.map +1 -1
  41. package/lib/src/stmt/wsStmt2.js +182 -64
  42. package/lib/src/stmt/wsTableInfo.d.ts.map +1 -1
  43. package/lib/src/tmq/config.d.ts +3 -2
  44. package/lib/src/tmq/config.d.ts.map +1 -1
  45. package/lib/src/tmq/config.js +15 -15
  46. package/lib/src/tmq/wsTmq.d.ts +4 -1
  47. package/lib/src/tmq/wsTmq.d.ts.map +1 -1
  48. package/lib/src/tmq/wsTmq.js +50 -27
  49. package/lib/test/bulkPulling/a.test.d.ts +2 -0
  50. package/lib/test/bulkPulling/a.test.d.ts.map +1 -0
  51. package/lib/test/bulkPulling/a.test.js +166 -0
  52. package/lib/test/bulkPulling/dsn.test.js +19 -0
  53. package/lib/test/bulkPulling/retryConfig.test.js +11 -11
  54. package/lib/test/bulkPulling/sql.failover.test.d.ts +2 -0
  55. package/lib/test/bulkPulling/sql.failover.test.d.ts.map +1 -0
  56. package/lib/test/bulkPulling/sql.failover.test.js +338 -0
  57. package/lib/test/bulkPulling/stmt2.failover.test.d.ts +2 -0
  58. package/lib/test/bulkPulling/stmt2.failover.test.d.ts.map +1 -0
  59. package/lib/test/bulkPulling/stmt2.failover.test.js +313 -0
  60. package/lib/test/bulkPulling/stmt2.init.failover.test.d.ts +2 -0
  61. package/lib/test/bulkPulling/stmt2.init.failover.test.d.ts.map +1 -0
  62. package/lib/test/bulkPulling/stmt2.init.failover.test.js +50 -0
  63. package/lib/test/bulkPulling/tmq.failover.test.d.ts +2 -0
  64. package/lib/test/bulkPulling/tmq.failover.test.d.ts.map +1 -0
  65. package/lib/test/bulkPulling/tmq.failover.test.js +404 -0
  66. package/lib/test/bulkPulling/urlParser.test.d.ts +2 -0
  67. package/lib/test/bulkPulling/urlParser.test.d.ts.map +1 -0
  68. package/lib/test/bulkPulling/urlParser.test.js +452 -0
  69. package/lib/test/bulkPulling/wsClient.reconnect.integration.test.js +2 -2
  70. package/lib/test/bulkPulling/wsClient.recovery.test.d.ts +2 -0
  71. package/lib/test/bulkPulling/wsClient.recovery.test.d.ts.map +1 -0
  72. package/lib/test/bulkPulling/wsClient.recovery.test.js +104 -0
  73. package/lib/test/bulkPulling/wsConfig.dsn.test.js +2 -0
  74. package/lib/test/bulkPulling/wsConnector.failover.test.js +396 -27
  75. package/lib/test/bulkPulling/wsConnectorPool.key.test.js +12 -10
  76. package/lib/test/bulkPulling/wsConnectorPool.keyAuth.test.d.ts +2 -0
  77. package/lib/test/bulkPulling/wsConnectorPool.keyAuth.test.d.ts.map +1 -0
  78. package/lib/test/bulkPulling/wsConnectorPool.keyAuth.test.js +28 -0
  79. package/lib/test/bulkPulling/wsProxy.failover.integration.test.d.ts +2 -0
  80. package/lib/test/bulkPulling/wsProxy.failover.integration.test.d.ts.map +1 -0
  81. package/lib/test/bulkPulling/wsProxy.failover.integration.test.js +120 -0
  82. package/lib/test/bulkPulling/wsProxy.failover.test.d.ts +2 -0
  83. package/lib/test/bulkPulling/wsProxy.failover.test.d.ts.map +1 -0
  84. package/lib/test/bulkPulling/wsProxy.failover.test.js +465 -0
  85. package/lib/test/client/wsClient.recovery.test.d.ts +2 -0
  86. package/lib/test/client/wsClient.recovery.test.d.ts.map +1 -0
  87. package/lib/test/client/wsClient.recovery.test.js +122 -0
  88. package/lib/test/client/wsConnectPool.test.d.ts +2 -0
  89. package/lib/test/client/wsConnectPool.test.d.ts.map +1 -0
  90. package/lib/test/client/wsConnectPool.test.js +147 -0
  91. package/lib/test/client/wsConnector.failover.test.d.ts +2 -0
  92. package/lib/test/client/wsConnector.failover.test.d.ts.map +1 -0
  93. package/lib/test/client/wsConnector.failover.test.js +681 -0
  94. package/lib/test/client/wsConnector.leastConnections.test.d.ts +2 -0
  95. package/lib/test/client/wsConnector.leastConnections.test.d.ts.map +1 -0
  96. package/lib/test/client/wsConnector.leastConnections.test.js +71 -0
  97. package/lib/test/client/wsConnectorPool.key.test.d.ts +2 -0
  98. package/lib/test/client/wsConnectorPool.key.test.d.ts.map +1 -0
  99. package/lib/test/client/wsConnectorPool.key.test.js +127 -0
  100. package/lib/test/client/wsEventCallback.test.d.ts +2 -0
  101. package/lib/test/client/wsEventCallback.test.d.ts.map +1 -0
  102. package/lib/test/client/wsEventCallback.test.js +98 -0
  103. package/lib/test/common/addressConnectionTracker.test.d.ts +2 -0
  104. package/lib/test/common/addressConnectionTracker.test.d.ts.map +1 -0
  105. package/lib/test/common/addressConnectionTracker.test.js +74 -0
  106. package/lib/test/common/dsn.test.d.ts +2 -0
  107. package/lib/test/common/dsn.test.d.ts.map +1 -0
  108. package/lib/test/common/dsn.test.js +406 -0
  109. package/lib/test/common/log.test.d.ts +2 -0
  110. package/lib/test/common/log.test.d.ts.map +1 -0
  111. package/lib/test/common/log.test.js +54 -0
  112. package/lib/test/common/utils.test.d.ts +2 -0
  113. package/lib/test/common/utils.test.d.ts.map +1 -0
  114. package/lib/test/common/utils.test.js +13 -0
  115. package/lib/test/common/wsConfig.dsn.test.d.ts +2 -0
  116. package/lib/test/common/wsConfig.dsn.test.d.ts.map +1 -0
  117. package/lib/test/common/wsConfig.dsn.test.js +39 -0
  118. package/lib/test/helpers/utils.d.ts +27 -0
  119. package/lib/test/helpers/utils.d.ts.map +1 -0
  120. package/lib/test/helpers/utils.js +341 -0
  121. package/lib/test/helpers/wsFailoverProxy.d.ts +109 -0
  122. package/lib/test/helpers/wsFailoverProxy.d.ts.map +1 -0
  123. package/lib/test/helpers/wsFailoverProxy.js +420 -0
  124. package/lib/test/helpers/wsProxy.d.ts +110 -0
  125. package/lib/test/helpers/wsProxy.d.ts.map +1 -0
  126. package/lib/test/helpers/wsProxy.js +429 -0
  127. package/lib/test/sql/core/decimal.test.d.ts +2 -0
  128. package/lib/test/sql/core/decimal.test.d.ts.map +1 -0
  129. package/lib/test/sql/core/decimal.test.js +153 -0
  130. package/lib/test/sql/core/queryTables.test.d.ts +2 -0
  131. package/lib/test/sql/core/queryTables.test.d.ts.map +1 -0
  132. package/lib/test/sql/core/queryTables.test.js +506 -0
  133. package/lib/test/sql/core/schemaless.test.d.ts +2 -0
  134. package/lib/test/sql/core/schemaless.test.d.ts.map +1 -0
  135. package/lib/test/sql/core/schemaless.test.js +102 -0
  136. package/lib/test/sql/core/sql.test.d.ts +2 -0
  137. package/lib/test/sql/core/sql.test.d.ts.map +1 -0
  138. package/lib/test/sql/core/sql.test.js +324 -0
  139. package/lib/test/sql/decimal.test.d.ts +2 -0
  140. package/lib/test/sql/decimal.test.d.ts.map +1 -0
  141. package/lib/test/sql/decimal.test.js +153 -0
  142. package/lib/test/sql/failover/sql.failover.test.d.ts +2 -0
  143. package/lib/test/sql/failover/sql.failover.test.d.ts.map +1 -0
  144. package/lib/test/sql/failover/sql.failover.test.js +341 -0
  145. package/lib/test/sql/queryTables.test.d.ts +2 -0
  146. package/lib/test/sql/queryTables.test.d.ts.map +1 -0
  147. package/lib/test/sql/queryTables.test.js +506 -0
  148. package/lib/test/sql/schemaless.test.d.ts +2 -0
  149. package/lib/test/sql/schemaless.test.d.ts.map +1 -0
  150. package/lib/test/sql/schemaless.test.js +102 -0
  151. package/lib/test/sql/sql.failover.test.d.ts +2 -0
  152. package/lib/test/sql/sql.failover.test.d.ts.map +1 -0
  153. package/lib/test/sql/sql.failover.test.js +341 -0
  154. package/lib/test/sql/sql.test.d.ts +2 -0
  155. package/lib/test/sql/sql.test.d.ts.map +1 -0
  156. package/lib/test/sql/sql.test.js +324 -0
  157. package/lib/test/stmt/failover/stmt2.failover.mock.test.d.ts +2 -0
  158. package/lib/test/stmt/failover/stmt2.failover.mock.test.d.ts.map +1 -0
  159. package/lib/test/stmt/failover/stmt2.failover.mock.test.js +341 -0
  160. package/lib/test/stmt/failover/stmt2.failover.test.d.ts +2 -0
  161. package/lib/test/stmt/failover/stmt2.failover.test.d.ts.map +1 -0
  162. package/lib/test/stmt/failover/stmt2.failover.test.js +384 -0
  163. package/lib/test/stmt/stmt1.func.test.d.ts +2 -0
  164. package/lib/test/stmt/stmt1.func.test.d.ts.map +1 -0
  165. package/lib/test/stmt/stmt1.func.test.js +418 -0
  166. package/lib/test/stmt/stmt1.type.test.d.ts +2 -0
  167. package/lib/test/stmt/stmt1.type.test.d.ts.map +1 -0
  168. package/lib/test/stmt/stmt1.type.test.js +399 -0
  169. package/lib/test/stmt/stmt2.failover.mock.test.d.ts +2 -0
  170. package/lib/test/stmt/stmt2.failover.mock.test.d.ts.map +1 -0
  171. package/lib/test/stmt/stmt2.failover.mock.test.js +341 -0
  172. package/lib/test/stmt/stmt2.failover.test.d.ts +2 -0
  173. package/lib/test/stmt/stmt2.failover.test.d.ts.map +1 -0
  174. package/lib/test/stmt/stmt2.failover.test.js +384 -0
  175. package/lib/test/stmt/stmt2.func.test.d.ts +2 -0
  176. package/lib/test/stmt/stmt2.func.test.d.ts.map +1 -0
  177. package/lib/test/stmt/stmt2.func.test.js +537 -0
  178. package/lib/test/stmt/stmt2.type.test.d.ts +2 -0
  179. package/lib/test/stmt/stmt2.type.test.d.ts.map +1 -0
  180. package/lib/test/stmt/stmt2.type.test.js +401 -0
  181. package/lib/test/stmt/v1/stmt1.func.test.d.ts +2 -0
  182. package/lib/test/stmt/v1/stmt1.func.test.d.ts.map +1 -0
  183. package/lib/test/stmt/v1/stmt1.func.test.js +418 -0
  184. package/lib/test/stmt/v1/stmt1.type.test.d.ts +2 -0
  185. package/lib/test/stmt/v1/stmt1.type.test.d.ts.map +1 -0
  186. package/lib/test/stmt/v1/stmt1.type.test.js +399 -0
  187. package/lib/test/stmt/v2/stmt2.func.test.d.ts +2 -0
  188. package/lib/test/stmt/v2/stmt2.func.test.d.ts.map +1 -0
  189. package/lib/test/stmt/v2/stmt2.func.test.js +537 -0
  190. package/lib/test/stmt/v2/stmt2.type.test.d.ts +2 -0
  191. package/lib/test/stmt/v2/stmt2.type.test.d.ts.map +1 -0
  192. package/lib/test/stmt/v2/stmt2.type.test.js +401 -0
  193. package/lib/test/tmq/cloud/cloud.tmq.test.d.ts +2 -0
  194. package/lib/test/tmq/cloud/cloud.tmq.test.d.ts.map +1 -0
  195. package/lib/test/tmq/cloud/cloud.tmq.test.js +84 -0
  196. package/lib/test/tmq/cloud/tmq.cloud.test.d.ts +2 -0
  197. package/lib/test/tmq/cloud/tmq.cloud.test.d.ts.map +1 -0
  198. package/lib/test/tmq/cloud/tmq.cloud.test.js +82 -0
  199. package/lib/test/tmq/core/tmq.config.test.d.ts +2 -0
  200. package/lib/test/tmq/core/tmq.config.test.d.ts.map +1 -0
  201. package/lib/test/tmq/core/tmq.config.test.js +83 -0
  202. package/lib/test/tmq/core/tmq.test.d.ts +2 -0
  203. package/lib/test/tmq/core/tmq.test.d.ts.map +1 -0
  204. package/lib/test/tmq/core/tmq.test.js +513 -0
  205. package/lib/test/tmq/failover/tmq.failover.test.d.ts +2 -0
  206. package/lib/test/tmq/failover/tmq.failover.test.d.ts.map +1 -0
  207. package/lib/test/tmq/failover/tmq.failover.test.js +404 -0
  208. package/lib/test/tmq/tmq.cloud.test.d.ts +2 -0
  209. package/lib/test/tmq/tmq.cloud.test.d.ts.map +1 -0
  210. package/lib/test/tmq/tmq.cloud.test.js +82 -0
  211. package/lib/test/tmq/tmq.config.test.d.ts +2 -0
  212. package/lib/test/tmq/tmq.config.test.d.ts.map +1 -0
  213. package/lib/test/tmq/tmq.config.test.js +94 -0
  214. package/lib/test/tmq/tmq.failover.test.d.ts +2 -0
  215. package/lib/test/tmq/tmq.failover.test.d.ts.map +1 -0
  216. package/lib/test/tmq/tmq.failover.test.js +404 -0
  217. package/lib/test/tmq/tmq.test.d.ts +2 -0
  218. package/lib/test/tmq/tmq.test.d.ts.map +1 -0
  219. package/lib/test/tmq/tmq.test.js +513 -0
  220. package/lib/test/unit/connectionManager.test.d.ts +2 -0
  221. package/lib/test/unit/connectionManager.test.d.ts.map +1 -0
  222. package/lib/test/unit/connectionManager.test.js +91 -0
  223. package/package.json +1 -1
  224. package/readme.md +2 -2
@@ -449,7 +449,6 @@ function readSolidData(dataBuffer, colDataHead, meta, fields_scale) {
449
449
  }
450
450
  case constant_1.TDengineTypeCode.TIMESTAMP: {
451
451
  return dataBuffer.getBigInt64(colDataHead, true);
452
- // could change
453
452
  }
454
453
  case constant_1.TDengineTypeCode.DECIMAL: {
455
454
  let decimalHighPart = dataBuffer.getBigInt64(colDataHead + 8, true);
@@ -471,13 +470,11 @@ function readBinary(dataBuffer, colDataHead, length) {
471
470
  return buff;
472
471
  }
473
472
  function readVarchar(dataBuffer, colDataHead, length, textDecoder) {
474
- // let buff = dataBuffer.slice(colDataHead, colDataHead + length)
475
473
  let dataView = new DataView(dataBuffer, colDataHead, length);
476
474
  return textDecoder.decode(dataView);
477
475
  }
478
476
  function readNchar(dataBuffer, colDataHead, length) {
479
477
  let data = [];
480
- // let buff: ArrayBuffer = dataBuffer.slice(colDataHead, colDataHead + length);
481
478
  let dataView = new DataView(dataBuffer, colDataHead, length);
482
479
  for (let i = 0; i < length / 4; i++) {
483
480
  data.push((0, ut8Helper_1.appendRune)(dataView.getUint32(i * 4, true)));
@@ -485,7 +482,6 @@ function readNchar(dataBuffer, colDataHead, length) {
485
482
  return data.join("");
486
483
  }
487
484
  function getString(dataBuffer, colDataHead, length, textDecoder) {
488
- // let buff = dataBuffer.slice(colDataHead, colDataHead + length - 1)
489
485
  let dataView = new Uint8Array(dataBuffer.buffer, dataBuffer.byteOffset + colDataHead, length - 1);
490
486
  return textDecoder.decode(dataView);
491
487
  }
@@ -514,7 +510,6 @@ function bitmapLen(n) {
514
510
  return (n + ((1 << 3) - 1)) >> 3;
515
511
  }
516
512
  function getScaleFromRowBlock(buffer, colIndex, startOffset) {
517
- // for decimal: |___bytes___|__empty__|___prec___|__scale___|
518
513
  let backupPos = buffer.byteOffset + startOffset + 28 + colIndex * 5 + 1;
519
514
  let scaleBuffer = new DataView(buffer.buffer, backupPos);
520
515
  let scale = scaleBuffer.getInt32(0, true);
@@ -0,0 +1,32 @@
1
+ export interface HostInfo {
2
+ host: string;
3
+ port: number;
4
+ }
5
+ export interface ParsedUrl {
6
+ hosts: HostInfo[];
7
+ scheme: string;
8
+ username: string;
9
+ password: string;
10
+ database: string;
11
+ params: Map<string, string>;
12
+ }
13
+ /**
14
+ * Parse a multi-host TDengine WebSocket URL.
15
+ * Format: ws://username:password@host1:port1,host2:port2,[::1]:port3/db?key=value
16
+ */
17
+ export declare function parseMultiHostUrl(url: string): ParsedUrl;
18
+ /**
19
+ * Build a single-host URL from parsed components + a specific host.
20
+ * Used by ConnectionManager to create WebSocketConnector URLs.
21
+ */
22
+ export declare function buildHostUrl(parsed: ParsedUrl, host: HostInfo, extraParams?: Map<string, string>): URL;
23
+ /**
24
+ * Extract retry options from parsed URL params.
25
+ */
26
+ export declare function extractRetryOptions(params: Map<string, string>): {
27
+ retries?: number;
28
+ retryBackoffMs?: number;
29
+ retryBackoffMaxMs?: number;
30
+ resendWrite?: boolean;
31
+ };
32
+ //# sourceMappingURL=urlParser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"urlParser.d.ts","sourceRoot":"","sources":["../../../src/common/urlParser.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,QAAQ;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,SAAS;IACtB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAqFxD;AA0FD;;;GAGG;AACH,wBAAgB,YAAY,CACxB,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,QAAQ,EACd,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAClC,GAAG,CA0BL;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG;IAC9D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB,CAgBA"}
@@ -0,0 +1,201 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseMultiHostUrl = parseMultiHostUrl;
4
+ exports.buildHostUrl = buildHostUrl;
5
+ exports.extractRetryOptions = extractRetryOptions;
6
+ const wsError_1 = require("./wsError");
7
+ /**
8
+ * Parse a multi-host TDengine WebSocket URL.
9
+ * Format: ws://username:password@host1:port1,host2:port2,[::1]:port3/db?key=value
10
+ */
11
+ function parseMultiHostUrl(url) {
12
+ if (!url || url.trim().length === 0) {
13
+ throw new wsError_1.TDWebSocketClientError(wsError_1.ErrorCode.ERR_INVALID_URL, "URL must not be empty");
14
+ }
15
+ // Extract scheme
16
+ const schemeMatch = url.match(/^(wss?):\/\//i);
17
+ if (!schemeMatch) {
18
+ throw new wsError_1.TDWebSocketClientError(wsError_1.ErrorCode.ERR_INVALID_URL, `Invalid URL scheme, expected ws:// or wss://, got: ${url}`);
19
+ }
20
+ const scheme = schemeMatch[1].toLowerCase();
21
+ let remainder = url.slice(schemeMatch[0].length);
22
+ // Extract username:password@ if present
23
+ let username = "";
24
+ let password = "";
25
+ const atIndex = remainder.indexOf("@");
26
+ if (atIndex !== -1) {
27
+ const userInfo = remainder.slice(0, atIndex);
28
+ remainder = remainder.slice(atIndex + 1);
29
+ const colonIndex = userInfo.indexOf(":");
30
+ if (colonIndex !== -1) {
31
+ username = userInfo.slice(0, colonIndex);
32
+ password = userInfo.slice(colonIndex + 1);
33
+ }
34
+ else {
35
+ username = userInfo;
36
+ }
37
+ }
38
+ // Extract query params (after ?)
39
+ let params = new Map();
40
+ const queryIndex = remainder.indexOf("?");
41
+ let queryString = "";
42
+ if (queryIndex !== -1) {
43
+ queryString = remainder.slice(queryIndex + 1);
44
+ remainder = remainder.slice(0, queryIndex);
45
+ const searchParams = new URLSearchParams(queryString);
46
+ searchParams.forEach((value, key) => {
47
+ params.set(key, value);
48
+ });
49
+ }
50
+ // Extract database (after /)
51
+ let database = "";
52
+ const pathIndex = remainder.indexOf("/");
53
+ if (pathIndex !== -1) {
54
+ database = remainder.slice(pathIndex + 1);
55
+ remainder = remainder.slice(0, pathIndex);
56
+ }
57
+ // remainder is now the host list: host1:port1,host2:port2,[::1]:port3
58
+ const hosts = parseHostList(remainder);
59
+ if (hosts.length === 0) {
60
+ throw new wsError_1.TDWebSocketClientError(wsError_1.ErrorCode.ERR_INVALID_URL, "No hosts found in URL");
61
+ }
62
+ // Deduplicate hosts (preserve order, keep first occurrence)
63
+ const seen = new Set();
64
+ const dedupedHosts = [];
65
+ for (const h of hosts) {
66
+ const key = `${h.host}:${h.port}`;
67
+ if (!seen.has(key)) {
68
+ seen.add(key);
69
+ dedupedHosts.push(h);
70
+ }
71
+ }
72
+ return {
73
+ hosts: dedupedHosts,
74
+ scheme,
75
+ username,
76
+ password,
77
+ database,
78
+ params,
79
+ };
80
+ }
81
+ const DEFAULT_PORT = 6041;
82
+ /**
83
+ * Parse comma-separated host list. Supports IPv6 in brackets.
84
+ * Examples: "host1:6041,host2:6042", "[::1]:6041,host2:6042"
85
+ */
86
+ function parseHostList(hostStr) {
87
+ if (!hostStr || hostStr.trim().length === 0) {
88
+ return [];
89
+ }
90
+ const hosts = [];
91
+ let i = 0;
92
+ while (i < hostStr.length) {
93
+ // Skip comma separator
94
+ if (hostStr[i] === ",") {
95
+ i++;
96
+ continue;
97
+ }
98
+ if (hostStr[i] === "[") {
99
+ // IPv6 address in brackets
100
+ const closeBracket = hostStr.indexOf("]", i);
101
+ if (closeBracket === -1) {
102
+ throw new wsError_1.TDWebSocketClientError(wsError_1.ErrorCode.ERR_INVALID_URL, `Unclosed bracket in IPv6 address: ${hostStr.slice(i)}`);
103
+ }
104
+ const ipv6Host = hostStr.slice(i + 1, closeBracket);
105
+ let port = DEFAULT_PORT;
106
+ let next = closeBracket + 1;
107
+ if (next < hostStr.length && hostStr[next] === ":") {
108
+ const portEnd = hostStr.indexOf(",", next);
109
+ const portStr = portEnd === -1
110
+ ? hostStr.slice(next + 1)
111
+ : hostStr.slice(next + 1, portEnd);
112
+ port = parsePort(portStr, hostStr);
113
+ i = portEnd === -1 ? hostStr.length : portEnd;
114
+ }
115
+ else {
116
+ i = next;
117
+ }
118
+ hosts.push({ host: `[${ipv6Host}]`, port });
119
+ }
120
+ else {
121
+ // Regular host or IPv4
122
+ const commaIndex = hostStr.indexOf(",", i);
123
+ const segment = commaIndex === -1
124
+ ? hostStr.slice(i)
125
+ : hostStr.slice(i, commaIndex);
126
+ const lastColon = segment.lastIndexOf(":");
127
+ if (lastColon !== -1) {
128
+ const host = segment.slice(0, lastColon);
129
+ const port = parsePort(segment.slice(lastColon + 1), hostStr);
130
+ hosts.push({ host, port });
131
+ }
132
+ else {
133
+ hosts.push({ host: segment, port: DEFAULT_PORT });
134
+ }
135
+ i = commaIndex === -1 ? hostStr.length : commaIndex;
136
+ }
137
+ }
138
+ return hosts;
139
+ }
140
+ function parsePort(portStr, context) {
141
+ // If port string is empty, use default port
142
+ if (portStr.length === 0) {
143
+ return DEFAULT_PORT;
144
+ }
145
+ // Validate that port string contains only digits
146
+ if (!/^\d+$/.test(portStr)) {
147
+ throw new wsError_1.TDWebSocketClientError(wsError_1.ErrorCode.ERR_INVALID_URL, `Invalid port "${portStr}" in host string: ${context}`);
148
+ }
149
+ const port = parseInt(portStr, 10);
150
+ if (isNaN(port) || port < 1 || port > 65535) {
151
+ throw new wsError_1.TDWebSocketClientError(wsError_1.ErrorCode.ERR_INVALID_URL, `Invalid port "${portStr}" in host string: ${context}`);
152
+ }
153
+ return port;
154
+ }
155
+ /**
156
+ * Build a single-host URL from parsed components + a specific host.
157
+ * Used by ConnectionManager to create WebSocketConnector URLs.
158
+ */
159
+ function buildHostUrl(parsed, host, extraParams) {
160
+ const origin = `${parsed.scheme}://${host.host}:${host.port}`;
161
+ const url = new URL(origin + "/ws");
162
+ if (parsed.username) {
163
+ url.username = parsed.username;
164
+ }
165
+ if (parsed.password) {
166
+ url.password = parsed.password;
167
+ }
168
+ // Copy non-retry params
169
+ const retryParams = new Set(["retries", "retry_backoff_ms", "retry_backoff_max_ms", "resend_write"]);
170
+ parsed.params.forEach((value, key) => {
171
+ if (!retryParams.has(key)) {
172
+ url.searchParams.set(key, value);
173
+ }
174
+ });
175
+ if (extraParams) {
176
+ extraParams.forEach((value, key) => {
177
+ url.searchParams.set(key, value);
178
+ });
179
+ }
180
+ return url;
181
+ }
182
+ /**
183
+ * Extract retry options from parsed URL params.
184
+ */
185
+ function extractRetryOptions(params) {
186
+ const result = {};
187
+ if (params.has("retries")) {
188
+ result.retries = parseInt(params.get("retries"), 10);
189
+ }
190
+ if (params.has("retry_backoff_ms")) {
191
+ result.retryBackoffMs = parseInt(params.get("retry_backoff_ms"), 10);
192
+ }
193
+ if (params.has("retry_backoff_max_ms")) {
194
+ result.retryBackoffMaxMs = parseInt(params.get("retry_backoff_max_ms"), 10);
195
+ }
196
+ if (params.has("resend_write")) {
197
+ const val = params.get("resend_write").toLowerCase();
198
+ result.resendWrite = val === "true" || val === "1";
199
+ }
200
+ return result;
201
+ }
@@ -1,6 +1,7 @@
1
1
  import { TmqConfig } from "../tmq/config";
2
2
  import { WSConfig } from "./config";
3
- export declare function getUrl(wsConfig: WSConfig): URL;
3
+ import { Dsn } from "./dsn";
4
+ export declare function getDsn(wsConfig: WSConfig): Dsn;
4
5
  export declare function isEmpty(value: any): boolean;
5
6
  export declare function getBinarySql(action: bigint, reqId: bigint, resultId: bigint, sql?: string): ArrayBuffer;
6
7
  export declare function zigzagDecode(n: number): number;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/common/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGpC,wBAAgB,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,GAAG,CAyC9C;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAI3C;AAED,wBAAgB,YAAY,CACxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,GAAG,CAAC,EAAE,MAAM,GACb,WAAW,CA2Bb;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE9C;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,UAWjD;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAW9D;AAkDD,wBAAgB,eAAe,CAC3B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GAAG,IAAI,GAC5B,MAAM,CAoBR;AAKD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,GAAG,MAAM,CAcrD;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAmB7D"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/common/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,GAAG,EAAS,MAAM,OAAO,CAAC;AAGnC,wBAAgB,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,GAAG,CA0C9C;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAI3C;AAED,wBAAgB,YAAY,CACxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,GAAG,CAAC,EAAE,MAAM,GACb,WAAW,CA2Bb;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE9C;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,UAWjD;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAW9D;AAkDD,wBAAgB,eAAe,CAC3B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GAAG,IAAI,GAC5B,MAAM,CAkBR;AAKD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,GAAG,MAAM,CAcrD;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAmB7D"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getUrl = getUrl;
3
+ exports.getDsn = getDsn;
4
4
  exports.isEmpty = isEmpty;
5
5
  exports.getBinarySql = getBinarySql;
6
6
  exports.zigzagDecode = zigzagDecode;
@@ -10,44 +10,47 @@ exports.decimalToString = decimalToString;
10
10
  exports.maskSensitiveForLog = maskSensitiveForLog;
11
11
  exports.maskUrlForLog = maskUrlForLog;
12
12
  exports.maskTmqConfigForLog = maskTmqConfigForLog;
13
+ const dsn_1 = require("./dsn");
13
14
  const wsError_1 = require("./wsError");
14
- function getUrl(wsConfig) {
15
- let url = new URL(wsConfig.getUrl());
16
- if (wsConfig.getUser()) {
17
- url.username = wsConfig.getUser() || "";
15
+ function getDsn(wsConfig) {
16
+ const dsn = (0, dsn_1.parse)(wsConfig.getUrl());
17
+ const user = wsConfig.getUser();
18
+ if (user) {
19
+ dsn.username = user;
18
20
  }
19
- if (wsConfig.getPwd()) {
20
- url.password = wsConfig.getPwd() || "";
21
+ const password = wsConfig.getPwd();
22
+ if (password) {
23
+ dsn.password = password;
21
24
  }
22
- let token = wsConfig.getToken();
25
+ const token = wsConfig.getToken();
23
26
  if (token) {
24
- url.searchParams.set("token", token);
27
+ dsn.params.set("token", token);
25
28
  }
26
- let timezone = wsConfig.getTimezone();
27
- if (timezone) {
28
- url.searchParams.set("timezone", timezone);
29
- }
30
- if (url.pathname && url.pathname !== "/") {
31
- wsConfig.setDb(url.pathname.slice(1));
32
- }
33
- if (url.searchParams.has("timezone")) {
34
- wsConfig.setTimezone(url.searchParams.get("timezone") || "");
29
+ else if (dsn.params.has("token")) {
30
+ wsConfig.setToken(dsn.params.get("token") || "");
35
31
  }
36
32
  const bearerToken = wsConfig.getBearerToken();
37
33
  if (bearerToken) {
38
- url.searchParams.set("bearer_token", bearerToken);
34
+ dsn.params.set("bearer_token", bearerToken);
39
35
  }
40
- else {
41
- const bearerTokenFromUrl = url.searchParams.get("bearer_token");
42
- if (bearerTokenFromUrl) {
43
- wsConfig.setBearerToken(bearerTokenFromUrl);
44
- }
45
- else {
46
- url.searchParams.delete("bearer_token");
47
- }
36
+ else if (dsn.params.has("bearer_token")) {
37
+ wsConfig.setBearerToken(dsn.params.get("bearer_token") || "");
38
+ }
39
+ const timezone = wsConfig.getTimezone();
40
+ if (timezone) {
41
+ dsn.params.set("timezone", timezone);
42
+ }
43
+ else if (dsn.params.has("timezone")) {
44
+ wsConfig.setTimezone(dsn.params.get("timezone") || "");
45
+ }
46
+ const db = wsConfig.getDb();
47
+ if (db && db.length > 0) {
48
+ dsn.database = db;
49
+ }
50
+ else if (dsn.database.length > 0) {
51
+ wsConfig.setDb(dsn.database);
48
52
  }
49
- url.pathname = "/ws";
50
- return url;
53
+ return dsn;
51
54
  }
52
55
  function isEmpty(value) {
53
56
  if (value === null || value === undefined)
@@ -166,12 +169,10 @@ function decimalToString(valueStr, fields_scale) {
166
169
  const isNegative = decimalStr.startsWith("-");
167
170
  const absStr = isNegative ? decimalStr.slice(1) : decimalStr;
168
171
  if (absStr.length <= scale) {
169
- // If the length of the number is less than or equal to the precision, add 0 before it.
170
172
  const paddedStr = absStr.padStart(scale + 1, "0");
171
173
  decimalStr = (isNegative ? "-" : "") + "0." + paddedStr.slice(1);
172
174
  }
173
175
  else {
174
- // 在指定位置插入小数点
175
176
  const integerPart = absStr.slice(0, absStr.length - scale);
176
177
  const decimalPart = absStr.slice(absStr.length - scale);
177
178
  decimalStr =
@@ -205,9 +206,9 @@ function maskTmqConfigForLog(config) {
205
206
  };
206
207
  return JSON.stringify(masked, (key, value) => {
207
208
  switch (key) {
208
- case 'url':
209
- case 'sql_url':
210
- return maskUrlForLog(value);
209
+ case 'dsn':
210
+ case 'sqlDsn':
211
+ return value ? value.toString() : value;
211
212
  case 'token':
212
213
  case 'password':
213
214
  case 'bearer_token':
@@ -17,9 +17,9 @@ const wsStmt1_1 = require("../stmt/wsStmt1");
17
17
  const wsStmt2_1 = require("../stmt/wsStmt2");
18
18
  class WsSql {
19
19
  constructor(wsConfig) {
20
- let url = (0, utils_1.getUrl)(wsConfig);
20
+ const dsn = (0, utils_1.getDsn)(wsConfig);
21
21
  this.wsConfig = wsConfig;
22
- this._wsClient = new wsClient_1.WsClient(url, wsConfig.getTimeOut());
22
+ this._wsClient = new wsClient_1.WsClient(dsn, wsConfig.getTimeOut());
23
23
  }
24
24
  static async open(wsConfig) {
25
25
  if (!wsConfig.getUrl()) {
@@ -1 +1 @@
1
- {"version":3,"file":"FieldBindParams.d.ts","sourceRoot":"","sources":["../../../src/stmt/FieldBindParams.ts"],"names":[],"mappings":"AAAA,qBAAa,eAAe;IACxB,MAAM,EAAE,GAAG,EAAE,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;gBAEb,MAAM,EAAE,GAAG,EAAE,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM;CAQvB"}
1
+ {"version":3,"file":"FieldBindParams.d.ts","sourceRoot":"","sources":["../../../src/stmt/FieldBindParams.ts"],"names":[],"mappings":"AAAA,qBAAa,eAAe;IACxB,MAAM,EAAE,GAAG,EAAE,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;gBAGb,MAAM,EAAE,GAAG,EAAE,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM;CAQvB"}
@@ -1 +1 @@
1
- {"version":3,"file":"wsColumnInfo.d.ts","sourceRoot":"","sources":["../../../src/stmt/wsColumnInfo.ts"],"names":[],"mappings":"AAAA,qBAAa,UAAU;IACnB,IAAI,EAAE,WAAW,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAK;IACxB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;gBAEpB,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,EACrC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,EAAE,EACjB,WAAW,CAAC,EAAE,MAAM,EAAE,EACtB,UAAU,GAAE,MAAU;CAW7B"}
1
+ {"version":3,"file":"wsColumnInfo.d.ts","sourceRoot":"","sources":["../../../src/stmt/wsColumnInfo.ts"],"names":[],"mappings":"AAAA,qBAAa,UAAU;IACnB,IAAI,EAAE,WAAW,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAK;IACxB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;gBAGpB,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,EACrC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,EAAE,EACjB,WAAW,CAAC,EAAE,MAAM,EAAE,EACtB,UAAU,GAAE,MAAU;CAW7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"wsParams1.d.ts","sourceRoot":"","sources":["../../../src/stmt/wsParams1.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE9D,qBAAa,eAAgB,SAAQ,cAAe,YAAW,YAAY;gBAC3D,SAAS,CAAC,EAAE,MAAM;IAI9B,MAAM,IAAI,IAAI;IAId,WAAW,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI;IAI7C,SAAS,CACL,MAAM,EAAE,GAAG,EAAE,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACnB,IAAI;IA0BP,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE;IAwG1B,OAAO,CAAC,kBAAkB;IAkD1B,OAAO,CAAC,qBAAqB;IA8E7B,OAAO,CAAC,0BAA0B;IAkClC,OAAO,CAAC,iBAAiB;IAmFzB,OAAO,CAAC,iBAAiB;CAY5B"}
1
+ {"version":3,"file":"wsParams1.d.ts","sourceRoot":"","sources":["../../../src/stmt/wsParams1.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE9D,qBAAa,eAAgB,SAAQ,cAAe,YAAW,YAAY;gBAC3D,SAAS,CAAC,EAAE,MAAM;IAI9B,MAAM,IAAI,IAAI;IAId,WAAW,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI;IAI7C,SAAS,CACL,MAAM,EAAE,GAAG,EAAE,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACnB,IAAI;IA0BP,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE;IAwG1B,OAAO,CAAC,kBAAkB;IAkD1B,OAAO,CAAC,qBAAqB;IA+E7B,OAAO,CAAC,0BAA0B;IAmClC,OAAO,CAAC,iBAAiB;IAmFzB,OAAO,CAAC,iBAAiB;CAY5B"}
@@ -39,14 +39,14 @@ class Stmt1BindParams extends wsParamsBase_1.StmtBindParams {
39
39
  if (!params || params.length == 0) {
40
40
  throw new wsError_1.TaosError(wsError_1.ErrorCode.ERR_INVALID_PARAMS, "SeTimestampColumn params is invalid!");
41
41
  }
42
- //computing bitmap length
42
+ // computing bitmap length
43
43
  let bitMapLen = (0, taosResult_1.bitmapLen)(params.length);
44
- //Computing the length of data
44
+ // computing the length of data
45
45
  let arrayBuffer = new ArrayBuffer(bitMapLen +
46
46
  constant_1.TDengineTypeLength[constant_1.TDengineTypeCode.TIMESTAMP] * params.length);
47
- //bitmap get data range
47
+ // bitmap get data range
48
48
  let bitmapBuffer = new DataView(arrayBuffer);
49
- //skip bitmap get data range
49
+ // skip bitmap get data range
50
50
  let dataBuffer = new DataView(arrayBuffer, bitMapLen);
51
51
  if (this._rows > 0) {
52
52
  if (this._rows !== params.length) {
@@ -60,7 +60,7 @@ class Stmt1BindParams extends wsParamsBase_1.StmtBindParams {
60
60
  if (!(0, utils_1.isEmpty)(params[i])) {
61
61
  if (params[i] instanceof Date) {
62
62
  let date = params[i];
63
- //node only support milliseconds, need fill 0
63
+ // node only support milliseconds, need fill 0
64
64
  if (this.precisionLength == constant_1.PrecisionLength["us"]) {
65
65
  let ms = date.getTime() * 1000;
66
66
  dataBuffer.setBigInt64(i * 8, BigInt(ms), true);
@@ -82,9 +82,9 @@ class Stmt1BindParams extends wsParamsBase_1.StmtBindParams {
82
82
  else {
83
83
  data = params[i];
84
84
  }
85
- //statistical bits of digit
85
+ // statistical bits of digit
86
86
  let digit = this.countBigintDigits(data);
87
- //check digit same table Precision
87
+ // check digit same table Precision
88
88
  if (this.precisionLength == constant_1.PrecisionLength["ns"]) {
89
89
  if (this.precisionLength <= digit) {
90
90
  dataBuffer.setBigInt64(i * 8, data, true);
@@ -104,7 +104,7 @@ class Stmt1BindParams extends wsParamsBase_1.StmtBindParams {
104
104
  }
105
105
  }
106
106
  else {
107
- //set bitmap bit is null
107
+ // set bitmap bit is null
108
108
  let charOffset = (0, taosResult_1.getCharOffset)(i);
109
109
  let nullVal = (0, taosResult_1.setBitmapNull)(dataBuffer.getInt8(charOffset), i);
110
110
  bitmapBuffer.setInt8(charOffset, nullVal);
@@ -135,7 +135,7 @@ class Stmt1BindParams extends wsParamsBase_1.StmtBindParams {
135
135
  this.writeDataToBuffer(dataBuffer, params[i], dataType, typeLen, columnType, i);
136
136
  }
137
137
  else {
138
- //set bitmap bit is null
138
+ // set bitmap bit is null
139
139
  let charOffset = (0, taosResult_1.getCharOffset)(i);
140
140
  let nullVal = (0, taosResult_1.setBitmapNull)(bitmapBuffer.getUint8(charOffset), i);
141
141
  bitmapBuffer.setInt8(charOffset, nullVal);
@@ -147,7 +147,7 @@ class Stmt1BindParams extends wsParamsBase_1.StmtBindParams {
147
147
  encodeVarLengthColumn(params, columnType) {
148
148
  let data = [];
149
149
  let dataLength = 0;
150
- //create params length buffer
150
+ // create params length buffer
151
151
  let paramsLenBuffer = new ArrayBuffer(constant_1.TDengineTypeLength[constant_1.TDengineTypeCode.INT] * params.length);
152
152
  let paramsLenView = new DataView(paramsLenBuffer);
153
153
  if (this._rows > 0) {
@@ -159,23 +159,23 @@ class Stmt1BindParams extends wsParamsBase_1.StmtBindParams {
159
159
  this._rows = params.length;
160
160
  }
161
161
  for (let i = 0; i < params.length; i++) {
162
- //get param length offset 4byte
162
+ // get param length offset 4byte
163
163
  let offset = constant_1.TDengineTypeLength[constant_1.TDengineTypeCode.INT] * i;
164
164
  if (!(0, utils_1.isEmpty)(params[i])) {
165
- //save param length offset 4byte
165
+ // save param length offset 4byte
166
166
  paramsLenView.setInt32(offset, dataLength, true);
167
167
  if (typeof params[i] == "string") {
168
- //string TextEncoder
168
+ // string TextEncoder
169
169
  let encode = new TextEncoder();
170
170
  let value = encode.encode(params[i]).buffer;
171
171
  data.push(value);
172
- //add offset length
172
+ // add offset length
173
173
  dataLength +=
174
174
  value.byteLength +
175
175
  constant_1.TDengineTypeLength[constant_1.TDengineTypeCode.SMALLINT];
176
176
  }
177
177
  else if (params[i] instanceof ArrayBuffer) {
178
- //input arraybuffer, save not need encode
178
+ // input arraybuffer, save not need encode
179
179
  let value = params[i];
180
180
  dataLength +=
181
181
  value.byteLength +
@@ -188,7 +188,7 @@ class Stmt1BindParams extends wsParamsBase_1.StmtBindParams {
188
188
  }
189
189
  }
190
190
  else {
191
- //set length -1, param is null
191
+ // set length -1, param is null
192
192
  for (let j = 0; j < constant_1.TDengineTypeLength[constant_1.TDengineTypeCode.INT]; j++) {
193
193
  paramsLenView.setInt8(offset + j, 255);
194
194
  }
@@ -200,22 +200,22 @@ class Stmt1BindParams extends wsParamsBase_1.StmtBindParams {
200
200
  this.getBinaryColumnArrayBuffer(data, paramsLenView.buffer, dataLength),
201
201
  ], columnType, 0, this._rows);
202
202
  }
203
- //splicing encode params to arraybuffer
203
+ // splicing encode params to arraybuffer
204
204
  getBinaryColumnArrayBuffer(data, paramsLenBuffer, dataLength) {
205
- //create arraybuffer
205
+ // create arraybuffer
206
206
  let paramsBuffer = new ArrayBuffer(paramsLenBuffer.byteLength + dataLength);
207
- //get length data range
207
+ // get length data range
208
208
  const paramsUint8 = new Uint8Array(paramsBuffer);
209
209
  const paramsLenView = new Uint8Array(paramsLenBuffer);
210
210
  paramsUint8.set(paramsLenView, 0);
211
- //get data range
211
+ // get data range
212
212
  const paramsView = new DataView(paramsBuffer, paramsLenBuffer.byteLength);
213
213
  let offset = 0;
214
214
  for (let i = 0; i < data.length; i++) {
215
- //save param field length
215
+ // save param field length
216
216
  paramsView.setInt16(offset, data[i].byteLength, true);
217
217
  const dataView = new DataView(data[i]);
218
- //save data
218
+ // save data
219
219
  for (let j = 0; j < data[i].byteLength; j++) {
220
220
  paramsView.setUint8(offset + 2 + j, dataView.getUint8(j));
221
221
  }
@@ -223,7 +223,7 @@ class Stmt1BindParams extends wsParamsBase_1.StmtBindParams {
223
223
  }
224
224
  return paramsBuffer;
225
225
  }
226
- //encode nchar type params
226
+ // encode nchar type params
227
227
  encodeNcharColumn(params) {
228
228
  let data = [];
229
229
  let dataLength = 0;
@@ -245,13 +245,13 @@ class Stmt1BindParams extends wsParamsBase_1.StmtBindParams {
245
245
  let codes = [];
246
246
  let strNcharParams = params[i];
247
247
  for (let j = 0; j < params[i].length; j++) {
248
- //get char, cn char need 3~4 byte
248
+ // get char, cn char need 3~4 byte
249
249
  codes.push(strNcharParams.charCodeAt(j));
250
250
  }
251
251
  let ncharBuffer = new ArrayBuffer(codes.length * 4);
252
252
  let ncharView = new DataView(ncharBuffer);
253
253
  for (let j = 0; j < codes.length; j++) {
254
- //1char, save into uint32
254
+ // char, save into uint32
255
255
  ncharView.setUint32(j * 4, codes[j], true);
256
256
  }
257
257
  data.push(ncharBuffer);
@@ -272,7 +272,7 @@ class Stmt1BindParams extends wsParamsBase_1.StmtBindParams {
272
272
  }
273
273
  }
274
274
  else {
275
- //set length -1, param is null
275
+ // set length -1, param is null
276
276
  for (let j = 0; j < constant_1.TDengineTypeLength[constant_1.TDengineTypeCode.INT]; j++) {
277
277
  indexView.setInt8(offset + j, 255);
278
278
  }
@@ -1 +1 @@
1
- {"version":3,"file":"wsParams2.d.ts","sourceRoot":"","sources":["../../../src/stmt/wsParams2.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAI9D,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,qBAAa,eAAgB,SAAQ,cAAe,YAAW,YAAY;IACvE,OAAO,CAAC,OAAO,CAAuB;IACtC,SAAS,CAAC,UAAU,EAAE,MAAM,CAAK;gBAE7B,WAAW,CAAC,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAMjC,SAAS,CACL,MAAM,EAAE,GAAG,EAAE,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACnB,IAAI;IA6DP,WAAW,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI;IA0B7C,MAAM,IAAI,IAAI;IA0Dd,OAAO,CAAC,gBAAgB;IAmDxB,OAAO,CAAC,kBAAkB;IAwD1B,OAAO,CAAC,qBAAqB;CA2ChC"}
1
+ {"version":3,"file":"wsParams2.d.ts","sourceRoot":"","sources":["../../../src/stmt/wsParams2.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAI9D,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,qBAAa,eAAgB,SAAQ,cAAe,YAAW,YAAY;IACvE,OAAO,CAAC,OAAO,CAAuB;IACtC,SAAS,CAAC,UAAU,EAAE,MAAM,CAAK;gBAG7B,WAAW,CAAC,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAMjC,SAAS,CACL,MAAM,EAAE,GAAG,EAAE,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACnB,IAAI;IA6DP,WAAW,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI;IA0B7C,MAAM,IAAI,IAAI;IA0Dd,OAAO,CAAC,gBAAgB;IAkDxB,OAAO,CAAC,kBAAkB;IAwD1B,OAAO,CAAC,qBAAqB;CAwChC"}
@@ -120,7 +120,6 @@ class Stmt2BindParams extends wsParamsBase_1.StmtBindParams {
120
120
  bytes.push(...encoder);
121
121
  }
122
122
  else if (params[i] instanceof ArrayBuffer) {
123
- //input arraybuffer, save not need encode
124
123
  let value = params[i];
125
124
  totalLength += value.byteLength;
126
125
  dataLengths.push(value.byteLength);
@@ -170,7 +169,6 @@ class Stmt2BindParams extends wsParamsBase_1.StmtBindParams {
170
169
  let timeStamp = BigInt(0);
171
170
  if (params[i] instanceof Date) {
172
171
  let date = params[i];
173
- //node only support milliseconds, need fill 0
174
172
  if (this.precisionLength == constant_1.PrecisionLength["us"]) {
175
173
  timeStamp = BigInt(date.getTime() * 1000);
176
174
  }
@@ -193,7 +191,6 @@ class Stmt2BindParams extends wsParamsBase_1.StmtBindParams {
193
191
  timeStamps.push(timeStamp);
194
192
  }
195
193
  else {
196
- //set bitmap bit is null
197
194
  timeStamps.push(null);
198
195
  }
199
196
  }
@@ -1 +1 @@
1
- {"version":3,"file":"wsParamsBase.d.ts","sourceRoot":"","sources":["../../../src/stmt/wsParamsBase.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAG5C,MAAM,WAAW,YAAY;IACzB,MAAM,IAAI,IAAI,CAAC;IACf,SAAS,CACL,MAAM,EAAE,GAAG,EAAE,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACnB,IAAI,CAAC;IACR,WAAW,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI,CAAC;CACjD;AAED,8BAAsB,cAAc;IAChC,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAyB;IACnE,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC;IACzC,YAAY,CAAC,EAAE,eAAe,EAAE,CAAC;IACjC,SAAS,CAAC,aAAa,EAAE,MAAM,CAAK;IACpC,SAAS,CAAC,WAAW,EAAE,MAAM,CAAK;IAClC,SAAS,CAAC,KAAK,SAAK;IACpB,SAAS,CAAC,UAAU,SAAK;gBAEb,SAAS,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM;IAcpD,QAAQ,CAAC,MAAM,IAAI,IAAI;IAEvB,QAAQ,CAAC,SAAS,CACd,MAAM,EAAE,GAAG,EAAE,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACnB,IAAI;IAEP,kBAAkB,CAAC,WAAW,EAAE,eAAe,GAAG,IAAI;IAsBtD,QAAQ,CAAC,WAAW,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI;IAEtD,YAAY,IAAI,MAAM;IAItB,WAAW,IAAI,MAAM;IAIrB,eAAe,IAAI,MAAM;IAIlB,SAAS,IAAI,UAAU,EAAE;IAIhC,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE;IAexB,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE;IAexB,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE;IAezB,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE;IAezB,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE;IAe1B,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE;IAepB,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE;IAerB,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE;IAevB,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE;IAexB,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;IAetB,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE;IAevB,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE;IAexB,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE;IAUvB,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;IAUtB,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE;IAUrB,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE;IAe1B,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE;IAezB,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE;IAe1B,SAAS,CAAC,iBAAiB,CACvB,UAAU,EAAE,QAAQ,EACpB,MAAM,EAAE,GAAG,EACX,QAAQ,EAAE,MAAM,YAAW,EAC3B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,CAAC,EAAE,MAAM,GACV,IAAI;CAuEV"}
1
+ {"version":3,"file":"wsParamsBase.d.ts","sourceRoot":"","sources":["../../../src/stmt/wsParamsBase.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,MAAM,WAAW,YAAY;IACzB,MAAM,IAAI,IAAI,CAAC;IACf,SAAS,CACL,MAAM,EAAE,GAAG,EAAE,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACnB,IAAI,CAAC;IACR,WAAW,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI,CAAC;CACjD;AAED,8BAAsB,cAAc;IAChC,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAyB;IACnE,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC;IACzC,YAAY,CAAC,EAAE,eAAe,EAAE,CAAC;IACjC,SAAS,CAAC,aAAa,EAAE,MAAM,CAAK;IACpC,SAAS,CAAC,WAAW,EAAE,MAAM,CAAK;IAClC,SAAS,CAAC,KAAK,SAAK;IACpB,SAAS,CAAC,UAAU,SAAK;gBAEb,SAAS,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM;IAcpD,QAAQ,CAAC,MAAM,IAAI,IAAI;IAEvB,QAAQ,CAAC,SAAS,CACd,MAAM,EAAE,GAAG,EAAE,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACnB,IAAI;IAEP,kBAAkB,CAAC,WAAW,EAAE,eAAe,GAAG,IAAI;IAsBtD,QAAQ,CAAC,WAAW,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI;IAEtD,YAAY,IAAI,MAAM;IAItB,WAAW,IAAI,MAAM;IAIrB,eAAe,IAAI,MAAM;IAIlB,SAAS,IAAI,UAAU,EAAE;IAIhC,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE;IAexB,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE;IAexB,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE;IAezB,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE;IAezB,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE;IAe1B,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE;IAepB,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE;IAerB,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE;IAevB,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE;IAexB,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;IAetB,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE;IAevB,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE;IAexB,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE;IAUvB,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;IAUtB,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE;IAUrB,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE;IAe1B,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE;IAezB,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE;IAe1B,SAAS,CAAC,iBAAiB,CACvB,UAAU,EAAE,QAAQ,EACpB,MAAM,EAAE,GAAG,EACX,QAAQ,EAAE,MAAM,YAAW,EAC3B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,CAAC,EAAE,MAAM,GACV,IAAI;CAuEV"}
@@ -1 +1 @@
1
- {"version":3,"file":"wsProto.d.ts","sourceRoot":"","sources":["../../../src/stmt/wsProto.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,MAAM,WAAW,eAAe;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,cAAc,CAAC;CACxB;AAED,UAAU,cAAc;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACpC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACjC,IAAI,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;IACrC,UAAU,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,aAAa;IAC1B,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACtC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACrC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACjC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACjC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;CACxC;AAED,qBAAa,mBAAoB,SAAQ,eAAe;IACpD,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACpC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,CAAC;IACvC,MAAM,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;gBACrC,IAAI,EAAE,WAAW;CAOhC;AAED,0BAAkB,YAAY;IAC1B,aAAa,IAAI;IACjB,cAAc,IAAI;CACrB;AAED,wBAAgB,iBAAiB,CAC7B,UAAU,EAAE,cAAc,EAC1B,QAAQ,EAAE,YAAY,EACtB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACZ,WAAW,CA2Db;AAiDD,wBAAgB,sBAAsB,CAClC,KAAK,EAAE,MAAM,EACb,iBAAiB,EAAE,SAAS,EAAE,EAC9B,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,EAClC,sBAAsB,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,EACjD,gBAAgB,EAAE,MAAM,EACxB,gBAAgB,EAAE,MAAM,GACzB,WAAW,CA2Nb"}
1
+ {"version":3,"file":"wsProto.d.ts","sourceRoot":"","sources":["../../../src/stmt/wsProto.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,MAAM,WAAW,eAAe;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,cAAc,CAAC;CACxB;AAED,UAAU,cAAc;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACpC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACjC,IAAI,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;IACrC,UAAU,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,aAAa;IAC1B,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACtC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACrC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACjC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACjC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;CACxC;AAED,qBAAa,mBAAoB,SAAQ,eAAe;IACpD,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACpC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,CAAC;IACvC,MAAM,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;gBAErC,IAAI,EAAE,WAAW;CAOhC;AAED,0BAAkB,YAAY;IAC1B,aAAa,IAAI;IACjB,cAAc,IAAI;CACrB;AAED,wBAAgB,iBAAiB,CAC7B,UAAU,EAAE,cAAc,EAC1B,QAAQ,EAAE,YAAY,EACtB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACZ,WAAW,CA2Db;AAiDD,wBAAgB,sBAAsB,CAClC,KAAK,EAAE,MAAM,EACb,iBAAiB,EAAE,SAAS,EAAE,EAC9B,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,EAClC,sBAAsB,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,EACjD,gBAAgB,EAAE,MAAM,EACxB,gBAAgB,EAAE,MAAM,GACzB,WAAW,CA2Nb"}