diff --git a/.gitea/workflows/build-ext.yml b/.gitea/workflows/build-ext.yml index 40abf791..fbc3c49b 100644 --- a/.gitea/workflows/build-ext.yml +++ b/.gitea/workflows/build-ext.yml @@ -58,7 +58,11 @@ jobs: run: | set -euo pipefail if [ -n "${SSH_AUTH_SOCK:-}" ]; then - docker build --target ext --ssh default -t git.4nkweb.com/4nk/lecoffre-front:${{ steps.tag.outputs.TAG }} -f Dockerfile . + buildArgs=() + if [ -n "${{ secrets.NEXT_PUBLIC_4NK_URL || '' }}" ]; then + buildArgs+=(--build-arg NEXT_PUBLIC_4NK_URL="${{ secrets.NEXT_PUBLIC_4NK_URL }}") + fi + docker build --target ext --ssh default "${buildArgs[@]}" -t git.4nkweb.com/4nk/lecoffre-front:${{ steps.tag.outputs.TAG }} -f Dockerfile . else echo "SSH_AUTH_SOCK non défini: l'agent SSH n'est pas disponible. Assurez-vous de définir secrets.SSH_PRIVATE_KEY." exit 1 diff --git a/CHANGELOG.md b/CHANGELOG.md index e05c67d2..fe89e93a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,11 @@ - LoginCallback (`index.tsx`) ajusté: suppression de la redirection spéciale `local.4nkweb.com` au profit d'un flux standard basé sur variables d'environnement. ## v0.1.3 +## v0.1.4 + +- Sous-chemin Next activé: `basePath: '/lecoffre'`. +- Normalisation SSR du `targetOrigin` de l’iframe sur l’origine de `NEXT_PUBLIC_4NK_URL`. +- CI: build-arg optionnel `NEXT_PUBLIC_4NK_URL` depuis les secrets. - Optimisations build Docker: - `.dockerignore` pour réduire le contexte. diff --git a/next.config.js b/next.config.js index 0a03ba71..23299066 100644 --- a/next.config.js +++ b/next.config.js @@ -3,6 +3,7 @@ const nextConfig = { reactStrictMode: false, output: 'standalone', + basePath: '/lecoffre', typescript: { ignoreBuildErrors: true, }, diff --git a/package.json b/package.json index 340051d8..1c92da65 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "lecoffre-front", - "version": "0.1.3", + "version": "0.1.4", "private": true, "scripts": { "dev": "next dev", diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index dc73436a..3e76443e 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -85,7 +85,14 @@ const MyApp = (({ const [isConnected, setIsConnected] = useState(false); const [isReady, setIsReady] = useState(false); - IframeReference.setTargetOrigin(_4nkUrl); + const targetOrigin = (() => { + try { + return new URL(_4nkUrl).origin; + } catch { + return _4nkUrl; + } + })(); + IframeReference.setTargetOrigin(targetOrigin); useEffect(() => { const isAuthenticated = User.getInstance().isAuthenticated();