misc_pterodactyl-panel/resources/assets/scripts/store/index.ts
2018-12-16 18:57:34 -08:00

34 lines
1 KiB
TypeScript

import Vue from 'vue';
import Vuex from 'vuex';
import auth from './modules/auth';
import dashboard from './modules/dashboard';
import server from './modules/server';
import socket from './modules/socket';
import {ApplicationState} from "./types";
Vue.use(Vuex);
const store = new Vuex.Store<ApplicationState>({
strict: process.env.NODE_ENV !== 'production',
modules: {auth, dashboard, server, socket},
});
if (module.hot) {
module.hot.accept(['./modules/auth'], () => {
const newAuthModule = require('./modules/auth').default;
const newDashboardModule = require('./modules/dashboard').default;
const newServerModule = require('./modules/server').default;
const newSocketModule = require('./modules/socket').default;
store.hotUpdate({
modules: {
auth: newAuthModule,
dashboard: newDashboardModule,
server: newServerModule,
socket: newSocketModule
},
});
});
}
export default store;