2 Commits

Author SHA1 Message Date
theis.gaedigk a88c141f28 fixed code 2026-05-11 22:41:18 +02:00
theis.gaedigk 843a5d07d9 added webserver config and dockerfile 2026-05-10 21:08:17 +02:00
3 changed files with 70 additions and 10 deletions
+19
View File
@@ -0,0 +1,19 @@
FROM node:22-alpine AS builder
WORKDIR /app
COPY package.json package-lock.json ./
RUN npm ci
COPY . .
RUN npm run build
FROM nginx:alpine AS runner
WORKDIR /usr/share/nginx/html
COPY --from=builder /app/dist .
COPY nginx.conf /etc/nginx/conf.d/default.conf
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
+26
View File
@@ -0,0 +1,26 @@
server {
listen 80;
server_name _;
root /usr/share/nginx/html;
index index.html;
location / {
try_files $uri $uri/ /index.html;
}
location = /backend {
return 301 /backend/;
}
location /backend/ {
proxy_pass http://ca-lose-backend:8004/;
}
location ~* \.(?:js|mjs|css|png|jpg|jpeg|gif|ico|svg|woff2?)$ {
expires 1y;
access_log off;
add_header Cache-Control "public, immutable";
try_files $uri =404;
}
}
+25 -10
View File
@@ -36,7 +36,7 @@ export const SuccessPage = () => {
});
return (
<div className="min-h-screen w-full flex items-center justify-center bg-gradient-to-br from-slate-800 to-slate-900 p-4">
<div className="min-h-screen w-full flex items-center justify-center bg-linear-to-br from-slate-800 to-slate-900 p-4">
<Sheet
variant="plain"
sx={{
@@ -82,7 +82,10 @@ export const SuccessPage = () => {
{/* Headline */}
<div style={fadeUp("0.2s")}>
<Typography level="h3" sx={{ fontWeight: 700, color: "#15803d", mb: 1 }}>
<Typography
level="h3"
sx={{ fontWeight: 700, color: "#15803d", mb: 1 }}
>
{t("form-submitted-successfully")}
</Typography>
</div>
@@ -110,8 +113,18 @@ export const SuccessPage = () => {
{/* Order ID chip */}
{orderId && (
<div style={fadeUp("0.4s")} className="flex flex-col items-center gap-1 mb-4">
<Typography level="body-xs" sx={{ color: "#9ca3af", textTransform: "uppercase", letterSpacing: "0.08em" }}>
<div
style={fadeUp("0.4s")}
className="flex flex-col items-center gap-1 mb-4"
>
<Typography
level="body-xs"
sx={{
color: "#9ca3af",
textTransform: "uppercase",
letterSpacing: "0.08em",
}}
>
{t("entry-id")}
</Typography>
<Chip
@@ -138,7 +151,9 @@ export const SuccessPage = () => {
borderRadius: "12px",
fontWeight: 700,
background: "linear-gradient(135deg, #2563eb, #1d4ed8)",
"&:hover": { background: "linear-gradient(135deg, #1d4ed8, #1e40af)" },
"&:hover": {
background: "linear-gradient(135deg, #1d4ed8, #1e40af)",
},
}}
>
{seconds}s &mdash; {t("return-to-homepage")}
@@ -146,11 +161,11 @@ export const SuccessPage = () => {
</div>
{/* Thank-you note */}
<div
style={fadeUp("0.5s")}
className="pt-4 border-t border-slate-100"
>
<Typography level="body-sm" sx={{ color: "#9ca3af", lineHeight: 1.6 }}>
<div style={fadeUp("0.5s")} className="pt-4 border-t border-slate-100">
<Typography
level="body-sm"
sx={{ color: "#9ca3af", lineHeight: 1.6 }}
>
{t("thank-you")}
</Typography>
</div>