import Vue from 'vue'
import App from './App'
import router from './router'
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
import axios from 'axios'
import bus from '@/utils/bus'
import api from '@/api/api'
import store from './store'
import '@/assets/icons' // icon
// import ECharts from "vue-echarts";
import * as echarts from 'echarts'
import './layout/permission'
import upload from '@/utils/uploadFile'
import RightToolbar from "@/components/RightToolbar"
import Paginations from "@/components/Paginations";
import methodsTools from '@/utils/methodsTool'
import { parseTime, resetForm, addDateRange, selectDictLabel, selectDictLabels, download, handleTree } from "@/utils/ruoyi";
Vue.config.productionTip = false
Vue.use(ElementUI);
Vue.prototype.parseTime = parseTime
Vue.prototype.resetForm = resetForm
Vue.prototype.addDateRange = addDateRange
Vue.prototype.selectDictLabel = selectDictLabel
Vue.prototype.selectDictLabels = selectDictLabels
Vue.prototype.download = download
Vue.prototype.handleTree = handleTree
Vue.prototype.$bus = bus
Vue.prototype.$axios = axios
Vue.prototype.$api = api
Vue.prototype.$upload = upload
Vue.prototype.$methodsTools = methodsTools
// Vue.component('v-chart', ECharts)//全局注册
Vue.prototype.$echarts = echarts;
Vue.component('RightToolbar', RightToolbar)
Vue.component('Paginations', Paginations)
Vue.prototype.msgSuccess = function (msg) {
  this.$message({ showClose: true, message: msg, type: "success" });
}
Vue.prototype.msgError = function (msg) {
  this.$message({ showClose: true, message: msg, type: "error" });
}
Vue.prototype.msgInfo = function (msg) {
  this.$message.info(msg);
}


/* eslint-disable no-new */
new Vue({
  el: '#app',
  router,
  store,
  render: h => h(App)
})
