From 1fc9eb72be85db4c007c0421ce6fe12652a4f68f Mon Sep 17 00:00:00 2001 From: th Date: Mon, 20 Apr 2026 21:49:53 +0200 Subject: [PATCH] 0.7.0: macro clips, scripts, markers, button state transitions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Headline features across 11 slices (see individual commits for details): - Markers on the scrub ruler (name, color, drag, m shortcut, used as jump targets in scripts/actions) - Script tracks with action frames, full action authoring dialog with a reusable ActionEditor component - Button clips (definitions + placed instances), 4-cell timeline rendering, sidebar authoring, drag-to-track, per-instance label and onClick editing - Button canvas runtime: hover/pressed/disabled state machine, onClick execution via evalAction, visual state changes and state-to-state transitions with per-transition duration + easing - Action union: play/pause/rewindToLoop/jumpTo/jumpToFrame/ jumpToMarker/setButtonState/setButtonDisabled/script - Script DSL parser for the `script` action: play/pause/rewind, jump to seconds/#frame/@marker, state btn:label , enable/disable btn:label, // comments - Forward-only script frame firing tied to natural playback tick (no firing on scrub or loop wrap) - Export runtime (exportPlayer.ts + server renderer) mirrors the editor: evalAction, button rendering with canvas-space hit testing, transitions, DSL parsing. RUNTIME_VERSION bumped from 1 → 6. Known gap: buttons can be created and dragged onto tracks but their per-state visuals can't be customized in-app yet (the seed gives a four-colour rect per state). State-authoring mode is a follow-up. Co-Authored-By: Claude Opus 4.7 (1M context) --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 9c0aeab..6bc5b42 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "animatr", "private": true, - "version": "0.6.0", + "version": "0.7.0", "type": "module", "scripts": { "dev": "vite",