tav-ui
Version:
1 lines • 10.1 kB
Source Map (JSON)
{"version":3,"file":"setup2.mjs","sources":["../../../../../../../packages/components/table-pro/src/setup.ts"],"sourcesContent":["import VXETable from 'vxe-table'\nimport { useGlobalConfig } from '@tav-ui/hooks'\nimport { VxeCellRenderer } from './components/cell'\nimport VXETablePluginExport from './vxe-table-plugin-export'\nimport type { App, Ref } from 'vue'\nimport type { VXETableSetupOptions } from 'vxe-table'\n// import 'vxe-table/lib/style.css'\nimport 'xe-utils'\n\nconst i18nFun = useGlobalConfig('i18nFun') as Ref<Record<string, any>>\n\nexport function setupVxeTable(app?: App) {\n // VXETable 全局配置\n const VXETableGlobalSettings = {\n // size: null, // 全局尺寸\n zIndex: 999, // 全局 zIndex 起始值,如果项目的的 z-index 样式值过大时就需要跟随设置更大,避免被遮挡\n // version: 0, // 版本号,对于某些带数据缓存的功能有用到,上升版本号可以用于重置数据\n // table: {\n // showHeader: true,\n // keepSource: false,\n // showOverflow: null,\n // showHeaderOverflow: null,\n // showFooterOverflow: null,\n // size: null,\n // autoResize: false,\n // stripe: false,\n // border: false,\n // round: false,\n // emptyText: '暂无数据',\n // rowConfig: {\n // keyField: '_X_ROW_KEY' // 行数据的唯一主键字段名\n // },\n // radioConfig: {\n // trigger: 'default'\n // },\n // checkboxConfig: {\n // strict: false,\n // highlight: false,\n // range: false,\n // trigger: 'default'\n // },\n // sortConfig: {\n // remote: false,\n // trigger: 'default',\n // orders: ['asc', 'desc', null],\n // sortMethod: null\n // },\n // filterConfig: {\n // remote: false,\n // filterMethod: null\n // },\n // expandConfig: {\n // trigger: 'default',\n // showIcon: true\n // },\n // treeConfig: {\n // rowField: 'id',\n // parentField: 'parentId',\n // children: 'children',\n // hasChild: 'hasChild',\n // mapChildren: '_X_ROW_CHILD',\n // indent: 20,\n // showIcon: true\n // },\n // tooltipConfig: {\n // enterable: true\n // },\n // menuConfig: {\n // visibleMethod () {}\n // },\n // editConfig: {\n // mode: 'cell',\n // showAsterisk: true\n // },\n // importConfig: {\n // modes: ['insert', 'covering']\n // },\n // exportConfig: {\n // modes: ['current', 'selected']\n // },\n // customConfig: {\n // storage: false\n // },\n // scrollX: {\n // gt: 60\n // },\n // scrollY: {\n // gt: 100\n // }\n // },\n // grid: {\n // size: null,\n // zoomConfig: {\n // escRestore: true\n // },\n // pagerConfig: {\n // perfect: false\n // },\n // toolbarConfig: {\n // perfect: false\n // },\n // proxyConfig: {\n // autoLoad: true,\n // message: true,\n // props: {\n // list: null, // 用于列表,读取响应数据\n // result: 'result', // 用于分页,读取响应数据\n // total: 'page.total' // 用于分页,读取总条数\n // }\n // beforeItem: null,\n // beforeColumn: null,\n // beforeQuery: null,\n // afterQuery: null,\n // beforeDelete: null,\n // afterDelete: null,\n // beforeSave: null,\n // afterSave: null\n // }\n // },\n // pager: {\n // size: null,\n // autoHidden: false,\n // perfect: true,\n // pageSize: 10,\n // pagerCount: 7,\n // pageSizes: [10, 15, 20, 50, 100],\n // layouts: ['PrevJump', 'PrevPage', 'Jump', 'PageCount', 'NextPage', 'NextJump', 'Sizes', 'Total']\n // },\n // form: {\n // preventSubmit: false\n // size: null,\n // colon: false,\n // validConfig: {\n // autoPos: true\n // },\n // tooltipConfig: {\n // enterable: true\n // },\n // titleAsterisk: true\n // },\n // input: {\n // size: null,\n // transfer: false\n // parseFormat: 'yyyy-MM-dd HH:mm:ss.SSS',\n // labelFormat: '',\n // valueFormat: '',\n // startDay: 1,\n // digits: 2,\n // controls: true\n // },\n // textarea: {\n // size: null\n // autosize: {\n // minRows: 1,\n // maxRows: 10\n // }\n // },\n // select: {\n // size: null,\n // transfer: false,\n // optionConfig: {\n // keyField: '_X_OPTION_KEY' // 选项数据的唯一主键字段名\n // },\n // multiCharOverflow: 8\n // },\n // toolbar: {\n // size: null,\n // import: {\n // mode: 'covering'\n // },\n // export: {\n // types: ['csv', 'html', 'xml', 'txt']\n // },\n // custom: {\n // isFooter: true\n // },\n // buttons: [],\n // tools: []\n // },\n // button: {\n // size: null,\n // transfer: false\n // },\n // radio: {\n // size: null\n // },\n // checkbox: {\n // size: null\n // },\n // switch: {\n // size: null\n // },\n // modal: {\n // // size: null,\n // minWidth: 340,\n // minHeight: 200,\n // lockView: true,\n // mask: true,\n // duration: 3000,\n // marginSize: 0,\n // dblclickZoom: true,\n // showTitleOverflow: true\n // storage: false\n // },\n // list: {\n // scrollY: {\n // gt: 100\n // }\n // }\n }\n // 如果项目已有适合的图标,例如第三方图标库:font-awesome、inconfont,可通过配置替换并自行调整相关的样式即可\n const VXETableGlobalIcons = {\n // // table\n // TABLE_SORT_ASC: 'vxe-icon--caret-top',\n // TABLE_SORT_DESC: 'vxe-icon--caret-bottom',\n // TABLE_FILTER_NONE: 'vxe-icon--funnel',\n // TABLE_FILTER_MATCH: 'vxe-icon--funnel',\n // TABLE_EDIT: 'vxe-icon--edit-outline',\n // TABLE_TREE_LOADED: 'vxe-icon--refresh roll',\n // TABLE_TREE_OPEN: 'vxe-icon--caret-right rotate90',\n // TABLE_TREE_CLOSE: 'vxe-icon--caret-right',\n // TABLE_EXPAND_LOADED: 'vxe-icon--refresh roll',\n // TABLE_EXPAND_OPEN: 'vxe-icon--arrow-right rotate90',\n // TABLE_EXPAND_CLOSE: 'vxe-icon--arrow-right',\n // // button\n // BUTTON_DROPDOWN: 'vxe-icon--arrow-bottom',\n // BUTTON_LOADING: 'vxe-icon--refresh roll',\n // // select\n // SELECT_OPEN: 'vxe-icon--caret-bottom rotate180',\n // SELECT_CLOSE: 'vxe-icon--caret-bottom',\n // // pager\n // PAGER_JUMP_PREV: 'vxe-icon--d-arrow-left',\n // PAGER_JUMP_NEXT: 'vxe-icon--d-arrow-right',\n // PAGER_PREV_PAGE: 'vxe-icon--arrow-left',\n // PAGER_NEXT_PAGE: 'vxe-icon--arrow-right',\n // PAGER_JUMP_MORE: 'vxe-icon--more',\n // // input\n // INPUT_CLEAR: 'vxe-icon--close',\n // INPUT_PWD: 'vxe-icon--eye-slash',\n // INPUT_SHOW_PWD: 'vxe-icon--eye',\n // INPUT_PREV_NUM: 'vxe-icon--caret-top',\n // INPUT_NEXT_NUM: 'vxe-icon--caret-bottom',\n // INPUT_DATE: 'vxe-icon--calendar',\n // INPUT_SEARCH: 'vxe-icon--search',\n // // modal\n // MODAL_ZOOM_IN: 'vxe-icon--square',\n // MODAL_ZOOM_OUT: 'vxe-icon--zoomout',\n // MODAL_CLOSE: 'vxe-icon--close',\n // MODAL_INFO: 'vxe-icon--info',\n // MODAL_SUCCESS: 'vxe-icon--success',\n // MODAL_WARNING: 'vxe-icon--warning',\n // MODAL_ERROR: 'vxe-icon--error',\n // MODAL_QUESTION: 'vxe-icon--question',\n // MODAL_LOADING: 'vxe-icon--refresh roll',\n // // toolbar\n // TOOLBAR_TOOLS_REFRESH: 'vxe-icon--refresh',\n // TOOLBAR_TOOLS_REFRESH_LOADING: 'vxe-icon--refresh roll',\n // TOOLBAR_TOOLS_IMPORT: 'vxe-icon--upload',\n // TOOLBAR_TOOLS_EXPORT: 'vxe-icon--download',\n // TOOLBAR_TOOLS_ZOOM_IN: 'vxe-icon--zoomin',\n // TOOLBAR_TOOLS_ZOOM_OUT: 'vxe-icon--zoomout',\n // TOOLBAR_TOOLS_CUSTOM: 'vxe-icon--menu',\n // // form\n // FORM_PREFIX: 'vxe-icon--info',\n // FORM_SUFFIX: 'vxe-icon--info',\n // FORM_FOLDING: 'vxe-icon--arrow-top rotate180',\n // FORM_UNFOLDING: 'vxe-icon--arrow-top'\n // LOADING: 'vxe-icon--refresh roll'\n LOADING: 'ta-table-pro-loading',\n }\n\n const setupOptions: VXETableSetupOptions = Object.assign(VXETableGlobalSettings, {\n icon: VXETableGlobalIcons,\n i18n: (key, args) => i18nFun.value?.i18n.global.t(key, args),\n // translate(key, args) {\n // // 例如,只翻译 \"app.\" 开头的键值\n // if (key && key.indexOf('app.') > -1) {\n // return i18nFun.value?.i18n.global.t(key, args)\n // }\n // return key\n // },\n })\n\n // 自定义渲染 cell\n VXETable.renderer.add(VxeCellRenderer.name, VxeCellRenderer.options)\n\n // 注册插件\n VXETable.use(VXETablePluginExport)\n // VXETable.use(VXETablePluginAntd)\n\n // 注册自定义组件\n // registerAllComponent()\n\n // 执行注册方法\n VXETable.setup(setupOptions)\n app?.use(VXETable, setupOptions)\n return VXETable\n}\n"],"names":["VXETablePluginExport"],"mappings":";;;;;;;AAKA,MAAM,OAAO,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;AACpC,SAAS,aAAa,CAAC,GAAG,EAAE;AACnC,EAAE,MAAM,sBAAsB,GAAG;AACjC,IAAI,MAAM,EAAE,GAAG;AACf,GAAG,CAAC;AACJ,EAAE,MAAM,mBAAmB,GAAG;AAC9B,IAAI,OAAO,EAAE,sBAAsB;AACnC,GAAG,CAAC;AACJ,EAAE,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,sBAAsB,EAAE;AAC7D,IAAI,IAAI,EAAE,mBAAmB;AAC7B,IAAI,IAAI,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC;AAChE,GAAG,CAAC,CAAC;AACL,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;AACvE,EAAE,QAAQ,CAAC,GAAG,CAACA,wBAAoB,CAAC,CAAC;AACrC,EAAE,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;AAC/B,EAAE,GAAG,EAAE,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;AACnC,EAAE,OAAO,QAAQ,CAAC;AAClB;;;;"}