import { App } from 'vue';
import '../utils/echarts';
import Chart from './chart/index.vue';

// selection
import SvgIcon from './svg-icon/index.vue';
import SelectRangeDatetime from './select-range-datetime/index.vue';
import SelectRangeTime from './select-range-time/index.vue';
import UploadButton from './upload-button/index.vue';
import SelectExam from './select-exam/index.vue';
import SelectSubject from './select-subject/index.vue';
import ImportDialog from './import-dialog/index.vue';
import TableField from './table-field/index.vue';
import PageBreadcrumb from './page-breadcrumb/index.vue';
import SelectOption from './select-option/index.vue';
import SelectData from './select-data/index.vue';
import StatusTag from './status-tag/index.vue';

export default {
  install(Vue: App) {
    Vue.component('Chart', Chart);

    Vue.component('SvgIcon', SvgIcon);
    Vue.component('SelectRangeDatetime', SelectRangeDatetime);
    Vue.component('SelectRangeTime', SelectRangeTime);
    Vue.component('UploadButton', UploadButton);
    Vue.component('SelectExam', SelectExam);
    Vue.component('StatusTag', StatusTag);
    Vue.component('SelectData', SelectData);
    Vue.component('SelectOption', SelectOption);
    Vue.component('SelectSubject', SelectSubject);
    Vue.component('ImportDialog', ImportDialog);
    Vue.component('TableField', TableField);
    Vue.component('PageBreadcrumb', PageBreadcrumb);
  },
};
