@chkit/core 0.1.0 → 0.1.2-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/flags.d.ts CHANGED
@@ -45,6 +45,11 @@ export interface SafeParseable<T> {
45
45
  };
46
46
  };
47
47
  }
48
+ /**
49
+ * Layer plugin-factory options under parsed data so registration-time defaults
50
+ * apply wherever the schema is evaluated (command dispatch, hooks).
51
+ */
52
+ export declare function withFactoryDefaults<T>(schema: SafeParseable<T>, defaults: Record<string, unknown>): SafeParseable<T>;
48
53
  /**
49
54
  * Two-layer option resolution: registration options → CLI flags.
50
55
  * Merges sources, validates through a schema, and throws ErrorClass on failure.
@@ -1 +1 @@
1
- {"version":3,"file":"flags.d.ts","sourceRoot":"","sources":["../src/flags.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAA;IACvC,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,GAAG,SAAS,CAAC,CAAA;AAEjF,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,OAAO,GAAG,SAAS,CAAA;IAC5B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,UAAU,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;CACjC,CAAA;AAED,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,IAAI;KACpD,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;CACtD,CAAA;AAED,wBAAgB,WAAW,CAAC,KAAK,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAE1E;AAED,wBAAgB,UAAU,CAAC,KAAK,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,EAC3D,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,CAAC,GACP,UAAU,CAAC,CAAC,CAAC,CAEf;AAED,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;gBACT,IAAI,EAAE,MAAM;CAKzB;AAED,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;gBACT,IAAI,EAAE,MAAM;CAKzB;AAID,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAA;CACpC;AAED,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;AAE1D,wBAAgB,QAAQ,CACtB,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,WAAW,GACnB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAYzB;AAED,2FAA2F;AAC3F,MAAM,WAAW,aAAa,CAAC,CAAC;IAC9B,SAAS,CAAC,IAAI,EAAE,OAAO,GACnB;QAAE,OAAO,EAAE,IAAI,CAAC;QAAC,IAAI,EAAE,CAAC,CAAA;KAAE,GAC1B;QAAE,OAAO,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE;YAAE,MAAM,EAAE,KAAK,CAAC;gBAAE,IAAI,EAAE,WAAW,EAAE,CAAC;gBAAC,OAAO,EAAE,MAAM,CAAA;aAAE,CAAC,CAAA;SAAE,CAAA;KAAE,CAAA;CAC3F;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAC9B,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,EACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,KAAK,EAAE,WAAW,EAClB,WAAW,EAAE,WAAW,EACxB,UAAU,GAAE,KAAK,OAAO,EAAE,MAAM,KAAK,KAAa,GACjD,CAAC,CAWH;AAID,wBAAgB,UAAU,CAAC,KAAK,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CA2EzG"}
1
+ {"version":3,"file":"flags.d.ts","sourceRoot":"","sources":["../src/flags.ts"],"names":[],"mappings":"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"}
package/dist/flags.js CHANGED
@@ -35,6 +35,20 @@ export function mapFlags(flags, mapping) {
35
35
  }
36
36
  return result;
37
37
  }
38
+ /**
39
+ * Layer plugin-factory options under parsed data so registration-time defaults
40
+ * apply wherever the schema is evaluated (command dispatch, hooks).
41
+ */
42
+ export function withFactoryDefaults(schema, defaults) {
43
+ return {
44
+ safeParse(data) {
45
+ return schema.safeParse({ ...defaults, ...(isPlainRecord(data) ? data : {}) });
46
+ },
47
+ };
48
+ }
49
+ function isPlainRecord(value) {
50
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
51
+ }
38
52
  /**
39
53
  * Two-layer option resolution: registration options → CLI flags.
40
54
  * Merges sources, validates through a schema, and throws ErrorClass on failure.
package/dist/flags.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"flags.js","sourceRoot":"","sources":["../src/flags.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flags.js","sourceRoot":"","sources":["../src/flags.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -7,9 +7,10 @@ export { createSnapshot } from './snapshot.js';
7
7
  export { splitTopLevelComma } from './key-clause.js';
8
8
  export { normalizeEngine, normalizeSQLFragment } from './sql-normalizer.js';
9
9
  export { toCreateSQL } from './sql.js';
10
+ export { applyOnClusterToPlan, onClusterClause } from './on-cluster.js';
10
11
  export { canonicalizeCodec, codec, codecsEqual, isGeneralCodec, isPreprocessorCodec, isRawCodec, parseCodec, renderCodec, } from './codec.js';
11
12
  export { assertValidDefinitions, validateDefinitions } from './validate.js';
12
- export { wrapPluginRun } from './plugin-error.js';
13
+ export { createPluginRunner, wrapPluginRun, type PluginRunContext } from './plugin-error.js';
13
14
  export { splitSqlStatements, extractExecutableStatements } from './sql-splitter.js';
14
15
  export { importModuleFile } from './ts-import.js';
15
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AACnF,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,EACL,iBAAiB,EACjB,KAAK,EACL,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,UAAU,EACV,UAAU,EACV,WAAW,GACZ,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAA;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AACnF,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACvE,OAAO,EACL,iBAAiB,EACjB,KAAK,EACL,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,UAAU,EACV,UAAU,EACV,WAAW,GACZ,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAC3E,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAC5F,OAAO,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAA;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA"}
package/dist/index.js CHANGED
@@ -7,9 +7,10 @@ export { createSnapshot } from './snapshot.js';
7
7
  export { splitTopLevelComma } from './key-clause.js';
8
8
  export { normalizeEngine, normalizeSQLFragment } from './sql-normalizer.js';
9
9
  export { toCreateSQL } from './sql.js';
10
+ export { applyOnClusterToPlan, onClusterClause } from './on-cluster.js';
10
11
  export { canonicalizeCodec, codec, codecsEqual, isGeneralCodec, isPreprocessorCodec, isRawCodec, parseCodec, renderCodec, } from './codec.js';
11
12
  export { assertValidDefinitions, validateDefinitions } from './validate.js';
12
- export { wrapPluginRun } from './plugin-error.js';
13
+ export { createPluginRunner, wrapPluginRun } from './plugin-error.js';
13
14
  export { splitSqlStatements, extractExecutableStatements } from './sql-splitter.js';
14
15
  export { importModuleFile } from './ts-import.js';
15
16
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AACnF,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,EACL,iBAAiB,EACjB,KAAK,EACL,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,UAAU,EACV,UAAU,EACV,WAAW,GACZ,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAA;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AACnF,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACvE,OAAO,EACL,iBAAiB,EACjB,KAAK,EACL,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,UAAU,EACV,UAAU,EACV,WAAW,GACZ,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAC3E,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAyB,MAAM,mBAAmB,CAAA;AAC5F,OAAO,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAA;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA"}
@@ -1,3 +1,10 @@
1
1
  export declare function splitTopLevelComma(input: string): string[];
2
2
  export declare function normalizeKeyColumns(values: string[] | undefined): string[];
3
+ /**
4
+ * A key entry references a table column only when it is a bare identifier.
5
+ * Anything else — function calls like `toDate(ts)`, arithmetic, or tuples — is
6
+ * an expression that ClickHouse validates itself, so it must not be checked
7
+ * against the table's declared column list.
8
+ */
9
+ export declare function isPlainColumnReference(token: string): boolean;
3
10
  //# sourceMappingURL=key-clause.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"key-clause.d.ts","sourceRoot":"","sources":["../src/key-clause.ts"],"names":[],"mappings":"AAAA,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAgD1D;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,GAAG,MAAM,EAAE,CAE1E"}
1
+ {"version":3,"file":"key-clause.d.ts","sourceRoot":"","sources":["../src/key-clause.ts"],"names":[],"mappings":"AAAA,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAgD1D;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,GAAG,MAAM,EAAE,CAE1E;AAID;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE7D"}
@@ -44,4 +44,14 @@ export function splitTopLevelComma(input) {
44
44
  export function normalizeKeyColumns(values) {
45
45
  return (values ?? []).flatMap((value) => splitTopLevelComma(value.trim()));
46
46
  }
47
+ const PLAIN_COLUMN_REFERENCE = /^[A-Za-z_][A-Za-z0-9_]*$/;
48
+ /**
49
+ * A key entry references a table column only when it is a bare identifier.
50
+ * Anything else — function calls like `toDate(ts)`, arithmetic, or tuples — is
51
+ * an expression that ClickHouse validates itself, so it must not be checked
52
+ * against the table's declared column list.
53
+ */
54
+ export function isPlainColumnReference(token) {
55
+ return PLAIN_COLUMN_REFERENCE.test(token);
56
+ }
47
57
  //# sourceMappingURL=key-clause.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"key-clause.js","sourceRoot":"","sources":["../src/key-clause.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,kBAAkB,CAAC,KAAa;IAC9C,MAAM,GAAG,GAAa,EAAE,CAAA;IACxB,IAAI,OAAO,GAAG,EAAE,CAAA;IAChB,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,IAAI,KAAK,GAA2B,IAAI,CAAA;IAExC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QAC3B,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QAEtC,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,IAAI,IAAI,CAAA;YACf,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,IAAI;gBAAE,KAAK,GAAG,IAAI,CAAA;YACjD,SAAQ;QACV,CAAC;QAED,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjD,KAAK,GAAG,IAAI,CAAA;YACZ,OAAO,IAAI,IAAI,CAAA;YACf,SAAQ;QACV,CAAC;QAED,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjB,KAAK,IAAI,CAAC,CAAA;YACV,OAAO,IAAI,IAAI,CAAA;YACf,SAAQ;QACV,CAAC;QAED,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjB,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;YAC9B,OAAO,IAAI,IAAI,CAAA;YACf,SAAQ;QACV,CAAC;QAED,IAAI,IAAI,KAAK,GAAG,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;YAC5B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACrC,OAAO,GAAG,EAAE,CAAA;YACZ,SAAQ;QACV,CAAC;QAED,OAAO,IAAI,IAAI,CAAA;IACjB,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;IAC3B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEnC,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,MAA4B;IAC9D,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;AAC5E,CAAC"}
1
+ {"version":3,"file":"key-clause.js","sourceRoot":"","sources":["../src/key-clause.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,kBAAkB,CAAC,KAAa;IAC9C,MAAM,GAAG,GAAa,EAAE,CAAA;IACxB,IAAI,OAAO,GAAG,EAAE,CAAA;IAChB,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,IAAI,KAAK,GAA2B,IAAI,CAAA;IAExC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QAC3B,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QAEtC,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,IAAI,IAAI,CAAA;YACf,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,IAAI;gBAAE,KAAK,GAAG,IAAI,CAAA;YACjD,SAAQ;QACV,CAAC;QAED,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjD,KAAK,GAAG,IAAI,CAAA;YACZ,OAAO,IAAI,IAAI,CAAA;YACf,SAAQ;QACV,CAAC;QAED,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjB,KAAK,IAAI,CAAC,CAAA;YACV,OAAO,IAAI,IAAI,CAAA;YACf,SAAQ;QACV,CAAC;QAED,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjB,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;YAC9B,OAAO,IAAI,IAAI,CAAA;YACf,SAAQ;QACV,CAAC;QAED,IAAI,IAAI,KAAK,GAAG,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;YAC5B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACrC,OAAO,GAAG,EAAE,CAAA;YACZ,SAAQ;QACV,CAAC;QAED,OAAO,IAAI,IAAI,CAAA;IACjB,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;IAC3B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEnC,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,MAA4B;IAC9D,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;AAC5E,CAAC;AAED,MAAM,sBAAsB,GAAG,0BAA0B,CAAA;AAEzD;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAAa;IAClD,OAAO,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAC3C,CAAC"}
@@ -163,6 +163,14 @@ export interface ChxUserClickHouseConfig {
163
163
  password?: string;
164
164
  database?: string;
165
165
  secure?: boolean;
166
+ /**
167
+ * Cluster name for self-managed multi-node clusters. When set, chkit emits
168
+ * `ON CLUSTER <name>` on generated DDL and stores its migration journal in a
169
+ * replicated engine. Leave unset for single-node, ClickHouse Cloud, or
170
+ * ObsessionDB (SharedMergeTree auto-replicates — `ON CLUSTER` is unnecessary).
171
+ * Accepts an identifier (e.g. `"my_cluster"`) or a macro (e.g. `"{cluster}"`).
172
+ */
173
+ cluster?: string;
166
174
  }
167
175
  export interface ChxResolvedClickHouseConfig {
168
176
  url: string;
@@ -170,6 +178,7 @@ export interface ChxResolvedClickHouseConfig {
170
178
  password: string;
171
179
  database: string;
172
180
  secure: boolean;
181
+ cluster?: string;
173
182
  }
174
183
  export interface ChxInlinePluginRegistration<TPlugin = unknown, TOptions extends object = Record<string, unknown>> {
175
184
  plugin: TPlugin;
@@ -1 +1 @@
1
- {"version":3,"file":"model-types.d.ts","sourceRoot":"","sources":["../src/model-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-types.d.ts","sourceRoot":"","sources":["../src/model-types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,mBAAmB,GAC3B,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,SAAS,GACT,MAAM,GACN,OAAO,GACP,OAAO,GACP,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,SAAS,GACT,MAAM,GACN,SAAS,GACT,MAAM,GACN,UAAU,GACV,YAAY,CAAA;AAEhB;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAC1B;IAAE,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAEpC;;;GAGG;AACH,MAAM,MAAM,wBAAwB,GAChC;IAAE,IAAI,EAAE,OAAO,GAAG,aAAa,GAAG,SAAS,CAAC;IAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;CAAE,GACnE;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,CAAC,GAAG,CAAC,CAAA;CAAE,CAAA;AAEpD;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,KAAK,CAAA;IACX,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,MAAM,WAAW,GAAG,kBAAkB,GAAG,wBAAwB,GAAG,cAAc,CAAA;AAExF,8EAA8E;AAC9E,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,WAAW,EAAE,CAAA;AAEzD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,mBAAmB,GAAG,MAAM,CAAA;IAClC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;IACnC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,eAAe,CAAA;CACxB;AAED,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,mBAAmB,GAAG,aAAa,GAC7C,CACI;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAAE,GACpD;IACE,IAAI,EAAE,YAAY,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;CACnB,GACD;IACE,IAAI,EAAE,YAAY,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;CACnB,CACJ,CAAA;AAEH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd;AAGD,MAAM,WAAW,YAAY;CAAG;AAEhC,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,OAAO,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;IACjD,OAAO,EAAE,gBAAgB,EAAE,CAAA;IAC3B,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;IACpB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAA;IACpD,OAAO,CAAC,EAAE,mBAAmB,EAAE,CAAA;IAC/B,WAAW,CAAC,EAAE,oBAAoB,EAAE,CAAA;IACpC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,YAAY,CAAA;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAA;IAC1C,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,mBAAmB,CAAA;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;IACtC,OAAO,CAAC,EAAE,uBAAuB,CAAA;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG,cAAc,GAAG,0BAA0B,CAAA;AAE5F,MAAM,WAAW,cAAc;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B;AAED,MAAM,WAAW,eAAe;IAC9B,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B;AAED,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,2BAA2B;IAC1C,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,2BAA2B,CAC1C,OAAO,GAAG,OAAO,EACjB,QAAQ,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAEjD,MAAM,EAAE,OAAO,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,OAAO,CAAC,EAAE,QAAQ,CAAA;CACnB;AAED,MAAM,MAAM,qBAAqB,GAAG,2BAA2B,CAAA;AAE/D,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IACzB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,qBAAqB,EAAE,CAAA;IACjC,KAAK,CAAC,EAAE,cAAc,CAAA;IACtB,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,UAAU,CAAC,EAAE,uBAAuB,CAAA;CACrC;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,qBAAqB,EAAE,CAAA;IAChC,KAAK,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAA;IAC/B,MAAM,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAA;IACjC,UAAU,CAAC,EAAE,2BAA2B,CAAA;CACzC;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,aAAa,GAAG,aAAa,IAAI,CACjE,GAAG,EAAE,YAAY,KACd,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;AAEnB,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,aAAa,GAAG,aAAa,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;AACxF,MAAM,MAAM,SAAS,GAAG,aAAa,CAAA;AACrC,MAAM,MAAM,iBAAiB,GAAG,iBAAiB,CAAA;AAEjD,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,CAAC,CAAA;IACV,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,gBAAgB,EAAE,CAAA;CAChC;AAED,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAA;AAEjC,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAA;AAErD,MAAM,MAAM,sBAAsB,GAC9B,iBAAiB,GACjB,cAAc,GACd,YAAY,GACZ,aAAa,GACb,WAAW,GACX,0BAA0B,GAC1B,wBAAwB,GACxB,wCAAwC,GACxC,wBAAwB,GACxB,2BAA2B,GAC3B,yBAAyB,GACzB,2BAA2B,GAC3B,0BAA0B,GAC1B,uBAAuB,GACvB,4BAA4B,GAC5B,4BAA4B,GAC5B,wBAAwB,GACxB,6BAA6B,GAC7B,2BAA2B,GAC3B,wBAAwB,CAAA;AAE5B,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,sBAAsB,CAAA;IAC5B,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,SAAS,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,QAAQ,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,gBAAgB,EAAE,MAAM,CAAA;IACxB,eAAe,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,kBAAkB,EAAE,CAAA;IAChC,WAAW,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IACtC,iBAAiB,EAAE,sBAAsB,EAAE,CAAA;CAC5C;AAED,MAAM,MAAM,mBAAmB,GAC3B,uBAAuB,GACvB,uBAAuB,GACvB,sBAAsB,GACtB,2BAA2B,GAC3B,4BAA4B,GAC5B,yBAAyB,GACzB,iCAAiC,GACjC,wCAAwC,GACxC,yBAAyB,GACzB,+CAA+C,GAC/C,mCAAmC,GACnC,mCAAmC,GACnC,8BAA8B,GAC9B,mBAAmB,CAAA;AAEvB,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,mBAAmB,CAAA;IACzB,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAA;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;CAChB"}
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EAEX,iBAAiB,EACjB,aAAa,EACb,0BAA0B,EAC1B,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,cAAc,EACf,MAAM,kBAAkB,CAAA;AAEzB,cAAc,kBAAkB,CAAA;AAEhC,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,CAAA;gBAEtB,MAAM,EAAE,eAAe,EAAE;CAOtC;AAED,wBAAgB,YAAY,CAAC,CAAC,SAAS,aAAa,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAAA;AACnE,wBAAgB,YAAY,CAAC,CAAC,SAAS,aAAa,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;AAK7F,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,iBAAiB,CA8BtE;AAED,wBAAgB,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,GAAG,eAAe,CAE3E;AAED,wBAAgB,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,GAAG,cAAc,CAExE;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,IAAI,CAAC,0BAA0B,EAAE,MAAM,CAAC,GAC9C,0BAA0B,CAE5B;AAED,wBAAgB,MAAM,CAAC,GAAG,WAAW,EAAE,gBAAgB,EAAE,GAAG,gBAAgB,EAAE,CAE7E;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,gBAAgB,CAI5E"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EAEX,iBAAiB,EACjB,aAAa,EACb,0BAA0B,EAC1B,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,cAAc,EACf,MAAM,kBAAkB,CAAA;AAEzB,cAAc,kBAAkB,CAAA;AAEhC,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,CAAA;gBAEtB,MAAM,EAAE,eAAe,EAAE;CAOtC;AAED,wBAAgB,YAAY,CAAC,CAAC,SAAS,aAAa,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAAA;AACnE,wBAAgB,YAAY,CAAC,CAAC,SAAS,aAAa,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;AAoB7F,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,iBAAiB,CAiCtE;AAED,wBAAgB,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,GAAG,eAAe,CAE3E;AAED,wBAAgB,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,GAAG,cAAc,CAExE;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,IAAI,CAAC,0BAA0B,EAAE,MAAM,CAAC,GAC9C,0BAA0B,CAE5B;AAED,wBAAgB,MAAM,CAAC,GAAG,WAAW,EAAE,gBAAgB,EAAE,GAAG,gBAAgB,EAAE,CAE7E;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,gBAAgB,CAI5E"}
package/dist/model.js CHANGED
@@ -11,6 +11,17 @@ export class ChxValidationError extends Error {
11
11
  export function defineConfig(config) {
12
12
  return config;
13
13
  }
14
+ // A cluster name is interpolated into `ON CLUSTER '<name>'`, so constrain it to
15
+ // the characters legal in a `remote_servers` key (an XML element name: letters,
16
+ // digits, `_`, `-`, `.`) or a `{macro}` — injection-safe inside the single
17
+ // quotes, while still failing fast on typos like quotes or whitespace.
18
+ const CLUSTER_NAME_PATTERN = /^([A-Za-z_][A-Za-z0-9_.-]*|\{[A-Za-z_][A-Za-z0-9_]*\})$/;
19
+ function assertValidClusterName(name) {
20
+ if (!CLUSTER_NAME_PATTERN.test(name)) {
21
+ throw new Error(`Invalid clickhouse.cluster "${name}". Expected a cluster name (e.g. "my_cluster", "prod-eu-1") or a macro (e.g. "{cluster}").`);
22
+ }
23
+ return name;
24
+ }
14
25
  export function resolveConfig(config) {
15
26
  const outDir = config.outDir ?? './chkit';
16
27
  const migrationsDir = config.migrationsDir ?? join(outDir, 'migrations');
@@ -37,6 +48,9 @@ export function resolveConfig(config) {
37
48
  password: config.clickhouse.password ?? '',
38
49
  database: config.clickhouse.database ?? 'default',
39
50
  secure: config.clickhouse.secure ?? false,
51
+ cluster: config.clickhouse.cluster
52
+ ? assertValidClusterName(config.clickhouse.cluster)
53
+ : undefined,
40
54
  }
41
55
  : undefined,
42
56
  };
package/dist/model.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { MigrationPlan } from './model-types.js';
2
+ /**
3
+ * Renders ` ON CLUSTER '<name>'`, or `''` when cluster mode is off. The name is
4
+ * validated at config resolution (`assertValidClusterName`), so it is safe to
5
+ * interpolate. Single-quoted so the `{cluster}` macro form also works.
6
+ */
7
+ export declare function onClusterClause(cluster: string | undefined): string;
8
+ /**
9
+ * Injects `ON CLUSTER <name>` into every DDL statement of a migration plan (and
10
+ * the rename-suggestion confirmations). No-op when `cluster` is undefined.
11
+ *
12
+ * Done as a post-pass over the already-rendered SQL so the planner and renderers
13
+ * stay cluster-agnostic — `ON CLUSTER` is an execution directive, never part of
14
+ * the schema model or drift comparison.
15
+ */
16
+ export declare function applyOnClusterToPlan(plan: MigrationPlan, cluster: string | undefined): MigrationPlan;
17
+ //# sourceMappingURL=on-cluster.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"on-cluster.d.ts","sourceRoot":"","sources":["../src/on-cluster.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAkDrD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAEnE;AA4CD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,MAAM,GAAG,SAAS,GAC1B,aAAa,CAcf"}
@@ -0,0 +1,123 @@
1
+ // DDL statement prefixes where `ON CLUSTER` goes immediately after the object
2
+ // reference that follows the prefix. Anything not matched here (or by the
3
+ // trailing-anchor list below) is left untouched — e.g. plugin-emitted SQL.
4
+ //
5
+ // Anchors are the bare verb + object keyword, WITHOUT the `IF [NOT] EXISTS`
6
+ // guard: `injectOnClusterClause` skips an optional guard when locating the
7
+ // object reference, so both `DROP TABLE db.t` and `DROP TABLE IF EXISTS db.t`
8
+ // are handled by the single `DROP TABLE` anchor. This is what keeps the list
9
+ // resilient — a future statement is covered whether or not it carries a guard.
10
+ //
11
+ // The first group is what the planner + plan-pipeline emit today. The second is
12
+ // NOT emitted by chkit yet: it's a forward-compatible safety net so injection
13
+ // already works if a future command starts producing these statements. Every
14
+ // entry shares the same placement rule (clause right after the object
15
+ // identifier); placements confirmed against the ClickHouse SQL reference.
16
+ const ON_CLUSTER_ANCHORS = [
17
+ // --- Emitted by chkit today ---
18
+ 'CREATE TABLE',
19
+ 'CREATE VIEW',
20
+ 'CREATE MATERIALIZED VIEW',
21
+ 'CREATE DATABASE',
22
+ 'ALTER TABLE',
23
+ 'DROP TABLE',
24
+ 'DROP VIEW',
25
+ // --- Not emitted by chkit yet; kept as a forward-compatible safety net ---
26
+ 'CREATE DICTIONARY',
27
+ 'CREATE FUNCTION',
28
+ 'DROP DATABASE',
29
+ 'DROP DICTIONARY',
30
+ 'ATTACH TABLE',
31
+ 'DETACH TABLE',
32
+ 'TRUNCATE TABLE',
33
+ 'OPTIMIZE TABLE',
34
+ ];
35
+ // Statements where `ON CLUSTER` goes at the very END, after the full object
36
+ // list — not after the first name. RENAME and EXCHANGE take multiple object
37
+ // references (`a TO b`, `a AND b`), so the clause can only be appended. Only
38
+ // `RENAME TABLE` is emitted by chkit today; the rest are the same-family
39
+ // safety net described above.
40
+ const ON_CLUSTER_TRAILING_ANCHORS = [
41
+ 'RENAME TABLE',
42
+ 'RENAME DATABASE',
43
+ 'RENAME DICTIONARY',
44
+ 'EXCHANGE TABLES',
45
+ 'EXCHANGE DICTIONARIES',
46
+ ];
47
+ /**
48
+ * Renders ` ON CLUSTER '<name>'`, or `''` when cluster mode is off. The name is
49
+ * validated at config resolution (`assertValidClusterName`), so it is safe to
50
+ * interpolate. Single-quoted so the `{cluster}` macro form also works.
51
+ */
52
+ export function onClusterClause(cluster) {
53
+ return cluster ? ` ON CLUSTER '${cluster}'` : '';
54
+ }
55
+ // An optional `IF NOT EXISTS` / `IF EXISTS` guard sitting between the anchor
56
+ // keyword and the object reference. Preserved verbatim so the clause lands after
57
+ // the object, never after the guard.
58
+ const OBJECT_GUARD = /^IF\s+(?:NOT\s+)?EXISTS\s+/i;
59
+ // Idempotency is checked positionally — an `ON CLUSTER` clause sitting exactly
60
+ // where injection would place it — never by scanning the whole statement, so
61
+ // user-authored content (a column COMMENT, a view's SELECT body) containing the
62
+ // words "on cluster" cannot suppress injection.
63
+ const ON_CLUSTER_AT_REF = /^\s+ON\s+CLUSTER\b/i;
64
+ const ON_CLUSTER_AT_END = /\bON\s+CLUSTER\s+\S+\s*$/i;
65
+ function injectOnClusterClause(sql, clause) {
66
+ // RENAME/EXCHANGE are the exception: ClickHouse places `ON CLUSTER` after the
67
+ // full object list (at the very end), not after the first name.
68
+ for (const anchor of ON_CLUSTER_TRAILING_ANCHORS) {
69
+ if (!sql.startsWith(`${anchor} `))
70
+ continue;
71
+ const body = sql.endsWith(';') ? sql.slice(0, -1) : sql;
72
+ // Idempotent: a trailing clause means the statement already targets a cluster.
73
+ if (ON_CLUSTER_AT_END.test(body))
74
+ return sql;
75
+ return sql.endsWith(';') ? `${body}${clause};` : `${body}${clause}`;
76
+ }
77
+ for (const anchor of ON_CLUSTER_ANCHORS) {
78
+ if (!sql.startsWith(`${anchor} `))
79
+ continue;
80
+ const rest = sql.slice(anchor.length + 1);
81
+ // Skip a leading `IF [NOT] EXISTS` guard, if any, so the clause is placed
82
+ // after the object reference regardless of whether the statement carries it.
83
+ const guard = rest.match(OBJECT_GUARD)?.[0] ?? '';
84
+ const afterGuard = rest.slice(guard.length);
85
+ // The object reference (`db.name` or `db`) is the run of characters up to
86
+ // the next space, `;`, or `(` — `ON CLUSTER` slots in right after it.
87
+ const ref = afterGuard.match(/^[^\s;(]+/)?.[0];
88
+ if (!ref)
89
+ return sql;
90
+ const afterRef = afterGuard.slice(ref.length);
91
+ // Idempotent: never double-inject into a statement that already carries the
92
+ // clause here (a plan re-run through this pass, or cluster-aware plugin SQL).
93
+ if (ON_CLUSTER_AT_REF.test(afterRef))
94
+ return sql;
95
+ return `${anchor} ${guard}${ref}${clause}${afterRef}`;
96
+ }
97
+ return sql;
98
+ }
99
+ /**
100
+ * Injects `ON CLUSTER <name>` into every DDL statement of a migration plan (and
101
+ * the rename-suggestion confirmations). No-op when `cluster` is undefined.
102
+ *
103
+ * Done as a post-pass over the already-rendered SQL so the planner and renderers
104
+ * stay cluster-agnostic — `ON CLUSTER` is an execution directive, never part of
105
+ * the schema model or drift comparison.
106
+ */
107
+ export function applyOnClusterToPlan(plan, cluster) {
108
+ if (!cluster)
109
+ return plan;
110
+ const clause = onClusterClause(cluster);
111
+ return {
112
+ ...plan,
113
+ operations: plan.operations.map((operation) => ({
114
+ ...operation,
115
+ sql: injectOnClusterClause(operation.sql, clause),
116
+ })),
117
+ renameSuggestions: plan.renameSuggestions.map((suggestion) => ({
118
+ ...suggestion,
119
+ confirmationSQL: injectOnClusterClause(suggestion.confirmationSQL, clause),
120
+ })),
121
+ };
122
+ }
123
+ //# sourceMappingURL=on-cluster.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"on-cluster.js","sourceRoot":"","sources":["../src/on-cluster.ts"],"names":[],"mappings":"AAEA,8EAA8E;AAC9E,0EAA0E;AAC1E,2EAA2E;AAC3E,EAAE;AACF,4EAA4E;AAC5E,2EAA2E;AAC3E,8EAA8E;AAC9E,6EAA6E;AAC7E,+EAA+E;AAC/E,EAAE;AACF,gFAAgF;AAChF,8EAA8E;AAC9E,6EAA6E;AAC7E,sEAAsE;AACtE,0EAA0E;AAC1E,MAAM,kBAAkB,GAAG;IACzB,iCAAiC;IACjC,cAAc;IACd,aAAa;IACb,0BAA0B;IAC1B,iBAAiB;IACjB,aAAa;IACb,YAAY;IACZ,WAAW;IACX,4EAA4E;IAC5E,mBAAmB;IACnB,iBAAiB;IACjB,eAAe;IACf,iBAAiB;IACjB,cAAc;IACd,cAAc;IACd,gBAAgB;IAChB,gBAAgB;CACR,CAAA;AAEV,4EAA4E;AAC5E,4EAA4E;AAC5E,6EAA6E;AAC7E,yEAAyE;AACzE,8BAA8B;AAC9B,MAAM,2BAA2B,GAAG;IAClC,cAAc;IACd,iBAAiB;IACjB,mBAAmB;IACnB,iBAAiB;IACjB,uBAAuB;CACf,CAAA;AAEV;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,OAA2B;IACzD,OAAO,OAAO,CAAC,CAAC,CAAC,gBAAgB,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;AAClD,CAAC;AAED,6EAA6E;AAC7E,iFAAiF;AACjF,qCAAqC;AACrC,MAAM,YAAY,GAAG,6BAA6B,CAAA;AAElD,+EAA+E;AAC/E,6EAA6E;AAC7E,gFAAgF;AAChF,gDAAgD;AAChD,MAAM,iBAAiB,GAAG,qBAAqB,CAAA;AAC/C,MAAM,iBAAiB,GAAG,2BAA2B,CAAA;AAErD,SAAS,qBAAqB,CAAC,GAAW,EAAE,MAAc;IACxD,8EAA8E;IAC9E,gEAAgE;IAChE,KAAK,MAAM,MAAM,IAAI,2BAA2B,EAAE,CAAC;QACjD,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC;YAAE,SAAQ;QAC3C,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;QACvD,+EAA+E;QAC/E,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,GAAG,CAAA;QAC5C,OAAO,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,MAAM,EAAE,CAAA;IACrE,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,kBAAkB,EAAE,CAAC;QACxC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC;YAAE,SAAQ;QAC3C,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACzC,0EAA0E;QAC1E,6EAA6E;QAC7E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QACjD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAC3C,0EAA0E;QAC1E,sEAAsE;QACtE,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC9C,IAAI,CAAC,GAAG;YAAE,OAAO,GAAG,CAAA;QACpB,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAC7C,4EAA4E;QAC5E,8EAA8E;QAC9E,IAAI,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC;YAAE,OAAO,GAAG,CAAA;QAChD,OAAO,GAAG,MAAM,IAAI,KAAK,GAAG,GAAG,GAAG,MAAM,GAAG,QAAQ,EAAE,CAAA;IACvD,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAClC,IAAmB,EACnB,OAA2B;IAE3B,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAA;IACzB,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAA;IACvC,OAAO;QACL,GAAG,IAAI;QACP,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC9C,GAAG,SAAS;YACZ,GAAG,EAAE,qBAAqB,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC;SAClD,CAAC,CAAC;QACH,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YAC7D,GAAG,UAAU;YACb,eAAe,EAAE,qBAAqB,CAAC,UAAU,CAAC,eAAe,EAAE,MAAM,CAAC;SAC3E,CAAC,CAAC;KACJ,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"planner.d.ts","sourceRoot":"","sources":["../src/planner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAMV,aAAa,EAEb,gBAAgB,EAEjB,MAAM,YAAY,CAAA;AAgdnB,wBAAgB,QAAQ,CAAC,cAAc,EAAE,gBAAgB,EAAE,EAAE,cAAc,EAAE,gBAAgB,EAAE,GAAG,aAAa,CAqG9G"}
1
+ {"version":3,"file":"planner.d.ts","sourceRoot":"","sources":["../src/planner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAMV,aAAa,EAEb,gBAAgB,EAEjB,MAAM,YAAY,CAAA;AA+enB,wBAAgB,QAAQ,CAAC,cAAc,EAAE,gBAAgB,EAAE,EAAE,cAAc,EAAE,gBAAgB,EAAE,GAAG,aAAa,CAqG9G"}
package/dist/planner.js CHANGED
@@ -65,8 +65,41 @@ function pushCreateDatabaseOperation(operations, database, risk = 'safe') {
65
65
  sql: `CREATE DATABASE IF NOT EXISTS ${database};`,
66
66
  });
67
67
  }
68
+ // Whitespace and identifier backtick-quoting carry no meaning in a key clause,
69
+ // and ClickHouse normalizes both when it stores the key: `toStartOfHour( ts )`
70
+ // comes back as `toStartOfHour(ts)`, and a column written bare as `user-id` in
71
+ // config is stored/introspected quoted as `` `user-id` ``. Drop insignificant
72
+ // whitespace and identifier backticks (but preserve single/double-quoted string
73
+ // literals, which are semantic) so a config clause and the introspected clause
74
+ // compare equal, avoiding a phantom table recreate. Comparison-only — never
75
+ // used to render DDL, so keyword expressions like `INTERVAL 1 HOUR` and real
76
+ // identifier quoting keep their form when emitted.
77
+ function stripInsignificantFormatting(token) {
78
+ let out = '';
79
+ let quote = null;
80
+ for (let i = 0; i < token.length; i += 1) {
81
+ const char = token[i] ?? '';
82
+ if (quote) {
83
+ out += char;
84
+ if (char === quote && token[i - 1] !== '\\')
85
+ quote = null;
86
+ continue;
87
+ }
88
+ if (char === "'" || char === '"') {
89
+ quote = char;
90
+ out += char;
91
+ continue;
92
+ }
93
+ if (char === '`')
94
+ continue;
95
+ if (/\s/.test(char))
96
+ continue;
97
+ out += char;
98
+ }
99
+ return out;
100
+ }
68
101
  function normalizeClauseList(value) {
69
- return (value ?? []).join(',');
102
+ return (value ?? []).map(stripInsignificantFormatting).join(',');
70
103
  }
71
104
  function requiresTableRecreate(oldDef, newDef) {
72
105
  return diffClauses([
@@ -1 +1 @@
1
- {"version":3,"file":"planner.js","sourceRoot":"","sources":["../src/planner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"planner.js","sourceRoot":"","sources":["../src/planner.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,19 @@
1
+ export interface PluginRunContext {
2
+ jsonMode: boolean;
3
+ print: (value: unknown) => void;
4
+ }
5
+ /**
6
+ * Bind a plugin's error class once and get a factory for command `run`
7
+ * handlers: each handler is wrapped in the shared error-to-exit-code
8
+ * envelope (json/text failure output, exit 2 for config errors, 1 otherwise).
9
+ */
10
+ export declare function createPluginRunner<C extends PluginRunContext>(runner: {
11
+ configErrorClass?: new (message: string) => Error;
12
+ }): (input: {
13
+ command: string;
14
+ label: string;
15
+ fn: (context: C) => Promise<undefined | number> | undefined | number;
16
+ }) => (context: C) => Promise<number | undefined>;
1
17
  export declare function wrapPluginRun(options: {
2
18
  command: string;
3
19
  label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-error.d.ts","sourceRoot":"","sources":["../src/plugin-error.ts"],"names":[],"mappings":"AAAA,wBAAsB,aAAa,CAAC,OAAO,EAAE;IAC3C,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,OAAO,CAAA;IACjB,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;IAC/B,gBAAgB,CAAC,EAAE,KAAK,OAAO,EAAE,MAAM,KAAK,KAAK,CAAA;IACjD,EAAE,EAAE,MAAM,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,GAAG,SAAS,GAAG,MAAM,CAAA;CAC3D,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAa9B"}
1
+ {"version":3,"file":"plugin-error.d.ts","sourceRoot":"","sources":["../src/plugin-error.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,CAAA;IACjB,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;CAChC;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,gBAAgB,EAAE,MAAM,EAAE;IACrE,gBAAgB,CAAC,EAAE,KAAK,OAAO,EAAE,MAAM,KAAK,KAAK,CAAA;CAClD,IACkC,OAAO;IACtC,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,GAAG,SAAS,GAAG,MAAM,CAAA;CACrE,KAAG,CAAC,OAAO,EAAE,CAAC,KAAK,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAWhD;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE;IAC3C,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,OAAO,CAAA;IACjB,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;IAC/B,gBAAgB,CAAC,EAAE,KAAK,OAAO,EAAE,MAAM,KAAK,KAAK,CAAA;IACjD,EAAE,EAAE,MAAM,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,GAAG,SAAS,GAAG,MAAM,CAAA;CAC3D,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAa9B"}
@@ -1,3 +1,20 @@
1
+ /**
2
+ * Bind a plugin's error class once and get a factory for command `run`
3
+ * handlers: each handler is wrapped in the shared error-to-exit-code
4
+ * envelope (json/text failure output, exit 2 for config errors, 1 otherwise).
5
+ */
6
+ export function createPluginRunner(runner) {
7
+ return function pluginCommandRun(input) {
8
+ return (context) => wrapPluginRun({
9
+ command: input.command,
10
+ label: input.label,
11
+ jsonMode: context.jsonMode,
12
+ print: context.print,
13
+ configErrorClass: runner.configErrorClass,
14
+ fn: () => input.fn(context),
15
+ });
16
+ };
17
+ }
1
18
  export async function wrapPluginRun(options) {
2
19
  try {
3
20
  return (await options.fn()) ?? undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-error.js","sourceRoot":"","sources":["../src/plugin-error.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAOnC;IACC,IAAI,CAAC;QACH,OAAO,CAAC,MAAM,OAAO,CAAC,EAAE,EAAE,CAAC,IAAI,SAAS,CAAA;IAC1C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACtE,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA;QACxE,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,YAAY,OAAO,EAAE,CAAC,CAAA;QACtD,CAAC;QACD,IAAI,OAAO,CAAC,gBAAgB,IAAI,KAAK,YAAY,OAAO,CAAC,gBAAgB;YAAE,OAAO,CAAC,CAAA;QACnF,OAAO,CAAC,CAAA;IACV,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"plugin-error.js","sourceRoot":"","sources":["../src/plugin-error.ts"],"names":[],"mappings":"AAKA;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAA6B,MAE9D;IACC,OAAO,SAAS,gBAAgB,CAAC,KAIhC;QACC,OAAO,CAAC,OAAO,EAAE,EAAE,CACjB,aAAa,CAAC;YACZ,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;YACzC,EAAE,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC;SAC5B,CAAC,CAAA;IACN,CAAC,CAAA;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAOnC;IACC,IAAI,CAAC;QACH,OAAO,CAAC,MAAM,OAAO,CAAC,EAAE,EAAE,CAAC,IAAI,SAAS,CAAA;IAC1C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACtE,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA;QACxE,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,YAAY,OAAO,EAAE,CAAC,CAAA;QACtD,CAAC;QACD,IAAI,OAAO,CAAC,gBAAgB,IAAI,KAAK,YAAY,OAAO,CAAC,gBAAgB;YAAE,OAAO,CAAC,CAAA;QACnF,OAAO,CAAC,CAAA;IACV,CAAC;AACH,CAAC"}
package/dist/sql.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sql.d.ts","sourceRoot":"","sources":["../src/sql.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,0BAA0B,EAE1B,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EAEhB,MAAM,YAAY,CAAA;AAuHnB;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,0BAA0B,GAAG,MAAM,CAOhF;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,gBAAgB,GAAG,MAAM,CAKzD;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAE3F;AAED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAE9F;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAEtF;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAEvF;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,eAAe,EAAE,KAAK,EAAE,mBAAmB,GAAG,MAAM,CAE5F;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAEpF;AAED,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,eAAe,EAAE,UAAU,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAElH;AAED,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,CAE9F;AAED,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAC/B,MAAM,CAER;AAED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEjF;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAK1F"}
1
+ {"version":3,"file":"sql.d.ts","sourceRoot":"","sources":["../src/sql.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,0BAA0B,EAE1B,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EAEhB,MAAM,YAAY,CAAA;AA6HnB;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,0BAA0B,GAAG,MAAM,CAOhF;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,gBAAgB,GAAG,MAAM,CAKzD;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAE3F;AAED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAE9F;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAEtF;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAEvF;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,eAAe,EAAE,KAAK,EAAE,mBAAmB,GAAG,MAAM,CAE5F;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAEpF;AAED,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,eAAe,EAAE,UAAU,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAElH;AAED,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,CAE9F;AAED,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAC/B,MAAM,CAER;AAED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEjF;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAK1F"}
package/dist/sql.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { renderCodec } from './codec.js';
2
- import { normalizeKeyColumns } from './key-clause.js';
2
+ import { isPlainColumnReference, normalizeKeyColumns } from './key-clause.js';
3
3
  import { assertValidDefinitions } from './validate.js';
4
4
  function renderDefault(value) {
5
5
  if (typeof value === 'string') {
@@ -19,9 +19,13 @@ function renderColumn(col) {
19
19
  out += ` ${renderCodec(col.codec)}`;
20
20
  return out;
21
21
  }
22
- function renderKeyClauseColumns(columns) {
22
+ function renderKeyClauseColumns(columns, columnNames) {
23
23
  return normalizeKeyColumns(columns)
24
- .map((column) => `\`${column}\``)
24
+ .map((column) =>
25
+ // Quote a token when it names a declared column (including names that
26
+ // need quoting like `user-id`) or is a bare identifier. Only true
27
+ // expressions (e.g. `toStartOfHour(ts)`) are emitted verbatim.
28
+ columnNames.has(column) || isPlainColumnReference(column) ? `\`${column}\`` : column)
25
29
  .join(', ');
26
30
  }
27
31
  function renderIndexType(idx) {
@@ -45,13 +49,14 @@ function renderTableSQL(def) {
45
49
  const indexes = (def.indexes ?? []).map((idx) => `INDEX \`${idx.name}\` (${idx.expression}) TYPE ${renderIndexType(idx)} GRANULARITY ${idx.granularity}`);
46
50
  const projections = (def.projections ?? []).map((projection) => `PROJECTION \`${projection.name}\` (${projection.query})`);
47
51
  const body = [...columns, ...indexes, ...projections].join(',\n ');
52
+ const columnNames = new Set(def.columns.map((column) => column.name));
48
53
  const clauses = [];
49
54
  if (def.partitionBy)
50
55
  clauses.push(`PARTITION BY ${def.partitionBy}`);
51
- clauses.push(`PRIMARY KEY (${renderKeyClauseColumns(def.primaryKey)})`);
52
- clauses.push(`ORDER BY (${renderKeyClauseColumns(def.orderBy)})`);
56
+ clauses.push(`PRIMARY KEY (${renderKeyClauseColumns(def.primaryKey, columnNames)})`);
57
+ clauses.push(`ORDER BY (${renderKeyClauseColumns(def.orderBy, columnNames)})`);
53
58
  if (def.uniqueKey && def.uniqueKey.length > 0) {
54
- clauses.push(`UNIQUE KEY (${renderKeyClauseColumns(def.uniqueKey)})`);
59
+ clauses.push(`UNIQUE KEY (${renderKeyClauseColumns(def.uniqueKey, columnNames)})`);
55
60
  }
56
61
  if (def.ttl)
57
62
  clauses.push(`TTL ${def.ttl}`);
package/dist/sql.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sql.js","sourceRoot":"","sources":["../src/sql.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sql.js","sourceRoot":"","sources":["../src/sql.ts"],"names":[],"mappings":"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"}
package/dist/validate.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { definitionKey } from './canonical.js';
2
2
  import { canonicalizeCodec, isGeneralCodec, isRawCodec } from './codec.js';
3
- import { normalizeKeyColumns } from './key-clause.js';
3
+ import { isPlainColumnReference, normalizeKeyColumns } from './key-clause.js';
4
4
  import { ChxValidationError as ValidationError } from './model.js';
5
5
  function pushValidationIssue(issues, def, code, message) {
6
6
  issues.push({
@@ -66,12 +66,12 @@ function validateTableDefinition(def, issues) {
66
66
  projectionSeen.add(projection.name);
67
67
  }
68
68
  for (const column of normalizeKeyColumns(def.primaryKey)) {
69
- if (!columnSet.has(column)) {
69
+ if (isPlainColumnReference(column) && !columnSet.has(column)) {
70
70
  pushValidationIssue(issues, def, 'primary_key_missing_column', `Table ${def.database}.${def.name} primaryKey references missing column "${column}"`);
71
71
  }
72
72
  }
73
73
  for (const column of normalizeKeyColumns(def.orderBy)) {
74
- if (!columnSet.has(column)) {
74
+ if (isPlainColumnReference(column) && !columnSet.has(column)) {
75
75
  pushValidationIssue(issues, def, 'order_by_missing_column', `Table ${def.database}.${def.name} orderBy references missing column "${column}"`);
76
76
  }
77
77
  }
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAC1E,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAU7E,OAAO,EAAE,kBAAkB,IAAI,eAAe,EAAE,MAAM,YAAY,CAAA;AAElE,SAAS,mBAAmB,CAC1B,MAAyB,EACzB,GAAqB,EACrB,IAAyB,EACzB,OAAe;IAEf,MAAM,CAAC,IAAI,CAAC;QACV,IAAI;QACJ,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,OAAO;KACR,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,GAAoB,EACpB,MAAwB,EACxB,MAAyB;IAEzB,IAAI,CAAC,MAAM,CAAC,KAAK;QAAE,OAAM;IACzB,MAAM,KAAK,GAAG,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAC7C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,mBAAmB,CACjB,MAAM,EACN,GAAG,EACH,mBAAmB,EACnB,SAAS,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,YAAY,MAAM,CAAC,IAAI,sEAAsE,CAC/H,CAAA;QACD,OAAM;IACR,CAAC;IACD,IAAI,YAAY,GAAG,CAAC,CAAA;IACpB,IAAI,YAAY,GAAG,CAAC,CAAC,CAAA;IACrB,KAAK,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QACxC,IAAI,UAAU,CAAC,IAAI,CAAC;YAAE,SAAQ;QAC9B,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,YAAY,IAAI,CAAC,CAAA;YACjB,YAAY,GAAG,CAAC,CAAA;QAClB,CAAC;IACH,CAAC;IAED,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;QACrB,mBAAmB,CACjB,MAAM,EACN,GAAG,EACH,8BAA8B,EAC9B,SAAS,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,YAAY,MAAM,CAAC,IAAI,wGAAwG,CACjK,CAAA;QACD,OAAM;IACR,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,KAAK,CAAC,IAAI,YAAY,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChF,mBAAmB,CACjB,MAAM,EACN,GAAG,EACH,mCAAmC,EACnC,SAAS,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,YAAY,MAAM,CAAC,IAAI,qFAAqF,CAC9I,CAAA;IACH,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,GAAoB,EAAE,MAAyB;IAC9E,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAA;IACpC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAA;IACnC,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;QACjC,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,mBAAmB,CACjB,MAAM,EACN,GAAG,EACH,uBAAuB,EACvB,SAAS,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,+BAA+B,MAAM,CAAC,IAAI,GAAG,CAC/E,CAAA;YACD,SAAQ;QACV,CAAC;QACD,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAC3B,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAC1B,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1C,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAA;IACnC,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QACtC,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9B,mBAAmB,CACjB,MAAM,EACN,GAAG,EACH,sBAAsB,EACtB,SAAS,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,8BAA8B,KAAK,CAAC,IAAI,GAAG,CAC7E,CAAA;YACD,SAAQ;QACV,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAED,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAA;IACxC,KAAK,MAAM,UAAU,IAAI,GAAG,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC;QAC/C,IAAI,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,mBAAmB,CACjB,MAAM,EACN,GAAG,EACH,2BAA2B,EAC3B,SAAS,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,mCAAmC,UAAU,CAAC,IAAI,GAAG,CACvF,CAAA;YACD,SAAQ;QACV,CAAC;QACD,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;QACzD,IAAI,sBAAsB,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7D,mBAAmB,CACjB,MAAM,EACN,GAAG,EACH,4BAA4B,EAC5B,SAAS,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,0CAA0C,MAAM,GAAG,CACrF,CAAA;QACH,CAAC;IACH,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QACtD,IAAI,sBAAsB,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7D,mBAAmB,CACjB,MAAM,EACN,GAAG,EACH,yBAAyB,EACzB,SAAS,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,uCAAuC,MAAM,GAAG,CAClF,CAAA;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,gBAAgB,GACpB,6GAA6G,CAAA;AAE/G,MAAM,yBAAyB,GAAG,sBAAsB,CAAA;AAExD,SAAS,gBAAgB,CACvB,GAA+B,EAC/B,MAAyB,EACzB,KAAoC,EACpC,KAAyB;IAEzB,IAAI,KAAK,KAAK,SAAS;QAAE,OAAM;IAC/B,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAClC,mBAAmB,CACjB,MAAM,EACN,GAAG,EACH,yBAAyB,EACzB,qBAAqB,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,YAAY,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,iEAAiE,CAClJ,CAAA;IACH,CAAC;AACH,CAAC;AAED,SAAS,kCAAkC,CACzC,GAA+B,EAC/B,MAAyB,EACzB,WAA+B;IAE/B,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAA;IACvB,IAAI,CAAC,OAAO;QAAE,OAAM;IAEpB,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAA;IACxE,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAA;IACxE,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC3B,mBAAmB,CACjB,MAAM,EACN,GAAG,EACH,iCAAiC,EACjC,qBAAqB,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,qDAAqD,CACnG,CAAA;IACH,CAAC;SAAM,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;QAChC,mBAAmB,CACjB,MAAM,EACN,GAAG,EACH,wCAAwC,EACxC,qBAAqB,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,yDAAyD,CACvG,CAAA;IACH,CAAC;IAED,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAA;IACrD,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAA;IACrD,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;IACvD,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;IAE7D,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC/E,mBAAmB,CACjB,MAAM,EACN,GAAG,EACH,mCAAmC,EACnC,qBAAqB,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,4FAA4F,CAC1I,CAAA;IACH,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAC7B,CAAC,KAAK,EAA4B,EAAE,CAClC,KAAK,CAAC,IAAI,KAAK,OAAO;YACtB,KAAK,CAAC,QAAQ,KAAK,GAAG,CAAC,EAAE,CAAC,QAAQ;YAClC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,CAC7B,CAAA;QACD,IAAI,MAAM,IAAI,yBAAyB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5D,mBAAmB,CACjB,MAAM,EACN,GAAG,EACH,+CAA+C,EAC/C,qBAAqB,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,kCAAkC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,MAAM,qHAAqH,CACrP,CAAA;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,WAA+B;IACjE,MAAM,MAAM,GAAsB,EAAE,CAAA;IACpC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAA;IACpC,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,CAAA;QAC9B,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,mBAAmB,CACjB,MAAM,EACN,GAAG,EACH,uBAAuB,EACvB,uCAAuC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,GAAG,CAC/E,CAAA;YACD,SAAQ;QACV,CAAC;QACD,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAEnB,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACzB,uBAAuB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QACtC,CAAC;aAAM,IAAI,GAAG,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YAC5C,kCAAkC,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;QAC9D,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,WAA+B;IACpE,MAAM,MAAM,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAA;IAC/C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,eAAe,CAAC,MAAM,CAAC,CAAA;AAC1D,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chkit/core",
3
- "version": "0.1.0",
3
+ "version": "0.1.2-beta.0",
4
4
  "description": "Schema DSL, config, diff engine, and migration planner for chkit",
5
5
  "license": "MIT",
6
6
  "author": "ObsessionDB",