@hypequery/clickhouse 1.5.0 → 1.6.1

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 (118) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +19 -14
  3. package/dist/cli/generate-types.js +5 -12
  4. package/dist/core/adapters/clickhouse-adapter.d.ts +14 -0
  5. package/dist/core/adapters/clickhouse-adapter.d.ts.map +1 -0
  6. package/dist/core/adapters/clickhouse-adapter.js +58 -0
  7. package/dist/core/adapters/database-adapter.d.ts +13 -0
  8. package/dist/core/adapters/database-adapter.d.ts.map +1 -0
  9. package/dist/core/adapters/database-adapter.js +1 -0
  10. package/dist/core/cache/cache-manager.d.ts.map +1 -1
  11. package/dist/core/cache/cache-manager.js +6 -5
  12. package/dist/core/dialects/clickhouse-dialect.d.ts +10 -0
  13. package/dist/core/dialects/clickhouse-dialect.d.ts.map +1 -0
  14. package/dist/core/dialects/clickhouse-dialect.js +47 -0
  15. package/dist/core/dialects/sql-dialect.d.ts +11 -0
  16. package/dist/core/dialects/sql-dialect.d.ts.map +1 -0
  17. package/dist/core/dialects/sql-dialect.js +1 -0
  18. package/dist/core/features/aggregations.d.ts +5 -5
  19. package/dist/core/features/analytics.d.ts +822 -4
  20. package/dist/core/features/analytics.d.ts.map +1 -1
  21. package/dist/core/features/analytics.js +15 -9
  22. package/dist/core/features/executor.d.ts.map +1 -1
  23. package/dist/core/features/executor.js +26 -53
  24. package/dist/core/features/filtering.d.ts +5 -5
  25. package/dist/core/features/joins.d.ts +1 -1
  26. package/dist/core/features/query-modifiers.d.ts +6 -6
  27. package/dist/core/query-builder.d.ts +20 -7
  28. package/dist/core/query-builder.d.ts.map +1 -1
  29. package/dist/core/query-builder.js +45 -32
  30. package/dist/core/tests/integration/setup.d.ts +3 -1
  31. package/dist/core/tests/integration/setup.d.ts.map +1 -1
  32. package/dist/core/tests/test-utils.d.ts.map +1 -1
  33. package/dist/core/tests/test-utils.js +16 -4
  34. package/dist/core/types/builder-state.d.ts +7 -5
  35. package/dist/core/types/builder-state.d.ts.map +1 -1
  36. package/dist/core/types/select-types.d.ts +4 -3
  37. package/dist/core/types/select-types.d.ts.map +1 -1
  38. package/dist/core/utils/predicate-builder.d.ts +4 -0
  39. package/dist/core/utils/predicate-builder.d.ts.map +1 -1
  40. package/dist/core/utils/predicate-builder.js +4 -1
  41. package/dist/core/utils/streaming-helpers.d.ts.map +1 -1
  42. package/dist/core/utils/streaming-helpers.js +8 -0
  43. package/dist/core/utils.d.ts.map +1 -1
  44. package/dist/core/utils.js +3 -0
  45. package/dist/dataset/definition.d.ts +135 -0
  46. package/dist/dataset/definition.d.ts.map +1 -0
  47. package/dist/dataset/definition.js +265 -0
  48. package/dist/dataset/helpers.d.ts +136 -0
  49. package/dist/dataset/helpers.d.ts.map +1 -0
  50. package/dist/dataset/helpers.js +189 -0
  51. package/dist/dataset/index.d.ts +51 -0
  52. package/dist/dataset/index.d.ts.map +1 -0
  53. package/dist/dataset/index.js +59 -0
  54. package/dist/dataset/introspection.d.ts +133 -0
  55. package/dist/dataset/introspection.d.ts.map +1 -0
  56. package/dist/dataset/introspection.js +239 -0
  57. package/dist/dataset/sql-tag.d.ts +51 -0
  58. package/dist/dataset/sql-tag.d.ts.map +1 -0
  59. package/dist/dataset/sql-tag.js +86 -0
  60. package/dist/dataset/types.d.ts +300 -0
  61. package/dist/dataset/types.d.ts.map +1 -0
  62. package/dist/dataset/types.js +11 -0
  63. package/dist/index.d.ts +21 -0
  64. package/dist/index.d.ts.map +1 -1
  65. package/dist/index.js +25 -15
  66. package/dist/migrations/config/index.d.ts +3 -0
  67. package/dist/migrations/config/index.d.ts.map +1 -0
  68. package/dist/migrations/config/index.js +1 -0
  69. package/dist/migrations/config/types.d.ts +45 -0
  70. package/dist/migrations/config/types.d.ts.map +1 -0
  71. package/dist/migrations/config/types.js +28 -0
  72. package/dist/migrations/diff/diff.d.ts +11 -0
  73. package/dist/migrations/diff/diff.d.ts.map +1 -0
  74. package/dist/migrations/diff/diff.js +240 -0
  75. package/dist/migrations/diff/index.d.ts +3 -0
  76. package/dist/migrations/diff/index.d.ts.map +1 -0
  77. package/dist/migrations/diff/index.js +1 -0
  78. package/dist/migrations/diff/types.d.ts +74 -0
  79. package/dist/migrations/diff/types.d.ts.map +1 -0
  80. package/dist/migrations/diff/types.js +1 -0
  81. package/dist/migrations/schema/column.d.ts +71 -0
  82. package/dist/migrations/schema/column.d.ts.map +1 -0
  83. package/dist/migrations/schema/column.js +123 -0
  84. package/dist/migrations/schema/define.d.ts +24 -0
  85. package/dist/migrations/schema/define.d.ts.map +1 -0
  86. package/dist/migrations/schema/define.js +47 -0
  87. package/dist/migrations/schema/index.d.ts +4 -0
  88. package/dist/migrations/schema/index.d.ts.map +1 -0
  89. package/dist/migrations/schema/index.js +2 -0
  90. package/dist/migrations/schema/types.d.ts +74 -0
  91. package/dist/migrations/schema/types.d.ts.map +1 -0
  92. package/dist/migrations/schema/types.js +1 -0
  93. package/dist/migrations/snapshot/index.d.ts +3 -0
  94. package/dist/migrations/snapshot/index.d.ts.map +1 -0
  95. package/dist/migrations/snapshot/index.js +1 -0
  96. package/dist/migrations/snapshot/serialize.d.ts +21 -0
  97. package/dist/migrations/snapshot/serialize.d.ts.map +1 -0
  98. package/dist/migrations/snapshot/serialize.js +127 -0
  99. package/dist/migrations/snapshot/types.d.ts +47 -0
  100. package/dist/migrations/snapshot/types.d.ts.map +1 -0
  101. package/dist/migrations/snapshot/types.js +1 -0
  102. package/dist/migrations/sql/index.d.ts +4 -0
  103. package/dist/migrations/sql/index.d.ts.map +1 -0
  104. package/dist/migrations/sql/index.js +2 -0
  105. package/dist/migrations/sql/render.d.ts +11 -0
  106. package/dist/migrations/sql/render.d.ts.map +1 -0
  107. package/dist/migrations/sql/render.js +334 -0
  108. package/dist/migrations/sql/types.d.ts +48 -0
  109. package/dist/migrations/sql/types.d.ts.map +1 -0
  110. package/dist/migrations/sql/types.js +1 -0
  111. package/dist/migrations/sql/write.d.ts +9 -0
  112. package/dist/migrations/sql/write.d.ts.map +1 -0
  113. package/dist/migrations/sql/write.js +31 -0
  114. package/dist/types/base.d.ts +2 -1
  115. package/dist/types/base.d.ts.map +1 -1
  116. package/dist/types/clickhouse-types.d.ts +3 -1
  117. package/dist/types/clickhouse-types.d.ts.map +1 -1
  118. package/package.json +20 -20
@@ -1 +1 @@
1
- {"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../../src/core/features/analytics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AACjG,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,qBAAa,gBAAgB,CAC3B,MAAM,SAAS,gBAAgB,CAAC,MAAM,CAAC,EACvC,KAAK,SAAS,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,MAAM,CAAC,CAAC,CAAC;IAExF,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC;IAExD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC,GAAG,EAAE,eAAe,CAAC,GAAG,MAAM;;;;;;;;;;;;;;;;;;IAS3E,eAAe,CACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,eAAe,GAAG,cAAc,GAAG,eAAe,GAAG,gBAAgB,GAAG,kBAAkB,GAAG,eAAe;;;;;;;;;;;;;;;;;;IAiBhK,WAAW,CAAC,IAAI,EAAE,kBAAkB;;;;;;;;;;;;;;;;;;CAQrC"}
1
+ {"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../../src/core/features/analytics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AACjG,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAGzE,qBAAa,gBAAgB,CAC3B,MAAM,SAAS,gBAAgB,CAAC,MAAM,CAAC,EACvC,KAAK,SAAS,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,MAAM,CAAC,CAAC,CAAC;IAExF,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC;IAExD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC,GAAG,EAAE,eAAe,CAAC,GAAG,MAAM;;;;;;;;;;;;;;;;;;IAS3E,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB;;;;;;;;;;;;;;;;;;IASxD,eAAe,CACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,eAAe,GAAG,cAAc,GAAG,eAAe,GAAG,gBAAgB,GAAG,kBAAkB,GAAG,eAAe,EAC9J,OAAO,EAAE,UAAU;;;;;;;;;;;;;;;;;;IAarB,WAAW,CAAC,IAAI,EAAE,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAUrC"}
@@ -1,3 +1,4 @@
1
+ import { substituteParameters } from '../utils.js';
1
2
  export class AnalyticsFeature {
2
3
  builder;
3
4
  constructor(builder) {
@@ -11,15 +12,18 @@ export class AnalyticsFeature {
11
12
  ctes: [...(config.ctes || []), `${alias} AS (${cte})`]
12
13
  };
13
14
  }
14
- addTimeInterval(column, interval, method) {
15
+ addScalar(alias, expression) {
16
+ const config = this.builder.getConfig();
17
+ const scalarExpression = substituteParameters(expression.sql, expression.parameters);
18
+ return {
19
+ ...config,
20
+ ctes: [...(config.ctes || []), `${scalarExpression} AS ${alias}`]
21
+ };
22
+ }
23
+ addTimeInterval(column, interval, method, dialect) {
15
24
  const config = this.builder.getConfig();
16
25
  const groupBy = config.groupBy || [];
17
- if (method === 'toStartOfInterval') {
18
- groupBy.push(`${method}(${column}, INTERVAL ${interval})`);
19
- }
20
- else {
21
- groupBy.push(`${method}(${column})`);
22
- }
26
+ groupBy.push(dialect.formatTimeInterval(column, interval, method));
23
27
  return {
24
28
  ...config,
25
29
  groupBy
@@ -27,10 +31,12 @@ export class AnalyticsFeature {
27
31
  }
28
32
  addSettings(opts) {
29
33
  const config = this.builder.getConfig();
30
- const settingsFragments = Object.entries(opts).map(([key, value]) => `${key}=${value}`);
31
34
  return {
32
35
  ...config,
33
- settings: settingsFragments.join(', ')
36
+ settings: {
37
+ ...(config.settings || {}),
38
+ ...opts,
39
+ }
34
40
  };
35
41
  }
36
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/core/features/executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGnD,OAAO,EAAU,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAG3D,UAAU,kBAAkB;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;CAChC;AAED,qBAAa,eAAe,CAC1B,MAAM,SAAS,gBAAgB,CAAC,MAAM,CAAC,EACvC,KAAK,SAAS,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,MAAM,CAAC,CAAC,CAAC;IAExF,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC;IAExD,eAAe,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,GAAG,EAAE,CAAA;KAAE;IAOrD,KAAK,IAAI,MAAM;IAKT,OAAO,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;IAuDjE,MAAM,IAAI,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAgD1D,OAAO,CAAC,sBAAsB;CA0C/B"}
1
+ {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/core/features/executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAU,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAG3D,UAAU,kBAAkB;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;CAChC;AAED,qBAAa,eAAe,CAC1B,MAAM,SAAS,gBAAgB,CAAC,MAAM,CAAC,EACvC,KAAK,SAAS,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,MAAM,CAAC,CAAC,CAAC;IAExF,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC;IAExD,eAAe,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,GAAG,EAAE,CAAA;KAAE;IAOrD,KAAK,IAAI,MAAM;IAMT,OAAO,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;IAsDjE,MAAM,IAAI,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAgD1D,OAAO,CAAC,sBAAsB;CAM/B"}
@@ -1,7 +1,5 @@
1
- import { ClickHouseConnection } from '../connection.js';
2
- import { substituteParameters } from '../utils.js';
3
1
  import { logger } from '../utils/logger.js';
4
- import { createJsonEachRowStream } from '../utils/streaming-helpers.js';
2
+ import { substituteParameters } from '../utils.js';
5
3
  export class ExecutorFeature {
6
4
  builder;
7
5
  constructor(builder) {
@@ -15,15 +13,17 @@ export class ExecutorFeature {
15
13
  }
16
14
  toSQL() {
17
15
  const { sql, parameters } = this.toSQLWithParams();
18
- return substituteParameters(sql, parameters);
16
+ const adapter = this.builder.getAdapter();
17
+ return adapter.render ? adapter.render(sql, parameters) : substituteParameters(sql, parameters);
19
18
  }
20
19
  async execute(options) {
21
- const client = ClickHouseConnection.getClient();
20
+ const adapter = this.builder.getAdapter();
22
21
  const { sql, parameters } = this.toSQLWithParams();
23
- const finalSQL = substituteParameters(sql, parameters);
22
+ const config = this.builder.getConfig();
23
+ const renderSql = adapter.render ? adapter.render(sql, parameters) : substituteParameters(sql, parameters);
24
24
  const startTime = Date.now();
25
25
  logger.logQuery({
26
- query: finalSQL,
26
+ query: renderSql,
27
27
  parameters,
28
28
  startTime,
29
29
  status: 'started',
@@ -31,14 +31,13 @@ export class ExecutorFeature {
31
31
  ...options?.logContext
32
32
  });
33
33
  try {
34
- const result = await client.query({
35
- query: finalSQL,
36
- format: 'JSONEachRow'
34
+ const rows = await adapter.query(sql, parameters, {
35
+ clickhouseSettings: config.settings,
36
+ queryId: options?.queryId,
37
37
  });
38
- const rows = await result.json();
39
38
  const endTime = Date.now();
40
39
  logger.logQuery({
41
- query: finalSQL,
40
+ query: renderSql,
42
41
  parameters,
43
42
  startTime,
44
43
  endTime,
@@ -54,7 +53,7 @@ export class ExecutorFeature {
54
53
  catch (error) {
55
54
  const endTime = Date.now();
56
55
  logger.logQuery({
57
- query: finalSQL,
56
+ query: renderSql,
58
57
  parameters,
59
58
  startTime,
60
59
  endTime,
@@ -68,26 +67,27 @@ export class ExecutorFeature {
68
67
  }
69
68
  }
70
69
  async stream() {
71
- const client = ClickHouseConnection.getClient();
70
+ const adapter = this.builder.getAdapter();
72
71
  const { sql, parameters } = this.toSQLWithParams();
73
- const finalSQL = substituteParameters(sql, parameters);
72
+ const config = this.builder.getConfig();
73
+ const renderSql = adapter.render ? adapter.render(sql, parameters) : substituteParameters(sql, parameters);
74
74
  const startTime = Date.now();
75
75
  logger.logQuery({
76
- query: finalSQL,
76
+ query: renderSql,
77
77
  parameters,
78
78
  startTime,
79
79
  status: 'started'
80
80
  });
81
81
  try {
82
- const result = await client.query({
83
- query: finalSQL,
84
- format: 'JSONEachRow'
82
+ if (!adapter.stream) {
83
+ throw new Error(`Streaming is not supported by adapter "${adapter.name}".`);
84
+ }
85
+ const webStream = await adapter.stream(sql, parameters, {
86
+ clickhouseSettings: config.settings,
85
87
  });
86
- const stream = result.stream();
87
- const webStream = createJsonEachRowStream(stream);
88
88
  const endTime = Date.now();
89
89
  logger.logQuery({
90
- query: finalSQL,
90
+ query: renderSql,
91
91
  parameters,
92
92
  startTime,
93
93
  endTime,
@@ -99,7 +99,7 @@ export class ExecutorFeature {
99
99
  catch (error) {
100
100
  const endTime = Date.now();
101
101
  logger.logQuery({
102
- query: finalSQL,
102
+ query: renderSql,
103
103
  parameters,
104
104
  startTime,
105
105
  endTime,
@@ -112,35 +112,8 @@ export class ExecutorFeature {
112
112
  }
113
113
  toSQLWithoutParameters() {
114
114
  const config = this.builder.getConfig();
115
- const formatter = this.builder.getFormatter();
116
- const parts = [];
117
- if (config.ctes?.length) {
118
- parts.push(`WITH ${config.ctes.join(', ')}`);
119
- }
120
- parts.push(`SELECT ${formatter.formatSelect(config)}`);
121
- parts.push(`FROM ${this.builder.getTableName()}`);
122
- if (config.joins?.length) {
123
- parts.push(formatter.formatJoins(config));
124
- }
125
- if (config.where?.length) {
126
- parts.push(`WHERE ${formatter.formatWhere(config)}`);
127
- }
128
- if (config.groupBy?.length) {
129
- parts.push(`GROUP BY ${formatter.formatGroupBy(config)}`);
130
- }
131
- if (config.having?.length) {
132
- parts.push(`HAVING ${config.having.join(' AND ')}`);
133
- }
134
- if (config.orderBy?.length) {
135
- const orderBy = config.orderBy
136
- .map(({ column, direction }) => `${String(column)} ${direction}`.trim())
137
- .join(', ');
138
- parts.push(`ORDER BY ${orderBy}`);
139
- }
140
- if (config.limit) {
141
- const offsetClause = config.offset ? `OFFSET ${config.offset}` : '';
142
- parts.push(`LIMIT ${config.limit} ${offsetClause}`);
143
- }
144
- return parts.join(' ').trim();
115
+ return this.builder.getDialect().compileQuery(config, {
116
+ tableName: this.builder.getTableName(),
117
+ });
145
118
  }
146
119
  }
@@ -21,7 +21,7 @@ export declare class FilteringFeature<Schema extends SchemaDefinition<Schema>, S
21
21
  joins?: import("../../types/base.js").JoinClause[];
22
22
  ctes?: string[];
23
23
  unionQueries?: string[];
24
- settings?: string;
24
+ settings?: import("@clickhouse/client-common").ClickHouseSettings;
25
25
  };
26
26
  addExpressionCondition(conjunction: 'AND' | 'OR', expression: PredicateExpression): {
27
27
  where: import("../../types/base.js").WhereCondition[];
@@ -39,7 +39,7 @@ export declare class FilteringFeature<Schema extends SchemaDefinition<Schema>, S
39
39
  joins?: import("../../types/base.js").JoinClause[];
40
40
  ctes?: string[];
41
41
  unionQueries?: string[];
42
- settings?: string;
42
+ settings?: import("@clickhouse/client-common").ClickHouseSettings;
43
43
  };
44
44
  startWhereGroup(): {
45
45
  where: import("../../types/base.js").WhereCondition[];
@@ -57,7 +57,7 @@ export declare class FilteringFeature<Schema extends SchemaDefinition<Schema>, S
57
57
  parameters?: any[];
58
58
  ctes?: string[];
59
59
  unionQueries?: string[];
60
- settings?: string;
60
+ settings?: import("@clickhouse/client-common").ClickHouseSettings;
61
61
  };
62
62
  startOrWhereGroup(): {
63
63
  where: import("../../types/base.js").WhereCondition[];
@@ -75,7 +75,7 @@ export declare class FilteringFeature<Schema extends SchemaDefinition<Schema>, S
75
75
  parameters?: any[];
76
76
  ctes?: string[];
77
77
  unionQueries?: string[];
78
- settings?: string;
78
+ settings?: import("@clickhouse/client-common").ClickHouseSettings;
79
79
  };
80
80
  endWhereGroup(): {
81
81
  where: import("../../types/base.js").WhereCondition[];
@@ -93,7 +93,7 @@ export declare class FilteringFeature<Schema extends SchemaDefinition<Schema>, S
93
93
  parameters?: any[];
94
94
  ctes?: string[];
95
95
  unionQueries?: string[];
96
- settings?: string;
96
+ settings?: import("@clickhouse/client-common").ClickHouseSettings;
97
97
  };
98
98
  }
99
99
  //# sourceMappingURL=filtering.d.ts.map
@@ -20,7 +20,7 @@ export declare class JoinFeature<Schema extends SchemaDefinition<Schema>, State
20
20
  parameters?: any[];
21
21
  ctes?: string[];
22
22
  unionQueries?: string[];
23
- settings?: string;
23
+ settings?: import("@clickhouse/client-common").ClickHouseSettings;
24
24
  };
25
25
  }
26
26
  //# sourceMappingURL=joins.d.ts.map
@@ -20,7 +20,7 @@ export declare class QueryModifiersFeature<Schema extends SchemaDefinition<Schem
20
20
  parameters?: any[];
21
21
  ctes?: string[];
22
22
  unionQueries?: string[];
23
- settings?: string;
23
+ settings?: import("@clickhouse/client-common").ClickHouseSettings;
24
24
  };
25
25
  addLimit(count: number): {
26
26
  limit: number;
@@ -38,7 +38,7 @@ export declare class QueryModifiersFeature<Schema extends SchemaDefinition<Schem
38
38
  parameters?: any[];
39
39
  ctes?: string[];
40
40
  unionQueries?: string[];
41
- settings?: string;
41
+ settings?: import("@clickhouse/client-common").ClickHouseSettings;
42
42
  };
43
43
  addOffset(count: number): {
44
44
  offset: number;
@@ -56,7 +56,7 @@ export declare class QueryModifiersFeature<Schema extends SchemaDefinition<Schem
56
56
  parameters?: any[];
57
57
  ctes?: string[];
58
58
  unionQueries?: string[];
59
- settings?: string;
59
+ settings?: import("@clickhouse/client-common").ClickHouseSettings;
60
60
  };
61
61
  addOrderBy(column: string, direction?: OrderDirection): {
62
62
  orderBy: {
@@ -74,7 +74,7 @@ export declare class QueryModifiersFeature<Schema extends SchemaDefinition<Schem
74
74
  parameters?: any[];
75
75
  ctes?: string[];
76
76
  unionQueries?: string[];
77
- settings?: string;
77
+ settings?: import("@clickhouse/client-common").ClickHouseSettings;
78
78
  };
79
79
  addHaving(condition: string, parameters?: any[]): {
80
80
  having: string[];
@@ -92,7 +92,7 @@ export declare class QueryModifiersFeature<Schema extends SchemaDefinition<Schem
92
92
  joins?: import("../../types/base.js").JoinClause[];
93
93
  ctes?: string[];
94
94
  unionQueries?: string[];
95
- settings?: string;
95
+ settings?: import("@clickhouse/client-common").ClickHouseSettings;
96
96
  };
97
97
  setDistinct(): {
98
98
  distinct: boolean;
@@ -110,7 +110,7 @@ export declare class QueryModifiersFeature<Schema extends SchemaDefinition<Schem
110
110
  parameters?: any[];
111
111
  ctes?: string[];
112
112
  unionQueries?: string[];
113
- settings?: string;
113
+ settings?: import("@clickhouse/client-common").ClickHouseSettings;
114
114
  };
115
115
  }
116
116
  //# sourceMappingURL=query-modifiers.d.ts.map
@@ -1,7 +1,8 @@
1
+ import type { DatabaseAdapter, QueryExecutionOptions } from './adapters/database-adapter.js';
2
+ import type { SqlDialect } from './dialects/sql-dialect.js';
1
3
  import { CrossFilter } from './cross-filter.js';
2
4
  import { FilterOperator, OperatorValueMap, OrderDirection, QueryConfig } from '../types/index.js';
3
5
  import { AnySchema } from '../types/schema.js';
4
- import { SQLFormatter } from './formatters/sql-formatter.js';
5
6
  import { ExecutorFeature } from './features/executor.js';
6
7
  import { JoinRelationships, JoinPathOptions } from './join-relationships.js';
7
8
  import { PredicateBuilder, PredicateExpression } from './utils/predicate-builder.js';
@@ -10,11 +11,12 @@ import type { ClickHouseClient as NodeClickHouseClient } from '@clickhouse/clien
10
11
  import type { ClickHouseClient as WebClickHouseClient } from '@clickhouse/client-web';
11
12
  import type { CacheOptions, CacheConfig } from './cache/types.js';
12
13
  import type { QueryRuntimeContext } from './cache/runtime-context.js';
13
- import type { BuilderState, AnyBuilderState, SchemaDefinition, InitialState, UpdateOutput, WidenTables, AppendToOutput, BaseRow, AddAlias } from './types/builder-state.js';
14
+ import type { BuilderState, AnyBuilderState, SchemaDefinition, InitialState, UpdateOutput, WidenTables, AppendToOutput, BaseRow, AddAlias, AddScalar } from './types/builder-state.js';
14
15
  import { SelectableItem, SelectableColumn, SelectionResult, ColumnSelectionValue } from './types/select-types.js';
15
16
  type WhereColumn<State extends AnyBuilderState> = SelectableColumn<State>;
16
17
  type ColumnOperatorValue<Schema extends SchemaDefinition<Schema>, State extends BuilderState<Schema, string, any, keyof Schema, Partial<Record<string, keyof Schema>>>, Column extends WhereColumn<State>, Op extends keyof OperatorValueMap<any, Schema>> = OperatorValueMap<ColumnSelectionValue<State, Column>, Schema>[Op];
17
18
  type ClickHouseClient = NodeClickHouseClient | WebClickHouseClient;
19
+ type ScalarAlias<Alias extends string> = Alias extends `${string} ${string}` ? never : Alias;
18
20
  export interface ExecuteOptions {
19
21
  queryId?: string;
20
22
  cache?: CacheOptions | false;
@@ -44,7 +46,6 @@ export declare class QueryBuilder<Schema extends SchemaDefinition<Schema>, State
44
46
  private config;
45
47
  private tableName;
46
48
  private state;
47
- private formatter;
48
49
  private aggregations;
49
50
  private joins;
50
51
  private filtering;
@@ -53,12 +54,15 @@ export declare class QueryBuilder<Schema extends SchemaDefinition<Schema>, State
53
54
  private modifiers;
54
55
  private crossFiltering;
55
56
  private runtime;
57
+ private adapter;
58
+ private dialect;
56
59
  private cacheOptions?;
57
- constructor(tableName: string, state: State, runtime: QueryRuntimeContext);
60
+ constructor(tableName: string, state: State, runtime: QueryRuntimeContext, adapter: DatabaseAdapter, dialect: SqlDialect);
58
61
  private fork;
59
62
  debug(): this;
60
63
  cache(options: CacheOptions | false): this;
61
64
  withCTE(alias: string, subquery: QueryBuilder<any, AnyBuilderState> | string): this;
65
+ withScalar<Alias extends string, TValue>(alias: ScalarAlias<Alias>, expressionBuilder: (expr: PredicateBuilder<State>) => PredicateExpression<TValue>): QueryBuilder<Schema, AddScalar<State, Alias, TValue>>;
62
66
  /**
63
67
  * Groups results by a time interval using a specified ClickHouse function.
64
68
  *
@@ -103,8 +107,9 @@ export declare class QueryBuilder<Schema extends SchemaDefinition<Schema>, State
103
107
  max<Column extends keyof BaseRow<State>, Alias extends string = `${Column & string}_max`>(column: Column, alias?: Alias): QueryBuilder<Schema, AppendToOutput<State, Record<Alias, string>>>;
104
108
  private applyAggregation;
105
109
  getTableName(): string;
106
- getFormatter(): SQLFormatter;
107
110
  getRuntimeContext(): QueryRuntimeContext;
111
+ getAdapter(): DatabaseAdapter;
112
+ getDialect(): SqlDialect;
108
113
  getCacheOptions(): CacheOptions | undefined;
109
114
  getExecutor(): ExecutorFeature<Schema, State>;
110
115
  toSQL(): string;
@@ -222,12 +227,20 @@ export declare class QueryBuilder<Schema extends SchemaDefinition<Schema>, State
222
227
  withRelation(name: string, options?: JoinPathOptions): this;
223
228
  }
224
229
  export type SelectQB<Schema extends SchemaDefinition<Schema>, Tables extends string, Output, BaseTable extends keyof Schema> = QueryBuilder<Schema, BuilderState<Schema, Tables, Output, BaseTable, {}>>;
225
- export type CreateQueryBuilderConfig = ClickHouseConfig & {
230
+ export type CreateQueryBuilderConfig = (ClickHouseConfig & {
226
231
  cache?: CacheConfig;
232
+ adapter?: DatabaseAdapter;
233
+ dialect?: SqlDialect;
234
+ }) | {
235
+ adapter: DatabaseAdapter;
236
+ cache?: CacheConfig;
237
+ dialect?: SqlDialect;
227
238
  };
228
239
  export declare function createQueryBuilder<Schema extends SchemaDefinition<Schema>>(config: CreateQueryBuilderConfig): {
229
240
  cache: import("./cache/controller.js").CacheController;
230
- rawQuery<TResult = any>(sql: string, params?: unknown[]): Promise<TResult[][]>;
241
+ adapter: DatabaseAdapter;
242
+ dialect: SqlDialect;
243
+ rawQuery<TResult = any>(sql: string, params?: unknown[], options?: QueryExecutionOptions): Promise<TResult[]>;
231
244
  table<TableName extends Extract<keyof Schema, string>>(tableName: TableName): SelectQB<Schema, TableName, InitialState<Schema, TableName>["output"], TableName>;
232
245
  };
233
246
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"query-builder.d.ts","sourceRoot":"","sources":["../../src/core/query-builder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,WAAW,EAEZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAc,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAK7D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAGzD,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAiB,MAAM,yBAAyB,CAAC;AAE5F,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EAEpB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EAAE,kBAAkB,EAAE,iCAAiC,EAAE,MAAM,2BAA2B,CAAC;AACvG,OAAO,KAAK,EAAE,gBAAgB,IAAI,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,KAAK,EAAE,gBAAgB,IAAI,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAItE,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,cAAc,EACd,OAAO,EACP,QAAQ,EACT,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACrB,MAAM,yBAAyB,CAAC;AAEjC,KAAK,WAAW,CAAC,KAAK,SAAS,eAAe,IAAI,gBAAgB,CAAC,KAAK,CAAC,CAAC;AAE1E,KAAK,mBAAmB,CACtB,MAAM,SAAS,gBAAgB,CAAC,MAAM,CAAC,EACvC,KAAK,SAAS,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,MAAM,CAAC,CAAC,CAAC,EACpG,MAAM,SAAS,WAAW,CAAC,KAAK,CAAC,EACjC,EAAE,SAAS,MAAM,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,IAC5C,gBAAgB,CAAC,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;AAGtE,KAAK,gBAAgB,GAAG,oBAAoB,GAAG,mBAAmB,CAAC;AAEnE,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,YAAY,GAAG,KAAK,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,iCAAiC;IAC/E,iDAAiD;IACjD,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,iCAAiC,GAAG,sBAAsB,CAAC;AAE1F;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,IAAI,sBAAsB,CAEzF;AAED;;;GAGG;AACH,qBAAa,YAAY,CACvB,MAAM,SAAS,gBAAgB,CAAC,MAAM,CAAC,EACvC,KAAK,SAAS,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,MAAM,CAAC,CAAC,CAAC;IAEpG,OAAO,CAAC,MAAM,CAAC,aAAa,CAAyB;IAErD,OAAO,CAAC,MAAM,CAA4C;IAC1D,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,YAAY,CAAoC;IACxD,OAAO,CAAC,KAAK,CAA6B;IAC1C,OAAO,CAAC,SAAS,CAAkC;IACnD,OAAO,CAAC,SAAS,CAAkC;IACnD,OAAO,CAAC,QAAQ,CAAiC;IACjD,OAAO,CAAC,SAAS,CAAuC;IACxD,OAAO,CAAC,cAAc,CAAuC;IAC7D,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,YAAY,CAAC,CAAe;gBAGlC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,mBAAmB;IAc9B,OAAO,CAAC,IAAI;IAkBZ,KAAK;IAQL,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,KAAK,GAAG,IAAI;IAU1C,OAAO,CACL,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,YAAY,CAAC,GAAG,EAAE,eAAe,CAAC,GAAG,MAAM,GACpD,IAAI;IAKP;;;;;;;;;;;KAWC;IACD,mBAAmB,CACjB,MAAM,EAAE,gBAAgB,CAAC,KAAK,CAAC,EAC/B,QAAQ,EAAE,MAAM,EAChB,MAAM,GAAE,mBAAmB,GAAG,iBAAiB,GAAG,eAAe,GAAG,cAAc,GAAG,eAAe,GAAG,gBAAgB,GAAG,kBAAkB,GAAG,eAAqC,GACnL,IAAI;IAMP,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAStB,QAAQ,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI;IAKxC;;;;;OAKG;IACH,iBAAiB,CAAC,SAAS,SAAS,OAAO,CAAC,MAAM,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI;IACrH,iBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,IAAI;IAUpE;;;;;;;;;;OAUG;IACH,MAAM,CAAC,iBAAiB,EAAE,GAAG,GAAG,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IACzF,MAAM,CAAC,UAAU,SAAS,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAC5D,iBAAiB,EAAE,UAAU,GAC5B,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,EAAE,eAAe,CAAC,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAgDxF,WAAW,CAAC,UAAU,SAAS,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EACjE,GAAG,OAAO,EAAE,UAAU,GACrB,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,EAAE,eAAe,CAAC,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAIxF,GAAG,CAAC,MAAM,SAAS,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,SAAS,MAAM,GAAG,GAAG,MAAM,GAAG,MAAM,MAAM,EACtF,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,KAAK,GACZ,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAMrE,KAAK,CAAC,MAAM,SAAS,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,SAAS,MAAM,GAAG,GAAG,MAAM,GAAG,MAAM,QAAQ,EAC1F,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,KAAK,GACZ,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAMrE,GAAG,CAAC,MAAM,SAAS,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,SAAS,MAAM,GAAG,GAAG,MAAM,GAAG,MAAM,MAAM,EACtF,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,KAAK,GACZ,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAMrE,GAAG,CAAC,MAAM,SAAS,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,SAAS,MAAM,GAAG,GAAG,MAAM,GAAG,MAAM,MAAM,EACtF,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,KAAK,GACZ,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAMrE,GAAG,CAAC,MAAM,SAAS,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,SAAS,MAAM,GAAG,GAAG,MAAM,GAAG,MAAM,MAAM,EACtF,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,KAAK,GACZ,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAMrE,OAAO,CAAC,gBAAgB;IAoBxB,YAAY;IAIZ,YAAY;IAIZ,iBAAiB;IAIjB,eAAe;IAIf,WAAW;IAKX,KAAK,IAAI,MAAM;IAIf,eAAe,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,GAAG,EAAE,CAAA;KAAE;IAIrD,OAAO,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;IAIvD,MAAM,IAAI,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAI1D;;;OAGG;IACG,aAAa,CAAC,CAAC,GAAG,IAAI,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBhG,OAAO,CAAC,mBAAmB;IAgC3B;;;;;;;;;;;OAWG;IACH,KAAK,CACH,iBAAiB,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC,KAAK,mBAAmB,GACxE,IAAI;IACP,KAAK,CAAC,MAAM,SAAS,WAAW,CAAC,KAAK,CAAC,EAAE,EAAE,SAAS,MAAM,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,EACrF,eAAe,EAAE,MAAM,GAAG,MAAM,EAAE,EAClC,QAAQ,EAAE,EAAE,EACZ,KAAK,EAAE,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,GACpD,IAAI;IACP;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,MAAM,SAAS,WAAW,CAAC,KAAK,CAAC,EACrC,OAAO,EAAE,MAAM,EAAE,EACjB,QAAQ,EAAE,SAAS,GAAG,eAAe,EACrC,KAAK,EAAE,GAAG,GACT,IAAI;IA8BP,OAAO,CACL,iBAAiB,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC,KAAK,mBAAmB,GACxE,IAAI;IACP,OAAO,CAAC,MAAM,SAAS,WAAW,CAAC,KAAK,CAAC,EACvC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,cAAc,EACxB,KAAK,EAAE,GAAG,GACT,IAAI;IACP,OAAO,CAAC,MAAM,SAAS,WAAW,CAAC,KAAK,CAAC,EACvC,OAAO,EAAE,MAAM,EAAE,EACjB,QAAQ,EAAE,SAAS,GAAG,eAAe,EACrC,KAAK,EAAE,GAAG,GACT,IAAI;IA6BP;;;;;;;;;;OAUG;IACH,UAAU,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,IAAI,KAAK,IAAI,GAAG,IAAI;IAOnD;;;;;;;;;;OAUG;IACH,YAAY,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,IAAI,KAAK,IAAI,GAAG,IAAI;IAOrD;;;;;;;;OAQG;IACH,OAAO,CAAC,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI;IAMhF,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK1B,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK3B;;;;;;;;;OASG;IACH,OAAO,CACL,MAAM,EAAE,gBAAgB,CAAC,KAAK,CAAC,EAC/B,SAAS,GAAE,cAAsB,GAChC,IAAI;IAKP;;;;;;;;OAQG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI;IAKnD,QAAQ,IAAI,IAAI;IAKhB,YAAY,CAAC,MAAM,SAAS,MAAM,OAAO,CAAC,KAAK,CAAC,EAC9C,MAAM,EAAE,MAAM,EACd,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,GAC3D,IAAI;IAOP,SAAS,CAAC,SAAS,SAAS,OAAO,CAAC,MAAM,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EACrG,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,EAChC,WAAW,EAAE,GAAG,SAAS,GAAG,MAAM,IAAI,MAAM,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,EAAE,EACxE,KAAK,CAAC,EAAE,KAAK,GACZ,YAAY,CACb,MAAM,EACN,KAAK,SAAS,MAAM,GAClB,QAAQ,CAAC,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,GACzD,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAChC;IAID,QAAQ,CAAC,SAAS,SAAS,OAAO,CAAC,MAAM,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EACpG,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,EAChC,WAAW,EAAE,GAAG,SAAS,GAAG,MAAM,IAAI,MAAM,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,EAAE,EACxE,KAAK,CAAC,EAAE,KAAK,GACZ,YAAY,CACb,MAAM,EACN,KAAK,SAAS,MAAM,GAClB,QAAQ,CAAC,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,GACzD,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAChC;IAID,SAAS,CAAC,SAAS,SAAS,OAAO,CAAC,MAAM,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EACrG,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,EAChC,WAAW,EAAE,GAAG,SAAS,GAAG,MAAM,IAAI,MAAM,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,EAAE,EACxE,KAAK,CAAC,EAAE,KAAK,GACZ,YAAY,CACb,MAAM,EACN,KAAK,SAAS,MAAM,GAClB,QAAQ,CAAC,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,GACzD,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAChC;IAID,QAAQ,CAAC,SAAS,SAAS,OAAO,CAAC,MAAM,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EACpG,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,EAChC,WAAW,EAAE,GAAG,SAAS,GAAG,MAAM,IAAI,MAAM,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,EAAE,EACxE,KAAK,CAAC,EAAE,KAAK,GACZ,YAAY,CACb,MAAM,EACN,KAAK,SAAS,MAAM,GAClB,QAAQ,CAAC,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,GACzD,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAChC;IAID,OAAO,CAAC,SAAS;IAyBjB,SAAS;IAIT,MAAM,CAAC,oBAAoB,CAAC,CAAC,SAAS,gBAAgB,CAAC,CAAC,CAAC,EACvD,aAAa,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAClC,IAAI;IAIP;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI;CA2B5D;AAED,MAAM,MAAM,QAAQ,CAClB,MAAM,SAAS,gBAAgB,CAAC,MAAM,CAAC,EACvC,MAAM,SAAS,MAAM,EACrB,MAAM,EACN,SAAS,SAAS,MAAM,MAAM,IAC5B,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC;AAE9E,MAAM,MAAM,wBAAwB,GAAG,gBAAgB,GAAG;IACxD,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB,CAAC;AAYF,wBAAgB,kBAAkB,CAAC,MAAM,SAAS,gBAAgB,CAAC,MAAM,CAAC,EACxE,MAAM,EAAE,wBAAwB;;aAUf,OAAO,aAAa,MAAM,WAAU,OAAO,EAAE;UAStD,SAAS,SAAS,OAAO,CAAC,MAAM,MAAM,EAAE,MAAM,CAAC,aAAa,SAAS,GAAG,QAAQ,CACpF,MAAM,EACN,SAAS,EACT,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,EACzC,SAAS,CACV;EAaJ"}
1
+ {"version":3,"file":"query-builder.d.ts","sourceRoot":"","sources":["../../src/core/query-builder.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { ClickHouseConnection } from './connection.js';
2
- import { SQLFormatter } from './formatters/sql-formatter.js';
1
+ import { createClickHouseAdapter } from './adapters/clickhouse-adapter.js';
2
+ import { ClickHouseDialect } from './dialects/clickhouse-dialect.js';
3
3
  import { AggregationFeature } from './features/aggregations.js';
4
4
  import { JoinFeature } from './features/joins.js';
5
5
  import { FilteringFeature } from './features/filtering.js';
@@ -10,7 +10,6 @@ import { FilterValidator } from './validators/filter-validator.js';
10
10
  import { createPredicateBuilder, } from './utils/predicate-builder.js';
11
11
  import { CrossFilteringFeature } from './features/cross-filtering.js';
12
12
  import { executeWithCache } from './cache/cache-manager.js';
13
- import { substituteParameters } from './utils.js';
14
13
  import { mergeCacheOptionsPartial, initializeCacheRuntime } from './cache/utils.js';
15
14
  /**
16
15
  * Type guard to check if a config is a client-based configuration.
@@ -27,7 +26,6 @@ export class QueryBuilder {
27
26
  config = {};
28
27
  tableName;
29
28
  state;
30
- formatter = new SQLFormatter();
31
29
  aggregations;
32
30
  joins;
33
31
  filtering;
@@ -36,11 +34,15 @@ export class QueryBuilder {
36
34
  modifiers;
37
35
  crossFiltering;
38
36
  runtime;
37
+ adapter;
38
+ dialect;
39
39
  cacheOptions;
40
- constructor(tableName, state, runtime) {
40
+ constructor(tableName, state, runtime, adapter, dialect) {
41
41
  this.tableName = tableName;
42
42
  this.state = state;
43
43
  this.runtime = runtime;
44
+ this.adapter = adapter;
45
+ this.dialect = dialect;
44
46
  this.aggregations = new AggregationFeature(this);
45
47
  this.joins = new JoinFeature(this);
46
48
  this.filtering = new FilteringFeature(this);
@@ -50,7 +52,7 @@ export class QueryBuilder {
50
52
  this.crossFiltering = new CrossFilteringFeature(this);
51
53
  }
52
54
  fork(state, config) {
53
- const builder = new QueryBuilder(this.tableName, state, this.runtime);
55
+ const builder = new QueryBuilder(this.tableName, state, this.runtime, this.adapter, this.dialect);
54
56
  builder.config = { ...config };
55
57
  builder.cacheOptions = this.cacheOptions;
56
58
  return builder;
@@ -75,6 +77,25 @@ export class QueryBuilder {
75
77
  this.config = this.analytics.addCTE(alias, subquery);
76
78
  return this;
77
79
  }
80
+ // --- Analytics Helper: Add a scalar WITH alias.
81
+ withScalar(alias, expressionBuilder) {
82
+ if (!/^[A-Za-z_][A-Za-z0-9_]*$/.test(alias)) {
83
+ throw new Error(`Invalid scalar alias "${alias}". Use an unquoted SQL identifier (letters, numbers, underscore; cannot start with a number).`);
84
+ }
85
+ const expression = expressionBuilder(createPredicateBuilder());
86
+ const nextConfig = this.analytics.addScalar(alias, expression);
87
+ const nextState = {
88
+ ...this.state,
89
+ scalars: {
90
+ ...this.state.scalars,
91
+ [alias]: undefined,
92
+ },
93
+ };
94
+ const builder = new QueryBuilder(this.tableName, nextState, this.runtime, this.adapter, this.dialect);
95
+ builder.config = { ...nextConfig };
96
+ builder.cacheOptions = this.cacheOptions;
97
+ return builder;
98
+ }
78
99
  /**
79
100
  * Groups results by a time interval using a specified ClickHouse function.
80
101
  *
@@ -88,7 +109,7 @@ export class QueryBuilder {
88
109
  * @returns The current QueryBuilder instance.
89
110
  */
90
111
  groupByTimeInterval(column, interval, method = 'toStartOfInterval') {
91
- this.config = this.analytics.addTimeInterval(String(column), interval, method);
112
+ this.config = this.analytics.addTimeInterval(String(column), interval, method, this.dialect);
92
113
  return this;
93
114
  }
94
115
  // --- Analytics Helper: Add a raw SQL fragment.
@@ -178,12 +199,15 @@ export class QueryBuilder {
178
199
  getTableName() {
179
200
  return this.tableName;
180
201
  }
181
- getFormatter() {
182
- return this.formatter;
183
- }
184
202
  getRuntimeContext() {
185
203
  return this.runtime;
186
204
  }
205
+ getAdapter() {
206
+ return this.adapter;
207
+ }
208
+ getDialect() {
209
+ return this.dialect;
210
+ }
187
211
  getCacheOptions() {
188
212
  return this.cacheOptions;
189
213
  }
@@ -435,30 +459,18 @@ export class QueryBuilder {
435
459
  return this;
436
460
  }
437
461
  }
438
- function deriveNamespace(config) {
439
- if (isClientConfig(config)) {
440
- return 'client';
441
- }
442
- const host = 'host' in config ? config.host : 'unknown-host';
443
- const database = 'database' in config ? config.database : 'default';
444
- const username = 'username' in config ? config.username : 'default';
445
- return `${host || 'unknown-host'}|${database || 'default'}|${username || 'default'}`;
446
- }
447
462
  export function createQueryBuilder(config) {
448
- const { cache: cacheConfig, ...connectionConfig } = config;
449
- ClickHouseConnection.initialize(connectionConfig);
450
- const namespace = cacheConfig?.namespace || deriveNamespace(connectionConfig);
463
+ const { cache: cacheConfig, adapter, dialect } = config;
464
+ const resolvedAdapter = adapter ?? createClickHouseAdapter(config);
465
+ const resolvedDialect = dialect ?? new ClickHouseDialect();
466
+ const namespace = cacheConfig?.namespace || resolvedAdapter.namespace || resolvedAdapter.name;
451
467
  const { runtime, cacheController } = initializeCacheRuntime(cacheConfig, namespace);
452
468
  return {
453
469
  cache: cacheController,
454
- async rawQuery(sql, params = []) {
455
- const client = ClickHouseConnection.getClient();
456
- const finalSQL = substituteParameters(sql, params);
457
- const result = await client.query({
458
- query: finalSQL,
459
- format: 'JSONEachRow'
460
- });
461
- return result.json();
470
+ adapter: resolvedAdapter,
471
+ dialect: resolvedDialect,
472
+ async rawQuery(sql, params = [], options) {
473
+ return resolvedAdapter.query(sql, params, options);
462
474
  },
463
475
  table(tableName) {
464
476
  const state = {
@@ -467,9 +479,10 @@ export function createQueryBuilder(config) {
467
479
  output: {},
468
480
  baseTable: tableName,
469
481
  base: {},
470
- aliases: {}
482
+ aliases: {},
483
+ scalars: {}
471
484
  };
472
- return new QueryBuilder(tableName, state, runtime);
485
+ return new QueryBuilder(tableName, state, runtime, resolvedAdapter, resolvedDialect);
473
486
  }
474
487
  };
475
488
  }
@@ -6,7 +6,9 @@ export declare const TEST_CONNECTION_CONFIG: {
6
6
  };
7
7
  export declare const initializeTestConnection: () => Promise<{
8
8
  cache: import("../../cache/controller.js").CacheController;
9
- rawQuery<TResult = any>(sql: string, params?: unknown[]): Promise<TResult[][]>;
9
+ adapter: import("../../adapters/database-adapter.js").DatabaseAdapter;
10
+ dialect: import("../../dialects/sql-dialect.js").SqlDialect;
11
+ rawQuery<TResult = any>(sql: string, params?: unknown[], options?: import("../../adapters/database-adapter.js").QueryExecutionOptions): Promise<TResult[]>;
10
12
  table<TableName extends never>(tableName: TableName): import("../../query-builder.js").SelectQB<import("../../types/builder-state.js").SchemaDefinition<unknown>, TableName, import("../../../index.js").TableRecord<import("../../types/builder-state.js").SchemaDefinition<unknown>[TableName]>, TableName>;
11
13
  }>;
12
14
  export declare const ensureConnectionInitialized: () => import("@clickhouse/client").ClickHouseClient | import("@clickhouse/client-web").ClickHouseClient;
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../../../src/core/tests/integration/setup.ts"],"names":[],"mappings":"AAgDA,eAAO,MAAM,sBAAsB;;;;;CAAS,CAAC;AAG7C,eAAO,MAAM,wBAAwB;;;;EAyBpC,CAAC;AAGF,eAAO,MAAM,2BAA2B,yGAevC,CAAC;AAGF,eAAO,MAAM,iBAAiB,QAAa,OAAO,CAAC,OAAO,CAOzD,CAAC;AAGF,eAAO,MAAM,wBAAwB,QAAa,OAAO,CAAC,OAAO,CAahE,CAAC;AAGF,eAAO,MAAM,kBAAkB,GAAU,eAAe,MAAM,KAAG,OAAO,CAAC,OAAO,CAO/E,CAAC;AAGF,eAAO,MAAM,iBAAiB,QAAa,OAAO,CAAC,OAAO,CAQzD,CAAC;AAGF,eAAO,MAAM,wBAAwB,QAAa,OAAO,CAAC,IAAI,CAwC7D,CAAC;AAGF,eAAO,MAAM,iBAAiB,GAC5B,oBAAgB,EAChB,sBAAoB,KACnB,OAAO,CAAC,IAAI,CAad,CAAC;AAGF,eAAO,MAAM,uBAAuB,QAAa,OAAO,CAAC,IAAI,CA0B5D,CAAC;AAGF,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,KAAK,CAAC;QAChB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,OAAO,CAAC;KACpB,CAAC,CAAC;IACH,KAAK,EAAE,KAAK,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC,CAAC;IACH,MAAM,EAAE,KAAK,CAAC;QACZ,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC,CAAC;CACJ;AAkDD,eAAO,MAAM,SAAS,EAAE,cAAoC,CAAC;AAK7D,eAAO,MAAM,iBAAiB,QAAa,OAAO,CAAC,IAAI,CAkGtD,CAAC"}
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../../../src/core/tests/integration/setup.ts"],"names":[],"mappings":"AAgDA,eAAO,MAAM,sBAAsB;;;;;CAAS,CAAC;AAG7C,eAAO,MAAM,wBAAwB;;;;;;EAyBpC,CAAC;AAGF,eAAO,MAAM,2BAA2B,yGAevC,CAAC;AAGF,eAAO,MAAM,iBAAiB,QAAa,OAAO,CAAC,OAAO,CAOzD,CAAC;AAGF,eAAO,MAAM,wBAAwB,QAAa,OAAO,CAAC,OAAO,CAahE,CAAC;AAGF,eAAO,MAAM,kBAAkB,GAAU,eAAe,MAAM,KAAG,OAAO,CAAC,OAAO,CAO/E,CAAC;AAGF,eAAO,MAAM,iBAAiB,QAAa,OAAO,CAAC,OAAO,CAQzD,CAAC;AAGF,eAAO,MAAM,wBAAwB,QAAa,OAAO,CAAC,IAAI,CAwC7D,CAAC;AAGF,eAAO,MAAM,iBAAiB,GAC5B,oBAAgB,EAChB,sBAAoB,KACnB,OAAO,CAAC,IAAI,CAad,CAAC;AAGF,eAAO,MAAM,uBAAuB,QAAa,OAAO,CAAC,IAAI,CA0B5D,CAAC;AAGF,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,KAAK,CAAC;QAChB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,OAAO,CAAC;KACpB,CAAC,CAAC;IACH,KAAK,EAAE,KAAK,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC,CAAC;IACH,MAAM,EAAE,KAAK,CAAC;QACZ,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC,CAAC;CACJ;AAkDD,eAAO,MAAM,SAAS,EAAE,cAAoC,CAAC;AAK7D,eAAO,MAAM,iBAAiB,QAAa,OAAO,CAAC,IAAI,CAkGtD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"test-utils.d.ts","sourceRoot":"","sources":["../../../src/core/tests/test-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGzD,MAAM,MAAM,eAAe,GAAG;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,SAAS,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,EAAE,QAAQ,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,QAAQ,CAAC;IAEnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,qBAAqB,CAAC;IAChC,IAAI,EAAE,eAAe,CAAC;IACtB,QAAQ,EAAE,qCAAqC,CAAC;IAChD,aAAa,EAAE,kBAAkB,CAAC;IAClC,UAAU,EAAE,+BAA+B,CAAC;IAC5C,aAAa,EAAE,4CAA4C,CAAC;IAC5D,aAAa,EAAE,yBAAyB,CAAC;IACzC,WAAW,EAAE,4BAA4B,CAAC;IAC1C,iBAAiB,EAAE,eAAe,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,OAAO,CAAC;IACZ,SAAS,EAAE,QAAQ,CAAC;IACpB,KAAK,EAAE,QAAQ,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IAEnB,OAAO,EAAE,qBAAqB,CAAC;IAC/B,WAAW,EAAE,+CAA+C,CAAC;IAC7D,KAAK,EAAE,+BAA+B,CAAC;IACvC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,eAAe,CAAC;IAC5B,KAAK,EAAE,WAAW,CAAC;CACpB;AAED,eAAO,MAAM,YAAY,EAAE,UAmC1B,CAAC;AAoBF,wBAAgB,iBAAiB,IAAI,QAAQ,CAAC,UAAU,EAAE,OAAO,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAU5G;AAED,wBAAgB,gBAAgB,IAAI,QAAQ,CAAC,UAAU,EAAE,YAAY,EAAE,WAAW,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,EAAE,YAAY,CAAC,CAU1H"}
1
+ {"version":3,"file":"test-utils.d.ts","sourceRoot":"","sources":["../../../src/core/tests/test-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAI7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAIzD,MAAM,MAAM,eAAe,GAAG;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,SAAS,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,EAAE,QAAQ,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,QAAQ,CAAC;IAEnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,qBAAqB,CAAC;IAChC,IAAI,EAAE,eAAe,CAAC;IACtB,QAAQ,EAAE,qCAAqC,CAAC;IAChD,aAAa,EAAE,kBAAkB,CAAC;IAClC,UAAU,EAAE,+BAA+B,CAAC;IAC5C,aAAa,EAAE,4CAA4C,CAAC;IAC5D,aAAa,EAAE,yBAAyB,CAAC;IACzC,WAAW,EAAE,4BAA4B,CAAC;IAC1C,iBAAiB,EAAE,eAAe,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,OAAO,CAAC;IACZ,SAAS,EAAE,QAAQ,CAAC;IACpB,KAAK,EAAE,QAAQ,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IAEnB,OAAO,EAAE,qBAAqB,CAAC;IAC/B,WAAW,EAAE,+CAA+C,CAAC;IAC7D,KAAK,EAAE,+BAA+B,CAAC;IACvC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,eAAe,CAAC;IAC5B,KAAK,EAAE,WAAW,CAAC;CACpB;AAED,eAAO,MAAM,YAAY,EAAE,UAmC1B,CAAC;AA6BF,wBAAgB,iBAAiB,IAAI,QAAQ,CAAC,UAAU,EAAE,OAAO,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAW5G;AAED,wBAAgB,gBAAgB,IAAI,QAAQ,CAAC,UAAU,EAAE,YAAY,EAAE,WAAW,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,EAAE,YAAY,CAAC,CAW1H"}