feat: expand color strip sources with new effects, gradient improvements, and daylight/candlelight enhancements
Some checks failed
Lint & Test / test (push) Failing after 29s
Some checks failed
Lint & Test / test (push) Failing after 29s
Effects: add 7 new procedural effects (rain, comet, bouncing ball, fireworks, sparkle rain, lava lamp, wave interference) and custom palette support via user-defined [[pos,R,G,B],...] stops. Gradient: add easing functions (linear, ease_in_out, step, cubic) for stop interpolation, plus noise_perturb and hue_rotate animation types. Daylight: add longitude field and NOAA solar equations for accurate sunrise/sunset based on latitude, longitude, and day of year. Candlelight: add wind simulation (correlated gusts), candle type presets (taper/votive/bonfire), and wax drip effect with localized brightness dips. Also fixes editor preview to include all new fields for inline LED test.
This commit is contained in:
@@ -66,6 +66,14 @@ This applies to: file paths in `StorageConfig`, JSON root keys (e.g. `picture_ta
|
||||
|
||||
**Incident context:** A past rename of `picture_targets.json` → `output_targets.json` was done without migration. The app created a new empty `output_targets.json` while the user's 7 targets sat unread in the old file. Data was silently lost.
|
||||
|
||||
## UI Component Rules (CRITICAL)
|
||||
|
||||
**NEVER use plain HTML `<select>` elements.** The project uses custom selector components:
|
||||
- **IconSelect** (icon grid) — for predefined items (effect types, palettes, easing modes, animation types)
|
||||
- **EntitySelect** (entity picker) — for entity references (sources, templates, devices)
|
||||
|
||||
Plain HTML selects break the visual consistency of the UI.
|
||||
|
||||
## Pre-Commit Checks (MANDATORY)
|
||||
|
||||
Before every commit, run the relevant linters and fix any issues:
|
||||
|
||||
Reference in New Issue
Block a user