Boot translations, transparently handling both delivery paths.
On a server-rendered page the <script id="lwt-i18n"> blob is present, so we
use it and return immediately — identical to the previous behavior. On a
shell-free / bundled client (no blob) we hydrate synchronously from the
cached bundle for an instant first paint, then refresh from the API in the
foreground so the rendered strings are current before the UI starts. When the
device is offline the API refresh fails silently and the cached strings
stand; a never-launched-online client simply falls back to raw keys until it
reaches the network once.
Boot translations, transparently handling both delivery paths.
On a server-rendered page the
<script id="lwt-i18n">blob is present, so we use it and return immediately — identical to the previous behavior. On a shell-free / bundled client (no blob) we hydrate synchronously from the cached bundle for an instant first paint, then refresh from the API in the foreground so the rendered strings are current before the UI starts. When the device is offline the API refresh fails silently and the cached strings stand; a never-launched-online client simply falls back to raw keys until it reaches the network once.