1
0
mirror of https://github.com/alexandrev/xslt-lab.git synced 2026-09-13 08:43:16 +00:00
Files
alexandrev-tibco 79e7d50ffc UX: replace feedback links with inline n8n webhook form
- Simple form with type selector (idea/bug/other) + textarea
- POSTs to VITE_FEEDBACK_WEBHOOK_URL (runtime env, set in Helm/entrypoint)
- States: idle → sending → success/error
- Removes email/GitHub links — no context switch for user
- Adds VITE_FEEDBACK_WEBHOOK_URL to entrypoint.sh env

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-17 16:39:02 +02:00

37 lines
1.2 KiB
Bash
Executable File

#!/bin/sh
set -e
escape_js_string() {
# Escape backslashes, double quotes and newlines so runtime env stays valid JS
printf '%s' "$1" | sed ':a;N;$!ba;s/\\/\\\\/g;s/\n/\\n/g;s/"/\\"/g'
}
BACKEND_URL_ESC=$(escape_js_string "${VITE_BACKEND_URL}")
GO_PRO_ESC=$(escape_js_string "${VITE_GO_PRO}")
ADSENSE_CLIENT_ESC=$(escape_js_string "${VITE_ADSENSE_CLIENT}")
ADSENSE_SLOT_ESC=$(escape_js_string "${VITE_ADSENSE_SLOT}")
FIREBASE_CONFIG_ESC=$(escape_js_string "${VITE_FIREBASE_CONFIG}")
GA_ID_ESC=$(escape_js_string "${VITE_GA_ID}")
CLARITY_ID_ESC=$(escape_js_string "${VITE_CLARITY_ID}")
FEEDBACK_WEBHOOK_ESC=$(escape_js_string "${VITE_FEEDBACK_WEBHOOK_URL}")
# Write runtime environment variables for the frontend
cat <<EOF >/usr/share/nginx/html/env.js
window.env = {
VITE_BACKEND_URL: "${BACKEND_URL_ESC}",
VITE_GO_PRO: "${GO_PRO_ESC}",
VITE_ADSENSE_CLIENT: "${ADSENSE_CLIENT_ESC}",
VITE_ADSENSE_SLOT: "${ADSENSE_SLOT_ESC}",
VITE_FIREBASE_CONFIG: "${FIREBASE_CONFIG_ESC}",
VITE_GA_ID: "${GA_ID_ESC}",
VITE_CLARITY_ID: "${CLARITY_ID_ESC}",
VITE_FEEDBACK_WEBHOOK_URL: "${FEEDBACK_WEBHOOK_ESC}"
};
EOF
# Print backend URL for debugging
echo "Using this URL as backendURL: ${VITE_BACKEND_URL}"
# Execute nginx as main process
exec nginx -g 'daemon off;'