Releases: rononline/soccerlive-card
Release list
v3.21.186
Custom background: validate directions, guard empty opacity, escape URL, contrast
- gradient-angle validator uses an explicit direction set (rejects "to top bottom")
- empty watermark_opacity keeps the default instead of becoming 0; watermark URL
escaped with JSON.stringify so quotes can't break the CSS value - low-contrast warning checks both gradient endpoints, not just the flat bg
- expanded-editor visual snapshot for the gradient/watermark fields; direction
rejection test
v3.21.185
Custom background: editor fields for angle/size + value validation
- add gradient angle (0-360) and watermark size (40/60/80/contain) editor fields
and a help hint for the watermark URL - validate/clamp: gradient angle (normalizeGradientAngle), watermark opacity 0-1,
size to safe values; remove empty fields from config instead of storing them - the watermark already reaches every shell card (Countdown/Match Center/Team
Competitions render the background via renderCardHero); no per-card change
v3.21.184
Custom palette: background gradient + crest watermark (club-branded look)
Add gradient_from/gradient_to (+ angle) and a background_image watermark
(opacity/size) to the custom palette, applied via the shared .hero-bg layer so
every card can have a red-gradient + faint crest look. Editor fields under the
advanced custom section; pure buildGradient helper + test; visual snapshot.
v3.21.183
Minimal robustness: standings fallback, id/whole-word team match, variant warning
- empty standings no longer blocks the standings_groups fallback
- team matching prefers ids and uses normalised whole-word comparison for names
(fixes "Inter" matching "Internacional"); form uses the sensor team_id - editor warns on a variant unsupported by the chosen sensor
- pure helpers + tests; Playwright snapshot for next with a live match
v3.21.182
Minimal card: live-priority + form fixes, pure model + tests, editor + i18n + visuals
- next variant prioritises a live match over the next upcoming (shows live score)
- form variant returns empty when there's no tracked team (empty name matched all)
- logic extracted to pure shared-minimal-model.js with unit tests
- editor limits variants to what the sensor supports; hides max_matches for next
- Minimal labels translated in all 7 languages
- Playwright snapshots for the 4 variants at 320px; visual workflow also triggers
on package.json / package-lock.json / webpack.config.js
v3.21.181
Consolidate minimalist views into one Minimal card with variants
Rename the Schedule card to Minimal and add a variant selector: fixtures (the
list, default), next (single-line next match + relative/countdown/live),
standings (plain text table) and form (recent W/D/L). One entry in the card
picker instead of several. card_type: schedule keeps working as an alias to
minimal. EN/NL labels; preview panels for each variant.
v3.21.180
Schedule card: text_size option to scale font and row height
Presets Extra small / Small / Normal / Large (or a raw px number) scale both the
font size and the row padding, so the list can be made more compact or larger.
EN/NL labels.
v3.21.179
Add minimalist Schedule card
A plain zebra-striped fixtures list: date, time, home – away, competition — no
logos or colours. Options: show (upcoming/previous/all), max_matches, my_team
(bold), show_competition, hide_header. Shows "unknown" for TBD kick-off times
(integration time_tbd) and the score for finished matches. EN/NL labels; added
to the preview and card registry.
v3.21.178
Visual tests: build-first, tighter tolerance, more snapshots, CI workflow
- test:visual now builds first (added test:visual:update); diff tolerance 2%->1%
- new snapshots: light+black-white (guards --cl-accent-visible), missing
abbrev/colour (name fallback), long name at 320px (ellipsis), multi-entity
editor "(via ...)", and HA appearance with an explicit HA theme - add GitHub Actions Visual workflow (Playwright Linux container) + README
bootstrap for Linux baselines
v3.21.177
Add Playwright visual-regression layer for skins
Parameterised harness (test/visual/harness.html) renders a card or its editor
with a mock hass; skins.spec.mjs screenshots dark/light/HA, a legacy skin, the
inline team names + tracked underline (light + white-gold), and the editor
(swatches desktop/mobile, custom contrast warning, shared inheritance). Baselines
committed (darwin); test:visual script; kept out of npm test (browser-free).
Confirmed light appearance renders correctly (avg brightness 75 vs dark 33).