import { createApp } from 'vue';
import App from './App.vue';
import router from './router';
import { directive } from '/@/directive/index';
import { i18n } from '/@/i18n';
import other from '/@/utils/other';
import '/@/assets/style/tailwind.css';
import ElementPlus from 'element-plus';
import 'element-plus/dist/index.css';
import '/@/theme/index.scss';
import mitt from 'mitt';
import VueGridLayout from 'vue-grid-layout';
import piniaPersist from 'pinia-plugin-persist';
import fastCrud from './settings.ts';
import pinia from './stores';
import {RegisterPermission} from '/@/plugin/permission/index';
import eIconPicker, { iconList, analyzingIconForIconfont } from 'e-icon-picker';
import 'e-icon-picker/icon/default-icon/symbol.js';
import 'e-icon-picker/index.css';
import 'font-awesome/css/font-awesome.min.css';
import elementPlus from 'e-icon-picker/icon/ele/element-plus.js';
import fontAwesome470 from 'e-icon-picker/icon/fontawesome/font-awesome.v4.7.0.js';
import eIconList from 'e-icon-picker/icon/default-icon/eIconList.js';
import iconfont from '/@/assets/iconfont/iconfont.json';
import '/@/assets/iconfont/iconfont.css';
import '/@/assets/iconfont/iconfont-01/iconfont.css';
import '/@/assets/iconfont/iconfont-02/iconfont.css';
import '/@/assets/iconfont/iconfont-03/iconfont.css';
import { scanAndInstallPlugins } from '/@/views/plugins/index';
import VXETable from 'vxe-table'
import 'vxe-table/lib/style.css'
import '/@/assets/style/reset.scss';
import 'element-tree-line/dist/style.css'
let forIconfont = analyzingIconForIconfont(iconfont);
iconList.addIcon(forIconfont.list);
iconList.addIcon(elementPlus);
iconList.addIcon(fontAwesome470);
let app = createApp(App);
scanAndInstallPlugins(app);
app.use(eIconPicker, {
addIconList: eIconList,
removeIconList: [],
zIndex: 3100,
});
pinia.use(piniaPersist);
directive(app);
other.elSvg(app);
app.use(VXETable)
app.use(pinia)
.use(router)
.use(ElementPlus, { i18n: i18n.global.t })
.use(i18n)
.use(VueGridLayout)
.use(fastCrud)
.mount('#app');
app.config.globalProperties.mittBus = mitt();