@vosjs/cli 0.9.0 → 0.9.1

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.
@@ -7409,8 +7409,11 @@ async function run(argv) {
7409
7409
 
7410
7410
  export {
7411
7411
  validateActions,
7412
+ RECORDING_NAME,
7412
7413
  takePaths,
7413
7414
  loadTake,
7415
+ startTakeServer,
7416
+ waitForPageDone,
7414
7417
  renderAnimation,
7415
7418
  digestTake,
7416
7419
  parseTranscript,
@@ -7418,6 +7421,8 @@ export {
7418
7421
  platformOrigin,
7419
7422
  parseVosId,
7420
7423
  resolveCredential,
7424
+ apiJson,
7425
+ apiError,
7421
7426
  readSyncState,
7422
7427
  writeSyncState,
7423
7428
  recordTake,
@@ -7429,4 +7434,4 @@ export {
7429
7434
  convertAgentBrowser,
7430
7435
  run
7431
7436
  };
7432
- //# sourceMappingURL=chunk-6JJETC43.js.map
7437
+ //# sourceMappingURL=chunk-74MSNLT2.js.map
package/dist/cli.js CHANGED
@@ -484,7 +484,7 @@ async function cmdCheck(argv) {
484
484
  return result.ok ? EXIT_OK : EXIT_ERROR;
485
485
  }
486
486
  async function delegate(argv, viaAlias = false) {
487
- const { run } = await import("./run-22RIQESF.js");
487
+ const { run } = await import("./run-I2XSZAWI.js");
488
488
  if (viaAlias && argv[0]) {
489
489
  process.stderr.write(
490
490
  `note: "vos voila ${argv[0]}" is now "vos ${argv[0]}".
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { Browser } from 'playwright';
1
+ import { Browser, Page } from 'playwright';
2
2
  import { CursorTrack, RecordingMeta, ProjectDoc, CursorEvent, TranscriptSegment, Digest } from '@vosjs/studio-core';
3
3
  export { Digest } from '@vosjs/studio-core';
4
4
 
@@ -149,6 +149,7 @@ type ActionStep = ({
149
149
  /** Structural validation with actionable messages. Returns [] when valid. */
150
150
  declare function validateActions(value: unknown): string[];
151
151
 
152
+ declare const RECORDING_NAME = "recording.webm";
152
153
  interface TakePaths {
153
154
  dir: string;
154
155
  recording: string;
@@ -456,6 +457,22 @@ declare function splitCommand(command: string): string[];
456
457
  /** The walk, as steps the recorder can replay. Pure. */
457
458
  declare function convertAgentBrowser(records: AgentBrowserRecord[], opts?: ConvertOptions): ConvertResult;
458
459
 
460
+ interface TakeServer {
461
+ base: string;
462
+ close: () => void;
463
+ }
464
+ /**
465
+ * Static server over the take dir + generated pages + a POST /save endpoint
466
+ * the in-page encoder/renderer uses to hand bytes back to node. The recording
467
+ * is fetched → blob URL (seekable), but a take-dir VIDEO BACKGROUND
468
+ * (frame.backgroundMedia.key = "/bg.webm") is loaded directly by ON_FRAME and
469
+ * seeked during export — so this serves Range/206 (an HTMLVideoElement hangs
470
+ * forever seeking a naive 200-only static server).
471
+ */
472
+ declare function startTakeServer(rootDir: string, pages: Record<string, string>): Promise<TakeServer>;
473
+ /** Poll a capture/encode page for window.__done / __error / __progress. */
474
+ declare function waitForPageDone(page: Page, label: string, onProgress: (fraction: number) => void, timeoutMs: number): Promise<Record<string, unknown>>;
475
+
459
476
  /**
460
477
  * Origin resolution: --origin (or legacy --api) → VOS_ORIGIN → legacy
461
478
  * VOS_API_BASE (which historically carried a trailing /api) → https://vos.so.
@@ -476,6 +493,20 @@ declare function parseVosId(input: string): string;
476
493
  * Returns null when nothing resolves — callers decide whether auth is needed.
477
494
  */
478
495
  declare function resolveCredential(explicit?: string): string | null;
496
+ interface ApiResult {
497
+ status: number;
498
+ body: Record<string, unknown>;
499
+ }
500
+ declare function apiJson(origin: string, path: string, init?: {
501
+ method?: string;
502
+ key?: string | null;
503
+ body?: unknown;
504
+ /** Raw request body (uploads) — used verbatim, with `headers`. */
505
+ raw?: Uint8Array;
506
+ headers?: Record<string, string>;
507
+ }): Promise<ApiResult>;
508
+ /** Human-readable error line for a failed platform response. Never echoes credentials. */
509
+ declare function apiError(what: string, r: ApiResult): string;
479
510
  interface SyncState {
480
511
  vosId: string;
481
512
  /** The hosted version this directory is based on — the next push's base. */
@@ -504,4 +535,4 @@ interface VersionChange {
504
535
  summary?: string;
505
536
  }
506
537
 
507
- export { type ActionStep, type ActionsFile, type AgentBrowserRecord, BrowserUnavailableError, type ConvertOptions, type ConvertResult, type DigestOptions, type DigestResult, type LoadedConfig, type RenderAnimationOptions, type RenderAnimationResult, type RenderResult, type RenderStillOptions, type RenderTakeOptions, type RenderTakeResult, type RenderVideoOptions, type SyncState, type TakeData, type TakePaths, type VersionChange, configDuration, convertAgentBrowser, digestTake, encodeRecording, launchBrowser, loadTake, loadVosConfig, manifest, parseAgentBrowserLog, parseTranscript, parseVosId, planTake, platformOrigin, previewPages, pullMedia, readSyncState, recordTake, renderAnimation, renderStill, renderTake, renderVideo, resolveCredential, run, splitCommand, takePaths, validateActions, writeSyncState };
538
+ export { type ActionStep, type ActionsFile, type AgentBrowserRecord, BrowserUnavailableError, type ConvertOptions, type ConvertResult, type DigestOptions, type DigestResult, type LoadedConfig, RECORDING_NAME, type RenderAnimationOptions, type RenderAnimationResult, type RenderResult, type RenderStillOptions, type RenderTakeOptions, type RenderTakeResult, type RenderVideoOptions, type SyncState, type TakeData, type TakePaths, type TakeServer, type VersionChange, apiError, apiJson, configDuration, convertAgentBrowser, digestTake, encodeRecording, launchBrowser, loadTake, loadVosConfig, manifest, parseAgentBrowserLog, parseTranscript, parseVosId, planTake, platformOrigin, previewPages, pullMedia, readSyncState, recordTake, renderAnimation, renderStill, renderTake, renderVideo, resolveCredential, run, splitCommand, startTakeServer, takePaths, validateActions, waitForPageDone, writeSyncState };
package/dist/index.js CHANGED
@@ -7,6 +7,9 @@ import {
7
7
  renderVideo
8
8
  } from "./chunk-X2BKHZ56.js";
9
9
  import {
10
+ RECORDING_NAME,
11
+ apiError,
12
+ apiJson,
10
13
  convertAgentBrowser,
11
14
  digestTake,
12
15
  encodeRecording,
@@ -24,10 +27,12 @@ import {
24
27
  resolveCredential,
25
28
  run,
26
29
  splitCommand,
30
+ startTakeServer,
27
31
  takePaths,
28
32
  validateActions,
33
+ waitForPageDone,
29
34
  writeSyncState
30
- } from "./chunk-6JJETC43.js";
35
+ } from "./chunk-74MSNLT2.js";
31
36
  import {
32
37
  BrowserUnavailableError,
33
38
  launchBrowser
@@ -37,6 +42,9 @@ import {
37
42
  } from "./chunk-5BFGODBI.js";
38
43
  export {
39
44
  BrowserUnavailableError,
45
+ RECORDING_NAME,
46
+ apiError,
47
+ apiJson,
40
48
  configDuration,
41
49
  convertAgentBrowser,
42
50
  digestTake,
@@ -61,8 +69,10 @@ export {
61
69
  resolveCredential,
62
70
  run,
63
71
  splitCommand,
72
+ startTakeServer,
64
73
  takePaths,
65
74
  validateActions,
75
+ waitForPageDone,
66
76
  writeSyncState
67
77
  };
68
78
  //# sourceMappingURL=index.js.map
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  run
4
- } from "./chunk-6JJETC43.js";
4
+ } from "./chunk-74MSNLT2.js";
5
5
  import "./chunk-A2VSDK3C.js";
6
6
  export {
7
7
  run
8
8
  };
9
- //# sourceMappingURL=run-22RIQESF.js.map
9
+ //# sourceMappingURL=run-I2XSZAWI.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vosjs/cli",
3
- "version": "0.9.0",
3
+ "version": "0.9.1",
4
4
  "description": "The vos CLI: record the real product from a scripted browser flow, auto-zoom from the cursor track, cut as data in doc.json, render deterministic video and stills, deliver a release's media per destination spec, and sync with vos.so. One binary, every verb, MIT.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -50,9 +50,9 @@
50
50
  "playwright": "^1.49.0",
51
51
  "@vosjs/core": "^0.23.1",
52
52
  "@vosjs/editor": "^1.3.0",
53
- "@vosjs/elements": "^0.8.0",
54
53
  "@vosjs/render-core": "^0.1.0",
55
54
  "@vosjs/shared": "^0.1.0",
55
+ "@vosjs/elements": "^0.8.0",
56
56
  "@vosjs/studio-core": "^0.1.0",
57
57
  "@vosjs/timeline": "^0.4.0",
58
58
  "@vosjs/tween": "^0.8.1"