diff --git a/src/lib/ae_events/types/ae_badge_template_cfg.ts b/src/lib/ae_events/types/ae_badge_template_cfg.ts index ac4f4721..83a43f46 100644 --- a/src/lib/ae_events/types/ae_badge_template_cfg.ts +++ b/src/lib/ae_events/types/ae_badge_template_cfg.ts @@ -75,6 +75,7 @@ export interface BadgeTemplateCfg { center_fg?: string; center_bg?: string; center_rainbow?: boolean; + slow_pulse?: boolean; // when true: slow breathing pulse instead of fast linear cycle }; // Allow arbitrary extra keys to preserve forward-compatibility. diff --git a/src/routes/events/[event_id]/(badges)/badges/[badge_id]/ae_comp__badge_obj_view.svelte b/src/routes/events/[event_id]/(badges)/badges/[badge_id]/ae_comp__badge_obj_view.svelte index 60b878b2..a5b672da 100644 --- a/src/routes/events/[event_id]/(badges)/badges/[badge_id]/ae_comp__badge_obj_view.svelte +++ b/src/routes/events/[event_id]/(badges)/badges/[badge_id]/ae_comp__badge_obj_view.svelte @@ -342,6 +342,7 @@ const PH_RAINBOW_BG = 'rgba(255,34,0,0.25)'; let punch_holes_left_rainbow = $derived(!!template_cfg?.punch_holes?.left_rainbow); let punch_holes_right_rainbow = $derived(!!template_cfg?.punch_holes?.right_rainbow); let punch_holes_center_rainbow = $derived(!!template_cfg?.punch_holes?.center_rainbow); +let punch_holes_slow_pulse = $derived(!!template_cfg?.punch_holes?.slow_pulse); let punch_holes_colors = $derived.by(() => { const ph = template_cfg?.punch_holes; const shared_fg = ph?.fg || PH_DEFAULT_FG; @@ -707,7 +708,9 @@ const code_to_icon: { starts at a different phase (0°, 120°, 240°) and they cycle in unison at the same speed — tri-phase RGB rather than drifting randomly. --> {#if punch_holes_left && punch_holes_left_rainbow} - {/if} {#if punch_holes_right && punch_holes_right_rainbow} - {/if} {#if punch_holes_center && punch_holes_center_rainbow} -