Feature: Premiere Pro Plugin - Growing Files Tab #97

Closed
opened 2026-05-26 12:20:00 -04:00 by zgaetano · 0 comments
Owner

Premiere Pro Plugin - Growing Files Tab

Status: COMPLETED

Resolved in commits a03c85f and a03dd36 (both in main).

What was built

UI Changes (services/premiere-plugin/index.html + css/styles.css)

  • Tab navigation added between connection bar and search/filter area
  • Library tab (default active) - shows existing S3-backed asset grid
  • Growing tab - shows live captures with live count badge
  • New .tab-nav, .tab-btn, .tab-btn.active, and .badge styles in the design system (hue 32, OKLCH)
  • Separate library-container and growing-container grid wrappers
  • New status badge styles: live, ingesting, idle, promoting, processing, ready

State + Polling (services/premiere-plugin/js/main.js)

  • Added state.currentTab, state.growingAssets, state.growingPollInterval
  • switchTab(name) - toggles active tab, hides/shows containers, refetches accordingly
  • startGrowingPoll() / stopGrowingPoll() - manages the 5s polling lifecycle
  • pollGrowingAssets() - fetches /api/v1/assets?limit=100 and filters to:
    • status === 'live' (active recording)
    • status === 'ingesting' (promoting to S3)
    • status === 'processing' (post-promote work)
    • status === 'ready' && imported as live in this session (still relink-able)
  • renderGrowingAssets() - renders growing assets into the dedicated grid
  • Polling starts on connect, stops on disconnect/error
  • Search and project filter now route to the active tab (library or growing)

Live duration counter (createAssetCard)

  • For status === 'live' assets, the meta row now computes elapsed duration from Date.parse(asset.created_at) and refreshes every 5s with the poll
  • Replaces "N/A" with "LIVE" when no duration is available
  • Already wired to state.selectedAsset, now naturally enabled when a growing asset is selected
  • handleAssetClick now searches both state.assets and state.growingAssets

Verification

  • Manifest version bumped: 1.0.11.1.0
  • FEATURE_SPEC.md updated with all checkboxes marked done
  • All IDs in HTML/CSS/JS verified consistent
  • grep -c "266" in styles.css returns 0 (no leftover hue 266)

Files changed

services/premiere-plugin/CSXS/manifest.xml         |   2 +-
services/premiere-plugin/FEATURE_SPEC.md           | (updated checklist)
services/premiere-plugin/css/styles.css            | 117 +++++++++--
services/premiere-plugin/index.html                |  45 +++-
services/premiere-plugin/js/main.js                | 145 ++++++++++++-

Deployment

To deploy to BMG-PC-Edit:

cd services/premiere-plugin/build
npm install
powershell -File build-all.ps1

Then install the resulting dragonflight-premiere-panel-1.1.0-windows-setup.exe on BMG-PC-Edit. The installer handles PlayerDebugMode and removes the legacy com.wilddragon.mam.panel install.

  • Issue #98: Visual system alignment (completed in same commit)
  • Doc: services/premiere-plugin/FEATURE_SPEC.md
  • Doc: docs/GROWING_FILES_QUICKSTART.md
# Premiere Pro Plugin - Growing Files Tab ## Status: ✅ COMPLETED Resolved in commits `a03c85f` and `a03dd36` (both in main). ## What was built ### UI Changes (`services/premiere-plugin/index.html` + `css/styles.css`) - **Tab navigation** added between connection bar and search/filter area - **Library tab** (default active) - shows existing S3-backed asset grid - **Growing tab** - shows live captures with live count badge - New `.tab-nav`, `.tab-btn`, `.tab-btn.active`, and `.badge` styles in the design system (hue 32, OKLCH) - Separate `library-container` and `growing-container` grid wrappers - New status badge styles: `live`, `ingesting`, `idle`, `promoting`, `processing`, `ready` ### State + Polling (`services/premiere-plugin/js/main.js`) - Added `state.currentTab`, `state.growingAssets`, `state.growingPollInterval` - `switchTab(name)` - toggles active tab, hides/shows containers, refetches accordingly - `startGrowingPoll()` / `stopGrowingPoll()` - manages the 5s polling lifecycle - `pollGrowingAssets()` - fetches `/api/v1/assets?limit=100` and filters to: - `status === 'live'` (active recording) - `status === 'ingesting'` (promoting to S3) - `status === 'processing'` (post-promote work) - `status === 'ready' && imported as live in this session` (still relink-able) - `renderGrowingAssets()` - renders growing assets into the dedicated grid - Polling starts on connect, stops on disconnect/error - Search and project filter now route to the active tab (library or growing) ### Live duration counter (`createAssetCard`) - For `status === 'live'` assets, the meta row now computes elapsed duration from `Date.parse(asset.created_at)` and refreshes every 5s with the poll - Replaces "N/A" with "LIVE" when no duration is available ### Existing Mount Live / Relink to Hi-Res buttons - Already wired to `state.selectedAsset`, now naturally enabled when a growing asset is selected - `handleAssetClick` now searches both `state.assets` and `state.growingAssets` ## Verification - Manifest version bumped: `1.0.1` → `1.1.0` - FEATURE_SPEC.md updated with all checkboxes marked done - All IDs in HTML/CSS/JS verified consistent - `grep -c "266"` in styles.css returns 0 (no leftover hue 266) ## Files changed ``` services/premiere-plugin/CSXS/manifest.xml | 2 +- services/premiere-plugin/FEATURE_SPEC.md | (updated checklist) services/premiere-plugin/css/styles.css | 117 +++++++++-- services/premiere-plugin/index.html | 45 +++- services/premiere-plugin/js/main.js | 145 ++++++++++++- ``` ## Deployment To deploy to BMG-PC-Edit: ```powershell cd services/premiere-plugin/build npm install powershell -File build-all.ps1 ``` Then install the resulting `dragonflight-premiere-panel-1.1.0-windows-setup.exe` on BMG-PC-Edit. The installer handles `PlayerDebugMode` and removes the legacy `com.wilddragon.mam.panel` install. ## Related - Issue #98: Visual system alignment (completed in same commit) - Doc: `services/premiere-plugin/FEATURE_SPEC.md` - Doc: `docs/GROWING_FILES_QUICKSTART.md`
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: WildDragonLLC/dragonflight#97
No description provided.