- TenantConfig gains themes: { dark, bright } — CSS data-theme names per mode
- tenants/loop42/theme.css: dark + bright CSS blocks (moved out of base.css)
- tenants/dev/theme.css: titan-bright CSS block (titan dark stays as :root)
- useTheme: stores 'dark'|'bright' in nyx_mode, toggles via tenant themes config
- AppToolbar: single sun/moon toggle replaces multi-button brand switcher
- AppSidebar, HomeView, router: brand name/icon from tenant.name directly, not theme
- themeSwitcher feature flag removed (replaced by universal toggle)
- Fix: local K3s auth mismatch — VITE_AUTH_DISABLED removed from .env.local;
infra/k8s/local/runtime.yaml sets AUTH_ENABLED=false to match test namespace
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
15 lines
341 B
Docker
15 lines
341 B
Docker
FROM node:22-alpine AS build
|
|
ARG TENANT=loop42
|
|
ARG AUTH_DISABLED=false
|
|
WORKDIR /app
|
|
COPY package.json package-lock.json ./
|
|
RUN npm ci
|
|
COPY . .
|
|
ENV VITE_AUTH_DISABLED=$AUTH_DISABLED
|
|
RUN npx vite build --mode $TENANT
|
|
|
|
FROM nginx:alpine
|
|
COPY --from=build /app/dist /usr/share/nginx/html
|
|
COPY nginx.conf /etc/nginx/conf.d/default.conf
|
|
EXPOSE 80
|