summaryrefslogtreecommitdiff
path: root/packages/frontend/src/pages/reversi/game.board.vue
diff options
context:
space:
mode:
authormisskey-release-bot[bot] <157398866+misskey-release-bot[bot]@users.noreply.github.com>2026-03-05 10:56:50 +0000
committerGitHub <noreply@github.com>2026-03-05 10:56:50 +0000
commitfe3dd8edb5f30104cd0a7ed755eb254feda2922d (patch)
treeaf6cf5fa4ca75302ac2de5db742cead00bc13d21 /packages/frontend/src/pages/reversi/game.board.vue
parentMerge pull request #16998 from misskey-dev/develop (diff)
parentRelease: 2026.3.0 (diff)
downloadmisskey-fe3dd8edb5f30104cd0a7ed755eb254feda2922d.tar.gz
misskey-fe3dd8edb5f30104cd0a7ed755eb254feda2922d.tar.bz2
misskey-fe3dd8edb5f30104cd0a7ed755eb254feda2922d.zip
Merge pull request #17217 from misskey-dev/develop
Release: 2026.3.0
Diffstat (limited to 'packages/frontend/src/pages/reversi/game.board.vue')
-rw-r--r--packages/frontend/src/pages/reversi/game.board.vue23
1 files changed, 12 insertions, 11 deletions
diff --git a/packages/frontend/src/pages/reversi/game.board.vue b/packages/frontend/src/pages/reversi/game.board.vue
index aae638641a..5988604652 100644
--- a/packages/frontend/src/pages/reversi/game.board.vue
+++ b/packages/frontend/src/pages/reversi/game.board.vue
@@ -151,7 +151,7 @@ import MkButton from '@/components/MkButton.vue';
import MkFolder from '@/components/MkFolder.vue';
import MkSwitch from '@/components/MkSwitch.vue';
import { deepClone } from '@/utility/clone.js';
-import { ensureSignin } from '@/i.js';
+import { $i } from '@/i.js';
import { i18n } from '@/i18n.js';
import { misskeyApi } from '@/utility/misskey-api.js';
import { userPage } from '@/filters/user.js';
@@ -160,8 +160,6 @@ import * as os from '@/os.js';
import { confetti } from '@/utility/confetti.js';
import { genId } from '@/utility/id.js';
-const $i = ensureSignin();
-
const props = defineProps<{
game: Misskey.entities.ReversiGameDetailed;
connection?: Misskey.IChannelConnection<Misskey.Channels['reversiGame']> | null;
@@ -182,13 +180,13 @@ const engine = shallowRef<Reversi.Game>(Reversi.Serializer.restoreGame({
}));
const iAmPlayer = computed(() => {
- return game.value.user1Id === $i.id || game.value.user2Id === $i.id;
+ return game.value.user1Id === $i?.id || game.value.user2Id === $i?.id;
});
const myColor = computed(() => {
if (!iAmPlayer.value) return null;
- if (game.value.user1Id === $i.id && game.value.black === 1) return true;
- if (game.value.user2Id === $i.id && game.value.black === 2) return true;
+ if (game.value.user1Id === $i?.id && game.value.black === 1) return true;
+ if (game.value.user2Id === $i?.id && game.value.black === 2) return true;
return false;
});
@@ -219,7 +217,7 @@ const isMyTurn = computed(() => {
if (!iAmPlayer.value) return false;
const u = turnUser.value;
if (u == null) return false;
- return u.id === $i.id;
+ return u.id === $i?.id;
});
const cellsStyle = computed(() => {
@@ -308,7 +306,7 @@ if (!props.game.isEnded) {
}, TIMER_INTERVAL_SEC * 1000, { immediate: false, afterMounted: true });
}
-async function onStreamLog(log) {
+async function onStreamLog(log: Reversi.Serializer.Log & { id: string | null }) {
game.value.logs = Reversi.Serializer.serializeLogs([
...Reversi.Serializer.deserializeLogs(game.value.logs),
log,
@@ -348,10 +346,13 @@ async function onStreamLog(log) {
}
}
-function onStreamEnded(x) {
+function onStreamEnded(x: {
+ winnerId: Misskey.entities.User['id'] | null;
+ game: Misskey.entities.ReversiGameDetailed;
+}) {
game.value = deepClone(x.game);
- if (game.value.winnerId === $i.id) {
+ if (game.value.winnerId === $i?.id) {
confetti({
duration: 1000 * 3,
});
@@ -384,7 +385,7 @@ function checkEnd() {
}
}
-function restoreGame(_game) {
+function restoreGame(_game: Misskey.entities.ReversiGameDetailed) {
game.value = deepClone(_game);
engine.value = Reversi.Serializer.restoreGame({