chkit 0.1.0-beta.22 → 0.1.0-beta.24
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/bin/chkit.js +61 -29
- package/dist/bin/chkit.js.map +1 -1
- package/dist/commands/check/command.d.ts +2 -2
- package/dist/commands/check/command.d.ts.map +1 -1
- package/dist/commands/check/command.js +85 -84
- package/dist/commands/check/command.js.map +1 -1
- package/dist/commands/drift/command.d.ts +2 -2
- package/dist/commands/drift/command.d.ts.map +1 -1
- package/dist/commands/drift/command.js +109 -108
- package/dist/commands/drift/command.js.map +1 -1
- package/dist/commands/generate/command.d.ts +2 -2
- package/dist/commands/generate/command.d.ts.map +1 -1
- package/dist/commands/generate/command.js +8 -6
- package/dist/commands/generate/command.js.map +1 -1
- package/dist/commands/init.js +1 -1
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/migrate/command.d.ts +2 -2
- package/dist/commands/migrate/command.d.ts.map +1 -1
- package/dist/commands/migrate/command.js +14 -15
- package/dist/commands/migrate/command.js.map +1 -1
- package/dist/commands/plugin.d.ts +2 -2
- package/dist/commands/plugin.d.ts.map +1 -1
- package/dist/commands/plugin.js +12 -15
- package/dist/commands/plugin.js.map +1 -1
- package/dist/commands/query.d.ts +2 -2
- package/dist/commands/query.d.ts.map +1 -1
- package/dist/commands/query.js +24 -24
- package/dist/commands/query.js.map +1 -1
- package/dist/commands/status.d.ts +2 -2
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +53 -52
- package/dist/commands/status.js.map +1 -1
- package/dist/internal-plugins/core/plugin.d.ts +2 -0
- package/dist/internal-plugins/core/plugin.d.ts.map +1 -0
- package/dist/internal-plugins/core/plugin.js +21 -0
- package/dist/internal-plugins/core/plugin.js.map +1 -0
- package/dist/internal-plugins/index.d.ts.map +1 -1
- package/dist/internal-plugins/index.js +2 -1
- package/dist/internal-plugins/index.js.map +1 -1
- package/dist/plugins.d.ts +16 -32
- package/dist/plugins.d.ts.map +1 -1
- package/dist/plugins.js +0 -6
- package/dist/plugins.js.map +1 -1
- package/dist/runtime/command-dispatch.d.ts.map +1 -1
- package/dist/runtime/command-dispatch.js +78 -88
- package/dist/runtime/command-dispatch.js.map +1 -1
- package/dist/runtime/command-registry.d.ts +1 -4
- package/dist/runtime/command-registry.d.ts.map +1 -1
- package/dist/runtime/command-registry.js +33 -46
- package/dist/runtime/command-registry.js.map +1 -1
- package/dist/runtime/config-merge.d.ts +4 -0
- package/dist/runtime/config-merge.d.ts.map +1 -0
- package/dist/runtime/config-merge.js +72 -0
- package/dist/runtime/config-merge.js.map +1 -0
- package/dist/runtime/config.d.ts +11 -2
- package/dist/runtime/config.d.ts.map +1 -1
- package/dist/runtime/config.js +89 -12
- package/dist/runtime/config.js.map +1 -1
- package/dist/runtime/extract-config-path.d.ts +2 -0
- package/dist/runtime/extract-config-path.d.ts.map +1 -0
- package/dist/runtime/extract-config-path.js +13 -0
- package/dist/runtime/extract-config-path.js.map +1 -0
- package/dist/runtime/help.js +2 -2
- package/dist/runtime/help.js.map +1 -1
- package/dist/runtime/plugin-runtime/index.d.ts +1 -1
- package/dist/runtime/plugin-runtime/index.d.ts.map +1 -1
- package/dist/runtime/plugin-runtime/index.js +50 -16
- package/dist/runtime/plugin-runtime/index.js.map +1 -1
- package/dist/runtime/plugin-runtime/loader.d.ts +3 -6
- package/dist/runtime/plugin-runtime/loader.d.ts.map +1 -1
- package/dist/runtime/plugin-runtime/loader.js +6 -39
- package/dist/runtime/plugin-runtime/loader.js.map +1 -1
- package/dist/runtime/user-config.d.ts +4 -0
- package/dist/runtime/user-config.d.ts.map +1 -0
- package/dist/runtime/user-config.js +11 -0
- package/dist/runtime/user-config.js.map +1 -0
- package/package.json +7 -4
package/dist/runtime/config.js
CHANGED
|
@@ -3,35 +3,112 @@ import { mkdir, writeFile } from 'node:fs/promises';
|
|
|
3
3
|
import { dirname, resolve } from 'node:path';
|
|
4
4
|
import process from 'node:process';
|
|
5
5
|
import { pathToFileURL } from 'node:url';
|
|
6
|
-
import { resolveConfig, } from '@chkit/core';
|
|
6
|
+
import { resolveConfig, SYNTHESIZED_CONFIG_PATH, } from '@chkit/core';
|
|
7
|
+
import { mergeUserConfig } from './config-merge.js';
|
|
7
8
|
import { debug } from './debug.js';
|
|
9
|
+
import { getUserConfigDir, USER_CREDENTIALS_FILE, USER_PROFILE_CONFIG_FILE, } from './user-config.js';
|
|
8
10
|
export const DEFAULT_CONFIG_FILE = 'clickhouse.config.ts';
|
|
9
11
|
function isConfigFunction(candidate) {
|
|
10
12
|
return typeof candidate === 'function';
|
|
11
13
|
}
|
|
12
|
-
export async function loadConfig(configPathArg, env = {}) {
|
|
13
|
-
const
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
export async function loadConfig(configPathArg, env = {}, options = {}) {
|
|
15
|
+
const cwd = options.cwd ?? process.cwd();
|
|
16
|
+
const userDir = options.userConfigDir ?? getUserConfigDir();
|
|
17
|
+
const projectPath = configPathArg
|
|
18
|
+
? resolve(cwd, configPathArg)
|
|
19
|
+
: resolve(cwd, DEFAULT_CONFIG_FILE);
|
|
20
|
+
if (configPathArg) {
|
|
21
|
+
debug('config', `resolving explicit config at ${projectPath}`);
|
|
22
|
+
if (!existsSync(projectPath)) {
|
|
23
|
+
throw new Error(`Config not found at ${projectPath}.`);
|
|
24
|
+
}
|
|
17
25
|
}
|
|
26
|
+
else {
|
|
27
|
+
debug('config', `looking for project config at ${projectPath}`);
|
|
28
|
+
}
|
|
29
|
+
const projectExists = existsSync(projectPath);
|
|
30
|
+
if (projectExists) {
|
|
31
|
+
const project = await readRawConfig(projectPath, env);
|
|
32
|
+
const layer = await readProfileLayer(userDir, env, options.allowSynthesizedProfileConfig);
|
|
33
|
+
if (layer) {
|
|
34
|
+
debug('config', `layering profile (${layer.source}, path=${layer.path}) under project`);
|
|
35
|
+
const merged = mergeUserConfig(layer.raw, project.raw);
|
|
36
|
+
return finalize(merged, project.path, 'project', true);
|
|
37
|
+
}
|
|
38
|
+
return finalize(project.raw, project.path, 'project', false);
|
|
39
|
+
}
|
|
40
|
+
const layer = await readProfileLayer(userDir, env, options.allowSynthesizedProfileConfig);
|
|
41
|
+
if (layer) {
|
|
42
|
+
return finalize(layer.raw, layer.path, layer.source, false);
|
|
43
|
+
}
|
|
44
|
+
if (options.command === 'query') {
|
|
45
|
+
throw new Error(`No project config found at ${projectPath}, and no ObsessionDB profile is available.\n` +
|
|
46
|
+
`Run 'chkit obsessiondb login' to query ObsessionDB from any directory, or run 'chkit init' in a project.`);
|
|
47
|
+
}
|
|
48
|
+
throw new Error(`Config not found at ${projectPath}.\n` +
|
|
49
|
+
`Either run 'chkit init' in your project, or run 'chkit obsessiondb login' to use chkit from any directory.`);
|
|
50
|
+
}
|
|
51
|
+
async function readRawConfig(configPath, env) {
|
|
18
52
|
const mod = await import(pathToFileURL(configPath).href);
|
|
19
53
|
const candidate = (mod.default ?? mod.config);
|
|
20
54
|
if (!candidate) {
|
|
21
55
|
throw new Error(`Config file ${configPath} must export a default/config object or a function via defineConfig.`);
|
|
22
56
|
}
|
|
23
57
|
const isFn = isConfigFunction(candidate);
|
|
24
|
-
debug('config', `config export is ${isFn ? 'function' : 'object'}`);
|
|
25
|
-
const
|
|
26
|
-
|
|
27
|
-
|
|
58
|
+
debug('config', `config export is ${isFn ? 'function' : 'object'} (path=${configPath})`);
|
|
59
|
+
const raw = isFn ? await candidate(env) : candidate;
|
|
60
|
+
return { raw, path: configPath };
|
|
61
|
+
}
|
|
62
|
+
async function readProfileLayer(userDir, env, allowSynthesized) {
|
|
63
|
+
const profilePath = resolve(userDir, USER_PROFILE_CONFIG_FILE);
|
|
64
|
+
if (existsSync(profilePath)) {
|
|
65
|
+
debug('config', `found profile config at ${profilePath}`);
|
|
66
|
+
const { raw } = await readRawConfig(profilePath, env);
|
|
67
|
+
return { raw, path: profilePath, source: 'profile', origin: 'file' };
|
|
68
|
+
}
|
|
69
|
+
const credentialsPath = resolve(userDir, USER_CREDENTIALS_FILE);
|
|
70
|
+
if (existsSync(credentialsPath)) {
|
|
71
|
+
debug('config', `synthesizing profile layer from credentials at ${credentialsPath}`);
|
|
72
|
+
return synthesizedProfileLayer('credentials');
|
|
73
|
+
}
|
|
74
|
+
if (allowSynthesized) {
|
|
75
|
+
debug('config', 'synthesizing profile layer without existing credentials');
|
|
76
|
+
return synthesizedProfileLayer('synthetic');
|
|
77
|
+
}
|
|
78
|
+
return null;
|
|
79
|
+
}
|
|
80
|
+
function finalize(raw, path, source, profileLayered) {
|
|
81
|
+
const config = resolveConfig(raw);
|
|
82
|
+
debug('config', `loaded (source=${source}, profileLayered=${profileLayered})`, {
|
|
28
83
|
schema: config.schema,
|
|
29
84
|
outDir: config.outDir,
|
|
30
85
|
migrationsDir: config.migrationsDir,
|
|
31
|
-
clickhouse: config.clickhouse
|
|
86
|
+
clickhouse: config.clickhouse
|
|
87
|
+
? `${config.clickhouse.url} (db: ${config.clickhouse.database ?? 'default'})`
|
|
88
|
+
: 'not configured',
|
|
32
89
|
plugins: (config.plugins ?? []).length,
|
|
33
90
|
});
|
|
34
|
-
return { config, path
|
|
91
|
+
return { config, path, source, profileLayered };
|
|
92
|
+
}
|
|
93
|
+
async function loadObsessionDBRegistration() {
|
|
94
|
+
try {
|
|
95
|
+
const mod = (await import('@chkit/plugin-obsessiondb'));
|
|
96
|
+
if (typeof mod.obsessiondb !== 'function') {
|
|
97
|
+
throw new Error('missing obsessiondb export');
|
|
98
|
+
}
|
|
99
|
+
return mod.obsessiondb();
|
|
100
|
+
}
|
|
101
|
+
catch (error) {
|
|
102
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
103
|
+
throw new Error(`ObsessionDB profile fallback requires @chkit/plugin-obsessiondb, but it could not be loaded: ${message}`);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
async function synthesizedProfileLayer(origin) {
|
|
107
|
+
const raw = {
|
|
108
|
+
schema: [],
|
|
109
|
+
plugins: [await loadObsessionDBRegistration()],
|
|
110
|
+
};
|
|
111
|
+
return { raw, path: SYNTHESIZED_CONFIG_PATH, source: 'profile', origin };
|
|
35
112
|
}
|
|
36
113
|
export async function writeIfMissing(filePath, content) {
|
|
37
114
|
if (existsSync(filePath))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/runtime/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,OAAO,MAAM,cAAc,CAAA;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC,OAAO,EACL,aAAa,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/runtime/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extract-config-path.d.ts","sourceRoot":"","sources":["../../src/runtime/extract-config-path.ts"],"names":[],"mappings":"AAAA,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,CAQpE"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export function extractConfigPath(argv) {
|
|
2
|
+
for (let i = 0; i < argv.length; i += 1) {
|
|
3
|
+
const token = argv[i];
|
|
4
|
+
if (token === '--')
|
|
5
|
+
return undefined;
|
|
6
|
+
if (token === '--config')
|
|
7
|
+
return argv[i + 1];
|
|
8
|
+
if (token?.startsWith('--config='))
|
|
9
|
+
return token.slice('--config='.length);
|
|
10
|
+
}
|
|
11
|
+
return undefined;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=extract-config-path.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extract-config-path.js","sourceRoot":"","sources":["../../src/runtime/extract-config-path.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,iBAAiB,CAAC,IAAc;IAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACrB,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,SAAS,CAAA;QACpC,IAAI,KAAK,KAAK,UAAU;YAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;QAC5C,IAAI,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC;YAAE,OAAO,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IAC5E,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC"}
|
package/dist/runtime/help.js
CHANGED
|
@@ -7,8 +7,8 @@ export function formatGlobalHelp(registry, version) {
|
|
|
7
7
|
lines.push('');
|
|
8
8
|
lines.push('Commands:');
|
|
9
9
|
lines.push(` ${'init'.padEnd(14)} Scaffold a new project with config and example schema`);
|
|
10
|
-
const coreCommands = registry.commands.filter((c) =>
|
|
11
|
-
const pluginCommands = registry.commands.filter((c) => c.
|
|
10
|
+
const coreCommands = registry.commands.filter((c) => c.pluginName === 'core');
|
|
11
|
+
const pluginCommands = registry.commands.filter((c) => c.pluginName !== 'core');
|
|
12
12
|
for (const cmd of coreCommands) {
|
|
13
13
|
lines.push(` ${cmd.name.padEnd(14)} ${cmd.description}`);
|
|
14
14
|
}
|
package/dist/runtime/help.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/runtime/help.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,gBAAgB,CAAC,QAAyB,EAAE,OAAe;IACzE,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,KAAK,CAAC,IAAI,CAAC,UAAU,OAAO,uBAAuB,CAAC,CAAA;IACpD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACd,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACpB,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAA;IACzC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACd,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAEvB,KAAK,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,wDAAwD,CAAC,CAAA;IAE1F,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/runtime/help.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime/plugin-runtime/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime/plugin-runtime/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAEpE,OAAO,KAAK,EACV,SAAS,EAGT,aAAa,EACd,MAAM,kBAAkB,CAAA;AAmCzB,wBAAsB,iBAAiB,CAAC,KAAK,EAAE;IAC7C,MAAM,EAAE,iBAAiB,CAAA;IACzB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,SAAS,EAAE,CAAA;CAC9B,GAAG,OAAO,CAAC,aAAa,CAAC,CA6LzB"}
|
|
@@ -1,28 +1,31 @@
|
|
|
1
|
-
import { resolve } from 'node:path';
|
|
2
1
|
import { createClickHouseExecutor } from '@chkit/clickhouse';
|
|
2
|
+
import { resolveOptions } from '@chkit/core';
|
|
3
3
|
import { debug } from '../debug.js';
|
|
4
4
|
import { formatPluginError } from './errors.js';
|
|
5
5
|
import { wrapExecutorWithDebug } from './executor-debug.js';
|
|
6
|
-
import {
|
|
6
|
+
import { normalizePluginRegistration, validatePlugin, } from './loader.js';
|
|
7
7
|
import { NULL_EXECUTOR } from './null-executor.js';
|
|
8
8
|
import { UNFILTERED_TABLE_SCOPE, runOnAfterApply, runOnBeforeApply, runOnBeforePluginCommand, runOnCheck, runOnCheckReport, runOnComplete, runOnConfigLoaded, runOnInit, runOnPlanCreated, runOnSchemaLoaded, } from './hooks.js';
|
|
9
|
+
function resolvePluginOptions(plugin, options) {
|
|
10
|
+
if (!plugin.optionsSchema)
|
|
11
|
+
return options;
|
|
12
|
+
const result = plugin.optionsSchema.safeParse(options);
|
|
13
|
+
// Soft-validate at load time: command-level optionsSchema catches strict errors at dispatch.
|
|
14
|
+
// This lets hooks see filled-in defaults when valid, and raw values otherwise.
|
|
15
|
+
if (!result.success)
|
|
16
|
+
return options;
|
|
17
|
+
return result.data;
|
|
18
|
+
}
|
|
9
19
|
export async function loadPluginRuntime(input) {
|
|
10
20
|
const registrations = input.config.plugins ?? [];
|
|
11
21
|
const loaded = [];
|
|
12
22
|
const byName = new Map();
|
|
13
|
-
const configDir = resolve(input.configPath, '..');
|
|
14
23
|
for (const registration of registrations) {
|
|
15
24
|
const normalized = normalizePluginRegistration(registration);
|
|
16
25
|
if (!normalized.enabled)
|
|
17
26
|
continue;
|
|
18
|
-
const plugin = normalized.
|
|
19
|
-
|
|
20
|
-
: await importPluginModule(resolve(configDir, normalized.resolvePath));
|
|
21
|
-
if (!plugin)
|
|
22
|
-
continue;
|
|
23
|
-
const sourceLabel = normalized.kind === 'inline'
|
|
24
|
-
? `inline registration${normalized.nameHint ? ` (${normalized.nameHint})` : ''}`
|
|
25
|
-
: resolve(configDir, normalized.resolvePath);
|
|
27
|
+
const plugin = normalized.plugin;
|
|
28
|
+
const sourceLabel = `inline registration${normalized.nameHint ? ` (${normalized.nameHint})` : ''}`;
|
|
26
29
|
validatePlugin(input.cliVersion, plugin, sourceLabel);
|
|
27
30
|
if (normalized.nameHint && normalized.nameHint !== plugin.manifest.name) {
|
|
28
31
|
throw new Error(`Plugin name mismatch for ${sourceLabel}: configured "${normalized.nameHint}" but manifest is "${plugin.manifest.name}".`);
|
|
@@ -34,23 +37,25 @@ export async function loadPluginRuntime(input) {
|
|
|
34
37
|
hooks: Object.keys(plugin.hooks ?? {}),
|
|
35
38
|
commands: (plugin.commands ?? []).map((c) => c.name),
|
|
36
39
|
});
|
|
37
|
-
const
|
|
40
|
+
const resolved = resolvePluginOptions(plugin, normalized.options);
|
|
41
|
+
const item = { plugin, options: resolved, rawOptions: normalized.options };
|
|
38
42
|
loaded.push(item);
|
|
39
43
|
byName.set(plugin.manifest.name, item);
|
|
40
44
|
}
|
|
41
45
|
for (const plugin of input.internalPlugins ?? []) {
|
|
42
46
|
if (byName.has(plugin.manifest.name))
|
|
43
47
|
continue;
|
|
44
|
-
const
|
|
48
|
+
const resolved = resolvePluginOptions(plugin, {});
|
|
49
|
+
const item = { plugin, options: resolved, rawOptions: {} };
|
|
45
50
|
loaded.push(item);
|
|
46
51
|
byName.set(plugin.manifest.name, item);
|
|
47
52
|
}
|
|
48
|
-
|
|
53
|
+
const runtimeSelf = {
|
|
49
54
|
plugins: loaded,
|
|
50
55
|
async resolveContext(input) {
|
|
51
56
|
const hasClickhouseConfig = !!input.config.clickhouse;
|
|
52
57
|
debug('context', `resolving executor — clickhouse config: ${hasClickhouseConfig ? 'yes' : 'no'}`);
|
|
53
|
-
const rawExecutor =
|
|
58
|
+
const rawExecutor = input.config.clickhouse
|
|
54
59
|
? createClickHouseExecutor(input.config.clickhouse)
|
|
55
60
|
: NULL_EXECUTOR;
|
|
56
61
|
const defaults = {
|
|
@@ -126,19 +131,48 @@ export async function loadPluginRuntime(input) {
|
|
|
126
131
|
});
|
|
127
132
|
if (beforeResult.handled)
|
|
128
133
|
return beforeResult.exitCode;
|
|
134
|
+
let resolvedOptions = item.options;
|
|
135
|
+
if (command.optionsSchema) {
|
|
136
|
+
try {
|
|
137
|
+
resolvedOptions = resolveOptions(command.optionsSchema, item.options, context.flags, command.flagMapping ?? {});
|
|
138
|
+
}
|
|
139
|
+
catch (error) {
|
|
140
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
141
|
+
if (context.jsonMode) {
|
|
142
|
+
context.print({ ok: false, command: commandName, error: message });
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
context.print(`${commandName} failed: ${message}`);
|
|
146
|
+
}
|
|
147
|
+
return 2;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
const pluginContext = await runtimeSelf.resolveContext({
|
|
151
|
+
config: context.config,
|
|
152
|
+
configPath: context.configPath,
|
|
153
|
+
command: commandName,
|
|
154
|
+
flags: context.flags,
|
|
155
|
+
});
|
|
129
156
|
try {
|
|
130
157
|
const code = await command.run({
|
|
131
158
|
...context,
|
|
132
159
|
pluginName,
|
|
133
|
-
options:
|
|
160
|
+
options: resolvedOptions,
|
|
161
|
+
rawOptions: item.rawOptions,
|
|
134
162
|
tableScope: context.tableScope ?? UNFILTERED_TABLE_SCOPE,
|
|
163
|
+
pluginRuntime: runtimeSelf,
|
|
164
|
+
pluginContext,
|
|
135
165
|
});
|
|
136
166
|
return typeof code === 'number' ? code : 0;
|
|
137
167
|
}
|
|
138
168
|
catch (error) {
|
|
139
169
|
throw formatPluginError(item.plugin.manifest.name, `command:${commandName}`, error);
|
|
140
170
|
}
|
|
171
|
+
finally {
|
|
172
|
+
await runtimeSelf.disposeContext(pluginContext);
|
|
173
|
+
}
|
|
141
174
|
},
|
|
142
175
|
};
|
|
176
|
+
return runtimeSelf;
|
|
143
177
|
}
|
|
144
178
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runtime/plugin-runtime/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runtime/plugin-runtime/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
import type { ChxPluginRegistration } from '@chkit/core';
|
|
2
2
|
import type { ChxPlugin } from '../../plugins.js';
|
|
3
3
|
export interface NormalizedRegistration {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
inlinePlugin?: ChxPlugin;
|
|
7
|
-
nameHint?: string;
|
|
4
|
+
plugin: ChxPlugin;
|
|
5
|
+
nameHint: string | undefined;
|
|
8
6
|
enabled: boolean;
|
|
9
7
|
options: Record<string, unknown>;
|
|
10
8
|
}
|
|
11
9
|
export declare function normalizePluginRegistration(entry: ChxPluginRegistration): NormalizedRegistration;
|
|
12
|
-
export declare function validatePlugin(cliVersion: string, plugin: ChxPlugin,
|
|
13
|
-
export declare function importPluginModule(absolutePath: string): Promise<ChxPlugin>;
|
|
10
|
+
export declare function validatePlugin(cliVersion: string, plugin: ChxPlugin, sourceLabel: string): void;
|
|
14
11
|
//# sourceMappingURL=loader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/runtime/plugin-runtime/loader.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/runtime/plugin-runtime/loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAExD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAEjD,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,SAAS,CAAA;IACjB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACjC;AAED,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,qBAAqB,GAC3B,sBAAsB,CAOxB;AAUD,wBAAgB,cAAc,CAC5B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,MAAM,GAClB,IAAI,CAgCN"}
|
|
@@ -1,31 +1,9 @@
|
|
|
1
|
-
import { pathToFileURL } from 'node:url';
|
|
2
|
-
import { isInlinePluginRegistration } from '../../plugins.js';
|
|
3
1
|
export function normalizePluginRegistration(entry) {
|
|
4
|
-
if (typeof entry === 'string') {
|
|
5
|
-
return {
|
|
6
|
-
kind: 'legacy',
|
|
7
|
-
resolvePath: entry,
|
|
8
|
-
enabled: true,
|
|
9
|
-
options: {},
|
|
10
|
-
};
|
|
11
|
-
}
|
|
12
|
-
if (isInlinePluginRegistration(entry)) {
|
|
13
|
-
return {
|
|
14
|
-
kind: 'inline',
|
|
15
|
-
resolvePath: '',
|
|
16
|
-
inlinePlugin: entry.plugin,
|
|
17
|
-
nameHint: entry.name,
|
|
18
|
-
enabled: entry.enabled !== false,
|
|
19
|
-
options: entry.options ?? {},
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
const legacy = entry;
|
|
23
2
|
return {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
options: legacy.options ?? {},
|
|
3
|
+
plugin: entry.plugin,
|
|
4
|
+
nameHint: entry.name,
|
|
5
|
+
enabled: entry.enabled !== false,
|
|
6
|
+
options: entry.options ?? {},
|
|
29
7
|
};
|
|
30
8
|
}
|
|
31
9
|
function parseCliMajor(version) {
|
|
@@ -35,10 +13,10 @@ function parseCliMajor(version) {
|
|
|
35
13
|
}
|
|
36
14
|
return major;
|
|
37
15
|
}
|
|
38
|
-
export function validatePlugin(cliVersion, plugin,
|
|
16
|
+
export function validatePlugin(cliVersion, plugin, sourceLabel) {
|
|
39
17
|
const name = plugin.manifest.name;
|
|
40
18
|
if (!name || name.trim().length === 0) {
|
|
41
|
-
throw new Error(`Plugin at ${
|
|
19
|
+
throw new Error(`Plugin at ${sourceLabel} has an empty manifest.name.`);
|
|
42
20
|
}
|
|
43
21
|
if (plugin.manifest.apiVersion !== 1) {
|
|
44
22
|
throw new Error(`Plugin "${name}" requires apiVersion=${String(plugin.manifest.apiVersion)} but CLI supports apiVersion=1.`);
|
|
@@ -56,15 +34,4 @@ export function validatePlugin(cliVersion, plugin, sourcePath) {
|
|
|
56
34
|
throw new Error(`Plugin "${name}" is incompatible with CLI ${cliVersion}. Requires cli major <= ${compatibility.maxMajor}.`);
|
|
57
35
|
}
|
|
58
36
|
}
|
|
59
|
-
export async function importPluginModule(absolutePath) {
|
|
60
|
-
const mod = (await import(pathToFileURL(absolutePath).href));
|
|
61
|
-
const candidate = (mod.default ?? mod.plugin);
|
|
62
|
-
if (!candidate || typeof candidate !== 'object') {
|
|
63
|
-
throw new Error(`Plugin module ${absolutePath} must export default definePlugin(...)`);
|
|
64
|
-
}
|
|
65
|
-
if (!candidate.manifest || typeof candidate.manifest !== 'object') {
|
|
66
|
-
throw new Error(`Plugin module ${absolutePath} is missing manifest.`);
|
|
67
|
-
}
|
|
68
|
-
return candidate;
|
|
69
|
-
}
|
|
70
37
|
//# sourceMappingURL=loader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/runtime/plugin-runtime/loader.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/runtime/plugin-runtime/loader.ts"],"names":[],"mappings":"AAWA,MAAM,UAAU,2BAA2B,CACzC,KAA4B;IAE5B,OAAO;QACL,MAAM,EAAE,KAAK,CAAC,MAAmB;QACjC,QAAQ,EAAE,KAAK,CAAC,IAAI;QACpB,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,KAAK;QAChC,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE;KAC7B,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CAAC,OAAe;IACpC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAA;IACzD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,wBAAwB,OAAO,0BAA0B,CAAC,CAAA;IAC5E,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,UAAkB,EAClB,MAAiB,EACjB,WAAmB;IAEnB,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAA;IACjC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,aAAa,WAAW,8BAA8B,CAAC,CAAA;IACzE,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CACb,WAAW,IAAI,yBAAyB,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,iCAAiC,CAC5G,CAAA;IACH,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAA;IACxD,IAAI,CAAC,aAAa;QAAE,OAAM;IAE1B,MAAM,QAAQ,GAAG,aAAa,CAAC,UAAU,CAAC,CAAA;IAC1C,IACE,aAAa,CAAC,QAAQ,KAAK,SAAS;QACpC,QAAQ,GAAG,aAAa,CAAC,QAAQ,EACjC,CAAC;QACD,MAAM,IAAI,KAAK,CACb,WAAW,IAAI,8BAA8B,UAAU,2BAA2B,aAAa,CAAC,QAAQ,GAAG,CAC5G,CAAA;IACH,CAAC;IACD,IACE,aAAa,CAAC,QAAQ,KAAK,SAAS;QACpC,QAAQ,GAAG,aAAa,CAAC,QAAQ,EACjC,CAAC;QACD,MAAM,IAAI,KAAK,CACb,WAAW,IAAI,8BAA8B,UAAU,2BAA2B,aAAa,CAAC,QAAQ,GAAG,CAC5G,CAAA;IACH,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-config.d.ts","sourceRoot":"","sources":["../../src/runtime/user-config.ts"],"names":[],"mappings":"AAIA,wBAAgB,gBAAgB,IAAI,MAAM,CAIzC;AAED,eAAO,MAAM,wBAAwB,cAAc,CAAA;AACnD,eAAO,MAAM,qBAAqB,qBAAqB,CAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { homedir } from 'node:os';
|
|
2
|
+
import { join } from 'node:path';
|
|
3
|
+
import process from 'node:process';
|
|
4
|
+
export function getUserConfigDir() {
|
|
5
|
+
const xdgConfig = process.env.XDG_CONFIG_HOME;
|
|
6
|
+
const configDir = xdgConfig && xdgConfig.length > 0 ? xdgConfig : join(homedir(), '.config');
|
|
7
|
+
return join(configDir, 'chkit');
|
|
8
|
+
}
|
|
9
|
+
export const USER_PROFILE_CONFIG_FILE = 'config.ts';
|
|
10
|
+
export const USER_CREDENTIALS_FILE = 'credentials.json';
|
|
11
|
+
//# sourceMappingURL=user-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-config.js","sourceRoot":"","sources":["../../src/runtime/user-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,OAAO,MAAM,cAAc,CAAA;AAElC,MAAM,UAAU,gBAAgB;IAC9B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAA;IAC7C,MAAM,SAAS,GAAG,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAA;IAC5F,OAAO,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;AACjC,CAAC;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,WAAW,CAAA;AACnD,MAAM,CAAC,MAAM,qBAAqB,GAAG,kBAAkB,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "chkit",
|
|
3
|
-
"version": "0.1.0-beta.
|
|
3
|
+
"version": "0.1.0-beta.24",
|
|
4
4
|
"description": "ClickHouse schema and migration CLI for TypeScript projects",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "ObsessionDB",
|
|
@@ -40,9 +40,12 @@
|
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
42
|
"fast-glob": "^3.3.2",
|
|
43
|
-
"@chkit/clickhouse": "0.1.0-beta.
|
|
44
|
-
"@chkit/codegen": "0.1.0-beta.
|
|
45
|
-
"@chkit/core": "0.1.0-beta.
|
|
43
|
+
"@chkit/clickhouse": "0.1.0-beta.24",
|
|
44
|
+
"@chkit/codegen": "0.1.0-beta.24",
|
|
45
|
+
"@chkit/core": "0.1.0-beta.24",
|
|
46
46
|
"@logtape/logtape": "^2.0.5"
|
|
47
|
+
},
|
|
48
|
+
"optionalDependencies": {
|
|
49
|
+
"@chkit/plugin-obsessiondb": "0.1.0-beta.22"
|
|
47
50
|
}
|
|
48
51
|
}
|