@vosjs/cli 0.9.1 → 0.10.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.
- package/dist/{chunk-74MSNLT2.js → chunk-CJPWZVHQ.js} +48 -8
- package/dist/chunk-CJPWZVHQ.js.map +1 -0
- package/dist/cli.js +1 -1
- package/dist/index.d.ts +10 -1
- package/dist/index.js +1 -1
- package/dist/{run-I2XSZAWI.js → run-4LSBJO7N.js} +2 -2
- package/package.json +4 -4
- package/schema/actions.schema.json +5 -0
- package/schema/doc.schema.json +52 -0
- package/dist/chunk-74MSNLT2.js.map +0 -1
- /package/dist/{run-I2XSZAWI.js.map → run-4LSBJO7N.js.map} +0 -0
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-
|
|
487
|
+
const { run } = await import("./run-4LSBJO7N.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
|
@@ -112,11 +112,20 @@ type ActionStep = ({
|
|
|
112
112
|
} | {
|
|
113
113
|
do: 'click';
|
|
114
114
|
selector: string;
|
|
115
|
-
}
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Type into `selector`. The recorder clicks the field first, which is what
|
|
118
|
+
* opens the typing zoom on it; `focus: false` types into the field as it is
|
|
119
|
+
* already focused, for a keystroke that follows earlier typing (a submitting
|
|
120
|
+
* Enter) rather than starting it — a second click there rings a click effect
|
|
121
|
+
* on empty space beside the text.
|
|
122
|
+
*/
|
|
123
|
+
| {
|
|
116
124
|
do: 'type';
|
|
117
125
|
selector: string;
|
|
118
126
|
text: string;
|
|
119
127
|
delayMs?: number;
|
|
128
|
+
focus?: boolean;
|
|
120
129
|
} | {
|
|
121
130
|
do: 'scroll';
|
|
122
131
|
dy: number;
|
package/dist/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vosjs/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.10.0",
|
|
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",
|
|
@@ -48,12 +48,12 @@
|
|
|
48
48
|
"dependencies": {
|
|
49
49
|
"mediabunny": "^1.27.3",
|
|
50
50
|
"playwright": "^1.49.0",
|
|
51
|
-
"@vosjs/
|
|
51
|
+
"@vosjs/elements": "^0.8.0",
|
|
52
52
|
"@vosjs/editor": "^1.3.0",
|
|
53
53
|
"@vosjs/render-core": "^0.1.0",
|
|
54
54
|
"@vosjs/shared": "^0.1.0",
|
|
55
|
-
"@vosjs/
|
|
56
|
-
"@vosjs/studio-core": "^0.
|
|
55
|
+
"@vosjs/core": "^0.23.1",
|
|
56
|
+
"@vosjs/studio-core": "^0.2.0",
|
|
57
57
|
"@vosjs/timeline": "^0.4.0",
|
|
58
58
|
"@vosjs/tween": "^0.8.1"
|
|
59
59
|
},
|
|
@@ -115,6 +115,11 @@
|
|
|
115
115
|
"minimum": 0,
|
|
116
116
|
"default": 40
|
|
117
117
|
},
|
|
118
|
+
"focus": {
|
|
119
|
+
"type": "boolean",
|
|
120
|
+
"default": true,
|
|
121
|
+
"description": "The recorder clicks the field before typing, and that click is what opens the typing zoom on it. false types into the field as it is already focused: for a keystroke that finishes earlier typing (a submitting Enter) rather than starting it, where a second click rings a click effect on empty space beside the text."
|
|
122
|
+
},
|
|
118
123
|
"id": {
|
|
119
124
|
"type": "string",
|
|
120
125
|
"minLength": 1,
|
package/schema/doc.schema.json
CHANGED
|
@@ -222,6 +222,58 @@
|
|
|
222
222
|
"enum": ["off", "subtle", "medium", "strong"],
|
|
223
223
|
"description": "Dynamic-tilt wand intensity: derives source:'auto' tilt spans FROM the zoom spans, leaning toward each zoom's focus (max 5/9/14\u00b0 per axis). 'off'/absent = no auto tilt; manual spans work either way."
|
|
224
224
|
},
|
|
225
|
+
"rejected": {
|
|
226
|
+
"type": "array",
|
|
227
|
+
"description": "Deleted planner proposals, kept so no re-plan proposes them again (\"not this one\"). Each entry is the lane and the SOURCE extent of an auto span you deleted; a fresh proposal on that lane overlapping the extent by half of the shorter span is dropped by vos plan, by plan --reuse (which re-times these like manual spans) and by the studio's re-plans. Manual spans never need this: a re-plan keeps them by contract. The renderer never reads it.",
|
|
228
|
+
"items": {
|
|
229
|
+
"type": "object",
|
|
230
|
+
"required": ["id", "lane", "in", "out"],
|
|
231
|
+
"properties": {
|
|
232
|
+
"id": {
|
|
233
|
+
"type": "string",
|
|
234
|
+
"description": "stable identity (`r{n}`)"
|
|
235
|
+
},
|
|
236
|
+
"lane": {
|
|
237
|
+
"enum": ["zoom", "tilt", "speed"],
|
|
238
|
+
"description": "which planner's proposals this rejects"
|
|
239
|
+
},
|
|
240
|
+
"in": {
|
|
241
|
+
"type": "number",
|
|
242
|
+
"minimum": 0,
|
|
243
|
+
"description": "SOURCE seconds, the deleted span's start"
|
|
244
|
+
},
|
|
245
|
+
"out": {
|
|
246
|
+
"type": "number",
|
|
247
|
+
"description": "SOURCE seconds, > in"
|
|
248
|
+
},
|
|
249
|
+
"anchor": {
|
|
250
|
+
"type": "object",
|
|
251
|
+
"description": "the deleted span's step anchor, when it had one, so a re-record re-times the rejection the same way",
|
|
252
|
+
"required": ["step"],
|
|
253
|
+
"additionalProperties": false,
|
|
254
|
+
"properties": {
|
|
255
|
+
"step": {
|
|
256
|
+
"type": ["string", "integer"],
|
|
257
|
+
"description": "the actions.json step: its `id` when it has one, else its record-time index (meta.steps)"
|
|
258
|
+
},
|
|
259
|
+
"at": {
|
|
260
|
+
"enum": ["start", "end"],
|
|
261
|
+
"description": "which edge of the step the span's `in` is measured from (default start)"
|
|
262
|
+
},
|
|
263
|
+
"offset": {
|
|
264
|
+
"type": "number",
|
|
265
|
+
"description": "seconds from that edge to `in` (negative = before it)"
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
},
|
|
269
|
+
"note": {
|
|
270
|
+
"type": "string",
|
|
271
|
+
"description": "why, in the deleter's words"
|
|
272
|
+
}
|
|
273
|
+
},
|
|
274
|
+
"additionalProperties": false
|
|
275
|
+
}
|
|
276
|
+
},
|
|
225
277
|
"audio": {
|
|
226
278
|
"$ref": "#/definitions/audio"
|
|
227
279
|
},
|