diff --git a/public/index.html b/public/index.html index 8b5715c..d16df0d 100644 --- a/public/index.html +++ b/public/index.html @@ -8,8 +8,6 @@ <%= htmlWebpackPlugin.options.title %> - diff --git a/src/App.vue b/src/App.vue index 32b38cf..c9a51b7 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,15 +1,26 @@ diff --git a/src/assets/fonts/GoogleSans-Regular.ttf b/src/assets/fonts/GoogleSans-Regular.ttf new file mode 100644 index 0000000..ab605f9 Binary files /dev/null and b/src/assets/fonts/GoogleSans-Regular.ttf differ diff --git a/src/components/HelloWorld.vue b/src/components/HelloWorld.vue deleted file mode 100644 index 91e58ee..0000000 --- a/src/components/HelloWorld.vue +++ /dev/null @@ -1,143 +0,0 @@ - - - diff --git a/src/components/Home.vue b/src/components/Home.vue new file mode 100644 index 0000000..ee9b45c --- /dev/null +++ b/src/components/Home.vue @@ -0,0 +1,26 @@ + + + diff --git a/src/components/common/Drawer.vue b/src/components/common/Drawer.vue new file mode 100644 index 0000000..0e3a4f9 --- /dev/null +++ b/src/components/common/Drawer.vue @@ -0,0 +1,76 @@ + + + diff --git a/src/components/common/Toolbar.vue b/src/components/common/Toolbar.vue new file mode 100644 index 0000000..1af675f --- /dev/null +++ b/src/components/common/Toolbar.vue @@ -0,0 +1,54 @@ + + + diff --git a/src/components/common/ToolbarAvatar.vue b/src/components/common/ToolbarAvatar.vue new file mode 100644 index 0000000..45197a9 --- /dev/null +++ b/src/components/common/ToolbarAvatar.vue @@ -0,0 +1,29 @@ + + diff --git a/src/components/common/View.vue b/src/components/common/View.vue new file mode 100644 index 0000000..eb55130 --- /dev/null +++ b/src/components/common/View.vue @@ -0,0 +1,19 @@ + + diff --git a/src/layouts/Account.vue b/src/layouts/Account.vue index 574ce69..3feada3 100644 --- a/src/layouts/Account.vue +++ b/src/layouts/Account.vue @@ -3,14 +3,14 @@ v-content.fill-height.bkg v-container.fill-height( fluid ) - v-layout( - align-center - justify-center + v-row( + align="center" + justify="center" ) - v-flex( - xs12 - sm8 - md4 + v-col( + xs="12" + sm="8" + md="4" ) router-view diff --git a/src/locales/en.json b/src/locales/en.json index 986ed99..70773a9 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -62,9 +62,11 @@ "submit": "Submit", "required": "{field} is required" }, - "toolbar": { + "nav": { + "home": "Home", "status": "Status", "problem": "Problem", + "group": "Group", "contest": "Contest", "discussion": "Discussion", "profile": "Profile", diff --git a/src/locales/zh-cmn-Hans.json b/src/locales/zh-cmn-Hans.json index 353602d..5667942 100644 --- a/src/locales/zh-cmn-Hans.json +++ b/src/locales/zh-cmn-Hans.json @@ -52,8 +52,11 @@ "submit": "提交", "required": "{field} 是必填项目" }, - "toolbar": { + "nav": { + "home": "主页", + "status": "状态", "problem": "题目", + "group": "小组", "contest": "比赛", "discussion": "讨论" } diff --git a/src/main.ts b/src/main.ts index 35b4e17..1076de9 100644 --- a/src/main.ts +++ b/src/main.ts @@ -5,6 +5,7 @@ import router from "./router"; import store from "./store"; import vuetify from "./plugins/vuetify"; import i18n from "./i18n"; +import "./styles/main.styl"; import "./plugins/vue-meta"; Vue.config.productionTip = false; diff --git a/src/plugins/vuetify.ts b/src/plugins/vuetify.ts index 441a07c..b5301e7 100644 --- a/src/plugins/vuetify.ts +++ b/src/plugins/vuetify.ts @@ -6,6 +6,6 @@ Vue.use(Vuetify); export default new Vuetify({ icons: { - iconfont: "fa" + iconfont: "mdi" } }); diff --git a/src/store/index.ts b/src/store/index.ts index fb6015f..0378fa3 100644 --- a/src/store/index.ts +++ b/src/store/index.ts @@ -4,8 +4,24 @@ import Vuex from "vuex"; Vue.use(Vuex); export default new Vuex.Store({ - state: {}, - mutations: {}, + state: { + drawer: false, + links: [ + { text: "nav.home", to: "/", icon: "mdi-home" }, + { text: "nav.problem", to: "/p", icon: "mdi-puzzle" }, + { text: "nav.group", to: "/g", icon: "mdi-account-group" }, + { text: "nav.contest", to: "/c", icon: "mdi-feather" } + ] + }, + getters: { + links: state => { + return state.links; + } + }, + mutations: { + setDrawer: (state, payload) => (state.drawer = payload), + toggleDrawer: state => (state.drawer = !state.drawer) + }, actions: {}, modules: {} }); diff --git a/src/styles/main.styl b/src/styles/main.styl new file mode 100644 index 0000000..f3f5e77 --- /dev/null +++ b/src/styles/main.styl @@ -0,0 +1,9 @@ +// @import "https://use.fontawesome.com/releases/v5.10.0/css/all.css" +@import "https://cdn.jsdelivr.net/npm/@mdi/font@4.x/css/materialdesignicons.min.css" + +@font-face + font-family: google-sans + src: url("~@/assets/fonts/GoogleSans-Regular.ttf") + +.google-font + font-family: google-sans diff --git a/src/views/Home.vue b/src/views/Home.vue index 191049e..ae9981b 100644 --- a/src/views/Home.vue +++ b/src/views/Home.vue @@ -1,18 +1,24 @@ diff --git a/src/views/users/Preference.vue b/src/views/users/Preference.vue index 40b2059..b5b7cfd 100644 --- a/src/views/users/Preference.vue +++ b/src/views/users/Preference.vue @@ -1,15 +1,15 @@