#syntax=docker/dockerfile:1.19.0-labs

FROM node:26-alpine@sha256:a2dc166a387cc6ca1e62d0c8e265e49ca985d6e60abc9fe6e6c3d6ce8e63f606 AS builder

WORKDIR /build

ENV PNPM_HOME=/pnpm
ENV PATH=$PNPM_HOME:$PATH

RUN npm install --global --ignore-scripts corepack@0.35.0

COPY www/package.json www/pnpm-lock.yaml www/pnpm-workspace.yaml ./
RUN --mount=type=cache,target=/pnpm/store,sharing=locked \
    corepack enable \
 && pnpm config set store-dir /pnpm/store \
 && pnpm install --frozen-lockfile

COPY www/ ./

ARG VITE_API_BASE_URL
ARG VITE_OIDC_ISSUER
ARG VITE_OIDC_CLIENT_ID
ARG VITE_OIDC_AUTHORIZE_ENDPOINT
ARG VITE_OIDC_SCOPES
RUN pnpm build

FROM dhi.io/nginx@sha256:9c85848a89c938b4c2ce5ea515f1107774cd7aa61a5e430f3fed80790c6ceeb7

COPY --from=builder /build/dist /usr/share/nginx/html
COPY services/modules/viewer/nginx.conf /etc/nginx/conf.d/default.conf
