element-plus
Version:
A Component Library for Vue 3
1 lines • 16.5 kB
Source Map (JSON)
{"version":3,"file":"filter-panel.mjs","sources":["../../../../../../packages/components/table/src/filter-panel.vue"],"sourcesContent":["<template>\n <el-tooltip\n ref=\"tooltip\"\n :visible=\"tooltipVisible\"\n :offset=\"0\"\n :placement=\"placement\"\n :show-arrow=\"false\"\n :stop-popper-mouse-event=\"false\"\n teleported\n effect=\"light\"\n pure\n :popper-class=\"filterClassName\"\n persistent\n :append-to=\"appendTo\"\n >\n <template #content>\n <div v-if=\"multiple\">\n <div :class=\"ns.e('content')\">\n <el-scrollbar :wrap-class=\"ns.e('wrap')\">\n <el-checkbox-group\n v-model=\"filteredValue\"\n :class=\"ns.e('checkbox-group')\"\n >\n <el-checkbox\n v-for=\"filter in filters\"\n :key=\"filter.value\"\n :value=\"filter.value\"\n >\n {{ filter.text }}\n </el-checkbox>\n </el-checkbox-group>\n </el-scrollbar>\n </div>\n <div :class=\"ns.e('bottom')\">\n <button\n :class=\"{ [ns.is('disabled')]: filteredValue.length === 0 }\"\n :disabled=\"filteredValue.length === 0\"\n type=\"button\"\n @click=\"handleConfirm\"\n >\n {{ t('el.table.confirmFilter') }}\n </button>\n <button type=\"button\" @click=\"handleReset\">\n {{ t('el.table.resetFilter') }}\n </button>\n </div>\n </div>\n <ul v-else :class=\"ns.e('list')\">\n <li\n :class=\"[\n ns.e('list-item'),\n {\n [ns.is('active')]: isPropAbsent(filterValue),\n },\n ]\"\n @click=\"handleSelect(null)\"\n >\n {{ t('el.table.clearFilter') }}\n </li>\n <li\n v-for=\"filter in filters\"\n :key=\"filter.value\"\n :class=\"[ns.e('list-item'), ns.is('active', isActive(filter))]\"\n :label=\"filter.value\"\n @click=\"handleSelect(filter.value)\"\n >\n {{ filter.text }}\n </li>\n </ul>\n </template>\n <template #default>\n <span\n v-click-outside:[popperPaneRef]=\"hideFilterPanel\"\n :class=\"[\n `${ns.namespace.value}-table__column-filter-trigger`,\n `${ns.namespace.value}-none-outline`,\n ]\"\n @click=\"showFilterPanel\"\n >\n <el-icon>\n <slot name=\"filter-icon\">\n <arrow-up v-if=\"column?.filterOpened\" />\n <arrow-down v-else />\n </slot>\n </el-icon>\n </span>\n </template>\n </el-tooltip>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, getCurrentInstance, ref, watch } from 'vue'\nimport ElCheckbox from '@element-plus/components/checkbox'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { ArrowDown, ArrowUp } from '@element-plus/icons-vue'\nimport { ClickOutside } from '@element-plus/directives'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport ElTooltip, {\n useTooltipContentProps,\n} from '@element-plus/components/tooltip'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport { isPropAbsent } from '@element-plus/utils'\n\nimport type { DefaultRow } from './table/defaults'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\nimport type { Placement } from '@element-plus/components/popper'\nimport type { PropType, WritableComputedRef } from 'vue'\nimport type { TableColumnCtx } from './table-column/defaults'\nimport type { TableHeader } from './table-header'\nimport type { Store } from './store'\n\nconst { CheckboxGroup: ElCheckboxGroup } = ElCheckbox\n\nexport default defineComponent({\n name: 'ElTableFilterPanel',\n components: {\n ElCheckbox,\n ElCheckboxGroup,\n ElScrollbar,\n ElTooltip,\n ElIcon,\n ArrowDown,\n ArrowUp,\n },\n directives: { ClickOutside },\n props: {\n placement: {\n type: String as PropType<Placement>,\n default: 'bottom-start',\n },\n store: {\n type: Object as PropType<Store<DefaultRow>>,\n },\n column: {\n type: Object as PropType<TableColumnCtx<DefaultRow>>,\n },\n upDataColumn: {\n type: Function,\n },\n appendTo: useTooltipContentProps.appendTo,\n },\n setup(props) {\n const instance = getCurrentInstance()\n const { t } = useLocale()\n const ns = useNamespace('table-filter')\n const parent = instance?.parent as TableHeader\n if (props.column && !parent.filterPanels.value[props.column.id]) {\n parent.filterPanels.value[props.column.id] = instance\n }\n const tooltipVisible = ref(false)\n const tooltip = ref<TooltipInstance | null>(null)\n const filters = computed(() => {\n return props.column && props.column.filters\n })\n const filterClassName = computed(() => {\n if (props.column && props.column.filterClassName) {\n return `${ns.b()} ${props.column.filterClassName}`\n }\n return ns.b()\n })\n const filterValue = computed({\n get: () => (props.column?.filteredValue || [])[0],\n set: (value?: string | null) => {\n if (filteredValue.value) {\n if (!isPropAbsent(value)) {\n filteredValue.value.splice(0, 1, value)\n } else {\n filteredValue.value.splice(0, 1)\n }\n }\n },\n })\n const filteredValue: WritableComputedRef<string[]> = computed({\n get() {\n if (props.column) {\n return props.column.filteredValue || []\n }\n return []\n },\n set(value: string[]) {\n if (props.column) {\n props.upDataColumn?.('filteredValue', value)\n }\n },\n })\n const multiple = computed(() => {\n if (props.column) {\n return props.column.filterMultiple\n }\n return true\n })\n const isActive = (filter: { value: string; text: string }) => {\n return filter.value === filterValue.value\n }\n const hidden = () => {\n tooltipVisible.value = false\n }\n const showFilterPanel = (e: MouseEvent) => {\n e.stopPropagation()\n tooltipVisible.value = !tooltipVisible.value\n }\n const hideFilterPanel = () => {\n tooltipVisible.value = false\n }\n const handleConfirm = () => {\n confirmFilter(filteredValue.value)\n hidden()\n }\n const handleReset = () => {\n filteredValue.value = []\n confirmFilter(filteredValue.value)\n hidden()\n }\n const handleSelect = (_filterValue?: string | null) => {\n filterValue.value = _filterValue!\n if (!isPropAbsent(_filterValue)) {\n confirmFilter(filteredValue.value)\n } else {\n confirmFilter([])\n }\n hidden()\n }\n const confirmFilter = (filteredValue: unknown[]) => {\n props.store?.commit('filterChange', {\n column: props.column,\n values: filteredValue,\n })\n props.store?.updateAllSelected()\n }\n watch(\n tooltipVisible,\n (value) => {\n if (props.column) {\n props.upDataColumn?.('filterOpened', value)\n }\n },\n {\n immediate: true,\n }\n )\n\n const popperPaneRef = computed(() => {\n return tooltip.value?.popperRef?.contentRef\n })\n\n return {\n tooltipVisible,\n multiple,\n filterClassName,\n filteredValue,\n filterValue,\n filters,\n handleConfirm,\n handleReset,\n handleSelect,\n isPropAbsent,\n isActive,\n t,\n ns,\n showFilterPanel,\n hideFilterPanel,\n popperPaneRef,\n tooltip,\n }\n },\n})\n</script>\n"],"names":["_resolveComponent","_resolveDirective","_openBlock","_createBlock","_withCtx","_createElementBlock","_createElementVNode","_normalizeClass","_createVNode","_Fragment","_renderList","_createTextVNode","_toDisplayString","_withDirectives"],"mappings":"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"}