element-plus
Version:
A Component Library for Vue 3
1 lines • 8.5 kB
Source Map (JSON)
{"version":3,"file":"transfer-panel2.mjs","sources":["../../../../../../packages/components/transfer/src/transfer-panel.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b('panel')\">\n <p :class=\"ns.be('panel', 'header')\">\n <el-checkbox\n v-model=\"allChecked\"\n :indeterminate=\"isIndeterminate\"\n :validate-event=\"false\"\n @change=\"handleAllCheckedChange\"\n >\n {{ title }}\n <span>{{ checkedSummary }}</span>\n </el-checkbox>\n </p>\n\n <div :class=\"[ns.be('panel', 'body'), ns.is('with-footer', hasFooter)]\">\n <el-input\n v-if=\"filterable\"\n v-model=\"query\"\n :class=\"ns.be('panel', 'filter')\"\n size=\"default\"\n :placeholder=\"placeholder\"\n :prefix-icon=\"Search\"\n clearable\n :validate-event=\"false\"\n />\n <el-checkbox-group\n v-show=\"!hasNoMatch && !isEmpty(data)\"\n v-model=\"checked\"\n :validate-event=\"false\"\n :class=\"[ns.is('filterable', filterable), ns.be('panel', 'list')]\"\n >\n <el-checkbox\n v-for=\"item in filteredData\"\n :key=\"item[propsAlias.key]\"\n :class=\"ns.be('panel', 'item')\"\n :value=\"item[propsAlias.key]\"\n :disabled=\"item[propsAlias.disabled]\"\n :validate-event=\"false\"\n >\n <option-content :option=\"optionRender?.(item)\" />\n </el-checkbox>\n </el-checkbox-group>\n <div\n v-show=\"hasNoMatch || isEmpty(data)\"\n :class=\"ns.be('panel', 'empty')\"\n >\n <slot name=\"empty\">\n {{ hasNoMatch ? t('el.transfer.noMatch') : t('el.transfer.noData') }}\n </slot>\n </div>\n </div>\n <p v-if=\"hasFooter\" :class=\"ns.be('panel', 'footer')\">\n <slot />\n </p>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, reactive, toRefs, useSlots } from 'vue'\nimport { isEmpty } from '@element-plus/utils'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { ElCheckbox, ElCheckboxGroup } from '@element-plus/components/checkbox'\nimport { ElInput } from '@element-plus/components/input'\nimport { Search } from '@element-plus/icons-vue'\nimport { transferPanelEmits, transferPanelProps } from './transfer-panel'\nimport { useCheck, usePropsAlias } from './composables'\n\nimport type { VNode } from 'vue'\nimport type { TransferPanelState } from './transfer-panel'\n\ndefineOptions({\n name: 'ElTransferPanel',\n})\n\nconst props = defineProps(transferPanelProps)\nconst emit = defineEmits(transferPanelEmits)\nconst slots = useSlots()\n\nconst OptionContent = ({ option }: { option?: VNode | VNode[] }) => option\n\nconst { t } = useLocale()\nconst ns = useNamespace('transfer')\n\nconst panelState = reactive<TransferPanelState>({\n checked: [],\n allChecked: false,\n query: '',\n checkChangeByUser: true,\n})\n\nconst propsAlias = usePropsAlias(props)\n\nconst {\n filteredData,\n checkedSummary,\n isIndeterminate,\n handleAllCheckedChange,\n} = useCheck(props, panelState, emit)\n\nconst hasNoMatch = computed(\n () => !isEmpty(panelState.query) && isEmpty(filteredData.value)\n)\n\nconst hasFooter = computed(() => !isEmpty(slots.default!()[0].children))\n\nconst { checked, allChecked, query } = toRefs(panelState)\n\ndefineExpose({\n /** @description filter keyword */\n query,\n})\n</script>\n"],"names":["_openBlock","_createElementBlock","_normalizeClass","_unref","_createElementVNode","_createVNode","_isRef","_createTextVNode","title","_toDisplayString","filterable","_createBlock","placeholder","_createCommentVNode","_Fragment","_renderList","optionRender","data","_withDirectives","_renderSlot","_vShow"],"mappings":"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"}