forked from AkkomaGang/akkoma-fe
215e51f764
The idea is that all interactions should move there, so components don't have to pass around credentials all the time.
48 lines
1.3 KiB
JavaScript
48 lines
1.3 KiB
JavaScript
import Vue from 'vue'
|
|
import VueRouter from 'vue-router'
|
|
import Vuex from 'vuex'
|
|
import App from './App.vue'
|
|
import PublicTimeline from './components/public_timeline/public_timeline.vue'
|
|
import PublicAndExternalTimeline from './components/public_and_external_timeline/public_and_external_timeline.vue'
|
|
import FriendsTimeline from './components/friends_timeline/friends_timeline.vue'
|
|
import Conversation from './components/conversation/conversation.vue'
|
|
|
|
import statusesModule from './modules/statuses.js'
|
|
import usersModule from './modules/users.js'
|
|
import apiModule from './modules/api.js'
|
|
|
|
Vue.use(Vuex)
|
|
Vue.use(VueRouter)
|
|
|
|
const store = new Vuex.Store({
|
|
modules: {
|
|
statuses: statusesModule,
|
|
users: usersModule,
|
|
api: apiModule
|
|
}
|
|
})
|
|
|
|
const routes = [
|
|
{ path: '/', redirect: '/main/all' },
|
|
{ path: '/main/all', component: PublicAndExternalTimeline },
|
|
{ path: '/main/public', component: PublicTimeline },
|
|
{ path: '/main/friends', component: FriendsTimeline },
|
|
{ name: 'conversation', path: '/notice/:id', component: Conversation }
|
|
]
|
|
|
|
const router = new VueRouter({
|
|
mode: 'history',
|
|
routes,
|
|
scrollBehavior: (to, from, savedPosition) => {
|
|
return savedPosition || { x: 0, y: 0 }
|
|
}
|
|
})
|
|
|
|
/* eslint-disable no-new */
|
|
new Vue({
|
|
router,
|
|
store,
|
|
el: '#app',
|
|
template: '<App/>',
|
|
components: { App }
|
|
})
|