Fix popstate client routing events

This commit is contained in:
Andrew Kingston 2020-10-16 09:16:25 +01:00
parent e21059c74f
commit c627c1d7d7
1 changed files with 19 additions and 12 deletions

View File

@ -3,21 +3,28 @@ import appStore from "../state/store"
import { parseAppIdFromCookie } from "./getAppId"
export const screenRouter = ({ screens, onScreenSelected, window }) => {
const makeRootedPath = url => {
const hostname = window.location && window.location.hostname
if (hostname) {
if (
const isRunningLocally = () => {
const hostname = (window.location && window.location.hostname) || ""
return (
hostname === "localhost" ||
hostname === "127.0.0.1" ||
hostname.startsWith("192.168")
) {
)
}
const makeRootedPath = url => {
if (isRunningLocally()) {
const appId = parseAppIdFromCookie(window.document.cookie)
if (url) {
if (url.startsWith(appId)) return url
return `/${appId}${url.startsWith("/") ? "" : "/"}${url}`
if (!url.startsWith("/")) {
url = `/${url}`
}
return appId
if (url.startsWith(`/${appId}`)) {
return url
}
return `/${appId}${url}`
}
return `/${appId}`
}
return url
}