@cloudglue/tinycloud 0.3.7 → 0.3.9
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
CHANGED
|
@@ -17,11 +17,11 @@ The npm package is a small launcher: on first run it downloads the matching
|
|
|
17
17
|
platform distribution from Cloudglue's CDN (cached under
|
|
18
18
|
`~/.tinycloud/versions/<version>/`), verifies its checksum, and execs the real
|
|
19
19
|
binary. The package version pins the binary version, so
|
|
20
|
-
`npx @cloudglue/tinycloud@0.3.
|
|
20
|
+
`npx @cloudglue/tinycloud@0.3.9` always runs tinycloud 0.3.9. It also adds two
|
|
21
21
|
wrapper commands:
|
|
22
22
|
|
|
23
23
|
```bash
|
|
24
|
-
tinycloud install --version 0.3.
|
|
24
|
+
tinycloud install --version 0.3.9 # pre-download a version
|
|
25
25
|
tinycloud install --latest # install latest stable and pin to it
|
|
26
26
|
tinycloud update # move to latest stable, prune old versions
|
|
27
27
|
```
|
package/package.json
CHANGED
|
@@ -127,6 +127,8 @@ tinycloud publish list --json
|
|
|
127
127
|
tinycloud publish video ./demo.mp4 --visibility public --json
|
|
128
128
|
# Share a single moment — also returns data.moment_url (0.3.5+)
|
|
129
129
|
tinycloud publish video ./demo.mp4 --clip-start 18 --clip-end 33 --json
|
|
130
|
+
# Hard clip — the share page plays ONLY the moment (0.3.8+)
|
|
131
|
+
tinycloud publish video ./demo.mp4 --clip-start 18 --clip-end 33 --clip-only --json
|
|
130
132
|
```
|
|
131
133
|
|
|
132
134
|
Per-verb details and all flags: [reference/verbs.md](reference/verbs.md).
|
|
@@ -203,7 +205,8 @@ Authoring your own recipes: [reference/workflow-authoring.md](reference/workflow
|
|
|
203
205
|
`data.embed_snippet` (`<cg-video>`), which only plays on a private site of
|
|
204
206
|
the same account. When writing HTML around an embed, use the component's
|
|
205
207
|
built-ins (`autoplay`+`muted`, `loop`, `start-time`, `exclusive`,
|
|
206
|
-
`clip-start`/`clip-end` to frame one "back to moment" clip
|
|
208
|
+
`clip-start`/`clip-end` to frame one "back to moment" clip — plus
|
|
209
|
+
`clip-only`, 0.3.8+, to play nothing but that window; JS
|
|
207
210
|
`playSegment(start, end?)`) and the container components
|
|
208
211
|
(`<cg-playlist>`, `<cg-grid>`, `<cg-chapters>`) rather than hand-rolled
|
|
209
212
|
players, galleries, or segment-list JS — details in
|
|
@@ -108,12 +108,15 @@ connector?" or an envelope field needs explaining.
|
|
|
108
108
|
an HLS stream; one active share per (file, visibility). Adding
|
|
109
109
|
`--clip-start`/`--clip-end` (seconds, 0.3.5+) also returns `data.moment_url`,
|
|
110
110
|
the share page bounded to that "back to moment" window (also reachable as
|
|
111
|
-
`?s=<start>&e=<end>` on a `share_url`)
|
|
111
|
+
`?s=<start>&e=<end>` on a `share_url`); adding `--clip-only` (0.3.8+,
|
|
112
|
+
feature `publish.video.moment.hard.v1`) upgrades it to a hard clip —
|
|
113
|
+
`&clip=hard`, the page plays only the moment. Private shares
|
|
112
114
|
embed via the `data.embed_snippet` `<cg-video>` tag, which only plays on a
|
|
113
115
|
private published site of the same account. The embed has playback
|
|
114
116
|
attributes (`autoplay`+`muted`, `loop`, `start-time`, `poster`,
|
|
115
117
|
`accent-color`, `exclusive`, and `clip-start`/`clip-end` to frame a single
|
|
116
|
-
"back to moment" clip
|
|
118
|
+
"back to moment" clip — `clip-only`, 0.3.8+, plays nothing but that
|
|
119
|
+
window) and a JS API (`playSegment`, `seekTo`, media
|
|
117
120
|
events re-dispatched on the element) for custom site HTML, and plays
|
|
118
121
|
standalone or inside the container components (`<cg-playlist>`,
|
|
119
122
|
`<cg-grid>`, `<cg-chapters>`) — see reference/verbs.md.
|
|
@@ -313,7 +313,7 @@ generated site name, or your `--name` label.
|
|
|
313
313
|
|
|
314
314
|
```bash
|
|
315
315
|
tinycloud publish video <source> [--visibility public|private] # default public
|
|
316
|
-
[--name <title>] [--segment-id <id>] [--clip-start <s> --clip-end <e>] --json
|
|
316
|
+
[--name <title>] [--segment-id <id>] [--clip-start <s> --clip-end <e> [--clip-only]] --json
|
|
317
317
|
tinycloud publish video list [--in <source>] [--visibility public|private] --json
|
|
318
318
|
tinycloud publish video unpublish <share-id | source> --json # --visibility disambiguates
|
|
319
319
|
```
|
|
@@ -340,6 +340,17 @@ feature id.
|
|
|
340
340
|
private-share sign-in. Optional — omit it for a plain full-video share. The
|
|
341
341
|
same window is just `?s=<start>&e=<end>` appended to a `share_url`, so you
|
|
342
342
|
can hand-build a moment link from an existing share without re-publishing.
|
|
343
|
+
- Hard clip (0.3.8+): add `--clip-only` to a `--clip-start`/`--clip-end` pair
|
|
344
|
+
(it requires both — the command errors before anything uploads) and
|
|
345
|
+
`data.moment_url` ends in `?s=<start>&e=<end>&clip=hard`: the share page
|
|
346
|
+
plays ONLY the moment (trimmed stream; the seek bar is the clip) instead of
|
|
347
|
+
the full video with a "back to moment" overlay. The flag survives the
|
|
348
|
+
pending → re-run flow (the `next` hint carries it), and the same suffix
|
|
349
|
+
works hand-built on an existing `share_url`. Gated by the
|
|
350
|
+
`publish.video.moment.hard.v1` feature id; older share pages ignore
|
|
351
|
+
`&clip=hard` and fall back to the soft window. It shapes the viewing
|
|
352
|
+
experience, not access control — anyone with the bare `share_url` still has
|
|
353
|
+
the whole video; restrict access with `--visibility private`.
|
|
343
354
|
|
|
344
355
|
When generating custom site HTML around a `<cg-video>` embed, use the
|
|
345
356
|
component's built-ins instead of reinventing them. It defaults to a
|
|
@@ -360,7 +371,13 @@ live playhead, snaps the first play to `clip-start`, and auto-pauses at
|
|
|
360
371
|
"↺ Back to moment" pill — a manual scrub-out is never forced back. Both are
|
|
361
372
|
required and `clip-end` is ignored unless it is greater than `clip-start`; the
|
|
362
373
|
pair is `<cg-video>`-only (not read on `<cg-playlist-item>`/`<cg-grid-item>`).
|
|
363
|
-
|
|
374
|
+
Adding `clip-only` (embed v6, 0.3.8+) hardens the window: the player shows
|
|
375
|
+
only the clip, with the timeline re-based to it — no badge, strip, or pill,
|
|
376
|
+
because there is nothing to scrub back to. It is honored only alongside a
|
|
377
|
+
valid `clip-start`/`clip-end` pair, and older embed scripts ignore it,
|
|
378
|
+
degrading to the soft behavior above.
|
|
379
|
+
Rule of thumb: one moment → `clip-start`/`clip-end` on a `<cg-video>`
|
|
380
|
+
(`clip-only` if viewers should see nothing but the moment); several
|
|
364
381
|
segments a viewer navigates between → `<cg-chapters>` (below).
|
|
365
382
|
|
|
366
383
|
For multi-video or segment-navigation pages, prefer the container components
|