mirror of
https://github.com/mickael-kerjean/filestash
synced 2025-12-06 08:22:24 +01:00
fix (admin): multi tabs issues
This commit is contained in:
parent
d4f5cb9ecf
commit
5e7c5094b6
2 changed files with 12 additions and 0 deletions
|
|
@ -1,4 +1,5 @@
|
|||
import { createElement, createRender } from "../../lib/skeleton/index.js";
|
||||
import rxjs, { effect } from "../../lib/rx.js";
|
||||
import { qs } from "../../lib/dom.js";
|
||||
import { CSS } from "../../helpers/loader.js";
|
||||
|
||||
|
|
@ -25,4 +26,12 @@ export default AdminHOC(async function(render) {
|
|||
|
||||
componentStorageBackend(createRender(qs($page, "[data-bind=\"backend\"]")));
|
||||
componentAuthenticationMiddleware(createRender(qs($page, "[data-bind=\"authentication_middleware\"]")));
|
||||
|
||||
// feature: request to reload page
|
||||
effect(rxjs.fromEvent(new BroadcastChannel("admin"), "message").pipe(
|
||||
rxjs.filter(({ data }) => data === "reload"),
|
||||
rxjs.mergeMap(() => rxjs.fromEvent(document, "visibilitychange")),
|
||||
rxjs.filter(() => document.visibilityState === "visible"),
|
||||
rxjs.tap(() => location.reload()),
|
||||
));
|
||||
});
|
||||
|
|
|
|||
|
|
@ -128,5 +128,8 @@
|
|||
document.querySelector("form").onsubmit = (e) => {
|
||||
e.target.querySelector("button").setAttribute("disabled", "true");
|
||||
};
|
||||
// feature: request admin refresh
|
||||
const bus = new BroadcastChannel("admin");
|
||||
bus.postMessage("reload");
|
||||
})();
|
||||
</script>
|
||||
|
|
|
|||
Loading…
Reference in a new issue