source: main/trunk/model-interfaces-dev/atea/macron-restoration/src/App.vue@ 35723

Last change on this file since 35723 was 35723, checked in by cstephen, 2 years ago

Add support for file macronisation

File size: 2.3 KB
Line 
1<template>
2 <div class="app-bar theme-primary">
3 <div class="app-bar-content">
4 <span class="heading1">{{ translations.get("Title") }}</span>
5
6 <a class="btn-primary theme-primary-l1" href="http://www.maramatanga.co.nz" target="_blank">
7 <span class="material-icons mdi-m">open_in_new</span>
8 <u>Ngā Pae o te Māramatanga (Replace with image)</u>
9 </a>
10 </div>
11 </div>
12
13 <div class="paper content">
14 <tab-bar :tabs="tabs" v-model="selectedTab" />
15 <hr class="divider" />
16
17 <div class="inner-content" v-if="selectedTab === 'direct'">
18 <direct-input />
19 </div>
20 <div class="inner-content" v-if="selectedTab === 'file'">
21 <file-input />
22 </div>
23 </div>
24</template>
25
26<style lang="scss">
27#transcription-list {
28 margin-bottom: 1em;
29}
30
31.app-bar {
32 display: flex;
33 flex-direction: column;
34 gap: 1em;
35
36 background-color: var(--bg-color);
37 color: var(--fg-color);
38 box-shadow: 0px 0px 4px 3px #6d6d6d;
39
40 padding: 1em;
41 margin-bottom: 1em;
42}
43
44.app-bar-content {
45 display: flex;
46 align-items: center;
47 gap: 1em;
48
49 width: 100%;
50
51 & :first-child {
52 flex-grow: 1;
53 }
54}
55
56.content {
57 padding: 0;
58 margin: 1em;
59}
60
61.inner-content {
62 padding: 1em;
63}
64
65// .transcription-list-item {
66// transition: all 0.8s ease;
67// margin-bottom: 1em;
68
69// &:last-child {
70// margin-bottom: 0;
71// }
72// }
73
74// .transcription-list-leave-to {
75// opacity: 0;
76// }
77
78// .transcription-list-leave-active {
79// position: absolute;
80// }
81</style>
82
83<script>
84import { mapState } from "vuex";
85import DirectInput from "./components/DirectInput.vue"
86import FileInput from "./components/FileInput.vue"
87import TabBar from "./components/TabBar.vue"
88
89export default {
90 name: "App",
91 components: {
92 DirectInput,
93 FileInput,
94 TabBar
95 },
96 data() {
97 return {
98 selectedTab: "direct"
99 }
100 },
101 computed: {
102 tabs() {
103 return [
104 { label: this.translations.get("DirectInput"), value: "direct" },
105 { label: this.translations.get("FileInput"), value: "file" }
106 ]
107 },
108 ...mapState({
109 translations: state => state.translations
110 })
111 }
112}
113</script>
Note: See TracBrowser for help on using the repository browser.