refactor: extra slashes prevention

This commit is contained in:
2025-03-30 10:17:30 +02:00
parent 2d2cb1dc3a
commit 3cebaf7f61

View File

@@ -119,28 +119,25 @@ export const appTitleState = atomWithStorage(
) )
export const serverAddressAndPortState = atom((get) => { export const serverAddressAndPortState = atom((get) => {
let retval = ''
if (get(servedFromReverseProxySubDirState)) { if (get(servedFromReverseProxySubDirState)) {
retval = `${get(serverAddressState)}/${get(servedFromReverseProxySubDirState)}/` return `${get(serverAddressState)}/${get(servedFromReverseProxySubDirState)}/`
.replaceAll('"', '') // TODO: atomWithStorage put extra double quotes on strings .replaceAll('"', '') // XXX: atomWithStorage uses JSON.stringify to serialize
.replaceAll('//', '/') // which puts extra double quotes.
} }
if (get(servedFromReverseProxyState)) { if (get(servedFromReverseProxyState)) {
retval = `${get(serverAddressState)}` return `${get(serverAddressState)}`
.replaceAll('"', '') .replaceAll('"', '')
} }
retval = `${get(serverAddressState)}:${get(serverPortState)}`
const sap = `${get(serverAddressState)}:${get(serverPortState)}`
.replaceAll('"', '') .replaceAll('"', '')
return retval.endsWith('/') ? retval.slice(0, -1) : retval return sap.endsWith('/') ? sap.slice(0, -1) : sap
}) })
export const serverURL = atom((get) => { export const serverURL = atom((get) =>
const _serverURL = `${window.location.protocol}//${get(serverAddressAndPortState)}` `${window.location.protocol}//${get(serverAddressAndPortState)}`
return _serverURL.endsWith('/') )
? _serverURL.slice(0, -1)
: _serverURL
})
export const rpcWebSocketEndpoint = atom((get) => { export const rpcWebSocketEndpoint = atom((get) => {
const proto = window.location.protocol === 'https:' ? 'wss:' : 'ws:' const proto = window.location.protocol === 'https:' ? 'wss:' : 'ws:'