2e2c5c09ce29e0deb243e9c441bd026b9f727ebb
Two gaps blocked http://flights-ui.devwebzavod.ru/ru/flights-map: 1. The inline <script>window.__ENV__=...</script> was written with the Leaflet tile template ('/map/api/tile/{z}/{x}/{y}.jpeg') embedded directly. Rspack's html-plugin pre-processes the children string and ate the '{z}' placeholder, truncating the injected JS literal to '/map/api/tile/{z' — MAP_TILE_URL on the client ended up broken and getEnv() fell back to the default. Escape every '{'/'}' inside the stringified value as '\u007B'/'\u007D'. JS decodes the Unicode escapes back to '{}' at parse time; the html plugin's template engine sees no placeholders to eat. Object-literal braces outside the string stay raw (Unicode escapes aren't valid in operator positions in JS source). 2. API_BASE_URL was still hard-defaulting to 'http://localhost:8080/api', so every dictionary fetch on the deployed cluster died with ERR_CONNECTION_REFUSED. Thread API_BASE_URL through the same PUBLIC_ENV_KEYS/html.tags path as MAP_TILE_URL, add matching Docker ARG/ENV, and forward it in deployment/build-docker.sh + k8s manifest. The devwebzavod default for both is https://flights.test.aeroflot.ru — where the real Aeroflot ingress terminates /map/api/** and /api/**. Prod keeps overriding with same-origin URLs.
Description
No description provided
Languages
TypeScript
62.7%
HTML
23.6%
SCSS
11%
JavaScript
1.1%
C#
0.9%
Other
0.6%