diff --git a/reflex/.templates/web/utils/state.js b/reflex/.templates/web/utils/state.js index 0c6bf74c2..f84a58405 100644 --- a/reflex/.templates/web/utils/state.js +++ b/reflex/.templates/web/utils/state.js @@ -64,7 +64,7 @@ export const getToken = () => { if (token) { return token; } - if (window) { + if (typeof window !== 'undefined') { if (!window.sessionStorage.getItem(TOKEN_KEY)) { window.sessionStorage.setItem(TOKEN_KEY, generateUUID()); } @@ -81,7 +81,7 @@ export const getToken = () => { export const getBackendURL = (url_str) => { // Get backend URL object from the endpoint. const endpoint = new URL(url_str); - if (SAME_DOMAIN_HOSTNAMES.includes(endpoint.hostname)) { + if ((typeof window !== 'undefined') && SAME_DOMAIN_HOSTNAMES.includes(endpoint.hostname)) { // Use the frontend domain to access the backend const frontend_hostname = window.location.hostname; endpoint.hostname = frontend_hostname; diff --git a/reflex/components/core/banner.py b/reflex/components/core/banner.py index 54164297f..c0e13820e 100644 --- a/reflex/components/core/banner.py +++ b/reflex/components/core/banner.py @@ -9,7 +9,7 @@ from reflex.components.chakra.overlay.modal import Modal from reflex.components.chakra.typography import Text from reflex.components.component import Component from reflex.components.core.cond import cond -from reflex.constants import Hooks, Imports +from reflex.constants import Dirs, Hooks, Imports from reflex.utils import imports from reflex.vars import Var, VarData @@ -34,7 +34,7 @@ class WebsocketTargetURL(Bare): def _get_imports(self) -> imports.ImportDict: return { - "/utils/state.js": [imports.ImportVar(tag="getBackendURL")], + f"/{Dirs.STATE_PATH}": [imports.ImportVar(tag="getBackendURL")], "/env.json": [imports.ImportVar(tag="env", is_default=True)], } diff --git a/reflex/components/core/banner.pyi b/reflex/components/core/banner.pyi index 69fe11b58..00f9a5121 100644 --- a/reflex/components/core/banner.pyi +++ b/reflex/components/core/banner.pyi @@ -14,7 +14,7 @@ from reflex.components.chakra.overlay.modal import Modal from reflex.components.chakra.typography import Text from reflex.components.component import Component from reflex.components.core.cond import cond -from reflex.constants import Hooks, Imports +from reflex.constants import Dirs, Hooks, Imports from reflex.utils import imports from reflex.vars import Var, VarData