import Vue, { DirectiveOptions } from 'vue'; import MuRow from './components/grid/row.vue'; import MuCol from './components/grid/col.vue'; import MuButton from './components/button/index.vue'; import MuTag from './components/tag/index.vue'; import MuImage from './components/image/index.vue'; import MuCarousel from './components/carousel/index.vue'; import MuPagination from './components/pagination/index.vue'; import MuFormItem from './components/form/form-item.vue'; import MuInput from './components/input/input.vue'; import MuSelect from './components/select/select.vue'; import MuCollapse from './components/collapse/index.vue' import MuInputPassword from './components/password/password.vue'; import MuTextarea from './components/textarea/textarea.vue'; import MuCheckbox from './components/checkbox/checkbox.vue'; import MuInputNumber from './components/input-number/input-number.vue'; import MuRadio from './components/radio/radio.vue'; import MuDatepicker from './components/datepicker/datepicker.vue'; import MuTimepicker from './components/timepicker/timepicker.vue'; import MuSwitch from './components/switch/switch.vue'; import MuSteps from './components/steps/steps.vue'; import MuSplitPanel from './components/split-panel/index.vue' import MuCascader from './components/cascader/cascader.vue'; import MuSelectTree from './components/select-tree/select-tree.vue'; import MuSelectTable from './components/select-table/select-table.vue'; import MuSearchAdvanced from './components//search-advanced/search-advanced.vue'; import MuSearchInput from './components/search-input/search-input.vue'; import MuRadioGroup from './components/radio-group/radio-group.vue'; import MuForm from './components/form/index.vue'; import MuTable from './components/table/index.vue'; import MuTableSimple from './components/table-simple/index.vue'; import MuTableColumn from './components/table-simple/column.vue'; import MuField from './components/form/field'; import MuDialog from './components/dialog/index.vue'; import MuTabs from './components/tabs/index.vue'; import MuToolBar from './components/toolbar/index.vue' import MuTooltip from './components/tooltip/index.vue' import MuTree from './components/tree/index.vue'; import * as prototype from './common/tool'; import * as directives from './common/directives'; const components = { MuRow, MuCol, MuButton, MuTag, MuImage, MuCarousel, MuCollapse, MuPagination, MuFormItem, MuInput, MuSelect, MuInputPassword, MuTextarea, MuInputNumber, MuForm, MuTable, MuTableSimple, MuTableColumn, MuField, MuDialog, MuTabs, MuToolBar, MuTooltip, MuRadio, MuCheckbox, MuDatepicker, MuTimepicker, MuTree, MuSwitch, MuSteps, MuSplitPanel, MuCascader, MuSelectTree , MuSelectTable, MuSearchAdvanced, MuSearchInput, MuRadioGroup } const install = function(Vue: any, opts: any) { Object.keys(components).forEach(key => { Vue.component(key, (components as { [key: string]: Function })[key]); }); Object.keys(directives).forEach(key => { Vue.directive(key, (directives as { [key: string]: DirectiveOptions })[key]); }); Vue.prototype.$mu = prototype; } /* istanbul ignore if */ if (typeof window !== 'undefined' && window.Vue) { install(window.Vue); } export default { install, MuRow, MuCol, MuButton, MuTag, MuImage, MuCarousel, MuCollapse, MuPagination, MuFormItem, MuInput, MuSelect, MuInputPassword, MuTextarea, MuInputNumber, MuForm, MuTable, MuTableSimple, MuTableColumn, MuField, MuDialog, MuTabs, MuToolBar, MuTooltip, MuRadio, MuCheckbox, MuDatepicker, MuTimepicker, MuTree, MuSwitch, MuSteps, MuSplitPanel, MuCascader, MuSelectTree , MuSelectTable, MuSearchAdvanced, MuSearchInput, MuRadioGroup };