fix: production deployment issues (JS classList, Alpine syntax, and WebSocket config)

This commit is contained in:
2025-12-23 05:52:46 +07:00
parent 500fead8fa
commit 5cffa07ada
4 changed files with 37 additions and 15 deletions

22
.gitignore vendored
View File

@@ -5,27 +5,31 @@
/storage/*.key
/storage/pail
/vendor
# Environment files
.env
.env.backup
.env.production
.phpactor.json
.env.*
!.env.example
# Development & IDEs
/.idea
/.vscode
/.fleet
/.nova
/.zed
/.phpunit.cache
.phpunit.result.cache
.DS_Store
Thumbs.db
*.log
/.fleet
/.idea
/.nova
/.phpunit.cache
/.vscode
/.zed
/auth.json
Homestead.json
Homestead.yaml
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.phpunit.result.cache
# SQLite
/database/*.sqlite
@@ -41,7 +45,5 @@ mix-manifest.json
/copy-release.php
/make-release.bat
/auth_backup.php
/.idea
/.vscode
*.bak
*.tmp

View File

@@ -107,7 +107,9 @@
class="fixed inset-0 z-40 md:hidden bg-white dark:bg-gray-900 pt-24 px-6">
<div class="flex flex-col gap-6">
<a href="{{ route('home') }}" @click="$store.sidebar.setMobileOpen(false)" class="text-lg font-bold text-gray-900 dark:text-white border-b border-gray-100 dark:border-gray-800 pb-4">Home</a>
<a href="{{ route('home') }}#features" @click="$store.sidebar.setMobileOpen(false); if(Route::is('home')) window.appSmoothScroll('#features')" class="text-lg font-bold text-gray-900 dark:text-white border-b border-gray-100 dark:border-gray-800 pb-4">Features</a>
<a href="{{ route('home') }}#features"
@click="$store.sidebar.setMobileOpen(false)@if(Route::is('home')); window.appSmoothScroll('#features')@endif"
class="text-lg font-bold text-gray-900 dark:text-white border-b border-gray-100 dark:border-gray-800 pb-4">Features</a>
<div x-data="{ expanded: false }">
<button @click="expanded = !expanded" class="w-full flex justify-between items-center text-lg font-bold text-gray-900 dark:text-white border-b border-gray-100 dark:border-gray-800 pb-4">

View File

@@ -81,13 +81,22 @@
const savedTheme = localStorage.getItem('theme');
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
const theme = savedTheme || systemTheme;
// Add to html immediately (works in <head>)
if (theme === 'dark') {
document.documentElement.classList.add('dark');
document.body.classList.add('dark', 'bg-gray-900');
} else {
document.documentElement.classList.remove('dark');
document.body.classList.remove('dark', 'bg-gray-900');
}
// Add to body after it's available
document.addEventListener('DOMContentLoaded', () => {
if (theme === 'dark') {
document.body.classList.add('dark', 'bg-gray-900');
} else {
document.body.classList.remove('dark', 'bg-gray-900');
}
});
})();
</script>

View File

@@ -102,13 +102,22 @@
const savedTheme = localStorage.getItem('theme');
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
const theme = savedTheme || systemTheme;
// Add to html immediately (works in <head>)
if (theme === 'dark') {
document.documentElement.classList.add('dark');
document.body.classList.add('dark', 'bg-gray-900');
} else {
document.documentElement.classList.remove('dark');
document.body.classList.remove('dark', 'bg-gray-900');
}
// Add to body after it's available
document.addEventListener('DOMContentLoaded', () => {
if (theme === 'dark') {
document.body.classList.add('dark', 'bg-gray-900');
} else {
document.body.classList.remove('dark', 'bg-gray-900');
}
});
})();
</script>
</head>