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

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

Add footer information

File size: 3.3 KB
Line 
1<template>
2<div class="root">
3 <div class="app-bar theme-primary">
4 <div class="app-bar-content">
5 <span class="heading1">{{ translations.get("Title") }}</span>
6 </div>
7 </div>
8
9 <div class="paper content">
10 <tab-bar :tabs="tabs" v-model="selectedTab" />
11 <hr class="divider" />
12
13 <div class="inner-content" v-if="selectedTab === 'direct'">
14 <direct-input />
15 </div>
16 <div class="inner-content" v-if="selectedTab === 'file'">
17 <file-input />
18 </div>
19 </div>
20
21 <div class="footer">
22 <img src="img/logo_waikato_uni.jpg" alt="The University of Waikato Logo" />
23
24 <div>
25 This service was funded by <a href="http://www.maramatanga.co.nz" target="_blank">Ngā Pae O Te Māramatanga</a> as
26 part of the research related to the digitalization of the Pei Jones collection,
27 and was developed at the <a href="https://www.waikato.ac.nz" target="_blank">University of Waikato</a>.
28 </div>
29 <img src="img/logo_nga_pae_o_te_maramatanga.jpg" alt="The Ngā Pae o te Māramatanga Logo" />
30 <div>
31 This website collects simple usage logs which will be used for development purposes only.
32 No details which could be used to identify individuals will be collected and the data will be kept secure at the University of Waikato.
33 If you do not wish for your activity to be included, click <a href="mailto:[email protected]">here</a> to notify Dr. Te Taka Keegan.
34 Copyright &copy; 2014 University of Waikato
35 </div>
36 </div>
37</div>
38</template>
39
40<style lang="scss">
41html, body, #app {
42 height: 100%;
43}
44
45.root {
46 display: flex;
47 flex-direction: column;
48 height: 100%;
49}
50
51.app-bar {
52 display: flex;
53 flex-direction: column;
54 gap: 1em;
55
56 background-color: var(--bg-color);
57 color: var(--fg-color);
58 box-shadow: 0px 0px 4px 3px #6d6d6d;
59
60 padding: 1em;
61 margin-bottom: 1em;
62}
63
64.app-bar-content {
65 display: flex;
66 align-items: center;
67 gap: 1em;
68
69 width: 100%;
70
71 & :first-child {
72 flex-grow: 1;
73 }
74}
75
76.content {
77 padding: 0;
78 margin: 1em;
79 flex-grow: 1;
80}
81
82.inner-content {
83 padding: 1em;
84}
85
86.footer {
87 display: grid;
88 grid-template-columns: auto 1fr;
89 gap: 1em;
90
91 box-shadow: 0px 0px 3px 2px #8a8a8a;
92 padding: 1em;
93 background-color: var(--paper-color);
94
95 img {
96 grid-column: 1;
97 height: 48px;
98 }
99
100 div {
101 grid-column: 2;
102 }
103}
104
105.funding {
106 display: flex;
107 gap: 1em;
108 align-items: center;
109}
110</style>
111
112<script>
113import { mapState } from "vuex";
114import DirectInput from "./components/DirectInput.vue"
115import FileInput from "./components/FileInput.vue"
116import TabBar from "./components/TabBar.vue"
117
118export default {
119 name: "App",
120 components: {
121 DirectInput,
122 FileInput,
123 TabBar
124 },
125 data() {
126 return {
127 selectedTab: "direct"
128 }
129 },
130 computed: {
131 tabs() {
132 return [
133 { label: this.translations.get("DirectInput"), value: "direct" },
134 { label: this.translations.get("FileInput"), value: "file" }
135 ]
136 },
137 ...mapState({
138 translations: state => state.translations
139 })
140 }
141}
142</script>
Note: See TracBrowser for help on using the repository browser.