import Vue from 'vue';
import App from './App';
import router from './router';
import store from './store';
import ElementUI from 'element-ui';
import http from './plugins/http';
import SortableHeader from '@/components/SortableHeader';
import MultiUpload from '@/components/MultiUpload';
import SingleUpload from '@/components/SingleUpload';
import FileUpload from '@/components/FileUpload';
import RichText from '@/components/RichText';
import CropUpload from '@/components/CropUpload';
import Formatters from '@/mixins/formatters';
import 'normalize.css/normalize.css';
import 'element-ui/lib/theme-chalk/index.css';

Vue.config.productionTip = false;
Vue.use(ElementUI, { size: 'small' });
Vue.use(http);
Vue.component('sortable-header', SortableHeader);
Vue.component('multi-upload', MultiUpload);
Vue.component('single-upload', SingleUpload);
Vue.component('file-upload', FileUpload);
Vue.component('rich-text', RichText);
Vue.component('crop-upload', CropUpload);
Vue.mixin(Formatters);

new Vue({
    router,
    store,
    render: h => h(App),
}).$mount('#app');
