@leaperone/cli 0.1.1 → 0.1.2

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.
@@ -1,19 +1,29 @@
1
1
  import { request } from "../lib/api.js";
2
2
  import { jsonOutput, table, error } from "../lib/output.js";
3
+ function stripMdxComponents(text) {
4
+ return text
5
+ .replace(/<Cards>[\s\S]*?<\/Cards>/g, "")
6
+ .replace(/<Card\s+title="([^"]*)"[^>]*>\s*([\s\S]*?)\s*<\/Card>/g, " [$1] $2")
7
+ .replace(/<Callout[^>]*>\s*([\s\S]*?)\s*<\/Callout>/g, " ⓘ $1")
8
+ .replace(/<[^>]+>/g, "")
9
+ .replace(/\n{3,}/g, "\n\n")
10
+ .trim();
11
+ }
3
12
  export function registerDocsCommand(program) {
4
- const docs = program.command("docs").description("View API documentation");
13
+ const docs = program.command("docs").description("Browse API documentation");
5
14
  docs
6
- .command("endpoints")
7
- .description("List available API endpoints")
15
+ .command("list")
16
+ .alias("ls")
17
+ .description("List all documentation pages")
8
18
  .action(async () => {
9
19
  const json = program.opts().json;
10
20
  try {
11
21
  const data = await request("/docs");
12
22
  if (json) {
13
- jsonOutput(data.endpoints);
23
+ jsonOutput(data.pages);
14
24
  return;
15
25
  }
16
- table(["Method", "Path", "Description", "Auth"], data.endpoints.map((e) => [e.method, e.path, e.description, e.auth]));
26
+ table(["Slug", "Title", "Description"], data.pages.map((p) => [p.slug, p.title, p.description]));
17
27
  }
18
28
  catch (err) {
19
29
  if (json)
@@ -24,22 +34,26 @@ export function registerDocsCommand(program) {
24
34
  }
25
35
  });
26
36
  docs
27
- .command("models")
28
- .description("List available models and pricing")
29
- .action(async () => {
37
+ .command("read <slug>")
38
+ .description("Read a documentation page (e.g. quickstart, guides/authentication)")
39
+ .action(async (slug) => {
30
40
  const json = program.opts().json;
31
41
  try {
32
- const data = await request("/docs");
42
+ const data = await request("/docs", {
43
+ query: { slug },
44
+ });
33
45
  if (json) {
34
- jsonOutput(data.models);
46
+ jsonOutput(data);
35
47
  return;
36
48
  }
37
- table(["Model", "Provider", "Input/1M tokens", "Output/1M tokens"], data.models.map((m) => [
38
- m.id,
39
- m.provider,
40
- `$${m.inputPer1M}`,
41
- `$${m.outputPer1M}`,
42
- ]));
49
+ const divider = "".repeat(60);
50
+ console.log(divider);
51
+ console.log(` ${data.title}`);
52
+ if (data.description)
53
+ console.log(` ${data.description}`);
54
+ console.log(divider);
55
+ console.log();
56
+ console.log(stripMdxComponents(data.content));
43
57
  }
44
58
  catch (err) {
45
59
  if (json)
@@ -49,18 +63,19 @@ export function registerDocsCommand(program) {
49
63
  process.exit(1);
50
64
  }
51
65
  });
52
- docs
53
- .command("quickstart")
54
- .description("Show quick start guide")
55
- .action(async () => {
66
+ // Default action: show list when running `leaperone docs` with no subcommand
67
+ docs.action(async () => {
56
68
  const json = program.opts().json;
57
69
  try {
58
70
  const data = await request("/docs");
59
71
  if (json) {
60
- jsonOutput({ quickStart: data.quickStart });
72
+ jsonOutput(data.pages);
61
73
  return;
62
74
  }
63
- console.log(data.quickStart);
75
+ console.log("Available documentation pages:\n");
76
+ table(["Slug", "Title"], data.pages.map((p) => [p.slug, p.title]));
77
+ console.log("\nRead a page: leaperone docs read <slug>");
78
+ console.log("Full docs: https://leaper.one/docs");
64
79
  }
65
80
  catch (err) {
66
81
  if (json)
@@ -1 +1 @@
1
- {"version":3,"file":"docs.js","sourceRoot":"","sources":["../../src/commands/docs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docs.js","sourceRoot":"","sources":["../../src/commands/docs.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -8,7 +8,7 @@ const program = new Command();
8
8
  program
9
9
  .name("leaperone")
10
10
  .description("LEAPERone CLI - Manage API keys, credits, and access documentation")
11
- .version("0.1.1")
11
+ .version("0.1.2")
12
12
  .option("--json", "Output in JSON format (useful for agents and scripts)")
13
13
  .configureHelp({
14
14
  sortSubcommands: true,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leaperone/cli",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "LEAPERone CLI - Manage API keys, credits, and access documentation",
5
5
  "type": "module",
6
6
  "bin": {