ba981e7332
TaxBaik CI/CD / build-and-deploy (push) Successful in 2m17s
Problem: Mixed WebAssembly (App) and Server (Login) render modes caused interaction breakage after login. Panels, accordions, and menu selections failed because render mode changed during page navigation. Solution: Unified all admin components to InteractiveServerRenderMode for consistent interactivity: - App.razor: Routes and HeadOutlet use InteractiveServerRenderMode - Login.razor: Already uses InteractiveServerRenderMode - Program.cs: Removed WebAssembly component registration Updated validation script to require Server mode instead of WebAssembly for admin shell. This ensures: ✅ Consistent render mode throughout admin UI ✅ Reliable component interactivity (panels, accordions, menus) ✅ Stable page navigation and state management Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
30 lines
894 B
Bash
30 lines
894 B
Bash
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
app_file="TaxBaik.Web/Components/Admin/App.razor"
|
|
login_file="TaxBaik.Web/Components/Admin/Pages/Login.razor"
|
|
|
|
for file in "$app_file" "$login_file"; do
|
|
if [ ! -f "$file" ]; then
|
|
echo "Missing admin render file: $file" >&2
|
|
exit 1
|
|
fi
|
|
done
|
|
|
|
if ! grep -nE "InteractiveServerRenderMode\\(prerender: true\\)" "$app_file" >/dev/null; then
|
|
echo "Admin shell must use InteractiveServerRenderMode(prerender: true)." >&2
|
|
exit 1
|
|
fi
|
|
|
|
if grep -nE "InteractiveWebAssemblyRenderMode|prerender: true" "$app_file" | grep -v "InteractiveServerRenderMode(prerender: true)" >/dev/null; then
|
|
echo "Admin shell render mode violation detected." >&2
|
|
exit 1
|
|
fi
|
|
|
|
if ! grep -nE "InteractiveServerRenderMode\\(prerender: true\\)" "$login_file" >/dev/null; then
|
|
echo "Login page must allow server prerender." >&2
|
|
exit 1
|
|
fi
|
|
|
|
echo "Admin render harness passed."
|