feat: add Admin Control Panel, voting status check, and router security
Admin Control Panel: - Add full AdminControl.vue with 3 sections (Voting, Lottery, Global) - Add AdminLogin.vue with access code gate (20268888) - Add admin.ts store with state persistence - Add admin.types.ts with state machine types - Add router guards for /admin/director-console Voting System Fixes: - Add voting status check before accepting votes (VOTING_CLOSED error) - Fix client to display server error messages - Fix button disabled logic to prevent ambiguity in paused state - Auto-generate userId on connect to fix UNAUTHORIZED error Big Screen Enhancements: - Add LiveVotingView.vue with particle system - Add LotteryMachine.ts with 3-stage animation (Galaxy/Storm/Reveal) - Add useSocketClient.ts composable - Fix MainDisplay.vue SCSS syntax error - Add admin state sync listener in display store Server Updates: - Add admin.service.ts for state management - Add isVotingOpen() and getVotingStatus() methods - Add admin socket event handlers Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
@import './variables.scss';
|
||||
@use './variables.scss' as *;
|
||||
|
||||
* {
|
||||
margin: 0;
|
||||
@@ -25,6 +25,35 @@ html, body {
|
||||
background-clip: text;
|
||||
}
|
||||
|
||||
// Liquid Gold shimmer effect
|
||||
.liquid-gold {
|
||||
font-family: 'Noto Serif SC', 'Ma Shan Zheng', serif;
|
||||
background: linear-gradient(
|
||||
90deg,
|
||||
$color-gold-dark 0%,
|
||||
$color-gold 25%,
|
||||
$color-gold-light 50%,
|
||||
$color-gold 75%,
|
||||
$color-gold-dark 100%
|
||||
);
|
||||
background-size: 200% 100%;
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-clip: text;
|
||||
animation: shimmer 3s ease-in-out infinite;
|
||||
text-shadow: none;
|
||||
filter: drop-shadow(0 0 20px rgba($color-gold, 0.4));
|
||||
}
|
||||
|
||||
@keyframes shimmer {
|
||||
0%, 100% {
|
||||
background-position: 200% center;
|
||||
}
|
||||
50% {
|
||||
background-position: 0% center;
|
||||
}
|
||||
}
|
||||
|
||||
// Red glow text
|
||||
.glow-text {
|
||||
text-shadow: $glow-red;
|
||||
|
||||
@@ -1,17 +1,20 @@
|
||||
// Guochao Red & Gold Theme for Big Screen
|
||||
// Guochao Red & Gold Theme for Big Screen - Cinematic Edition
|
||||
|
||||
// Primary colors
|
||||
$color-primary: #c41230;
|
||||
// Primary colors (Dan-sha Red)
|
||||
$color-primary: #c21f30;
|
||||
$color-primary-light: #e8384f;
|
||||
$color-primary-dark: #9a0e26;
|
||||
|
||||
$color-gold: #d4a84b;
|
||||
$color-gold-light: #f0c96a;
|
||||
$color-gold-dark: #b8923f;
|
||||
// Gold palette (Champagne Gold)
|
||||
$color-gold: #f0c239;
|
||||
$color-gold-light: #ffd966;
|
||||
$color-gold-dark: #d4a84b;
|
||||
$color-gold-deep: #b8923f;
|
||||
|
||||
// Background
|
||||
// Cinematic background
|
||||
$color-bg-dark: #0a0a0a;
|
||||
$color-bg-gradient: linear-gradient(180deg, #1a0a0a 0%, #0a0a0a 50%, #0a0510 100%);
|
||||
$color-bg-wine: #2a0a0e;
|
||||
$color-bg-gradient: linear-gradient(180deg, #2a0a0e 0%, #1a0808 50%, #0a0505 100%);
|
||||
|
||||
// Text
|
||||
$color-text-light: #ffffff;
|
||||
|
||||
Reference in New Issue
Block a user