dragonflight/services/premiere-plugin-uxp/manifest.json
Claude 540d333758 feat(uxp): v2.2.1 — Export Timeline is now one-click push + render → asset
Contract: clicking Export Timeline does the whole pipeline with no
prompts. Behavior matches what the user actually expected from the
button label:

  1. readActiveSequence — pulls the Premiere timeline + clip map
  2. resolveExportProject — picks the target MAM project. First run
     uses the first project on the server and caches its id in
     localStorage (df.uxp.exportProjectId). Subsequent runs reuse
     the cache. If the cached project was deleted server-side we
     transparently re-pick.
  3. Timeline.startConform with sensible defaults:
       codec=prores_hq, quality=high, resolution=source, audio=broadcast
     This both pushes the sequence + clip rows AND queues a real
     conform job (the prior Push-to-MAM button never queued a job,
     which is why "no jobs spin up" happened earlier).
  4. pollConform every 2s, mapping job progress 20→95% on the
     panel progress bar.
  5. On completion, toast + Library.refresh() so the rendered hi-res
     asset shows up in the grid without needing to click around.

The Conform slide panel stays wired for Advanced → Export & Conform
so power users can still override the codec/preset for one-off jobs.
The Push-only slide panel that this replaces is now orphaned chrome
and will be removed in a later cleanup.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-28 13:28:51 -04:00

31 lines
772 B
JSON

{
"manifestVersion": 5,
"id": "net.wilddragon.dragonflight.uxp",
"name": "Dragonflight MAM",
"version": "2.2.1",
"main": "index.html",
"host": {
"app": "premierepro",
"minVersion": "26.0.0"
},
"entrypoints": [
{
"type": "panel",
"id": "main",
"label": { "default": "Dragonflight MAM" },
"minimumSize": { "width": 320, "height": 400 },
"preferredDockedSize": { "width": 380, "height": 660 },
"preferredFloatingSize":{ "width": 420, "height": 780 }
}
],
"requiredPermissions": {
"localFileSystem": "fullAccess",
"network": {
"domains": [
"https://dragonflight.live",
"https://broadcastmgmt.cloud"
]
},
"allowCodeGenerationFromStrings": false
}
}