@blkc-code/cli 0.1.1 → 0.1.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 (43) hide show
  1. package/bin/blkc.js +24 -0
  2. package/dist/cli.js +24 -0
  3. package/dist/commands/block.d.ts +12 -1
  4. package/dist/commands/block.d.ts.map +1 -0
  5. package/dist/commands/block.js +180 -268
  6. package/dist/commands/block.js.map +1 -1
  7. package/dist/commands/circuit.d.ts +12 -1
  8. package/dist/commands/circuit.d.ts.map +1 -0
  9. package/dist/commands/circuit.js +146 -152
  10. package/dist/commands/circuit.js.map +1 -1
  11. package/dist/commands/deploy.d.ts +14 -0
  12. package/dist/commands/deploy.d.ts.map +1 -0
  13. package/dist/commands/deploy.js +332 -0
  14. package/dist/commands/deploy.js.map +1 -0
  15. package/dist/commands/kit.d.ts +12 -1
  16. package/dist/commands/kit.d.ts.map +1 -0
  17. package/dist/commands/kit.js +137 -160
  18. package/dist/commands/kit.js.map +1 -1
  19. package/dist/commands/logbook.d.ts +12 -1
  20. package/dist/commands/logbook.d.ts.map +1 -0
  21. package/dist/commands/logbook.js +150 -136
  22. package/dist/commands/logbook.js.map +1 -1
  23. package/dist/index.d.ts +19 -2
  24. package/dist/index.d.ts.map +1 -0
  25. package/dist/index.js +46 -34
  26. package/dist/index.js.map +1 -1
  27. package/package.json +59 -33
  28. package/src/__tests__/smoke.test.ts +8 -0
  29. package/src/commands/block.ts +219 -0
  30. package/src/commands/circuit.ts +182 -0
  31. package/src/commands/deploy.ts +373 -0
  32. package/src/commands/kit.ts +173 -0
  33. package/src/commands/logbook.ts +194 -0
  34. package/src/index.ts +70 -0
  35. package/LICENSE +0 -201
  36. package/NOTICE +0 -5
  37. package/README.md +0 -13
  38. package/dist/utils/filesystem.d.ts +0 -5
  39. package/dist/utils/filesystem.js +0 -21
  40. package/dist/utils/filesystem.js.map +0 -1
  41. package/dist/utils/github.d.ts +0 -23
  42. package/dist/utils/github.js +0 -66
  43. package/dist/utils/github.js.map +0 -1
package/bin/blkc.js ADDED
@@ -0,0 +1,24 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * BLKC CLI Entry Point
5
+ *
6
+ * This file is the entry point for the blkc command-line tool.
7
+ * It bootstraps the CLI and runs the appropriate command.
8
+ *
9
+ * @package @blkc-code/cli
10
+ * @license Apache-2.0
11
+ * @author Black Code Enterprises LLC
12
+ */
13
+
14
+ // Load environment variables from .env file if present
15
+ import { config } from "dotenv";
16
+ config();
17
+
18
+ // Import and run the CLI
19
+ import { run } from "../dist/index.js";
20
+
21
+ run().catch((error) => {
22
+ console.error("BLKC CLI error:", error);
23
+ process.exit(1);
24
+ });
package/dist/cli.js ADDED
@@ -0,0 +1,24 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * BLKC CLI Entry Point
5
+ *
6
+ * This file is the entry point for the blkc command-line tool.
7
+ * It bootstraps the CLI and runs the appropriate command.
8
+ *
9
+ * @package @blkc-code/cli
10
+ * @license Apache-2.0
11
+ * @author Black Code Enterprises LLC
12
+ */
13
+
14
+ // Load environment variables from .env file if present
15
+ import { config } from "dotenv";
16
+ config();
17
+
18
+ // Import and run the CLI
19
+ import { run } from "../dist/index.js";
20
+
21
+ run().catch((error) => {
22
+ console.error("BLKC CLI error:", error);
23
+ process.exit(1);
24
+ });
@@ -1,2 +1,13 @@
1
+ /**
2
+ * BLKC CLI - Block Commands
3
+ *
4
+ * Commands for working with BLKC Blocks.
5
+ *
6
+ * @package @blkc-code/cli
7
+ * @license Apache-2.0
8
+ * @author Black Code Enterprises LLC
9
+ */
1
10
  import { Command } from "commander";
2
- export declare const registerBlockCommands: (program: Command) => void;
11
+ /** Register all block commands with the program */
12
+ export declare function registerBlockCommands(program: Command): void;
13
+ //# sourceMappingURL=block.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../src/commands/block.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqMpC,mDAAmD;AACnD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAU5D"}
@@ -1,284 +1,196 @@
1
- import { writeFile } from "node:fs/promises";
2
- import path from "node:path";
1
+ /**
2
+ * BLKC CLI - Block Commands
3
+ *
4
+ * Commands for working with BLKC Blocks.
5
+ *
6
+ * @package @blkc-code/cli
7
+ * @license Apache-2.0
8
+ * @author Black Code Enterprises LLC
9
+ */
3
10
  import chalk from "chalk";
4
- import { BlockRegistrySchema, BlockSchema, CapabilityBlockSchema, IdentifierSchema, nowISO, } from "@blkc-code/core";
5
- import { ensureDirectory, exists, readJsonFile, workspacePath, writeJsonFile, } from "../utils/filesystem";
6
- const BLOCKS_DIR = "blocks";
7
- const BLOCK_REGISTRY_PATH = "registry/blocks.json";
8
- const MANIFEST_FILENAME = "manifest.json";
9
- const README_FILENAME = "README.md";
10
- const ENTRYPOINT_PATH = "./src/index.ts";
11
- const collectValues = (value, previous) => [...previous, value];
12
- const defaultBlockName = (id) => id
13
- .split("-")
14
- .map((segment) => segment.charAt(0).toUpperCase() + segment.slice(1))
15
- .join(" ");
16
- const readRegistry = async () => {
17
- try {
18
- const registry = await readJsonFile(BLOCK_REGISTRY_PATH);
19
- return BlockRegistrySchema.parse(registry);
20
- }
21
- catch (error) {
22
- console.warn(chalk.yellow("⚠ Block registry not found, creating a new one."));
23
- return { updatedAt: nowISO(), blocks: [] };
24
- }
25
- };
26
- const saveRegistry = async (registry) => {
27
- await writeJsonFile(BLOCK_REGISTRY_PATH, {
28
- ...registry,
29
- updatedAt: nowISO(),
30
- });
31
- };
32
- const manifestPath = (blockId) => path.join(BLOCKS_DIR, blockId, MANIFEST_FILENAME);
33
- const ensureBlockScaffold = async (blockId) => {
34
- await ensureDirectory(path.join(BLOCKS_DIR, blockId, "src"));
35
- };
36
- const writeManifest = async (blockId, manifest) => {
37
- await writeJsonFile(manifestPath(blockId), manifest);
38
- };
39
- const readManifest = async (blockId) => {
40
- const manifest = await readJsonFile(manifestPath(blockId));
41
- return BlockSchema.parse(manifest);
42
- };
43
- const renderReadme = (manifest) => `# ${manifest.name}
44
-
45
-
46
-
47
- ${manifest.description}
48
-
49
-
50
-
51
- ## Summary
52
-
53
-
54
-
55
- - ID: ${manifest.id}
56
-
57
- - Version: ${manifest.version}
58
-
59
- - Runtime: ${manifest.runtime}
60
-
61
- - Entry point: ${manifest.entryPoint}
62
-
63
-
64
-
65
- ## Getting Started
66
-
67
-
68
-
69
- Update ${manifest.entryPoint} with your implementation and document usage notes here.
70
-
71
- `;
72
- const renderStub = (manifest) => {
73
- const identifier = manifest.name.replace(/[^a-zA-Z0-9]/g, '') || defaultBlockName(manifest.id).replace(/[^a-zA-Z0-9]/g, '');
74
- const normalized = identifier.charAt(0).toUpperCase() + identifier.slice(1);
75
- return `export type ${normalized}Input = {
76
-
77
- text: string;
78
-
79
- };
80
-
81
-
82
-
83
- export type ${normalized}Output = {
84
-
85
- ok: boolean;
86
-
87
- };
88
-
89
-
90
-
91
- export const run = async (_input: ${normalized}Input): Promise<${normalized}Output> => {
92
-
93
- return { ok: true };
94
-
95
- };
96
-
97
- `;
98
- };
99
- const buildAuthors = (options) => {
100
- if (!options.authorName) {
101
- return [];
102
- }
103
- return [
104
- {
105
- name: options.authorName,
106
- email: options.authorEmail,
107
- role: options.authorRole,
108
- github: options.authorGithub,
109
- },
110
- ];
111
- };
112
- const validateBlock = async (blockId) => {
113
- const manifest = await readManifest(blockId);
114
- if (manifest.id !== blockId) {
115
- throw new Error(`Manifest id "${manifest.id}" does not match directory "${blockId}"`);
116
- }
117
- if (manifest.kind === "capability") {
118
- const entry = path.join(BLOCKS_DIR, blockId, manifest.entryPoint);
119
- if (!(await exists(entry))) {
120
- throw new Error(`Entry point ${manifest.entryPoint} not found for ${blockId}`);
121
- }
122
- }
123
- return manifest;
124
- };
125
- const describeBlock = (manifest) => manifest.kind === "ui"
126
- ? `ui, ${manifest.controls.length} controls, renderers: ${Object.keys(manifest.renderers).join(", ")}`
127
- : `capability, ${manifest.runtime}`;
128
- const publishBlock = async (blockId, options = {}) => {
129
- const manifest = await validateBlock(blockId);
130
- if (options.dryRun) {
131
- console.log(chalk.green(`✔ Valid block ${manifest.id}@${manifest.version} (${describeBlock(manifest)})`));
132
- return;
133
- }
134
- const registry = await readRegistry();
135
- const remainder = registry.blocks.filter((block) => block.id !== blockId);
136
- const updated = {
137
- updatedAt: nowISO(),
138
- blocks: [...remainder, manifest].sort((a, b) => a.id.localeCompare(b.id)),
139
- };
140
- await saveRegistry(updated);
141
- console.log(chalk.green(`✔ Published block ${manifest.id}@${manifest.version}`));
142
- };
143
- export const registerBlockCommands = (program) => {
144
- const block = program
145
- .command("block")
146
- .description("Scaffold and manage BLKC blocks");
147
- block
148
- .command("list")
149
- .description("List registered blocks")
150
- .option("--json", "Emit JSON output", false)
151
- .action(async (options) => {
152
- const registry = await readRegistry();
153
- if (registry.blocks.length === 0) {
154
- console.log(chalk.yellow("No blocks registered yet."));
155
- return;
11
+ import ora from "ora";
12
+ import { readFile } from "node:fs/promises";
13
+ import path from "node:path";
14
+ import { BlockSchema } from "@blkc-code/core";
15
+ // ============================================================================
16
+ // Command: block validate
17
+ // ============================================================================
18
+ function setupValidateCommand(program) {
19
+ program
20
+ .command("validate <manifest-path>")
21
+ .description("Validate a Block manifest")
22
+ .action(async (manifestPath) => {
23
+ const spinner = ora("Validating Block manifest...").start();
24
+ try {
25
+ const absolutePath = path.resolve(process.cwd(), manifestPath);
26
+ const content = await readFile(absolutePath, { encoding: "utf8" });
27
+ const manifest = JSON.parse(content);
28
+ const result = BlockSchema.safeParse(manifest);
29
+ if (!result.success) {
30
+ spinner.fail("Validation failed");
31
+ console.error(chalk.red("\nValidation errors:"));
32
+ for (const issue of result.error.issues) {
33
+ console.error(` - ${chalk.red(issue.path.join("."))}: ${issue.message}`);
34
+ }
35
+ process.exit(1);
36
+ }
37
+ spinner.succeed("Block manifest is valid");
38
+ const block = result.data;
39
+ console.log(chalk.gray(`\nBlock ID: ${block.id}`));
40
+ console.log(chalk.gray(`Name: ${block.name}`));
41
+ console.log(chalk.gray(`Kind: ${block.kind}`));
42
+ console.log(chalk.gray(`Version: ${block.version}`));
156
43
  }
157
- if (options.json) {
158
- console.log(JSON.stringify(registry.blocks, null, 2));
159
- return;
44
+ catch (error) {
45
+ spinner.fail(`Failed to validate: ${error}`);
46
+ process.exit(1);
160
47
  }
161
- registry.blocks
162
- .sort((a, b) => a.id.localeCompare(b.id))
163
- .forEach((item) => {
164
- console.log(chalk.cyan(`${item.id}@${item.version}`));
165
- console.log(` name: ${item.name}`);
166
- console.log(` summary: ${item.summary}`);
167
- if (item.tags?.length) {
168
- console.log(` tags: ${item.tags.join(", ")}`);
169
- }
170
- console.log("");
171
- });
172
48
  });
173
- block
174
- .command("create")
175
- .description("Scaffold a new block directory with a manifest")
176
- .argument("<block-id>", "Block identifier (lowercase slug)")
177
- .option("--name <name>", "Display name for the block")
178
- .option("--summary <summary>", "Short summary for marketplace listings")
179
- .option("--description <description>", "Long-form description")
180
- .option("--version <semver>", "Initial semantic version", "0.1.0")
181
- .option("--runtime <runtime>", "Runtime (bun|node|python|docker)", "bun")
182
- .option("--tag <tag>", "Add a tag", collectValues, [])
183
- .option("--size <mb>", "Approximate size in MB")
184
- .option("--author-name <name>", "Author name")
185
- .option("--author-email <email>", "Author email")
186
- .option("--author-role <role>", "Author role")
187
- .option("--author-github <handle>", "Author GitHub handle")
188
- .option("--publish", "Publish to registry after creation", false)
189
- .option("--force", "Overwrite existing manifest", false)
190
- .action(async (rawId, options) => {
191
- const blockId = IdentifierSchema.parse(rawId);
192
- const manifestFile = manifestPath(blockId);
193
- const existsAlready = await exists(manifestFile);
194
- if (existsAlready && !options.force) {
195
- console.error(chalk.red(`✖ Block ${blockId} already exists. Use --force to overwrite.`));
196
- process.exitCode = 1;
197
- return;
49
+ }
50
+ // ============================================================================
51
+ // Command: block test
52
+ // ============================================================================
53
+ function setupTestCommand(program) {
54
+ program
55
+ .command("test <manifest-path>")
56
+ .description("Test a Block")
57
+ .action(async (manifestPath) => {
58
+ const spinner = ora("Testing Block...").start();
59
+ try {
60
+ const absolutePath = path.resolve(process.cwd(), manifestPath);
61
+ const content = await readFile(absolutePath, { encoding: "utf8" });
62
+ const manifest = JSON.parse(content);
63
+ // Validate first
64
+ const result = BlockSchema.safeParse(manifest);
65
+ if (!result.success) {
66
+ spinner.fail("Validation failed");
67
+ console.error(chalk.red("Validation errors:"));
68
+ for (const issue of result.error.issues) {
69
+ console.error(` - ${chalk.red(issue.path.join("."))}: ${issue.message}`);
70
+ }
71
+ process.exit(1);
72
+ }
73
+ const block = result.data;
74
+ // Test based on kind
75
+ if (block.kind === "ui") {
76
+ // Test UI Block
77
+ spinner.succeed("UI Block test passed");
78
+ console.log(chalk.gray(`\nBlock: ${block.id}`));
79
+ console.log(chalk.gray(`Has ${block.controls.length} controls`));
80
+ console.log(chalk.gray(`Has ${Object.keys(block.renderers).length} renderers`));
81
+ }
82
+ else {
83
+ // Test Capability Block
84
+ spinner.succeed("Capability Block test passed");
85
+ console.log(chalk.gray(`\nBlock: ${block.id}`));
86
+ console.log(chalk.gray(`Runtime: ${block.runtime}`));
87
+ console.log(chalk.gray(`Entry: ${block.entryPoint}`));
88
+ }
89
+ }
90
+ catch (error) {
91
+ spinner.fail(`Failed to test: ${error}`);
92
+ process.exit(1);
198
93
  }
199
- await ensureBlockScaffold(blockId);
200
- const manifestDraft = CapabilityBlockSchema.parse({
201
- kind: "capability",
202
- id: blockId,
203
- name: options.name ?? defaultBlockName(blockId),
204
- summary: options.summary ?? `Summary for ${blockId}.`,
205
- description: options.description ?? `Detailed description for block ${blockId}. Update before publishing.`,
206
- version: options.version,
207
- entryPoint: ENTRYPOINT_PATH,
208
- runtime: options.runtime,
209
- tags: options.tag ?? [],
210
- sizeMB: options.size ? Number(options.size) : undefined,
211
- authors: buildAuthors(options),
212
- });
213
- await writeManifest(blockId, manifestDraft);
214
- const readmePath = workspacePath(BLOCKS_DIR, blockId, README_FILENAME);
215
- const entryPath = workspacePath(BLOCKS_DIR, blockId, "src", "index.ts");
216
- await writeFile(readmePath, renderReadme(manifestDraft), { encoding: "utf8" });
217
- await writeFile(entryPath, renderStub(manifestDraft), { encoding: "utf8" });
218
- console.log(chalk.green(`✔ Created block scaffold at ${path.join(BLOCKS_DIR, blockId)}`));
219
- if (options.publish) {
220
- await publishBlock(blockId);
94
+ });
95
+ }
96
+ // ============================================================================
97
+ // Command: block list
98
+ // ============================================================================
99
+ function setupListCommand(program) {
100
+ program
101
+ .command("list")
102
+ .description("List all Blocks in a directory")
103
+ .option("--dir <dir>", "Directory to search", ".")
104
+ .action(async () => {
105
+ const spinner = ora("Searching for Blocks...").start();
106
+ try {
107
+ // In a real implementation, we would walk the directory tree
108
+ // and find all manifest.json files
109
+ // For now, simulate with a delay
110
+ await new Promise((resolve) => setTimeout(resolve, 500));
111
+ spinner.succeed("Found Blocks");
112
+ console.log(chalk.gray("\nNo Blocks found in current implementation."));
113
+ console.log(chalk.gray("Use 'blkc block validate <path>' to validate a specific Block."));
221
114
  }
222
- else {
223
- console.log(chalk.gray(`Run 'blkc block publish ${blockId}' after editing the manifest.`));
115
+ catch (error) {
116
+ spinner.fail(`Failed to list Blocks: ${error}`);
117
+ process.exit(1);
224
118
  }
225
119
  });
226
- block
227
- .command("publish")
228
- .description("Validate and add a block manifest to the registry")
229
- .argument("<block-id>", "Block identifier to publish")
230
- .option("--github-org <org>", "Create a GitHub repo under this org")
231
- .option("--github-private", "Create as a private repo", false)
232
- .option("--dry-run", "Validate the manifest without writing the registry", false)
233
- .action(async (rawId, options) => {
120
+ }
121
+ // ============================================================================
122
+ // Command: block info
123
+ // ============================================================================
124
+ function setupInfoCommand(program) {
125
+ program
126
+ .command("info <manifest-path>")
127
+ .description("Show detailed information about a Block")
128
+ .action(async (manifestPath) => {
129
+ const spinner = ora("Loading Block info...").start();
234
130
  try {
235
- const blockId = IdentifierSchema.parse(rawId);
236
- await publishBlock(blockId, { dryRun: options.dryRun });
237
- if (options.dryRun) {
238
- return;
131
+ const absolutePath = path.resolve(process.cwd(), manifestPath);
132
+ const content = await readFile(absolutePath, { encoding: "utf8" });
133
+ const manifest = JSON.parse(content);
134
+ const result = BlockSchema.safeParse(manifest);
135
+ if (!result.success) {
136
+ spinner.fail("Invalid Block manifest");
137
+ process.exit(1);
239
138
  }
240
- const token = process.env.GITHUB_TOKEN;
241
- if (options.githubOrg || token) {
242
- // lazy require to avoid load-time dependency
243
- // eslint-disable-next-line @typescript-eslint/no-var-requires
244
- const github = require("../utils/github");
245
- const manifest = await readManifest(blockId);
246
- const repoName = manifest.id;
247
- const result = await github.ensureGithubRepo({
248
- org: options.githubOrg,
249
- name: repoName,
250
- description: manifest.summary ?? manifest.description,
251
- private: !!options.githubPrivate,
252
- token,
253
- });
254
- if (result.created) {
255
- console.log(chalk.green(`✔ GitHub repo created: ${result.repo}`));
256
- }
257
- else {
258
- console.log(chalk.yellow(`⚠ GitHub repo not created: ${result.message}`));
259
- if (result.details) {
260
- console.log(JSON.stringify(result.details, null, 2));
261
- }
262
- }
263
- console.log("\nNext steps to push your block to GitHub:");
264
- console.log(` cd ${BLOCKS_DIR}/${blockId}`);
265
- console.log(" git init");
266
- console.log(" git add .");
267
- console.log(" git commit -m \"chore: initial block scaffold\"");
268
- if (result.repo) {
269
- console.log(` git remote add origin ${result.repo.replace(/\.git$/, '')}.git`);
270
- console.log(" git branch -M main");
271
- console.log(" git push -u origin main");
272
- }
273
- else {
274
- console.log(" # Create a repository on GitHub and add it as 'origin' then push");
275
- }
139
+ const block = result.data;
140
+ spinner.succeed(`Block: ${block.id}`);
141
+ console.log(chalk.bold("\nBlock Information"));
142
+ console.log(chalk.gray("─".repeat(40)));
143
+ console.log(chalk.gray(`ID: ${block.id}`));
144
+ console.log(chalk.gray(`Name: ${block.name}`));
145
+ console.log(chalk.gray(`Summary: ${block.summary}`));
146
+ console.log(chalk.gray(`Kind: ${block.kind}`));
147
+ console.log(chalk.gray(`Version: ${block.version}`));
148
+ console.log(chalk.gray(`License: ${block.license}`));
149
+ console.log(chalk.gray(`Visibility: ${block.visibility}`));
150
+ if (block.tags.length > 0) {
151
+ console.log(chalk.gray(`Tags: ${block.tags.join(", ")}`));
152
+ }
153
+ if (block.kind === "ui") {
154
+ console.log(chalk.bold("\nUI Block Details"));
155
+ console.log(chalk.gray("─".repeat(40)));
156
+ console.log(chalk.gray(`Category: ${block.category || "none"}`));
157
+ console.log(chalk.gray(`Controls: ${block.controls.length}`));
158
+ console.log(chalk.gray(`Renderers: ${Object.keys(block.renderers).join(", ")}`));
159
+ console.log(chalk.gray(`Props: ${Object.keys(block.props.properties || {}).length}`));
160
+ }
161
+ else {
162
+ console.log(chalk.bold("\nCapability Block Details"));
163
+ console.log(chalk.gray("─".repeat(40)));
164
+ console.log(chalk.gray(`Runtime: ${block.runtime}`));
165
+ console.log(chalk.gray(`Entry: ${block.entryPoint}`));
166
+ console.log(chalk.gray(`Size: ${block.sizeMB || "unknown"} MB`));
167
+ console.log(chalk.gray(`Inputs: ${block.inputs.length > 0 ? block.inputs.join(", ") : "none"}`));
168
+ console.log(chalk.gray(`Outputs: ${block.outputs.length > 0 ? block.outputs.join(", ") : "none"}`));
169
+ }
170
+ if (block.repository) {
171
+ console.log(chalk.bold("\nRepository"));
172
+ console.log(chalk.gray("─".repeat(40)));
173
+ console.log(chalk.gray(block.repository));
276
174
  }
277
175
  }
278
176
  catch (error) {
279
- console.error(chalk.red(`✖ Failed to publish block: ${error.message}`));
280
- process.exitCode = 1;
177
+ spinner.fail(`Failed to show info: ${error}`);
178
+ process.exit(1);
281
179
  }
282
180
  });
283
- };
181
+ }
182
+ // ============================================================================
183
+ // Register Commands
184
+ // ============================================================================
185
+ /** Register all block commands with the program */
186
+ export function registerBlockCommands(program) {
187
+ const blockProgram = program
188
+ .command("block")
189
+ .description("Block commands")
190
+ .alias("b");
191
+ setupValidateCommand(blockProgram);
192
+ setupTestCommand(blockProgram);
193
+ setupListCommand(blockProgram);
194
+ setupInfoCommand(blockProgram);
195
+ }
284
196
  //# sourceMappingURL=block.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"block.js","sourceRoot":"","sources":["../../src/commands/block.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"block.js","sourceRoot":"","sources":["../../src/commands/block.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,+EAA+E;AAC/E,0BAA0B;AAC1B,+EAA+E;AAE/E,SAAS,oBAAoB,CAAC,OAAgB;IAC5C,OAAO;SACJ,OAAO,CAAC,0BAA0B,CAAC;SACnC,WAAW,CAAC,2BAA2B,CAAC;SACxC,MAAM,CAAC,KAAK,EAAE,YAAoB,EAAE,EAAE;QACrC,MAAM,OAAO,GAAG,GAAG,CAAC,8BAA8B,CAAC,CAAC,KAAK,EAAE,CAAC;QAE5D,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;YACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAErC,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAE/C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAClC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAC;gBACjD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;oBACxC,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC5E,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,OAAO,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;YAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,uBAAuB,KAAK,EAAE,CAAC,CAAC;YAC7C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,+EAA+E;AAC/E,sBAAsB;AACtB,+EAA+E;AAE/E,SAAS,gBAAgB,CAAC,OAAgB;IACxC,OAAO;SACJ,OAAO,CAAC,sBAAsB,CAAC;SAC/B,WAAW,CAAC,cAAc,CAAC;SAC3B,MAAM,CAAC,KAAK,EAAE,YAAoB,EAAE,EAAE;QACrC,MAAM,OAAO,GAAG,GAAG,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC;QAEhD,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;YACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAErC,iBAAiB;YACjB,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC/C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAClC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC;gBAC/C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;oBACxC,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC5E,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;YAE1B,qBAAqB;YACrB,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;gBACxB,gBAAgB;gBAChB,OAAO,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;gBACxC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;gBAChD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,QAAQ,CAAC,MAAM,WAAW,CAAC,CAAC,CAAC;gBACjE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,YAAY,CAAC,CAAC,CAAC;YAClF,CAAC;iBAAM,CAAC;gBACN,wBAAwB;gBACxB,OAAO,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC;gBAChD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;gBAChD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gBACrD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,mBAAmB,KAAK,EAAE,CAAC,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,+EAA+E;AAC/E,sBAAsB;AACtB,+EAA+E;AAE/E,SAAS,gBAAgB,CAAC,OAAgB;IACxC,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,gCAAgC,CAAC;SAC7C,MAAM,CAAC,aAAa,EAAE,qBAAqB,EAAE,GAAG,CAAC;SACjD,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,OAAO,GAAG,GAAG,CAAC,yBAAyB,CAAC,CAAC,KAAK,EAAE,CAAC;QAEvD,IAAI,CAAC;YACH,6DAA6D;YAC7D,mCAAmC;YACnC,iCAAiC;YACjC,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;YAEzD,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC,CAAC;YACxE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC,CAAC;QAC5F,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,0BAA0B,KAAK,EAAE,CAAC,CAAC;YAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,+EAA+E;AAC/E,sBAAsB;AACtB,+EAA+E;AAE/E,SAAS,gBAAgB,CAAC,OAAgB;IACxC,OAAO;SACJ,OAAO,CAAC,sBAAsB,CAAC;SAC/B,WAAW,CAAC,yCAAyC,CAAC;SACtD,MAAM,CAAC,KAAK,EAAE,YAAoB,EAAE,EAAE;QACrC,MAAM,OAAO,GAAG,GAAG,CAAC,uBAAuB,CAAC,CAAC,KAAK,EAAE,CAAC;QAErD,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;YACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAErC,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC/C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;gBACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;YAC1B,OAAO,CAAC,OAAO,CAAC,UAAU,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YAEtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACpD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACvD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACpD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACvD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACvD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YAE3D,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACjE,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;gBAC9C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBACxC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,QAAQ,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC;gBAClE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBAC/D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBAClF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC5F,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAC;gBACtD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBACxC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gBACvD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;gBAC1D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,MAAM,IAAI,SAAS,KAAK,CAAC,CAAC,CAAC;gBACtE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBACpG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACxG,CAAC;YAED,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;gBACrB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;gBACxC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBACxC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,wBAAwB,KAAK,EAAE,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,+EAA+E;AAC/E,oBAAoB;AACpB,+EAA+E;AAE/E,mDAAmD;AACnD,MAAM,UAAU,qBAAqB,CAAC,OAAgB;IACpD,MAAM,YAAY,GAAG,OAAO;SACzB,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,gBAAgB,CAAC;SAC7B,KAAK,CAAC,GAAG,CAAC,CAAC;IAEd,oBAAoB,CAAC,YAAY,CAAC,CAAC;IACnC,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAC/B,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAC/B,gBAAgB,CAAC,YAAY,CAAC,CAAC;AACjC,CAAC"}
@@ -1,2 +1,13 @@
1
+ /**
2
+ * BLKC CLI - Circuit Commands
3
+ *
4
+ * Commands for working with BLKC Circuits.
5
+ *
6
+ * @package @blkc-code/cli
7
+ * @license Apache-2.0
8
+ * @author Black Code Enterprises LLC
9
+ */
1
10
  import { Command } from "commander";
2
- export declare const registerCircuitCommands: (program: Command) => void;
11
+ /** Register all circuit commands with the program */
12
+ export declare function registerCircuitCommands(program: Command): void;
13
+ //# sourceMappingURL=circuit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"circuit.d.ts","sourceRoot":"","sources":["../../src/commands/circuit.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiKpC,qDAAqD;AACrD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAS9D"}