FROM docker-mirror.ravanertebat.ir/ghcr/cirruslabs/flutter:3.38.10 AS base

WORKDIR /app
RUN flutter config --enable-web

FROM base AS deps
COPY pubspec.yaml pubspec.lock ./
RUN flutter pub get

FROM base AS builder
# Pull in the resolved package config from deps so `flutter pub get` is not
# re-run when only source files change.
COPY --from=deps /app/.dart_tool ./.dart_tool
COPY . .
RUN flutter build web --release --output=build/tm_pwa

FROM docker-mirror.ravanertebat.ir/hub/nginx:1.25.2-alpine3.18-slim AS runner

COPY --from=builder /app/build/tm_pwa /usr/share/nginx/html

EXPOSE 80

CMD ["nginx", "-g", "daemon off;"]
