2023-07-27 14:31:52 +09:00
|
|
|
/*
|
2024-02-14 00:59:27 +09:00
|
|
|
* SPDX-FileCopyrightText: syuilo and misskey-project
|
2023-07-27 14:31:52 +09:00
|
|
|
* SPDX-License-Identifier: AGPL-3.0-only
|
|
|
|
*/
|
|
|
|
|
2022-11-24 18:27:05 +09:00
|
|
|
// SafariがBroadcastChannel未実装なのでライブラリを使う
|
2022-04-28 02:57:59 +09:00
|
|
|
import { BroadcastChannel } from 'broadcast-channel';
|
|
|
|
|
|
|
|
export const reloadChannel = new BroadcastChannel<string | null>('reload');
|
2021-02-17 21:36:56 +09:00
|
|
|
|
|
|
|
// BroadcastChannelを用いて、クライアントが一斉にreloadするようにします。
|
2021-11-05 00:09:13 +09:00
|
|
|
export function unisonReload(path?: string) {
|
|
|
|
if (path !== undefined) {
|
|
|
|
reloadChannel.postMessage(path);
|
|
|
|
location.href = path;
|
|
|
|
} else {
|
|
|
|
reloadChannel.postMessage(null);
|
|
|
|
location.reload();
|
|
|
|
}
|
2021-02-17 21:36:56 +09:00
|
|
|
}
|