@neurodock/cli 0.1.2 → 0.4.3

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 (79) hide show
  1. package/CHANGELOG.md +125 -2
  2. package/LICENSE +657 -7
  3. package/README.md +148 -25
  4. package/dist/clients/claude-code.d.ts.map +1 -1
  5. package/dist/clients/claude-code.js +3 -1
  6. package/dist/clients/claude-code.js.map +1 -1
  7. package/dist/clients/claude-desktop.d.ts.map +1 -1
  8. package/dist/clients/claude-desktop.js +3 -1
  9. package/dist/clients/claude-desktop.js.map +1 -1
  10. package/dist/clients/cursor.d.ts.map +1 -1
  11. package/dist/clients/cursor.js +3 -1
  12. package/dist/clients/cursor.js.map +1 -1
  13. package/dist/clients/index.d.ts.map +1 -1
  14. package/dist/clients/index.js.map +1 -1
  15. package/dist/commands/doctor.d.ts.map +1 -1
  16. package/dist/commands/doctor.js +59 -4
  17. package/dist/commands/doctor.js.map +1 -1
  18. package/dist/commands/examples.d.ts +28 -0
  19. package/dist/commands/examples.d.ts.map +1 -0
  20. package/dist/commands/examples.js +168 -0
  21. package/dist/commands/examples.js.map +1 -0
  22. package/dist/commands/host.d.ts +11 -0
  23. package/dist/commands/host.d.ts.map +1 -0
  24. package/dist/commands/host.js +63 -0
  25. package/dist/commands/host.js.map +1 -0
  26. package/dist/commands/init.d.ts.map +1 -1
  27. package/dist/commands/init.js +14 -4
  28. package/dist/commands/init.js.map +1 -1
  29. package/dist/commands/install-all.d.ts +78 -0
  30. package/dist/commands/install-all.d.ts.map +1 -0
  31. package/dist/commands/install-all.js +283 -0
  32. package/dist/commands/install-all.js.map +1 -0
  33. package/dist/commands/plugin.d.ts +122 -0
  34. package/dist/commands/plugin.d.ts.map +1 -0
  35. package/dist/commands/plugin.js +545 -0
  36. package/dist/commands/plugin.js.map +1 -0
  37. package/dist/commands/profile.d.ts.map +1 -1
  38. package/dist/commands/profile.js +11 -2
  39. package/dist/commands/profile.js.map +1 -1
  40. package/dist/commands/uninstall.d.ts +36 -0
  41. package/dist/commands/uninstall.d.ts.map +1 -0
  42. package/dist/commands/uninstall.js +188 -0
  43. package/dist/commands/uninstall.js.map +1 -0
  44. package/dist/commands/update.d.ts +24 -0
  45. package/dist/commands/update.d.ts.map +1 -0
  46. package/dist/commands/update.js +179 -0
  47. package/dist/commands/update.js.map +1 -0
  48. package/dist/commands/validate.d.ts +24 -0
  49. package/dist/commands/validate.d.ts.map +1 -0
  50. package/dist/commands/validate.js +163 -0
  51. package/dist/commands/validate.js.map +1 -0
  52. package/dist/index.d.ts +1 -1
  53. package/dist/index.d.ts.map +1 -1
  54. package/dist/index.js +236 -6
  55. package/dist/index.js.map +1 -1
  56. package/dist/lib/json-patch.d.ts.map +1 -1
  57. package/dist/lib/json-patch.js +1 -1
  58. package/dist/lib/json-patch.js.map +1 -1
  59. package/dist/lib/mcp-entries.d.ts.map +1 -1
  60. package/dist/lib/mcp-entries.js +25 -3
  61. package/dist/lib/mcp-entries.js.map +1 -1
  62. package/dist/lib/paths.d.ts +10 -0
  63. package/dist/lib/paths.d.ts.map +1 -1
  64. package/dist/lib/paths.js +19 -2
  65. package/dist/lib/paths.js.map +1 -1
  66. package/dist/lib/plugin-schema.d.ts +12 -0
  67. package/dist/lib/plugin-schema.d.ts.map +1 -0
  68. package/dist/lib/plugin-schema.js +71 -0
  69. package/dist/lib/plugin-schema.js.map +1 -0
  70. package/dist/profile/defaults.d.ts.map +1 -1
  71. package/dist/profile/defaults.js +3 -1
  72. package/dist/profile/defaults.js.map +1 -1
  73. package/dist/profile/loader.d.ts.map +1 -1
  74. package/dist/profile/loader.js +3 -1
  75. package/dist/profile/loader.js.map +1 -1
  76. package/dist/profile/validator.d.ts.map +1 -1
  77. package/dist/profile/validator.js +5 -1
  78. package/dist/profile/validator.js.map +1 -1
  79. package/package.json +24 -4
@@ -0,0 +1,163 @@
1
+ import { existsSync, readFileSync } from "node:fs";
2
+ import { Ajv2020 } from "ajv/dist/2020.js";
3
+ import addFormats from "ajv-formats";
4
+ import { LineCounter, parseDocument } from "yaml";
5
+ import { readEnv } from "../lib/env.js";
6
+ import { profilePath } from "../lib/paths.js";
7
+ import { loadSchema } from "../profile/validator.js";
8
+ export async function runValidate(options, deps = {}) {
9
+ const env = readEnv(deps.envOverrides ?? {});
10
+ const resolvedPath = options.file !== undefined && options.file.trim().length > 0
11
+ ? options.file
12
+ : profilePath(env);
13
+ if (!existsSync(resolvedPath)) {
14
+ return {
15
+ resolvedPath,
16
+ missing: true,
17
+ valid: false,
18
+ violations: [
19
+ {
20
+ path: "/",
21
+ message: "profile file does not exist",
22
+ keyword: "missing",
23
+ },
24
+ ],
25
+ };
26
+ }
27
+ const text = readFileSync(resolvedPath, "utf8");
28
+ const lineCounter = new LineCounter();
29
+ let parsed;
30
+ try {
31
+ const doc = parseDocument(text, { lineCounter });
32
+ if (doc.errors.length > 0) {
33
+ const first = doc.errors[0];
34
+ const message = first?.message ?? "YAML parse error";
35
+ return {
36
+ resolvedPath,
37
+ missing: false,
38
+ parseError: message,
39
+ valid: false,
40
+ violations: [
41
+ {
42
+ path: "/",
43
+ message,
44
+ keyword: "parse",
45
+ ...(first?.linePos?.[0]?.line !== undefined
46
+ ? { line: first.linePos[0].line }
47
+ : {}),
48
+ },
49
+ ],
50
+ };
51
+ }
52
+ parsed = doc.toJS();
53
+ }
54
+ catch (err) {
55
+ const message = err instanceof Error ? err.message : String(err);
56
+ return {
57
+ resolvedPath,
58
+ missing: false,
59
+ parseError: message,
60
+ valid: false,
61
+ violations: [{ path: "/", message, keyword: "parse" }],
62
+ };
63
+ }
64
+ const validator = buildValidator(options.strict);
65
+ const ok = validator(parsed);
66
+ if (ok) {
67
+ return { resolvedPath, missing: false, valid: true, violations: [] };
68
+ }
69
+ const errors = validator.errors ?? [];
70
+ const violations = errors.map((e) => {
71
+ const instancePath = e.instancePath === "" ? "/" : e.instancePath;
72
+ const path = e.keyword === "additionalProperties" &&
73
+ typeof e.params["additionalProperty"] ===
74
+ "string"
75
+ ? `${instancePath}/${e.params["additionalProperty"] ?? ""}`
76
+ : instancePath;
77
+ const line = locateLine(text, instancePath, lineCounter);
78
+ const out = {
79
+ path,
80
+ message: e.message ?? "invalid",
81
+ keyword: e.keyword,
82
+ ...(line !== undefined ? { line } : {}),
83
+ };
84
+ return out;
85
+ });
86
+ return { resolvedPath, missing: false, valid: false, violations };
87
+ }
88
+ let cachedStrict = null;
89
+ let cachedLenient = null;
90
+ function buildValidator(strict) {
91
+ if (strict && cachedStrict)
92
+ return cachedStrict;
93
+ if (!strict && cachedLenient)
94
+ return cachedLenient;
95
+ const schema = JSON.parse(JSON.stringify(loadSchema()));
96
+ if (strict)
97
+ forceAdditionalPropertiesFalse(schema);
98
+ const ajv = new Ajv2020({
99
+ allErrors: true,
100
+ strict: false,
101
+ allowUnionTypes: true,
102
+ });
103
+ const addFormatsFn = addFormats ?? addFormats;
104
+ addFormatsFn(ajv);
105
+ const compiled = ajv.compile(schema);
106
+ if (strict)
107
+ cachedStrict = compiled;
108
+ else
109
+ cachedLenient = compiled;
110
+ return compiled;
111
+ }
112
+ function forceAdditionalPropertiesFalse(node) {
113
+ if (Array.isArray(node)) {
114
+ for (const item of node)
115
+ forceAdditionalPropertiesFalse(item);
116
+ return;
117
+ }
118
+ if (!isObject(node))
119
+ return;
120
+ if (node["type"] === "object" || isObject(node["properties"])) {
121
+ node["additionalProperties"] = false;
122
+ }
123
+ for (const value of Object.values(node)) {
124
+ if (isObject(value) || Array.isArray(value)) {
125
+ forceAdditionalPropertiesFalse(value);
126
+ }
127
+ }
128
+ }
129
+ function isObject(x) {
130
+ return typeof x === "object" && x !== null && !Array.isArray(x);
131
+ }
132
+ function locateLine(source, instancePath, lineCounter) {
133
+ if (instancePath === "" || instancePath === "/")
134
+ return undefined;
135
+ const segments = instancePath
136
+ .split("/")
137
+ .filter((s) => s.length > 0)
138
+ .map((s) => s.replace(/~1/g, "/").replace(/~0/g, "~"));
139
+ if (segments.length === 0)
140
+ return undefined;
141
+ try {
142
+ const doc = parseDocument(source, { lineCounter });
143
+ let node = doc.getIn(segments, true);
144
+ if (node === undefined || node === null) {
145
+ for (let depth = segments.length - 1; depth >= 1 && (node === undefined || node === null); depth -= 1) {
146
+ node = doc.getIn(segments.slice(0, depth), true);
147
+ }
148
+ }
149
+ const range = node?.range;
150
+ if (!range || range.length === 0 || range[0] === undefined)
151
+ return undefined;
152
+ const pos = lineCounter.linePos(range[0]);
153
+ return pos.line;
154
+ }
155
+ catch {
156
+ return undefined;
157
+ }
158
+ }
159
+ export function formatViolation(v, file) {
160
+ const loc = v.line !== undefined ? `${file}:${v.line}` : file;
161
+ return ` ${loc} ${v.path} (${v.keyword}): ${v.message}`;
162
+ }
163
+ //# sourceMappingURL=validate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
2
  import { Command } from "commander";
3
- export declare const CLI_VERSION = "0.1.0";
3
+ export declare const CLI_VERSION = "0.4.3";
4
4
  export declare function buildProgram(): Command;
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,eAAO,MAAM,WAAW,UAAU,CAAC;AAEnC,wBAAgB,YAAY,IAAI,OAAO,CAwEtC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsBpC,eAAO,MAAM,WAAW,UAAU,CAAC;AAEnC,wBAAgB,YAAY,IAAI,OAAO,CAyatC"}
package/dist/index.js CHANGED
@@ -4,8 +4,15 @@ import chalk from "chalk";
4
4
  import { runInit } from "./commands/init.js";
5
5
  import { runDoctor } from "./commands/doctor.js";
6
6
  import { runProfileValidate, runProfileShow } from "./commands/profile.js";
7
+ import { runValidate, formatViolation } from "./commands/validate.js";
8
+ import { runUpdate } from "./commands/update.js";
9
+ import { runUninstall } from "./commands/uninstall.js";
10
+ import { runHostInstall, runHostUninstall } from "./commands/host.js";
11
+ import { runInstallAll } from "./commands/install-all.js";
12
+ import { runExamples } from "./commands/examples.js";
13
+ import { runPluginAdd, runPluginRemove, runPluginList, runPluginEnable, runPluginDisable, runPluginValidate, } from "./commands/plugin.js";
7
14
  import { colorEnabled } from "./lib/env.js";
8
- export const CLI_VERSION = "0.1.0";
15
+ export const CLI_VERSION = "0.4.3";
9
16
  export function buildProgram() {
10
17
  const program = new Command();
11
18
  program
@@ -23,11 +30,57 @@ export function buildProgram() {
23
30
  .action(async (opts) => {
24
31
  const client = validateClient(opts.client);
25
32
  const profile = validateProfile(opts.profile);
26
- const result = await runInit({ client, profile, dryRun: opts.dryRun, yes: opts.yes });
33
+ const result = await runInit({
34
+ client,
35
+ profile,
36
+ dryRun: opts.dryRun,
37
+ yes: opts.yes,
38
+ });
27
39
  for (const m of result.messages)
28
40
  print(m);
29
41
  process.exit(0);
30
42
  });
43
+ program
44
+ .command("install-all")
45
+ .description("install the 6 Python MCP servers and wire MCP clients in one step")
46
+ .option("--client <id>", "claude-desktop | claude-code | cursor | all", "all")
47
+ .option("--profile <id>", "minimal | example", "example")
48
+ .option("--installer <id>", "uv | pip | auto", "auto")
49
+ .option("--skip-install", "skip the Python install step (only run init)", false)
50
+ .option("--yes", "answer yes to all prompts (idempotent re-runs, collisions)", false)
51
+ .option("--dry-run", "print what would happen without writing anything", false)
52
+ .option("--no-native-host", "skip registering the optional native-messaging host (browser extension <-> profile.yaml)")
53
+ .action(async (opts) => {
54
+ const client = validateClient(opts.client);
55
+ const profile = validateProfile(opts.profile);
56
+ const installer = validateInstaller(opts.installer);
57
+ const r = await runInstallAll({
58
+ client,
59
+ profile,
60
+ installer,
61
+ skipInstall: opts.skipInstall === true,
62
+ yes: opts.yes === true,
63
+ dryRun: opts.dryRun === true,
64
+ noNativeHost: opts.nativeHost === false,
65
+ });
66
+ for (const m of r.messages)
67
+ print(m);
68
+ process.exit(r.exitCode);
69
+ });
70
+ program
71
+ .command("examples")
72
+ .description("print copy-pasteable prompts that exercise every wired NeuroDock MCP tool")
73
+ .option("--server <name>", "filter to a single server (e.g. neurodock-chronometric)")
74
+ .option("--json", "print the example data as JSON for scripting", false)
75
+ .action(async (opts) => {
76
+ const r = await runExamples({
77
+ ...(opts.server !== undefined ? { server: opts.server } : {}),
78
+ json: opts.json === true,
79
+ });
80
+ for (const m of r.messages)
81
+ print(m);
82
+ process.exit(0);
83
+ });
31
84
  program
32
85
  .command("doctor")
33
86
  .description("diagnose your NeuroDock installation")
@@ -41,7 +94,9 @@ export function buildProgram() {
41
94
  print(r.ok ? "All checks passed." : "One or more checks failed.");
42
95
  process.exit(r.ok ? 0 : 1);
43
96
  });
44
- const profileCmd = program.command("profile").description("profile utilities");
97
+ const profileCmd = program
98
+ .command("profile")
99
+ .description("profile utilities");
45
100
  profileCmd
46
101
  .command("validate")
47
102
  .description("validate ~/.neurodock/profile.yaml against the schema")
@@ -73,10 +128,177 @@ export function buildProgram() {
73
128
  process.stdout.write(r.yaml);
74
129
  process.exit(0);
75
130
  });
131
+ program
132
+ .command("validate")
133
+ .description("validate a NeuroDock profile against the canonical schema")
134
+ .option("--file <path>", "path to the profile file (default: resolved profile path)")
135
+ .option("--strict", "also flag unknown keys (default allows forward-compat extras)", false)
136
+ .action(async (opts) => {
137
+ const r = await runValidate({
138
+ ...(opts.file !== undefined ? { file: opts.file } : {}),
139
+ strict: opts.strict === true,
140
+ });
141
+ if (r.missing) {
142
+ print(`No profile at ${r.resolvedPath}. Run 'neurodock init' to create one.`);
143
+ process.exit(1);
144
+ }
145
+ if (r.parseError) {
146
+ print(`Parse error in ${r.resolvedPath}: ${r.parseError}`);
147
+ process.exit(1);
148
+ }
149
+ if (r.valid) {
150
+ print(`Valid: ${r.resolvedPath}`);
151
+ process.exit(0);
152
+ }
153
+ print(`Invalid: ${r.resolvedPath}`);
154
+ for (const v of r.violations) {
155
+ print(formatViolation(v, r.resolvedPath));
156
+ }
157
+ process.exit(1);
158
+ });
159
+ program
160
+ .command("update")
161
+ .description("re-run install adapters to refresh existing NeuroDock MCP entries")
162
+ .option("--client <id>", "claude-desktop | claude-code | cursor | all", "all")
163
+ .option("--dry-run", "print the diff without writing anything", false)
164
+ .action(async (opts) => {
165
+ const client = validateClient(opts.client);
166
+ const r = await runUpdate({ client, dryRun: opts.dryRun === true });
167
+ for (const m of r.messages)
168
+ print(m);
169
+ process.exit(0);
170
+ });
171
+ program
172
+ .command("uninstall")
173
+ .description("remove NeuroDock MCP entries from your clients; optionally purge data")
174
+ .option("--client <id>", "claude-desktop | claude-code | cursor | all", "all")
175
+ .option("--dry-run", "print the diff without writing anything", false)
176
+ .option("--yes", "skip interactive prompts (still preserves data unless --purge)", false)
177
+ .option("--purge", "also delete ~/.neurodock/profile.yaml and cognitive-graph.sqlite", false)
178
+ .action(async (opts) => {
179
+ const client = validateClient(opts.client);
180
+ const r = await runUninstall({
181
+ client,
182
+ dryRun: opts.dryRun === true,
183
+ yes: opts.yes === true,
184
+ purge: opts.purge === true,
185
+ });
186
+ for (const m of r.messages)
187
+ print(m);
188
+ process.exit(0);
189
+ });
190
+ const hostCmd = program
191
+ .command("host")
192
+ .description("manage the optional native messaging host (browser extension <-> ~/.neurodock/profile.yaml)");
193
+ hostCmd
194
+ .command("install")
195
+ .description("register the NeuroDock native messaging host with installed browsers")
196
+ .option("--extension-id <id>", "browser extension id allowed to connect (repeatable)", (value, prev) => [...prev, value], [])
197
+ .action((opts) => {
198
+ const result = runHostInstall({ extensionIds: opts.extensionId });
199
+ print(`Installing com.neurodock.profile (platform=${result.platform})`);
200
+ for (const o of result.outcomes) {
201
+ const detail = o.detail ? ` — ${o.detail}` : "";
202
+ print(` [${o.action.padEnd(6)}] ${o.browser.padEnd(10)} ${o.manifestPath}${detail}`);
203
+ }
204
+ process.exit(0);
205
+ });
206
+ hostCmd
207
+ .command("uninstall")
208
+ .description("remove the NeuroDock native messaging host manifests / registry pointers")
209
+ .action(() => {
210
+ const result = runHostUninstall();
211
+ print(`Removing com.neurodock.profile (platform=${result.platform})`);
212
+ for (const o of result.outcomes) {
213
+ const detail = o.detail ? ` — ${o.detail}` : "";
214
+ print(` [${o.action.padEnd(6)}] ${o.browser.padEnd(10)} ${o.manifestPath}${detail}`);
215
+ }
216
+ process.exit(0);
217
+ });
218
+ const pluginCmd = program
219
+ .command("plugin")
220
+ .description("manage NeuroDock plugins under ~/.neurodock/plugins/ (see ADR 0007)");
221
+ pluginCmd
222
+ .command("add <source>")
223
+ .description("install a plugin from a local directory into ~/.neurodock/plugins/<name>/")
224
+ .option("--yes", "skip the overwrite prompt; refuse without --force", false)
225
+ .option("--dry-run", "print what would happen without writing anything", false)
226
+ .option("--force", "overwrite an existing install of the same plugin name", false)
227
+ .action(async (source, opts) => {
228
+ const r = await runPluginAdd({
229
+ source,
230
+ yes: opts.yes === true,
231
+ dryRun: opts.dryRun === true,
232
+ force: opts.force === true,
233
+ });
234
+ for (const m of r.messages)
235
+ print(m);
236
+ process.exit(r.exitCode);
237
+ });
238
+ pluginCmd
239
+ .command("remove <name>")
240
+ .alias("uninstall")
241
+ .description("remove an installed plugin from ~/.neurodock/plugins/")
242
+ .option("--yes", "skip the confirmation prompt", false)
243
+ .option("--dry-run", "print what would happen without writing anything", false)
244
+ .action(async (name, opts) => {
245
+ const r = await runPluginRemove({
246
+ name,
247
+ yes: opts.yes === true,
248
+ dryRun: opts.dryRun === true,
249
+ });
250
+ for (const m of r.messages)
251
+ print(m);
252
+ process.exit(r.exitCode);
253
+ });
254
+ pluginCmd
255
+ .command("list")
256
+ .description("list plugins installed under ~/.neurodock/plugins/ and their enabled state")
257
+ .option("--json", "print machine-readable output", false)
258
+ .action(async (opts) => {
259
+ const r = await runPluginList({ json: opts.json === true });
260
+ for (const m of r.messages)
261
+ print(m);
262
+ process.exit(0);
263
+ });
264
+ pluginCmd
265
+ .command("enable <name>")
266
+ .description("activate an installed plugin (writes a .enabled marker file the substrate reads)")
267
+ .action(async (name) => {
268
+ const r = await runPluginEnable({ name });
269
+ for (const m of r.messages)
270
+ print(m);
271
+ process.exit(r.exitCode);
272
+ });
273
+ pluginCmd
274
+ .command("disable <name>")
275
+ .description("deactivate an installed plugin (removes the .enabled marker; keeps files)")
276
+ .action(async (name) => {
277
+ const r = await runPluginDisable({ name });
278
+ for (const m of r.messages)
279
+ print(m);
280
+ process.exit(r.exitCode);
281
+ });
282
+ pluginCmd
283
+ .command("validate <source>")
284
+ .description("validate a plugin manifest without installing (checks plugin.yaml against plugin.schema.json)")
285
+ .option("--json", "print machine-readable output", false)
286
+ .action(async (source, opts) => {
287
+ const r = await runPluginValidate({
288
+ source,
289
+ json: opts.json === true,
290
+ });
291
+ for (const m of r.messages)
292
+ print(m);
293
+ process.exit(r.exitCode);
294
+ });
76
295
  return program;
77
296
  }
78
297
  function validateClient(value) {
79
- if (value === "all" || value === "claude-desktop" || value === "claude-code" || value === "cursor") {
298
+ if (value === "all" ||
299
+ value === "claude-desktop" ||
300
+ value === "claude-code" ||
301
+ value === "cursor") {
80
302
  return value;
81
303
  }
82
304
  throw new Error(`Unknown --client value: ${value}`);
@@ -86,6 +308,11 @@ function validateProfile(value) {
86
308
  return value;
87
309
  throw new Error(`Unknown --profile value: ${value}`);
88
310
  }
311
+ function validateInstaller(value) {
312
+ if (value === "uv" || value === "pip" || value === "auto")
313
+ return value;
314
+ throw new Error(`Unknown --installer value: ${value}`);
315
+ }
89
316
  function print(line) {
90
317
  process.stdout.write(`${line}\n`);
91
318
  }
@@ -106,9 +333,12 @@ function formatCheck(c) {
106
333
  return ` [${marker}] ${c.name}${detail}`;
107
334
  }
108
335
  const isMain = process.argv[1] !== undefined &&
109
- (process.argv[1].endsWith("index.js") || process.argv[1].endsWith("neurodock"));
336
+ (process.argv[1].endsWith("index.js") ||
337
+ process.argv[1].endsWith("neurodock"));
110
338
  if (isMain) {
111
- buildProgram().parseAsync(process.argv).catch((err) => {
339
+ buildProgram()
340
+ .parseAsync(process.argv)
341
+ .catch((err) => {
112
342
  const message = err instanceof Error ? err.message : String(err);
113
343
  process.stderr.write(`Error: ${message}\n`);
114
344
  process.exit(1);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,aAAa,EAAwB,MAAM,2BAA2B,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EACL,YAAY,EACZ,eAAe,EACf,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAG5C,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC;AAEnC,MAAM,UAAU,YAAY;IAC1B,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9B,OAAO;SACJ,IAAI,CAAC,WAAW,CAAC;SACjB,WAAW,CAAC,yCAAyC,CAAC;SACtD,OAAO,CAAC,WAAW,EAAE,eAAe,EAAE,mBAAmB,CAAC;SAC1D,UAAU,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;IAEzC,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,2DAA2D,CAAC;SACxE,MAAM,CACL,eAAe,EACf,6CAA6C,EAC7C,KAAK,CACN;SACA,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,SAAS,CAAC;SACxD,MAAM,CAAC,WAAW,EAAE,yCAAyC,EAAE,KAAK,CAAC;SACrE,MAAM,CACL,OAAO,EACP,4DAA4D,EAC5D,KAAK,CACN;SACA,MAAM,CACL,KAAK,EAAE,IAKN,EAAE,EAAE;QACH,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;YAC3B,MAAM;YACN,OAAO;YACP,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,GAAG,EAAE,IAAI,CAAC,GAAG;SACd,CAAC,CAAC;QACH,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ;YAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CACF,CAAC;IAEJ,OAAO;SACJ,OAAO,CAAC,aAAa,CAAC;SACtB,WAAW,CACV,mEAAmE,CACpE;SACA,MAAM,CACL,eAAe,EACf,6CAA6C,EAC7C,KAAK,CACN;SACA,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,SAAS,CAAC;SACxD,MAAM,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,CAAC;SACrD,MAAM,CACL,gBAAgB,EAChB,8CAA8C,EAC9C,KAAK,CACN;SACA,MAAM,CACL,OAAO,EACP,4DAA4D,EAC5D,KAAK,CACN;SACA,MAAM,CACL,WAAW,EACX,kDAAkD,EAClD,KAAK,CACN;SACA,MAAM,CACL,kBAAkB,EAClB,0FAA0F,CAC3F;SACA,MAAM,CACL,KAAK,EAAE,IASN,EAAE,EAAE;QACH,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,SAAS,GAAG,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACpD,MAAM,CAAC,GAAG,MAAM,aAAa,CAAC;YAC5B,MAAM;YACN,OAAO;YACP,SAAS;YACT,WAAW,EAAE,IAAI,CAAC,WAAW,KAAK,IAAI;YACtC,GAAG,EAAE,IAAI,CAAC,GAAG,KAAK,IAAI;YACtB,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,IAAI;YAC5B,YAAY,EAAE,IAAI,CAAC,UAAU,KAAK,KAAK;SACxC,CAAC,CAAC;QACH,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ;YAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC3B,CAAC,CACF,CAAC;IAEJ,OAAO;SACJ,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CACV,2EAA2E,CAC5E;SACA,MAAM,CACL,iBAAiB,EACjB,yDAAyD,CAC1D;SACA,MAAM,CAAC,QAAQ,EAAE,8CAA8C,EAAE,KAAK,CAAC;SACvE,MAAM,CAAC,KAAK,EAAE,IAAwC,EAAE,EAAE;QACzD,MAAM,CAAC,GAAG,MAAM,WAAW,CAAC;YAC1B,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,IAAI;SACzB,CAAC,CAAC;QACH,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ;YAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEL,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,sCAAsC,CAAC;SACnD,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,CAAC,GAAG,MAAM,SAAS,EAAE,CAAC;QAC5B,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAC1B,KAAK,CAAC,EAAE,CAAC,CAAC;QACV,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM;YAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QAChD,KAAK,CAAC,EAAE,CAAC,CAAC;QACV,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC;QAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEL,MAAM,UAAU,GAAG,OAAO;SACvB,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,mBAAmB,CAAC,CAAC;IAEpC,UAAU;SACP,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,uDAAuD,CAAC;SACpE,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,CAAC,GAAG,MAAM,kBAAkB,EAAE,CAAC;QACrC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YACd,KAAK,CAAC,iBAAiB,CAAC,CAAC,IAAI,uCAAuC,CAAC,CAAC;YACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACnB,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,KAAK,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC5B,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACpC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEL,UAAU;SACP,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,2DAA2D,CAAC;SACxE,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,CAAC,GAAG,MAAM,cAAc,EAAE,CAAC;QACjC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YACd,KAAK,CAAC,iBAAiB,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEL,OAAO;SACJ,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,2DAA2D,CAAC;SACxE,MAAM,CACL,eAAe,EACf,2DAA2D,CAC5D;SACA,MAAM,CACL,UAAU,EACV,+DAA+D,EAC/D,KAAK,CACN;SACA,MAAM,CAAC,KAAK,EAAE,IAAwC,EAAE,EAAE;QACzD,MAAM,CAAC,GAAG,MAAM,WAAW,CAAC;YAC1B,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,IAAI;SAC7B,CAAC,CAAC;QACH,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YACd,KAAK,CACH,iBAAiB,CAAC,CAAC,YAAY,uCAAuC,CACvE,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;YACjB,KAAK,CAAC,kBAAkB,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;YAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;YACZ,KAAK,CAAC,UAAU,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,KAAK,CAAC,YAAY,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;QACpC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;YAC7B,KAAK,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEL,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CACV,mEAAmE,CACpE;SACA,MAAM,CACL,eAAe,EACf,6CAA6C,EAC7C,KAAK,CACN;SACA,MAAM,CAAC,WAAW,EAAE,yCAAyC,EAAE,KAAK,CAAC;SACrE,MAAM,CAAC,KAAK,EAAE,IAAyC,EAAE,EAAE;QAC1D,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,CAAC,GAAG,MAAM,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;QACpE,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ;YAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEL,OAAO;SACJ,OAAO,CAAC,WAAW,CAAC;SACpB,WAAW,CACV,uEAAuE,CACxE;SACA,MAAM,CACL,eAAe,EACf,6CAA6C,EAC7C,KAAK,CACN;SACA,MAAM,CAAC,WAAW,EAAE,yCAAyC,EAAE,KAAK,CAAC;SACrE,MAAM,CACL,OAAO,EACP,gEAAgE,EAChE,KAAK,CACN;SACA,MAAM,CACL,SAAS,EACT,kEAAkE,EAClE,KAAK,CACN;SACA,MAAM,CACL,KAAK,EAAE,IAKN,EAAE,EAAE;QACH,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,CAAC,GAAG,MAAM,YAAY,CAAC;YAC3B,MAAM;YACN,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,IAAI;YAC5B,GAAG,EAAE,IAAI,CAAC,GAAG,KAAK,IAAI;YACtB,KAAK,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI;SAC3B,CAAC,CAAC;QACH,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ;YAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CACF,CAAC;IAEJ,MAAM,OAAO,GAAG,OAAO;SACpB,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CACV,6FAA6F,CAC9F,CAAC;IAEJ,OAAO;SACJ,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CACV,sEAAsE,CACvE;SACA,MAAM,CACL,qBAAqB,EACrB,sDAAsD,EACtD,CAAC,KAAa,EAAE,IAAc,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,EACnD,EAAc,CACf;SACA,MAAM,CAAC,CAAC,IAA+B,EAAE,EAAE;QAC1C,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAClE,KAAK,CAAC,8CAA8C,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC;QACxE,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChD,KAAK,CACH,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAC/C,CAAC,CAAC,YACJ,GAAG,MAAM,EAAE,CACZ,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEL,OAAO;SACJ,OAAO,CAAC,WAAW,CAAC;SACpB,WAAW,CACV,0EAA0E,CAC3E;SACA,MAAM,CAAC,GAAG,EAAE;QACX,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;QAClC,KAAK,CAAC,4CAA4C,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC;QACtE,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChD,KAAK,CACH,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAC/C,CAAC,CAAC,YACJ,GAAG,MAAM,EAAE,CACZ,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEL,MAAM,SAAS,GAAG,OAAO;SACtB,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CACV,qEAAqE,CACtE,CAAC;IAEJ,SAAS;SACN,OAAO,CAAC,cAAc,CAAC;SACvB,WAAW,CACV,2EAA2E,CAC5E;SACA,MAAM,CAAC,OAAO,EAAE,mDAAmD,EAAE,KAAK,CAAC;SAC3E,MAAM,CACL,WAAW,EACX,kDAAkD,EAClD,KAAK,CACN;SACA,MAAM,CACL,SAAS,EACT,uDAAuD,EACvD,KAAK,CACN;SACA,MAAM,CACL,KAAK,EACH,MAAc,EACd,IAAuD,EACvD,EAAE;QACF,MAAM,CAAC,GAAG,MAAM,YAAY,CAAC;YAC3B,MAAM;YACN,GAAG,EAAE,IAAI,CAAC,GAAG,KAAK,IAAI;YACtB,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,IAAI;YAC5B,KAAK,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI;SAC3B,CAAC,CAAC;QACH,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ;YAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC3B,CAAC,CACF,CAAC;IAEJ,SAAS;SACN,OAAO,CAAC,eAAe,CAAC;SACxB,KAAK,CAAC,WAAW,CAAC;SAClB,WAAW,CAAC,uDAAuD,CAAC;SACpE,MAAM,CAAC,OAAO,EAAE,8BAA8B,EAAE,KAAK,CAAC;SACtD,MAAM,CACL,WAAW,EACX,kDAAkD,EAClD,KAAK,CACN;SACA,MAAM,CAAC,KAAK,EAAE,IAAY,EAAE,IAAuC,EAAE,EAAE;QACtE,MAAM,CAAC,GAAG,MAAM,eAAe,CAAC;YAC9B,IAAI;YACJ,GAAG,EAAE,IAAI,CAAC,GAAG,KAAK,IAAI;YACtB,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,IAAI;SAC7B,CAAC,CAAC;QACH,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ;YAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEL,SAAS;SACN,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CACV,4EAA4E,CAC7E;SACA,MAAM,CAAC,QAAQ,EAAE,+BAA+B,EAAE,KAAK,CAAC;SACxD,MAAM,CAAC,KAAK,EAAE,IAAuB,EAAE,EAAE;QACxC,MAAM,CAAC,GAAG,MAAM,aAAa,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC,CAAC;QAC5D,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ;YAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEL,SAAS;SACN,OAAO,CAAC,eAAe,CAAC;SACxB,WAAW,CACV,kFAAkF,CACnF;SACA,MAAM,CAAC,KAAK,EAAE,IAAY,EAAE,EAAE;QAC7B,MAAM,CAAC,GAAG,MAAM,eAAe,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1C,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ;YAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEL,SAAS;SACN,OAAO,CAAC,gBAAgB,CAAC;SACzB,WAAW,CACV,2EAA2E,CAC5E;SACA,MAAM,CAAC,KAAK,EAAE,IAAY,EAAE,EAAE;QAC7B,MAAM,CAAC,GAAG,MAAM,gBAAgB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3C,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ;YAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEL,SAAS;SACN,OAAO,CAAC,mBAAmB,CAAC;SAC5B,WAAW,CACV,+FAA+F,CAChG;SACA,MAAM,CAAC,QAAQ,EAAE,+BAA+B,EAAE,KAAK,CAAC;SACxD,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,IAAuB,EAAE,EAAE;QACxD,MAAM,CAAC,GAAG,MAAM,iBAAiB,CAAC;YAChC,MAAM;YACN,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,IAAI;SACzB,CAAC,CAAC;QACH,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ;YAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEL,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,IACE,KAAK,KAAK,KAAK;QACf,KAAK,KAAK,gBAAgB;QAC1B,KAAK,KAAK,aAAa;QACvB,KAAK,KAAK,QAAQ,EAClB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,EAAE,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACpC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAC7D,MAAM,IAAI,KAAK,CAAC,4BAA4B,KAAK,EAAE,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAa;IACtC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,MAAM;QAAE,OAAO,KAAK,CAAC;IACxE,MAAM,IAAI,KAAK,CAAC,8BAA8B,KAAK,EAAE,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,KAAK,CAAC,IAAY;IACzB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,WAAW,CAAC,CAAc;IACjC,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,MAAM,MAAM,GACV,CAAC,CAAC,MAAM,KAAK,MAAM;QACjB,CAAC,CAAC,QAAQ;YACR,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;YACrB,CAAC,CAAC,MAAM;QACV,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM;YACnB,CAAC,CAAC,QAAQ;gBACR,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;gBACnB,CAAC,CAAC,MAAM;YACV,CAAC,CAAC,QAAQ;gBACR,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;gBACtB,CAAC,CAAC,MAAM,CAAC;IACjB,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAChD,OAAO,MAAM,MAAM,KAAK,CAAC,CAAC,IAAI,GAAG,MAAM,EAAE,CAAC;AAC5C,CAAC;AAED,MAAM,MAAM,GACV,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS;IAC7B,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;QACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;AAE3C,IAAI,MAAM,EAAE,CAAC;IACX,YAAY,EAAE;SACX,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC;SACxB,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;QACtB,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,OAAO,IAAI,CAAC,CAAC;QAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"json-patch.d.ts","sourceRoot":"","sources":["../../src/lib/json-patch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAEnE,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACtC,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC3C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,EAC3C,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,EACjD,SAAS,EAAE,OAAO,GACjB,WAAW,CA8Bb;AA+BD,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAO3G"}
1
+ {"version":3,"file":"json-patch.d.ts","sourceRoot":"","sources":["../../src/lib/json-patch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAEnE,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACtC,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC3C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,EAC3C,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,EACjD,SAAS,EAAE,OAAO,GACjB,WAAW,CAiCb;AAkCD,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,GACb;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAO7D"}
@@ -52,7 +52,7 @@ function shallowEnvEqual(a, b) {
52
52
  if (a === b)
53
53
  return true;
54
54
  if (!a || !b)
55
- return Object.keys(a ?? {}).length === 0 && Object.keys(b ?? {}).length === 0;
55
+ return (Object.keys(a ?? {}).length === 0 && Object.keys(b ?? {}).length === 0);
56
56
  const ka = Object.keys(a).sort();
57
57
  const kb = Object.keys(b).sort();
58
58
  if (ka.length !== kb.length)
@@ -1 +1 @@
1
- {"version":3,"file":"json-patch.js","sourceRoot":"","sources":["../../src/lib/json-patch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"json-patch.js","sourceRoot":"","sources":["../../src/lib/json-patch.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-entries.d.ts","sourceRoot":"","sources":["../../src/lib/mcp-entries.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,MAAM,WAAW,eAAe;IAC9B,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS,CAenE;AAQD,wBAAgB,eAAe,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CA0BpF"}
1
+ {"version":3,"file":"mcp-entries.d.ts","sourceRoot":"","sources":["../../src/lib/mcp-entries.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,MAAM,WAAW,eAAe;IAC9B,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS,CAenE;AA8BD,wBAAgB,eAAe,CAC7B,GAAG,EAAE,eAAe,GACnB,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CA0BhC"}
@@ -18,9 +18,31 @@ export function detectRepoRoot(env) {
18
18
  return undefined;
19
19
  }
20
20
  const NEURODOCK_SERVERS = [
21
- { key: "neurodock-chronometric", pkg: "mcp-chronometric", entrypoint: "neurodock-mcp-chronometric" },
22
- { key: "neurodock-cognitive-graph", pkg: "mcp-cognitive-graph", entrypoint: "neurodock-mcp-cognitive-graph" },
23
- { key: "neurodock-task-fractionator", pkg: "mcp-task-fractionator", entrypoint: "neurodock-mcp-task-fractionator" },
21
+ {
22
+ key: "neurodock-chronometric",
23
+ pkg: "mcp-chronometric",
24
+ entrypoint: "neurodock-mcp-chronometric",
25
+ },
26
+ {
27
+ key: "neurodock-cognitive-graph",
28
+ pkg: "mcp-cognitive-graph",
29
+ entrypoint: "neurodock-mcp-cognitive-graph",
30
+ },
31
+ {
32
+ key: "neurodock-task-fractionator",
33
+ pkg: "mcp-task-fractionator",
34
+ entrypoint: "neurodock-mcp-task-fractionator",
35
+ },
36
+ {
37
+ key: "neurodock-translation",
38
+ pkg: "mcp-translation",
39
+ entrypoint: "neurodock-mcp-translation",
40
+ },
41
+ {
42
+ key: "neurodock-guardrail",
43
+ pkg: "mcp-guardrail",
44
+ entrypoint: "neurodock-mcp-guardrail",
45
+ },
24
46
  ];
25
47
  export function buildMcpServers(ctx) {
26
48
  const out = {};
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-entries.js","sourceRoot":"","sources":["../../src/lib/mcp-entries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASnD,MAAM,UAAU,cAAc,CAAC,GAAgB;IAC7C,IAAI,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC;IACtB,wEAAwE;IACxE,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;QACpD,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YACvB,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,MAAM,KAAK,OAAO;YAAE,MAAM;QAC9B,OAAO,GAAG,MAAM,CAAC;IACnB,CAAC;IACD,0EAA0E;IAC1E,mEAAmE;IACnE,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,iBAAiB,GAAG;IACxB,EAAE,GAAG,EAAE,wBAAwB,EAAE,GAAG,EAAE,kBAAkB,EAAE,UAAU,EAAE,4BAA4B,EAAE;IACpG,EAAE,GAAG,EAAE,2BAA2B,EAAE,GAAG,EAAE,qBAAqB,EAAE,UAAU,EAAE,+BAA+B,EAAE;IAC7G,EAAE,GAAG,EAAE,6BAA6B,EAAE,GAAG,EAAE,uBAAuB,EAAE,UAAU,EAAE,iCAAiC,EAAE;CAC3G,CAAC;AAEX,MAAM,UAAU,eAAe,CAAC,GAAoB;IAClD,MAAM,GAAG,GAAmC,EAAE,CAAC;IAC/C,KAAK,MAAM,CAAC,IAAI,iBAAiB,EAAE,CAAC;QAClC,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;YACzD,IAAI,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBACvB,iEAAiE;gBACjE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG;oBACX,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,UAAU,CAAC;oBAC3B,GAAG,EAAE,OAAO;iBACb,CAAC;gBACF,SAAS;YACX,CAAC;QACH,CAAC;QACD,2EAA2E;QAC3E,sEAAsE;QACtE,sEAAsE;QACtE,sEAAsE;QACtE,wEAAwE;QACxE,mDAAmD;QACnD,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG;YACX,OAAO,EAAE,CAAC,CAAC,UAAU;SACtB,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,SAAS,CAAC,CAAS;IAC1B,IAAI,CAAC;QACH,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"mcp-entries.js","sourceRoot":"","sources":["../../src/lib/mcp-entries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASnD,MAAM,UAAU,cAAc,CAAC,GAAgB;IAC7C,IAAI,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC;IACtB,wEAAwE;IACxE,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;QACpD,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YACvB,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,MAAM,KAAK,OAAO;YAAE,MAAM;QAC9B,OAAO,GAAG,MAAM,CAAC;IACnB,CAAC;IACD,0EAA0E;IAC1E,mEAAmE;IACnE,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,iBAAiB,GAAG;IACxB;QACE,GAAG,EAAE,wBAAwB;QAC7B,GAAG,EAAE,kBAAkB;QACvB,UAAU,EAAE,4BAA4B;KACzC;IACD;QACE,GAAG,EAAE,2BAA2B;QAChC,GAAG,EAAE,qBAAqB;QAC1B,UAAU,EAAE,+BAA+B;KAC5C;IACD;QACE,GAAG,EAAE,6BAA6B;QAClC,GAAG,EAAE,uBAAuB;QAC5B,UAAU,EAAE,iCAAiC;KAC9C;IACD;QACE,GAAG,EAAE,uBAAuB;QAC5B,GAAG,EAAE,iBAAiB;QACtB,UAAU,EAAE,2BAA2B;KACxC;IACD;QACE,GAAG,EAAE,qBAAqB;QAC1B,GAAG,EAAE,eAAe;QACpB,UAAU,EAAE,yBAAyB;KACtC;CACO,CAAC;AAEX,MAAM,UAAU,eAAe,CAC7B,GAAoB;IAEpB,MAAM,GAAG,GAAmC,EAAE,CAAC;IAC/C,KAAK,MAAM,CAAC,IAAI,iBAAiB,EAAE,CAAC;QAClC,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;YACzD,IAAI,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBACvB,iEAAiE;gBACjE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG;oBACX,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,UAAU,CAAC;oBAC3B,GAAG,EAAE,OAAO;iBACb,CAAC;gBACF,SAAS;YACX,CAAC;QACH,CAAC;QACD,2EAA2E;QAC3E,sEAAsE;QACtE,sEAAsE;QACtE,sEAAsE;QACtE,wEAAwE;QACxE,mDAAmD;QACnD,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG;YACX,OAAO,EAAE,CAAC,CAAC,UAAU;SACtB,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,SAAS,CAAC,CAAS;IAC1B,IAAI,CAAC;QACH,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
@@ -2,6 +2,16 @@ import type { ClientLocation, ClientId } from "../types.js";
2
2
  import { type EnvSnapshot } from "./env.js";
3
3
  export declare function profilePath(env?: EnvSnapshot): string;
4
4
  export declare function profileDir(env?: EnvSnapshot): string;
5
+ /**
6
+ * Root directory for installed plugins. Resolves to
7
+ * `<profileDir>/plugins/` so test sandboxes that set
8
+ * `NEURODOCK_PROFILE_PATH` get an isolated plugin tree for free.
9
+ *
10
+ * v0.1.0 per ADR 0007: the substrate auto-discovers any
11
+ * `<pluginsDir>/<name>/plugin.yaml` it finds; a sibling `.enabled` marker
12
+ * file (managed by `neurodock plugin enable/disable`) gates activation.
13
+ */
14
+ export declare function pluginsDir(env?: EnvSnapshot): string;
5
15
  export declare function claudeDesktopConfigPath(env?: EnvSnapshot): string;
6
16
  export interface ClaudeCodePaths {
7
17
  readonly user: string;
@@ -1 +1 @@
1
- {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/lib/paths.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,KAAK,WAAW,EAAW,MAAM,UAAU,CAAC;AAErD,wBAAgB,WAAW,CAAC,GAAG,GAAE,WAAuB,GAAG,MAAM,CAchE;AAED,wBAAgB,UAAU,CAAC,GAAG,GAAE,WAAuB,GAAG,MAAM,CAU/D;AAOD,wBAAgB,uBAAuB,CAAC,GAAG,GAAE,WAAuB,GAAG,MAAM,CAY5E;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,qBAAqB,CAAC,GAAG,GAAE,WAAuB,GAAG,eAAe,CASnF;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,iBAAiB,CAAC,GAAG,GAAE,WAAuB,GAAG,WAAW,CAK3E;AAED,wBAAgB,eAAe,CAAC,GAAG,GAAE,WAAuB,GAAG,aAAa,CAAC,cAAc,CAAC,CAU3F;AAED,MAAM,WAAW,eAAgB,SAAQ,cAAc;IACrD,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,aAAa,CAAC,GAAG,GAAE,WAAuB,GAAG,aAAa,CAAC,eAAe,CAAC,CAE1F;AAED,wBAAgB,UAAU,CACxB,UAAU,EAAE,aAAa,CAAC,eAAe,CAAC,EAC1C,SAAS,EAAE,QAAQ,GAAG,KAAK,GAC1B,aAAa,CAAC,eAAe,CAAC,CAKhC;AAWD,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAE7C"}
1
+ {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/lib/paths.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,KAAK,WAAW,EAAW,MAAM,UAAU,CAAC;AAErD,wBAAgB,WAAW,CAAC,GAAG,GAAE,WAAuB,GAAG,MAAM,CAchE;AAED,wBAAgB,UAAU,CAAC,GAAG,GAAE,WAAuB,GAAG,MAAM,CAU/D;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,GAAG,GAAE,WAAuB,GAAG,MAAM,CAE/D;AAOD,wBAAgB,uBAAuB,CAAC,GAAG,GAAE,WAAuB,GAAG,MAAM,CAqB5E;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,qBAAqB,CACnC,GAAG,GAAE,WAAuB,GAC3B,eAAe,CASjB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,iBAAiB,CAAC,GAAG,GAAE,WAAuB,GAAG,WAAW,CAK3E;AAED,wBAAgB,eAAe,CAC7B,GAAG,GAAE,WAAuB,GAC3B,aAAa,CAAC,cAAc,CAAC,CAU/B;AAED,MAAM,WAAW,eAAgB,SAAQ,cAAc;IACrD,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,aAAa,CAC3B,GAAG,GAAE,WAAuB,GAC3B,aAAa,CAAC,eAAe,CAAC,CAKhC;AAED,wBAAgB,UAAU,CACxB,UAAU,EAAE,aAAa,CAAC,eAAe,CAAC,EAC1C,SAAS,EAAE,QAAQ,GAAG,KAAK,GAC1B,aAAa,CAAC,eAAe,CAAC,CAKhC;AAWD,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAE7C"}