pro-design-vue 1.0.0-rc.9 → 1.1.0
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.css +1 -1
- package/dist/index.full.js +399 -210
- package/dist/index.full.min.js +8 -8
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +8 -8
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +399 -210
- package/es/components/config-provider/src/config-provider-container.vue2.mjs +2 -0
- package/es/components/config-provider/src/config-provider-container.vue2.mjs.map +1 -1
- package/es/components/config-provider/src/config-provider.vue2.mjs +4 -2
- package/es/components/config-provider/src/config-provider.vue2.mjs.map +1 -1
- package/es/components/config-provider/src/typing.d.ts +6 -0
- package/es/components/config-provider/src/useTokens.d.ts +24 -0
- package/es/components/config-provider/src/useTokens.mjs +58 -0
- package/es/components/config-provider/src/useTokens.mjs.map +1 -0
- package/es/components/counter/src/counter.vue.d.ts +2 -2
- package/es/components/drawer/src/drawer.vue2.mjs +1 -1
- package/es/components/drawer/src/drawer.vue2.mjs.map +1 -1
- package/es/components/form/src/Form.d.ts +11 -11
- package/es/components/form/src/base/BaseForm.d.ts +2 -2
- package/es/components/form/src/base/BaseForm.mjs +16 -11
- package/es/components/form/src/base/BaseForm.mjs.map +1 -1
- package/es/components/form/src/base/StepForm.d.ts +2 -2
- package/es/components/form/src/components/FormColWrapper.d.ts +9 -0
- package/es/components/form/src/components/FormColWrapper.mjs +9 -1
- package/es/components/form/src/components/FormColWrapper.mjs.map +1 -1
- package/es/components/form/src/components/FormGroup.d.ts +55 -53
- package/es/components/form/src/components/FormGroup.mjs +1 -1
- package/es/components/form/src/components/FormGroup.mjs.map +1 -1
- package/es/components/form/src/components/FormItem.d.ts +9 -0
- package/es/components/form/src/components/FormItem.mjs +32 -24
- package/es/components/form/src/components/FormItem.mjs.map +1 -1
- package/es/components/form/src/components/FormItems.mjs +2 -1
- package/es/components/form/src/components/FormItems.mjs.map +1 -1
- package/es/components/form/src/components/FormList.d.ts +59 -57
- package/es/components/form/src/components/FormList.mjs +1 -1
- package/es/components/form/src/components/FormList.mjs.map +1 -1
- package/es/components/form/src/components/FormListContainer.d.ts +22 -20
- package/es/components/form/src/components/FormListContainer.mjs +1 -1
- package/es/components/form/src/components/FormListContainer.mjs.map +1 -1
- package/es/components/form/src/components/FormListItem.d.ts +16 -16
- package/es/components/form/src/components/FormRowWrapper.d.ts +12 -12
- package/es/components/form/src/components/FormSet.d.ts +56 -54
- package/es/components/form/src/components/FormSet.mjs +1 -1
- package/es/components/form/src/components/FormSet.mjs.map +1 -1
- package/es/components/form/src/components/FormSubmitter.d.ts +2 -2
- package/es/components/form/src/components/FormSubmitter.mjs +25 -7
- package/es/components/form/src/components/FormSubmitter.mjs.map +1 -1
- package/es/components/form/src/components/FormTitle.d.ts +6 -4
- package/es/components/form/src/components/FormTitle.mjs +11 -6
- package/es/components/form/src/components/FormTitle.mjs.map +1 -1
- package/es/components/form/src/fields/FieldCascader.d.ts +3 -3
- package/es/components/form/src/fields/FieldCheckbox.d.ts +1 -1
- package/es/components/form/src/fields/FieldCheckboxGroup.d.ts +1 -1
- package/es/components/form/src/fields/FieldDatePicker.d.ts +1 -1
- package/es/components/form/src/fields/FieldDateRangePicker.d.ts +2 -2
- package/es/components/form/src/fields/FieldDigit.d.ts +2 -2
- package/es/components/form/src/fields/FieldDigitRange.d.ts +3 -3
- package/es/components/form/src/fields/FieldPassword.d.ts +3 -3
- package/es/components/form/src/fields/FieldRadioGroup.d.ts +1 -1
- package/es/components/form/src/fields/FieldRate.d.ts +1 -1
- package/es/components/form/src/fields/FieldReadonly.d.ts +1 -1
- package/es/components/form/src/fields/FieldSelect.d.ts +1 -1
- package/es/components/form/src/fields/FieldSlider.d.ts +1 -1
- package/es/components/form/src/fields/FieldSwitch.d.ts +1 -1
- package/es/components/form/src/fields/FieldText.d.ts +3 -3
- package/es/components/form/src/fields/FieldTextarea.d.ts +3 -3
- package/es/components/form/src/fields/FieldTimePicker.d.ts +1 -1
- package/es/components/form/src/fields/FieldTimeRangePicker.d.ts +2 -2
- package/es/components/form/src/fields/FieldTreeSelect.d.ts +2 -2
- package/es/components/form/src/fields/FieldUploadButton.d.ts +2 -2
- package/es/components/form/src/fields/FieldUploadDragger.d.ts +2 -2
- package/es/components/form/src/fields/FieldUploadPicture.d.ts +6 -6
- package/es/components/form/src/fields/FieldUploadPictureList.d.ts +2 -2
- package/es/components/form/src/hooks/useAction.d.ts +5 -3
- package/es/components/form/src/hooks/useAction.mjs +30 -11
- package/es/components/form/src/hooks/useAction.mjs.map +1 -1
- package/es/components/form/src/hooks/useFieldValue.d.ts +1 -1
- package/es/components/form/src/hooks/useFieldValue.mjs +11 -15
- package/es/components/form/src/hooks/useFieldValue.mjs.map +1 -1
- package/es/components/form/src/layouts/DrawerForm.d.ts +6 -6
- package/es/components/form/src/layouts/ModalForm.d.ts +2 -2
- package/es/components/form/src/layouts/QueryFilter.d.ts +11 -11
- package/es/components/form/src/layouts/QueryFilter.mjs +14 -4
- package/es/components/form/src/layouts/QueryFilter.mjs.map +1 -1
- package/es/components/form/src/layouts/StepsForm.d.ts +2 -2
- package/es/components/form/src/layouts/StepsForm.mjs +8 -8
- package/es/components/form/src/layouts/StepsForm.mjs.map +1 -1
- package/es/components/form/src/type.d.ts +24 -11
- package/es/components/form/src/utils/transformer.d.ts +3 -0
- package/es/components/form/src/utils/transformer.mjs +24 -0
- package/es/components/form/src/utils/transformer.mjs.map +1 -0
- package/es/components/layout/src/layout.vue.d.ts +2 -2
- package/es/components/modal/src/modal.vue2.mjs +1 -1
- package/es/components/modal/src/modal.vue2.mjs.map +1 -1
- package/es/components/table/src/components/AutoHeightHeader/Header.vue.d.ts +3 -3
- package/es/components/table/src/components/AutoHeightHeader/HeaderRow.vue.d.ts +2 -2
- package/es/components/table/src/components/Body/Body.vue.mjs.map +1 -1
- package/es/components/table/src/components/Body/Body.vue2.mjs +1 -2
- package/es/components/table/src/components/Body/Body.vue2.mjs.map +1 -1
- package/es/components/table/src/components/Body/BodyCell.mjs +2 -2
- package/es/components/table/src/components/Body/BodyCell.mjs.map +1 -1
- package/es/components/table/src/components/Body/BodyRow.vue.mjs.map +1 -1
- package/es/components/table/src/components/Body/BodyRow.vue2.mjs +3 -3
- package/es/components/table/src/components/Body/BodyRow.vue2.mjs.map +1 -1
- package/es/components/table/src/components/Body/EditInput.vue.d.ts +1 -1
- package/es/components/table/src/components/ColumnSetting/CheckboxList.vue.d.ts +1 -1
- package/es/components/table/src/components/ColumnSetting/ColumnSetting.vue.d.ts +2 -2
- package/es/components/table/src/components/ColumnSetting/GroupCheckboxList.vue.d.ts +1 -1
- package/es/components/table/src/components/Drag/RowHandler.vue.mjs.map +1 -1
- package/es/components/table/src/components/Drag/RowHandler.vue2.mjs +17 -16
- package/es/components/table/src/components/Drag/RowHandler.vue2.mjs.map +1 -1
- package/es/components/table/src/components/Form/Form.d.ts +1 -1
- package/es/components/table/src/components/Header/Header.vue.d.ts +4 -4
- package/es/components/table/src/components/Header/HeaderCell.vue.d.ts +2 -2
- package/es/components/table/src/components/Header/HeaderCellTitle.vue.mjs +19 -7
- package/es/components/table/src/components/Header/HeaderCellTitle.vue.mjs.map +1 -1
- package/es/components/table/src/components/Header/HeaderCellTitle.vue2.mjs +1 -0
- package/es/components/table/src/components/Header/HeaderCellTitle.vue2.mjs.map +1 -1
- package/es/components/table/src/components/Header/HeaderExtraCell.vue.mjs.map +1 -1
- package/es/components/table/src/components/Header/HeaderExtraCell.vue2.mjs +1 -0
- package/es/components/table/src/components/Header/HeaderExtraCell.vue2.mjs.map +1 -1
- package/es/components/table/src/components/Header/HeaderGroupCell.vue.d.ts +1 -1
- package/es/components/table/src/components/Header/HeaderRows.vue.d.ts +3 -3
- package/es/components/table/src/components/Header/HeaderRowsWrap.vue.d.ts +3 -3
- package/es/components/table/src/components/InteralTable.vue.d.ts +33 -12
- package/es/components/table/src/components/InteralTable.vue.mjs.map +1 -1
- package/es/components/table/src/components/InteralTable.vue2.mjs +11 -5
- package/es/components/table/src/components/InteralTable.vue2.mjs.map +1 -1
- package/es/components/table/src/components/Table.d.ts +29 -8
- package/es/components/table/src/components/Table.mjs +48 -14
- package/es/components/table/src/components/Table.mjs.map +1 -1
- package/es/components/table/src/components/ToolBar/ToolBar.vue.d.ts +3 -3
- package/es/components/table/src/components/ToolBar/ToolBar.vue.mjs +25 -6
- package/es/components/table/src/components/ToolBar/ToolBar.vue.mjs.map +1 -1
- package/es/components/table/src/components/ToolBar/ToolBar.vue2.mjs.map +1 -1
- package/es/components/table/src/components/interface.d.ts +33 -5
- package/es/components/table/src/components/interface.mjs +10 -1
- package/es/components/table/src/components/interface.mjs.map +1 -1
- package/es/components/table/src/hooks/useCellProps.mjs +3 -1
- package/es/components/table/src/hooks/useCellProps.mjs.map +1 -1
- package/es/components/table/src/hooks/useContainer.mjs +1 -1
- package/es/components/table/src/hooks/useContainer.mjs.map +1 -1
- package/es/components/table/src/hooks/useFetchData.mjs +33 -20
- package/es/components/table/src/hooks/useFetchData.mjs.map +1 -1
- package/es/components/table/src/hooks/useHover.d.ts +3 -0
- package/es/components/table/src/hooks/useHover.mjs +3 -1
- package/es/components/table/src/hooks/useHover.mjs.map +1 -1
- package/es/components/table/src/hooks/usePagination.d.ts +1 -0
- package/es/components/table/src/hooks/usePagination.mjs +7 -2
- package/es/components/table/src/hooks/usePagination.mjs.map +1 -1
- package/es/components/table/src/utils/genProColumnToColumn.mjs +5 -4
- package/es/components/table/src/utils/genProColumnToColumn.mjs.map +1 -1
- package/es/components/table/src/utils/util.d.ts +1 -1
- package/es/components/table/src/utils/util.mjs +1 -1
- package/es/components/table/src/utils/util.mjs.map +1 -1
- package/es/index.d.ts +107 -58
- package/es/utils/validate.d.ts +1 -1
- package/es/utils/validate.mjs +1 -1
- package/es/utils/validate.mjs.map +1 -1
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/config-provider/src/config-provider-container.vue2.js +2 -0
- package/lib/components/config-provider/src/config-provider-container.vue2.js.map +1 -1
- package/lib/components/config-provider/src/config-provider.vue2.js +4 -2
- package/lib/components/config-provider/src/config-provider.vue2.js.map +1 -1
- package/lib/components/config-provider/src/typing.d.ts +6 -0
- package/lib/components/config-provider/src/useTokens.d.ts +24 -0
- package/lib/components/config-provider/src/useTokens.js +60 -0
- package/lib/components/config-provider/src/useTokens.js.map +1 -0
- package/lib/components/counter/src/counter.vue.d.ts +2 -2
- package/lib/components/drawer/src/drawer.vue2.js +1 -1
- package/lib/components/drawer/src/drawer.vue2.js.map +1 -1
- package/lib/components/form/src/Form.d.ts +11 -11
- package/lib/components/form/src/base/BaseForm.d.ts +2 -2
- package/lib/components/form/src/base/BaseForm.js +14 -9
- package/lib/components/form/src/base/BaseForm.js.map +1 -1
- package/lib/components/form/src/base/StepForm.d.ts +2 -2
- package/lib/components/form/src/components/FormColWrapper.d.ts +9 -0
- package/lib/components/form/src/components/FormColWrapper.js +9 -1
- package/lib/components/form/src/components/FormColWrapper.js.map +1 -1
- package/lib/components/form/src/components/FormGroup.d.ts +55 -53
- package/lib/components/form/src/components/FormGroup.js +1 -1
- package/lib/components/form/src/components/FormGroup.js.map +1 -1
- package/lib/components/form/src/components/FormItem.d.ts +9 -0
- package/lib/components/form/src/components/FormItem.js +32 -24
- package/lib/components/form/src/components/FormItem.js.map +1 -1
- package/lib/components/form/src/components/FormItems.js +2 -1
- package/lib/components/form/src/components/FormItems.js.map +1 -1
- package/lib/components/form/src/components/FormList.d.ts +59 -57
- package/lib/components/form/src/components/FormList.js +1 -1
- package/lib/components/form/src/components/FormList.js.map +1 -1
- package/lib/components/form/src/components/FormListContainer.d.ts +22 -20
- package/lib/components/form/src/components/FormListContainer.js +1 -1
- package/lib/components/form/src/components/FormListContainer.js.map +1 -1
- package/lib/components/form/src/components/FormListItem.d.ts +16 -16
- package/lib/components/form/src/components/FormRowWrapper.d.ts +12 -12
- package/lib/components/form/src/components/FormSet.d.ts +56 -54
- package/lib/components/form/src/components/FormSet.js +1 -1
- package/lib/components/form/src/components/FormSet.js.map +1 -1
- package/lib/components/form/src/components/FormSubmitter.d.ts +2 -2
- package/lib/components/form/src/components/FormSubmitter.js +25 -7
- package/lib/components/form/src/components/FormSubmitter.js.map +1 -1
- package/lib/components/form/src/components/FormTitle.d.ts +6 -4
- package/lib/components/form/src/components/FormTitle.js +11 -6
- package/lib/components/form/src/components/FormTitle.js.map +1 -1
- package/lib/components/form/src/fields/FieldCascader.d.ts +3 -3
- package/lib/components/form/src/fields/FieldCheckbox.d.ts +1 -1
- package/lib/components/form/src/fields/FieldCheckboxGroup.d.ts +1 -1
- package/lib/components/form/src/fields/FieldDatePicker.d.ts +1 -1
- package/lib/components/form/src/fields/FieldDateRangePicker.d.ts +2 -2
- package/lib/components/form/src/fields/FieldDigit.d.ts +2 -2
- package/lib/components/form/src/fields/FieldDigitRange.d.ts +3 -3
- package/lib/components/form/src/fields/FieldPassword.d.ts +3 -3
- package/lib/components/form/src/fields/FieldRadioGroup.d.ts +1 -1
- package/lib/components/form/src/fields/FieldRate.d.ts +1 -1
- package/lib/components/form/src/fields/FieldReadonly.d.ts +1 -1
- package/lib/components/form/src/fields/FieldSelect.d.ts +1 -1
- package/lib/components/form/src/fields/FieldSlider.d.ts +1 -1
- package/lib/components/form/src/fields/FieldSwitch.d.ts +1 -1
- package/lib/components/form/src/fields/FieldText.d.ts +3 -3
- package/lib/components/form/src/fields/FieldTextarea.d.ts +3 -3
- package/lib/components/form/src/fields/FieldTimePicker.d.ts +1 -1
- package/lib/components/form/src/fields/FieldTimeRangePicker.d.ts +2 -2
- package/lib/components/form/src/fields/FieldTreeSelect.d.ts +2 -2
- package/lib/components/form/src/fields/FieldUploadButton.d.ts +2 -2
- package/lib/components/form/src/fields/FieldUploadDragger.d.ts +2 -2
- package/lib/components/form/src/fields/FieldUploadPicture.d.ts +6 -6
- package/lib/components/form/src/fields/FieldUploadPictureList.d.ts +2 -2
- package/lib/components/form/src/hooks/useAction.d.ts +5 -3
- package/lib/components/form/src/hooks/useAction.js +29 -9
- package/lib/components/form/src/hooks/useAction.js.map +1 -1
- package/lib/components/form/src/hooks/useFieldValue.d.ts +1 -1
- package/lib/components/form/src/hooks/useFieldValue.js +11 -15
- package/lib/components/form/src/hooks/useFieldValue.js.map +1 -1
- package/lib/components/form/src/layouts/DrawerForm.d.ts +6 -6
- package/lib/components/form/src/layouts/ModalForm.d.ts +2 -2
- package/lib/components/form/src/layouts/QueryFilter.d.ts +11 -11
- package/lib/components/form/src/layouts/QueryFilter.js +14 -4
- package/lib/components/form/src/layouts/QueryFilter.js.map +1 -1
- package/lib/components/form/src/layouts/StepsForm.d.ts +2 -2
- package/lib/components/form/src/layouts/StepsForm.js +8 -8
- package/lib/components/form/src/layouts/StepsForm.js.map +1 -1
- package/lib/components/form/src/type.d.ts +24 -11
- package/lib/components/form/src/utils/transformer.d.ts +3 -0
- package/lib/components/form/src/utils/transformer.js +28 -0
- package/lib/components/form/src/utils/transformer.js.map +1 -0
- package/lib/components/layout/src/layout.vue.d.ts +2 -2
- package/lib/components/modal/src/modal.vue2.js +1 -1
- package/lib/components/modal/src/modal.vue2.js.map +1 -1
- package/lib/components/table/src/components/AutoHeightHeader/Header.vue.d.ts +3 -3
- package/lib/components/table/src/components/AutoHeightHeader/HeaderRow.vue.d.ts +2 -2
- package/lib/components/table/src/components/Body/Body.vue.js.map +1 -1
- package/lib/components/table/src/components/Body/Body.vue2.js +1 -2
- package/lib/components/table/src/components/Body/Body.vue2.js.map +1 -1
- package/lib/components/table/src/components/Body/BodyCell.js +2 -2
- package/lib/components/table/src/components/Body/BodyCell.js.map +1 -1
- package/lib/components/table/src/components/Body/BodyRow.vue.js.map +1 -1
- package/lib/components/table/src/components/Body/BodyRow.vue2.js +3 -3
- package/lib/components/table/src/components/Body/BodyRow.vue2.js.map +1 -1
- package/lib/components/table/src/components/Body/EditInput.vue.d.ts +1 -1
- package/lib/components/table/src/components/ColumnSetting/CheckboxList.vue.d.ts +1 -1
- package/lib/components/table/src/components/ColumnSetting/ColumnSetting.vue.d.ts +2 -2
- package/lib/components/table/src/components/ColumnSetting/GroupCheckboxList.vue.d.ts +1 -1
- package/lib/components/table/src/components/Drag/RowHandler.vue.js.map +1 -1
- package/lib/components/table/src/components/Drag/RowHandler.vue2.js +17 -16
- package/lib/components/table/src/components/Drag/RowHandler.vue2.js.map +1 -1
- package/lib/components/table/src/components/Form/Form.d.ts +1 -1
- package/lib/components/table/src/components/Header/Header.vue.d.ts +4 -4
- package/lib/components/table/src/components/Header/HeaderCell.vue.d.ts +2 -2
- package/lib/components/table/src/components/Header/HeaderCellTitle.vue.js +18 -6
- package/lib/components/table/src/components/Header/HeaderCellTitle.vue.js.map +1 -1
- package/lib/components/table/src/components/Header/HeaderCellTitle.vue2.js +1 -0
- package/lib/components/table/src/components/Header/HeaderCellTitle.vue2.js.map +1 -1
- package/lib/components/table/src/components/Header/HeaderExtraCell.vue.js.map +1 -1
- package/lib/components/table/src/components/Header/HeaderExtraCell.vue2.js +1 -0
- package/lib/components/table/src/components/Header/HeaderExtraCell.vue2.js.map +1 -1
- package/lib/components/table/src/components/Header/HeaderGroupCell.vue.d.ts +1 -1
- package/lib/components/table/src/components/Header/HeaderRows.vue.d.ts +3 -3
- package/lib/components/table/src/components/Header/HeaderRowsWrap.vue.d.ts +3 -3
- package/lib/components/table/src/components/InteralTable.vue.d.ts +33 -12
- package/lib/components/table/src/components/InteralTable.vue.js.map +1 -1
- package/lib/components/table/src/components/InteralTable.vue2.js +12 -6
- package/lib/components/table/src/components/InteralTable.vue2.js.map +1 -1
- package/lib/components/table/src/components/Table.d.ts +29 -8
- package/lib/components/table/src/components/Table.js +47 -13
- package/lib/components/table/src/components/Table.js.map +1 -1
- package/lib/components/table/src/components/ToolBar/ToolBar.vue.d.ts +3 -3
- package/lib/components/table/src/components/ToolBar/ToolBar.vue.js +24 -5
- package/lib/components/table/src/components/ToolBar/ToolBar.vue.js.map +1 -1
- package/lib/components/table/src/components/ToolBar/ToolBar.vue2.js.map +1 -1
- package/lib/components/table/src/components/interface.d.ts +33 -5
- package/lib/components/table/src/components/interface.js +10 -1
- package/lib/components/table/src/components/interface.js.map +1 -1
- package/lib/components/table/src/hooks/useCellProps.js +3 -1
- package/lib/components/table/src/hooks/useCellProps.js.map +1 -1
- package/lib/components/table/src/hooks/useContainer.js +1 -1
- package/lib/components/table/src/hooks/useContainer.js.map +1 -1
- package/lib/components/table/src/hooks/useFetchData.js +33 -20
- package/lib/components/table/src/hooks/useFetchData.js.map +1 -1
- package/lib/components/table/src/hooks/useHover.d.ts +3 -0
- package/lib/components/table/src/hooks/useHover.js +2 -0
- package/lib/components/table/src/hooks/useHover.js.map +1 -1
- package/lib/components/table/src/hooks/usePagination.d.ts +1 -0
- package/lib/components/table/src/hooks/usePagination.js +7 -1
- package/lib/components/table/src/hooks/usePagination.js.map +1 -1
- package/lib/components/table/src/utils/genProColumnToColumn.js +5 -4
- package/lib/components/table/src/utils/genProColumnToColumn.js.map +1 -1
- package/lib/components/table/src/utils/util.d.ts +1 -1
- package/lib/components/table/src/utils/util.js +1 -1
- package/lib/components/table/src/utils/util.js.map +1 -1
- package/lib/index.d.ts +107 -58
- package/lib/utils/validate.d.ts +1 -1
- package/lib/utils/validate.js +1 -1
- package/lib/utils/validate.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +1 -1
- package/theme-chalk/css-var.css +1 -1
- package/theme-chalk/index.css +1 -1
- package/theme-chalk/pro-form.css +1 -1
- package/theme-chalk/src/css-var.less +154 -677
- package/theme-chalk/src/form.less +5 -0
- package/theme-chalk/src/table/alert.less +1 -0
- package/theme-chalk/src/table/table.less +3 -3
- package/theme-chalk/src/common/css-var.less +0 -914
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Table.mjs","sources":["../../../../../../../packages/components/table/src/components/Table.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-11-01 09:26:05\n * @LastEditors: shen\n * @LastEditTime: 2025-09-19 15:10:05\n * @Description:\n */\n\nimport { defineComponent, ref, computed, watch, unref } from 'vue'\nimport { Card } from 'ant-design-vue'\nimport { theme } from './config'\nimport { useProvideHover } from '../hooks/useHover'\nimport { useProvideLevel } from '../hooks/useLevel'\nimport { usePrefixCls } from '@pro-design-vue/hooks'\nimport { convertChildrenToColumns, genColumnKey, isBordered } from '../utils/util'\nimport { tableProps } from './interface'\nimport { useFetchData } from '../hooks/useFetchData'\nimport { useContainer } from '../hooks/useContainer'\nimport { genProColumnToColumn } from '../utils/genProColumnToColumn'\nimport { columnSort } from '../utils/columnSort'\nimport { flatColumnsHandle } from '../utils/flatColumnsHandle'\nimport { omit } from '@pro-design-vue/utils'\nimport useMergedState from '../hooks/useMergedState'\nimport InteralTable from './InteralTable.vue'\nimport ToolBar from './ToolBar/ToolBar.vue'\nimport Alert from './Alert.vue'\nimport FormRender from './Form/Form'\n\nimport type { ProFormItemType } from '@pro-design-vue/components/form'\nimport type {\n GetRowKey,\n Key,\n OptionSearchProps,\n Position,\n RequestData,\n SorterResult,\n TableRowSelection,\n} from './interface'\nimport type { AppendCellRange } from '../hooks/RangeInterface'\nimport type { CustomSlotsType } from '../utils/type'\nimport type { ContextSlots } from './context/TableSlotsContext'\n\nexport default defineComponent({\n name: 'ProTable',\n inheritAttrs: false,\n props: tableProps(),\n slots: {} as CustomSlotsType<ContextSlots>,\n emits: ['keydown'],\n setup(props, { expose, slots, attrs, emit }) {\n const table = ref()\n const wrapperRef = ref<HTMLDivElement>()\n const prefixCls = usePrefixCls('table')\n\n const { hoverRowKey } = useProvideHover({\n rowHoverDelay: computed(() => props.rowHoverDelay),\n })\n\n const mergedPrefixCls = computed(() => props.prefixCls ?? prefixCls)\n\n // useStyle(primaryColor, mergedPrefixCls, theme)\n\n useProvideLevel()\n\n watch(\n hoverRowKey,\n (newValue, oldValue) => {\n if (wrapperRef.value) {\n wrapperRef.value.style.removeProperty(`--${mergedPrefixCls.value}-row-bg-${oldValue}`)\n wrapperRef.value.style.setProperty(\n `--${mergedPrefixCls.value}-row-bg-${newValue}`,\n `hsl(var(--pro-accent))`,\n )\n }\n },\n { flush: 'post' },\n )\n\n const onKeydown = (ev: KeyboardEvent) => {\n ev.stopPropagation()\n emit('keydown', ev)\n }\n\n const fetchData = computed(() => {\n if (!props.request) return undefined\n\n return async (\n params?: Record<string, any>,\n sorters?: SorterResult<any>[],\n filter?: Record<string, (string | number)[] | null>,\n ) => {\n const actionParams = {\n ...(params || {}),\n ...(props.params || {}),\n }\n const response = await props.request!(actionParams, sorters, filter)\n return response as RequestData\n }\n })\n\n const actions = useFetchData(fetchData, props)\n const { dataSource, loading, pagination, pollingLoading, onTableChange, reload, reset } =\n actions\n const mergePagination = computed(() => {\n if (props.pagination === false) {\n return false\n }\n if (!props.request) {\n return Object.assign({}, pagination.value, props.pagination)\n }\n return Object.assign({}, props.pagination, pagination.value)\n })\n\n const formSubmitLoading = computed(() => {\n if (typeof loading.value === 'boolean') {\n return loading.value\n } else if (typeof loading.value === 'object') {\n return loading.value.spinning\n } else {\n return undefined\n }\n })\n\n const onFormSearchSubmit = (values: any) => {\n // 判断search.onSearch返回值决定是否更新formSearch\n if (props.options && props.options.search) {\n const { name = 'keyword' } = props.options.search === true ? {} : props.options.search\n\n /** 如果传入的 onSearch 返回值为 false,则不要把options.search.name对应的值set到formSearch */\n const success = (props.options.search as OptionSearchProps)?.onSearch?.(\n actions.keyword.value!,\n )\n\n if (success !== false) {\n actions.setFormSearch({\n ...values,\n [name]: actions.keyword.value,\n })\n return\n }\n }\n\n actions.setFormSearch(values)\n }\n\n const counter = useContainer(props)\n\n // ---------- 列计算相关 start -----------------\n const tableColumn = computed(() => {\n return genProColumnToColumn({\n columns: props.columns,\n counter,\n }).sort(columnSort(counter.columnsMap.value))\n })\n\n watch(\n tableColumn,\n () => {\n if (tableColumn.value && tableColumn.value.length > 0) {\n // 重新生成key的字符串用于排序\n const columnKeys = tableColumn.value.map((item) => genColumnKey(item.key, item.index))\n counter.setSortKeyColumns(columnKeys)\n }\n },\n {\n immediate: true,\n },\n )\n\n /** 需要遍历一下,不然不支持嵌套表格 */\n const columns = computed(() => {\n const loopFilter = (column: any[]): any[] => {\n return column\n .map((item) => {\n // 删掉不应该显示的\n const columnKey = genColumnKey(item.key, item.index)\n const config = counter.columnsMap.value[columnKey]\n if (config && config.show === false) {\n return false\n }\n if (item.children) {\n return {\n ...item,\n children: loopFilter(item.children),\n }\n }\n return item\n })\n .filter(Boolean)\n }\n return loopFilter(tableColumn.value)\n })\n\n const formItems = computed(() => {\n if (!props.search) {\n return []\n }\n if (props.search?.items?.length) {\n return props.search?.items\n }\n return flatColumnsHandle(props.columns)\n .filter((item) => {\n if (item.hideInSearch) {\n return false\n }\n return true\n })\n .map((item) => {\n return {\n ...item,\n width: undefined,\n tooltip: item.headerTooltip,\n name: item.dataIndex,\n } as ProFormItemType\n })\n })\n\n /** SelectedRowKeys受控处理selectRows */\n const preserveRecordsRef = ref(new Map<any, any>())\n // ============================ RowKey ============================\n const getRowKey = computed<GetRowKey>(() =>\n typeof props.rowKey == 'function'\n ? props.rowKey\n : (record: Record<string, any>) => {\n return record?.[(props.rowKey || 'id') as string]\n },\n )\n\n watch([() => dataSource.value, getRowKey], () => {\n if (dataSource.value?.length) {\n dataSource.value.forEach((data) => {\n const dataRowKey = getRowKey.value(data, -1)\n preserveRecordsRef.value.set(dataRowKey, data)\n })\n }\n onCleanSelected()\n })\n\n /** 单选多选的相关逻辑 */\n const [selectedRowKeys, setSelectedRowKeys] = useMergedState<(string | number)[] | undefined>(\n props.rowSelection ? props.rowSelection?.defaultSelectedRowKeys || [] : undefined,\n {\n value: computed(() =>\n props.rowSelection ? props.rowSelection.selectedRowKeys : undefined,\n ),\n },\n )\n\n const rowSelection = computed<TableRowSelection>(() => ({\n selectedRowKeys: selectedRowKeys.value,\n preserveSelectedRowKeys: true,\n ...props.rowSelection,\n onChange: (selectedRowKeys: Key[], selectedRows: any[]) => {\n if (props.rowSelection && props.rowSelection.onChange) {\n props.rowSelection.onChange(selectedRowKeys, selectedRows)\n }\n props['onUpdate:selectedRowKeys']?.(selectedRowKeys, selectedRows)\n setSelectedRowKeys(selectedRowKeys)\n },\n }))\n\n const selectedRows = computed(() =>\n selectedRowKeys.value?.map((key) => preserveRecordsRef.value?.get(key)),\n )\n\n const onCleanSelected = () => {\n if (props.rowSelection && props.rowSelection.onChange) {\n props.rowSelection.onChange([], [])\n }\n props['onUpdate:selectedRowKeys']?.([], [])\n setSelectedRowKeys([])\n }\n\n const hideToolbar = computed(\n () =>\n props.options === false &&\n !props.title &&\n !slots.title &&\n !slots.toolbar &&\n !slots.searchExtra &&\n !slots.toolbarActions,\n )\n\n /**\n * 是否需要 card 来包裹\n */\n const notNeedCardDom = computed(() => {\n if ((props.search === false || !formItems.value?.length) && props.toolBar === false) {\n return true\n }\n return false\n })\n\n const cardBodyStyle = computed(() => {\n if (props.cardProps === false || notNeedCardDom.value === true) return {}\n\n if (hideToolbar.value) {\n return {\n padding: 0,\n }\n }\n\n // if (props.toolBar) {\n // return {\n // paddingBlockStart: 0,\n // }\n // }\n\n // if (props.toolBar && props.pagination === false) {\n // return {\n // paddingBlockStart: 0,\n // }\n // }\n if (props.pagination !== false) {\n return {\n paddingBlockEnd: 0,\n }\n }\n return {}\n })\n\n expose({\n scrollTo: (pos: string | Position, behavior: 'auto' | 'smooth') => {\n table.value?.scrollTo(pos, behavior)\n },\n scrollLeft: computed(() => {\n return unref(table.value?.scrollLeft)\n }),\n scrollTop: computed(() => {\n return unref(table.value?.scrollTop)\n }),\n bodyRef: computed(() => {\n return unref(table.value?.bodyRef)\n }),\n copySelectedRange: () => {\n return table.value?.copySelectedRange()\n },\n getSelectedRange: () => {\n return table.value?.getSelectedRange()\n },\n clearAllSelectedRange: () => {\n return table.value?.clearAllSelectedRange()\n },\n clearDataSource: () => {\n dataSource.value = []\n },\n appendCellToSelectedRange: (params: AppendCellRange) => {\n return table.value?.appendCellToSelectedRange(params)\n },\n openEditor: (cellInfos: any[]) => {\n return table.value?.openEditor(cellInfos)\n },\n closeEditor: (cellInfos: any[]) => {\n return table.value?.closeEditor(cellInfos)\n },\n reload,\n reset,\n })\n\n return () => {\n const { expandIcon = slots.expandIcon, expandedRowRender = slots.expandedRowRender } = props\n const mergeColumns = columns.value || convertChildrenToColumns(slots.default?.()) || []\n let tableDom = (\n <>\n {props.toolBar !== false && !hideToolbar.value && (\n <ToolBar\n title={props.title}\n subTitle={props.subTitle}\n tooltip={props.tooltip}\n prefixCls={mergedPrefixCls.value}\n options={props.options}\n actionsRef={actions}\n tableColumn={tableColumn.value}\n selectedRowKeys={selectedRowKeys.value!}\n selectedRows={selectedRows.value}\n v-slots={{\n toolbar: slots.toolbar,\n title: slots.title,\n searchExtra: slots.searchExtra,\n actions: slots.toolbarActions,\n }}\n onFormSearchSubmit={(newValues) => {\n actions.setFormSearch({\n ...actions.formSearch.value,\n ...newValues,\n })\n }}\n />\n )}\n {!!props.rowSelection &&\n props.rowSelection?.type !== 'radio' &&\n props.alwaysShowAlert !== false &&\n !!selectedRowKeys.value!.length && (\n <Alert\n prefixCls={mergedPrefixCls.value}\n selectedRowKeys={selectedRowKeys.value!}\n selectedRows={selectedRows.value}\n onCleanSelected={onCleanSelected}\n v-slots={{ info: slots.alertInfo, actions: slots.alertActions }}\n />\n )}\n <InteralTable\n ref={table}\n {...omit(props, ['onChange', 'onUpdate:pagination', 'onUpdate:selectedRowKeys'])}\n prefixCls={mergedPrefixCls.value}\n columns={mergeColumns || []}\n size={counter.tableSize.value}\n dataSource={dataSource.value}\n loading={loading.value}\n rowSelection={props.rowSelection ? rowSelection.value : undefined}\n pagination={mergePagination.value}\n expandIcon={expandIcon}\n expandedRowRender={expandedRowRender}\n hasContextmenuPopup={!!slots.contextmenuPopup}\n onChange={onTableChange}\n v-slots={{\n ...slots,\n footer: props.footer || slots.footer,\n }}\n />\n </>\n )\n\n if (!(props.cardProps === false || notNeedCardDom.value)) {\n tableDom = (\n <Card\n bordered={isBordered('table', props.cardBordered)}\n bodyStyle={cardBodyStyle.value}\n {...props.cardProps}\n >\n {tableDom}\n </Card>\n )\n }\n\n return (\n <div\n ref={wrapperRef}\n {...attrs}\n class={[\n `${mergedPrefixCls.value}-wrapper ${props.bordered ? mergedPrefixCls.value + '-wrapper-bordered' : ''} ${\n 'dark' === theme.value ? mergedPrefixCls.value + '-wrapper-dark' : ''\n } ${pollingLoading.value ? mergedPrefixCls.value + '-wrapper-polling' : ''}`,\n attrs.class,\n ]}\n onKeydown={onKeydown}\n >\n {props.search !== false && !!formItems.value?.length && (\n <FormRender\n prefixCls={mergedPrefixCls.value}\n items={formItems.value}\n cardBordered={props.cardBordered}\n search={props.search}\n tableShowCard={props.cardProps !== false}\n loading={formSubmitLoading.value}\n beforeSearchSubmit={props.beforeSearchSubmit}\n manual={props.manual}\n onReset={props.onReset}\n onSubmit={props.onSubmit}\n onFormSearchSubmit={onFormSearchSubmit}\n onSearchTabChange={(newValues) => {\n actions.setFormSearch({\n ...actions.formSearch.value,\n ...newValues,\n })\n }}\n />\n )}\n {tableDom}\n </div>\n )\n }\n },\n})\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","name","inheritAttrs","props","tableProps","slots","emits","setup","expose","attrs","emit","table","ref","wrapperRef","prefixCls","usePrefixCls","hoverRowKey","useProvideHover","rowHoverDelay","computed","mergedPrefixCls","_a","useProvideLevel","watch","newValue","oldValue","value","style","removeProperty","setProperty","flush","onKeydown","ev","stopPropagation","fetchData","request","undefined","params","sorters","filter","actionParams","response","actions","useFetchData","dataSource","loading","pagination","pollingLoading","onTableChange","reload","reset","mergePagination","assign","formSubmitLoading","spinning","onFormSearchSubmit","values","options","search","success","onSearch","keyword","setFormSearch","counter","useContainer","tableColumn","genProColumnToColumn","columns","sort","columnSort","columnsMap","length","columnKeys","map","item","genColumnKey","key","index","setSortKeyColumns","immediate","loopFilter","column","columnKey","config","show","children","Boolean","formItems","items","flatColumnsHandle","hideInSearch","width","tooltip","headerTooltip","dataIndex","preserveRecordsRef","Map","getRowKey","rowKey","record","forEach","data","dataRowKey","set","onCleanSelected","selectedRowKeys","setSelectedRowKeys","useMergedState","rowSelection","defaultSelectedRowKeys","preserveSelectedRowKeys","onChange","selectedRows","get","hideToolbar","title","toolbar","searchExtra","toolbarActions","notNeedCardDom","toolBar","cardBodyStyle","cardProps","padding","paddingBlockEnd","scrollTo","pos","behavior","scrollLeft","unref","scrollTop","bodyRef","copySelectedRange","getSelectedRange","clearAllSelectedRange","clearDataSource","appendCellToSelectedRange","openEditor","cellInfos","closeEditor","expandIcon","expandedRowRender","mergeColumns","convertChildrenToColumns","default","tableDom","_createVNode","_Fragment","ToolBar","subTitle","newValues","formSearch","type","alwaysShowAlert","Alert","info","alertInfo","alertActions","InteralTable","_mergeProps","omit","tableSize","contextmenuPopup","footer","_tableDom","Card","isBordered","cardBordered","bordered","theme","class","FormRender","beforeSearchSubmit","manual","onReset","onSubmit"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Table.mjs","sources":["../../../../../../../packages/components/table/src/components/Table.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-11-01 09:26:05\n * @LastEditors: shen\n * @LastEditTime: 2025-10-07 11:48:03\n * @Description:\n */\n\nimport { defineComponent, ref, computed, watch, unref } from 'vue'\nimport { Card } from 'ant-design-vue'\nimport { theme } from './config'\nimport { useProvideHover } from '../hooks/useHover'\nimport { useProvideLevel } from '../hooks/useLevel'\nimport { usePrefixCls } from '@pro-design-vue/hooks'\nimport { convertChildrenToColumns, genColumnKey, isBordered } from '../utils/util'\nimport { tableProps } from './interface'\nimport { useFetchData } from '../hooks/useFetchData'\nimport { useContainer } from '../hooks/useContainer'\nimport { genProColumnToColumn } from '../utils/genProColumnToColumn'\nimport { columnSort } from '../utils/columnSort'\nimport { flatColumnsHandle } from '../utils/flatColumnsHandle'\nimport { omit, omitKeysAndUndefined } from '@pro-design-vue/utils'\nimport useMergedState from '../hooks/useMergedState'\nimport InteralTable from './InteralTable.vue'\nimport ToolBar from './ToolBar/ToolBar.vue'\nimport Alert from './Alert.vue'\nimport FormRender from './Form/Form'\n\nimport type { ProFormItemType } from '@pro-design-vue/components/form'\nimport type {\n ColumnsType,\n GetRowKey,\n Key,\n OptionSearchProps,\n Position,\n RequestData,\n SorterResult,\n TableRowSelection,\n} from './interface'\nimport type { AppendCellRange } from '../hooks/RangeInterface'\nimport type { CustomSlotsType } from '../utils/type'\nimport type { ContextSlots } from './context/TableSlotsContext'\n\nexport default defineComponent({\n name: 'ProTable',\n inheritAttrs: false,\n props: tableProps(),\n slots: {} as CustomSlotsType<ContextSlots>,\n emits: ['keydown'],\n setup(props, { expose, slots, attrs, emit }) {\n const table = ref()\n const wrapperRef = ref<HTMLDivElement>()\n const prefixCls = usePrefixCls('table')\n\n const { hoverRowKey } = useProvideHover({\n rowHoverDelay: computed(() => props.rowHoverDelay),\n rowHover: computed(() => props.rowHover),\n })\n\n const mergedPrefixCls = computed(() => props.prefixCls ?? prefixCls)\n\n // useStyle(primaryColor, mergedPrefixCls, theme)\n\n useProvideLevel()\n\n watch(\n hoverRowKey,\n (newValue, oldValue) => {\n if (wrapperRef.value) {\n wrapperRef.value.style.removeProperty(`--${mergedPrefixCls.value}-row-bg-${oldValue}`)\n wrapperRef.value.style.setProperty(\n `--${mergedPrefixCls.value}-row-bg-${newValue}`,\n `hsl(var(--pro-accent))`,\n )\n }\n },\n { flush: 'post' },\n )\n\n const onKeydown = (ev: KeyboardEvent) => {\n ev.stopPropagation()\n emit('keydown', ev)\n }\n\n const fetchData = computed(() => {\n if (!props.request) return undefined\n\n return async (\n params?: Record<string, any>,\n sorters?: SorterResult<any>[],\n filter?: Record<string, (string | number)[] | null>,\n ) => {\n const actionParams = {\n ...(params || {}),\n ...(props.params || {}),\n }\n const response = await props.request!(actionParams, sorters, filter)\n return response as RequestData\n }\n })\n\n const actions = useFetchData(fetchData, props)\n const { dataSource, loading, pagination, pollingLoading, onTableChange, reload, reset } =\n actions\n const mergePagination = computed(() => {\n if (props.pagination === false) {\n return false\n }\n return pagination.value\n })\n\n const formSubmitLoading = computed(() => {\n if (typeof loading.value === 'boolean') {\n return loading.value\n } else if (typeof loading.value === 'object') {\n return loading.value.spinning\n } else {\n return undefined\n }\n })\n\n const onFormSearchSubmit = (values: any) => {\n // 判断search.onSearch返回值决定是否更新formSearch\n if (props.options && props.options.search) {\n const { name = 'keyword' } = props.options.search === true ? {} : props.options.search\n\n /** 如果传入的 onSearch 返回值为 false,则不要把options.search.name对应的值set到formSearch */\n const success = (props.options.search as OptionSearchProps)?.onSearch?.(\n actions.keyword.value!,\n )\n\n if (success !== false) {\n actions.setFormSearch({\n ...values,\n [name]: actions.keyword.value,\n })\n return\n }\n }\n\n actions.setFormSearch(values)\n }\n\n const counter = useContainer(props)\n\n // ---------- 列计算相关 start -----------------\n const tableColumn = computed(() => {\n return genProColumnToColumn({\n columns: props.columns,\n counter,\n }).sort(columnSort(counter.columnsMap.value))\n })\n\n watch(\n tableColumn,\n () => {\n if (tableColumn.value && tableColumn.value.length > 0) {\n // 重新生成key的字符串用于排序\n const columnKeys = tableColumn.value.map((item) => genColumnKey(item.key, item.index))\n counter.setSortKeyColumns(columnKeys)\n }\n },\n {\n immediate: true,\n },\n )\n\n /** 需要遍历一下,不然不支持嵌套表格 */\n const columns = computed(() => {\n const loopFilter = (column: any[]): any[] => {\n return column\n .map((item) => {\n // 删掉不应该显示的\n const columnKey = genColumnKey(item.key, item.index)\n const config = counter.columnsMap.value[columnKey]\n if (config && config.show === false) {\n return false\n }\n if (item.children) {\n return {\n ...item,\n children: loopFilter(item.children),\n }\n }\n return item\n })\n .filter(Boolean)\n }\n return loopFilter(tableColumn.value)\n })\n\n const onColumnsChange = (rawColumns, action: 'resize' | 'drag') => {\n const newMap = { ...counter.columnsMap.value }\n const newColumns = rawColumns.map((item) => genColumnKey(item.key, item.index))\n if (action === 'resize') {\n const loopSetWidth = (rawColumns) => {\n rawColumns.forEach((item) => {\n const key = genColumnKey(item.key, item.index)\n const newSetting = { ...newMap[key] }\n if (item.children?.length) {\n loopSetWidth(item.children)\n } else {\n newSetting.width = item.width\n newMap[key] = newSetting\n }\n })\n }\n loopSetWidth(rawColumns)\n } else {\n newColumns.forEach((key, order) => {\n newMap[key] = { ...(newMap[key] || {}), order }\n })\n }\n counter.setColumnsMap(newMap)\n counter.setSortKeyColumns(newColumns)\n props['onUpdate:columns']?.(rawColumns as ColumnsType, action)\n }\n const formItems = computed(() => {\n if (props.search === false) {\n return []\n }\n if (props.search?.items?.length) {\n return props.search?.items\n }\n return flatColumnsHandle(props.columns)\n .filter((item) => {\n if (item.hideInSearch) {\n return false\n }\n return true\n })\n .map((item) => {\n return omitKeysAndUndefined(\n {\n ...item,\n width: undefined,\n tooltip: item.headerTooltip,\n name: item.dataIndex,\n },\n ['dataIndex', 'width'],\n ) as ProFormItemType\n })\n })\n\n /** SelectedRowKeys受控处理selectRows */\n const preserveRecordsRef = ref(new Map<any, any>())\n // ============================ RowKey ============================\n const getRowKey = computed<GetRowKey>(() =>\n typeof props.rowKey == 'function'\n ? props.rowKey\n : (record: Record<string, any>) => {\n return record?.[(props.rowKey || 'id') as string]\n },\n )\n\n watch([() => dataSource.value, getRowKey], () => {\n if (dataSource.value?.length) {\n dataSource.value.forEach((data) => {\n const dataRowKey = getRowKey.value(data, -1)\n preserveRecordsRef.value.set(dataRowKey, data)\n })\n }\n onCleanSelected()\n })\n\n /** 单选多选的相关逻辑 */\n const [selectedRowKeys, setSelectedRowKeys] = useMergedState<(string | number)[] | undefined>(\n props.selectedRowKeys ||\n (props.rowSelection ? props.rowSelection?.defaultSelectedRowKeys || [] : undefined),\n {\n value: computed(\n () =>\n props.selectedRowKeys ||\n (props.rowSelection ? props.rowSelection.selectedRowKeys : undefined),\n ),\n },\n )\n\n const rowSelection = computed<TableRowSelection>(() => ({\n selectedRowKeys: selectedRowKeys.value,\n preserveSelectedRowKeys: true,\n ...props.rowSelection,\n onChange: (selectedRowKeys: Key[], selectedRows: any[]) => {\n if (props.rowSelection && props.rowSelection.onChange) {\n props.rowSelection.onChange(selectedRowKeys, selectedRows)\n }\n props['onUpdate:selectedRowKeys']?.(selectedRowKeys, selectedRows)\n setSelectedRowKeys(selectedRowKeys)\n },\n }))\n\n const selectedRows = computed(() =>\n selectedRowKeys.value?.map((key) => preserveRecordsRef.value?.get(key)),\n )\n\n const onCleanSelected = () => {\n if (props.rowSelection && props.rowSelection.onChange) {\n props.rowSelection.onChange([], [])\n }\n props['onUpdate:selectedRowKeys']?.([], [])\n setSelectedRowKeys([])\n }\n\n const hideToolbar = computed(\n () =>\n props.options === false &&\n !props.title &&\n !slots.title &&\n !slots.toolbar &&\n !slots.searchExtra &&\n !slots.toolbarActions,\n )\n\n /**\n * 是否需要 card 来包裹\n */\n const notNeedCardDom = computed(() => {\n if ((props.search === false || !formItems.value?.length) && props.toolBar === false) {\n return true\n }\n return false\n })\n\n const cardBodyStyle = computed(() => {\n if (props.cardProps === false || notNeedCardDom.value === true) return {}\n\n if (hideToolbar.value) {\n return {\n padding: 0,\n }\n }\n\n // if (props.toolBar) {\n // return {\n // paddingBlockStart: 0,\n // }\n // }\n\n // if (props.toolBar && props.pagination === false) {\n // return {\n // paddingBlockStart: 0,\n // }\n // }\n if (props.pagination !== false) {\n return {\n paddingBlockEnd: 0,\n }\n }\n return {}\n })\n\n expose({\n scrollTo: (pos: string | Position, behavior: 'auto' | 'smooth') => {\n table.value?.scrollTo(pos, behavior)\n },\n scrollLeft: computed(() => {\n return unref(table.value?.scrollLeft)\n }),\n scrollTop: computed(() => {\n return unref(table.value?.scrollTop)\n }),\n bodyRef: computed(() => {\n return unref(table.value?.bodyRef)\n }),\n copySelectedRange: () => {\n return table.value?.copySelectedRange()\n },\n getSelectedRange: () => {\n return table.value?.getSelectedRange()\n },\n clearAllSelectedRange: () => {\n return table.value?.clearAllSelectedRange()\n },\n clearDataSource: () => {\n dataSource.value = []\n },\n appendCellToSelectedRange: (params: AppendCellRange) => {\n return table.value?.appendCellToSelectedRange(params)\n },\n openEditor: (cellInfos: any[]) => {\n return table.value?.openEditor(cellInfos)\n },\n closeEditor: (cellInfos: any[]) => {\n return table.value?.closeEditor(cellInfos)\n },\n reload,\n reset,\n })\n\n return () => {\n const { expandIcon = slots.expandIcon, expandedRowRender = slots.expandedRowRender } = props\n const mergeColumns = columns.value || convertChildrenToColumns(slots.default?.()) || []\n let tableDom = (\n <>\n {props.toolBar !== false && !hideToolbar.value && (\n <ToolBar\n title={props.title}\n subTitle={props.subTitle}\n tooltip={props.tooltip}\n prefixCls={mergedPrefixCls.value}\n options={props.options}\n actionsRef={actions}\n tableColumn={tableColumn.value}\n selectedRowKeys={selectedRowKeys.value!}\n selectedRows={selectedRows.value}\n v-slots={{\n toolbar: slots.toolbar,\n title: slots.title,\n searchExtra: slots.searchExtra,\n actions: slots.toolbarActions,\n }}\n onFormSearchSubmit={(newValues) => {\n actions.setFormSearch({\n ...actions.formSearch.value,\n ...newValues,\n })\n }}\n />\n )}\n {!!props.rowSelection &&\n props.rowSelection?.type !== 'radio' &&\n props.alwaysShowAlert !== false &&\n !!selectedRowKeys.value!.length && (\n <Alert\n prefixCls={mergedPrefixCls.value}\n selectedRowKeys={selectedRowKeys.value!}\n selectedRows={selectedRows.value}\n onCleanSelected={onCleanSelected}\n v-slots={{ info: slots.alertInfo, actions: slots.alertActions }}\n />\n )}\n <InteralTable\n ref={table}\n {...omit(props, [\n 'onChange',\n 'onUpdate:pagination',\n 'onUpdate:selectedRowKeys',\n 'onUpdate:columns',\n ])}\n prefixCls={mergedPrefixCls.value}\n columns={mergeColumns || []}\n size={counter.tableSize.value}\n dataSource={dataSource.value}\n loading={loading.value}\n rowSelection={props.rowSelection ? rowSelection.value : undefined}\n pagination={mergePagination.value}\n expandIcon={expandIcon}\n expandedRowRender={expandedRowRender}\n hasContextmenuPopup={!!slots.contextmenuPopup}\n onChange={onTableChange}\n onUpdate:columns={onColumnsChange}\n v-slots={{\n ...slots,\n footer: props.footer || slots.footer,\n }}\n />\n </>\n )\n\n if (!(props.cardProps === false || notNeedCardDom.value)) {\n tableDom = (\n <Card\n bordered={isBordered('table', props.cardBordered)}\n bodyStyle={cardBodyStyle.value}\n {...props.cardProps}\n >\n {tableDom}\n </Card>\n )\n }\n\n return (\n <div\n ref={wrapperRef}\n {...attrs}\n class={[\n `${mergedPrefixCls.value}-wrapper ${props.bordered ? mergedPrefixCls.value + '-wrapper-bordered' : ''} ${\n 'dark' === theme.value ? mergedPrefixCls.value + '-wrapper-dark' : ''\n } ${pollingLoading.value ? mergedPrefixCls.value + '-wrapper-polling' : ''}`,\n attrs.class,\n ]}\n onKeydown={onKeydown}\n >\n {props.search !== false && !!formItems.value?.length && (\n <FormRender\n prefixCls={mergedPrefixCls.value}\n items={formItems.value}\n cardBordered={props.cardBordered}\n search={props.search}\n tableShowCard={props.cardProps !== false}\n loading={formSubmitLoading.value}\n beforeSearchSubmit={props.beforeSearchSubmit}\n manual={props.manual || props.manualRequest}\n onReset={props.onReset}\n onSubmit={props.onSubmit}\n onFormSearchSubmit={onFormSearchSubmit}\n onSearchTabChange={(newValues) => {\n actions.setFormSearch({\n ...actions.formSearch.value,\n ...newValues,\n })\n }}\n />\n )}\n {tableDom}\n </div>\n )\n }\n },\n})\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","name","inheritAttrs","props","tableProps","slots","emits","setup","expose","attrs","emit","table","ref","wrapperRef","prefixCls","usePrefixCls","hoverRowKey","useProvideHover","rowHoverDelay","computed","rowHover","mergedPrefixCls","_a","useProvideLevel","watch","newValue","oldValue","value","style","removeProperty","setProperty","flush","onKeydown","ev","stopPropagation","fetchData","request","undefined","params","sorters","filter","actionParams","response","actions","useFetchData","dataSource","loading","pagination","pollingLoading","onTableChange","reload","reset","mergePagination","formSubmitLoading","spinning","onFormSearchSubmit","values","options","search","success","onSearch","keyword","setFormSearch","counter","useContainer","tableColumn","genProColumnToColumn","columns","sort","columnSort","columnsMap","length","columnKeys","map","item","genColumnKey","key","index","setSortKeyColumns","immediate","loopFilter","column","columnKey","config","show","children","Boolean","onColumnsChange","rawColumns","action","newMap","newColumns","loopSetWidth","forEach","newSetting","width","order","setColumnsMap","formItems","items","flatColumnsHandle","hideInSearch","omitKeysAndUndefined","tooltip","headerTooltip","dataIndex","preserveRecordsRef","Map","getRowKey","rowKey","record","data","dataRowKey","set","onCleanSelected","selectedRowKeys","setSelectedRowKeys","useMergedState","rowSelection","defaultSelectedRowKeys","preserveSelectedRowKeys","onChange","selectedRows","get","hideToolbar","title","toolbar","searchExtra","toolbarActions","notNeedCardDom","toolBar","cardBodyStyle","cardProps","padding","paddingBlockEnd","scrollTo","pos","behavior","scrollLeft","unref","scrollTop","bodyRef","copySelectedRange","getSelectedRange","clearAllSelectedRange","clearDataSource","appendCellToSelectedRange","openEditor","cellInfos","closeEditor","expandIcon","expandedRowRender","mergeColumns","convertChildrenToColumns","default","tableDom","_createVNode","_Fragment","ToolBar","subTitle","newValues","formSearch","type","alwaysShowAlert","Alert","info","alertInfo","alertActions","InteralTable","_mergeProps","omit","tableSize","contextmenuPopup","footer","_tableDom","Card","isBordered","cardBordered","bordered","theme","class","FormRender","beforeSearchSubmit","manual","manualRequest","onReset","onSubmit"],"mappings":"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"}
|
@@ -65,8 +65,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
65
65
|
default: undefined;
|
66
66
|
};
|
67
67
|
}>> & Readonly<{}>, {
|
68
|
-
options: false | OptionConfig;
|
69
68
|
selectedRowKeys: Key[];
|
69
|
+
options: false | OptionConfig;
|
70
70
|
selectedRows: any[];
|
71
71
|
tableColumn: any[];
|
72
72
|
onFormSearchSubmit: (params: any) => void;
|
@@ -2741,8 +2741,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
2741
2741
|
};
|
2742
2742
|
}>> & Readonly<{}>, {
|
2743
2743
|
draggable: boolean;
|
2744
|
-
columns: any[];
|
2745
2744
|
checkable: boolean;
|
2745
|
+
columns: any[];
|
2746
2746
|
listsHeight: number;
|
2747
2747
|
checkedReset: boolean;
|
2748
2748
|
}, {}, {
|
@@ -3610,10 +3610,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
3610
3610
|
};
|
3611
3611
|
}>> & Readonly<{}>, {
|
3612
3612
|
draggable: boolean;
|
3613
|
+
checkable: boolean;
|
3613
3614
|
listHeight: number;
|
3614
3615
|
showTitle: boolean;
|
3615
3616
|
list: any[];
|
3616
|
-
checkable: boolean;
|
3617
3617
|
}, {}, {
|
3618
3618
|
Tree: {
|
3619
3619
|
new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import _sfc_main from './ToolBar.vue2.mjs';
|
2
|
-
import { resolveComponent, createElementBlock, openBlock, normalizeClass, createElementVNode, renderSlot, createCommentVNode, createBlock, createTextVNode, toDisplayString, withCtx, createVNode,
|
2
|
+
import { resolveComponent, createElementBlock, openBlock, normalizeClass, createElementVNode, renderSlot, createCommentVNode, createBlock, createTextVNode, toDisplayString, withCtx, createVNode, Fragment, mergeProps } from 'vue';
|
3
3
|
import _export_sfc from '../../../../../_virtual/_plugin-vue_export-helper.mjs';
|
4
4
|
|
5
5
|
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
@@ -71,10 +71,18 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
71
71
|
class: normalizeClass(`${_ctx.prefixCls}-toolbar-options`)
|
72
72
|
}, {
|
73
73
|
default: withCtx(() => [
|
74
|
-
_ctx.mergeOptions.search !== false && !(!!_ctx.title || !!_ctx.$slots.title) ? (openBlock(),
|
75
|
-
|
76
|
-
|
77
|
-
|
74
|
+
_ctx.mergeOptions.search !== false && !(!!_ctx.title || !!_ctx.$slots.title) ? (openBlock(), createElementBlock(
|
75
|
+
Fragment,
|
76
|
+
{ key: 0 },
|
77
|
+
[
|
78
|
+
createVNode(_component_ProSearch, mergeProps(_ctx.searchConfig, { onSearch: _ctx.onSearch }), null, 16, ["onSearch"]),
|
79
|
+
renderSlot(_ctx.$slots, "searchExtra", {
|
80
|
+
setParams: _ctx.actionsRef.setParams
|
81
|
+
})
|
82
|
+
],
|
83
|
+
64
|
84
|
+
/* STABLE_FRAGMENT */
|
85
|
+
)) : createCommentVNode("v-if", true)
|
78
86
|
]),
|
79
87
|
_: 3
|
80
88
|
/* FORWARDED */
|
@@ -93,7 +101,18 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
93
101
|
class: normalizeClass(`${_ctx.prefixCls}-toolbar-actions`)
|
94
102
|
}, {
|
95
103
|
default: withCtx(() => [
|
96
|
-
_ctx.mergeOptions.search !== false && (!!_ctx.title || !!_ctx.$slots.title) ? (openBlock(),
|
104
|
+
_ctx.mergeOptions.search !== false && (!!_ctx.title || !!_ctx.$slots.title) ? (openBlock(), createElementBlock(
|
105
|
+
Fragment,
|
106
|
+
{ key: 0 },
|
107
|
+
[
|
108
|
+
createVNode(_component_ProSearch, mergeProps(_ctx.searchConfig, { onSearch: _ctx.onSearch }), null, 16, ["onSearch"]),
|
109
|
+
renderSlot(_ctx.$slots, "searchExtra", {
|
110
|
+
setParams: _ctx.actionsRef.setParams
|
111
|
+
})
|
112
|
+
],
|
113
|
+
64
|
114
|
+
/* STABLE_FRAGMENT */
|
115
|
+
)) : createCommentVNode("v-if", true),
|
97
116
|
renderSlot(_ctx.$slots, "actions", {
|
98
117
|
setParams: _ctx.actionsRef.setParams
|
99
118
|
}),
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ToolBar.vue.mjs","sources":["../../../../../../../../packages/components/table/src/components/ToolBar/ToolBar.vue"],"sourcesContent":["<!--\n * @Author: shen\n * @Date: 2023-11-06 16:03:18\n * @LastEditors: shen\n * @LastEditTime: 2025-08-27 13:47:13\n * @Description:\n-->\n<script lang=\"ts\">\nimport type { PropType } from 'vue'\nimport type { UseFetchDataAction } from '../../hooks/useFetchData'\nimport type { OptionConfig, Key, OptionSearchProps } from '../interface'\n\nimport { defineComponent, h, computed, onMounted } from 'vue'\nimport { Space, Tooltip } from 'ant-design-vue'\nimport {\n ReloadOutlined,\n FilterOutlined,\n SettingOutlined,\n ColumnHeightOutlined,\n InfoCircleOutlined,\n} from '@ant-design/icons-vue'\nimport { omit, omitUndefined } from '@pro-design-vue/utils'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport Search from './Search.vue'\nimport DensityIcon from './DensityIcon.vue'\nimport ColumnSetting from '../ColumnSetting/ColumnSetting.vue'\n\nexport default defineComponent({\n name: 'TableToolBar',\n inheritAttrs: false,\n components: {\n Space,\n ProSearch: Search,\n DensityIcon,\n Tooltip,\n ColumnSetting,\n ReloadOutlined,\n InfoCircleOutlined,\n },\n props: {\n prefixCls: String,\n title: String,\n subTitle: String,\n tooltip: String,\n options: { type: [Object, Boolean] as PropType<OptionConfig | false>, default: undefined },\n actionsRef: Object as PropType<UseFetchDataAction<any>>,\n selectedRowKeys: {\n type: Array as PropType<Key[]>,\n default: () => [],\n },\n selectedRows: {\n type: Array as PropType<any[]>,\n default: () => [],\n },\n tableColumn: {\n type: Array as PropType<any[]>,\n default: () => [],\n },\n onFormSearchSubmit: {\n type: Function as PropType<(params: any) => void>,\n default: undefined,\n },\n },\n setup(props) {\n const intl = useIntl()\n\n const defaultOptions = {\n reload: () => props.actionsRef?.reload(),\n density: true,\n setting: true,\n filter: false,\n search: false,\n }\n\n const mergeOptions = computed<OptionConfig>(() => {\n if (props.options === false) {\n return {}\n }\n return { ...defaultOptions, ...props.options }\n })\n\n const defaultSearchConfig = {\n onChange: (e) => {\n props.actionsRef!.keyword.value = e.target.value!\n },\n }\n\n const searchConfig: any = computed(() => {\n if (props.options === false) {\n return false\n }\n if (!mergeOptions.value!.search) return false\n\n if (mergeOptions.value!.search === true) return defaultSearchConfig\n\n return omit(\n {\n ...(mergeOptions.value!.search ?? {}),\n ...defaultSearchConfig,\n },\n ['name', 'onSearch'],\n )\n })\n\n const onSearch = async (keyword: string) => {\n if (!props.options || !props.options.search) {\n return\n }\n const { name = 'keyword' } = props.options.search === true ? {} : props.options.search\n\n /** 如果传入的 onSearch 返回值为 false,应该直接拦截请求 */\n const success = (props.options.search as OptionSearchProps)?.onSearch?.(keyword)\n\n if (success === false) return\n\n props.onFormSearchSubmit?.(\n omitUndefined({\n [name]: keyword,\n }),\n )\n }\n\n const onReload = (e) => {\n if (mergeOptions.value.reload !== false && typeof mergeOptions.value.reload !== 'boolean') {\n mergeOptions.value.reload?.(e, props.actionsRef)\n }\n }\n\n onMounted(() => {\n if (searchConfig.value.value || searchConfig.value.defaultValue) {\n props.actionsRef!.keyword.value =\n searchConfig.value.value || searchConfig.value.defaultValue\n }\n })\n\n return {\n h,\n intl,\n mergeOptions,\n searchConfig,\n FilterOutlined,\n SettingOutlined,\n ColumnHeightOutlined,\n onSearch,\n onReload,\n }\n },\n})\n</script>\n\n<template>\n <div :class=\"`${prefixCls}-toolbar`\">\n <div :class=\"`${prefixCls}-toolbar-container`\">\n <slot name=\"toolbar\">\n <div :class=\"`${prefixCls}-toolbar-left`\">\n <div :class=\"`${prefixCls}-toolbar-title`\" v-if=\"!!title || !!$slots.title\">\n <slot name=\"title\">\n {{ title }}\n </slot>\n <div :class=\"`${prefixCls}-toolbar-subtitle`\">{{ subTitle }}</div>\n <Tooltip v-if=\"tooltip\" :title=\"tooltip\">\n <InfoCircleOutlined style=\"margin-inline-start: 3px\" />\n </Tooltip>\n </div>\n <Space :class=\"`${prefixCls}-toolbar-options`\" v-if=\"options !== false\">\n <ProSearch\n v-if=\"mergeOptions.search !== false && !(!!title || !!$slots.title)\"\n v-bind=\"searchConfig\"\n @search=\"onSearch\"\n />\n <slot name=\"searchExtra\" :set-params=\"actionsRef!.setParams\" />\n </Space>\n </div>\n <div :class=\"`${prefixCls}-toolbar-right`\">\n <Space :class=\"`${prefixCls}-toolbar-actions`\">\n <ProSearch\n v-if=\"mergeOptions.search !== false && (!!title || !!$slots.title)\"\n v-bind=\"searchConfig\"\n @search=\"onSearch\"\n />\n <slot name=\"actions\" :set-params=\"actionsRef!.setParams\"></slot>\n <template v-if=\"options !== false\">\n <Tooltip\n v-if=\"mergeOptions.reload !== false\"\n :title=\"intl.getMessage('tableToolBar.reload', '刷新')\"\n >\n <div :class=\"`${prefixCls}-toolbar-actions-item`\">\n <ReloadOutlined :spin=\"actionsRef?.pollingLoading.value\" @click=\"onReload\" />\n </div>\n </Tooltip>\n <DensityIcon v-if=\"mergeOptions.density !== false\" :prefixCls=\"prefixCls\" />\n <ColumnSetting\n v-if=\"mergeOptions.setting !== false\"\n :prefix-cls=\"prefixCls\"\n :columns=\"tableColumn\"\n />\n </template>\n </Space>\n </div>\n </slot>\n </div>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_normalizeClass","_createElementVNode","_renderSlot","_createTextVNode","_createBlock","_createVNode","_mergeProps","_createCommentVNode","_Fragment"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"ToolBar.vue.mjs","sources":["../../../../../../../../packages/components/table/src/components/ToolBar/ToolBar.vue"],"sourcesContent":["<!--\n * @Author: shen\n * @Date: 2023-11-06 16:03:18\n * @LastEditors: shen\n * @LastEditTime: 2025-10-05 11:39:41\n * @Description:\n-->\n<script lang=\"ts\">\nimport type { PropType } from 'vue'\nimport type { UseFetchDataAction } from '../../hooks/useFetchData'\nimport type { OptionConfig, Key, OptionSearchProps } from '../interface'\n\nimport { defineComponent, h, computed, onMounted } from 'vue'\nimport { Space, Tooltip } from 'ant-design-vue'\nimport {\n ReloadOutlined,\n FilterOutlined,\n SettingOutlined,\n ColumnHeightOutlined,\n InfoCircleOutlined,\n} from '@ant-design/icons-vue'\nimport { omit, omitUndefined } from '@pro-design-vue/utils'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport Search from './Search.vue'\nimport DensityIcon from './DensityIcon.vue'\nimport ColumnSetting from '../ColumnSetting/ColumnSetting.vue'\n\nexport default defineComponent({\n name: 'TableToolBar',\n inheritAttrs: false,\n components: {\n Space,\n ProSearch: Search,\n DensityIcon,\n Tooltip,\n ColumnSetting,\n ReloadOutlined,\n InfoCircleOutlined,\n },\n props: {\n prefixCls: String,\n title: String,\n subTitle: String,\n tooltip: String,\n options: { type: [Object, Boolean] as PropType<OptionConfig | false>, default: undefined },\n actionsRef: Object as PropType<UseFetchDataAction<any>>,\n selectedRowKeys: {\n type: Array as PropType<Key[]>,\n default: () => [],\n },\n selectedRows: {\n type: Array as PropType<any[]>,\n default: () => [],\n },\n tableColumn: {\n type: Array as PropType<any[]>,\n default: () => [],\n },\n onFormSearchSubmit: {\n type: Function as PropType<(params: any) => void>,\n default: undefined,\n },\n },\n setup(props) {\n const intl = useIntl()\n\n const defaultOptions = {\n reload: () => props.actionsRef?.reload(),\n density: true,\n setting: true,\n filter: false,\n search: false,\n }\n\n const mergeOptions = computed<OptionConfig>(() => {\n if (props.options === false) {\n return {}\n }\n return { ...defaultOptions, ...props.options }\n })\n\n const defaultSearchConfig = {\n onChange: (e) => {\n props.actionsRef!.keyword.value = e.target.value!\n },\n }\n\n const searchConfig: any = computed(() => {\n if (props.options === false) {\n return false\n }\n if (!mergeOptions.value!.search) return false\n\n if (mergeOptions.value!.search === true) return defaultSearchConfig\n\n return omit(\n {\n ...(mergeOptions.value!.search ?? {}),\n ...defaultSearchConfig,\n },\n ['name', 'onSearch'],\n )\n })\n\n const onSearch = async (keyword: string) => {\n if (!props.options || !props.options.search) {\n return\n }\n const { name = 'keyword' } = props.options.search === true ? {} : props.options.search\n\n /** 如果传入的 onSearch 返回值为 false,应该直接拦截请求 */\n const success = (props.options.search as OptionSearchProps)?.onSearch?.(keyword)\n\n if (success === false) return\n\n props.onFormSearchSubmit?.(\n omitUndefined({\n [name]: keyword,\n }),\n )\n }\n\n const onReload = (e) => {\n if (mergeOptions.value.reload !== false && typeof mergeOptions.value.reload !== 'boolean') {\n mergeOptions.value.reload?.(e, props.actionsRef)\n }\n }\n\n onMounted(() => {\n if (searchConfig.value.value || searchConfig.value.defaultValue) {\n props.actionsRef!.keyword.value =\n searchConfig.value.value || searchConfig.value.defaultValue\n }\n })\n\n return {\n h,\n intl,\n mergeOptions,\n searchConfig,\n FilterOutlined,\n SettingOutlined,\n ColumnHeightOutlined,\n onSearch,\n onReload,\n }\n },\n})\n</script>\n\n<template>\n <div :class=\"`${prefixCls}-toolbar`\">\n <div :class=\"`${prefixCls}-toolbar-container`\">\n <slot name=\"toolbar\">\n <div :class=\"`${prefixCls}-toolbar-left`\">\n <div :class=\"`${prefixCls}-toolbar-title`\" v-if=\"!!title || !!$slots.title\">\n <slot name=\"title\">\n {{ title }}\n </slot>\n <div :class=\"`${prefixCls}-toolbar-subtitle`\">{{ subTitle }}</div>\n <Tooltip v-if=\"tooltip\" :title=\"tooltip\">\n <InfoCircleOutlined style=\"margin-inline-start: 3px\" />\n </Tooltip>\n </div>\n <Space :class=\"`${prefixCls}-toolbar-options`\" v-if=\"options !== false\">\n <template v-if=\"mergeOptions.search !== false && !(!!title || !!$slots.title)\">\n <ProSearch v-bind=\"searchConfig\" @search=\"onSearch\" />\n <slot name=\"searchExtra\" :set-params=\"actionsRef!.setParams\" />\n </template>\n </Space>\n </div>\n <div :class=\"`${prefixCls}-toolbar-right`\">\n <Space :class=\"`${prefixCls}-toolbar-actions`\">\n <template v-if=\"mergeOptions.search !== false && (!!title || !!$slots.title)\">\n <ProSearch v-bind=\"searchConfig\" @search=\"onSearch\" />\n <slot name=\"searchExtra\" :set-params=\"actionsRef!.setParams\" />\n </template>\n <slot name=\"actions\" :set-params=\"actionsRef!.setParams\"></slot>\n <template v-if=\"options !== false\">\n <Tooltip\n v-if=\"mergeOptions.reload !== false\"\n :title=\"intl.getMessage('tableToolBar.reload', '刷新')\"\n >\n <div :class=\"`${prefixCls}-toolbar-actions-item`\">\n <ReloadOutlined :spin=\"actionsRef?.pollingLoading.value\" @click=\"onReload\" />\n </div>\n </Tooltip>\n <DensityIcon v-if=\"mergeOptions.density !== false\" :prefixCls=\"prefixCls\" />\n <ColumnSetting\n v-if=\"mergeOptions.setting !== false\"\n :prefix-cls=\"prefixCls\"\n :columns=\"tableColumn\"\n />\n </template>\n </Space>\n </div>\n </slot>\n </div>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_normalizeClass","_createElementVNode","_renderSlot","_createTextVNode","_createBlock","_createVNode","_Fragment","_mergeProps","_createCommentVNode"],"mappings":";;;;;;;;;;;;AAuJE,EAAA,OAAAA,WAAA,EAAAC,kBAAA;AAAA,IA+CM,KAAA;AAAA,IAAA;AAAA,MA/CA,KAAA,EAAKC,cAAA,IAAK,IAAA,CAAA,SAAS,CAAA,QAAA,CAAA;AAAA,KAAA;AAAA;MACvBC,kBAAA;AAAA,QA6CM,KAAA;AAAA,QAAA;AAAA,UA7CA,KAAA,EAAKD,cAAA,IAAK,IAAA,CAAA,SAAS,CAAA,kBAAA,CAAA;AAAA,SAAA;AAAA;UACvBE,WA2CO,IAAA,wBA3CP,MA2CO;AAAA,YA1CLD,kBAAA;AAAA,cAgBM,KAAA;AAAA,cAAA;AAAA,gBAhBA,KAAA,EAAKD,cAAA,IAAK,IAAA,CAAA,SAAS,CAAA,aAAA,CAAA;AAAA,eAAA;AAAA;kBAC4B,IAAA,CAAA,KAAA,IAAK,CAAA,CAAM,IAAA,QAAO,KAAA,IAAAF,SAAA,EAAA,EAArEC,kBAAA;AAAA,kBAQM,KAAA;AAAA,kBAAA;AAAA,oBAAA,GAAA,EAAA,CAAA;AAAA,oBARA,KAAA,EAAKC,cAAA,IAAK,IAAA,CAAA,SAAS,CAAA,cAAA,CAAA;AAAA,mBAAA;AAAA;oBACvBE,WAEO,IAAA,sBAFP,MAEO;AAAA,sBAAAC,eAAA;AAAA,wCADF,KAAA,KAAK,CAAA;AAAA,wBAAA;AAAA;AAAA;AAAA,qBAAA,CAAA;AAAA,oBAEVF,kBAAA;AAAA,sBAAkE,KAAA;AAAA,sBAAA;AAAA,wBAA5D,KAAA,EAAKD,cAAA,IAAK,IAAA,CAAA,SAAS,CAAA,iBAAA,CAAA;AAAA,uBAAA;AAAA,sCAAwB,KAAA,QAAQ,CAAA;AAAA,sBAAA;AAAA;AAAA,qBAAA;AAAA,oBAC1C,IAAA,yBAAfI,YAEU,kBAAA,EAAA;AAAA,sBAAA,GAAA,EAAA,CAAA;AAAA,sBAFe,OAAO,IAAA,CAAA;AAAA,qBAAA,EAAA;AAAA,uCAC9B,MAAuD;AAAA,wBAAvDC,WAAA,CAAuD,iCAAnC,KAAA,EAAA,EAAA,qBAAA,EAAA,KAAA,IAAgC;AAAA,uBAAA,CAAA;AAAA;;;;;;;gBAGH,KAAA,OAAA,KAAO,KAAA,iBAA5DD,YAKQ,gBAAA,EAAA;AAAA,kBAAA,GAAA,EAAA,CAAA;AAAA,kBALA,KAAA,EAAKJ,cAAA,IAAK,IAAA,CAAA,SAAS,CAAA,gBAAA,CAAA;AAAA,iBAAA,EAAA;AAAA,mCACzB,MAGW;AAAA,oBAHK,IAAA,cAAa,MAAA,KAAM,KAAA,IAAA,EAAA,CAAA,CAAkB,IAAA,CAAA,KAAA,IAAK,CAAA,CAAM,IAAA,QAAO,KAAA,CAAA,IAAAF,WAAA,EAAvEC,kBAAA;AAAA,sBAGWO,QAAA;AAAA,sBAAA,EAAA,KAAA,CAAA,EAAA;AAAA,sBAAA;AAAA,wBAFTD,WAAA,CAAsD,oBAAA,EAAtDE,UAAA,CAAsD,IAAA,CAAnC,cAAY,EAAG,QAAA,EAAQ,IAAA,CAAA,QAAA,EAAQ,CAAA,EAAA,IAAA,EAAA,EAAA,EAAA,CAAA,UAAA,CAAA,CAAA;AAAA,wBAClDL,UAAA,CAA+D,IAAA,CAAA,MAAA,EAAA,aAAA,EAAA;AAAA,0BAArC,SAAA,EAAY,KAAA,UAAA,CAAY;AAAA,yBAAA;AAAA;;;;;;;;;;;;YAIxDD,kBAAA;AAAA,cAwBM,KAAA;AAAA,cAAA;AAAA,gBAxBA,KAAA,EAAKD,cAAA,IAAK,IAAA,CAAA,SAAS,CAAA,cAAA,CAAA;AAAA,eAAA;AAAA;gBACvBK,YAsBQ,gBAAA,EAAA;AAAA,kBAtBA,KAAA,EAAKL,cAAA,IAAK,IAAA,CAAA,SAAS,CAAA,gBAAA,CAAA;AAAA,iBAAA,EAAA;AAAA,mCACzB,MAGW;AAAA,oBAHK,IAAA,cAAa,MAAA,KAAM,KAAA,KAAA,CAAA,CAAiB,IAAA,CAAA,KAAA,IAAK,CAAA,CAAM,IAAA,QAAO,KAAA,CAAA,IAAAF,WAAA,EAAtEC,kBAAA;AAAA,sBAGWO,QAAA;AAAA,sBAAA,EAAA,KAAA,CAAA,EAAA;AAAA,sBAAA;AAAA,wBAFTD,WAAA,CAAsD,oBAAA,EAAtDE,UAAA,CAAsD,IAAA,CAAnC,cAAY,EAAG,QAAA,EAAQ,IAAA,CAAA,QAAA,EAAQ,CAAA,EAAA,IAAA,EAAA,EAAA,EAAA,CAAA,UAAA,CAAA,CAAA;AAAA,wBAClDL,UAAA,CAA+D,IAAA,CAAA,MAAA,EAAA,aAAA,EAAA;AAAA,0BAArC,SAAA,EAAY,KAAA,UAAA,CAAY;AAAA,yBAAA;AAAA;;;;oBAEpDA,UAAA,CAAgE,IAAA,CAAA,MAAA,EAAA,SAAA,EAAA;AAAA,sBAA1C,SAAA,EAAY,KAAA,UAAA,CAAY;AAAA,qBAAA,CAAA;AAAA,oBAC9B,IAAA,CAAA,OAAA,KAAO,KAAA,IAAAJ,SAAA,EAAA,EAAvBC,kBAAA;AAAA,sBAeWO,QAAA;AAAA,sBAAA,EAAA,KAAA,CAAA,EAAA;AAAA,sBAAA;AAAA,wBAbD,KAAA,YAAA,CAAa,MAAA,KAAM,SAAAR,SAAA,EAAA,EAD3BM,YAOU,kBAAA,EAAA;AAAA,0BAAA,GAAA,EAAA,CAAA;AAAA,0BALP,KAAA,EAAO,IAAA,MAAK,UAAA,CAAU,uBAAA,cAAA;AAAA,yBAAA,EAAA;AAAA,2CAEvB,MAAA;;AAEM,4BAAA,OAAA;AAAA,8BAFNH,kBAAA;AAAA,gCAEM,KAAA;AAAA,gCAAA;AAAA,kCAFA,KAAA,EAAKD,cAAA,IAAK,IAAA,CAAA,SAAS,CAAA,qBAAA,CAAA;AAAA,iCAAA;AAAA;kCACvBK,YAA6E,yBAAA,EAAA;AAAA,oCAA5D,IAAA,EAAA,CAAM,EAAA,GAAA,IAAA,gBAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAY,cAAA,CAAe,KAAA;AAAA,oCAAQ,SAAO,IAAA,CAAA;AAAA,qCAAA,IAAA,EAAA,CAAA,EAAA,CAAA,MAAA,EAAA,SAAA,CAAA;AAAA;;;;;;;;;wBAGlD,KAAA,YAAA,CAAa,OAAA,KAAO,sBAAvCD,YAA4E,sBAAA,EAAA;AAAA,0BAAA,GAAA,EAAA,CAAA;AAAA,0BAAxB,WAAW,IAAA,CAAA;AAAA,yBAAA,EAAA,MAAA,CAAA,EAAA,CAAA,WAAA,CAAA,CAAA,IAAAI,kBAAA,CAAA,MAAA,EAAA,IAAA,CAAA;AAAA,wBAEvD,KAAA,YAAA,CAAa,OAAA,KAAO,sBAD5BJ,YAIE,wBAAA,EAAA;AAAA,0BAAA,GAAA,EAAA,CAAA;AAAA,0BAFC,cAAY,IAAA,CAAA,SAAA;AAAA,0BACZ,SAAS,IAAA,CAAA;AAAA,yBAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,YAAA,EAAA,SAAA,CAAA,CAAA,IAAAI,kBAAA,CAAA,MAAA,EAAA,IAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ToolBar.vue2.mjs","sources":["../../../../../../../../packages/components/table/src/components/ToolBar/ToolBar.vue"],"sourcesContent":["<!--\n * @Author: shen\n * @Date: 2023-11-06 16:03:18\n * @LastEditors: shen\n * @LastEditTime: 2025-
|
1
|
+
{"version":3,"file":"ToolBar.vue2.mjs","sources":["../../../../../../../../packages/components/table/src/components/ToolBar/ToolBar.vue"],"sourcesContent":["<!--\n * @Author: shen\n * @Date: 2023-11-06 16:03:18\n * @LastEditors: shen\n * @LastEditTime: 2025-10-05 11:39:41\n * @Description:\n-->\n<script lang=\"ts\">\nimport type { PropType } from 'vue'\nimport type { UseFetchDataAction } from '../../hooks/useFetchData'\nimport type { OptionConfig, Key, OptionSearchProps } from '../interface'\n\nimport { defineComponent, h, computed, onMounted } from 'vue'\nimport { Space, Tooltip } from 'ant-design-vue'\nimport {\n ReloadOutlined,\n FilterOutlined,\n SettingOutlined,\n ColumnHeightOutlined,\n InfoCircleOutlined,\n} from '@ant-design/icons-vue'\nimport { omit, omitUndefined } from '@pro-design-vue/utils'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport Search from './Search.vue'\nimport DensityIcon from './DensityIcon.vue'\nimport ColumnSetting from '../ColumnSetting/ColumnSetting.vue'\n\nexport default defineComponent({\n name: 'TableToolBar',\n inheritAttrs: false,\n components: {\n Space,\n ProSearch: Search,\n DensityIcon,\n Tooltip,\n ColumnSetting,\n ReloadOutlined,\n InfoCircleOutlined,\n },\n props: {\n prefixCls: String,\n title: String,\n subTitle: String,\n tooltip: String,\n options: { type: [Object, Boolean] as PropType<OptionConfig | false>, default: undefined },\n actionsRef: Object as PropType<UseFetchDataAction<any>>,\n selectedRowKeys: {\n type: Array as PropType<Key[]>,\n default: () => [],\n },\n selectedRows: {\n type: Array as PropType<any[]>,\n default: () => [],\n },\n tableColumn: {\n type: Array as PropType<any[]>,\n default: () => [],\n },\n onFormSearchSubmit: {\n type: Function as PropType<(params: any) => void>,\n default: undefined,\n },\n },\n setup(props) {\n const intl = useIntl()\n\n const defaultOptions = {\n reload: () => props.actionsRef?.reload(),\n density: true,\n setting: true,\n filter: false,\n search: false,\n }\n\n const mergeOptions = computed<OptionConfig>(() => {\n if (props.options === false) {\n return {}\n }\n return { ...defaultOptions, ...props.options }\n })\n\n const defaultSearchConfig = {\n onChange: (e) => {\n props.actionsRef!.keyword.value = e.target.value!\n },\n }\n\n const searchConfig: any = computed(() => {\n if (props.options === false) {\n return false\n }\n if (!mergeOptions.value!.search) return false\n\n if (mergeOptions.value!.search === true) return defaultSearchConfig\n\n return omit(\n {\n ...(mergeOptions.value!.search ?? {}),\n ...defaultSearchConfig,\n },\n ['name', 'onSearch'],\n )\n })\n\n const onSearch = async (keyword: string) => {\n if (!props.options || !props.options.search) {\n return\n }\n const { name = 'keyword' } = props.options.search === true ? {} : props.options.search\n\n /** 如果传入的 onSearch 返回值为 false,应该直接拦截请求 */\n const success = (props.options.search as OptionSearchProps)?.onSearch?.(keyword)\n\n if (success === false) return\n\n props.onFormSearchSubmit?.(\n omitUndefined({\n [name]: keyword,\n }),\n )\n }\n\n const onReload = (e) => {\n if (mergeOptions.value.reload !== false && typeof mergeOptions.value.reload !== 'boolean') {\n mergeOptions.value.reload?.(e, props.actionsRef)\n }\n }\n\n onMounted(() => {\n if (searchConfig.value.value || searchConfig.value.defaultValue) {\n props.actionsRef!.keyword.value =\n searchConfig.value.value || searchConfig.value.defaultValue\n }\n })\n\n return {\n h,\n intl,\n mergeOptions,\n searchConfig,\n FilterOutlined,\n SettingOutlined,\n ColumnHeightOutlined,\n onSearch,\n onReload,\n }\n },\n})\n</script>\n\n<template>\n <div :class=\"`${prefixCls}-toolbar`\">\n <div :class=\"`${prefixCls}-toolbar-container`\">\n <slot name=\"toolbar\">\n <div :class=\"`${prefixCls}-toolbar-left`\">\n <div :class=\"`${prefixCls}-toolbar-title`\" v-if=\"!!title || !!$slots.title\">\n <slot name=\"title\">\n {{ title }}\n </slot>\n <div :class=\"`${prefixCls}-toolbar-subtitle`\">{{ subTitle }}</div>\n <Tooltip v-if=\"tooltip\" :title=\"tooltip\">\n <InfoCircleOutlined style=\"margin-inline-start: 3px\" />\n </Tooltip>\n </div>\n <Space :class=\"`${prefixCls}-toolbar-options`\" v-if=\"options !== false\">\n <template v-if=\"mergeOptions.search !== false && !(!!title || !!$slots.title)\">\n <ProSearch v-bind=\"searchConfig\" @search=\"onSearch\" />\n <slot name=\"searchExtra\" :set-params=\"actionsRef!.setParams\" />\n </template>\n </Space>\n </div>\n <div :class=\"`${prefixCls}-toolbar-right`\">\n <Space :class=\"`${prefixCls}-toolbar-actions`\">\n <template v-if=\"mergeOptions.search !== false && (!!title || !!$slots.title)\">\n <ProSearch v-bind=\"searchConfig\" @search=\"onSearch\" />\n <slot name=\"searchExtra\" :set-params=\"actionsRef!.setParams\" />\n </template>\n <slot name=\"actions\" :set-params=\"actionsRef!.setParams\"></slot>\n <template v-if=\"options !== false\">\n <Tooltip\n v-if=\"mergeOptions.reload !== false\"\n :title=\"intl.getMessage('tableToolBar.reload', '刷新')\"\n >\n <div :class=\"`${prefixCls}-toolbar-actions-item`\">\n <ReloadOutlined :spin=\"actionsRef?.pollingLoading.value\" @click=\"onReload\" />\n </div>\n </Tooltip>\n <DensityIcon v-if=\"mergeOptions.density !== false\" :prefixCls=\"prefixCls\" />\n <ColumnSetting\n v-if=\"mergeOptions.setting !== false\"\n :prefix-cls=\"prefixCls\"\n :columns=\"tableColumn\"\n />\n </template>\n </Space>\n </div>\n </slot>\n </div>\n </div>\n</template>\n"],"names":[],"mappings":"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"}
|
@@ -224,6 +224,7 @@ export declare const baseTableProps: <T = DefaultRecordType>() => {
|
|
224
224
|
};
|
225
225
|
size: {
|
226
226
|
type: PropType<DensitySize>;
|
227
|
+
default: string;
|
227
228
|
};
|
228
229
|
bordered: {
|
229
230
|
type: BooleanConstructor;
|
@@ -319,6 +320,10 @@ export declare const baseTableProps: <T = DefaultRecordType>() => {
|
|
319
320
|
type: NumberConstructor;
|
320
321
|
default: number;
|
321
322
|
};
|
323
|
+
rowHover: {
|
324
|
+
type: BooleanConstructor;
|
325
|
+
default: undefined;
|
326
|
+
};
|
322
327
|
rowKey: {
|
323
328
|
type: PropType<string | GetRowKey<T>>;
|
324
329
|
};
|
@@ -442,6 +447,9 @@ export declare const baseTableProps: <T = DefaultRecordType>() => {
|
|
442
447
|
'onUpdate:dataSource': {
|
443
448
|
type: PropType<(dataSource: T[]) => void>;
|
444
449
|
};
|
450
|
+
'onUpdate:columns': {
|
451
|
+
type: PropType<(columns: ColumnsType<T>, action: "resize" | "drag") => void>;
|
452
|
+
};
|
445
453
|
columnEmptyText: {
|
446
454
|
type: PropType<string | false>;
|
447
455
|
default: string;
|
@@ -462,6 +470,7 @@ export declare const baseTableProps: <T = DefaultRecordType>() => {
|
|
462
470
|
params: PropType<Record<string, any>>;
|
463
471
|
defaultData: PropType<T[]>;
|
464
472
|
manual: BooleanConstructor;
|
473
|
+
manualRequest: BooleanConstructor;
|
465
474
|
polling: PropType<number | ((dataSource: any[]) => number)>;
|
466
475
|
debounceTime: NumberConstructor;
|
467
476
|
onLoad: {
|
@@ -582,6 +591,7 @@ export declare const tableProps: <T = DefaultRecordType>() => {
|
|
582
591
|
};
|
583
592
|
size: {
|
584
593
|
type: PropType<DensitySize>;
|
594
|
+
default: string;
|
585
595
|
};
|
586
596
|
bordered: {
|
587
597
|
type: BooleanConstructor;
|
@@ -688,6 +698,10 @@ export declare const tableProps: <T = DefaultRecordType>() => {
|
|
688
698
|
type: NumberConstructor;
|
689
699
|
default: number;
|
690
700
|
};
|
701
|
+
rowHover: {
|
702
|
+
type: BooleanConstructor;
|
703
|
+
default: undefined;
|
704
|
+
};
|
691
705
|
rowKey: {
|
692
706
|
type: PropType<string | GetRowKey<T>>;
|
693
707
|
};
|
@@ -872,6 +886,9 @@ export declare const tableProps: <T = DefaultRecordType>() => {
|
|
872
886
|
'onUpdate:dataSource': {
|
873
887
|
type: PropType<(dataSource: T[]) => void>;
|
874
888
|
};
|
889
|
+
'onUpdate:columns': {
|
890
|
+
type: PropType<(columns: ColumnsType<T>, action: "resize" | "drag") => void>;
|
891
|
+
};
|
875
892
|
columnEmptyText: {
|
876
893
|
type: PropType<string | false>;
|
877
894
|
default: string;
|
@@ -892,6 +909,7 @@ export declare const tableProps: <T = DefaultRecordType>() => {
|
|
892
909
|
params: PropType<Record<string, any>>;
|
893
910
|
defaultData: PropType<T[]>;
|
894
911
|
manual: BooleanConstructor;
|
912
|
+
manualRequest: BooleanConstructor;
|
895
913
|
polling: PropType<number | ((dataSource: any[]) => number)>;
|
896
914
|
debounceTime: NumberConstructor;
|
897
915
|
onLoad: {
|
@@ -1054,6 +1072,7 @@ declare class Helper<T extends DefaultRecordType> {
|
|
1054
1072
|
};
|
1055
1073
|
size: {
|
1056
1074
|
type: PropType<DensitySize>;
|
1075
|
+
default: string;
|
1057
1076
|
};
|
1058
1077
|
bordered: {
|
1059
1078
|
type: BooleanConstructor;
|
@@ -1160,6 +1179,10 @@ declare class Helper<T extends DefaultRecordType> {
|
|
1160
1179
|
type: NumberConstructor;
|
1161
1180
|
default: number;
|
1162
1181
|
};
|
1182
|
+
rowHover: {
|
1183
|
+
type: BooleanConstructor;
|
1184
|
+
default: undefined;
|
1185
|
+
};
|
1163
1186
|
rowKey: {
|
1164
1187
|
type: PropType<string | GetRowKey<T>>;
|
1165
1188
|
};
|
@@ -1344,6 +1367,9 @@ declare class Helper<T extends DefaultRecordType> {
|
|
1344
1367
|
'onUpdate:dataSource': {
|
1345
1368
|
type: PropType<(dataSource: T[]) => void>;
|
1346
1369
|
};
|
1370
|
+
'onUpdate:columns': {
|
1371
|
+
type: PropType<(columns: ColumnsType<T>, action: "resize" | "drag") => void>;
|
1372
|
+
};
|
1347
1373
|
columnEmptyText: {
|
1348
1374
|
type: PropType<string | false>;
|
1349
1375
|
default: string;
|
@@ -1364,6 +1390,7 @@ declare class Helper<T extends DefaultRecordType> {
|
|
1364
1390
|
params: PropType<Record<string, any>>;
|
1365
1391
|
defaultData: PropType<T[]>;
|
1366
1392
|
manual: BooleanConstructor;
|
1393
|
+
manualRequest: BooleanConstructor;
|
1367
1394
|
polling: PropType<number | ((dataSource: any[]) => number)>;
|
1368
1395
|
debounceTime: NumberConstructor;
|
1369
1396
|
onLoad: {
|
@@ -1433,6 +1460,7 @@ export interface ColumnTitleProps<RecordType> {
|
|
1433
1460
|
sortOrder?: SortOrder;
|
1434
1461
|
/** @deprecated Please use `sorterColumns` instead. */
|
1435
1462
|
sortColumn?: ColumnType<RecordType>;
|
1463
|
+
column: ColumnType<RecordType>;
|
1436
1464
|
sortColumns?: {
|
1437
1465
|
column: ColumnType<RecordType>;
|
1438
1466
|
order: SortOrder;
|
@@ -1571,7 +1599,7 @@ export interface ColumnType<RecordType = DefaultRecordType> extends ColumnShared
|
|
1571
1599
|
flex?: number;
|
1572
1600
|
autoHeight?: boolean;
|
1573
1601
|
tooltip?: true | CellTooltip;
|
1574
|
-
headerTooltip?: string;
|
1602
|
+
headerTooltip?: string | true;
|
1575
1603
|
hidden?: boolean;
|
1576
1604
|
sorter?: boolean | CompareFn<RecordType> | {
|
1577
1605
|
compare?: CompareFn<RecordType>;
|
@@ -1636,7 +1664,7 @@ export interface ColumnType<RecordType = DefaultRecordType> extends ColumnShared
|
|
1636
1664
|
};
|
1637
1665
|
valueEnum?: ((row: RecordType) => Record<string, ValueEnumType>) | Record<string, ValueEnumType>;
|
1638
1666
|
valueStatus?: ((value: any, row: RecordType) => ValueStatus) | ValueStatus;
|
1639
|
-
renderText?: (text: any, record: RecordType, rowIndex: number) => string;
|
1667
|
+
renderText?: (text: any, record: RecordType, rowIndex: number) => string | number;
|
1640
1668
|
/** @name 列设置的 disabled */
|
1641
1669
|
disable?: boolean | {
|
1642
1670
|
checkbox: boolean;
|
@@ -1647,8 +1675,7 @@ export interface ColumnType<RecordType = DefaultRecordType> extends ColumnShared
|
|
1647
1675
|
hideInSearch?: boolean;
|
1648
1676
|
/** @name 不在配置工具中显示 */
|
1649
1677
|
hideInSetting?: boolean;
|
1650
|
-
|
1651
|
-
hideInFilter?: boolean;
|
1678
|
+
children?: ColumnType<RecordType>[];
|
1652
1679
|
}
|
1653
1680
|
export interface ColumnGroupType<RecordType = DefaultRecordType> extends ColumnType<RecordType> {
|
1654
1681
|
children?: ColumnsType<RecordType>;
|
@@ -1742,7 +1769,7 @@ export interface ColumnDragGhostArg<ColumnT> {
|
|
1742
1769
|
event: MouseEvent | Touch;
|
1743
1770
|
targetColumn: ColumnT;
|
1744
1771
|
}
|
1745
|
-
export type DensitySize = 'small' | '
|
1772
|
+
export type DensitySize = 'small' | 'middle' | 'large' | undefined;
|
1746
1773
|
export type Request<T = DefaultRecordType, U = Record<string, any>> = (params: U & {
|
1747
1774
|
pageSize?: number;
|
1748
1775
|
current?: number;
|
@@ -1787,6 +1814,7 @@ export type ColumnsState = {
|
|
1787
1814
|
show?: boolean;
|
1788
1815
|
fixed?: true | 'right' | 'left' | undefined;
|
1789
1816
|
order?: number;
|
1817
|
+
width?: number;
|
1790
1818
|
disable?: boolean | {
|
1791
1819
|
checkbox: boolean;
|
1792
1820
|
};
|
@@ -65,7 +65,8 @@ const baseTableProps = () => ({
|
|
65
65
|
type: [Number, String]
|
66
66
|
},
|
67
67
|
size: {
|
68
|
-
type: String
|
68
|
+
type: String,
|
69
|
+
default: "middle"
|
69
70
|
},
|
70
71
|
bordered: {
|
71
72
|
type: Boolean,
|
@@ -161,6 +162,10 @@ const baseTableProps = () => ({
|
|
161
162
|
type: Number,
|
162
163
|
default: 59
|
163
164
|
},
|
165
|
+
rowHover: {
|
166
|
+
type: Boolean,
|
167
|
+
default: void 0
|
168
|
+
},
|
164
169
|
rowKey: {
|
165
170
|
type: [Function, String]
|
166
171
|
},
|
@@ -275,6 +280,9 @@ const baseTableProps = () => ({
|
|
275
280
|
"onUpdate:dataSource": {
|
276
281
|
type: Function
|
277
282
|
},
|
283
|
+
"onUpdate:columns": {
|
284
|
+
type: Function
|
285
|
+
},
|
278
286
|
columnEmptyText: {
|
279
287
|
type: [String, Boolean],
|
280
288
|
default: "-"
|
@@ -287,6 +295,7 @@ const baseTableProps = () => ({
|
|
287
295
|
params: Object,
|
288
296
|
defaultData: Array,
|
289
297
|
manual: Boolean,
|
298
|
+
manualRequest: Boolean,
|
290
299
|
polling: [Number, Function],
|
291
300
|
debounceTime: Number,
|
292
301
|
onLoad: {
|