2018-03-07 09:48:32 +01:00
|
|
|
<template>
|
2018-09-17 22:35:06 +02:00
|
|
|
<mk-window ref="window" width="500px" height="560px" :popout-url="popout" @closed="destroyDom">
|
2018-11-08 19:44:35 +01:00
|
|
|
<span slot="header" :class="$style.header"><fa icon="gamepad"/>{{ $t('game') }}</span>
|
2018-11-06 07:37:41 +01:00
|
|
|
<x-reversi :class="$style.content" @gamed="g => game = g"/>
|
2018-03-07 09:48:32 +01:00
|
|
|
</mk-window>
|
|
|
|
</template>
|
|
|
|
|
|
|
|
<script lang="ts">
|
|
|
|
import Vue from 'vue';
|
2018-11-08 19:44:35 +01:00
|
|
|
import i18n from '../../../i18n';
|
2018-03-09 17:48:16 +01:00
|
|
|
import { url } from '../../../config';
|
2018-03-07 09:48:32 +01:00
|
|
|
|
2018-03-09 17:48:16 +01:00
|
|
|
export default Vue.extend({
|
2018-11-08 19:44:35 +01:00
|
|
|
i18n: i18n('desktop/views/components/game-window.vue'),
|
2018-11-06 07:37:41 +01:00
|
|
|
components: {
|
2018-11-11 20:09:02 +01:00
|
|
|
XReversi: () => import('../../../common/views/components/games/reversi/reversi.vue').then(m => m.default)
|
2018-11-06 07:37:41 +01:00
|
|
|
},
|
2018-03-09 17:48:16 +01:00
|
|
|
data() {
|
|
|
|
return {
|
|
|
|
game: null
|
|
|
|
};
|
|
|
|
},
|
|
|
|
computed: {
|
|
|
|
popout(): string {
|
|
|
|
return this.game
|
2018-06-17 01:10:54 +02:00
|
|
|
? `${url}/reversi/${this.game.id}`
|
|
|
|
: `${url}/reversi`;
|
2018-03-09 17:48:16 +01:00
|
|
|
}
|
|
|
|
}
|
2018-03-07 09:48:32 +01:00
|
|
|
});
|
|
|
|
</script>
|
|
|
|
|
|
|
|
<style lang="stylus" module>
|
|
|
|
.header
|
2018-11-05 17:40:11 +01:00
|
|
|
> [data-icon]
|
2018-03-07 09:48:32 +01:00
|
|
|
margin-right 4px
|
|
|
|
|
|
|
|
.content
|
|
|
|
height 100%
|
|
|
|
overflow auto
|
|
|
|
|
|
|
|
</style>
|