Skip to content

Render pending placeholders for prompt-only media assets#126

Merged
dazzatronus merged 8 commits into
mainfrom
derk/eng-671-prompt-only-pending-players
Jul 13, 2026
Merged

Render pending placeholders for prompt-only media assets#126
dazzatronus merged 8 commits into
mainfrom
derk/eng-671-prompt-only-pending-players

Conversation

@dazzatronus

@dazzatronus dazzatronus commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Schemas 1.13 lets media assets (image/video/audio) carry a prompt instead of
a src, with generation filling src in place. Studio rendered these as nothing.

  • Prompt-only assets get the AI pending treatment: canvas overlay with numbered
    prompt label, AI icon + label on the timeline. Per-asset, so plain src media is
    unaffected. A pending video with a seed previews the seed image.
  • Legacy generative types and unified assets of one kind share a numbering sequence.
  • When generation fills src, the reconciler recreates the clip as a normal media
    player. Realised assets keep their AI timeline label.
  • ClipUnresolved fires for any pending asset and now also emits assetType
    "image" | "video" | "audio" — host apps switching on that field take note.

No new rendering code: two pure guards rekey the legacy placeholder system, the
factory routes on pending state, the reconciler recreates on pending flips.

Verify: npm run dev loads a template with every state. 14 new unit tests; suite,
typecheck, lint green.

Includes the schemas 1.13 bump and no-src load guards from #123 (superseded). Bundles @shotstack/schemas 1.13.1 (supersedes the dependabot bump) and @shotstack/shotstack-canvas 2.10.2.
Follow-ups: prompt-editing toolbar, Generate action, export gating for unrealised assets.

@dazzatronus
dazzatronus force-pushed the derk/eng-671-prompt-only-pending-players branch from 0867768 to d1c02a7 Compare June 12, 2026 06:48
@dazzatronus
dazzatronus changed the base branch from derk/update-schemas-and-canvas to main June 12, 2026 06:48
…nly-pending-players

# Conflicts:
#	package.json
#	src/components/canvas/players/audio-player.ts
#	src/components/canvas/players/image-player.ts
#	src/components/canvas/players/video-player.ts
@dazzatronus
dazzatronus merged commit 8a079d1 into main Jul 13, 2026
1 check passed
@dazzatronus
dazzatronus deleted the derk/eng-671-prompt-only-pending-players branch July 13, 2026 04:31
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 2.14.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant