From bf243244ce3b0c88170484444ce340129b984dee Mon Sep 17 00:00:00 2001 From: Maximilian Hils Date: Mon, 21 Aug 2017 23:35:04 +0200 Subject: [web] make it possible to run static viewer in subdirectories --- .../ContentView/__snapshots__/ContentViewOptionsSpec.js.snap | 2 +- .../components/ContentView/__snapshots__/ContentViewSpec.js.snap | 2 +- .../ContentView/__snapshots__/DownloadContentButtonSpec.js.snap | 2 +- .../components/ContentView/__snapshots__/MetaViewsSpec.js.snap | 2 +- .../components/FlowView/__snapshots__/MessagesSpec.js.snap | 4 ++-- .../js/__tests__/components/__snapshots__/ContentViewSpec.js.snap | 2 +- web/src/js/__tests__/flow/utilsSpec.js | 6 +++--- web/src/js/backends/static.js | 2 +- web/src/js/backends/websocket.js | 2 +- web/src/js/ducks/ui/keyboard.js | 2 +- web/src/js/flow/utils.js | 2 +- web/src/js/urlState.js | 6 +++++- 12 files changed, 19 insertions(+), 15 deletions(-) (limited to 'web') diff --git a/web/src/js/__tests__/components/ContentView/__snapshots__/ContentViewOptionsSpec.js.snap b/web/src/js/__tests__/components/ContentView/__snapshots__/ContentViewOptionsSpec.js.snap index 01fab0a7..57368de2 100644 --- a/web/src/js/__tests__/components/ContentView/__snapshots__/ContentViewOptionsSpec.js.snap +++ b/web/src/js/__tests__/components/ContentView/__snapshots__/ContentViewOptionsSpec.js.snap @@ -13,7 +13,7 @@ exports[`ContentViewOptions Component should render correctly 1`] = `   `; diff --git a/web/src/js/__tests__/components/ContentView/__snapshots__/DownloadContentButtonSpec.js.snap b/web/src/js/__tests__/components/ContentView/__snapshots__/DownloadContentButtonSpec.js.snap index 4c578a0c..76f21ce1 100644 --- a/web/src/js/__tests__/components/ContentView/__snapshots__/DownloadContentButtonSpec.js.snap +++ b/web/src/js/__tests__/components/ContentView/__snapshots__/DownloadContentButtonSpec.js.snap @@ -3,7 +3,7 @@ exports[`DownloadContentButton Component should render correctly 1`] = ` { let msg = "foo", view = "bar", flow = { request: msg, id: 1} expect(utils.MessageUtils.getContentURL(flow, msg, view)).toEqual( - "/flows/1/request/content/bar.json" + "./flows/1/request/content/bar.json" ) expect(utils.MessageUtils.getContentURL(flow, msg, '')).toEqual( - "/flows/1/request/_content" + "./flows/1/request/content.data" ) // response flow = {response: msg, id: 2} expect(utils.MessageUtils.getContentURL(flow, msg, view)).toEqual( - "/flows/2/response/content/bar.json" + "./flows/2/response/content/bar.json" ) }) }) diff --git a/web/src/js/backends/static.js b/web/src/js/backends/static.js index 7e87a5ed..d2c8d3fe 100644 --- a/web/src/js/backends/static.js +++ b/web/src/js/backends/static.js @@ -16,7 +16,7 @@ export default class StaticBackend { } fetchData(resource) { - fetchApi(`/${resource}`) + fetchApi(`./${resource}`) .then(res => res.json()) .then(json => { this.receive(resource, json) diff --git a/web/src/js/backends/websocket.js b/web/src/js/backends/websocket.js index d7e13bb2..08136617 100644 --- a/web/src/js/backends/websocket.js +++ b/web/src/js/backends/websocket.js @@ -34,7 +34,7 @@ export default class WebsocketBackend { fetchData(resource) { let queue = [] this.activeFetches[resource] = queue - fetchApi(`/${resource}`) + fetchApi(`./${resource}`) .then(res => res.json()) .then(json => { // Make sure that we are not superseded yet by the server sending a RESET. diff --git a/web/src/js/ducks/ui/keyboard.js b/web/src/js/ducks/ui/keyboard.js index e3f8c33c..ed4dbba5 100644 --- a/web/src/js/ducks/ui/keyboard.js +++ b/web/src/js/ducks/ui/keyboard.js @@ -5,7 +5,7 @@ import * as modalActions from "./modal" export function onKeyDown(e) { - console.debug("onKeyDown", e) + //console.debug("onKeyDown", e) if (e.ctrlKey) { return () => { } diff --git a/web/src/js/flow/utils.js b/web/src/js/flow/utils.js index 9915a639..d38f4a86 100644 --- a/web/src/js/flow/utils.js +++ b/web/src/js/flow/utils.js @@ -49,7 +49,7 @@ export var MessageUtils = { } else if (message === flow.response) { message = "response"; } - return `/flows/${flow.id}/${message}/` + (view ? `content/${view}.json` : '_content'); + return `./flows/${flow.id}/${message}/` + (view ? `content/${view}.json` : 'content.data'); } }; diff --git a/web/src/js/urlState.js b/web/src/js/urlState.js index 7802bdb8..d9c50c03 100644 --- a/web/src/js/urlState.js +++ b/web/src/js/urlState.js @@ -72,8 +72,12 @@ export function updateUrlFromStore(store) { if (queryStr) { url += "?" + queryStr } + let pathname = window.location.pathname + if(pathname === "blank") { + pathname = "/" // this happens in tests... + } if (window.location.hash.substr(1) !== url) { - history.replaceState(undefined, "", `/#${url}`) + history.replaceState(undefined, "", `${pathname}#${url}`) } } -- cgit v1.2.3