@jango-blockchained/hoox-cli 0.5.1 → 0.5.6

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 (106) hide show
  1. package/bin/hoox.js +3 -4
  2. package/dist/index.js +32545 -0
  3. package/package.json +10 -15
  4. package/src/commands/check/check-command.test.ts +0 -476
  5. package/src/commands/check/check-command.ts +0 -1144
  6. package/src/commands/check/index.ts +0 -10
  7. package/src/commands/check/prerequisites-command.test.ts +0 -19
  8. package/src/commands/check/prerequisites-command.ts +0 -96
  9. package/src/commands/check/types.ts +0 -103
  10. package/src/commands/clone/clone-command.test.ts +0 -442
  11. package/src/commands/clone/clone-command.ts +0 -431
  12. package/src/commands/clone/index.ts +0 -1
  13. package/src/commands/config/config-command.test.ts +0 -583
  14. package/src/commands/config/config-command.ts +0 -897
  15. package/src/commands/config/env-command.test.ts +0 -43
  16. package/src/commands/config/env-command.ts +0 -295
  17. package/src/commands/config/index.ts +0 -3
  18. package/src/commands/config/kv-command.test.ts +0 -14
  19. package/src/commands/config/kv-command.ts +0 -290
  20. package/src/commands/dashboard/dashboard-command.test.ts +0 -47
  21. package/src/commands/dashboard/dashboard-command.ts +0 -128
  22. package/src/commands/dashboard/index.ts +0 -1
  23. package/src/commands/db/db-command.test.ts +0 -21
  24. package/src/commands/db/db-command.ts +0 -312
  25. package/src/commands/db/index.ts +0 -1
  26. package/src/commands/deploy/deploy-command.test.ts +0 -304
  27. package/src/commands/deploy/deploy-command.ts +0 -1135
  28. package/src/commands/deploy/index.ts +0 -2
  29. package/src/commands/deploy/telegram-service.ts +0 -76
  30. package/src/commands/deploy/types.ts +0 -34
  31. package/src/commands/dev/dev-command.test.ts +0 -383
  32. package/src/commands/dev/dev-command.ts +0 -398
  33. package/src/commands/dev/index.ts +0 -1
  34. package/src/commands/infra/index.ts +0 -5
  35. package/src/commands/infra/infra-command.test.ts +0 -719
  36. package/src/commands/infra/infra-command.ts +0 -974
  37. package/src/commands/infra/types.ts +0 -23
  38. package/src/commands/init/__tests__/cli-provisioner.test.ts +0 -17
  39. package/src/commands/init/cli-provisioner.ts +0 -71
  40. package/src/commands/init/index.ts +0 -1
  41. package/src/commands/init/init-command.test.ts +0 -876
  42. package/src/commands/init/init-command.ts +0 -593
  43. package/src/commands/init/types.ts +0 -23
  44. package/src/commands/logs/index.ts +0 -1
  45. package/src/commands/logs/logs-command.test.ts +0 -294
  46. package/src/commands/logs/logs-command.ts +0 -452
  47. package/src/commands/monitor/index.ts +0 -2
  48. package/src/commands/monitor/monitor-command.test.ts +0 -263
  49. package/src/commands/monitor/monitor-command.ts +0 -269
  50. package/src/commands/monitor/monitor-service.ts +0 -65
  51. package/src/commands/monitor/types.ts +0 -13
  52. package/src/commands/repair/index.ts +0 -2
  53. package/src/commands/repair/repair-command.test.ts +0 -224
  54. package/src/commands/repair/repair-command.ts +0 -220
  55. package/src/commands/repair/repair-service.ts +0 -138
  56. package/src/commands/repair/types.ts +0 -13
  57. package/src/commands/test/index.ts +0 -2
  58. package/src/commands/test/test-command.test.ts +0 -319
  59. package/src/commands/test/test-command.ts +0 -406
  60. package/src/commands/tui/index.ts +0 -1
  61. package/src/commands/tui/tui-command.ts +0 -87
  62. package/src/commands/update/index.ts +0 -1
  63. package/src/commands/update/update-command.ts +0 -168
  64. package/src/commands/waf/index.ts +0 -2
  65. package/src/commands/waf/types.ts +0 -48
  66. package/src/commands/waf/waf-command.test.ts +0 -506
  67. package/src/commands/waf/waf-command.ts +0 -548
  68. package/src/index.ts +0 -269
  69. package/src/services/cloudflare/cloudflare-service.test.ts +0 -658
  70. package/src/services/cloudflare/cloudflare-service.ts +0 -433
  71. package/src/services/cloudflare/index.ts +0 -2
  72. package/src/services/cloudflare/types.ts +0 -30
  73. package/src/services/config/config-service.test.ts +0 -395
  74. package/src/services/config/config-service.ts +0 -207
  75. package/src/services/config/index.ts +0 -9
  76. package/src/services/config/types.ts +0 -66
  77. package/src/services/db/db-service.test.ts +0 -51
  78. package/src/services/db/db-service.ts +0 -131
  79. package/src/services/db/index.ts +0 -1
  80. package/src/services/docker/docker-service.ts +0 -155
  81. package/src/services/docker/index.ts +0 -1
  82. package/src/services/env/env-service.test.ts +0 -236
  83. package/src/services/env/env-service.ts +0 -386
  84. package/src/services/env/index.ts +0 -1
  85. package/src/services/kv/index.ts +0 -1
  86. package/src/services/kv/kv-sync-service.test.ts +0 -38
  87. package/src/services/kv/kv-sync-service.ts +0 -234
  88. package/src/services/prerequisites/index.ts +0 -1
  89. package/src/services/prerequisites/prerequisites-service.test.ts +0 -89
  90. package/src/services/prerequisites/prerequisites-service.ts +0 -377
  91. package/src/services/prerequisites/types.ts +0 -48
  92. package/src/services/secrets/index.ts +0 -11
  93. package/src/services/secrets/secrets-service.test.ts +0 -495
  94. package/src/services/secrets/secrets-service.ts +0 -287
  95. package/src/services/secrets/types.ts +0 -50
  96. package/src/services/update/index.ts +0 -2
  97. package/src/services/update/update-service.test.ts +0 -76
  98. package/src/services/update/update-service.ts +0 -193
  99. package/src/ui/banner.ts +0 -141
  100. package/src/ui/index.ts +0 -8
  101. package/src/ui/menu.ts +0 -490
  102. package/src/utils/errors.test.ts +0 -69
  103. package/src/utils/errors.ts +0 -23
  104. package/src/utils/formatters.test.ts +0 -180
  105. package/src/utils/formatters.ts +0 -269
  106. package/src/utils/theme.ts +0 -94
@@ -1,23 +0,0 @@
1
- /**
2
- * Types for the `hoox infra` command group.
3
- */
4
-
5
- /** Global CLI options available to infra subcommands. */
6
- export interface InfraOptions {
7
- json?: boolean;
8
- quiet?: boolean;
9
- }
10
-
11
- /** A single infrastructure resource provisioned (or attempted). */
12
- export interface ProvisionItem {
13
- name: string;
14
- type: "d1" | "kv" | "r2" | "queue";
15
- status: "created" | "exists" | "error";
16
- error?: string;
17
- }
18
-
19
- /** Result of the `provision` subcommand. */
20
- export interface ProvisionResult {
21
- items: ProvisionItem[];
22
- summary: { total: number; created: number; errors: number; exists: number };
23
- }
@@ -1,17 +0,0 @@
1
- import { describe, it, expect } from "bun:test";
2
- import { CLIProvisioner } from "../cli-provisioner";
3
-
4
- describe("CLIProvisioner", () => {
5
- it("check returns expected resources", async () => {
6
- const provisioner = new CLIProvisioner();
7
- const result = await provisioner.check({
8
- d1Databases: ["hoox-db"],
9
- kvNamespaces: ["CONFIG_KV"],
10
- r2Buckets: [],
11
- queues: [],
12
- });
13
- expect(result.success).toBe(true);
14
- expect(result.created).toContain("D1:hoox-db");
15
- expect(result.created).toContain("KV:CONFIG_KV");
16
- });
17
- });
@@ -1,71 +0,0 @@
1
- /**
2
- * CLI implementation of the Provisioner interface.
3
- * Uses `wrangler` CLI via Bun.spawn to create Cloudflare resources.
4
- */
5
- import type {
6
- Provisioner,
7
- ProvisioningPlan,
8
- ProvisionResult,
9
- } from "@jango-blockchained/hoox-shared";
10
-
11
- export class CLIProvisioner implements Provisioner {
12
- async provision(plan: ProvisioningPlan): Promise<ProvisionResult> {
13
- const created: string[] = [];
14
- const errors: string[] = [];
15
-
16
- for (const db of plan.d1Databases) {
17
- try {
18
- const proc = Bun.spawn(["wrangler", "d1", "create", db], {
19
- stdout: "pipe",
20
- stderr: "pipe",
21
- });
22
- await new Response(proc.stdout).text();
23
- const exitCode = await proc.exited;
24
- if (exitCode === 0) {
25
- created.push(`D1:${db}`);
26
- } else {
27
- const err = await new Response(proc.stderr).text();
28
- errors.push(`D1:${db} — ${err.trim() || `exit code ${exitCode}`}`);
29
- }
30
- } catch (e) {
31
- errors.push(`D1:${db} — ${(e as Error).message}`);
32
- }
33
- }
34
-
35
- for (const ns of plan.kvNamespaces) {
36
- try {
37
- const proc = Bun.spawn(["wrangler", "kv", "namespace", "create", ns], {
38
- stdout: "pipe",
39
- stderr: "pipe",
40
- });
41
- await new Response(proc.stdout).text();
42
- const exitCode = await proc.exited;
43
- if (exitCode === 0) {
44
- created.push(`KV:${ns}`);
45
- } else {
46
- const err = await new Response(proc.stderr).text();
47
- errors.push(`KV:${ns} — ${err.trim() || `exit code ${exitCode}`}`);
48
- }
49
- } catch (e) {
50
- errors.push(`KV:${ns} — ${(e as Error).message}`);
51
- }
52
- }
53
-
54
- return {
55
- success: errors.length === 0,
56
- created,
57
- errors,
58
- };
59
- }
60
-
61
- async check(plan: ProvisioningPlan): Promise<ProvisionResult> {
62
- // Dry-run: just report what would be created
63
- const created: string[] = [
64
- ...plan.d1Databases.map((d) => `D1:${d}`),
65
- ...plan.kvNamespaces.map((k) => `KV:${k}`),
66
- ...plan.r2Buckets.map((b) => `R2:${b}`),
67
- ...plan.queues.map((q) => `Queue:${q}`),
68
- ];
69
- return { success: true, created, errors: [] };
70
- }
71
- }
@@ -1 +0,0 @@
1
- export { registerInitCommand } from "./init-command.js";