@vosjs/cli 0.55.1 → 0.56.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/README.md +1 -1
- package/dist/{chunk-FQA7LFXG.js → chunk-XXAY42XS.js} +222 -30
- package/dist/chunk-XXAY42XS.js.map +1 -0
- package/dist/cli.js +3 -3
- package/dist/index.js +1 -1
- package/dist/{run-QREATZCN.js → run-OIZ7NQPU.js} +2 -2
- package/package.json +3 -3
- package/skills/VERSION +1 -1
- package/skills/vos-port/SKILL.md +7 -3
- package/skills/vos-port/references/remotion.md +2 -2
- package/dist/chunk-FQA7LFXG.js.map +0 -1
- /package/dist/{run-QREATZCN.js.map → run-OIZ7NQPU.js.map} +0 -0
package/dist/cli.js
CHANGED
|
@@ -730,7 +730,7 @@ async function cmdCheck(argv) {
|
|
|
730
730
|
return result.ok ? EXIT_OK : EXIT_ERROR;
|
|
731
731
|
}
|
|
732
732
|
async function delegate(argv, viaAlias = false) {
|
|
733
|
-
const { run } = await import("./run-
|
|
733
|
+
const { run } = await import("./run-OIZ7NQPU.js");
|
|
734
734
|
if (viaAlias && argv[0]) {
|
|
735
735
|
process.stderr.write(
|
|
736
736
|
`note: "vos voila ${argv[0]}" is now "vos ${argv[0]}".
|
|
@@ -770,7 +770,7 @@ async function main() {
|
|
|
770
770
|
const engine = HELP_ENGINE.split("\n").filter(
|
|
771
771
|
(l) => l.startsWith(` vos ${cmd} `)
|
|
772
772
|
);
|
|
773
|
-
const { verbHelp } = await import("./run-
|
|
773
|
+
const { verbHelp } = await import("./run-OIZ7NQPU.js");
|
|
774
774
|
const take = verbHelp(cmd);
|
|
775
775
|
process.stdout.write(
|
|
776
776
|
`${engine.join("\n")}
|
|
@@ -802,7 +802,7 @@ ${take.includes("no such verb") ? "" : take}`
|
|
|
802
802
|
main().then(async (code) => {
|
|
803
803
|
if (code === EXIT_OK) {
|
|
804
804
|
const verb = process.argv[2] ?? "";
|
|
805
|
-
const { HELP } = await import("./run-
|
|
805
|
+
const { HELP } = await import("./run-OIZ7NQPU.js");
|
|
806
806
|
const documented = [
|
|
807
807
|
...helpFlagsFor(HELP_ENGINE, verb),
|
|
808
808
|
...helpFlagsFor(HELP, verb)
|
package/dist/index.js
CHANGED
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
takeBackdrop,
|
|
7
7
|
takeBrowserArgs,
|
|
8
8
|
verbHelp
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-XXAY42XS.js";
|
|
10
10
|
import "./chunk-JX2YEL3M.js";
|
|
11
11
|
import "./chunk-6XPFWQKP.js";
|
|
12
12
|
export {
|
|
@@ -17,4 +17,4 @@ export {
|
|
|
17
17
|
takeBrowserArgs,
|
|
18
18
|
verbHelp
|
|
19
19
|
};
|
|
20
|
-
//# sourceMappingURL=run-
|
|
20
|
+
//# sourceMappingURL=run-OIZ7NQPU.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vosjs/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.56.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",
|
|
@@ -51,10 +51,10 @@
|
|
|
51
51
|
"acorn-walk": "^8.3.5",
|
|
52
52
|
"mediabunny": "^1.55.7",
|
|
53
53
|
"playwright": "^1.49.0",
|
|
54
|
-
"@vosjs/editor": "^1.4.0",
|
|
55
|
-
"@vosjs/elements": "^0.10.0",
|
|
56
54
|
"@vosjs/core": "^0.25.5",
|
|
55
|
+
"@vosjs/editor": "^1.4.0",
|
|
57
56
|
"@vosjs/shared": "^0.6.0",
|
|
57
|
+
"@vosjs/elements": "^0.10.0",
|
|
58
58
|
"@vosjs/render-core": "^0.3.11",
|
|
59
59
|
"@vosjs/studio-core": "^0.33.2",
|
|
60
60
|
"@vosjs/timeline": "^0.4.1",
|
package/skills/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.
|
|
1
|
+
0.16.0
|
package/skills/vos-port/SKILL.md
CHANGED
|
@@ -169,7 +169,11 @@ approximation.
|
|
|
169
169
|
3. **Scaffold**: `npx vos port scaffold` writes `port/program/program.mjs`
|
|
170
170
|
(every word a bound element, every colour a key, the knobs, a label and a
|
|
171
171
|
TODO per scene, each scene's words shown in its window, a painter only
|
|
172
|
-
when the inventory needs one
|
|
172
|
+
when the inventory needs one, and the PAINTER STARTER as
|
|
173
|
+
`content.refs.lib` when the piece needs a painter or springs: Remotion's
|
|
174
|
+
`spring` to the frame, `springTo` for the timeline, `interpolate`,
|
|
175
|
+
`bezier`, seeded noise; never read another engine's source for these),
|
|
176
|
+
`doc.json` with the score as a track, and
|
|
173
177
|
`port/REPORT.md` (substituted faces, gaps). Read the report first. On an
|
|
174
178
|
older CLI, scaffold from `references/intro-port.mjs` by hand.
|
|
175
179
|
4. **Translate scene by scene** with the tables, replacing each TODO. One
|
|
@@ -202,8 +206,8 @@ stated approximation:
|
|
|
202
206
|
| a colour per split unit (`charStyle` making one letter red) | segments carry x/y/opacity/scale/rotation only: a separate element, or paint it |
|
|
203
207
|
| `mixBlendMode` | no blend modes on elements: paint it |
|
|
204
208
|
| a shape's colour as a knob | an svg's colours are compiled in (static `colors`): paint the shape if its colour must change live |
|
|
205
|
-
| `spring()` | no spring
|
|
206
|
-
| `@remotion/noise`, SVG `feTurbulence` | the painter |
|
|
209
|
+
| `spring()` | no spring EASE in the dialect; the scaffold's painter starter (cli 0.56+) has `lib.springTo`, Remotion's spring on the timeline a step per frame, exact. Older: `back.out(n)`, by eye |
|
|
210
|
+
| `@remotion/noise`, SVG `feTurbulence` | the painter, on the starter's `lib.noise2D/noise3D` (the same character, not the same values) |
|
|
207
211
|
| a group transform (scale the whole scene) | no element groups: tween each element the same way |
|
|
208
212
|
|
|
209
213
|
Colours render as authored from `@vosjs/elements` 0.8.2 (older versions
|
|
@@ -16,7 +16,7 @@ rows name what has no element equivalent yet.
|
|
|
16
16
|
| `useCurrentFrame()` | nothing in a tween (the timeline is the clock); `ctx.time * fps` inside `onFrame` |
|
|
17
17
|
| `interpolate(f, [a, b], [x, y], { easing, extrapolate: 'clamp' })` | `tl.fromTo(props, { p: x }, { p: y, duration: (b - a) / fps, ease }, a / fps)` |
|
|
18
18
|
| `Easing.bezier(x1, y1, x2, y2)` | `ease: 'css-bezier(x1, y1, x2, y2)'` (exact) |
|
|
19
|
-
| `spring({ frame, fps, config })` |
|
|
19
|
+
| `spring({ frame, fps, config })` | the painter starter (cli 0.56+): `content.refs.lib.springTo(tl, props, { y: [from, to] }, at, { fps, config })` puts Remotion's own spring on the timeline, a step per frame, exact to the frame; `lib.spring({ frame, fps, config })` is the value (`durationInFrames`, `delay`, `overshootClamping` as Remotion's). On an older CLI: `back.out(n)` of a similar overshoot, by eye |
|
|
20
20
|
| `<Sequence from durationInFrames>` | `tl.addLabel(name, from / fps)` and the scene's elements tweened in and out inside that window |
|
|
21
21
|
| `<TransitionSeries>` + `fade()` | opacity tweens across the overlap window |
|
|
22
22
|
| `<AbsoluteFill>` + flex centring | `position: 'center'`; offsets in `transform: { translateX, translateY }` (design px) |
|
|
@@ -31,7 +31,7 @@ rows name what has no element equivalent yet.
|
|
|
31
31
|
| `<Audio src={staticFile('s.mp3')} />` | `doc.json` `audio: [{ key: 's.mp3', start, in, out, duration, gain, fadeIn, fadeOut }]` |
|
|
32
32
|
| `<Video>` / `<OffthreadVideo>` | a `video` element, windowed by opacity; a source in-point is not supported yet |
|
|
33
33
|
| `@remotion/google-fonts` `loadFont()` | `fonts: [{ family, weight, url }]` from `https://vos.so/api/fonts`; a face the catalog lacks is substituted and said |
|
|
34
|
-
| `@remotion/noise` `noise3D`, SVG `feTurbulence` grain | the painter, reading its seed and amounts from `data` |
|
|
34
|
+
| `@remotion/noise` `noise3D`, SVG `feTurbulence` grain | the painter, with `content.refs.lib.noise2D/noise3D(seed, …)` (cli 0.56+: seeded simplex, the character of `@remotion/noise`, not its values, so match by eye), reading its seed and amounts from `data` |
|
|
35
35
|
| `mixBlendMode` | GAP: the painter |
|
|
36
36
|
| an inline `<svg>` shape | an `svg` element (`src` is the markup); its colours are static, so a shape colour that must be a knob is painted |
|
|
37
37
|
| a solid background | `ctx.scene.background = new ctx.THREE.Color(ctx.data.ink)` in `createContent`, `.set(ctx.data.ink)` in `onFrame` |
|