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",
|