Add seasonal effects for Pi Day, Pride, Rain, and Storm; enhance existing styles
All checks were successful
Auto Release Plugin / build-and-release (push) Successful in 45s

- Introduced new CSS and JS files for Pi Day, Pride, Rain, and Storm effects.
- Updated existing seasonal styles (e.g., Halloween, Hearts, Resurrection) to improve performance with 'contain: layout paint'.
- Enhanced animations for seasonal effects, including adjustments to keyframes and element creation logic.
- Added configuration options for new effects in the main seasonals.js file.
- Updated test-site.html to include new seasonal options in the dropdown.
This commit is contained in:
CodeDevMLH
2026-02-23 01:31:52 +01:00
parent 63ec6d5e52
commit e4b3a132b1
31 changed files with 1445 additions and 75 deletions

View File

@@ -249,6 +249,12 @@
<option value="summer">Summer (Bubbles)</option>
<option value="carnival">Carnival (Confetti)</option>
<option value="cherryblossom">Cherryblossom</option>
<option value="earthday">Earth Day</option>
<option value="eurovision">Eurovision</option>
<option value="piday">Pi-Day</option>
<option value="pride">Pride</option>
<option value="rain">Rain</option>
<option value="storm">Storm (Epilepsy Warning!)</option>
<option value="custom">⚙ Custom (Local Files)</option>
</select>
@@ -335,6 +341,12 @@
summer: { css: 'summer.css', js: 'summer.js', container: 'summer-container' },
carnival: { css: 'carnival.css', js: 'carnival.js', container: 'carnival-container' },
cherryblossom: { css: 'cherryblossom.css', js: 'cherryblossom.js', container: 'cherryblossom-container' },
earthday: { css: 'earthday.css', js: 'earthday.js', container: 'earthday-container' },
eurovision: { css: 'eurovision.css', js: 'eurovision.js', container: 'eurovision-container' },
piday: { css: 'piday.css', js: 'piday.js', container: 'piday-container' },
pride: { css: 'pride.css', js: 'pride.js', container: 'pride-container' },
rain: { css: 'rain.css', js: 'rain.js', container: 'rain-container' },
storm: { css: 'storm.css', js: 'storm.js', container: 'storm-container' },
};
const select = document.getElementById('theme-select');
@@ -362,7 +374,9 @@
'.christmas-container', '.santa-container', '.autumn-container',
'.christmas-container', '.santa-container', '.autumn-container',
'.easter-container', '.resurrection-container', '.spring-container',
'.summer-container', '.carnival-container'
'.summer-container', '.carnival-container', '.cherryblossom-container',
'.earthday-container', '.eurovision-container', '.piday-container',
'.pride-container', '.rain-container', '.storm-container'
];
knownContainers.forEach(sel => {
document.querySelectorAll(sel).forEach(el => {