fast-element-plus 1.0.19 → 1.0.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.full.js +27739 -28663
- package/dist/index.full.js.map +1 -1
- package/dist/index.full.min.js +11042 -2
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +11033 -2
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +27730 -28661
- package/dist/index.full.mjs.map +1 -1
- package/dist/styles/index.css +3 -3
- package/es/_virtual/_rolldown/runtime.mjs +1 -0
- package/es/component.mjs +2 -2
- package/es/component.mjs.map +1 -1
- package/es/components/avatar/index.mjs +2 -2
- package/es/components/avatar/index.mjs.map +1 -1
- package/es/components/avatar/src/avatar.d.ts +10 -10
- package/es/components/avatar/src/avatar.mjs +2 -2
- package/es/components/avatar/src/avatar.mjs.map +1 -1
- package/es/components/button/index.mjs +2 -2
- package/es/components/button/index.mjs.map +1 -1
- package/es/components/button/src/button.d.ts +21 -17
- package/es/components/button/src/button.mjs +2 -2
- package/es/components/button/src/button.mjs.map +1 -1
- package/es/components/carNumber/index.mjs +2 -2
- package/es/components/carNumber/index.mjs.map +1 -1
- package/es/components/carNumber/src/carNumber.d.ts +36 -33
- package/es/components/carNumber/src/carNumber.mjs +2 -2
- package/es/components/carNumber/src/carNumber.mjs.map +1 -1
- package/es/components/carNumber/src/common.mjs +2 -2
- package/es/components/carNumber/src/common.mjs.map +1 -1
- package/es/components/contextMenu/index.mjs +2 -2
- package/es/components/contextMenu/index.mjs.map +1 -1
- package/es/components/contextMenu/src/contextMenu.mjs +2 -2
- package/es/components/contextMenu/src/contextMenu.mjs.map +1 -1
- package/es/components/contextMenu/src/contextMenu.type.mjs +0 -2
- package/es/components/dialog/index.mjs +2 -2
- package/es/components/dialog/index.mjs.map +1 -1
- package/es/components/dialog/src/dialog.d.ts +11 -11
- package/es/components/dialog/src/dialog.mjs +2 -2
- package/es/components/dialog/src/dialog.mjs.map +1 -1
- package/es/components/drawer/index.mjs +2 -2
- package/es/components/drawer/index.mjs.map +1 -1
- package/es/components/drawer/src/drawer.d.ts +10 -18
- package/es/components/drawer/src/drawer.mjs +2 -2
- package/es/components/drawer/src/drawer.mjs.map +1 -1
- package/es/components/form/index.mjs +2 -2
- package/es/components/form/index.mjs.map +1 -1
- package/es/components/form/src/form.d.ts +15 -15
- package/es/components/form/src/form.mjs +2 -2
- package/es/components/form/src/form.mjs.map +1 -1
- package/es/components/form/src/formItem.d.ts +14 -14
- package/es/components/form/src/formItem.mjs +2 -2
- package/es/components/form/src/formItem.mjs.map +1 -1
- package/es/components/form/utils/form.mjs +2 -2
- package/es/components/form/utils/form.mjs.map +1 -1
- package/es/components/formItemTip/index.mjs +2 -2
- package/es/components/formItemTip/index.mjs.map +1 -1
- package/es/components/formItemTip/src/formItemTip.mjs +2 -2
- package/es/components/formItemTip/src/formItemTip.mjs.map +1 -1
- package/es/components/icon/index.mjs +2 -2
- package/es/components/icon/index.mjs.map +1 -1
- package/es/components/icon/src/icon.mjs +2 -2
- package/es/components/icon/src/icon.mjs.map +1 -1
- package/es/components/iconSelector/index.mjs +2 -2
- package/es/components/iconSelector/index.mjs.map +1 -1
- package/es/components/iconSelector/src/iconSelector.mjs +2 -2
- package/es/components/iconSelector/src/iconSelector.mjs.map +1 -1
- package/es/components/image/index.mjs +2 -2
- package/es/components/image/index.mjs.map +1 -1
- package/es/components/image/src/image.d.ts +13 -13
- package/es/components/image/src/image.mjs +2 -2
- package/es/components/image/src/image.mjs.map +1 -1
- package/es/components/index.mjs +2 -2
- package/es/components/index.mjs.map +1 -1
- package/es/components/inputDialogPage/index.mjs +2 -2
- package/es/components/inputDialogPage/index.mjs.map +1 -1
- package/es/components/inputDialogPage/src/inputDialogPage.mjs +2 -2
- package/es/components/inputDialogPage/src/inputDialogPage.mjs.map +1 -1
- package/es/components/layoutGrid/index.mjs +2 -2
- package/es/components/layoutGrid/index.mjs.map +1 -1
- package/es/components/layoutGrid/src/layoutGrid.mjs +2 -2
- package/es/components/layoutGrid/src/layoutGrid.mjs.map +1 -1
- package/es/components/layoutGrid/src/layoutGrid.type.mjs +0 -2
- package/es/components/layoutGrid/src/layoutGridItem.mjs +2 -2
- package/es/components/layoutGrid/src/layoutGridItem.mjs.map +1 -1
- package/es/components/select/index.mjs +2 -2
- package/es/components/select/index.mjs.map +1 -1
- package/es/components/select/src/select.d.ts +21 -21
- package/es/components/select/src/select.mjs +2 -2
- package/es/components/select/src/select.mjs.map +1 -1
- package/es/components/select/src/select.type.mjs +0 -2
- package/es/components/select/src/selectOption.mjs +2 -2
- package/es/components/select/src/selectOption.mjs.map +1 -1
- package/es/components/selectPage/index.mjs +2 -2
- package/es/components/selectPage/index.mjs.map +1 -1
- package/es/components/selectPage/src/selectPage.d.ts +27 -27
- package/es/components/selectPage/src/selectPage.mjs +2 -2
- package/es/components/selectPage/src/selectPage.mjs.map +1 -1
- package/es/components/selectV2/index.mjs +2 -2
- package/es/components/selectV2/index.mjs.map +1 -1
- package/es/components/selectV2/src/selectV2.d.ts +19 -19
- package/es/components/selectV2/src/selectV2.mjs +2 -2
- package/es/components/selectV2/src/selectV2.mjs.map +1 -1
- package/es/components/table/images/artwork.mjs +2 -0
- package/es/components/table/images/artwork.mjs.map +1 -0
- package/es/components/table/images/notImage.mjs +2 -0
- package/es/components/table/images/notImage.mjs.map +1 -0
- package/es/components/table/index.mjs +2 -2
- package/es/components/table/index.mjs.map +1 -1
- package/es/components/table/src/page.type.mjs +2 -2
- package/es/components/table/src/page.type.mjs.map +1 -1
- package/es/components/table/src/table.d.ts +20 -4
- package/es/components/table/src/table.mjs +2 -2
- package/es/components/table/src/table.mjs.map +1 -1
- package/es/components/table/src/table.state.mjs +0 -2
- package/es/components/table/src/table.type.d.ts +1 -1
- package/es/components/table/src/table.type.mjs +2 -2
- package/es/components/table/src/table.type.mjs.map +1 -1
- package/es/components/table/src/tableColumn.mjs +2 -2
- package/es/components/table/src/tableColumn.mjs.map +1 -1
- package/es/components/table/src/tableColumnSettingDialog.mjs +2 -2
- package/es/components/table/src/tableColumnSettingDialog.mjs.map +1 -1
- package/es/components/table/src/tablePagination.mjs +2 -2
- package/es/components/table/src/tablePagination.mjs.map +1 -1
- package/es/components/table/src/tableSearchForm.mjs +2 -2
- package/es/components/table/src/tableSearchForm.mjs.map +1 -1
- package/es/components/table/src/tableSearchFormItem.mjs +2 -2
- package/es/components/table/src/tableSearchFormItem.mjs.map +1 -1
- package/es/components/table/src/useTable.mjs +2 -2
- package/es/components/table/src/useTable.mjs.map +1 -1
- package/es/components/table/utils/table.mjs +2 -2
- package/es/components/table/utils/table.mjs.map +1 -1
- package/es/components/tree/index.mjs +2 -2
- package/es/components/tree/index.mjs.map +1 -1
- package/es/components/tree/src/tree.d.ts +40 -40
- package/es/components/tree/src/tree.mjs +2 -2
- package/es/components/tree/src/tree.mjs.map +1 -1
- package/es/components/tree/src/tree.props.mjs +2 -2
- package/es/components/tree/src/tree.props.mjs.map +1 -1
- package/es/components/tree/src/tree.type.mjs +0 -2
- package/es/components/treeSelect/index.mjs +2 -2
- package/es/components/treeSelect/index.mjs.map +1 -1
- package/es/components/treeSelect/src/treeSelect.d.ts +60 -60
- package/es/components/treeSelect/src/treeSelect.mjs +2 -2
- package/es/components/treeSelect/src/treeSelect.mjs.map +1 -1
- package/es/components/upload/index.mjs +2 -2
- package/es/components/upload/index.mjs.map +1 -1
- package/es/components/upload/src/upload.d.ts +73 -73
- package/es/components/upload/src/upload.mjs +2 -2
- package/es/components/upload/src/upload.mjs.map +1 -1
- package/es/components/upload/src/useUpload.mjs +2 -2
- package/es/components/upload/src/useUpload.mjs.map +1 -1
- package/es/components/upload/utils/upload.mjs +2 -2
- package/es/components/upload/utils/upload.mjs.map +1 -1
- package/es/components/uploadImage/index.mjs +2 -2
- package/es/components/uploadImage/index.mjs.map +1 -1
- package/es/components/uploadImage/src/uploadImage.d.ts +69 -69
- package/es/components/uploadImage/src/uploadImage.mjs +2 -2
- package/es/components/uploadImage/src/uploadImage.mjs.map +1 -1
- package/es/components/uploadImages/index.mjs +2 -2
- package/es/components/uploadImages/index.mjs.map +1 -1
- package/es/components/uploadImages/src/uploadImages.d.ts +70 -70
- package/es/components/uploadImages/src/uploadImages.mjs +2 -2
- package/es/components/uploadImages/src/uploadImages.mjs.map +1 -1
- package/es/constants/index.mjs +1 -2
- package/es/constants/mime.mjs +2 -2
- package/es/constants/mime.mjs.map +1 -1
- package/es/constants/regex.mjs +2 -2
- package/es/constants/regex.mjs.map +1 -1
- package/es/directive.mjs +2 -2
- package/es/directive.mjs.map +1 -1
- package/es/directives/click-copy/index.mjs +2 -2
- package/es/directives/click-copy/index.mjs.map +1 -1
- package/es/directives/click-debounce/index.mjs +2 -2
- package/es/directives/click-debounce/index.mjs.map +1 -1
- package/es/directives/click-draggable/index.mjs +2 -2
- package/es/directives/click-draggable/index.mjs.map +1 -1
- package/es/directives/click-icon-copy/index.mjs +2 -2
- package/es/directives/click-icon-copy/index.mjs.map +1 -1
- package/es/directives/click-longpress/index.mjs +2 -2
- package/es/directives/click-longpress/index.mjs.map +1 -1
- package/es/directives/click-throttle/index.mjs +2 -2
- package/es/directives/click-throttle/index.mjs.map +1 -1
- package/es/directives/index.mjs +1 -2
- package/es/element-plus.mjs +2 -2
- package/es/element-plus.mjs.map +1 -1
- package/es/hooks/index.mjs +1 -2
- package/es/hooks/use-loading/index.mjs +2 -2
- package/es/hooks/use-loading/index.mjs.map +1 -1
- package/es/hooks/use-overlay/index.mjs +2 -2
- package/es/hooks/use-overlay/index.mjs.map +1 -1
- package/es/hooks/use-screenFull/index.mjs +2 -2
- package/es/hooks/use-screenFull/index.mjs.map +1 -1
- package/es/index.mjs +2 -2
- package/es/index.mjs.map +1 -1
- package/es/make-installer.mjs +2 -2
- package/es/make-installer.mjs.map +1 -1
- package/es/version.d.ts +1 -1
- package/es/version.mjs +2 -2
- package/es/version.mjs.map +1 -1
- package/lib/_virtual/_rolldown/runtime.js +1 -0
- package/lib/component.js +2 -2
- package/lib/component.js.map +1 -1
- package/lib/components/avatar/index.js +2 -2
- package/lib/components/avatar/index.js.map +1 -1
- package/lib/components/avatar/src/avatar.d.ts +10 -10
- package/lib/components/avatar/src/avatar.js +2 -2
- package/lib/components/avatar/src/avatar.js.map +1 -1
- package/lib/components/button/index.js +2 -2
- package/lib/components/button/index.js.map +1 -1
- package/lib/components/button/src/button.d.ts +21 -17
- package/lib/components/button/src/button.js +2 -2
- package/lib/components/button/src/button.js.map +1 -1
- package/lib/components/carNumber/index.js +2 -2
- package/lib/components/carNumber/index.js.map +1 -1
- package/lib/components/carNumber/src/carNumber.d.ts +36 -33
- package/lib/components/carNumber/src/carNumber.js +2 -2
- package/lib/components/carNumber/src/carNumber.js.map +1 -1
- package/lib/components/carNumber/src/common.js +2 -2
- package/lib/components/carNumber/src/common.js.map +1 -1
- package/lib/components/contextMenu/index.js +2 -2
- package/lib/components/contextMenu/index.js.map +1 -1
- package/lib/components/contextMenu/src/contextMenu.js +2 -2
- package/lib/components/contextMenu/src/contextMenu.js.map +1 -1
- package/lib/components/contextMenu/src/contextMenu.type.js +0 -2
- package/lib/components/dialog/index.js +2 -2
- package/lib/components/dialog/index.js.map +1 -1
- package/lib/components/dialog/src/dialog.d.ts +11 -11
- package/lib/components/dialog/src/dialog.js +2 -2
- package/lib/components/dialog/src/dialog.js.map +1 -1
- package/lib/components/drawer/index.js +2 -2
- package/lib/components/drawer/index.js.map +1 -1
- package/lib/components/drawer/src/drawer.d.ts +10 -18
- package/lib/components/drawer/src/drawer.js +2 -2
- package/lib/components/drawer/src/drawer.js.map +1 -1
- package/lib/components/form/index.js +2 -2
- package/lib/components/form/index.js.map +1 -1
- package/lib/components/form/src/form.d.ts +15 -15
- package/lib/components/form/src/form.js +2 -2
- package/lib/components/form/src/form.js.map +1 -1
- package/lib/components/form/src/formItem.d.ts +14 -14
- package/lib/components/form/src/formItem.js +2 -2
- package/lib/components/form/src/formItem.js.map +1 -1
- package/lib/components/form/utils/form.js +2 -2
- package/lib/components/form/utils/form.js.map +1 -1
- package/lib/components/formItemTip/index.js +2 -2
- package/lib/components/formItemTip/index.js.map +1 -1
- package/lib/components/formItemTip/src/formItemTip.js +2 -2
- package/lib/components/formItemTip/src/formItemTip.js.map +1 -1
- package/lib/components/icon/index.js +2 -2
- package/lib/components/icon/index.js.map +1 -1
- package/lib/components/icon/src/icon.js +2 -2
- package/lib/components/icon/src/icon.js.map +1 -1
- package/lib/components/iconSelector/index.js +2 -2
- package/lib/components/iconSelector/index.js.map +1 -1
- package/lib/components/iconSelector/src/iconSelector.js +2 -2
- package/lib/components/iconSelector/src/iconSelector.js.map +1 -1
- package/lib/components/image/index.js +2 -2
- package/lib/components/image/index.js.map +1 -1
- package/lib/components/image/src/image.d.ts +13 -13
- package/lib/components/image/src/image.js +2 -2
- package/lib/components/image/src/image.js.map +1 -1
- package/lib/components/index.js +2 -2
- package/lib/components/index.js.map +1 -1
- package/lib/components/inputDialogPage/index.js +2 -2
- package/lib/components/inputDialogPage/index.js.map +1 -1
- package/lib/components/inputDialogPage/src/inputDialogPage.js +2 -2
- package/lib/components/inputDialogPage/src/inputDialogPage.js.map +1 -1
- package/lib/components/layoutGrid/index.js +2 -2
- package/lib/components/layoutGrid/index.js.map +1 -1
- package/lib/components/layoutGrid/src/layoutGrid.js +2 -2
- package/lib/components/layoutGrid/src/layoutGrid.js.map +1 -1
- package/lib/components/layoutGrid/src/layoutGrid.type.js +0 -2
- package/lib/components/layoutGrid/src/layoutGridItem.js +2 -2
- package/lib/components/layoutGrid/src/layoutGridItem.js.map +1 -1
- package/lib/components/select/index.js +2 -2
- package/lib/components/select/index.js.map +1 -1
- package/lib/components/select/src/select.d.ts +21 -21
- package/lib/components/select/src/select.js +2 -2
- package/lib/components/select/src/select.js.map +1 -1
- package/lib/components/select/src/select.type.js +0 -2
- package/lib/components/select/src/selectOption.js +2 -2
- package/lib/components/select/src/selectOption.js.map +1 -1
- package/lib/components/selectPage/index.js +2 -2
- package/lib/components/selectPage/index.js.map +1 -1
- package/lib/components/selectPage/src/selectPage.d.ts +27 -27
- package/lib/components/selectPage/src/selectPage.js +2 -2
- package/lib/components/selectPage/src/selectPage.js.map +1 -1
- package/lib/components/selectV2/index.js +2 -2
- package/lib/components/selectV2/index.js.map +1 -1
- package/lib/components/selectV2/src/selectV2.d.ts +19 -19
- package/lib/components/selectV2/src/selectV2.js +2 -2
- package/lib/components/selectV2/src/selectV2.js.map +1 -1
- package/lib/components/table/images/artwork.js +2 -0
- package/lib/components/table/images/artwork.js.map +1 -0
- package/lib/components/table/images/notImage.js +2 -0
- package/lib/components/table/images/notImage.js.map +1 -0
- package/lib/components/table/index.js +2 -2
- package/lib/components/table/index.js.map +1 -1
- package/lib/components/table/src/page.type.js +2 -2
- package/lib/components/table/src/page.type.js.map +1 -1
- package/lib/components/table/src/table.d.ts +20 -4
- package/lib/components/table/src/table.js +2 -2
- package/lib/components/table/src/table.js.map +1 -1
- package/lib/components/table/src/table.state.js +0 -2
- package/lib/components/table/src/table.type.d.ts +1 -1
- package/lib/components/table/src/table.type.js +2 -2
- package/lib/components/table/src/table.type.js.map +1 -1
- package/lib/components/table/src/tableColumn.js +2 -2
- package/lib/components/table/src/tableColumn.js.map +1 -1
- package/lib/components/table/src/tableColumnSettingDialog.js +2 -2
- package/lib/components/table/src/tableColumnSettingDialog.js.map +1 -1
- package/lib/components/table/src/tablePagination.js +2 -2
- package/lib/components/table/src/tablePagination.js.map +1 -1
- package/lib/components/table/src/tableSearchForm.js +2 -2
- package/lib/components/table/src/tableSearchForm.js.map +1 -1
- package/lib/components/table/src/tableSearchFormItem.js +2 -2
- package/lib/components/table/src/tableSearchFormItem.js.map +1 -1
- package/lib/components/table/src/useTable.js +2 -2
- package/lib/components/table/src/useTable.js.map +1 -1
- package/lib/components/table/utils/table.js +2 -2
- package/lib/components/table/utils/table.js.map +1 -1
- package/lib/components/tree/index.js +2 -2
- package/lib/components/tree/index.js.map +1 -1
- package/lib/components/tree/src/tree.d.ts +40 -40
- package/lib/components/tree/src/tree.js +2 -2
- package/lib/components/tree/src/tree.js.map +1 -1
- package/lib/components/tree/src/tree.props.js +2 -2
- package/lib/components/tree/src/tree.props.js.map +1 -1
- package/lib/components/tree/src/tree.type.js +0 -2
- package/lib/components/treeSelect/index.js +2 -2
- package/lib/components/treeSelect/index.js.map +1 -1
- package/lib/components/treeSelect/src/treeSelect.d.ts +60 -60
- package/lib/components/treeSelect/src/treeSelect.js +2 -2
- package/lib/components/treeSelect/src/treeSelect.js.map +1 -1
- package/lib/components/upload/index.js +2 -2
- package/lib/components/upload/index.js.map +1 -1
- package/lib/components/upload/src/upload.d.ts +73 -73
- package/lib/components/upload/src/upload.js +2 -2
- package/lib/components/upload/src/upload.js.map +1 -1
- package/lib/components/upload/src/useUpload.js +2 -2
- package/lib/components/upload/src/useUpload.js.map +1 -1
- package/lib/components/upload/utils/upload.js +2 -2
- package/lib/components/upload/utils/upload.js.map +1 -1
- package/lib/components/uploadImage/index.js +2 -2
- package/lib/components/uploadImage/index.js.map +1 -1
- package/lib/components/uploadImage/src/uploadImage.d.ts +69 -69
- package/lib/components/uploadImage/src/uploadImage.js +2 -2
- package/lib/components/uploadImage/src/uploadImage.js.map +1 -1
- package/lib/components/uploadImages/index.js +2 -2
- package/lib/components/uploadImages/index.js.map +1 -1
- package/lib/components/uploadImages/src/uploadImages.d.ts +70 -70
- package/lib/components/uploadImages/src/uploadImages.js +2 -2
- package/lib/components/uploadImages/src/uploadImages.js.map +1 -1
- package/lib/constants/index.js +1 -2
- package/lib/constants/mime.js +2 -2
- package/lib/constants/mime.js.map +1 -1
- package/lib/constants/regex.js +2 -2
- package/lib/constants/regex.js.map +1 -1
- package/lib/directive.js +2 -2
- package/lib/directive.js.map +1 -1
- package/lib/directives/click-copy/index.js +2 -2
- package/lib/directives/click-copy/index.js.map +1 -1
- package/lib/directives/click-debounce/index.js +2 -2
- package/lib/directives/click-debounce/index.js.map +1 -1
- package/lib/directives/click-draggable/index.js +2 -2
- package/lib/directives/click-draggable/index.js.map +1 -1
- package/lib/directives/click-icon-copy/index.js +2 -2
- package/lib/directives/click-icon-copy/index.js.map +1 -1
- package/lib/directives/click-longpress/index.js +2 -2
- package/lib/directives/click-longpress/index.js.map +1 -1
- package/lib/directives/click-throttle/index.js +2 -2
- package/lib/directives/click-throttle/index.js.map +1 -1
- package/lib/directives/index.js +1 -2
- package/lib/element-plus.js +2 -2
- package/lib/element-plus.js.map +1 -1
- package/lib/hooks/index.js +1 -2
- package/lib/hooks/use-loading/index.js +2 -2
- package/lib/hooks/use-loading/index.js.map +1 -1
- package/lib/hooks/use-overlay/index.js +2 -2
- package/lib/hooks/use-overlay/index.js.map +1 -1
- package/lib/hooks/use-screenFull/index.js +2 -2
- package/lib/hooks/use-screenFull/index.js.map +1 -1
- package/lib/index.js +2 -2
- package/lib/index.js.map +1 -1
- package/lib/make-installer.js +2 -2
- package/lib/make-installer.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +2 -2
- package/lib/version.js.map +1 -1
- package/package.json +7 -7
- package/styles/components/carNumber.scss +1 -1
- package/styles/components/dialog.scss +1 -1
- package/styles/components/drawer.scss +1 -1
- package/es/components/contextMenu/src/contextMenu.type.mjs.map +0 -1
- package/es/components/layoutGrid/src/layoutGrid.type.mjs.map +0 -1
- package/es/components/select/src/select.type.mjs.map +0 -1
- package/es/components/table/images/artwork.png.mjs +0 -2
- package/es/components/table/images/artwork.png.mjs.map +0 -1
- package/es/components/table/images/notImage.png.mjs +0 -2
- package/es/components/table/images/notImage.png.mjs.map +0 -1
- package/es/components/table/src/table.state.mjs.map +0 -1
- package/es/components/tree/src/tree.type.mjs.map +0 -1
- package/es/constants/index.mjs.map +0 -1
- package/es/directives/index.mjs.map +0 -1
- package/es/hooks/index.mjs.map +0 -1
- package/lib/components/contextMenu/src/contextMenu.type.js.map +0 -1
- package/lib/components/layoutGrid/src/layoutGrid.type.js.map +0 -1
- package/lib/components/select/src/select.type.js.map +0 -1
- package/lib/components/table/images/artwork.png.js +0 -2
- package/lib/components/table/images/artwork.png.js.map +0 -1
- package/lib/components/table/images/notImage.png.js +0 -2
- package/lib/components/table/images/notImage.png.js.map +0 -1
- package/lib/components/table/src/table.state.js.map +0 -1
- package/lib/components/tree/src/tree.type.js.map +0 -1
- package/lib/constants/index.js.map +0 -1
- package/lib/directives/index.js.map +0 -1
- package/lib/hooks/index.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tableSearchForm.js","sources":["../../../../../packages/components/table/src/tableSearchForm.tsx"],"sourcesContent":["import { computed, defineComponent, inject, reactive, ref, watch } from \"vue\";\nimport { ElButton, ElIcon, useGlobalSize } from \"element-plus\";\nimport { ArrowDown, ArrowUp, Eleme, Refresh, Search } from \"@element-plus/icons-vue\";\nimport { FaDrawer } from \"@fast-element-plus/components/drawer\";\nimport { FaLayoutGrid, FaLayoutGridItem } from \"@fast-element-plus/components/layoutGrid\";\nimport { Brush } from \"@fast-element-plus/icons-vue\";\nimport { definePropType, makeSlots, useRender, withDefineType } from \"@fast-china/utils\";\nimport { getTableDefaultSlots } from \"./table.type\";\nimport FaTableSearchFormItem from \"./tableSearchFormItem\";\nimport { tableStateKey } from \"./useTable\";\nimport type { FaTableColumnCtx, FaTableDefaultSlotsResult, FaTableSearchColumnCtx } from \"./table.type\";\nimport type { FaDrawerInstance } from \"@fast-element-plus/components/drawer\";\nimport type { FaLayoutGridBreakPoint, FaLayoutGridInstance, FaLayoutGridItemResponsive } from \"@fast-element-plus/components/layoutGrid\";\n\ntype FaTableSearchFormSlots = {\n\t[key: string]: FaTableDefaultSlotsResult & {\n\t\tcolumn?: FaTableColumnCtx;\n\t\tsearch?: () => void;\n\t};\n};\n\nexport default defineComponent({\n\tname: \"FaTableSearchForm\",\n\tprops: {\n\t\t/** @description 显示 */\n\t\tshow: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t\t/** @description 折叠搜素 */\n\t\tcollapsedSearch: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t\t/** @description 高级搜素抽屉 */\n\t\tadvancedSearchDrawer: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\t/** @description Grid布局列配置 */\n\t\tcols: {\n\t\t\ttype: definePropType<string | number | Record<FaLayoutGridBreakPoint, number>>([String, Number, Object]),\n\t\t\tdefault: () => ({ xs: 2, sm: 3, md: 4, lg: 5, xl: 6 }),\n\t\t},\n\t\t/** @description 搜索 */\n\t\tsearch: {\n\t\t\ttype: definePropType<() => void>(Function),\n\t\t\trequired: true,\n\t\t},\n\t\t/** @description 重置 */\n\t\treset: {\n\t\t\ttype: definePropType<() => void>(Function),\n\t\t\trequired: true,\n\t\t},\n\t},\n\tslots: makeSlots<FaTableSearchFormSlots>(),\n\tsetup(props, { slots, expose }) {\n\t\tconst _globalSize = useGlobalSize();\n\n\t\t// 获取响应式断点\n\t\tconst gridRef = ref<FaLayoutGridInstance>();\n\n\t\tconst tableState = inject(tableStateKey);\n\n\t\tconst breakPoint = computed<FaLayoutGridBreakPoint>(() => gridRef.value?.breakPoint);\n\n\t\tconst state = reactive({\n\t\t\trefreshing: false,\n\t\t\theight: \"auto\",\n\t\t\t/** 折叠 */\n\t\t\tcollapsed: true,\n\t\t\t/** 显示折叠 */\n\t\t\tshowCollapsed: computed(() => {\n\t\t\t\tlet show = false;\n\t\t\t\ttableState.searchColumns.reduce((prev, current) => {\n\t\t\t\t\tprev +=\n\t\t\t\t\t\t(current.search[breakPoint.value]?.span ?? current.search?.span ?? 1) +\n\t\t\t\t\t\t(current.search[breakPoint.value]?.offset ?? current.search?.offset ?? 0);\n\t\t\t\t\tif (typeof props.cols !== \"number\") {\n\t\t\t\t\t\tif (prev >= props.cols[breakPoint.value]) show = true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (prev >= props.cols) show = true;\n\t\t\t\t\t}\n\t\t\t\t\treturn prev;\n\t\t\t\t}, 0);\n\t\t\t\treturn show;\n\t\t\t}),\n\t\t\tsearchColumns: withDefineType<FaTableColumnCtx[]>([]),\n\t\t\tadvancedSearchColumns: withDefineType<FaTableColumnCtx[]>([]),\n\t\t\tbreakPoint: undefined,\n\t\t});\n\n\t\tconst faTableSearchFormRef = ref<HTMLElement>();\n\t\tconst advancedSearchRef = ref<FaDrawerInstance>();\n\n\t\t// 获取响应式设置\n\t\tconst getResponsive = (\n\t\t\titem: FaTableSearchColumnCtx\n\t\t): {\n\t\t\tspan: number;\n\t\t\toffset: number;\n\t\t\txs: FaLayoutGridItemResponsive;\n\t\t\tsm: FaLayoutGridItemResponsive;\n\t\t\tmd: FaLayoutGridItemResponsive;\n\t\t\tlg: FaLayoutGridItemResponsive;\n\t\t\txl: FaLayoutGridItemResponsive;\n\t\t} => {\n\t\t\treturn {\n\t\t\t\tspan: item?.span,\n\t\t\t\toffset: item?.offset ?? 0,\n\t\t\t\txs: item?.xs,\n\t\t\t\tsm: item?.sm,\n\t\t\t\tmd: item?.md,\n\t\t\t\tlg: item?.lg,\n\t\t\t\txl: item?.xl,\n\t\t\t};\n\t\t};\n\n\t\tconst handleBreakPointChange = ({ breakPoint }: { breakPoint: FaLayoutGridBreakPoint }): void => {\n\t\t\t// 这里 -1 是排除固定的\n\t\t\tstate.breakPoint = props.cols[breakPoint] - 1;\n\t\t\tstate.searchColumns = tableState.searchColumns.filter((f) => f?.show).slice(0, state.breakPoint);\n\t\t\tstate.advancedSearchColumns = tableState.searchColumns.filter((f) => f?.show).slice(state.breakPoint);\n\t\t};\n\n\t\twatch(\n\t\t\t() => tableState.searchColumns,\n\t\t\t() => {\n\t\t\t\tif (state.breakPoint) {\n\t\t\t\t\tstate.searchColumns = tableState.searchColumns.filter((f) => f?.show).slice(0, state.breakPoint);\n\t\t\t\t\tstate.advancedSearchColumns = tableState.searchColumns.filter((f) => f?.show).slice(state.breakPoint);\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\tconst searchColumns = computed(() => (props.advancedSearchDrawer ? state.searchColumns : tableState.searchColumns));\n\n\t\twatch(\n\t\t\t() => props.advancedSearchDrawer,\n\t\t\t(newValue) => {\n\t\t\t\tif (newValue) {\n\t\t\t\t\t// 抽屉默认折叠\n\t\t\t\t\tstate.collapsed = true;\n\t\t\t\t} else {\n\t\t\t\t\tstate.collapsed = props.collapsedSearch;\n\t\t\t\t}\n\t\t\t\tstate.refreshing = true;\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tstate.refreshing = false;\n\t\t\t\t}, 1);\n\t\t\t}\n\t\t);\n\n\t\twatch(\n\t\t\t() => props.collapsedSearch,\n\t\t\t(newValue) => {\n\t\t\t\tif (!props.collapsedSearch) {\n\t\t\t\t\tstate.collapsed = newValue;\n\t\t\t\t} else {\n\t\t\t\t\t// 抽屉默认折叠\n\t\t\t\t\tstate.collapsed = true;\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\timmediate: true,\n\t\t\t}\n\t\t);\n\n\t\tuseRender(\n\t\t\t() =>\n\t\t\t\ttableState.searchColumns.length > 0 && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tref={faTableSearchFormRef}\n\t\t\t\t\t\tclass={[\n\t\t\t\t\t\t\t\"el-card fa-table__search\",\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\"fa-table__search-hidden\": !props.show,\n\t\t\t\t\t\t\t\t\"fa-table__search__disable\": tableState.loading,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t]}\n\t\t\t\t\t>\n\t\t\t\t\t\t<form class=\"el-form el-form--default el-form--label-right\">\n\t\t\t\t\t\t\t{!state.refreshing && (\n\t\t\t\t\t\t\t\t<FaLayoutGrid\n\t\t\t\t\t\t\t\t\tref={gridRef}\n\t\t\t\t\t\t\t\t\tcollapsed={state.collapsed}\n\t\t\t\t\t\t\t\t\tgap={_globalSize.value === \"small\" ? [20, 0] : [20, 10]}\n\t\t\t\t\t\t\t\t\tcols={props.cols}\n\t\t\t\t\t\t\t\t\tonBreakPointChange={handleBreakPointChange}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{searchColumns.value.map((item, index) => (\n\t\t\t\t\t\t\t\t\t\t<FaLayoutGridItem key={item?.search?.key ?? item.prop} {...getResponsive(item.search)} index={index}>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"el-form-item el-form-item--default el-form-item--label-right\">\n\t\t\t\t\t\t\t\t\t\t\t\t<label class=\"el-form-item__label\">{item.search.label}</label>\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"el-form-item__content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t{item.search?.slot ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tslots[item.search.slot] &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tslots[item.search.slot]({\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolumn: item,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsearch: props.search,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t...getTableDefaultSlots(tableState),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<FaTableSearchFormItem column={item} search={props.search} />\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t</FaLayoutGridItem>\n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t<FaLayoutGridItem suffix>\n\t\t\t\t\t\t\t\t\t\t<div class=\"fa-table__search-operation\">\n\t\t\t\t\t\t\t\t\t\t\t<ElButton\n\t\t\t\t\t\t\t\t\t\t\t\tloading={tableState.loading}\n\t\t\t\t\t\t\t\t\t\t\t\tloadingIcon={Eleme}\n\t\t\t\t\t\t\t\t\t\t\t\ttitle=\"搜索\"\n\t\t\t\t\t\t\t\t\t\t\t\ttype=\"primary\"\n\t\t\t\t\t\t\t\t\t\t\t\tplain\n\t\t\t\t\t\t\t\t\t\t\t\ticon={Refresh}\n\t\t\t\t\t\t\t\t\t\t\t\tonClick={() => props.search()}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t搜索\n\t\t\t\t\t\t\t\t\t\t\t</ElButton>\n\t\t\t\t\t\t\t\t\t\t\t<ElButton\n\t\t\t\t\t\t\t\t\t\t\t\tloading={tableState.loading}\n\t\t\t\t\t\t\t\t\t\t\t\tloadingIcon={Eleme}\n\t\t\t\t\t\t\t\t\t\t\t\ttitle=\"重置\"\n\t\t\t\t\t\t\t\t\t\t\t\ticon={Brush}\n\t\t\t\t\t\t\t\t\t\t\t\tonClick={() => props.reset()}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t重置\n\t\t\t\t\t\t\t\t\t\t\t</ElButton>\n\t\t\t\t\t\t\t\t\t\t\t{props.advancedSearchDrawer\n\t\t\t\t\t\t\t\t\t\t\t\t? state.advancedSearchColumns.length > 0 && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ElButton\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tloading={tableState.loading}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tloadingIcon={Eleme}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttitle=\"高级搜索\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttype=\"info\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tplain\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ticon={Search}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={() => advancedSearchRef.value.open()}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t高级搜索\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</ElButton>\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t: state.showCollapsed && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ElButton\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tloading={tableState.loading}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tloadingIcon={Eleme}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttitle={state.collapsed ? \"展开\" : \"折叠\"}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlink\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttype=\"primary\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstate.collapsed = !state.collapsed;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{state.collapsed ? \"展开\" : \"折叠\"}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ElIcon>{state.collapsed ? <ArrowDown /> : <ArrowUp />}</ElIcon>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</ElButton>\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</FaLayoutGridItem>\n\t\t\t\t\t\t\t\t</FaLayoutGrid>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</form>\n\t\t\t\t\t\t{props.advancedSearchDrawer && state.advancedSearchColumns.length > 0 && (\n\t\t\t\t\t\t\t<FaDrawer\n\t\t\t\t\t\t\t\tref={advancedSearchRef}\n\t\t\t\t\t\t\t\tclass=\"fa-table__search-advanced\"\n\t\t\t\t\t\t\t\tsize=\"20%\"\n\t\t\t\t\t\t\t\ttitle=\"高级搜索\"\n\t\t\t\t\t\t\t\tappendToBody={false}\n\t\t\t\t\t\t\t\tshowCloseButton={false}\n\t\t\t\t\t\t\t\tshowConfirmButton={false}\n\t\t\t\t\t\t\t\tshowFullscreen={false}\n\t\t\t\t\t\t\t\tshowRefresh={false}\n\t\t\t\t\t\t\t\tonConfirmClick={() => props.search()}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<form class=\"el-form el-form--default el-form--label-top\">\n\t\t\t\t\t\t\t\t\t<FaLayoutGrid gap={[20, 0]} cols={{ xs: 2, sm: 3, md: 4, lg: 5, xl: 6 }}>\n\t\t\t\t\t\t\t\t\t\t{state.advancedSearchColumns.map((item, index) => (\n\t\t\t\t\t\t\t\t\t\t\t<FaLayoutGridItem key={item.prop ?? item?.search?.key} {...getResponsive(item.search)} index={index}>\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"el-form-item el-form-item--default el-form-item--label-top\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<label class=\"el-form-item__label\">{item.search.label}</label>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"el-form-item__content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{item.search.slot ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tslots[item.search.slot] &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tslots[item.search.slot]({\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolumn: item,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsearch: props.search,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t...getTableDefaultSlots(tableState),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<FaTableSearchFormItem column={item} search={props.search} />\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t</FaLayoutGridItem>\n\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t</FaLayoutGrid>\n\t\t\t\t\t\t\t\t</form>\n\t\t\t\t\t\t\t</FaDrawer>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)\n\t\t);\n\t},\n});\n"],"names":["TableSearchForm","name","props","show","type","Boolean","required","collapsedSearch","default","advancedSearchDrawer","cols","definePropType","String","Number","Object","xs","sm","md","lg","xl","search","Function","reset","slots","makeSlots","setup","expose","_globalSize","useGlobalSize","gridRef","ref","tableState","inject","tableStateKey","breakPoint","computed","value","state","reactive","refreshing","height","collapsed","showCollapsed","searchColumns","reduce","prev","current","span","offset","withDefineType","advancedSearchColumns","undefined","faTableSearchFormRef","advancedSearchRef","getResponsive","item","handleBreakPointChange","filter","f","slice","watch","newValue","setTimeout","immediate","useRender","_slot","length","_createVNode","class","loading","FaLayoutGrid","gap","onBreakPointChange","map","index","FaLayoutGridItem","_mergeProps","key","prop","label","slot","column","getTableDefaultSlots","FaTableSearchFormItem","suffix","ElButton","loadingIcon","Eleme","title","plain","icon","Refresh","onClick","_createTextVNode","Brush","Search","open","link","ElIcon","ArrowDown","ArrowUp","FaDrawer","size","appendToBody","showCloseButton","showConfirmButton","showFullscreen","showRefresh","onConfirmClick","s","prototype","toString","call","_isVNode"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tableSearchForm.js","names":["computed","defineComponent","inject","reactive","ref","watch","createVNode","_createVNode","mergeProps","_mergeProps","createTextVNode","_createTextVNode","isVNode","_isVNode","ElButton","ElIcon","useGlobalSize","ArrowDown","ArrowUp","Eleme","Refresh","Search","FaDrawer","FaLayoutGrid","FaLayoutGridItem","Brush","definePropType","makeSlots","useRender","withDefineType","getTableDefaultSlots","FaTableSearchFormItem","tableStateKey","_isSlot","s","Object","prototype","toString","call","name","props","show","type","Boolean","required","collapsedSearch","default","advancedSearchDrawer","cols","String","Number","xs","sm","md","lg","xl","search","Function","reset","slots","setup","expose","_globalSize","gridRef","tableState","breakPoint","value","state","refreshing","height","collapsed","showCollapsed","searchColumns","reduce","prev","current","span","offset","advancedSearchColumns","undefined","faTableSearchFormRef","advancedSearchRef","getResponsive","item","handleBreakPointChange","filter","f","slice","newValue","setTimeout","immediate","_slot","length","loading","map","index","key","prop","label","slot","column","onClick","open","onConfirmClick"],"sources":["../../../../../packages/components/table/src/tableSearchForm.tsx"],"sourcesContent":["import { computed, defineComponent, inject, reactive, ref, watch } from \"vue\";\nimport { ElButton, ElIcon, useGlobalSize } from \"element-plus\";\nimport { ArrowDown, ArrowUp, Eleme, Refresh, Search } from \"@element-plus/icons-vue\";\nimport { FaDrawer } from \"@fast-element-plus/components/drawer\";\nimport { FaLayoutGrid, FaLayoutGridItem } from \"@fast-element-plus/components/layoutGrid\";\nimport { Brush } from \"@fast-element-plus/icons-vue\";\nimport { definePropType, makeSlots, useRender, withDefineType } from \"@fast-china/utils\";\nimport { getTableDefaultSlots } from \"./table.type\";\nimport FaTableSearchFormItem from \"./tableSearchFormItem\";\nimport { tableStateKey } from \"./useTable\";\nimport type { FaTableColumnCtx, FaTableDefaultSlotsResult, FaTableSearchColumnCtx } from \"./table.type\";\nimport type { FaDrawerInstance } from \"@fast-element-plus/components/drawer\";\nimport type { FaLayoutGridBreakPoint, FaLayoutGridInstance, FaLayoutGridItemResponsive } from \"@fast-element-plus/components/layoutGrid\";\n\ntype FaTableSearchFormSlots = {\n\t[key: string]: FaTableDefaultSlotsResult & {\n\t\tcolumn?: FaTableColumnCtx;\n\t\tsearch?: () => void;\n\t};\n};\n\nexport default defineComponent({\n\tname: \"FaTableSearchForm\",\n\tprops: {\n\t\t/** @description 显示 */\n\t\tshow: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t\t/** @description 折叠搜素 */\n\t\tcollapsedSearch: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t\t/** @description 高级搜素抽屉 */\n\t\tadvancedSearchDrawer: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\t/** @description Grid布局列配置 */\n\t\tcols: {\n\t\t\ttype: definePropType<string | number | Record<FaLayoutGridBreakPoint, number>>([String, Number, Object]),\n\t\t\tdefault: () => ({ xs: 2, sm: 3, md: 4, lg: 5, xl: 6 }),\n\t\t},\n\t\t/** @description 搜索 */\n\t\tsearch: {\n\t\t\ttype: definePropType<() => void>(Function),\n\t\t\trequired: true,\n\t\t},\n\t\t/** @description 重置 */\n\t\treset: {\n\t\t\ttype: definePropType<() => void>(Function),\n\t\t\trequired: true,\n\t\t},\n\t},\n\tslots: makeSlots<FaTableSearchFormSlots>(),\n\tsetup(props, { slots, expose }) {\n\t\tconst _globalSize = useGlobalSize();\n\n\t\t// 获取响应式断点\n\t\tconst gridRef = ref<FaLayoutGridInstance>();\n\n\t\tconst tableState = inject(tableStateKey);\n\n\t\tconst breakPoint = computed<FaLayoutGridBreakPoint>(() => gridRef.value?.breakPoint);\n\n\t\tconst state = reactive({\n\t\t\trefreshing: false,\n\t\t\theight: \"auto\",\n\t\t\t/** 折叠 */\n\t\t\tcollapsed: true,\n\t\t\t/** 显示折叠 */\n\t\t\tshowCollapsed: computed(() => {\n\t\t\t\tlet show = false;\n\t\t\t\ttableState.searchColumns.reduce((prev, current) => {\n\t\t\t\t\tprev +=\n\t\t\t\t\t\t(current.search[breakPoint.value]?.span ?? current.search?.span ?? 1) +\n\t\t\t\t\t\t(current.search[breakPoint.value]?.offset ?? current.search?.offset ?? 0);\n\t\t\t\t\tif (typeof props.cols !== \"number\") {\n\t\t\t\t\t\tif (prev >= props.cols[breakPoint.value]) show = true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (prev >= props.cols) show = true;\n\t\t\t\t\t}\n\t\t\t\t\treturn prev;\n\t\t\t\t}, 0);\n\t\t\t\treturn show;\n\t\t\t}),\n\t\t\tsearchColumns: withDefineType<FaTableColumnCtx[]>([]),\n\t\t\tadvancedSearchColumns: withDefineType<FaTableColumnCtx[]>([]),\n\t\t\tbreakPoint: undefined,\n\t\t});\n\n\t\tconst faTableSearchFormRef = ref<HTMLElement>();\n\t\tconst advancedSearchRef = ref<FaDrawerInstance>();\n\n\t\t// 获取响应式设置\n\t\tconst getResponsive = (\n\t\t\titem: FaTableSearchColumnCtx\n\t\t): {\n\t\t\tspan: number;\n\t\t\toffset: number;\n\t\t\txs: FaLayoutGridItemResponsive;\n\t\t\tsm: FaLayoutGridItemResponsive;\n\t\t\tmd: FaLayoutGridItemResponsive;\n\t\t\tlg: FaLayoutGridItemResponsive;\n\t\t\txl: FaLayoutGridItemResponsive;\n\t\t} => {\n\t\t\treturn {\n\t\t\t\tspan: item?.span,\n\t\t\t\toffset: item?.offset ?? 0,\n\t\t\t\txs: item?.xs,\n\t\t\t\tsm: item?.sm,\n\t\t\t\tmd: item?.md,\n\t\t\t\tlg: item?.lg,\n\t\t\t\txl: item?.xl,\n\t\t\t};\n\t\t};\n\n\t\tconst handleBreakPointChange = ({ breakPoint }: { breakPoint: FaLayoutGridBreakPoint }): void => {\n\t\t\t// 这里 -1 是排除固定的\n\t\t\tstate.breakPoint = props.cols[breakPoint] - 1;\n\t\t\tstate.searchColumns = tableState.searchColumns.filter((f) => f?.show).slice(0, state.breakPoint);\n\t\t\tstate.advancedSearchColumns = tableState.searchColumns.filter((f) => f?.show).slice(state.breakPoint);\n\t\t};\n\n\t\twatch(\n\t\t\t() => tableState.searchColumns,\n\t\t\t() => {\n\t\t\t\tif (state.breakPoint) {\n\t\t\t\t\tstate.searchColumns = tableState.searchColumns.filter((f) => f?.show).slice(0, state.breakPoint);\n\t\t\t\t\tstate.advancedSearchColumns = tableState.searchColumns.filter((f) => f?.show).slice(state.breakPoint);\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\t// @ts-ignore ts(2589)\n\t\tconst searchColumns = computed(() => (props.advancedSearchDrawer ? state.searchColumns : tableState.searchColumns));\n\n\t\twatch(\n\t\t\t() => props.advancedSearchDrawer,\n\t\t\t(newValue) => {\n\t\t\t\tif (newValue) {\n\t\t\t\t\t// 抽屉默认折叠\n\t\t\t\t\tstate.collapsed = true;\n\t\t\t\t} else {\n\t\t\t\t\tstate.collapsed = props.collapsedSearch;\n\t\t\t\t}\n\t\t\t\tstate.refreshing = true;\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tstate.refreshing = false;\n\t\t\t\t}, 1);\n\t\t\t}\n\t\t);\n\n\t\twatch(\n\t\t\t() => props.collapsedSearch,\n\t\t\t(newValue) => {\n\t\t\t\tif (!props.collapsedSearch) {\n\t\t\t\t\tstate.collapsed = newValue;\n\t\t\t\t} else {\n\t\t\t\t\t// 抽屉默认折叠\n\t\t\t\t\tstate.collapsed = true;\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\timmediate: true,\n\t\t\t}\n\t\t);\n\n\t\tuseRender(\n\t\t\t() =>\n\t\t\t\ttableState.searchColumns.length > 0 && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tref={faTableSearchFormRef}\n\t\t\t\t\t\tclass={[\n\t\t\t\t\t\t\t\"el-card fa-table__search\",\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\"fa-table__search-hidden\": !props.show,\n\t\t\t\t\t\t\t\t\"fa-table__search__disable\": tableState.loading,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t]}\n\t\t\t\t\t>\n\t\t\t\t\t\t<form class=\"el-form el-form--default el-form--label-right\">\n\t\t\t\t\t\t\t{!state.refreshing && (\n\t\t\t\t\t\t\t\t<FaLayoutGrid\n\t\t\t\t\t\t\t\t\tref={gridRef}\n\t\t\t\t\t\t\t\t\tcollapsed={state.collapsed}\n\t\t\t\t\t\t\t\t\tgap={_globalSize.value === \"small\" ? [20, 0] : [20, 10]}\n\t\t\t\t\t\t\t\t\tcols={props.cols}\n\t\t\t\t\t\t\t\t\tonBreakPointChange={handleBreakPointChange}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{searchColumns.value.map((item, index) => (\n\t\t\t\t\t\t\t\t\t\t<FaLayoutGridItem key={item?.search?.key ?? item.prop} {...getResponsive(item.search)} index={index}>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"el-form-item el-form-item--default el-form-item--label-right\">\n\t\t\t\t\t\t\t\t\t\t\t\t<label class=\"el-form-item__label\">{item.search.label}</label>\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"el-form-item__content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t{item.search?.slot ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tslots[item.search.slot] &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tslots[item.search.slot]({\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolumn: item,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsearch: props.search,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t...getTableDefaultSlots(tableState),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<FaTableSearchFormItem column={item} search={props.search} />\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t</FaLayoutGridItem>\n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t<FaLayoutGridItem suffix>\n\t\t\t\t\t\t\t\t\t\t<div class=\"fa-table__search-operation\">\n\t\t\t\t\t\t\t\t\t\t\t<ElButton\n\t\t\t\t\t\t\t\t\t\t\t\tloading={tableState.loading}\n\t\t\t\t\t\t\t\t\t\t\t\tloadingIcon={Eleme}\n\t\t\t\t\t\t\t\t\t\t\t\ttitle=\"搜索\"\n\t\t\t\t\t\t\t\t\t\t\t\ttype=\"primary\"\n\t\t\t\t\t\t\t\t\t\t\t\tplain\n\t\t\t\t\t\t\t\t\t\t\t\ticon={Refresh}\n\t\t\t\t\t\t\t\t\t\t\t\tonClick={() => props.search()}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t搜索\n\t\t\t\t\t\t\t\t\t\t\t</ElButton>\n\t\t\t\t\t\t\t\t\t\t\t<ElButton\n\t\t\t\t\t\t\t\t\t\t\t\tloading={tableState.loading}\n\t\t\t\t\t\t\t\t\t\t\t\tloadingIcon={Eleme}\n\t\t\t\t\t\t\t\t\t\t\t\ttitle=\"重置\"\n\t\t\t\t\t\t\t\t\t\t\t\ticon={Brush}\n\t\t\t\t\t\t\t\t\t\t\t\tonClick={() => props.reset()}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t重置\n\t\t\t\t\t\t\t\t\t\t\t</ElButton>\n\t\t\t\t\t\t\t\t\t\t\t{props.advancedSearchDrawer\n\t\t\t\t\t\t\t\t\t\t\t\t? state.advancedSearchColumns.length > 0 && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ElButton\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tloading={tableState.loading}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tloadingIcon={Eleme}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttitle=\"高级搜索\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttype=\"info\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tplain\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ticon={Search}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={() => advancedSearchRef.value.open()}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t高级搜索\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</ElButton>\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t: state.showCollapsed && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ElButton\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tloading={tableState.loading}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tloadingIcon={Eleme}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttitle={state.collapsed ? \"展开\" : \"折叠\"}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlink\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttype=\"primary\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstate.collapsed = !state.collapsed;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{state.collapsed ? \"展开\" : \"折叠\"}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<ElIcon>{state.collapsed ? <ArrowDown /> : <ArrowUp />}</ElIcon>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</ElButton>\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</FaLayoutGridItem>\n\t\t\t\t\t\t\t\t</FaLayoutGrid>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</form>\n\t\t\t\t\t\t{props.advancedSearchDrawer && state.advancedSearchColumns.length > 0 && (\n\t\t\t\t\t\t\t<FaDrawer\n\t\t\t\t\t\t\t\tref={advancedSearchRef}\n\t\t\t\t\t\t\t\tclass=\"fa-table__search-advanced\"\n\t\t\t\t\t\t\t\tsize=\"20%\"\n\t\t\t\t\t\t\t\ttitle=\"高级搜索\"\n\t\t\t\t\t\t\t\tappendToBody={false}\n\t\t\t\t\t\t\t\tshowCloseButton={false}\n\t\t\t\t\t\t\t\tshowConfirmButton={false}\n\t\t\t\t\t\t\t\tshowFullscreen={false}\n\t\t\t\t\t\t\t\tshowRefresh={false}\n\t\t\t\t\t\t\t\tonConfirmClick={() => props.search()}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<form class=\"el-form el-form--default el-form--label-top\">\n\t\t\t\t\t\t\t\t\t<FaLayoutGrid gap={[20, 0]} cols={{ xs: 2, sm: 3, md: 4, lg: 5, xl: 6 }}>\n\t\t\t\t\t\t\t\t\t\t{state.advancedSearchColumns.map((item, index) => (\n\t\t\t\t\t\t\t\t\t\t\t<FaLayoutGridItem key={item.prop ?? item?.search?.key} {...getResponsive(item.search)} index={index}>\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"el-form-item el-form-item--default el-form-item--label-top\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<label class=\"el-form-item__label\">{item.search.label}</label>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"el-form-item__content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{item.search.slot ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tslots[item.search.slot] &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tslots[item.search.slot]({\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolumn: item,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsearch: props.search,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t...getTableDefaultSlots(tableState),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<FaTableSearchFormItem column={item} search={props.search} />\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t</FaLayoutGridItem>\n\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t</FaLayoutGrid>\n\t\t\t\t\t\t\t\t</form>\n\t\t\t\t\t\t\t</FaDrawer>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)\n\t\t);\n\t},\n});\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"
|
|
2
|
-
//# sourceMappingURL=tableSearchFormItem.js.map
|
|
1
|
+
require("../../../_virtual/_rolldown/runtime.js");const e=require("./table.type.js"),l=require("./useTable.js");let t=require("@fast-china/utils"),c=require("vue"),r=require("element-plus"),a=require("lodash-unified");var s=["el-input","ELInput","el-input-number","ELInputNumber","el-select","ElSelect","el-select-v2","ElSelectV2","el-tree-select","ElTreeSelect","el-cascader","ElCascader","el-date-picker","ElDatePicker","el-time-picker","ElTimePicker","el-time-select","ElTimeSelect"],n=["el-select","ElSelect","el-select-v2","ElSelectV2","el-tree-select","ElTreeSelect"],u=["el-input","ELInput","el-input-number","ELInputNumber"],i=["el-select","ElSelect","el-select-v2","ElSelectV2","el-tree-select","ElTreeSelect","el-cascader","ElCascader"],o=(0,c.defineComponent)({name:"FaTableSearchFormItem",props:{column:{type:(0,t.definePropType)(Object),required:!0,default:{}},search:{type:(0,t.definePropType)(Function),required:!0}},slots:(0,t.makeSlots)(),setup(o,{slots:d}){const m=(0,c.inject)(l.tableStateKey),p=(0,c.inject)(l.enumMapKey),h=(0,c.reactive)({enumDict:(0,t.withDefineType)([])}),E=e=>{(0,a.isString)(e)&&(e=e.trim()),m.searchParam[o.column?.search?.key??o.column.prop]=e},S=e=>{o.search()},b=()=>{const e=o.column.search,l={};if(s.includes(e?.el)&&(l.clearable=!0),n.includes(e?.el)&&(l.filterable=!0),u.includes(e?.el)&&(l.placeholder="请输入"),i.includes(e?.el)&&(l.placeholder="请选择"),["el-date-picker","ElDatePicker"].includes(e?.el)&&(l.unlinkPanels=!0,["datetimerange","daterange","monthrange","yearrange"].includes(e?.props?.type)?(l.defaultTime=t.dateUtil.getDefaultTime(),l.shortcuts=t.dateUtil.getShortcuts(),l.rangeSeparator="至",l.startPlaceholder="开始时间",l.endPlaceholder="结束时间"):(l.defaultTime=t.dateUtil.getSimpleTime(),l.shortcuts=t.dateUtil.getSimpleShortcuts(),l.placeholder="请选择")),["el-time-picker","ElTimePicker"].includes(e?.el)&&e?.props?.isRange&&(l.rangeSeparator="至",l.startPlaceholder="开始时间",l.endPlaceholder="结束时间"),["el-select","ElSelect","el-select-v2","ElSelectV2","el-cascader","ElCascader","el-tree-select","ElTreeSelect"].includes(e?.el)){let e;e=o.column.enum&&(0,a.isString)(o.column.enum)?p.get(o.column.enum):p.get(o.column.prop??o.column.search?.key),e=e.filter(e=>!1!==e?.show),h.enumDict=e??[]}return["el-select-v2","ElSelectV2","el-cascader","ElCascader"].includes(e?.el)&&(l.options=h.enumDict),["el-tree-select","ElTreeSelect"].includes(e?.el)&&(l.data=h.enumDict),l};(0,t.useRender)(()=>(0,c.createVNode)(c.Fragment,null,[o.column.search?.el&&(0,c.h)((0,c.resolveComponent)(o.column.search.el),{...b(),...o.column.search.props,modelValue:m.searchParam[o.column?.search?.key??o.column.prop],"onUpdate:modelValue":E,onChange:S},{default:()=>["el-select","ElSelect"].includes(o.column.search.el)?h.enumDict.map((e,l)=>(0,c.h)(r.ElOption,{key:l,label:e[o.column.search.props?.label??"label"],value:e[o.column.search.props?.value??"value"],disabled:e[o.column.search.props?.disabled??"disabled"]})):d.default&&d.default({column:o.column,search:o.search,...e.getTableDefaultSlots(m)})})]))}});exports.default=o;
|
|
2
|
+
//# sourceMappingURL=tableSearchFormItem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tableSearchFormItem.js","sources":["../../../../../packages/components/table/src/tableSearchFormItem.tsx"],"sourcesContent":["import { Fragment, defineComponent, h, inject, reactive, resolveComponent } from \"vue\";\nimport { ElOption } from \"element-plus\";\nimport { dateUtil, definePropType, makeSlots, useRender, withDefineType } from \"@fast-china/utils\";\nimport { isString } from \"lodash-unified\";\nimport { getTableDefaultSlots } from \"./table.type\";\nimport { enumMapKey, tableStateKey } from \"./useTable\";\nimport type { FaTableColumnCtx, FaTableDefaultSlotsResult, FaTableEnumColumnCtx } from \"./table.type\";\n\n/**\n * 已知默认支持的el组件:\n * \tel-input\n * \tel-input-number\n * \tel-select\n * \tel-select-v2\n * \tel-tree-select\n * \tel-cascader\n * \tel-date-picker\n * \tel-time-picker\n * \tel-time-select,\n * \tel-switch\n * 已知组件的默认props\n * clearable:el-input,el-input-number,el-select,el-select-v2,el-tree-select,el-cascader,el-date-picker,el-time-picker,el-time-select\n * filterable:el-select,el-select-v2,el-tree-select\n * placeholder-请输入:el-input,el-input-number\n * placeholder-请选择:el-select,el-select-v2,el-tree-select,el-cascader\n * defaultTime:el-date-picker\n * shortcuts:el-date-picker\n * options:el-select-v2,el-cascader\n * data:el-tree-select\n * startPlaceholder:\n * \t\tel-date-picker type in [\"datetimerange\", \"daterange\", \"monthrange\", \"yearrange\"]\n * \t\tel-time-picker isRange is true\n * endPlaceholder:\n * \t\tel-date-picker type in [\"datetimerange\", \"daterange\", \"monthrange\", \"yearrange\"]\n * \t\tel-time-picker isRange is true\n * rangeSeparator:\n * \t\tel-date-picker type in [\"datetimerange\", \"daterange\", \"monthrange\", \"yearrange\"]\n * \t\tel-time-picker isRange is true\n * unlinkPanels:el-date-picker type in [\"datetimerange\", \"daterange\", \"monthrange\", \"yearrange\"]\n * 后缀 -select Select -page Page -cascader Cascader 结尾的\n * \tplaceholder:请选择\n * 后缀 -input Input 结尾的\n * \tplaceholder:请输入\n */\n\nconst clearableEls = [\n\t\"el-input\",\n\t\"ELInput\",\n\t\"el-input-number\",\n\t\"ELInputNumber\",\n\t\"el-select\",\n\t\"ElSelect\",\n\t\"el-select-v2\",\n\t\"ElSelectV2\",\n\t\"el-tree-select\",\n\t\"ElTreeSelect\",\n\t\"el-cascader\",\n\t\"ElCascader\",\n\t\"el-date-picker\",\n\t\"ElDatePicker\",\n\t\"el-time-picker\",\n\t\"ElTimePicker\",\n\t\"el-time-select\",\n\t\"ElTimeSelect\",\n];\n\ntype FaTableSearchFormItemSlots = {\n\t[key: string]: FaTableDefaultSlotsResult & {\n\t\tcolumn?: FaTableColumnCtx;\n\t\tsearch?: () => void;\n\t};\n};\n\nconst filterableEls = [\"el-select\", \"ElSelect\", \"el-select-v2\", \"ElSelectV2\", \"el-tree-select\", \"ElTreeSelect\"];\n\nconst inputPlaceholderEls = [\"el-input\", \"ELInput\", \"el-input-number\", \"ELInputNumber\"];\n\nconst selectPlaceholderEls = [\"el-select\", \"ElSelect\", \"el-select-v2\", \"ElSelectV2\", \"el-tree-select\", \"ElTreeSelect\", \"el-cascader\", \"ElCascader\"];\n\nexport default defineComponent({\n\tname: \"FaTableSearchFormItem\",\n\tprops: {\n\t\t/** @description 列配置 */\n\t\tcolumn: {\n\t\t\ttype: definePropType<FaTableColumnCtx>(Object),\n\t\t\trequired: true,\n\t\t\t/** 这里的 default 不知道为什么,不写识别不出来类型 */\n\t\t\tdefault: {} as FaTableColumnCtx,\n\t\t},\n\t\t/** @description 搜索 */\n\t\tsearch: {\n\t\t\ttype: definePropType<() => void>(Function),\n\t\t\trequired: true,\n\t\t},\n\t},\n\tslots: makeSlots<FaTableSearchFormItemSlots>(),\n\tsetup(props, { slots }) {\n\t\tconst tableState = inject(tableStateKey);\n\t\tconst enumMap = inject(enumMapKey);\n\n\t\tconst state = reactive({\n\t\t\tenumDict: withDefineType<FaTableEnumColumnCtx[]>([]),\n\t\t});\n\n\t\tconst handleUpdateModelValue = (value: any): void => {\n\t\t\tif (isString(value)) {\n\t\t\t\t// 如果是字符串,则去除前后空格\n\t\t\t\tvalue = value.trim();\n\t\t\t}\n\t\t\ttableState.searchParam[props.column?.search?.key ?? props.column.prop] = value;\n\t\t};\n\n\t\tconst handleChange = (value: any): void => {\n\t\t\tprops.search();\n\t\t};\n\n\t\tconst handleDefaultProps = (): any => {\n\t\t\tconst search = props.column.search;\n\t\t\tconst defaultProps: any = {};\n\t\t\tif (clearableEls.includes(search?.el)) {\n\t\t\t\tdefaultProps.clearable = true;\n\t\t\t}\n\t\t\tif (filterableEls.includes(search?.el)) {\n\t\t\t\tdefaultProps.filterable = true;\n\t\t\t}\n\t\t\tif (inputPlaceholderEls.includes(search?.el)) {\n\t\t\t\tdefaultProps.placeholder = \"请输入\";\n\t\t\t}\n\t\t\tif (selectPlaceholderEls.includes(search?.el)) {\n\t\t\t\tdefaultProps.placeholder = \"请选择\";\n\t\t\t}\n\t\t\tif ([\"el-date-picker\", \"ElDatePicker\"].includes(search?.el)) {\n\t\t\t\tdefaultProps.unlinkPanels = true;\n\t\t\t\tif ([\"datetimerange\", \"daterange\", \"monthrange\", \"yearrange\"].includes(search?.props?.type)) {\n\t\t\t\t\tdefaultProps.defaultTime = dateUtil.getDefaultTime();\n\t\t\t\t\tdefaultProps.shortcuts = dateUtil.getShortcuts();\n\t\t\t\t\tdefaultProps.rangeSeparator = \"至\";\n\t\t\t\t\tdefaultProps.startPlaceholder = \"开始时间\";\n\t\t\t\t\tdefaultProps.endPlaceholder = \"结束时间\";\n\t\t\t\t} else {\n\t\t\t\t\tdefaultProps.defaultTime = dateUtil.getSimpleTime();\n\t\t\t\t\tdefaultProps.shortcuts = dateUtil.getSimpleShortcuts();\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ([\"el-time-picker\", \"ElTimePicker\"].includes(search?.el) && search?.props?.isRange) {\n\t\t\t\tdefaultProps.rangeSeparator = \"至\";\n\t\t\t\tdefaultProps.startPlaceholder = \"开始时间\";\n\t\t\t\tdefaultProps.endPlaceholder = \"结束时间\";\n\t\t\t}\n\t\t\tif (\n\t\t\t\t[\"el-select\", \"ElSelect\", \"el-select-v2\", \"ElSelectV2\", \"el-cascader\", \"ElCascader\", \"el-tree-select\", \"ElTreeSelect\"].includes(\n\t\t\t\t\tsearch?.el\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tlet enumData;\n\t\t\t\tif (props.column.enum && isString(props.column.enum)) {\n\t\t\t\t\tenumData = enumMap.get(props.column.enum);\n\t\t\t\t} else {\n\t\t\t\t\tenumData = enumMap.get(props.column.prop ?? props.column.search?.key);\n\t\t\t\t}\n\t\t\t\tenumData = enumData.filter((f: any) => f?.show !== false);\n\t\t\t\tstate.enumDict = enumData ?? [];\n\t\t\t}\n\t\t\tif ([\"el-select-v2\", \"ElSelectV2\", \"el-cascader\", \"ElCascader\"].includes(search?.el)) {\n\t\t\t\tdefaultProps.options = state.enumDict;\n\t\t\t}\n\t\t\tif ([\"el-tree-select\", \"ElTreeSelect\"].includes(search?.el)) {\n\t\t\t\tdefaultProps.data = state.enumDict;\n\t\t\t}\n\n\t\t\treturn defaultProps;\n\t\t};\n\n\t\tuseRender(() => (\n\t\t\t<Fragment>\n\t\t\t\t{props.column.search?.el &&\n\t\t\t\t\th(\n\t\t\t\t\t\tresolveComponent(props.column.search.el),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t...handleDefaultProps(),\n\t\t\t\t\t\t\t...props.column.search.props,\n\t\t\t\t\t\t\tmodelValue: tableState.searchParam[props.column?.search?.key ?? props.column.prop],\n\t\t\t\t\t\t\t\"onUpdate:modelValue\": handleUpdateModelValue,\n\t\t\t\t\t\t\tonChange: handleChange,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdefault: () =>\n\t\t\t\t\t\t\t\t[\"el-select\", \"ElSelect\"].includes(props.column.search.el)\n\t\t\t\t\t\t\t\t\t? state.enumDict.map((selData: any, index: number) =>\n\t\t\t\t\t\t\t\t\t\t\th(ElOption, {\n\t\t\t\t\t\t\t\t\t\t\t\tkey: index,\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: selData[props.column.search.props?.label ?? \"label\"],\n\t\t\t\t\t\t\t\t\t\t\t\tvalue: selData[props.column.search.props?.value ?? \"value\"],\n\t\t\t\t\t\t\t\t\t\t\t\tdisabled: selData[props.column.search.props?.disabled ?? \"disabled\"],\n\t\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t: slots.default &&\n\t\t\t\t\t\t\t\t\t\tslots.default({\n\t\t\t\t\t\t\t\t\t\t\tcolumn: props.column,\n\t\t\t\t\t\t\t\t\t\t\tsearch: props.search,\n\t\t\t\t\t\t\t\t\t\t\t...getTableDefaultSlots(tableState),\n\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t}\n\t\t\t\t\t)}\n\t\t\t</Fragment>\n\t\t));\n\t},\n});\n"],"names":["clearableEls","filterableEls","inputPlaceholderEls","selectPlaceholderEls","TableSearchFormItem","name","props","column","type","definePropType","Object","required","default","search","Function","slots","makeSlots","setup","tableState","inject","tableStateKey","enumMap","enumMapKey","state","reactive","enumDict","withDefineType","handleUpdateModelValue","value","isString","trim","searchParam","key","prop","handleChange","handleDefaultProps","defaultProps","includes","el","clearable","filterable","placeholder","unlinkPanels","defaultTime","dateUtil","getDefaultTime","shortcuts","getShortcuts","rangeSeparator","startPlaceholder","endPlaceholder","getSimpleTime","getSimpleShortcuts","isRange","enumData","enum","get","filter","f","show","options","data","useRender","_createVNode","_Fragment","h","resolveComponent","modelValue","onChange","map","selData","index","ElOption","label","disabled","getTableDefaultSlots"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tableSearchFormItem.js","names":["Fragment","defineComponent","h","inject","reactive","resolveComponent","_Fragment","createVNode","_createVNode","ElOption","dateUtil","definePropType","makeSlots","useRender","withDefineType","isString","getTableDefaultSlots","enumMapKey","tableStateKey","clearableEls","filterableEls","inputPlaceholderEls","selectPlaceholderEls","name","props","column","type","Object","required","default","search","Function","slots","setup","tableState","enumMap","state","enumDict","handleUpdateModelValue","value","trim","searchParam","key","prop","handleChange","handleDefaultProps","defaultProps","includes","el","clearable","filterable","placeholder","unlinkPanels","defaultTime","getDefaultTime","shortcuts","getShortcuts","rangeSeparator","startPlaceholder","endPlaceholder","getSimpleTime","getSimpleShortcuts","isRange","enumData","enum","get","filter","f","show","options","data","modelValue","onChange","map","selData","index","label","disabled"],"sources":["../../../../../packages/components/table/src/tableSearchFormItem.tsx"],"sourcesContent":["import { Fragment, defineComponent, h, inject, reactive, resolveComponent } from \"vue\";\nimport { ElOption } from \"element-plus\";\nimport { dateUtil, definePropType, makeSlots, useRender, withDefineType } from \"@fast-china/utils\";\nimport { isString } from \"lodash-unified\";\nimport { getTableDefaultSlots } from \"./table.type\";\nimport { enumMapKey, tableStateKey } from \"./useTable\";\nimport type { FaTableColumnCtx, FaTableDefaultSlotsResult, FaTableEnumColumnCtx } from \"./table.type\";\n\n/**\n * 已知默认支持的el组件:\n * \tel-input\n * \tel-input-number\n * \tel-select\n * \tel-select-v2\n * \tel-tree-select\n * \tel-cascader\n * \tel-date-picker\n * \tel-time-picker\n * \tel-time-select,\n * \tel-switch\n * 已知组件的默认props\n * clearable:el-input,el-input-number,el-select,el-select-v2,el-tree-select,el-cascader,el-date-picker,el-time-picker,el-time-select\n * filterable:el-select,el-select-v2,el-tree-select\n * placeholder-请输入:el-input,el-input-number\n * placeholder-请选择:el-select,el-select-v2,el-tree-select,el-cascader\n * defaultTime:el-date-picker\n * shortcuts:el-date-picker\n * options:el-select-v2,el-cascader\n * data:el-tree-select\n * startPlaceholder:\n * \t\tel-date-picker type in [\"datetimerange\", \"daterange\", \"monthrange\", \"yearrange\"]\n * \t\tel-time-picker isRange is true\n * endPlaceholder:\n * \t\tel-date-picker type in [\"datetimerange\", \"daterange\", \"monthrange\", \"yearrange\"]\n * \t\tel-time-picker isRange is true\n * rangeSeparator:\n * \t\tel-date-picker type in [\"datetimerange\", \"daterange\", \"monthrange\", \"yearrange\"]\n * \t\tel-time-picker isRange is true\n * unlinkPanels:el-date-picker type in [\"datetimerange\", \"daterange\", \"monthrange\", \"yearrange\"]\n * 后缀 -select Select -page Page -cascader Cascader 结尾的\n * \tplaceholder:请选择\n * 后缀 -input Input 结尾的\n * \tplaceholder:请输入\n */\n\nconst clearableEls = [\n\t\"el-input\",\n\t\"ELInput\",\n\t\"el-input-number\",\n\t\"ELInputNumber\",\n\t\"el-select\",\n\t\"ElSelect\",\n\t\"el-select-v2\",\n\t\"ElSelectV2\",\n\t\"el-tree-select\",\n\t\"ElTreeSelect\",\n\t\"el-cascader\",\n\t\"ElCascader\",\n\t\"el-date-picker\",\n\t\"ElDatePicker\",\n\t\"el-time-picker\",\n\t\"ElTimePicker\",\n\t\"el-time-select\",\n\t\"ElTimeSelect\",\n];\n\ntype FaTableSearchFormItemSlots = {\n\t[key: string]: FaTableDefaultSlotsResult & {\n\t\tcolumn?: FaTableColumnCtx;\n\t\tsearch?: () => void;\n\t};\n};\n\nconst filterableEls = [\"el-select\", \"ElSelect\", \"el-select-v2\", \"ElSelectV2\", \"el-tree-select\", \"ElTreeSelect\"];\n\nconst inputPlaceholderEls = [\"el-input\", \"ELInput\", \"el-input-number\", \"ELInputNumber\"];\n\nconst selectPlaceholderEls = [\"el-select\", \"ElSelect\", \"el-select-v2\", \"ElSelectV2\", \"el-tree-select\", \"ElTreeSelect\", \"el-cascader\", \"ElCascader\"];\n\nexport default defineComponent({\n\tname: \"FaTableSearchFormItem\",\n\tprops: {\n\t\t/** @description 列配置 */\n\t\tcolumn: {\n\t\t\ttype: definePropType<FaTableColumnCtx>(Object),\n\t\t\trequired: true,\n\t\t\t/** 这里的 default 不知道为什么,不写识别不出来类型 */\n\t\t\tdefault: {} as FaTableColumnCtx,\n\t\t},\n\t\t/** @description 搜索 */\n\t\tsearch: {\n\t\t\ttype: definePropType<() => void>(Function),\n\t\t\trequired: true,\n\t\t},\n\t},\n\tslots: makeSlots<FaTableSearchFormItemSlots>(),\n\tsetup(props, { slots }) {\n\t\tconst tableState = inject(tableStateKey);\n\t\tconst enumMap = inject(enumMapKey);\n\n\t\tconst state = reactive({\n\t\t\tenumDict: withDefineType<FaTableEnumColumnCtx[]>([]),\n\t\t});\n\n\t\tconst handleUpdateModelValue = (value: any): void => {\n\t\t\tif (isString(value)) {\n\t\t\t\t// 如果是字符串,则去除前后空格\n\t\t\t\tvalue = value.trim();\n\t\t\t}\n\t\t\ttableState.searchParam[props.column?.search?.key ?? props.column.prop] = value;\n\t\t};\n\n\t\tconst handleChange = (value: any): void => {\n\t\t\tprops.search();\n\t\t};\n\n\t\tconst handleDefaultProps = (): any => {\n\t\t\tconst search = props.column.search;\n\t\t\tconst defaultProps: any = {};\n\t\t\tif (clearableEls.includes(search?.el)) {\n\t\t\t\tdefaultProps.clearable = true;\n\t\t\t}\n\t\t\tif (filterableEls.includes(search?.el)) {\n\t\t\t\tdefaultProps.filterable = true;\n\t\t\t}\n\t\t\tif (inputPlaceholderEls.includes(search?.el)) {\n\t\t\t\tdefaultProps.placeholder = \"请输入\";\n\t\t\t}\n\t\t\tif (selectPlaceholderEls.includes(search?.el)) {\n\t\t\t\tdefaultProps.placeholder = \"请选择\";\n\t\t\t}\n\t\t\tif ([\"el-date-picker\", \"ElDatePicker\"].includes(search?.el)) {\n\t\t\t\tdefaultProps.unlinkPanels = true;\n\t\t\t\tif ([\"datetimerange\", \"daterange\", \"monthrange\", \"yearrange\"].includes(search?.props?.type)) {\n\t\t\t\t\tdefaultProps.defaultTime = dateUtil.getDefaultTime();\n\t\t\t\t\tdefaultProps.shortcuts = dateUtil.getShortcuts();\n\t\t\t\t\tdefaultProps.rangeSeparator = \"至\";\n\t\t\t\t\tdefaultProps.startPlaceholder = \"开始时间\";\n\t\t\t\t\tdefaultProps.endPlaceholder = \"结束时间\";\n\t\t\t\t} else {\n\t\t\t\t\tdefaultProps.defaultTime = dateUtil.getSimpleTime();\n\t\t\t\t\tdefaultProps.shortcuts = dateUtil.getSimpleShortcuts();\n\t\t\t\t\tdefaultProps.placeholder = \"请选择\";\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ([\"el-time-picker\", \"ElTimePicker\"].includes(search?.el) && search?.props?.isRange) {\n\t\t\t\tdefaultProps.rangeSeparator = \"至\";\n\t\t\t\tdefaultProps.startPlaceholder = \"开始时间\";\n\t\t\t\tdefaultProps.endPlaceholder = \"结束时间\";\n\t\t\t}\n\t\t\tif (\n\t\t\t\t[\"el-select\", \"ElSelect\", \"el-select-v2\", \"ElSelectV2\", \"el-cascader\", \"ElCascader\", \"el-tree-select\", \"ElTreeSelect\"].includes(\n\t\t\t\t\tsearch?.el\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tlet enumData;\n\t\t\t\tif (props.column.enum && isString(props.column.enum)) {\n\t\t\t\t\tenumData = enumMap.get(props.column.enum);\n\t\t\t\t} else {\n\t\t\t\t\tenumData = enumMap.get(props.column.prop ?? props.column.search?.key);\n\t\t\t\t}\n\t\t\t\tenumData = enumData.filter((f: any) => f?.show !== false);\n\t\t\t\tstate.enumDict = enumData ?? [];\n\t\t\t}\n\t\t\tif ([\"el-select-v2\", \"ElSelectV2\", \"el-cascader\", \"ElCascader\"].includes(search?.el)) {\n\t\t\t\tdefaultProps.options = state.enumDict;\n\t\t\t}\n\t\t\tif ([\"el-tree-select\", \"ElTreeSelect\"].includes(search?.el)) {\n\t\t\t\tdefaultProps.data = state.enumDict;\n\t\t\t}\n\n\t\t\treturn defaultProps;\n\t\t};\n\n\t\tuseRender(() => (\n\t\t\t<Fragment>\n\t\t\t\t{props.column.search?.el &&\n\t\t\t\t\th(\n\t\t\t\t\t\tresolveComponent(props.column.search.el),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t...handleDefaultProps(),\n\t\t\t\t\t\t\t...props.column.search.props,\n\t\t\t\t\t\t\tmodelValue: tableState.searchParam[props.column?.search?.key ?? props.column.prop],\n\t\t\t\t\t\t\t\"onUpdate:modelValue\": handleUpdateModelValue,\n\t\t\t\t\t\t\tonChange: handleChange,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdefault: () =>\n\t\t\t\t\t\t\t\t[\"el-select\", \"ElSelect\"].includes(props.column.search.el)\n\t\t\t\t\t\t\t\t\t? state.enumDict.map((selData: any, index: number) =>\n\t\t\t\t\t\t\t\t\t\t\th(ElOption, {\n\t\t\t\t\t\t\t\t\t\t\t\tkey: index,\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: selData[props.column.search.props?.label ?? \"label\"],\n\t\t\t\t\t\t\t\t\t\t\t\tvalue: selData[props.column.search.props?.value ?? \"value\"],\n\t\t\t\t\t\t\t\t\t\t\t\tdisabled: selData[props.column.search.props?.disabled ?? \"disabled\"],\n\t\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t: slots.default &&\n\t\t\t\t\t\t\t\t\t\tslots.default({\n\t\t\t\t\t\t\t\t\t\t\tcolumn: props.column,\n\t\t\t\t\t\t\t\t\t\t\tsearch: props.search,\n\t\t\t\t\t\t\t\t\t\t\t...getTableDefaultSlots(tableState),\n\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t}\n\t\t\t\t\t)}\n\t\t\t</Fragment>\n\t\t));\n\t},\n});\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"
|
|
2
|
-
//# sourceMappingURL=useTable.js.map
|
|
1
|
+
require("../../../_virtual/_rolldown/runtime.js");const e=require("./table.type.js"),a=require("../utils/table.js");let t=require("@fast-china/utils"),r=require("vue"),o=require("element-plus"),s=require("lodash-unified");var l=Symbol("tableState"),n=Symbol("enumMap");exports.enumMapKey=n,exports.tableStateKey=l,exports.useTable=(i,c,p)=>{const h=(0,o.useGlobalSize)(),u=(0,r.ref)(),g=(0,r.ref)(),d=(0,r.reactive)(new Map);(0,r.provide)(n,d);const m=(0,r.reactive)({loading:!1,loadingText:"加载中...",orgColumns:[],tableColumns:(0,r.computed)(()=>m.orgColumns.filter(e=>e.prop&&!e.pureSearch)),searchColumns:(0,r.computed)(()=>m.orgColumns.filter(e=>e.pureSearch||e.search).sort((e,a)=>e.search?.order-a.search?.order)),spanColumns:(0,r.computed)(()=>[...m.orgColumns.filter(e=>e.spanProp).map(e=>({prop:e?.prop,spanProp:e?.spanProp})),...i.props.span?[{prop:"__table-index",spanProp:i.props.span},{prop:"__table-selection",spanProp:i.props.span},{prop:"__table-operation",spanProp:i.props.span}]:[]]),tableData:[],tableSpanData:(0,r.computed)(()=>{if(m.spanColumns?.length>0&&m.tableData?.length>0){const e=[];m.spanColumns.forEach(a=>{e[a.prop]=new Array(m.tableData.length).fill(1,0,1).fill(0,1),e[`${a.prop}-index`]=0});for(let a=1;a<m.tableData.length;a++)m.spanColumns.forEach(t=>{m.tableData[a][t.spanProp]===m.tableData[a-1][t.spanProp]?e[t.prop][e[`${t.prop}-index`]]++:(e[`${t.prop}-index`]=a,e[t.prop][a]=1)});return e}return[]}),tablePagination:{pageIndex:1,pageSize:20,totalRows:0},initParam:{},searchParam:{},searchValueUpdate:"",searchForm:i.searchForm,selected:!1,selectedList:[],selectedListIds:(0,r.computed)(()=>m.selectedList.map(e=>(0,s.isFunction)(i.rowKey)?i.rowKey(e):e[i.rowKey])),indeterminateSelectedListIds:[],responseConfig:void 0,operationColumnWidth:(0,r.computed)(()=>{const e=m.autoColumnWidth.find(e=>"__table-operation"===e.prop);if(e)return`${e.width}px`;switch(h.value){case"large":case"default":return"54px";case"small":return"42px";default:return"auto"}}),imagePreview:!1,previewList:[],tableWidth:void 0,tableHeight:void 0,autoColumnWidth:[]});(0,r.provide)(l,m);const b=()=>{m.loading=!0,m.loadingText="加载中...",m.autoColumnWidth=[];const e=m.tableColumns.filter(e=>e.autoWidth);if(c?.operation&&e.push({prop:"__table-operation"}),e?.length>0){const a="default"===h.value?25:17;(0,r.nextTick)(()=>{const t=document.querySelector(`.fa-table__${i.tableKey}`);t&&e.forEach(e=>{const r=t.querySelector(`.__fa-table__auto-width-column__cell-header__${e?.prop}`),o=t.querySelectorAll(`.__fa-table__auto-width-column__cell__${e?.prop}`);let s=0;r&&(s=Math.ceil(r.scrollWidth)+a,e?.sortable&&(s+=24)),o.forEach(e=>{const t=Math.ceil(e.scrollWidth)+a;t>s&&(s=t)});const l=m.autoColumnWidth.find(a=>a.prop===e?.prop);l?l.width=Math.max(l.width,s):m.autoColumnWidth.push({prop:e?.prop,width:s})})})}m.loading=!1},P=e=>{if(i.treeData){const a=[];return e.forEach(e=>{const t=e[i.props.children];(0,s.isArray)(t)?t.forEach(t=>a.push({...e,...t})):a.push({...e,...t||{}})}),a}return e},f=()=>{const e={...m.searchParam,...i.pagination?m.tablePagination:{}};return delete e.totalRows,e},C=async()=>{if(m.loading=!0,m.loadingText="加载中...",i.requestApi){const a=f();p("refresh",a);let r=[];try{const e=await i.requestApi(a);if(i.dataCallback&&i.dataCallback(e),i.pagination){const a=e;r=a.rows,Object.assign(m.tablePagination,{pageIndex:a.pageIndex,pageSize:a.pageSize,totalRows:a.totalRows})}else r=e,Object.assign(m.tablePagination,{pageIndex:1,pageSize:0,totalRows:r.length});m.tableData=P(r)}catch(e){(0,t.consoleError)("FaTable",e),m.tableData=[]}finally{m.loading=!1}}else{p("refresh",{searchValue:m.searchParam.searchValue});let e=P(i.data);if(e=e.filter(e=>!m.searchParam.searchValue||m.tableColumns.some(a=>e[a.prop]?.toString()?.toLowerCase().includes(m.searchParam.searchValue?.toLowerCase()))),m.searchParam.sortList?.length>0&&(e=e.sort(a.tableUtil.arrayDynamicSort(m.searchParam.sortList))),i.pagination){Object.assign(m.tablePagination,{totalRows:e.length});const a=(m.tablePagination.pageIndex-1)*m.tablePagination.pageSize,t=a+m.tablePagination.pageSize;m.tableData=e.slice(a,t)}else m.tableData=e,Object.assign(m.tablePagination,{pageIndex:1,pageSize:0,totalRows:e.length});m.loading=!1}b()},w=()=>{let e=i.columns?i.columns:[];e.forEach(e=>{(e.pureSearch||e.search)&&(e.search.key??=e.prop,e.search.label??=e.label,e.search.defaultValue&&(m.searchParam[e.search.key]=e.search.defaultValue))}),e=e.sort((e,a)=>e?.order-a?.order),m.orgColumns=a.tableUtil.flatColumns(e,d)},D=()=>{if(i.hideSearchTime)m.searchParam.searchTimeList=void 0;else{const e=new Date,a=new Date;if(i.futureSearchTime)switch(i.dataSearchRange){case"Past1D":e.setDate(e.getDate()+1);break;case"Past3D":e.setDate(e.getDate()+3);break;case"Past1W":e.setDate(e.getDate()+7);break;case"Past1M":e.setMonth(e.getMonth()+1);break;case"Past3M":e.setMonth(e.getMonth()+3);break;case"Past6M":e.setMonth(e.getMonth()+6);break;case"Past1Y":e.setFullYear(e.getFullYear()+1);break;case"Past3Y":e.setFullYear(e.getFullYear()+3)}else switch(i.dataSearchRange){case"Past1D":a.setDate(a.getDate()-1);break;case"Past3D":a.setDate(a.getDate()-3);break;case"Past1W":a.setDate(a.getDate()-7);break;case"Past1M":a.setMonth(a.getMonth()-1);break;case"Past3M":a.setMonth(a.getMonth()-3);break;case"Past6M":a.setMonth(a.getMonth()-6);break;case"Past1Y":a.setFullYear(a.getFullYear()-1);break;case"Past3Y":a.setFullYear(a.getFullYear()-3)}m.searchParam.searchTimeList=[(0,o.dayjs)(a).format("YYYY-MM-DD 00:00:00"),(0,o.dayjs)(e).format("YYYY-MM-DD 23:59:59")]}},S=async()=>{m.tablePagination.pageIndex=1,(()=>{const e={};for(const a in m.searchParam)m.searchParam[a]||!1===m.searchParam[a]||0===m.searchParam[a]?e[a]=m.searchParam[a]:m.searchParam[a]||delete m.searchParam[a];Object.assign(m.searchParam,e)})(),await C()},y=async()=>{m.orgColumns=[],m.autoColumnWidth=[],m.tableData=[],await t.clickUtil.debounceAsync(async()=>{w(),await S()},300)};return(0,r.watch)(()=>i.tableKey,async()=>{await y()}),(0,r.watch)(()=>i.searchForm,e=>{m.searchForm=e}),{_globalSize:h,state:m,elementRef:u,tableRef:g,handleTableColumnAutoWidth:b,getRequestParam:f,loadTableColumns:w,handleSizeChange:e=>{m.tablePagination.pageIndex=1,m.tablePagination.pageSize=e,p("sizeChange",e),p("paginationChange",1,e),C()},handlePaginationChange:e=>{m.tablePagination.pageIndex=e,p("sizeChange",m.tablePagination.pageSize),p("paginationChange",e,m.tablePagination.pageSize),C()},defaultSearchTime:D,tableSearch:S,tableReset:async()=>{m.tablePagination.pageIndex=1,m.searchParam={},D(),Object.keys(m.initParam??{}).forEach(e=>{m.searchParam[e]=m.initParam[e]}),p("reset",m.searchParam),await C()},doRender:y,doLoading:(e,a="加载中...")=>{m.loading=!0,m.loadingText=a,(0,t.execFunction)(e).then().catch(e=>{(0,t.consoleError)("FaTable",e)}).finally(()=>{m.loading=!1})},handleCustomCellClick:(a,{row:t,column:r,$index:o})=>{p("customCellClick",a,{row:t,column:r,$index:o,...e.getTableDefaultSlots(m)})}}};
|
|
2
|
+
//# sourceMappingURL=useTable.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTable.js","sources":["../../../../../packages/components/table/src/useTable.ts"],"sourcesContent":["import { computed, nextTick, provide, reactive, ref, watch } from \"vue\";\nimport { dayjs, useGlobalSize } from \"element-plus\";\nimport { clickUtil, consoleError, execFunction, type makeSlots } from \"@fast-china/utils\";\nimport { isArray, isFunction } from \"lodash-unified\";\nimport { tableUtil } from \"../utils/table\";\nimport { getTableDefaultSlots } from \"./table.type\";\nimport type { PagedInput, PagedResult } from \"./page.type\";\nimport type { FaTableSlots, faTableEmits, faTableProps } from \"./table\";\nimport type { FaTableState } from \"./table.state\";\nimport type { FaTableColumnCtx, FaTableEnumColumnCtx } from \"./table.type\";\nimport type { TableInstance } from \"element-plus\";\nimport type { ExtractPropTypes, InjectionKey, SetupContext } from \"vue\";\n\nexport const tableStateKey: InjectionKey<FaTableState> = Symbol(\"tableState\");\nexport const enumMapKey: InjectionKey<Map<string, FaTableEnumColumnCtx[]>> = Symbol(\"enumMap\");\n\ntype TableSetupContext = SetupContext<typeof faTableEmits, ReturnType<typeof makeSlots<FaTableSlots>>>;\n\n// eslint-disable-next-line @typescript-eslint/explicit-function-return-type, @typescript-eslint/explicit-module-boundary-types\nexport const useTable = (props: ExtractPropTypes<typeof faTableProps>, slots: TableSetupContext[\"slots\"], emit: TableSetupContext[\"emit\"]) => {\n\tconst _globalSize = useGlobalSize();\n\n\tconst elementRef = ref<HTMLElement>();\n\tconst tableRef = ref<TableInstance>();\n\n\t/**\n\t * 定义 enumMap 存储 enum 值(避免异步请求无法格式化单元格内容 || 无法填充搜索下拉选择)\n\t */\n\tconst enumMap = reactive(new Map<string, FaTableEnumColumnCtx[]>());\n\tprovide(enumMapKey, enumMap);\n\n\tconst state: FaTableState = reactive({\n\t\tloading: false,\n\t\tloadingText: \"加载中...\",\n\t\torgColumns: [],\n\t\ttableColumns: computed(() => state.orgColumns.filter((f) => f.prop && !f.pureSearch)),\n\t\tsearchColumns: computed(() =>\n\t\t\tstate.orgColumns\n\t\t\t\t.filter((f) => f.pureSearch || f.search)\n\t\t\t\t.sort((a, b) => {\n\t\t\t\t\treturn a.search?.order - b.search?.order;\n\t\t\t\t})\n\t\t),\n\t\tspanColumns: computed(() => [\n\t\t\t...state.orgColumns\n\t\t\t\t.filter((f) => f.spanProp)\n\t\t\t\t.map((col) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tprop: col?.prop,\n\t\t\t\t\t\tspanProp: col?.spanProp,\n\t\t\t\t\t};\n\t\t\t\t}),\n\t\t\t...(props.props.span\n\t\t\t\t? [\n\t\t\t\t\t\t{ prop: \"__table-index\", spanProp: props.props.span },\n\t\t\t\t\t\t{ prop: \"__table-selection\", spanProp: props.props.span },\n\t\t\t\t\t\t{ prop: \"__table-operation\", spanProp: props.props.span },\n\t\t\t\t\t]\n\t\t\t\t: []),\n\t\t]),\n\t\ttableData: [],\n\t\ttableSpanData: computed(() => {\n\t\t\tif (state.spanColumns?.length > 0 && state.tableData?.length > 0) {\n\t\t\t\tconst result = [];\n\t\t\t\tstate.spanColumns.forEach((item) => {\n\t\t\t\t\tresult[item.prop] = new Array(state.tableData.length).fill(1, 0, 1).fill(0, 1);\n\t\t\t\t\tresult[`${item.prop}-index`] = 0;\n\t\t\t\t});\n\t\t\t\tfor (let i = 1; i < state.tableData.length; i++) {\n\t\t\t\t\tstate.spanColumns.forEach((item) => {\n\t\t\t\t\t\tif (state.tableData[i][item.spanProp] === state.tableData[i - 1][item.spanProp]) {\n\t\t\t\t\t\t\tresult[item.prop][result[`${item.prop}-index`]]++;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tresult[`${item.prop}-index`] = i;\n\t\t\t\t\t\t\tresult[item.prop][i] = 1;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\treturn result;\n\t\t\t}\n\t\t\treturn [];\n\t\t}),\n\t\ttablePagination: {\n\t\t\tpageIndex: 1,\n\t\t\tpageSize: 20,\n\t\t\ttotalRows: 0,\n\t\t},\n\t\tinitParam: {},\n\t\tsearchParam: {},\n\t\tsearchValueUpdate: \"\",\n\t\tsearchForm: props.searchForm,\n\t\tselected: false,\n\t\tselectedList: [],\n\t\tselectedListIds: computed(() => state.selectedList.map((item) => (isFunction(props.rowKey) ? props.rowKey(item) : item[props.rowKey]))),\n\t\tindeterminateSelectedListIds: [],\n\t\tresponseConfig: undefined,\n\t\toperationColumnWidth: computed(() => {\n\t\t\tconst findAutoCol = state.autoColumnWidth.find((f) => f.prop === \"__table-operation\");\n\t\t\tif (findAutoCol) {\n\t\t\t\treturn `${findAutoCol.width}px`;\n\t\t\t}\n\t\t\tswitch (_globalSize.value) {\n\t\t\t\tcase \"large\":\n\t\t\t\tcase \"default\":\n\t\t\t\t\treturn \"54px\";\n\t\t\t\tcase \"small\":\n\t\t\t\t\treturn \"42px\";\n\t\t\t\tdefault:\n\t\t\t\t\treturn \"auto\";\n\t\t\t}\n\t\t}),\n\t\timagePreview: false,\n\t\tpreviewList: [],\n\t\ttableWidth: undefined,\n\t\ttableHeight: undefined,\n\t\tautoColumnWidth: [],\n\t});\n\n\tprovide(tableStateKey, state);\n\n\tconst handleTableColumnAutoWidth = (): void => {\n\t\tstate.loading = true;\n\t\tstate.loadingText = \"加载中...\";\n\t\tstate.autoColumnWidth = [];\n\t\tconst autoWidthColumns = state.tableColumns.filter((f) => f.autoWidth);\n\t\tif (slots?.operation) {\n\t\t\t// 操作列自动宽度\n\t\t\tautoWidthColumns.push({\n\t\t\t\tprop: \"__table-operation\",\n\t\t\t});\n\t\t}\n\t\tif (autoWidthColumns?.length > 0) {\n\t\t\t// padding24/16 + border1\n\t\t\tconst otherWidth = _globalSize.value === \"default\" ? 25 : 17;\n\t\t\tnextTick(() => {\n\t\t\t\tconst tableDom = document.querySelector(`.fa-table__${props.tableKey}`);\n\t\t\t\tif (tableDom) {\n\t\t\t\t\tautoWidthColumns.forEach((item) => {\n\t\t\t\t\t\tconst headerColumnDom = tableDom.querySelector(`.__fa-table__auto-width-column__cell-header__${item?.prop}`);\n\t\t\t\t\t\tconst cellColumnDoms = tableDom.querySelectorAll(`.__fa-table__auto-width-column__cell__${item?.prop}`);\n\t\t\t\t\t\tlet maxWidth = 0;\n\t\t\t\t\t\tif (headerColumnDom) {\n\t\t\t\t\t\t\tmaxWidth = Math.ceil(headerColumnDom.scrollWidth) + otherWidth;\n\t\t\t\t\t\t\tif (item?.sortable) {\n\t\t\t\t\t\t\t\tmaxWidth += 24;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcellColumnDoms.forEach((cellDom) => {\n\t\t\t\t\t\t\tconst curWidth = Math.ceil(cellDom.scrollWidth) + otherWidth;\n\t\t\t\t\t\t\tif (curWidth > maxWidth) {\n\t\t\t\t\t\t\t\tmaxWidth = curWidth;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\tconst findInfo = state.autoColumnWidth.find((f) => f.prop === item?.prop);\n\t\t\t\t\t\tif (findInfo) {\n\t\t\t\t\t\t\tfindInfo.width = Math.max(findInfo.width, maxWidth);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tstate.autoColumnWidth.push({\n\t\t\t\t\t\t\t\tprop: item?.prop,\n\t\t\t\t\t\t\t\twidth: maxWidth,\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t\tstate.loading = false;\n\t};\n\n\tconst handleTableData = (data: any[]): any[] => {\n\t\tif (props.treeData) {\n\t\t\tconst result: any[] = [];\n\t\t\tdata.forEach((row) => {\n\t\t\t\tconst rowList = row[props.props.children];\n\t\t\t\tif (isArray(rowList)) {\n\t\t\t\t\t// 如果 rowList 是数组,遍历并合并每个子项\n\t\t\t\t\trowList.forEach((cRow) => result.push({ ...row, ...cRow }));\n\t\t\t\t} else {\n\t\t\t\t\tresult.push({ ...row, ...(rowList || {}) });\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn result;\n\t\t} else {\n\t\t\treturn data;\n\t\t}\n\t};\n\n\tconst getRequestParam = (): PagedInput => {\n\t\tconst params = { ...state.searchParam, ...(props.pagination ? state.tablePagination : {}) };\n\t\t// 删除总条数\n\t\tdelete params.totalRows;\n\t\treturn params;\n\t};\n\n\tconst loadData = async (): Promise<void> => {\n\t\tstate.loading = true;\n\t\tstate.loadingText = \"加载中...\";\n\t\tif (props.requestApi) {\n\t\t\tconst params = getRequestParam();\n\t\t\temit(\"refresh\", params);\n\t\t\tlet pageData = [];\n\t\t\ttry {\n\t\t\t\tconst resData = await props.requestApi(params);\n\t\t\t\t// 数据回调\n\t\t\t\tprops.dataCallback && props.dataCallback(resData);\n\t\t\t\t// 解析 API 接口返回的分页数据(如果有分页更新分页信息)\n\t\t\t\tif (props.pagination) {\n\t\t\t\t\tconst pageRes = resData as PagedResult;\n\t\t\t\t\tpageData = pageRes.rows;\n\t\t\t\t\t// 更新分页信息\n\t\t\t\t\tObject.assign(state.tablePagination, {\n\t\t\t\t\t\tpageIndex: pageRes.pageIndex,\n\t\t\t\t\t\tpageSize: pageRes.pageSize,\n\t\t\t\t\t\ttotalRows: pageRes.totalRows,\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tpageData = resData as any[];\n\t\t\t\t\t// 更新分页信息\n\t\t\t\t\tObject.assign(state.tablePagination, {\n\t\t\t\t\t\tpageIndex: 1,\n\t\t\t\t\t\tpageSize: 0,\n\t\t\t\t\t\ttotalRows: pageData.length,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tstate.tableData = handleTableData(pageData);\n\t\t\t} catch (error) {\n\t\t\t\tconsoleError(\"FaTable\", error);\n\t\t\t\tstate.tableData = [];\n\t\t\t} finally {\n\t\t\t\tstate.loading = false;\n\t\t\t}\n\t\t} else {\n\t\t\temit(\"refresh\", { searchValue: state.searchParam.searchValue });\n\t\t\tlet _value = handleTableData(props.data);\n\t\t\t_value = _value.filter((f) => {\n\t\t\t\tif (!state.searchParam.searchValue) return true;\n\t\t\t\treturn state.tableColumns.some((col) => {\n\t\t\t\t\treturn f[col.prop]?.toString()?.toLowerCase().includes(state.searchParam.searchValue?.toLowerCase());\n\t\t\t\t});\n\t\t\t});\n\t\t\tif (state.searchParam.sortList?.length > 0) {\n\t\t\t\t_value = _value.sort(tableUtil.arrayDynamicSort(state.searchParam.sortList));\n\t\t\t}\n\t\t\tif (props.pagination) {\n\t\t\t\t// 更新分页信息\n\t\t\t\tObject.assign(state.tablePagination, {\n\t\t\t\t\ttotalRows: _value.length,\n\t\t\t\t});\n\t\t\t\tconst pageStart = (state.tablePagination.pageIndex - 1) * state.tablePagination.pageSize;\n\t\t\t\tconst pageEnd = pageStart + state.tablePagination.pageSize;\n\t\t\t\tstate.tableData = _value.slice(pageStart, pageEnd);\n\t\t\t} else {\n\t\t\t\tstate.tableData = _value;\n\t\t\t\t// 更新分页信息\n\t\t\t\tObject.assign(state.tablePagination, {\n\t\t\t\t\tpageIndex: 1,\n\t\t\t\t\tpageSize: 0,\n\t\t\t\t\ttotalRows: _value.length,\n\t\t\t\t});\n\t\t\t}\n\t\t\tstate.loading = false;\n\t\t}\n\t\thandleTableColumnAutoWidth();\n\t};\n\n\tconst loadTableColumns = (): void => {\n\t\tlet columns: FaTableColumnCtx[] = props.columns ? props.columns : [];\n\t\t// 默认值处理\n\t\tcolumns.forEach((col) => {\n\t\t\t// 处理搜索项的 key 和 label\n\t\t\tif (col.pureSearch || col.search) {\n\t\t\t\tcol.search.key ??= col.prop;\n\t\t\t\tcol.search.label ??= col.label;\n\t\t\t\t// 处理默认值\n\t\t\t\tif (col.search.defaultValue) {\n\t\t\t\t\tstate.searchParam[col.search.key] = col.search.defaultValue;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\t// 排序\n\t\tcolumns = columns.sort((a, b) => {\n\t\t\treturn a?.order - b?.order;\n\t\t});\n\n\t\t// TODO:这里的扁平化暂时没用到\n\t\tstate.orgColumns = tableUtil.flatColumns(columns, enumMap);\n\t};\n\n\tconst handleSizeChange = (pageSize: number): void => {\n\t\tstate.tablePagination.pageIndex = 1;\n\t\tstate.tablePagination.pageSize = pageSize;\n\t\temit(\"sizeChange\", pageSize);\n\t\temit(\"paginationChange\", 1, pageSize);\n\t\tloadData();\n\t};\n\tconst handlePaginationChange = (val: number): void => {\n\t\tstate.tablePagination.pageIndex = val;\n\t\temit(\"sizeChange\", state.tablePagination.pageSize);\n\t\temit(\"paginationChange\", val, state.tablePagination.pageSize);\n\t\tloadData();\n\t};\n\n\tconst updatedTotalParam = (): void => {\n\t\t// 处理查询参数,可以给查询参数加自定义前缀操作\n\t\tconst newSearchParam = {};\n\t\t// 防止手动清空输入框携带参数(这里可以自定义查询参数前缀)\n\t\tfor (const key in state.searchParam) {\n\t\t\t// * 某些情况下参数为 false/0 也应该携带参数\n\t\t\tif (state.searchParam[key] || state.searchParam[key] === false || state.searchParam[key] === 0) {\n\t\t\t\tnewSearchParam[key] = state.searchParam[key];\n\t\t\t}\n\t\t\t// 处理某些情况下如果为空字符串,其实是不需要传到后端的\n\t\t\telse if (!state.searchParam[key]) {\n\t\t\t\tdelete state.searchParam[key];\n\t\t\t}\n\t\t}\n\t\tObject.assign(state.searchParam, newSearchParam);\n\t};\n\n\tconst defaultSearchTime = (): void => {\n\t\tif (props.hideSearchTime) {\n\t\t\tstate.searchParam.searchTimeList = undefined;\n\t\t} else {\n\t\t\tconst end = new Date();\n\t\t\tconst start = new Date();\n\t\t\tif (props.futureSearchTime) {\n\t\t\t\tswitch (props.dataSearchRange) {\n\t\t\t\t\tcase \"Past1D\":\n\t\t\t\t\t\tend.setDate(end.getDate() + 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past3D\":\n\t\t\t\t\t\tend.setDate(end.getDate() + 3);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past1W\":\n\t\t\t\t\t\tend.setDate(end.getDate() + 7);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past1M\":\n\t\t\t\t\t\tend.setMonth(end.getMonth() + 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past3M\":\n\t\t\t\t\t\tend.setMonth(end.getMonth() + 3);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past6M\":\n\t\t\t\t\t\tend.setMonth(end.getMonth() + 6);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past1Y\":\n\t\t\t\t\t\tend.setFullYear(end.getFullYear() + 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past3Y\":\n\t\t\t\t\t\tend.setFullYear(end.getFullYear() + 3);\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tswitch (props.dataSearchRange) {\n\t\t\t\t\tcase \"Past1D\":\n\t\t\t\t\t\tstart.setDate(start.getDate() - 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past3D\":\n\t\t\t\t\t\tstart.setDate(start.getDate() - 3);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past1W\":\n\t\t\t\t\t\tstart.setDate(start.getDate() - 7);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past1M\":\n\t\t\t\t\t\tstart.setMonth(start.getMonth() - 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past3M\":\n\t\t\t\t\t\tstart.setMonth(start.getMonth() - 3);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past6M\":\n\t\t\t\t\t\tstart.setMonth(start.getMonth() - 6);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past1Y\":\n\t\t\t\t\t\tstart.setFullYear(start.getFullYear() - 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past3Y\":\n\t\t\t\t\t\tstart.setFullYear(start.getFullYear() - 3);\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tstate.searchParam.searchTimeList = [dayjs(start).format(\"YYYY-MM-DD 00:00:00\"), dayjs(end).format(\"YYYY-MM-DD 23:59:59\")];\n\t\t}\n\t};\n\n\tconst tableSearch = async (): Promise<void> => {\n\t\t// 重置到第一页\n\t\tstate.tablePagination.pageIndex = 1;\n\t\tupdatedTotalParam();\n\t\tawait loadData();\n\t};\n\n\tconst tableReset = async (): Promise<void> => {\n\t\t// 重置到第一页\n\t\tstate.tablePagination.pageIndex = 1;\n\t\t// 清除搜索条件\n\t\tstate.searchParam = {};\n\t\tdefaultSearchTime();\n\t\t// 重置搜索表单的时候,如果有默认搜索参数,则重置默认的搜索参数\n\t\tObject.keys(state.initParam ?? {}).forEach((key) => {\n\t\t\tstate.searchParam[key] = state.initParam[key];\n\t\t});\n\t\temit(\"reset\", state.searchParam);\n\t\tawait loadData();\n\t};\n\n\tconst doRender = async (): Promise<void> => {\n\t\tstate.orgColumns = [];\n\t\tstate.autoColumnWidth = [];\n\t\tstate.tableData = [];\n\t\tawait clickUtil.debounceAsync(async () => {\n\t\t\tloadTableColumns();\n\t\t\tawait tableSearch();\n\t\t}, 300);\n\t};\n\n\tconst doLoading = (loadingFunction: () => void | Promise<void>, loadingText = \"加载中...\"): void => {\n\t\tstate.loading = true;\n\t\tstate.loadingText = loadingText;\n\t\texecFunction(loadingFunction)\n\t\t\t.then()\n\t\t\t.catch((error) => {\n\t\t\t\tconsoleError(\"FaTable\", error);\n\t\t\t})\n\t\t\t.finally(() => {\n\t\t\t\tstate.loading = false;\n\t\t\t});\n\t};\n\n\tconst handleCustomCellClick = (emitName: string, { row, column, $index }: { row: any; column: FaTableColumnCtx; $index: number }): void => {\n\t\temit(\"customCellClick\", emitName, { row, column, $index, ...getTableDefaultSlots(state) });\n\t};\n\n\twatch(\n\t\t() => props.tableKey,\n\t\tasync () => {\n\t\t\tawait doRender();\n\t\t}\n\t);\n\n\twatch(\n\t\t() => props.searchForm,\n\t\t(newValue) => {\n\t\t\tstate.searchForm = newValue;\n\t\t}\n\t);\n\n\treturn {\n\t\t_globalSize,\n\t\tstate,\n\t\telementRef,\n\t\ttableRef,\n\t\thandleTableColumnAutoWidth,\n\t\tgetRequestParam,\n\t\tloadTableColumns,\n\t\thandleSizeChange,\n\t\thandlePaginationChange,\n\t\tdefaultSearchTime,\n\t\ttableSearch,\n\t\ttableReset,\n\t\tdoRender,\n\t\tdoLoading,\n\t\thandleCustomCellClick,\n\t};\n};\n"],"names":["tableStateKey","enumMapKey","props","slots","emit","_globalSize","useGlobalSize","elementRef","ref","tableRef","enumMap","reactive","Map","provide","state","loading","loadingText","orgColumns","tableColumns","computed","filter","f","prop","pureSearch","searchColumns","search","sort","a","b","order","spanColumns","spanProp","map","col","span","tableData","tableSpanData","length","result","forEach","item","Array","fill","i","tablePagination","pageIndex","pageSize","totalRows","initParam","searchParam","searchValueUpdate","searchForm","selected","selectedList","selectedListIds","isFunction","rowKey","indeterminateSelectedListIds","responseConfig","operationColumnWidth","findAutoCol","autoColumnWidth","find","width","value","imagePreview","previewList","tableWidth","tableHeight","handleTableColumnAutoWidth","autoWidthColumns","autoWidth","operation","push","otherWidth","nextTick","tableDom","document","querySelector","tableKey","headerColumnDom","cellColumnDoms","querySelectorAll","maxWidth","Math","ceil","scrollWidth","sortable","cellDom","curWidth","findInfo","max","handleTableData","data","treeData","row","rowList","children","isArray","cRow","getRequestParam","params","pagination","loadData","async","requestApi","pageData","resData","dataCallback","pageRes","rows","Object","assign","error","consoleError","searchValue","_value","some","toString","toLowerCase","includes","sortList","tableUtil","arrayDynamicSort","pageStart","pageEnd","slice","loadTableColumns","columns","key","label","defaultValue","flatColumns","defaultSearchTime","hideSearchTime","searchTimeList","end","Date","start","futureSearchTime","dataSearchRange","setDate","getDate","setMonth","getMonth","setFullYear","getFullYear","dayjs","format","tableSearch","newSearchParam","updatedTotalParam","doRender","clickUtil","debounceAsync","watch","newValue","handleSizeChange","handlePaginationChange","val","tableReset","keys","doLoading","loadingFunction","execFunction","then","catch","finally","handleCustomCellClick","emitName","column","$index","getTableDefaultSlots"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useTable.js","names":[],"sources":["../../../../../packages/components/table/src/useTable.ts"],"sourcesContent":["import { computed, nextTick, provide, reactive, ref, watch } from \"vue\";\nimport { dayjs, useGlobalSize } from \"element-plus\";\nimport { clickUtil, consoleError, execFunction, type makeSlots } from \"@fast-china/utils\";\nimport { isArray, isFunction } from \"lodash-unified\";\nimport { tableUtil } from \"../utils/table\";\nimport { getTableDefaultSlots } from \"./table.type\";\nimport type { PagedInput, PagedResult } from \"./page.type\";\nimport type { FaTableSlots, faTableEmits, faTableProps } from \"./table\";\nimport type { FaTableState } from \"./table.state\";\nimport type { FaTableColumnCtx, FaTableEnumColumnCtx } from \"./table.type\";\nimport type { TableInstance } from \"element-plus\";\nimport type { ExtractPropTypes, InjectionKey, SetupContext } from \"vue\";\n\nexport const tableStateKey: InjectionKey<FaTableState> = Symbol(\"tableState\");\nexport const enumMapKey: InjectionKey<Map<string, FaTableEnumColumnCtx[]>> = Symbol(\"enumMap\");\n\ntype TableSetupContext = SetupContext<typeof faTableEmits, ReturnType<typeof makeSlots<FaTableSlots>>>;\n\n// eslint-disable-next-line @typescript-eslint/explicit-function-return-type, @typescript-eslint/explicit-module-boundary-types\nexport const useTable = (props: ExtractPropTypes<typeof faTableProps>, slots: TableSetupContext[\"slots\"], emit: TableSetupContext[\"emit\"]) => {\n\tconst _globalSize = useGlobalSize();\n\n\tconst elementRef = ref<HTMLElement>();\n\tconst tableRef = ref<TableInstance>();\n\n\t/**\n\t * 定义 enumMap 存储 enum 值(避免异步请求无法格式化单元格内容 || 无法填充搜索下拉选择)\n\t */\n\tconst enumMap = reactive(new Map<string, FaTableEnumColumnCtx[]>());\n\tprovide(enumMapKey, enumMap);\n\n\tconst state: FaTableState = reactive({\n\t\tloading: false,\n\t\tloadingText: \"加载中...\",\n\t\torgColumns: [],\n\t\ttableColumns: computed(() => state.orgColumns.filter((f) => f.prop && !f.pureSearch)),\n\t\tsearchColumns: computed(() =>\n\t\t\tstate.orgColumns\n\t\t\t\t.filter((f) => f.pureSearch || f.search)\n\t\t\t\t.sort((a, b) => {\n\t\t\t\t\treturn a.search?.order - b.search?.order;\n\t\t\t\t})\n\t\t),\n\t\tspanColumns: computed(() => [\n\t\t\t...state.orgColumns\n\t\t\t\t.filter((f) => f.spanProp)\n\t\t\t\t.map((col) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tprop: col?.prop,\n\t\t\t\t\t\tspanProp: col?.spanProp,\n\t\t\t\t\t};\n\t\t\t\t}),\n\t\t\t...(props.props.span\n\t\t\t\t? [\n\t\t\t\t\t\t{ prop: \"__table-index\", spanProp: props.props.span },\n\t\t\t\t\t\t{ prop: \"__table-selection\", spanProp: props.props.span },\n\t\t\t\t\t\t{ prop: \"__table-operation\", spanProp: props.props.span },\n\t\t\t\t\t]\n\t\t\t\t: []),\n\t\t]),\n\t\ttableData: [],\n\t\ttableSpanData: computed(() => {\n\t\t\tif (state.spanColumns?.length > 0 && state.tableData?.length > 0) {\n\t\t\t\tconst result = [];\n\t\t\t\tstate.spanColumns.forEach((item) => {\n\t\t\t\t\tresult[item.prop] = new Array(state.tableData.length).fill(1, 0, 1).fill(0, 1);\n\t\t\t\t\tresult[`${item.prop}-index`] = 0;\n\t\t\t\t});\n\t\t\t\tfor (let i = 1; i < state.tableData.length; i++) {\n\t\t\t\t\tstate.spanColumns.forEach((item) => {\n\t\t\t\t\t\tif (state.tableData[i][item.spanProp] === state.tableData[i - 1][item.spanProp]) {\n\t\t\t\t\t\t\tresult[item.prop][result[`${item.prop}-index`]]++;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tresult[`${item.prop}-index`] = i;\n\t\t\t\t\t\t\tresult[item.prop][i] = 1;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\treturn result;\n\t\t\t}\n\t\t\treturn [];\n\t\t}),\n\t\ttablePagination: {\n\t\t\tpageIndex: 1,\n\t\t\tpageSize: 20,\n\t\t\ttotalRows: 0,\n\t\t},\n\t\tinitParam: {},\n\t\tsearchParam: {},\n\t\tsearchValueUpdate: \"\",\n\t\tsearchForm: props.searchForm,\n\t\tselected: false,\n\t\tselectedList: [],\n\t\tselectedListIds: computed(() => state.selectedList.map((item) => (isFunction(props.rowKey) ? props.rowKey(item) : item[props.rowKey]))),\n\t\tindeterminateSelectedListIds: [],\n\t\tresponseConfig: undefined,\n\t\toperationColumnWidth: computed(() => {\n\t\t\tconst findAutoCol = state.autoColumnWidth.find((f) => f.prop === \"__table-operation\");\n\t\t\tif (findAutoCol) {\n\t\t\t\treturn `${findAutoCol.width}px`;\n\t\t\t}\n\t\t\tswitch (_globalSize.value) {\n\t\t\t\tcase \"large\":\n\t\t\t\tcase \"default\":\n\t\t\t\t\treturn \"54px\";\n\t\t\t\tcase \"small\":\n\t\t\t\t\treturn \"42px\";\n\t\t\t\tdefault:\n\t\t\t\t\treturn \"auto\";\n\t\t\t}\n\t\t}),\n\t\timagePreview: false,\n\t\tpreviewList: [],\n\t\ttableWidth: undefined,\n\t\ttableHeight: undefined,\n\t\tautoColumnWidth: [],\n\t});\n\n\tprovide(tableStateKey, state);\n\n\tconst handleTableColumnAutoWidth = (): void => {\n\t\tstate.loading = true;\n\t\tstate.loadingText = \"加载中...\";\n\t\tstate.autoColumnWidth = [];\n\t\tconst autoWidthColumns = state.tableColumns.filter((f) => f.autoWidth);\n\t\tif (slots?.operation) {\n\t\t\t// 操作列自动宽度\n\t\t\tautoWidthColumns.push({\n\t\t\t\tprop: \"__table-operation\",\n\t\t\t});\n\t\t}\n\t\tif (autoWidthColumns?.length > 0) {\n\t\t\t// padding24/16 + border1\n\t\t\tconst otherWidth = _globalSize.value === \"default\" ? 25 : 17;\n\t\t\tnextTick(() => {\n\t\t\t\tconst tableDom = document.querySelector(`.fa-table__${props.tableKey}`);\n\t\t\t\tif (tableDom) {\n\t\t\t\t\tautoWidthColumns.forEach((item) => {\n\t\t\t\t\t\tconst headerColumnDom = tableDom.querySelector(`.__fa-table__auto-width-column__cell-header__${item?.prop}`);\n\t\t\t\t\t\tconst cellColumnDoms = tableDom.querySelectorAll(`.__fa-table__auto-width-column__cell__${item?.prop}`);\n\t\t\t\t\t\tlet maxWidth = 0;\n\t\t\t\t\t\tif (headerColumnDom) {\n\t\t\t\t\t\t\tmaxWidth = Math.ceil(headerColumnDom.scrollWidth) + otherWidth;\n\t\t\t\t\t\t\tif (item?.sortable) {\n\t\t\t\t\t\t\t\tmaxWidth += 24;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcellColumnDoms.forEach((cellDom) => {\n\t\t\t\t\t\t\tconst curWidth = Math.ceil(cellDom.scrollWidth) + otherWidth;\n\t\t\t\t\t\t\tif (curWidth > maxWidth) {\n\t\t\t\t\t\t\t\tmaxWidth = curWidth;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\tconst findInfo = state.autoColumnWidth.find((f) => f.prop === item?.prop);\n\t\t\t\t\t\tif (findInfo) {\n\t\t\t\t\t\t\tfindInfo.width = Math.max(findInfo.width, maxWidth);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tstate.autoColumnWidth.push({\n\t\t\t\t\t\t\t\tprop: item?.prop,\n\t\t\t\t\t\t\t\twidth: maxWidth,\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t\tstate.loading = false;\n\t};\n\n\tconst handleTableData = (data: any[]): any[] => {\n\t\tif (props.treeData) {\n\t\t\tconst result: any[] = [];\n\t\t\tdata.forEach((row) => {\n\t\t\t\tconst rowList = row[props.props.children];\n\t\t\t\tif (isArray(rowList)) {\n\t\t\t\t\t// 如果 rowList 是数组,遍历并合并每个子项\n\t\t\t\t\trowList.forEach((cRow) => result.push({ ...row, ...cRow }));\n\t\t\t\t} else {\n\t\t\t\t\tresult.push({ ...row, ...(rowList || {}) });\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn result;\n\t\t} else {\n\t\t\treturn data;\n\t\t}\n\t};\n\n\tconst getRequestParam = (): PagedInput => {\n\t\tconst params = { ...state.searchParam, ...(props.pagination ? state.tablePagination : {}) };\n\t\t// 删除总条数\n\t\tdelete params.totalRows;\n\t\treturn params;\n\t};\n\n\tconst loadData = async (): Promise<void> => {\n\t\tstate.loading = true;\n\t\tstate.loadingText = \"加载中...\";\n\t\tif (props.requestApi) {\n\t\t\tconst params = getRequestParam();\n\t\t\temit(\"refresh\", params);\n\t\t\tlet pageData = [];\n\t\t\ttry {\n\t\t\t\tconst resData = await props.requestApi(params);\n\t\t\t\t// 数据回调\n\t\t\t\tprops.dataCallback && props.dataCallback(resData);\n\t\t\t\t// 解析 API 接口返回的分页数据(如果有分页更新分页信息)\n\t\t\t\tif (props.pagination) {\n\t\t\t\t\tconst pageRes = resData as PagedResult;\n\t\t\t\t\tpageData = pageRes.rows;\n\t\t\t\t\t// 更新分页信息\n\t\t\t\t\tObject.assign(state.tablePagination, {\n\t\t\t\t\t\tpageIndex: pageRes.pageIndex,\n\t\t\t\t\t\tpageSize: pageRes.pageSize,\n\t\t\t\t\t\ttotalRows: pageRes.totalRows,\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tpageData = resData as any[];\n\t\t\t\t\t// 更新分页信息\n\t\t\t\t\tObject.assign(state.tablePagination, {\n\t\t\t\t\t\tpageIndex: 1,\n\t\t\t\t\t\tpageSize: 0,\n\t\t\t\t\t\ttotalRows: pageData.length,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tstate.tableData = handleTableData(pageData);\n\t\t\t} catch (error) {\n\t\t\t\tconsoleError(\"FaTable\", error);\n\t\t\t\tstate.tableData = [];\n\t\t\t} finally {\n\t\t\t\tstate.loading = false;\n\t\t\t}\n\t\t} else {\n\t\t\temit(\"refresh\", { searchValue: state.searchParam.searchValue });\n\t\t\tlet _value = handleTableData(props.data);\n\t\t\t_value = _value.filter((f) => {\n\t\t\t\tif (!state.searchParam.searchValue) return true;\n\t\t\t\treturn state.tableColumns.some((col) => {\n\t\t\t\t\treturn f[col.prop]?.toString()?.toLowerCase().includes(state.searchParam.searchValue?.toLowerCase());\n\t\t\t\t});\n\t\t\t});\n\t\t\tif (state.searchParam.sortList?.length > 0) {\n\t\t\t\t_value = _value.sort(tableUtil.arrayDynamicSort(state.searchParam.sortList));\n\t\t\t}\n\t\t\tif (props.pagination) {\n\t\t\t\t// 更新分页信息\n\t\t\t\tObject.assign(state.tablePagination, {\n\t\t\t\t\ttotalRows: _value.length,\n\t\t\t\t});\n\t\t\t\tconst pageStart = (state.tablePagination.pageIndex - 1) * state.tablePagination.pageSize;\n\t\t\t\tconst pageEnd = pageStart + state.tablePagination.pageSize;\n\t\t\t\tstate.tableData = _value.slice(pageStart, pageEnd);\n\t\t\t} else {\n\t\t\t\tstate.tableData = _value;\n\t\t\t\t// 更新分页信息\n\t\t\t\tObject.assign(state.tablePagination, {\n\t\t\t\t\tpageIndex: 1,\n\t\t\t\t\tpageSize: 0,\n\t\t\t\t\ttotalRows: _value.length,\n\t\t\t\t});\n\t\t\t}\n\t\t\tstate.loading = false;\n\t\t}\n\t\thandleTableColumnAutoWidth();\n\t};\n\n\tconst loadTableColumns = (): void => {\n\t\tlet columns: FaTableColumnCtx[] = props.columns ? props.columns : [];\n\t\t// 默认值处理\n\t\tcolumns.forEach((col) => {\n\t\t\t// 处理搜索项的 key 和 label\n\t\t\tif (col.pureSearch || col.search) {\n\t\t\t\tcol.search.key ??= col.prop;\n\t\t\t\tcol.search.label ??= col.label;\n\t\t\t\t// 处理默认值\n\t\t\t\tif (col.search.defaultValue) {\n\t\t\t\t\tstate.searchParam[col.search.key] = col.search.defaultValue;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\t// 排序\n\t\tcolumns = columns.sort((a, b) => {\n\t\t\treturn a?.order - b?.order;\n\t\t});\n\n\t\t// TODO:这里的扁平化暂时没用到\n\t\tstate.orgColumns = tableUtil.flatColumns(columns, enumMap);\n\t};\n\n\tconst handleSizeChange = (pageSize: number): void => {\n\t\tstate.tablePagination.pageIndex = 1;\n\t\tstate.tablePagination.pageSize = pageSize;\n\t\temit(\"sizeChange\", pageSize);\n\t\temit(\"paginationChange\", 1, pageSize);\n\t\tloadData();\n\t};\n\tconst handlePaginationChange = (val: number): void => {\n\t\tstate.tablePagination.pageIndex = val;\n\t\temit(\"sizeChange\", state.tablePagination.pageSize);\n\t\temit(\"paginationChange\", val, state.tablePagination.pageSize);\n\t\tloadData();\n\t};\n\n\tconst updatedTotalParam = (): void => {\n\t\t// 处理查询参数,可以给查询参数加自定义前缀操作\n\t\tconst newSearchParam = {};\n\t\t// 防止手动清空输入框携带参数(这里可以自定义查询参数前缀)\n\t\tfor (const key in state.searchParam) {\n\t\t\t// * 某些情况下参数为 false/0 也应该携带参数\n\t\t\tif (state.searchParam[key] || state.searchParam[key] === false || state.searchParam[key] === 0) {\n\t\t\t\tnewSearchParam[key] = state.searchParam[key];\n\t\t\t}\n\t\t\t// 处理某些情况下如果为空字符串,其实是不需要传到后端的\n\t\t\telse if (!state.searchParam[key]) {\n\t\t\t\tdelete state.searchParam[key];\n\t\t\t}\n\t\t}\n\t\tObject.assign(state.searchParam, newSearchParam);\n\t};\n\n\tconst defaultSearchTime = (): void => {\n\t\tif (props.hideSearchTime) {\n\t\t\tstate.searchParam.searchTimeList = undefined;\n\t\t} else {\n\t\t\tconst end = new Date();\n\t\t\tconst start = new Date();\n\t\t\tif (props.futureSearchTime) {\n\t\t\t\tswitch (props.dataSearchRange) {\n\t\t\t\t\tcase \"Past1D\":\n\t\t\t\t\t\tend.setDate(end.getDate() + 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past3D\":\n\t\t\t\t\t\tend.setDate(end.getDate() + 3);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past1W\":\n\t\t\t\t\t\tend.setDate(end.getDate() + 7);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past1M\":\n\t\t\t\t\t\tend.setMonth(end.getMonth() + 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past3M\":\n\t\t\t\t\t\tend.setMonth(end.getMonth() + 3);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past6M\":\n\t\t\t\t\t\tend.setMonth(end.getMonth() + 6);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past1Y\":\n\t\t\t\t\t\tend.setFullYear(end.getFullYear() + 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past3Y\":\n\t\t\t\t\t\tend.setFullYear(end.getFullYear() + 3);\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tswitch (props.dataSearchRange) {\n\t\t\t\t\tcase \"Past1D\":\n\t\t\t\t\t\tstart.setDate(start.getDate() - 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past3D\":\n\t\t\t\t\t\tstart.setDate(start.getDate() - 3);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past1W\":\n\t\t\t\t\t\tstart.setDate(start.getDate() - 7);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past1M\":\n\t\t\t\t\t\tstart.setMonth(start.getMonth() - 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past3M\":\n\t\t\t\t\t\tstart.setMonth(start.getMonth() - 3);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past6M\":\n\t\t\t\t\t\tstart.setMonth(start.getMonth() - 6);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past1Y\":\n\t\t\t\t\t\tstart.setFullYear(start.getFullYear() - 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Past3Y\":\n\t\t\t\t\t\tstart.setFullYear(start.getFullYear() - 3);\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tstate.searchParam.searchTimeList = [dayjs(start).format(\"YYYY-MM-DD 00:00:00\"), dayjs(end).format(\"YYYY-MM-DD 23:59:59\")];\n\t\t}\n\t};\n\n\tconst tableSearch = async (): Promise<void> => {\n\t\t// 重置到第一页\n\t\tstate.tablePagination.pageIndex = 1;\n\t\tupdatedTotalParam();\n\t\tawait loadData();\n\t};\n\n\tconst tableReset = async (): Promise<void> => {\n\t\t// 重置到第一页\n\t\tstate.tablePagination.pageIndex = 1;\n\t\t// 清除搜索条件\n\t\tstate.searchParam = {};\n\t\tdefaultSearchTime();\n\t\t// 重置搜索表单的时候,如果有默认搜索参数,则重置默认的搜索参数\n\t\tObject.keys(state.initParam ?? {}).forEach((key) => {\n\t\t\tstate.searchParam[key] = state.initParam[key];\n\t\t});\n\t\temit(\"reset\", state.searchParam);\n\t\tawait loadData();\n\t};\n\n\tconst doRender = async (): Promise<void> => {\n\t\tstate.orgColumns = [];\n\t\tstate.autoColumnWidth = [];\n\t\tstate.tableData = [];\n\t\tawait clickUtil.debounceAsync(async () => {\n\t\t\tloadTableColumns();\n\t\t\tawait tableSearch();\n\t\t}, 300);\n\t};\n\n\tconst doLoading = (loadingFunction: () => void | Promise<void>, loadingText = \"加载中...\"): void => {\n\t\tstate.loading = true;\n\t\tstate.loadingText = loadingText;\n\t\texecFunction(loadingFunction)\n\t\t\t.then()\n\t\t\t.catch((error) => {\n\t\t\t\tconsoleError(\"FaTable\", error);\n\t\t\t})\n\t\t\t.finally(() => {\n\t\t\t\tstate.loading = false;\n\t\t\t});\n\t};\n\n\tconst handleCustomCellClick = (emitName: string, { row, column, $index }: { row: any; column: FaTableColumnCtx; $index: number }): void => {\n\t\temit(\"customCellClick\", emitName, { row, column, $index, ...getTableDefaultSlots(state) });\n\t};\n\n\twatch(\n\t\t() => props.tableKey,\n\t\tasync () => {\n\t\t\tawait doRender();\n\t\t}\n\t);\n\n\twatch(\n\t\t() => props.searchForm,\n\t\t(newValue) => {\n\t\t\tstate.searchForm = newValue;\n\t\t}\n\t);\n\n\treturn {\n\t\t_globalSize,\n\t\tstate,\n\t\telementRef,\n\t\ttableRef,\n\t\thandleTableColumnAutoWidth,\n\t\tgetRequestParam,\n\t\tloadTableColumns,\n\t\thandleSizeChange,\n\t\thandlePaginationChange,\n\t\tdefaultSearchTime,\n\t\ttableSearch,\n\t\ttableReset,\n\t\tdoRender,\n\t\tdoLoading,\n\t\thandleCustomCellClick,\n\t};\n};\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"
|
|
2
|
-
//# sourceMappingURL=table.js.map
|
|
1
|
+
require("../../../_virtual/_rolldown/runtime.js");let e=require("lodash-unified");var n={formatValue:n=>(0,e.isArray)(n)?n.length?n.join(" , "):null:n,handleRowAccordingToProp:(e,n)=>n.includes(".")?(n.split(".").forEach(n=>e=e[n]),e):e[n],handleProp(e){const n=e.split(".");return 1===n.length?e:n[n.length-1]},filterEnum(n,r,t,i){const l=t?.value??"value",s=t?.label??"label";let o={};return(0,e.isArray)(r)&&(o=r.find(e=>e[l]===n)),"tag"===i?o?.type??"info":o?o[s]:null},arrayDynamicSort:e=>function(n,r){if(e&&e.length>0)for(const t of e){const e=t.enField,i=t.mode,l=n[e],s=r[e];if("string"==typeof l&&"string"==typeof s){if("ascending"===i){const e=l.localeCompare(s,"zh-CN");if(0!==e)return e}else if("descending"===i){const e=s.localeCompare(l,"zh-CN");if(0!==e)return e}}else if("ascending"===i){if(l<s)return-1;if(l>s)return 1}else if("descending"===i){if(l>s)return-1;if(l<s)return 1}}return 0},setEnumMap(n,r,t){n&&((0,e.isFunction)(n)?t.set(r,n()):(0,e.isArray)(n)&&t.set(r,n))},flatColumns(n,r){const t=[];return n.forEach(n=>{n._children?.length&&t.push(...this.flatColumns(n._children)),t.push(n),n.show=n.show??!0;let i=n.prop??n.search?.key;n.enum&&(0,e.isString)(n.enum)&&(i=n.enum),this.setEnumMap(n.enum,i,r)}),t.filter(e=>!e._children?.length)}};exports.tableUtil=n;
|
|
2
|
+
//# sourceMappingURL=table.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.js","sources":["../../../../../packages/components/table/utils/table.ts"],"sourcesContent":["import { isArray, isFunction, isString } from \"lodash-unified\";\nimport type { FaTableColumnCtx, FaTableEnumColumnCtx, FaTableEnumColumnType, PagedSortInput } from \"@fast-element-plus/components\";\n\n/**\n * 表格工具类\n */\nexport const tableUtil = {\n\t/**\n\t * @description 处理无数据情况\n\t * @param {String} callValue 需要处理的值\n\t */\n\tformatValue(callValue: any): any {\n\t\t// 如果当前值为数组,使用 / 拼接(根据需求自定义)\n\t\tif (isArray(callValue)) return callValue.length ? callValue.join(` , `) : null;\n\t\treturn callValue;\n\t},\n\t/**\n\t * @description 处理 prop 为多级嵌套的情况(列如: prop:user.name)\n\t * @param {Object} row 当前行数据\n\t * @param {String} prop 当前 prop\n\t */\n\thandleRowAccordingToProp(row: any, prop: string): any {\n\t\tif (!prop.includes(\".\")) return row[prop];\n\t\tprop.split(\".\").forEach((item) => (row = row[item]));\n\t\treturn row;\n\t},\n\t/**\n\t * @description 处理 prop,当 prop 为多级嵌套时 ==> 返回最后一级 prop\n\t * @param {String} prop 当前 prop\n\t */\n\thandleProp(prop: string): string {\n\t\tconst propArr = prop.split(\".\");\n\t\tif (propArr.length === 1) return prop;\n\t\treturn propArr[propArr.length - 1];\n\t},\n\t/**\n\t * @description 根据枚举列表查询当需要的数据(如果指定了 label 和 value 的 key值,会自动识别格式化)\n\t * @param {String} callValue 当前单元格值\n\t * @param {Array} enumData 字典列表\n\t * @param {Array} fieldNames 指定 label && value 的 key 值\n\t * @param {String} type 过滤类型(目前只有 tag)\n\t */\n\tfilterEnum(callValue: any, enumData: FaTableEnumColumnCtx[], fieldNames?: { label: string; value: string }, type?: \"tag\"): string {\n\t\tconst value = fieldNames?.value ?? \"value\";\n\t\tconst label = fieldNames?.label ?? \"label\";\n\t\tlet filterData: any = {};\n\t\tif (isArray(enumData)) {\n\t\t\tfilterData = enumData.find((item: any) => item[value] === callValue);\n\t\t}\n\t\tif (type === \"tag\") {\n\t\t\treturn filterData?.type ?? \"info\";\n\t\t}\n\t\treturn filterData ? filterData[label] : null;\n\t},\n\t/**\n\t * 数组动态排序\n\t */\n\tarrayDynamicSort(sortList: PagedSortInput[]): (a: any, b: any) => number {\n\t\treturn function (a: any, b: any) {\n\t\t\tif (sortList && sortList.length > 0) {\n\t\t\t\tfor (const condition of sortList) {\n\t\t\t\t\tconst property = condition.enField;\n\t\t\t\t\tconst order = condition.mode;\n\n\t\t\t\t\tconst aValue = a[property];\n\t\t\t\t\tconst bValue = b[property];\n\n\t\t\t\t\tif (typeof aValue === \"string\" && typeof bValue === \"string\") {\n\t\t\t\t\t\tif (order === \"ascending\") {\n\t\t\t\t\t\t\tconst comparison = aValue.localeCompare(bValue, \"zh-CN\");\n\t\t\t\t\t\t\tif (comparison !== 0) {\n\t\t\t\t\t\t\t\treturn comparison;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else if (order === \"descending\") {\n\t\t\t\t\t\t\tconst comparison = bValue.localeCompare(aValue, \"zh-CN\");\n\t\t\t\t\t\t\tif (comparison !== 0) {\n\t\t\t\t\t\t\t\treturn comparison;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (order === \"ascending\") {\n\t\t\t\t\t\t\tif (aValue < bValue) return -1;\n\t\t\t\t\t\t\tif (aValue > bValue) return 1;\n\t\t\t\t\t\t} else if (order === \"descending\") {\n\t\t\t\t\t\t\tif (aValue > bValue) return -1;\n\t\t\t\t\t\t\tif (aValue < bValue) return 1;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn 0;\n\t\t};\n\t},\n\t/**\n\t * 设置枚举\n\t */\n\tsetEnumMap(columnEnum: FaTableEnumColumnType, prop: string, enumMap: Map<string, FaTableEnumColumnCtx[]>): void {\n\t\tif (!columnEnum) return;\n\t\tif (isFunction(columnEnum)) {\n\t\t\tenumMap.set(prop, columnEnum());\n\t\t} else if (isArray(columnEnum)) {\n\t\t\tenumMap.set(prop, columnEnum);\n\t\t}\n\t},\n\t/**\n\t * 扁平化 columns\n\t */\n\tflatColumns(columns: FaTableColumnCtx[], enumMap?: Map<string, FaTableEnumColumnCtx[]>): FaTableColumnCtx[] {\n\t\tconst flatArr: FaTableColumnCtx[] = [];\n\t\tcolumns.forEach((col) => {\n\t\t\tif (col._children?.length) {\n\t\t\t\tflatArr.push(...this.flatColumns(col._children));\n\t\t\t}\n\n\t\t\tflatArr.push(col);\n\n\t\t\t// 给每一项 column 添加 show && filterEnum 默认属性\n\t\t\tcol.show = col.show ?? true;\n\t\t\t// col.filterEnum = col.filterEnum ?? col.tag ?? false;\n\n\t\t\tlet enumKey = col.prop ?? col.search?.key;\n\n\t\t\tif (col.enum && isString(col.enum)) {\n\t\t\t\tenumKey = col.enum;\n\t\t\t}\n\n\t\t\t// 设置 enumMap\n\t\t\tthis.setEnumMap(col.enum, enumKey, enumMap);\n\t\t});\n\t\treturn flatArr.filter((item) => !item._children?.length);\n\t},\n};\n"],"
|
|
1
|
+
{"version":3,"file":"table.js","names":[],"sources":["../../../../../packages/components/table/utils/table.ts"],"sourcesContent":["import { isArray, isFunction, isString } from \"lodash-unified\";\nimport type { FaTableColumnCtx, FaTableEnumColumnCtx, FaTableEnumColumnType, PagedSortInput } from \"@fast-element-plus/components\";\n\n/**\n * 表格工具类\n */\nexport const tableUtil = {\n\t/**\n\t * @description 处理无数据情况\n\t * @param {String} callValue 需要处理的值\n\t */\n\tformatValue(callValue: any): any {\n\t\t// 如果当前值为数组,使用 / 拼接(根据需求自定义)\n\t\tif (isArray(callValue)) return callValue.length ? callValue.join(` , `) : null;\n\t\treturn callValue;\n\t},\n\t/**\n\t * @description 处理 prop 为多级嵌套的情况(列如: prop:user.name)\n\t * @param {Object} row 当前行数据\n\t * @param {String} prop 当前 prop\n\t */\n\thandleRowAccordingToProp(row: any, prop: string): any {\n\t\tif (!prop.includes(\".\")) return row[prop];\n\t\tprop.split(\".\").forEach((item) => (row = row[item]));\n\t\treturn row;\n\t},\n\t/**\n\t * @description 处理 prop,当 prop 为多级嵌套时 ==> 返回最后一级 prop\n\t * @param {String} prop 当前 prop\n\t */\n\thandleProp(prop: string): string {\n\t\tconst propArr = prop.split(\".\");\n\t\tif (propArr.length === 1) return prop;\n\t\treturn propArr[propArr.length - 1];\n\t},\n\t/**\n\t * @description 根据枚举列表查询当需要的数据(如果指定了 label 和 value 的 key值,会自动识别格式化)\n\t * @param {String} callValue 当前单元格值\n\t * @param {Array} enumData 字典列表\n\t * @param {Array} fieldNames 指定 label && value 的 key 值\n\t * @param {String} type 过滤类型(目前只有 tag)\n\t */\n\tfilterEnum(callValue: any, enumData: FaTableEnumColumnCtx[], fieldNames?: { label: string; value: string }, type?: \"tag\"): string {\n\t\tconst value = fieldNames?.value ?? \"value\";\n\t\tconst label = fieldNames?.label ?? \"label\";\n\t\tlet filterData: any = {};\n\t\tif (isArray(enumData)) {\n\t\t\tfilterData = enumData.find((item: any) => item[value] === callValue);\n\t\t}\n\t\tif (type === \"tag\") {\n\t\t\treturn filterData?.type ?? \"info\";\n\t\t}\n\t\treturn filterData ? filterData[label] : null;\n\t},\n\t/**\n\t * 数组动态排序\n\t */\n\tarrayDynamicSort(sortList: PagedSortInput[]): (a: any, b: any) => number {\n\t\treturn function (a: any, b: any) {\n\t\t\tif (sortList && sortList.length > 0) {\n\t\t\t\tfor (const condition of sortList) {\n\t\t\t\t\tconst property = condition.enField;\n\t\t\t\t\tconst order = condition.mode;\n\n\t\t\t\t\tconst aValue = a[property];\n\t\t\t\t\tconst bValue = b[property];\n\n\t\t\t\t\tif (typeof aValue === \"string\" && typeof bValue === \"string\") {\n\t\t\t\t\t\tif (order === \"ascending\") {\n\t\t\t\t\t\t\tconst comparison = aValue.localeCompare(bValue, \"zh-CN\");\n\t\t\t\t\t\t\tif (comparison !== 0) {\n\t\t\t\t\t\t\t\treturn comparison;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else if (order === \"descending\") {\n\t\t\t\t\t\t\tconst comparison = bValue.localeCompare(aValue, \"zh-CN\");\n\t\t\t\t\t\t\tif (comparison !== 0) {\n\t\t\t\t\t\t\t\treturn comparison;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (order === \"ascending\") {\n\t\t\t\t\t\t\tif (aValue < bValue) return -1;\n\t\t\t\t\t\t\tif (aValue > bValue) return 1;\n\t\t\t\t\t\t} else if (order === \"descending\") {\n\t\t\t\t\t\t\tif (aValue > bValue) return -1;\n\t\t\t\t\t\t\tif (aValue < bValue) return 1;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn 0;\n\t\t};\n\t},\n\t/**\n\t * 设置枚举\n\t */\n\tsetEnumMap(columnEnum: FaTableEnumColumnType, prop: string, enumMap: Map<string, FaTableEnumColumnCtx[]>): void {\n\t\tif (!columnEnum) return;\n\t\tif (isFunction(columnEnum)) {\n\t\t\tenumMap.set(prop, columnEnum());\n\t\t} else if (isArray(columnEnum)) {\n\t\t\tenumMap.set(prop, columnEnum);\n\t\t}\n\t},\n\t/**\n\t * 扁平化 columns\n\t */\n\tflatColumns(columns: FaTableColumnCtx[], enumMap?: Map<string, FaTableEnumColumnCtx[]>): FaTableColumnCtx[] {\n\t\tconst flatArr: FaTableColumnCtx[] = [];\n\t\tcolumns.forEach((col) => {\n\t\t\tif (col._children?.length) {\n\t\t\t\tflatArr.push(...this.flatColumns(col._children));\n\t\t\t}\n\n\t\t\tflatArr.push(col);\n\n\t\t\t// 给每一项 column 添加 show && filterEnum 默认属性\n\t\t\tcol.show = col.show ?? true;\n\t\t\t// col.filterEnum = col.filterEnum ?? col.tag ?? false;\n\n\t\t\tlet enumKey = col.prop ?? col.search?.key;\n\n\t\t\tif (col.enum && isString(col.enum)) {\n\t\t\t\tenumKey = col.enum;\n\t\t\t}\n\n\t\t\t// 设置 enumMap\n\t\t\tthis.setEnumMap(col.enum, enumKey, enumMap);\n\t\t});\n\t\treturn flatArr.filter((item) => !item._children?.length);\n\t},\n};\n"],"mappings":"kFAMA,IAAa,EAAY,CAKxB,YAAY,IAEX,EAAA,EAAA,SAAY,GAAmB,EAAU,OAAS,EAAU,KAAK,OAAS,KACnE,EAOR,yBAAA,CAAyB,EAAU,IAC7B,EAAK,SAAS,MACnB,EAAK,MAAM,KAAK,QAAS,GAAU,EAAM,EAAI,IACtC,GAFyB,EAAI,GAQrC,UAAA,CAAW,GACV,MAAM,EAAU,EAAK,MAAM,KAC3B,OAAuB,IAAnB,EAAQ,OAAqB,EAC1B,EAAQ,EAAQ,OAAS,IASjC,UAAA,CAAW,EAAgB,EAAkC,EAA+C,GAC3G,MAAM,EAAQ,GAAY,OAAS,QAC7B,EAAQ,GAAY,OAAS,QACnC,IAAI,EAAkB,CAAA,EAItB,OAHA,EAAA,EAAA,SAAY,KACX,EAAa,EAAS,KAAM,GAAc,EAAK,KAAW,IAE9C,QAAT,EACI,GAAY,MAAQ,OAErB,EAAa,EAAW,GAAS,MAKzC,iBAAiB,GACT,SAAU,EAAQ,GACxB,GAAI,GAAY,EAAS,OAAS,EACjC,IAAK,MAAM,KAAa,EAAU,CACjC,MAAM,EAAW,EAAU,QACrB,EAAQ,EAAU,KAElB,EAAS,EAAE,GACX,EAAS,EAAE,GAEjB,GAAsB,iBAAX,GAAyC,iBAAX,GACxC,GAAc,cAAV,EAAuB,CAC1B,MAAM,EAAa,EAAO,cAAc,EAAQ,SAChD,GAAmB,IAAf,EACH,OAAO,UAEY,eAAV,EAAwB,CAClC,MAAM,EAAa,EAAO,cAAc,EAAQ,SAChD,GAAmB,IAAf,EACH,OAAO,QAIT,GAAc,cAAV,EAAuB,CAC1B,GAAI,EAAS,EAAQ,OAAQ,EAC7B,GAAI,EAAS,EAAQ,OAAO,UACR,eAAV,EAAwB,CAClC,GAAI,EAAS,EAAQ,OAAQ,EAC7B,GAAI,EAAS,EAAQ,OAAO,GAMhC,OAAO,GAMT,UAAA,CAAW,EAAmC,EAAc,GACtD,KACL,EAAA,EAAA,YAAe,GACd,EAAQ,IAAI,EAAM,mBACA,IAClB,EAAQ,IAAI,EAAM,KAMpB,WAAA,CAAY,EAA6B,GACxC,MAAM,EAA8B,GAqBpC,OApBA,EAAQ,QAAS,IACZ,EAAI,WAAW,QAClB,EAAQ,QAAQ,KAAK,YAAY,EAAI,YAGtC,EAAQ,KAAK,GAGb,EAAI,KAAO,EAAI,OAAQ,EAGvB,IAAI,EAAU,EAAI,MAAQ,EAAI,QAAQ,IAElC,EAAI,OAAA,EAAA,EAAA,UAAiB,EAAI,QAC5B,EAAU,EAAI,MAIf,KAAK,WAAW,EAAI,KAAM,EAAS,KAE7B,EAAQ,OAAQ,IAAU,EAAK,WAAW"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"
|
|
2
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
require("../../_virtual/_rolldown/runtime.js");const e=require("./src/tree.js");require("./src/tree.type.js");var r=(0,require("@fast-china/utils").withInstall)(e.default);exports.default=r;
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../packages/components/tree/index.ts"],"sourcesContent":["import { withInstall } from \"@fast-china/utils\";\nimport Tree, { faTreeEmits, faTreeProps } from \"./src/tree\";\nimport type { ExtractPropTypes } from \"vue\";\n\nexport const FaTree = withInstall(Tree);\nexport default FaTree;\n\nexport { faTreeProps, faTreeEmits };\nexport * from \"./src/tree.type\";\n\nexport declare type FaTreeInstance = InstanceType<typeof Tree>;\n\nexport declare type FaTreeProps = ExtractPropTypes<typeof faTreeProps>;\n\nexport declare type FaTreeEmits = typeof faTreeEmits;\n"],"
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../packages/components/tree/index.ts"],"sourcesContent":["import { withInstall } from \"@fast-china/utils\";\nimport Tree, { faTreeEmits, faTreeProps } from \"./src/tree\";\nimport type { ExtractPropTypes } from \"vue\";\n\nexport const FaTree = withInstall(Tree);\nexport default FaTree;\n\nexport { faTreeProps, faTreeEmits };\nexport * from \"./src/tree.type\";\n\nexport declare type FaTreeInstance = InstanceType<typeof Tree>;\n\nexport declare type FaTreeProps = ExtractPropTypes<typeof faTreeProps>;\n\nexport declare type FaTreeEmits = typeof faTreeEmits;\n"],"mappings":"8GAIA,IAAa,GAAA,+BAAA,aAAqB,EAAA"}
|