@flux-lang/cli-core 0.1.0

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 (89) hide show
  1. package/dist/commands/add.d.ts +18 -0
  2. package/dist/commands/add.d.ts.map +1 -0
  3. package/dist/commands/add.js +49 -0
  4. package/dist/commands/add.js.map +1 -0
  5. package/dist/commands/check.d.ts +15 -0
  6. package/dist/commands/check.d.ts.map +1 -0
  7. package/dist/commands/check.js +40 -0
  8. package/dist/commands/check.js.map +1 -0
  9. package/dist/commands/common.d.ts +6 -0
  10. package/dist/commands/common.d.ts.map +1 -0
  11. package/dist/commands/common.js +35 -0
  12. package/dist/commands/common.js.map +1 -0
  13. package/dist/commands/config.d.ts +19 -0
  14. package/dist/commands/config.d.ts.map +1 -0
  15. package/dist/commands/config.js +21 -0
  16. package/dist/commands/config.js.map +1 -0
  17. package/dist/commands/format.d.ts +9 -0
  18. package/dist/commands/format.d.ts.map +1 -0
  19. package/dist/commands/format.js +23 -0
  20. package/dist/commands/format.js.map +1 -0
  21. package/dist/commands/new.d.ts +24 -0
  22. package/dist/commands/new.d.ts.map +1 -0
  23. package/dist/commands/new.js +93 -0
  24. package/dist/commands/new.js.map +1 -0
  25. package/dist/commands/parse.d.ts +20 -0
  26. package/dist/commands/parse.d.ts.map +1 -0
  27. package/dist/commands/parse.js +37 -0
  28. package/dist/commands/parse.js.map +1 -0
  29. package/dist/commands/pdf.d.ts +13 -0
  30. package/dist/commands/pdf.d.ts.map +1 -0
  31. package/dist/commands/pdf.js +53 -0
  32. package/dist/commands/pdf.js.map +1 -0
  33. package/dist/commands/render.d.ts +14 -0
  34. package/dist/commands/render.d.ts.map +1 -0
  35. package/dist/commands/render.js +40 -0
  36. package/dist/commands/render.js.map +1 -0
  37. package/dist/commands/step.d.ts +12 -0
  38. package/dist/commands/step.d.ts.map +1 -0
  39. package/dist/commands/step.js +29 -0
  40. package/dist/commands/step.js.map +1 -0
  41. package/dist/commands/tick.d.ts +12 -0
  42. package/dist/commands/tick.d.ts.map +1 -0
  43. package/dist/commands/tick.js +31 -0
  44. package/dist/commands/tick.js.map +1 -0
  45. package/dist/commands/view.d.ts +18 -0
  46. package/dist/commands/view.d.ts.map +1 -0
  47. package/dist/commands/view.js +28 -0
  48. package/dist/commands/view.js.map +1 -0
  49. package/dist/config.d.ts +37 -0
  50. package/dist/config.d.ts.map +1 -0
  51. package/dist/config.js +76 -0
  52. package/dist/config.js.map +1 -0
  53. package/dist/file-indexer.d.ts +29 -0
  54. package/dist/file-indexer.d.ts.map +1 -0
  55. package/dist/file-indexer.js +59 -0
  56. package/dist/file-indexer.js.map +1 -0
  57. package/dist/fs.d.ts +10 -0
  58. package/dist/fs.d.ts.map +1 -0
  59. package/dist/fs.js +57 -0
  60. package/dist/fs.js.map +1 -0
  61. package/dist/index.d.ts +19 -0
  62. package/dist/index.d.ts.map +1 -0
  63. package/dist/index.js +19 -0
  64. package/dist/index.js.map +1 -0
  65. package/dist/last-used-dir.d.ts +9 -0
  66. package/dist/last-used-dir.d.ts.map +1 -0
  67. package/dist/last-used-dir.js +23 -0
  68. package/dist/last-used-dir.js.map +1 -0
  69. package/dist/new/templates.d.ts +28 -0
  70. package/dist/new/templates.d.ts.map +1 -0
  71. package/dist/new/templates.js +679 -0
  72. package/dist/new/templates.js.map +1 -0
  73. package/dist/pinned.d.ts +12 -0
  74. package/dist/pinned.d.ts.map +1 -0
  75. package/dist/pinned.js +45 -0
  76. package/dist/pinned.js.map +1 -0
  77. package/dist/recents.d.ts +13 -0
  78. package/dist/recents.d.ts.map +1 -0
  79. package/dist/recents.js +27 -0
  80. package/dist/recents.js.map +1 -0
  81. package/dist/types.d.ts +23 -0
  82. package/dist/types.d.ts.map +1 -0
  83. package/dist/types.js +7 -0
  84. package/dist/types.js.map +1 -0
  85. package/dist/viewer/manager.d.ts +55 -0
  86. package/dist/viewer/manager.d.ts.map +1 -0
  87. package/dist/viewer/manager.js +182 -0
  88. package/dist/viewer/manager.js.map +1 -0
  89. package/package.json +34 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/new/templates.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ export interface PinnedDirsStore {
2
+ entries: string[];
3
+ storePath: string;
4
+ repoRoot: string | null;
5
+ fallback: boolean;
6
+ }
7
+ export declare function getPinnedDirsStore(cwd: string): Promise<PinnedDirsStore>;
8
+ export declare function addPinnedDir(cwd: string, dir: string, maxEntries?: number): Promise<PinnedDirsStore>;
9
+ export declare function removePinnedDir(cwd: string, dir: string): Promise<PinnedDirsStore>;
10
+ export declare function togglePinnedDir(cwd: string, dir: string, maxEntries?: number): Promise<PinnedDirsStore>;
11
+ export declare function isPinnedDir(store: PinnedDirsStore, dir: string): boolean;
12
+ //# sourceMappingURL=pinned.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pinned.d.ts","sourceRoot":"","sources":["../src/pinned.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAID,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAW9E;AAED,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,SAAa,GAAG,OAAO,CAAC,eAAe,CAAC,CAQ9G;AAED,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAOxF;AAED,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,SAAa,GAAG,OAAO,CAAC,eAAe,CAAC,CAOjH;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAGxE"}
package/dist/pinned.js ADDED
@@ -0,0 +1,45 @@
1
+ import path from "node:path";
2
+ import { ensureDir, fallbackStatePath, findGitRoot, readJsonFile, repoStatePath, writeJsonFile } from "./fs.js";
3
+ const MAX_PINNED = 5;
4
+ export async function getPinnedDirsStore(cwd) {
5
+ const repoRoot = await findGitRoot(cwd);
6
+ const baseDir = repoRoot ? repoStatePath(repoRoot) : fallbackStatePath(cwd);
7
+ const storePath = path.join(baseDir, "pinned-dirs.json");
8
+ const entries = (await readJsonFile(storePath)) ?? [];
9
+ return {
10
+ entries: Array.isArray(entries) ? entries : [],
11
+ storePath,
12
+ repoRoot,
13
+ fallback: !repoRoot,
14
+ };
15
+ }
16
+ export async function addPinnedDir(cwd, dir, maxEntries = MAX_PINNED) {
17
+ const store = await getPinnedDirsStore(cwd);
18
+ const normalized = path.resolve(dir);
19
+ const next = [normalized, ...store.entries.filter((entry) => path.resolve(entry) !== normalized)]
20
+ .slice(0, Math.max(1, maxEntries));
21
+ await ensureDir(path.dirname(store.storePath));
22
+ await writeJsonFile(store.storePath, next);
23
+ return { ...store, entries: next };
24
+ }
25
+ export async function removePinnedDir(cwd, dir) {
26
+ const store = await getPinnedDirsStore(cwd);
27
+ const normalized = path.resolve(dir);
28
+ const next = store.entries.filter((entry) => path.resolve(entry) !== normalized);
29
+ await ensureDir(path.dirname(store.storePath));
30
+ await writeJsonFile(store.storePath, next);
31
+ return { ...store, entries: next };
32
+ }
33
+ export async function togglePinnedDir(cwd, dir, maxEntries = MAX_PINNED) {
34
+ const store = await getPinnedDirsStore(cwd);
35
+ const normalized = path.resolve(dir);
36
+ if (store.entries.some((entry) => path.resolve(entry) === normalized)) {
37
+ return removePinnedDir(cwd, normalized);
38
+ }
39
+ return addPinnedDir(cwd, normalized, maxEntries);
40
+ }
41
+ export function isPinnedDir(store, dir) {
42
+ const normalized = path.resolve(dir);
43
+ return store.entries.some((entry) => path.resolve(entry) === normalized);
44
+ }
45
+ //# sourceMappingURL=pinned.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pinned.js","sourceRoot":"","sources":["../src/pinned.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export interface RecentEntry {
2
+ path: string;
3
+ lastOpened: string;
4
+ }
5
+ export interface RecentsStore {
6
+ entries: RecentEntry[];
7
+ storePath: string;
8
+ repoRoot: string | null;
9
+ fallback: boolean;
10
+ }
11
+ export declare function getRecentsStore(cwd: string): Promise<RecentsStore>;
12
+ export declare function updateRecents(cwd: string, docPath: string): Promise<RecentsStore>;
13
+ //# sourceMappingURL=recents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recents.d.ts","sourceRoot":"","sources":["../src/recents.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAWxE;AAED,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAWvF"}
@@ -0,0 +1,27 @@
1
+ import path from "node:path";
2
+ import { ensureDir, fallbackStatePath, findGitRoot, readJsonFile, repoStatePath, writeJsonFile } from "./fs.js";
3
+ export async function getRecentsStore(cwd) {
4
+ const repoRoot = await findGitRoot(cwd);
5
+ const baseDir = repoRoot ? repoStatePath(repoRoot) : fallbackStatePath(cwd);
6
+ const storePath = path.join(baseDir, "recents.json");
7
+ const entries = (await readJsonFile(storePath)) ?? [];
8
+ return {
9
+ entries: Array.isArray(entries) ? entries : [],
10
+ storePath,
11
+ repoRoot,
12
+ fallback: !repoRoot,
13
+ };
14
+ }
15
+ export async function updateRecents(cwd, docPath) {
16
+ const store = await getRecentsStore(cwd);
17
+ const now = new Date().toISOString();
18
+ const normalized = path.resolve(docPath);
19
+ const next = [
20
+ { path: normalized, lastOpened: now },
21
+ ...store.entries.filter((entry) => path.resolve(entry.path) !== normalized),
22
+ ].slice(0, 2);
23
+ await ensureDir(path.dirname(store.storePath));
24
+ await writeJsonFile(store.storePath, next);
25
+ return { ...store, entries: next };
26
+ }
27
+ //# sourceMappingURL=recents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recents.js","sourceRoot":"","sources":["../src/recents.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAchH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAW;IAC/C,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IACrD,MAAM,OAAO,GAAG,CAAC,MAAM,YAAY,CAAgB,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;IACrE,OAAO;QACL,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QAC9C,SAAS;QACT,QAAQ;QACR,QAAQ,EAAE,CAAC,QAAQ;KACpB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,GAAW,EAAE,OAAe;IAC9D,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;IACzC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG;QACX,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE;QACrC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,UAAU,CAAC;KAC5E,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACd,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/C,MAAM,aAAa,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC3C,OAAO,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AACrC,CAAC"}
@@ -0,0 +1,23 @@
1
+ export interface CommandError {
2
+ message: string;
3
+ code?: string;
4
+ detail?: unknown;
5
+ }
6
+ export interface CommandResult<T = unknown> {
7
+ ok: boolean;
8
+ data?: T;
9
+ error?: CommandError;
10
+ warnings?: string[];
11
+ logs?: string[];
12
+ }
13
+ export type ResultLogLevel = "info" | "warn" | "error";
14
+ export interface ResultLogEntry {
15
+ level: ResultLogLevel;
16
+ message: string;
17
+ }
18
+ export interface CommandResultWithLogs<T = unknown> extends CommandResult<T> {
19
+ logEntries?: ResultLogEntry[];
20
+ }
21
+ export declare function okResult<T>(data: T, logs?: string[], warnings?: string[]): CommandResult<T>;
22
+ export declare function errorResult<T>(message: string, code?: string, detail?: unknown): CommandResult<T>;
23
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,aAAa,CAAC,CAAC,GAAG,OAAO;IACxC,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAEvD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,cAAc,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC,GAAG,OAAO,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;IAC1E,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;CAC/B;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,GAAE,MAAM,EAAO,EAAE,QAAQ,GAAE,MAAM,EAAO,GAAG,aAAa,CAAC,CAAC,CAAC,CAEnG;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,CAEjG"}
package/dist/types.js ADDED
@@ -0,0 +1,7 @@
1
+ export function okResult(data, logs = [], warnings = []) {
2
+ return { ok: true, data, logs: logs.length ? logs : undefined, warnings: warnings.length ? warnings : undefined };
3
+ }
4
+ export function errorResult(message, code, detail) {
5
+ return { ok: false, error: { message, code, detail } };
6
+ }
7
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAyBA,MAAM,UAAU,QAAQ,CAAI,IAAO,EAAE,OAAiB,EAAE,EAAE,WAAqB,EAAE;IAC/E,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;AACpH,CAAC;AAED,MAAM,UAAU,WAAW,CAAI,OAAe,EAAE,IAAa,EAAE,MAAgB;IAC7E,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;AACzD,CAAC"}
@@ -0,0 +1,55 @@
1
+ import { type ViewerServer, type ViewerServerOptions } from "@flux-lang/viewer";
2
+ export interface ViewerRegistryEntry {
3
+ docPath: string;
4
+ url: string;
5
+ port: number;
6
+ pid?: number;
7
+ startedAt: string;
8
+ lastSeen: string;
9
+ buildId?: string | null;
10
+ editorDist?: string | null;
11
+ }
12
+ export interface ViewerRegistry {
13
+ entries: ViewerRegistryEntry[];
14
+ filePath: string;
15
+ repoRoot: string | null;
16
+ fallback: boolean;
17
+ }
18
+ export interface ViewerSession {
19
+ docPath: string;
20
+ url: string;
21
+ port: number;
22
+ attached: boolean;
23
+ buildId?: string | null;
24
+ editorDist?: string | null;
25
+ server?: ViewerServer;
26
+ close?: () => Promise<void>;
27
+ }
28
+ export interface ViewerStartOptions extends ViewerServerOptions {
29
+ cwd: string;
30
+ }
31
+ interface ExpectedComponents {
32
+ viewerVersion: string;
33
+ editorBuildId: string | null;
34
+ }
35
+ interface HealthSnapshot {
36
+ viewerVersion: string | null;
37
+ editorBuildId: string | null;
38
+ }
39
+ export declare function validateHandshake(expected: ExpectedComponents, health: HealthSnapshot): string | null;
40
+ export declare function attachOrStartViewer(options: ViewerStartOptions): Promise<ViewerSession>;
41
+ export declare function updateViewerTicker(url: string, payload: {
42
+ running?: boolean;
43
+ docstepMs?: number;
44
+ }): Promise<boolean>;
45
+ export declare function updateViewerRuntime(url: string, payload: {
46
+ seed?: number;
47
+ docstep?: number;
48
+ time?: number;
49
+ }): Promise<boolean>;
50
+ export declare function fetchViewerStatus(url: string): Promise<any>;
51
+ export declare function fetchViewerPatch(url: string): Promise<any>;
52
+ export declare function fetchViewerRender(url: string): Promise<any>;
53
+ export declare function requestViewerPdf(url: string): Promise<Uint8Array>;
54
+ export {};
55
+ //# sourceMappingURL=manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/viewer/manager.ts"],"names":[],"mappings":"AACA,OAAO,EAKL,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACzB,MAAM,mBAAmB,CAAC;AAG3B,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAmB,SAAQ,mBAAmB;IAC7D,GAAG,EAAE,MAAM,CAAC;CACb;AAmCD,UAAU,kBAAkB;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,UAAU,cAAc;IACtB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AA0BD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,kBAAkB,EAAE,MAAM,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI,CAerG;AAcD,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,CAgE7F;AAED,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAO1H;AAED,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1D,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAIjE;AAED,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAIhE;AAED,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAIjE;AAED,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAOvE"}
@@ -0,0 +1,182 @@
1
+ import path from "node:path";
2
+ import { startViewerServer, computeBuildId, defaultEmbeddedDir, VIEWER_VERSION, } from "@flux-lang/viewer";
3
+ import { ensureDir, fallbackStatePath, findGitRoot, readJsonFile, writeJsonFile } from "../fs.js";
4
+ const REGISTRY_FILE = "servers.json";
5
+ async function getRegistry(cwd) {
6
+ const repoRoot = await findGitRoot(cwd);
7
+ const baseDir = repoRoot ? path.join(repoRoot, ".git", "flux") : fallbackStatePath(cwd);
8
+ const filePath = path.join(baseDir, REGISTRY_FILE);
9
+ const entries = (await readJsonFile(filePath)) ?? [];
10
+ return {
11
+ entries: Array.isArray(entries) ? entries : [],
12
+ filePath,
13
+ repoRoot,
14
+ fallback: !repoRoot,
15
+ };
16
+ }
17
+ async function saveRegistry(registry) {
18
+ await ensureDir(path.dirname(registry.filePath));
19
+ await writeJsonFile(registry.filePath, registry.entries);
20
+ }
21
+ async function probeServer(url, timeoutMs = 600) {
22
+ const controller = new AbortController();
23
+ const timer = setTimeout(() => controller.abort(), timeoutMs);
24
+ try {
25
+ const res = await fetch(`${url}/api/config`, { signal: controller.signal });
26
+ return res.ok;
27
+ }
28
+ catch {
29
+ return false;
30
+ }
31
+ finally {
32
+ clearTimeout(timer);
33
+ }
34
+ }
35
+ async function loadExpectedComponents() {
36
+ const viewerVersion = VIEWER_VERSION;
37
+ let editorBuildId = null;
38
+ try {
39
+ const embeddedDir = defaultEmbeddedDir();
40
+ const indexPath = path.join(embeddedDir, "index.html");
41
+ editorBuildId = await computeBuildId(embeddedDir, indexPath);
42
+ }
43
+ catch {
44
+ editorBuildId = null;
45
+ }
46
+ return { viewerVersion, editorBuildId };
47
+ }
48
+ async function fetchHealth(url) {
49
+ const res = await fetch(`${url}/api/health`, { cache: "no-store" });
50
+ if (!res.ok) {
51
+ throw new Error(`Viewer health check failed: ${res.status}`);
52
+ }
53
+ const headers = res.headers;
54
+ const viewerVersion = headers.get("x-flux-viewer-version");
55
+ const editorBuildId = headers.get("x-flux-editor-build");
56
+ return { viewerVersion, editorBuildId };
57
+ }
58
+ export function validateHandshake(expected, health) {
59
+ const viewerMismatch = health.viewerVersion && health.viewerVersion !== expected.viewerVersion;
60
+ const editorMismatch = expected.editorBuildId && health.editorBuildId && health.editorBuildId !== expected.editorBuildId;
61
+ if (viewerMismatch || editorMismatch) {
62
+ const remoteViewer = health.viewerVersion ?? "unknown";
63
+ const remoteEditor = health.editorBuildId ?? "unknown";
64
+ return (`Flux component mismatch: CLI expects viewer ${expected.viewerVersion}` +
65
+ ` / editor ${expected.editorBuildId ?? "unknown"},` +
66
+ ` but server is viewer ${remoteViewer} / editor ${remoteEditor}.`);
67
+ }
68
+ return null;
69
+ }
70
+ async function assertHandshake(url) {
71
+ const expected = await loadExpectedComponents();
72
+ const health = await fetchHealth(url);
73
+ const mismatch = validateHandshake(expected, health);
74
+ if (mismatch) {
75
+ const hint = "Fix: update global launcher `npm i -g @flux-lang/flux@canary` (or switch channel with `flux self channel canary`).";
76
+ throw new Error(`${mismatch} ${hint}`);
77
+ }
78
+ }
79
+ export async function attachOrStartViewer(options) {
80
+ const docPath = path.resolve(options.docPath);
81
+ const registry = await getRegistry(options.cwd);
82
+ const now = new Date().toISOString();
83
+ // try attach
84
+ for (const entry of registry.entries) {
85
+ if (path.resolve(entry.docPath) !== docPath)
86
+ continue;
87
+ if (await probeServer(entry.url)) {
88
+ await assertHandshake(entry.url);
89
+ entry.lastSeen = now;
90
+ await saveRegistry(registry);
91
+ return {
92
+ docPath,
93
+ url: entry.url,
94
+ port: entry.port,
95
+ attached: true,
96
+ buildId: entry.buildId,
97
+ editorDist: entry.editorDist,
98
+ };
99
+ }
100
+ }
101
+ // start new server
102
+ const server = await startViewerServer(options);
103
+ const entry = {
104
+ docPath,
105
+ url: server.url,
106
+ port: server.port,
107
+ pid: process.pid,
108
+ startedAt: now,
109
+ lastSeen: now,
110
+ buildId: server.buildId ?? null,
111
+ editorDist: server.editorDist ?? null,
112
+ };
113
+ const filtered = registry.entries.filter((e) => path.resolve(e.docPath) !== docPath);
114
+ registry.entries = [entry, ...filtered].slice(0, 8);
115
+ await saveRegistry(registry);
116
+ try {
117
+ await assertHandshake(server.url);
118
+ }
119
+ catch (err) {
120
+ await server.close();
121
+ throw err;
122
+ }
123
+ const close = async () => {
124
+ await server.close();
125
+ const nextRegistry = await getRegistry(options.cwd);
126
+ nextRegistry.entries = nextRegistry.entries.filter((e) => e.url !== server.url);
127
+ await saveRegistry(nextRegistry);
128
+ };
129
+ return {
130
+ docPath,
131
+ url: server.url,
132
+ port: server.port,
133
+ attached: false,
134
+ buildId: server.buildId ?? null,
135
+ editorDist: server.editorDist ?? null,
136
+ server,
137
+ close,
138
+ };
139
+ }
140
+ export async function updateViewerTicker(url, payload) {
141
+ const res = await fetch(`${url}/api/ticker`, {
142
+ method: "POST",
143
+ headers: { "Content-Type": "application/json" },
144
+ body: JSON.stringify(payload),
145
+ });
146
+ return res.ok;
147
+ }
148
+ export async function updateViewerRuntime(url, payload) {
149
+ const res = await fetch(`${url}/api/runtime`, {
150
+ method: "POST",
151
+ headers: { "Content-Type": "application/json" },
152
+ body: JSON.stringify(payload),
153
+ });
154
+ return res.ok;
155
+ }
156
+ export async function fetchViewerStatus(url) {
157
+ const res = await fetch(`${url}/api/config`, { cache: "no-store" });
158
+ if (!res.ok)
159
+ throw new Error(`Viewer status failed: ${res.status}`);
160
+ return res.json();
161
+ }
162
+ export async function fetchViewerPatch(url) {
163
+ const res = await fetch(`${url}/api/patches`, { cache: "no-store" });
164
+ if (!res.ok)
165
+ throw new Error(`Viewer patch failed: ${res.status}`);
166
+ return res.json();
167
+ }
168
+ export async function fetchViewerRender(url) {
169
+ const res = await fetch(`${url}/api/render`, { cache: "no-store" });
170
+ if (!res.ok)
171
+ throw new Error(`Viewer render failed: ${res.status}`);
172
+ return res.json();
173
+ }
174
+ export async function requestViewerPdf(url) {
175
+ const res = await fetch(`${url}/api/pdf`);
176
+ if (!res.ok) {
177
+ throw new Error(`Viewer PDF failed: ${res.status}`);
178
+ }
179
+ const buffer = await res.arrayBuffer();
180
+ return new Uint8Array(buffer);
181
+ }
182
+ //# sourceMappingURL=manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/viewer/manager.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,34 @@
1
+ {
2
+ "name": "@flux-lang/cli-core",
3
+ "version": "0.1.0",
4
+ "description": "Core command implementations for Flux CLI",
5
+ "license": "MIT",
6
+ "type": "module",
7
+ "main": "dist/index.js",
8
+ "types": "dist/index.d.ts",
9
+ "files": [
10
+ "dist"
11
+ ],
12
+ "exports": {
13
+ ".": {
14
+ "import": "./dist/index.js",
15
+ "types": "./dist/index.d.ts"
16
+ }
17
+ },
18
+ "scripts": {
19
+ "build": "tsc -p tsconfig.json",
20
+ "dev": "tsc -p tsconfig.json --watch",
21
+ "test": "vitest"
22
+ },
23
+ "dependencies": {
24
+ "@flux-lang/core": "^0.1.6",
25
+ "@flux-lang/render-html": "^0.1.0",
26
+ "@flux-lang/typesetter": "^0.1.0",
27
+ "@flux-lang/viewer": "^0.1.0"
28
+ },
29
+ "devDependencies": {
30
+ "@types/node": "^22.0.0",
31
+ "vitest": "^2.1.0",
32
+ "typescript": "^5.6.0"
33
+ }
34
+ }