aboutsummaryrefslogtreecommitdiff
path: root/src-vue/src/App.vue
blob: b97e9ef43b4c892138be71125885c69d556f41e8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
<script lang="ts">
import PlayView from './views/PlayView.vue';
import { appWindow } from '@tauri-apps/api/window';
import { store } from './plugins/store';

export default {
  components: {
    PlayView
  },
  data() {
    return {}
  },
  mounted: () => {
    store.commit('initializeListeners');
  },
  methods: {
    minimize() {
      appWindow.minimize()
    },
    close() {
      appWindow.close()
    }
  }
}
</script>

<template>
    <div id="fc_bg__container" data-tauri-drag-region />
    <el-tabs v-model="$store.state.current_tab" class="fc_menu__tabs" type="card">
        <el-tab-pane name="Play" label="Play"><PlayView /></el-tab-pane>
        <el-tab-pane name="Changelog" label="Changelog">Changelog</el-tab-pane>
        <!-- <el-tab-pane label="Mods">Mods</el-tab-pane> -->
        <el-tab-pane name="Settings" label="Settings">Settings</el-tab-pane>
        <el-tab-pane v-if="$store.state.developer_mode" name="Dev" label="Dev">Developer tools</el-tab-pane>
    </el-tabs>
    <div id="fc_window__controls">
        <el-button color="white" icon="SemiSelect" @click="minimize" circle />
        <el-button color="white" icon="CloseBold" @click="close" circle />
    </div>
</template>

<style>
/* Borders reset */
.fc_menu__tabs .el-tabs__nav, .fc_menu__tabs .el-tabs__header {
  border: none !important;
}

/* Header item */
.fc_menu__tabs .el-tabs__item {
  color: #b4b6b9;
  text-transform: uppercase;
  border: none !important;
  font-family: 'Helvetica Neue', Helvetica, 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', '微软雅黑', Arial, sans-serif;
  font-weight: bold;
  font-size: large;
  margin: 10px 0;
}

.fc_menu__tabs .el-tabs__item:hover {
  color: #c6c9ce;
}

.fc_menu__tabs .is-active {
  color: white !important;
}

/* Header menu */
.fc_menu__tabs .el-tabs__header {
  background-image: radial-gradient(transparent 1px);
  backdrop-filter: saturate(50%) blur(4px);
  height: auto !important;
}

/* Window controls */
#fc_window__controls {
  display: flex;
  position: absolute;
  top: 0;
  right: 0;
  height: var(--el-tabs-header-height);
}

#fc_window__controls > button {
  color: white;
  font-size: 20px;
  margin: auto 5px;
  background: none;
  border: none;
}

#fc_window__controls > button:hover {
  color: #c6c9ce;
}

#fc_window__controls > button:active {
  color: #56585a;
}

#fc_window__controls > button:last-of-type {
  margin-right: 15px;
}

</style>