Files
taxbaik/scripts/validate_admin_render.sh
T
kjh2064 ba981e7332
TaxBaik CI/CD / build-and-deploy (push) Successful in 2m17s
fix: resolve admin interactivity by unifying to Server render mode
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>
2026-07-02 23:58:45 +09:00

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."