@koi-design/uxd-ui 14.0.7 → 14.0.8
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/es/components/Cascader/Cascader.d.ts +3 -3
- package/es/components/Cascader/Cascader.mjs +2 -4
- package/es/components/Cascader/Cascader.mjs.map +1 -1
- package/es/components/Cascader/Cascader.type.d.ts +1 -1
- package/es/components/Cascader/Cascader.type.mjs +1 -1
- package/es/components/Cascader/Cascader.type.mjs.map +1 -1
- package/es/components/Cascader/CascaderMenu.mjs +4 -4
- package/es/components/Cascader/CascaderMenu.mjs.map +1 -1
- package/es/components/Cascader/index.d.ts +6 -6
- package/es/components/Checkbox/Checkbox.mjs +1 -0
- package/es/components/Checkbox/Checkbox.mjs.map +1 -1
- package/es/components/Checkbox/Checkbox.type.d.ts +1 -0
- package/es/components/Checkbox/Checkbox.type.mjs +2 -1
- package/es/components/Checkbox/Checkbox.type.mjs.map +1 -1
- package/es/components/Checkbox/Checkbox.vue.d.ts +2 -0
- package/es/components/Checkbox/CheckboxGroup.vue.d.ts +2 -0
- package/es/components/Checkbox/index.d.ts +7 -0
- package/es/components/Progress/Circle.mjs +1 -3
- package/es/components/Progress/Circle.mjs.map +1 -1
- package/es/components/Progress/Progress.mjs +2 -3
- package/es/components/Progress/Progress.mjs.map +1 -1
- package/es/components/Progress/Progress.type.d.ts +1 -6
- package/es/components/Progress/Progress.type.mjs +0 -6
- package/es/components/Progress/Progress.type.mjs.map +1 -1
- package/es/components/Progress/Progress.vue.d.ts +0 -16
- package/es/components/Progress/index.d.ts +0 -33
- package/es/components/Select/RefSelect.vue.d.ts +7 -0
- package/es/components/Table/BaseTable.vue.d.ts +7 -0
- package/es/components/Table/BodyTable.vue.d.ts +7 -0
- package/es/components/Table/HeadTable.vue.d.ts +7 -0
- package/es/components/Table/Table.vue.d.ts +14 -0
- package/es/components/Table/TableBox.vue.d.ts +14 -0
- package/es/components/Table/tableUnits/FilterDropdown.vue.d.ts +7 -0
- package/es/components/Table/tableUnits/SelectionBox.vue.d.ts +7 -0
- package/es/components/Table/tableUnits/SelectionCheckAll.vue.d.ts +7 -0
- package/es/components/Table/tableUnits/TableHeader.vue.d.ts +7 -0
- package/es/components/Table/tableUnits/TableHeaderRow.vue.d.ts +7 -0
- package/es/components/Transfer/Operation.mjs +6 -4
- package/es/components/Transfer/Operation.mjs.map +1 -1
- package/es/components/Transfer/Transfer.mjs +2 -4
- package/es/components/Transfer/Transfer.mjs.map +1 -1
- package/es/components/Transfer/Transfer.type.d.ts +0 -5
- package/es/components/Transfer/Transfer.type.mjs +1 -8
- package/es/components/Transfer/Transfer.type.mjs.map +1 -1
- package/es/components/Transfer/Transfer.vue.d.ts +42 -11
- package/es/components/Transfer/TransferList.mjs +14 -10
- package/es/components/Transfer/TransferList.mjs.map +1 -1
- package/es/components/Transfer/TransferList.vue.d.ts +14 -0
- package/es/components/Transfer/TransferListItem.vue.d.ts +7 -0
- package/es/components/Transfer/index.d.ts +112 -18
- package/es/components/Tree/SubTree.vue.d.ts +7 -0
- package/es/components/Tree/Tree.vue.d.ts +7 -0
- package/es/components/Tree/TreeNode.vue.d.ts +7 -0
- package/es/components/Tree/index.d.ts +14 -0
- package/es/components/TreeSelect/TreeSelect.vue.d.ts +14 -0
- package/es/components/TreeSelect/index.d.ts +28 -0
- package/es/components/Upload/UploadList.vue.d.ts +0 -33
- package/lib/components/Cascader/Cascader.d.ts +3 -3
- package/lib/components/Cascader/Cascader.js +2 -4
- package/lib/components/Cascader/Cascader.js.map +1 -1
- package/lib/components/Cascader/Cascader.type.d.ts +1 -1
- package/lib/components/Cascader/Cascader.type.js +1 -1
- package/lib/components/Cascader/Cascader.type.js.map +1 -1
- package/lib/components/Cascader/CascaderMenu.js +3 -3
- package/lib/components/Cascader/CascaderMenu.js.map +1 -1
- package/lib/components/Cascader/index.d.ts +6 -6
- package/lib/components/Checkbox/Checkbox.js +1 -0
- package/lib/components/Checkbox/Checkbox.js.map +1 -1
- package/lib/components/Checkbox/Checkbox.type.d.ts +1 -0
- package/lib/components/Checkbox/Checkbox.type.js +2 -1
- package/lib/components/Checkbox/Checkbox.type.js.map +1 -1
- package/lib/components/Checkbox/Checkbox.vue.d.ts +2 -0
- package/lib/components/Checkbox/CheckboxGroup.vue.d.ts +2 -0
- package/lib/components/Checkbox/index.d.ts +7 -0
- package/lib/components/Progress/Circle.js +1 -3
- package/lib/components/Progress/Circle.js.map +1 -1
- package/lib/components/Progress/Progress.js +2 -3
- package/lib/components/Progress/Progress.js.map +1 -1
- package/lib/components/Progress/Progress.type.d.ts +1 -6
- package/lib/components/Progress/Progress.type.js +0 -6
- package/lib/components/Progress/Progress.type.js.map +1 -1
- package/lib/components/Progress/Progress.vue.d.ts +0 -16
- package/lib/components/Progress/index.d.ts +0 -33
- package/lib/components/Select/RefSelect.vue.d.ts +7 -0
- package/lib/components/Table/BaseTable.vue.d.ts +7 -0
- package/lib/components/Table/BodyTable.vue.d.ts +7 -0
- package/lib/components/Table/HeadTable.vue.d.ts +7 -0
- package/lib/components/Table/Table.vue.d.ts +14 -0
- package/lib/components/Table/TableBox.vue.d.ts +14 -0
- package/lib/components/Table/tableUnits/FilterDropdown.vue.d.ts +7 -0
- package/lib/components/Table/tableUnits/SelectionBox.vue.d.ts +7 -0
- package/lib/components/Table/tableUnits/SelectionCheckAll.vue.d.ts +7 -0
- package/lib/components/Table/tableUnits/TableHeader.vue.d.ts +7 -0
- package/lib/components/Table/tableUnits/TableHeaderRow.vue.d.ts +7 -0
- package/lib/components/Transfer/Operation.js +6 -4
- package/lib/components/Transfer/Operation.js.map +1 -1
- package/lib/components/Transfer/Transfer.js +2 -4
- package/lib/components/Transfer/Transfer.js.map +1 -1
- package/lib/components/Transfer/Transfer.type.d.ts +0 -5
- package/lib/components/Transfer/Transfer.type.js +0 -7
- package/lib/components/Transfer/Transfer.type.js.map +1 -1
- package/lib/components/Transfer/Transfer.vue.d.ts +42 -11
- package/lib/components/Transfer/TransferList.js +14 -10
- package/lib/components/Transfer/TransferList.js.map +1 -1
- package/lib/components/Transfer/TransferList.vue.d.ts +14 -0
- package/lib/components/Transfer/TransferListItem.vue.d.ts +7 -0
- package/lib/components/Transfer/index.d.ts +112 -18
- package/lib/components/Tree/SubTree.vue.d.ts +7 -0
- package/lib/components/Tree/Tree.vue.d.ts +7 -0
- package/lib/components/Tree/TreeNode.vue.d.ts +7 -0
- package/lib/components/Tree/index.d.ts +14 -0
- package/lib/components/TreeSelect/TreeSelect.vue.d.ts +14 -0
- package/lib/components/TreeSelect/index.d.ts +28 -0
- package/lib/components/Upload/UploadList.vue.d.ts +0 -33
- package/package.json +1 -1
- package/styles/components/alert/index.css +1 -1
- package/styles/components/autoComplete/index.css +1 -1
- package/styles/components/avatar/index.css +1 -1
- package/styles/components/button/index.css +1 -1
- package/styles/components/carousel/index.css +1 -1
- package/styles/components/carousel/index.less +38 -35
- package/styles/components/carousel/var.less +6 -19
- package/styles/components/cascader/index.css +1 -1
- package/styles/components/cascader/index.less +20 -32
- package/styles/components/datePicker/index.css +1 -1
- package/styles/components/form/index.css +1 -1
- package/styles/components/icon/index.css +1 -1
- package/styles/components/input/index.css +1 -1
- package/styles/components/inputNumber/index.css +1 -1
- package/styles/components/link/index.css +1 -1
- package/styles/components/mentions/index.css +1 -1
- package/styles/components/menu/index.css +1 -1
- package/styles/components/menu/var.less +3 -2
- package/styles/components/modal/index.css +1 -1
- package/styles/components/progress/index.css +1 -1
- package/styles/components/progress/index.less +42 -56
- package/styles/components/progress/var.less +3 -4
- package/styles/components/select/index.css +1 -1
- package/styles/components/spin/index.css +1 -1
- package/styles/components/timePicker/index.css +1 -1
- package/styles/components/transfer/index.css +1 -1
- package/styles/components/transfer/index.less +38 -42
- package/styles/components/transfer/var.less +8 -42
- package/styles/components/tree/index.css +1 -1
- package/styles/components/tree/index.less +17 -27
- package/styles/components/tree/var.less +5 -16
- package/styles/cssVariable.css +1 -1
- package/styles/cssVariable.less +0 -1
- package/styles/index.css +1 -1
- package/styles/tokens/typography.css +1 -1
- package/types/components/Cascader/Cascader.d.ts +3 -3
- package/types/components/Cascader/Cascader.type.d.ts +1 -1
- package/types/components/Cascader/index.d.ts +6 -6
- package/types/components/Checkbox/Checkbox.type.d.ts +1 -0
- package/types/components/Checkbox/Checkbox.vue.d.ts +2 -0
- package/types/components/Checkbox/CheckboxGroup.vue.d.ts +2 -0
- package/types/components/Checkbox/index.d.ts +7 -0
- package/types/components/Progress/Progress.type.d.ts +1 -6
- package/types/components/Progress/Progress.vue.d.ts +0 -16
- package/types/components/Progress/index.d.ts +0 -33
- package/types/components/Select/RefSelect.vue.d.ts +7 -0
- package/types/components/Table/BaseTable.vue.d.ts +7 -0
- package/types/components/Table/BodyTable.vue.d.ts +7 -0
- package/types/components/Table/HeadTable.vue.d.ts +7 -0
- package/types/components/Table/Table.vue.d.ts +14 -0
- package/types/components/Table/TableBox.vue.d.ts +14 -0
- package/types/components/Table/tableUnits/FilterDropdown.vue.d.ts +7 -0
- package/types/components/Table/tableUnits/SelectionBox.vue.d.ts +7 -0
- package/types/components/Table/tableUnits/SelectionCheckAll.vue.d.ts +7 -0
- package/types/components/Table/tableUnits/TableHeader.vue.d.ts +7 -0
- package/types/components/Table/tableUnits/TableHeaderRow.vue.d.ts +7 -0
- package/types/components/Transfer/Transfer.type.d.ts +0 -5
- package/types/components/Transfer/Transfer.vue.d.ts +42 -11
- package/types/components/Transfer/TransferList.vue.d.ts +14 -0
- package/types/components/Transfer/TransferListItem.vue.d.ts +7 -0
- package/types/components/Transfer/index.d.ts +112 -18
- package/types/components/Tree/SubTree.vue.d.ts +7 -0
- package/types/components/Tree/Tree.vue.d.ts +7 -0
- package/types/components/Tree/TreeNode.vue.d.ts +7 -0
- package/types/components/Tree/index.d.ts +14 -0
- package/types/components/TreeSelect/TreeSelect.vue.d.ts +14 -0
- package/types/components/TreeSelect/index.d.ts +28 -0
- package/types/components/Upload/UploadList.vue.d.ts +0 -33
- package/uxd-ui.css +1 -1
- package/uxd-ui.esm.min.mjs +6 -6
- package/uxd-ui.esm.mjs +142 -151
- package/uxd-ui.umd.js +141 -150
- package/uxd-ui.umd.min.js +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Transfer.mjs","sources":["../../../../src/components/Transfer/Transfer.vue"],"sourcesContent":["<template>\n <div :class=\"[prefixCls, { [`${prefixCls}-custom`]: !!renderList, [`${prefixCls}-rtl`]: computedDirection === 'rtl' }]\" :data-color=\"color\">\n <TransferList\n :ref=\"getTransferRef(0)\"\n side=\"left\"\n :prefix-cls=\"prefixCls\"\n :list-style=\"listStyle\"\n :title-text=\"titles[0]\"\n :data-source=\"separatedData.leftData\"\n :checked-keys=\"separatedKeys.sourceSelectedKeys\"\n :disabled=\"disabled\"\n :show-select-all=\"showSelectAll\"\n :filter-method=\"filterMethod\"\n :show-search=\"showSearch\"\n :search=\"leftSearch\"\n :footer=\"footer\"\n :render-list=\"renderList\"\n :locale=\"thisLocale\"\n :loading=\"loading\"\n @item-select=\"handleSelect\"\n @check-all=\"handleSelectAll\"\n @search=\"handleSearchChange\"\n />\n <Operation\n :prefix-cls=\"prefixCls\"\n :to-right-disabled=\"toRightDisabled || separatedKeys.sourceSelectedKeys.length === 0\"\n :to-left-disabled=\"toLeftDisabled || separatedKeys.targetSelectedKeys.length === 0\"\n :disabled=\"disabled\"\n :loading=\"loading\"\n :operations=\"operations\"\n @on-click=\"handleChange\"\n />\n <TransferList\n :ref=\"getTransferRef(1)\"\n side=\"right\"\n :prefix-cls=\"prefixCls\"\n :list-style=\"listStyle\"\n :title-text=\"titles[1]\"\n :data-source=\"separatedData.rightData\"\n :checked-keys=\"separatedKeys.targetSelectedKeys\"\n :disabled=\"disabled\"\n :show-select-all=\"showSelectAll\"\n :filter-method=\"filterMethod\"\n :show-search=\"showSearch\"\n :search=\"rightSearch\"\n :footer=\"footer\"\n :render-list=\"renderList\"\n :locale=\"thisLocale\"\n :loading=\"loading\"\n @item-select=\"handleSelect\"\n @check-all=\"handleSelectAll\"\n @search=\"handleSearchChange\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, watch, computed, provide, ref, inject } from 'vue';\nimport TransferList from './TransferList.vue';\nimport Operation from './Operation.vue';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport { changeKeys } from './util';\nimport { transferEmits, transferProps, type TransferDataItem, type TransferSide } from './Transfer.type';\n\nimport type { FormItemContext } from '../Form/Form.type';\nimport { FormItemKey } from '../Form';\n\nexport const DataItem = {\n key: { type: String, isRequired: true },\n title: { type: String, isRequired: true },\n description: { type: String },\n disabled: { type: Boolean, default: undefined as undefined }\n};\n\ndeclare type TransferListInstance = InstanceType<typeof TransferList>;\n\nexport default defineComponent({\n name: 'UTransfer',\n components: { TransferList, Operation },\n props: transferProps,\n emits: transferEmits,\n setup(props, { emit, slots }) {\n const { prefixCls, config: globalConfig } = useGlobalConfig('transfer');\n\n const { onFieldChange } = inject<FormItemContext>(FormItemKey, {} as FormItemContext);\n\n const transferRefs = ref<TransferListInstance[]>([]);\n\n const getTransferRef = (i: number) => {\n return (ins: any) => {\n transferRefs.value[i] = ins;\n };\n };\n\n const thisLocale = computed(() => {\n return props.locale || globalConfig.locale.transfer;\n });\n\n const computedDirection = computed(() => {\n return props.direction || globalConfig.direction || 'ltr';\n });\n\n const selfTargetKeys = ref(props.targetKeys || []);\n const selfSelectedKeys = ref(props.selectedKeys || []);\n\n watch(\n () => props.targetKeys,\n (nextTargetKeys) => {\n selfTargetKeys.value = nextTargetKeys || [];\n }\n );\n\n // compute left dataSource and right dataSource\n const separatedData = computed(() => {\n const leftData: TransferDataItem[] = [];\n const rightData = new Array(selfTargetKeys.value.length);\n props.dataSource.forEach((data) => {\n const keyIndex = selfTargetKeys.value.indexOf(data.key);\n if (!props.removeSource) {\n leftData.push({\n ...data,\n disabled: data.disabled || keyIndex !== -1\n });\n if (keyIndex !== -1) {\n rightData[keyIndex] = { ...data, disabled: data.disabled || false };\n }\n } else if (keyIndex !== -1) {\n rightData[keyIndex] = data;\n } else {\n leftData.push(data);\n }\n });\n return {\n leftData,\n rightData: rightData.filter((x) => !!x)\n };\n });\n\n // watch dataSource update selfTargetKeys and selfSelectedKeys\n watch(\n () => props.dataSource,\n (nextDataSource) => {\n selfTargetKeys.value = nextDataSource.filter((nd) => selfTargetKeys.value.includes(nd.key)).map((nd) => nd.key);\n const nextSelectedKeys = props.selectedKeys || selfSelectedKeys.value;\n selfSelectedKeys.value = nextSelectedKeys.filter((sk) => nextDataSource.map((nd) => nd.key).includes(sk));\n }\n );\n\n // watch and computed source selectedKeys and target selectedKeys\n watch(\n () => props.selectedKeys,\n (nextSelectedKeys) => {\n selfSelectedKeys.value = nextSelectedKeys || [];\n }\n );\n\n const separatedKeys = computed(() => {\n return {\n sourceSelectedKeys: selfSelectedKeys.value.filter((k) => !selfTargetKeys.value.includes(k)),\n targetSelectedKeys: selfSelectedKeys.value.filter((k) => selfTargetKeys.value.includes(k))\n };\n });\n\n // provide combine solt and props renderItem method\n const itemRender = computed(() => {\n if (slots.renderItem) {\n return slots.renderItem;\n }\n return ({ item }: { item: TransferDataItem }) => props.renderItem(item);\n });\n provide('renderItem', itemRender.value);\n\n /**\n * @param {string[]} sourceSelectedKeys\n * @param {string[]} targetSelectedKeys\n * @return {void}\n * @description update selected keys\n */\n const updateSelectKeys = (sourceSelectedKeys: string[], targetSelectedKeys: string[]) => {\n // no selectedKeys props, change selfSelectedKeys\n if (!props.selectedKeys) {\n selfSelectedKeys.value = [...sourceSelectedKeys, ...targetSelectedKeys];\n }\n emit('select-change', sourceSelectedKeys, targetSelectedKeys);\n };\n\n /**\n * @param {string} itemKey item key\n * @param {boolean} checked next checked value\n * @param {string} side left or right\n * @return {void}\n * @description select single item\n */\n const handleSelect = (itemKey: string, checked: boolean, side: TransferSide) => {\n const { sourceSelectedKeys, targetSelectedKeys } = separatedKeys.value;\n if (side === 'left') {\n const changedKeys = changeKeys(sourceSelectedKeys, itemKey, checked);\n updateSelectKeys(changedKeys, targetSelectedKeys);\n }\n\n if (side === 'right') {\n const changedKeys = changeKeys(targetSelectedKeys, itemKey, checked);\n updateSelectKeys(sourceSelectedKeys, changedKeys);\n }\n };\n\n /**\n * @param {string[]} nextCheckedKeys next checked keys\n * @param {string} side left or right\n * @return {void}\n * @description click checkAll method: change to all or []\n */\n const handleSelectAll = (nextCheckedKeys: string[], side: TransferSide) => {\n const { sourceSelectedKeys, targetSelectedKeys } = separatedKeys.value;\n if (side === 'left') {\n updateSelectKeys(nextCheckedKeys, targetSelectedKeys);\n }\n\n if (side === 'right') {\n updateSelectKeys(sourceSelectedKeys, nextCheckedKeys);\n }\n };\n\n /**\n * @param {string[]} nextTargetKeys next target keys\n * @param {string} direction move direction: arrow direction\n * @param {string[]} moveKeys moved keys\n * @return {void}\n * @description update target keys\n */\n const updateTargetKeys = (nextTargetKeys: string[], direction: TransferSide, moveKeys: string[]) => {\n // no targetKeys props, change selfTargetKeys\n if (!props.targetKeys) {\n selfTargetKeys.value = nextTargetKeys;\n }\n emit('update:targetKeys', nextTargetKeys);\n emit('change', nextTargetKeys, direction, moveKeys);\n if (onFieldChange) onFieldChange(nextTargetKeys);\n };\n\n /**\n * @param {string} direction move direction: arrow direction\n * @return {void}\n * @description click arrow button method: change target keys\n */\n const handleChange = (direction: TransferSide) => {\n const { sourceSelectedKeys, targetSelectedKeys } = separatedKeys.value;\n if (direction === 'right') {\n const nextTargetKeys = props.dataSource.filter((d) => [...selfTargetKeys.value, ...sourceSelectedKeys].includes(d.key)).map((d) => d.key);\n updateTargetKeys(nextTargetKeys, direction, sourceSelectedKeys);\n updateSelectKeys([], targetSelectedKeys);\n }\n if (direction === 'left') {\n const nextTargetKeys = selfTargetKeys.value.filter((k) => !targetSelectedKeys.includes(k));\n updateTargetKeys(nextTargetKeys, direction, targetSelectedKeys);\n updateSelectKeys(sourceSelectedKeys, []);\n }\n };\n\n /**\n * @param {string} side left or right side\n * @param {string} value input value\n * @return {void}\n * @description type search value call back\n */\n const handleSearchChange = (side: TransferSide, value: string) => {\n emit('search', side, value);\n };\n\n /**\n * @param {*}\n * @return {*}\n * @description make search value empty\n */\n const clrearTransferSearchValue = () => {\n transferRefs.value.forEach((transferRef) => {\n if (transferRef) {\n transferRef.clearSearchValue();\n }\n });\n };\n\n provide(FormItemKey, {\n onFieldBlur: () => {},\n onFieldChange: () => {}\n });\n\n return {\n transferRefs,\n getTransferRef,\n thisLocale,\n prefixCls,\n separatedData,\n separatedKeys,\n computedDirection,\n footer: slots.footer,\n renderList: slots.children,\n leftSearch: slots.leftSearch,\n rightSearch: slots.rightSearch,\n handleSelect,\n handleSelectAll,\n handleChange,\n handleSearchChange,\n clrearTransferSearchValue\n };\n }\n});\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_createVNode"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Transfer.mjs","sources":["../../../../src/components/Transfer/Transfer.vue"],"sourcesContent":["<template>\n <div :class=\"[prefixCls, { [`${prefixCls}-custom`]: !!renderList, [`${prefixCls}-rtl`]: computedDirection === 'rtl' }]\">\n <TransferList\n :ref=\"getTransferRef(0)\"\n side=\"left\"\n :prefix-cls=\"prefixCls\"\n :list-style=\"listStyle\"\n :title-text=\"titles[0]\"\n :data-source=\"separatedData.leftData\"\n :checked-keys=\"separatedKeys.sourceSelectedKeys\"\n :disabled=\"disabled\"\n :show-select-all=\"showSelectAll\"\n :filter-method=\"filterMethod\"\n :show-search=\"showSearch\"\n :search=\"leftSearch\"\n :footer=\"footer\"\n :render-list=\"renderList\"\n :locale=\"thisLocale\"\n :loading=\"loading\"\n @item-select=\"handleSelect\"\n @check-all=\"handleSelectAll\"\n @search=\"handleSearchChange\"\n />\n <Operation\n :prefix-cls=\"prefixCls\"\n :to-right-disabled=\"toRightDisabled || separatedKeys.sourceSelectedKeys.length === 0\"\n :to-left-disabled=\"toLeftDisabled || separatedKeys.targetSelectedKeys.length === 0\"\n :disabled=\"disabled\"\n :loading=\"loading\"\n :operations=\"operations\"\n @on-click=\"handleChange\"\n />\n <TransferList\n :ref=\"getTransferRef(1)\"\n side=\"right\"\n :prefix-cls=\"prefixCls\"\n :list-style=\"listStyle\"\n :title-text=\"titles[1]\"\n :data-source=\"separatedData.rightData\"\n :checked-keys=\"separatedKeys.targetSelectedKeys\"\n :disabled=\"disabled\"\n :show-select-all=\"showSelectAll\"\n :filter-method=\"filterMethod\"\n :show-search=\"showSearch\"\n :search=\"rightSearch\"\n :footer=\"footer\"\n :render-list=\"renderList\"\n :locale=\"thisLocale\"\n :loading=\"loading\"\n @item-select=\"handleSelect\"\n @check-all=\"handleSelectAll\"\n @search=\"handleSearchChange\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, watch, computed, provide, ref, inject } from 'vue';\nimport TransferList from './TransferList.vue';\nimport Operation from './Operation.vue';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport { changeKeys } from './util';\nimport { transferEmits, transferProps, type TransferDataItem, type TransferSide } from './Transfer.type';\n\nimport type { FormItemContext } from '../Form/Form.type';\nimport { FormItemKey } from '../Form';\n\nexport const DataItem = {\n key: { type: String, isRequired: true },\n title: { type: String, isRequired: true },\n description: { type: String },\n disabled: { type: Boolean, default: undefined as undefined }\n};\n\ndeclare type TransferListInstance = InstanceType<typeof TransferList>;\n\nexport default defineComponent({\n name: 'UTransfer',\n components: { TransferList, Operation },\n props: transferProps,\n emits: transferEmits,\n setup(props, { emit, slots }) {\n const { prefixCls, config: globalConfig } = useGlobalConfig('transfer');\n\n const { onFieldChange } = inject<FormItemContext>(FormItemKey, {} as FormItemContext);\n\n const transferRefs = ref<TransferListInstance[]>([]);\n\n const getTransferRef = (i: number) => {\n return (ins: any) => {\n transferRefs.value[i] = ins;\n };\n };\n\n const thisLocale = computed(() => {\n return props.locale || globalConfig.locale.transfer;\n });\n\n const computedDirection = computed(() => {\n return props.direction || globalConfig.direction || 'ltr';\n });\n\n const selfTargetKeys = ref(props.targetKeys || []);\n const selfSelectedKeys = ref(props.selectedKeys || []);\n\n watch(\n () => props.targetKeys,\n (nextTargetKeys) => {\n selfTargetKeys.value = nextTargetKeys || [];\n }\n );\n\n // compute left dataSource and right dataSource\n const separatedData = computed(() => {\n const leftData: TransferDataItem[] = [];\n const rightData = new Array(selfTargetKeys.value.length);\n props.dataSource.forEach((data) => {\n const keyIndex = selfTargetKeys.value.indexOf(data.key);\n if (!props.removeSource) {\n leftData.push({\n ...data,\n disabled: data.disabled || keyIndex !== -1\n });\n if (keyIndex !== -1) {\n rightData[keyIndex] = { ...data, disabled: data.disabled || false };\n }\n } else if (keyIndex !== -1) {\n rightData[keyIndex] = data;\n } else {\n leftData.push(data);\n }\n });\n return {\n leftData,\n rightData: rightData.filter((x) => !!x)\n };\n });\n\n // watch dataSource update selfTargetKeys and selfSelectedKeys\n watch(\n () => props.dataSource,\n (nextDataSource) => {\n selfTargetKeys.value = nextDataSource.filter((nd) => selfTargetKeys.value.includes(nd.key)).map((nd) => nd.key);\n const nextSelectedKeys = props.selectedKeys || selfSelectedKeys.value;\n selfSelectedKeys.value = nextSelectedKeys.filter((sk) => nextDataSource.map((nd) => nd.key).includes(sk));\n }\n );\n\n // watch and computed source selectedKeys and target selectedKeys\n watch(\n () => props.selectedKeys,\n (nextSelectedKeys) => {\n selfSelectedKeys.value = nextSelectedKeys || [];\n }\n );\n\n const separatedKeys = computed(() => {\n return {\n sourceSelectedKeys: selfSelectedKeys.value.filter((k) => !selfTargetKeys.value.includes(k)),\n targetSelectedKeys: selfSelectedKeys.value.filter((k) => selfTargetKeys.value.includes(k))\n };\n });\n\n // provide combine solt and props renderItem method\n const itemRender = computed(() => {\n if (slots.renderItem) {\n return slots.renderItem;\n }\n return ({ item }: { item: TransferDataItem }) => props.renderItem(item);\n });\n provide('renderItem', itemRender.value);\n\n /**\n * @param {string[]} sourceSelectedKeys\n * @param {string[]} targetSelectedKeys\n * @return {void}\n * @description update selected keys\n */\n const updateSelectKeys = (sourceSelectedKeys: string[], targetSelectedKeys: string[]) => {\n // no selectedKeys props, change selfSelectedKeys\n if (!props.selectedKeys) {\n selfSelectedKeys.value = [...sourceSelectedKeys, ...targetSelectedKeys];\n }\n emit('select-change', sourceSelectedKeys, targetSelectedKeys);\n };\n\n /**\n * @param {string} itemKey item key\n * @param {boolean} checked next checked value\n * @param {string} side left or right\n * @return {void}\n * @description select single item\n */\n const handleSelect = (itemKey: string, checked: boolean, side: TransferSide) => {\n const { sourceSelectedKeys, targetSelectedKeys } = separatedKeys.value;\n if (side === 'left') {\n const changedKeys = changeKeys(sourceSelectedKeys, itemKey, checked);\n updateSelectKeys(changedKeys, targetSelectedKeys);\n }\n\n if (side === 'right') {\n const changedKeys = changeKeys(targetSelectedKeys, itemKey, checked);\n updateSelectKeys(sourceSelectedKeys, changedKeys);\n }\n };\n\n /**\n * @param {string[]} nextCheckedKeys next checked keys\n * @param {string} side left or right\n * @return {void}\n * @description click checkAll method: change to all or []\n */\n const handleSelectAll = (nextCheckedKeys: string[], side: TransferSide) => {\n const { sourceSelectedKeys, targetSelectedKeys } = separatedKeys.value;\n if (side === 'left') {\n updateSelectKeys(nextCheckedKeys, targetSelectedKeys);\n }\n\n if (side === 'right') {\n updateSelectKeys(sourceSelectedKeys, nextCheckedKeys);\n }\n };\n\n /**\n * @param {string[]} nextTargetKeys next target keys\n * @param {string} direction move direction: arrow direction\n * @param {string[]} moveKeys moved keys\n * @return {void}\n * @description update target keys\n */\n const updateTargetKeys = (nextTargetKeys: string[], direction: TransferSide, moveKeys: string[]) => {\n // no targetKeys props, change selfTargetKeys\n if (!props.targetKeys) {\n selfTargetKeys.value = nextTargetKeys;\n }\n emit('update:targetKeys', nextTargetKeys);\n emit('change', nextTargetKeys, direction, moveKeys);\n if (onFieldChange) onFieldChange(nextTargetKeys);\n };\n\n /**\n * @param {string} direction move direction: arrow direction\n * @return {void}\n * @description click arrow button method: change target keys\n */\n const handleChange = (direction: TransferSide) => {\n const { sourceSelectedKeys, targetSelectedKeys } = separatedKeys.value;\n if (direction === 'right') {\n const nextTargetKeys = props.dataSource.filter((d) => [...selfTargetKeys.value, ...sourceSelectedKeys].includes(d.key)).map((d) => d.key);\n updateTargetKeys(nextTargetKeys, direction, sourceSelectedKeys);\n updateSelectKeys([], targetSelectedKeys);\n }\n if (direction === 'left') {\n const nextTargetKeys = selfTargetKeys.value.filter((k) => !targetSelectedKeys.includes(k));\n updateTargetKeys(nextTargetKeys, direction, targetSelectedKeys);\n updateSelectKeys(sourceSelectedKeys, []);\n }\n };\n\n /**\n * @param {string} side left or right side\n * @param {string} value input value\n * @return {void}\n * @description type search value call back\n */\n const handleSearchChange = (side: TransferSide, value: string) => {\n emit('search', side, value);\n };\n\n /**\n * @param {*}\n * @return {*}\n * @description make search value empty\n */\n const clrearTransferSearchValue = () => {\n transferRefs.value.forEach((transferRef) => {\n if (transferRef) {\n transferRef.clearSearchValue();\n }\n });\n };\n\n provide(FormItemKey, {\n onFieldBlur: () => {},\n onFieldChange: () => {}\n });\n\n return {\n transferRefs,\n getTransferRef,\n thisLocale,\n prefixCls,\n separatedData,\n separatedKeys,\n computedDirection,\n footer: slots.footer,\n renderList: slots.children,\n leftSearch: slots.leftSearch,\n rightSearch: slots.rightSearch,\n handleSelect,\n handleSelectAll,\n handleChange,\n handleSearchChange,\n clrearTransferSearchValue\n };\n }\n});\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_createVNode"],"mappings":"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"}
|
|
@@ -79,11 +79,6 @@ export declare const transferProps: {
|
|
|
79
79
|
type: BooleanConstructor;
|
|
80
80
|
default: boolean;
|
|
81
81
|
};
|
|
82
|
-
color: {
|
|
83
|
-
type: PropType<"primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint">;
|
|
84
|
-
default: "primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint";
|
|
85
|
-
validator: (val: "primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint") => boolean;
|
|
86
|
-
};
|
|
87
82
|
direction: {
|
|
88
83
|
type: PropType<"ltr" | "rtl">;
|
|
89
84
|
};
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import { isArrayOf
|
|
2
|
-
import '../../utils/index.mjs';
|
|
3
|
-
import { colorType } from '../../utils/globalType.mjs';
|
|
1
|
+
import { isArrayOf } from '../../utils/propsValidators.mjs';
|
|
4
2
|
|
|
5
3
|
const transferSide = ["left", "right"];
|
|
6
4
|
const transferProps = {
|
|
@@ -69,11 +67,6 @@ const transferProps = {
|
|
|
69
67
|
type: Boolean,
|
|
70
68
|
default: false
|
|
71
69
|
},
|
|
72
|
-
color: {
|
|
73
|
-
type: String,
|
|
74
|
-
default: void 0,
|
|
75
|
-
validator: oneOf(colorType)
|
|
76
|
-
},
|
|
77
70
|
direction: {
|
|
78
71
|
type: String
|
|
79
72
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Transfer.type.mjs","sources":["../../../../src/components/Transfer/Transfer.type.ts"],"sourcesContent":["import type { CSSProperties, ExtractPropTypes, PropType, VNodeChild } from 'vue';\nimport { isArrayOf
|
|
1
|
+
{"version":3,"file":"Transfer.type.mjs","sources":["../../../../src/components/Transfer/Transfer.type.ts"],"sourcesContent":["import type { CSSProperties, ExtractPropTypes, PropType, VNodeChild } from 'vue';\nimport { isArrayOf } from '../../utils/propsValidators';\nimport type { TransferLocal } from '../locale/default';\n\nexport interface TransferDataItem {\n key: string;\n title: string;\n disabled?: boolean;\n [key: string]: any;\n}\n\nexport type TransferFilterMethod = (inputValue: string, item: TransferDataItem, searchKey?: string) => boolean;\nexport type TransferRenderItem = (item: TransferDataItem) => VNodeChild;\nexport type InjectRenderItem = ({ item }: { item: TransferDataItem }) => VNodeChild;\n\nexport const transferSide = ['left', 'right'] as const;\nexport type TransferSide = (typeof transferSide)[number];\n\nexport const transferProps = {\n dataSource: {\n type: Array as PropType<TransferDataItem[]>,\n default: () => [] as TransferDataItem[]\n },\n targetKeys: {\n type: Array as PropType<string[]>,\n validator: isArrayOf(String)\n },\n showSelectAll: {\n type: Boolean,\n default: true\n },\n selectedKeys: {\n type: Array as PropType<string[]>,\n validator: isArrayOf(String)\n },\n titles: {\n type: Array as PropType<string[]>,\n default: () => ['', ''],\n validator: isArrayOf(String)\n },\n disabled: {\n type: Boolean,\n default: false\n },\n toRightDisabled: {\n type: Boolean,\n default: false\n },\n toLeftDisabled: {\n type: Boolean,\n default: false\n },\n renderItem: {\n type: Function as PropType<TransferRenderItem>,\n default: (i: TransferDataItem) => i.title\n },\n showSearch: {\n type: Boolean,\n default: false\n },\n filterMethod: {\n type: Function as PropType<TransferFilterMethod>,\n default: (inputValue: string, item: TransferDataItem, searchKey = 'title') => item[searchKey].toLowerCase().indexOf(inputValue.toLowerCase()) > -1\n },\n listStyle: {\n type: Object as PropType<CSSProperties>,\n default: () => ({})\n },\n operations: {\n type: Array as PropType<string[]>,\n default: () => ['', ''],\n validator: isArrayOf(String)\n },\n locale: {\n type: Object as PropType<TransferLocal>\n },\n removeSource: {\n type: Boolean,\n default: true\n },\n loading: {\n type: Boolean,\n default: false\n },\n\n direction: {\n type: String as PropType<'ltr' | 'rtl'>\n }\n};\nexport type TransferProps = ExtractPropTypes<typeof transferProps>;\n\nexport const transferEmits = {\n 'select-change': (source: string[], target: string[]) => Array.isArray(source) && Array.isArray(target),\n change: (target: string[], side: TransferSide, moveKeys: string[]) =>\n Array.isArray(moveKeys) && Array.isArray(target) && transferSide.includes(side),\n search: (side: TransferSide, value: string) => transferSide.includes(side) && typeof value === 'string',\n 'update:targetKeys': (target: string[]) => Array.isArray(target)\n};\n"],"names":[],"mappings":";;MAea,eAAe,CAAC,QAAQ,OAAO;MAG/B,gBAAgB;AAAA,EAC3B,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS,MAAM;AAAC;AAClB,EACA,YAAY;AAAA,IACV,MAAM;AAAA,IACN,WAAW,UAAU,MAAM;AAAA;AAC7B,EACA,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,WAAW,UAAU,MAAM;AAAA;AAC7B,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,SAAS,MAAM,CAAC,IAAI,EAAE;AAAA,IACtB,WAAW,UAAU,MAAM;AAAA;AAC7B,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,iBAAiB;AAAA,IACf,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,gBAAgB;AAAA,IACd,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS,CAAC,MAAwB,EAAE;AAAA;AACtC,EACA,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,SAAS,CAAC,YAAoB,MAAwB,YAAY,YAAY,KAAK,WAAW,cAAc,QAAQ,WAAW,aAAa,IAAI;AAAA;AAClJ,EACA,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS,OAAO;AAAC;AACnB,EACA,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS,MAAM,CAAC,IAAI,EAAE;AAAA,IACtB,WAAW,UAAU,MAAM;AAAA;AAC7B,EACA,QAAQ;AAAA,IACN,MAAM;AAAA;AACR,EACA,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EACA,SAAS;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA;AACX,EAEA,WAAW;AAAA,IACT,MAAM;AAAA;AAEV;MAGa,gBAAgB;AAAA,EAC3B,iBAAiB,CAAC,QAAkB,WAAqB,MAAM,QAAQ,MAAM,KAAK,MAAM,QAAQ,MAAM;AAAA,EACtG,QAAQ,CAAC,QAAkB,MAAoB,aAC7C,MAAM,QAAQ,QAAQ,KAAK,MAAM,QAAQ,MAAM,KAAK,aAAa,SAAS,IAAI;AAAA,EAChF,QAAQ,CAAC,MAAoB,UAAkB,aAAa,SAAS,IAAI,KAAK,OAAO,UAAU;AAAA,EAC/F,qBAAqB,CAAC,WAAqB,MAAM,QAAQ,MAAM;AACjE;;;;"}
|
|
@@ -82,11 +82,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
82
82
|
type: BooleanConstructor;
|
|
83
83
|
default: boolean;
|
|
84
84
|
};
|
|
85
|
-
color: {
|
|
86
|
-
type: import("vue").PropType<"primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint">;
|
|
87
|
-
default: "primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint";
|
|
88
|
-
validator: (val: "primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint") => boolean;
|
|
89
|
-
};
|
|
90
85
|
direction: {
|
|
91
86
|
type: import("vue").PropType<"ltr" | "rtl">;
|
|
92
87
|
};
|
|
@@ -226,6 +221,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
226
221
|
};
|
|
227
222
|
}>> & Readonly<{
|
|
228
223
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
224
|
+
onClick?: (ev: Event) => any;
|
|
229
225
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
230
226
|
}>, {
|
|
231
227
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -242,6 +238,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
242
238
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
243
239
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
244
240
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
241
|
+
click: (ev: Event) => boolean;
|
|
245
242
|
}, import("vue").PublicProps, {
|
|
246
243
|
name: string;
|
|
247
244
|
disabled: boolean;
|
|
@@ -422,6 +419,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
422
419
|
};
|
|
423
420
|
}>> & Readonly<{
|
|
424
421
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
422
|
+
onClick?: (ev: Event) => any;
|
|
425
423
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
426
424
|
}>, {
|
|
427
425
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -478,6 +476,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
478
476
|
};
|
|
479
477
|
}>> & Readonly<{
|
|
480
478
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
479
|
+
onClick?: (ev: Event) => any;
|
|
481
480
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
482
481
|
}>, {
|
|
483
482
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -494,6 +493,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
494
493
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
495
494
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
496
495
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
496
|
+
click: (ev: Event) => boolean;
|
|
497
497
|
}, string, {
|
|
498
498
|
name: string;
|
|
499
499
|
disabled: boolean;
|
|
@@ -920,6 +920,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
920
920
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
921
921
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
922
922
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
923
|
+
click: (ev: Event) => boolean;
|
|
923
924
|
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
924
925
|
modelValue: {
|
|
925
926
|
type: (BooleanConstructor | StringConstructor | NumberConstructor)[];
|
|
@@ -951,6 +952,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
951
952
|
};
|
|
952
953
|
}>> & Readonly<{
|
|
953
954
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
955
|
+
onClick?: (ev: Event) => any;
|
|
954
956
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
955
957
|
}>, {
|
|
956
958
|
name: string;
|
|
@@ -1176,6 +1178,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
1176
1178
|
};
|
|
1177
1179
|
}>> & Readonly<{
|
|
1178
1180
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
1181
|
+
onClick?: (ev: Event) => any;
|
|
1179
1182
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
1180
1183
|
}>, {
|
|
1181
1184
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -1192,6 +1195,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
1192
1195
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
1193
1196
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
1194
1197
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
1198
|
+
click: (ev: Event) => boolean;
|
|
1195
1199
|
}, import("vue").PublicProps, {
|
|
1196
1200
|
name: string;
|
|
1197
1201
|
disabled: boolean;
|
|
@@ -1372,6 +1376,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
1372
1376
|
};
|
|
1373
1377
|
}>> & Readonly<{
|
|
1374
1378
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
1379
|
+
onClick?: (ev: Event) => any;
|
|
1375
1380
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
1376
1381
|
}>, {
|
|
1377
1382
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -1428,6 +1433,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
1428
1433
|
};
|
|
1429
1434
|
}>> & Readonly<{
|
|
1430
1435
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
1436
|
+
onClick?: (ev: Event) => any;
|
|
1431
1437
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
1432
1438
|
}>, {
|
|
1433
1439
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -1444,6 +1450,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
1444
1450
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
1445
1451
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
1446
1452
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
1453
|
+
click: (ev: Event) => boolean;
|
|
1447
1454
|
}, string, {
|
|
1448
1455
|
name: string;
|
|
1449
1456
|
disabled: boolean;
|
|
@@ -1870,6 +1877,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
1870
1877
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
1871
1878
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
1872
1879
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
1880
|
+
click: (ev: Event) => boolean;
|
|
1873
1881
|
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
1874
1882
|
modelValue: {
|
|
1875
1883
|
type: (BooleanConstructor | StringConstructor | NumberConstructor)[];
|
|
@@ -1901,6 +1909,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
1901
1909
|
};
|
|
1902
1910
|
}>> & Readonly<{
|
|
1903
1911
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
1912
|
+
onClick?: (ev: Event) => any;
|
|
1904
1913
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
1905
1914
|
}>, {
|
|
1906
1915
|
name: string;
|
|
@@ -3281,6 +3290,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
3281
3290
|
};
|
|
3282
3291
|
}>> & Readonly<{
|
|
3283
3292
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
3293
|
+
onClick?: (ev: Event) => any;
|
|
3284
3294
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
3285
3295
|
}>, {
|
|
3286
3296
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -3297,6 +3307,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
3297
3307
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
3298
3308
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
3299
3309
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
3310
|
+
click: (ev: Event) => boolean;
|
|
3300
3311
|
}, import("vue").PublicProps, {
|
|
3301
3312
|
name: string;
|
|
3302
3313
|
disabled: boolean;
|
|
@@ -3477,6 +3488,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
3477
3488
|
};
|
|
3478
3489
|
}>> & Readonly<{
|
|
3479
3490
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
3491
|
+
onClick?: (ev: Event) => any;
|
|
3480
3492
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
3481
3493
|
}>, {
|
|
3482
3494
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -3533,6 +3545,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
3533
3545
|
};
|
|
3534
3546
|
}>> & Readonly<{
|
|
3535
3547
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
3548
|
+
onClick?: (ev: Event) => any;
|
|
3536
3549
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
3537
3550
|
}>, {
|
|
3538
3551
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -3549,6 +3562,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
3549
3562
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
3550
3563
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
3551
3564
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
3565
|
+
click: (ev: Event) => boolean;
|
|
3552
3566
|
}, string, {
|
|
3553
3567
|
name: string;
|
|
3554
3568
|
disabled: boolean;
|
|
@@ -3975,6 +3989,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
3975
3989
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
3976
3990
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
3977
3991
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
3992
|
+
click: (ev: Event) => boolean;
|
|
3978
3993
|
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
3979
3994
|
modelValue: {
|
|
3980
3995
|
type: (BooleanConstructor | StringConstructor | NumberConstructor)[];
|
|
@@ -4006,6 +4021,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
4006
4021
|
};
|
|
4007
4022
|
}>> & Readonly<{
|
|
4008
4023
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
4024
|
+
onClick?: (ev: Event) => any;
|
|
4009
4025
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
4010
4026
|
}>, {
|
|
4011
4027
|
name: string;
|
|
@@ -4231,6 +4247,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
4231
4247
|
};
|
|
4232
4248
|
}>> & Readonly<{
|
|
4233
4249
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
4250
|
+
onClick?: (ev: Event) => any;
|
|
4234
4251
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
4235
4252
|
}>, {
|
|
4236
4253
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -4247,6 +4264,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
4247
4264
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
4248
4265
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
4249
4266
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
4267
|
+
click: (ev: Event) => boolean;
|
|
4250
4268
|
}, import("vue").PublicProps, {
|
|
4251
4269
|
name: string;
|
|
4252
4270
|
disabled: boolean;
|
|
@@ -4427,6 +4445,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
4427
4445
|
};
|
|
4428
4446
|
}>> & Readonly<{
|
|
4429
4447
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
4448
|
+
onClick?: (ev: Event) => any;
|
|
4430
4449
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
4431
4450
|
}>, {
|
|
4432
4451
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -4483,6 +4502,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
4483
4502
|
};
|
|
4484
4503
|
}>> & Readonly<{
|
|
4485
4504
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
4505
|
+
onClick?: (ev: Event) => any;
|
|
4486
4506
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
4487
4507
|
}>, {
|
|
4488
4508
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -4499,6 +4519,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
4499
4519
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
4500
4520
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
4501
4521
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
4522
|
+
click: (ev: Event) => boolean;
|
|
4502
4523
|
}, string, {
|
|
4503
4524
|
name: string;
|
|
4504
4525
|
disabled: boolean;
|
|
@@ -4925,6 +4946,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
4925
4946
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
4926
4947
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
4927
4948
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
4949
|
+
click: (ev: Event) => boolean;
|
|
4928
4950
|
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
4929
4951
|
modelValue: {
|
|
4930
4952
|
type: (BooleanConstructor | StringConstructor | NumberConstructor)[];
|
|
@@ -4956,6 +4978,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
4956
4978
|
};
|
|
4957
4979
|
}>> & Readonly<{
|
|
4958
4980
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
4981
|
+
onClick?: (ev: Event) => any;
|
|
4959
4982
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
4960
4983
|
}>, {
|
|
4961
4984
|
name: string;
|
|
@@ -6294,11 +6317,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
6294
6317
|
type: BooleanConstructor;
|
|
6295
6318
|
default: boolean;
|
|
6296
6319
|
};
|
|
6297
|
-
color: {
|
|
6298
|
-
type: import("vue").PropType<"primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint">;
|
|
6299
|
-
default: "primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint";
|
|
6300
|
-
validator: (val: "primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint") => boolean;
|
|
6301
|
-
};
|
|
6302
6320
|
direction: {
|
|
6303
6321
|
type: import("vue").PropType<"ltr" | "rtl">;
|
|
6304
6322
|
};
|
|
@@ -6308,7 +6326,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
6308
6326
|
"onSelect-change"?: (source: string[], target: string[]) => any;
|
|
6309
6327
|
"onUpdate:targetKeys"?: (target: string[]) => any;
|
|
6310
6328
|
}>, {
|
|
6311
|
-
color: "primary" | "blue" | "red" | "orange" | "green" | "iris" | "cyan" | "yellow" | "amber" | "purple" | "lime" | "sky" | "violet" | "pink" | "mint";
|
|
6312
6329
|
loading: boolean;
|
|
6313
6330
|
disabled: boolean;
|
|
6314
6331
|
filterMethod: import("./Transfer.type").TransferFilterMethod;
|
|
@@ -6520,6 +6537,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
6520
6537
|
};
|
|
6521
6538
|
}>> & Readonly<{
|
|
6522
6539
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
6540
|
+
onClick?: (ev: Event) => any;
|
|
6523
6541
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
6524
6542
|
}>, {
|
|
6525
6543
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -6536,6 +6554,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
6536
6554
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
6537
6555
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
6538
6556
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
6557
|
+
click: (ev: Event) => boolean;
|
|
6539
6558
|
}, import("vue").PublicProps, {
|
|
6540
6559
|
name: string;
|
|
6541
6560
|
disabled: boolean;
|
|
@@ -6716,6 +6735,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
6716
6735
|
};
|
|
6717
6736
|
}>> & Readonly<{
|
|
6718
6737
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
6738
|
+
onClick?: (ev: Event) => any;
|
|
6719
6739
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
6720
6740
|
}>, {
|
|
6721
6741
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -6772,6 +6792,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
6772
6792
|
};
|
|
6773
6793
|
}>> & Readonly<{
|
|
6774
6794
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
6795
|
+
onClick?: (ev: Event) => any;
|
|
6775
6796
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
6776
6797
|
}>, {
|
|
6777
6798
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -6788,6 +6809,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
6788
6809
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
6789
6810
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
6790
6811
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
6812
|
+
click: (ev: Event) => boolean;
|
|
6791
6813
|
}, string, {
|
|
6792
6814
|
name: string;
|
|
6793
6815
|
disabled: boolean;
|
|
@@ -7214,6 +7236,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
7214
7236
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
7215
7237
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
7216
7238
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
7239
|
+
click: (ev: Event) => boolean;
|
|
7217
7240
|
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
7218
7241
|
modelValue: {
|
|
7219
7242
|
type: (BooleanConstructor | StringConstructor | NumberConstructor)[];
|
|
@@ -7245,6 +7268,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
7245
7268
|
};
|
|
7246
7269
|
}>> & Readonly<{
|
|
7247
7270
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
7271
|
+
onClick?: (ev: Event) => any;
|
|
7248
7272
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
7249
7273
|
}>, {
|
|
7250
7274
|
name: string;
|
|
@@ -7470,6 +7494,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
7470
7494
|
};
|
|
7471
7495
|
}>> & Readonly<{
|
|
7472
7496
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
7497
|
+
onClick?: (ev: Event) => any;
|
|
7473
7498
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
7474
7499
|
}>, {
|
|
7475
7500
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -7486,6 +7511,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
7486
7511
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
7487
7512
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
7488
7513
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
7514
|
+
click: (ev: Event) => boolean;
|
|
7489
7515
|
}, import("vue").PublicProps, {
|
|
7490
7516
|
name: string;
|
|
7491
7517
|
disabled: boolean;
|
|
@@ -7666,6 +7692,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
7666
7692
|
};
|
|
7667
7693
|
}>> & Readonly<{
|
|
7668
7694
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
7695
|
+
onClick?: (ev: Event) => any;
|
|
7669
7696
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
7670
7697
|
}>, {
|
|
7671
7698
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -7722,6 +7749,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
7722
7749
|
};
|
|
7723
7750
|
}>> & Readonly<{
|
|
7724
7751
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
7752
|
+
onClick?: (ev: Event) => any;
|
|
7725
7753
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
7726
7754
|
}>, {
|
|
7727
7755
|
prefixCls: import("vue").ComputedRef<string>;
|
|
@@ -7738,6 +7766,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
7738
7766
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
7739
7767
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
7740
7768
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
7769
|
+
click: (ev: Event) => boolean;
|
|
7741
7770
|
}, string, {
|
|
7742
7771
|
name: string;
|
|
7743
7772
|
disabled: boolean;
|
|
@@ -8164,6 +8193,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
8164
8193
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
8165
8194
|
'update:modelValue': (val: import("..").CheckboxValueType) => boolean;
|
|
8166
8195
|
change: (val: import("..").CheckboxValueType, ev: Event) => boolean;
|
|
8196
|
+
click: (ev: Event) => boolean;
|
|
8167
8197
|
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
8168
8198
|
modelValue: {
|
|
8169
8199
|
type: (BooleanConstructor | StringConstructor | NumberConstructor)[];
|
|
@@ -8195,6 +8225,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
8195
8225
|
};
|
|
8196
8226
|
}>> & Readonly<{
|
|
8197
8227
|
onChange?: (val: import("..").CheckboxValueType, ev: Event) => any;
|
|
8228
|
+
onClick?: (ev: Event) => any;
|
|
8198
8229
|
"onUpdate:modelValue"?: (val: import("..").CheckboxValueType) => any;
|
|
8199
8230
|
}>, {
|
|
8200
8231
|
name: string;
|
|
@@ -211,16 +211,20 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
211
211
|
createElementVNode("div", {
|
|
212
212
|
class: normalizeClass(`${_ctx.prefixCls}-list-header`)
|
|
213
213
|
}, [
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
214
|
+
createElementVNode("div", {
|
|
215
|
+
class: normalizeClass(`${_ctx.prefixCls}-list-header-select`)
|
|
216
|
+
}, [
|
|
217
|
+
_ctx.showSelectAll ? (openBlock(), createBlock(_component_UCheckbox, {
|
|
218
|
+
key: 0,
|
|
219
|
+
indeterminate: _ctx.indeterminate,
|
|
220
|
+
"model-value": _ctx.checkedAll,
|
|
221
|
+
disabled: _ctx.disabled,
|
|
222
|
+
onClick: _cache[0] || (_cache[0] = withModifiers(($event) => _ctx.handleCheckAllChange(), ["prevent"]))
|
|
223
|
+
}, null, 8, ["indeterminate", "model-value", "disabled"])) : createCommentVNode("v-if", true),
|
|
224
|
+
createElementVNode("span", {
|
|
225
|
+
class: normalizeClass(`${_ctx.prefixCls}-list-header-selected`)
|
|
226
|
+
}, toDisplayString(!_ctx.checkedKeys.length ? _ctx.filteredData.length : `${_ctx.checkedKeys.length}/${_ctx.filteredData.length}`) + " " + toDisplayString(_ctx.unit), 3)
|
|
227
|
+
], 2),
|
|
224
228
|
createElementVNode("span", {
|
|
225
229
|
class: normalizeClass(`${_ctx.prefixCls}-list-header-title`)
|
|
226
230
|
}, toDisplayString(_ctx.titleText), 3)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TransferList.mjs","sources":["../../../../src/components/Transfer/TransferList.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n `${prefixCls}-list`,\n {\n [`${prefixCls}-list-with-footer`]: footerRender,\n [`${prefixCls}-list-custom`]: listRender\n }\n ]\"\n :style=\"{ ...listStyle }\"\n >\n <div :class=\"`${prefixCls}-list-header`\">\n <UCheckbox\n v-if=\"showSelectAll\"\n :indeterminate=\"indeterminate\"\n :model-value=\"checkedAll\"\n :disabled=\"disabled\"\n @click.prevent=\"handleCheckAllChange()\"\n />\n <span :class=\"`${prefixCls}-list-header-selected`\">\n {{ !checkedKeys.length ? filteredData.length : `${checkedKeys.length}/${filteredData.length}` }}\n {{ unit }}\n </span>\n <span :class=\"`${prefixCls}-list-header-title`\">{{ titleText }}</span>\n </div>\n <div\n :class=\"[\n `${prefixCls}-list-body`,\n {\n [`${prefixCls}-list-body-with-search`]: showSearch,\n [`${prefixCls}-list-body-with-footer`]: footerRender\n }\n ]\"\n >\n <div v-if=\"showSearch || searchRender\" :class=\"`${prefixCls}-list-body-search-wrap`\">\n <Render v-if=\"searchRender\" :render=\"searchRender\" />\n <UInput v-else :model-value=\"inputValue\" :placeholder=\"locale.searchPlaceholder\" clearable search @change=\"handleInputChange\" />\n </div>\n <div v-if=\"filteredData.length\" :class=\"`${prefixCls}-list-body-list-wrap`\">\n <Scrollbar v-if=\"!listRender || (listRender && !listRender())\" style=\"height: 100%\" height=\"100%\">\n <ul :class=\"`${prefixCls}-list-body-content`\">\n <template v-for=\"dataItem in filteredData\" :key=\"dataItem.key\">\n <ListItem\n :prefix-cls=\"`${prefixCls}-list-item`\"\n :data-item=\"dataItem\"\n :checked=\"checkedKeys.includes(dataItem.key)\"\n :disabled=\"disabled\"\n @click=\"handleItemSelect\"\n />\n </template>\n </ul>\n </Scrollbar>\n <div v-else :class=\"`${prefixCls}-list-custom-body`\">\n <Render :render=\"listRender\" />\n </div>\n </div>\n <div v-else :class=\"`${prefixCls}-list-body-not-found`\">\n <RenderEmpty size=\"small\" :text=\"locale.notFoundContent\" />\n </div>\n </div>\n <div v-if=\"footerRender\" :class=\"`${prefixCls}-list-footer`\">\n <Render :render=\"footerRender\" />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { ref, computed, defineComponent } from 'vue';\nimport type { PropType, CSSProperties, Slot } from 'vue';\nimport UCheckbox from '@uxd-ui/components/Checkbox';\nimport UInput, { type InputValueType } from '@uxd-ui/components/Input';\nimport ListItem from './TransferListItem.vue';\nimport Render from '../base/Render';\nimport RenderEmpty from '../base/RenderEmpty.vue';\nimport { oneOf } from '../../utils/propsValidators';\nimport { filterEmpty } from '../../utils/slots';\nimport { transferSide, type TransferDataItem, type TransferFilterMethod, type TransferSide } from './Transfer.type';\nimport type { TransferLocal } from '../locale/default';\nimport Scrollbar from '../Scrollbar/Scrollbar';\n\nconst transferListProps = {\n side: {\n type: String as PropType<TransferSide>,\n default: 'left',\n validator: oneOf(['left', 'right'] as const)\n },\n prefixCls: {\n type: String\n },\n titleText: {\n type: String\n },\n dataSource: {\n type: Array as PropType<TransferDataItem[]>,\n default: () => [] as TransferDataItem[]\n },\n checkedKeys: {\n type: Array as PropType<string[]>,\n default: () => [] as string[]\n },\n itemUnit: {\n type: String\n },\n disabled: {\n type: Boolean,\n default: false\n },\n showSearch: {\n type: Boolean,\n default: false\n },\n filterMethod: {\n type: Function as PropType<TransferFilterMethod>,\n default: () => {},\n required: true\n },\n showSelectAll: {\n type: Boolean,\n default: false\n },\n listStyle: {\n type: Object as PropType<CSSProperties>,\n default: () => ({})\n },\n search: {\n type: Function as PropType<Slot>\n },\n footer: {\n type: Function as PropType<Slot>\n },\n renderList: {\n type: Function as PropType<Slot>\n },\n locale: {\n type: Object as PropType<TransferLocal>,\n default: () => {},\n required: true\n },\n loading: {\n type: Boolean,\n default: false\n }\n};\n\nexport default defineComponent({\n name: 'TransferList',\n components: { UCheckbox, ListItem, UInput, Render, RenderEmpty, Scrollbar },\n props: transferListProps,\n emits: {\n 'check-all': (checkedKeys: string[], side: TransferSide) => Array.isArray(checkedKeys) && transferSide.includes(side),\n 'item-select': (key: string, checked: boolean, side: TransferSide) =>\n typeof key === 'string' && typeof checked === 'boolean' && transferSide.includes(side),\n search: (side: TransferSide, value: string) => transferSide.includes(side) && typeof value === 'string'\n },\n setup(props, { emit }) {\n const inputValue = ref('');\n const searchKey = ref('title');\n\n const unit = computed(() => {\n return props.dataSource.length > 1 ? props.locale.itemsUnit : props.locale.itemUnit;\n });\n\n const clearSearchValue = () => {\n inputValue.value = '';\n searchKey.value = 'title';\n };\n\n const footerRender = computed(() => {\n if (props.footer) {\n const footerComponent = filterEmpty(props.footer({ props }));\n if (!footerComponent.length) return null;\n return () => footerComponent;\n }\n return null;\n });\n\n /**\n * @param {InputValueType} value\n * @param {string} key\n * @return {void}\n * @description input value change call back\n */\n const handleInputChange = (value: InputValueType, key = 'title') => {\n inputValue.value = value as string;\n searchKey.value = key;\n emit('search', props.side, value as string);\n };\n\n const searchRender = computed(() => {\n if (props.search) {\n const searchComponent = filterEmpty(props.search({ handleSearch: handleInputChange }));\n if (!searchComponent.length) return null;\n return () => searchComponent;\n }\n return null;\n });\n\n const filteredData = computed(() => {\n if ((!props.showSearch && !searchRender.value) || !inputValue.value) {\n return props.dataSource;\n }\n return props.dataSource.filter((d) => props.filterMethod(inputValue.value, d, searchKey.value));\n });\n\n const allowCheckedKeys = computed(() => {\n return filteredData.value.filter((d) => !d.disabled).map((d) => d.key);\n });\n\n const indeterminate = computed(() => {\n const allowCheckedLen = allowCheckedKeys.value.length;\n const checkedLen = props.checkedKeys.length;\n if (checkedLen > 0 && checkedLen < allowCheckedLen) {\n return true;\n }\n return false;\n });\n\n const checkedAll = computed(() => {\n const allowCheckedLen = allowCheckedKeys.value.length;\n if (allowCheckedLen === 0) {\n return false;\n }\n return allowCheckedLen === props.checkedKeys.length;\n });\n\n /**\n * @param {boolean | event} all check all change param\n * @return {void}\n * @description selectAll change\n */\n const handleCheckAllChange = (all?: boolean) => {\n const allValue = typeof all === 'boolean' ? all : !checkedAll.value;\n if (props.disabled) return;\n const nextCheckedKeys = !allValue ? [] : allowCheckedKeys.value;\n emit('check-all', nextCheckedKeys, props.side);\n };\n\n /**\n * @param {string | object} itemKey select item or key\n * @param {boolean} checked checked value\n * @return {void}\n * @description single item select\n */\n const handleItemSelect = (itemKey: string | { key: string }, checked: boolean) => {\n const keyValue = typeof itemKey === 'string' ? itemKey : itemKey.key;\n emit('item-select', keyValue, checked, props.side);\n };\n\n const listRender = computed(() => {\n if (props.renderList) {\n const components = filterEmpty(\n props.renderList({\n props: {\n side: props.side,\n filteredData: filteredData.value,\n selectedKeys: props.checkedKeys,\n disabled: props.disabled\n },\n methods: {\n onSelect: handleItemSelect,\n onSelectAll: handleCheckAllChange\n }\n })\n );\n // components might be empty because of \"v-if\" directive\n if (!components.length) {\n return () => null as null;\n }\n return () => components;\n }\n return null;\n });\n\n return {\n inputValue,\n unit,\n indeterminate,\n checkedAll,\n filteredData,\n footerRender,\n listRender,\n searchRender,\n clearSearchValue,\n handleCheckAllChange,\n handleItemSelect,\n handleInputChange\n };\n }\n});\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_normalizeStyle","_createElementVNode","_createBlock","_toDisplayString","_Fragment","_createVNode"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TransferList.mjs","sources":["../../../../src/components/Transfer/TransferList.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n `${prefixCls}-list`,\n {\n [`${prefixCls}-list-with-footer`]: footerRender,\n [`${prefixCls}-list-custom`]: listRender\n }\n ]\"\n :style=\"{ ...listStyle }\"\n >\n <div :class=\"`${prefixCls}-list-header`\">\n <div :class=\"`${prefixCls}-list-header-select`\">\n <UCheckbox\n v-if=\"showSelectAll\"\n :indeterminate=\"indeterminate\"\n :model-value=\"checkedAll\"\n :disabled=\"disabled\"\n @click.prevent=\"handleCheckAllChange()\"\n />\n <span :class=\"`${prefixCls}-list-header-selected`\">\n {{ !checkedKeys.length ? filteredData.length : `${checkedKeys.length}/${filteredData.length}` }}\n {{ unit }}\n </span>\n </div>\n\n <span :class=\"`${prefixCls}-list-header-title`\">{{ titleText }}</span>\n </div>\n <div\n :class=\"[\n `${prefixCls}-list-body`,\n {\n [`${prefixCls}-list-body-with-search`]: showSearch,\n [`${prefixCls}-list-body-with-footer`]: footerRender\n }\n ]\"\n >\n <div v-if=\"showSearch || searchRender\" :class=\"`${prefixCls}-list-body-search-wrap`\">\n <Render v-if=\"searchRender\" :render=\"searchRender\" />\n <UInput v-else :model-value=\"inputValue\" :placeholder=\"locale.searchPlaceholder\" clearable search @change=\"handleInputChange\" />\n </div>\n <div v-if=\"filteredData.length\" :class=\"`${prefixCls}-list-body-list-wrap`\">\n <Scrollbar v-if=\"!listRender || (listRender && !listRender())\" style=\"height: 100%\" height=\"100%\">\n <ul :class=\"`${prefixCls}-list-body-content`\">\n <template v-for=\"dataItem in filteredData\" :key=\"dataItem.key\">\n <ListItem\n :prefix-cls=\"`${prefixCls}-list-item`\"\n :data-item=\"dataItem\"\n :checked=\"checkedKeys.includes(dataItem.key)\"\n :disabled=\"disabled\"\n @click=\"handleItemSelect\"\n />\n </template>\n </ul>\n </Scrollbar>\n <div v-else :class=\"`${prefixCls}-list-custom-body`\">\n <Render :render=\"listRender\" />\n </div>\n </div>\n <div v-else :class=\"`${prefixCls}-list-body-not-found`\">\n <RenderEmpty size=\"small\" :text=\"locale.notFoundContent\" />\n </div>\n </div>\n <div v-if=\"footerRender\" :class=\"`${prefixCls}-list-footer`\">\n <Render :render=\"footerRender\" />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { ref, computed, defineComponent } from 'vue';\nimport type { PropType, CSSProperties, Slot } from 'vue';\nimport UCheckbox from '@uxd-ui/components/Checkbox';\nimport UInput, { type InputValueType } from '@uxd-ui/components/Input';\nimport ListItem from './TransferListItem.vue';\nimport Render from '../base/Render';\nimport RenderEmpty from '../base/RenderEmpty.vue';\nimport { oneOf } from '../../utils/propsValidators';\nimport { filterEmpty } from '../../utils/slots';\nimport { transferSide, type TransferDataItem, type TransferFilterMethod, type TransferSide } from './Transfer.type';\nimport type { TransferLocal } from '../locale/default';\nimport Scrollbar from '../Scrollbar/Scrollbar';\n\nconst transferListProps = {\n side: {\n type: String as PropType<TransferSide>,\n default: 'left',\n validator: oneOf(['left', 'right'] as const)\n },\n prefixCls: {\n type: String\n },\n titleText: {\n type: String\n },\n dataSource: {\n type: Array as PropType<TransferDataItem[]>,\n default: () => [] as TransferDataItem[]\n },\n checkedKeys: {\n type: Array as PropType<string[]>,\n default: () => [] as string[]\n },\n itemUnit: {\n type: String\n },\n disabled: {\n type: Boolean,\n default: false\n },\n showSearch: {\n type: Boolean,\n default: false\n },\n filterMethod: {\n type: Function as PropType<TransferFilterMethod>,\n default: () => {},\n required: true\n },\n showSelectAll: {\n type: Boolean,\n default: false\n },\n listStyle: {\n type: Object as PropType<CSSProperties>,\n default: () => ({})\n },\n search: {\n type: Function as PropType<Slot>\n },\n footer: {\n type: Function as PropType<Slot>\n },\n renderList: {\n type: Function as PropType<Slot>\n },\n locale: {\n type: Object as PropType<TransferLocal>,\n default: () => {},\n required: true\n },\n loading: {\n type: Boolean,\n default: false\n }\n};\n\nexport default defineComponent({\n name: 'TransferList',\n components: { UCheckbox, ListItem, UInput, Render, RenderEmpty, Scrollbar },\n props: transferListProps,\n emits: {\n 'check-all': (checkedKeys: string[], side: TransferSide) => Array.isArray(checkedKeys) && transferSide.includes(side),\n 'item-select': (key: string, checked: boolean, side: TransferSide) =>\n typeof key === 'string' && typeof checked === 'boolean' && transferSide.includes(side),\n search: (side: TransferSide, value: string) => transferSide.includes(side) && typeof value === 'string'\n },\n setup(props, { emit }) {\n const inputValue = ref('');\n const searchKey = ref('title');\n\n const unit = computed(() => {\n return props.dataSource.length > 1 ? props.locale.itemsUnit : props.locale.itemUnit;\n });\n\n const clearSearchValue = () => {\n inputValue.value = '';\n searchKey.value = 'title';\n };\n\n const footerRender = computed(() => {\n if (props.footer) {\n const footerComponent = filterEmpty(props.footer({ props }));\n if (!footerComponent.length) return null;\n return () => footerComponent;\n }\n return null;\n });\n\n /**\n * @param {InputValueType} value\n * @param {string} key\n * @return {void}\n * @description input value change call back\n */\n const handleInputChange = (value: InputValueType, key = 'title') => {\n inputValue.value = value as string;\n searchKey.value = key;\n emit('search', props.side, value as string);\n };\n\n const searchRender = computed(() => {\n if (props.search) {\n const searchComponent = filterEmpty(props.search({ handleSearch: handleInputChange }));\n if (!searchComponent.length) return null;\n return () => searchComponent;\n }\n return null;\n });\n\n const filteredData = computed(() => {\n if ((!props.showSearch && !searchRender.value) || !inputValue.value) {\n return props.dataSource;\n }\n return props.dataSource.filter((d) => props.filterMethod(inputValue.value, d, searchKey.value));\n });\n\n const allowCheckedKeys = computed(() => {\n return filteredData.value.filter((d) => !d.disabled).map((d) => d.key);\n });\n\n const indeterminate = computed(() => {\n const allowCheckedLen = allowCheckedKeys.value.length;\n const checkedLen = props.checkedKeys.length;\n if (checkedLen > 0 && checkedLen < allowCheckedLen) {\n return true;\n }\n return false;\n });\n\n const checkedAll = computed(() => {\n const allowCheckedLen = allowCheckedKeys.value.length;\n if (allowCheckedLen === 0) {\n return false;\n }\n return allowCheckedLen === props.checkedKeys.length;\n });\n\n /**\n * @param {boolean | event} all check all change param\n * @return {void}\n * @description selectAll change\n */\n const handleCheckAllChange = (all?: boolean) => {\n const allValue = typeof all === 'boolean' ? all : !checkedAll.value;\n if (props.disabled) return;\n const nextCheckedKeys = !allValue ? [] : allowCheckedKeys.value;\n emit('check-all', nextCheckedKeys, props.side);\n };\n\n /**\n * @param {string | object} itemKey select item or key\n * @param {boolean} checked checked value\n * @return {void}\n * @description single item select\n */\n const handleItemSelect = (itemKey: string | { key: string }, checked: boolean) => {\n const keyValue = typeof itemKey === 'string' ? itemKey : itemKey.key;\n emit('item-select', keyValue, checked, props.side);\n };\n\n const listRender = computed(() => {\n if (props.renderList) {\n const components = filterEmpty(\n props.renderList({\n props: {\n side: props.side,\n filteredData: filteredData.value,\n selectedKeys: props.checkedKeys,\n disabled: props.disabled\n },\n methods: {\n onSelect: handleItemSelect,\n onSelectAll: handleCheckAllChange\n }\n })\n );\n // components might be empty because of \"v-if\" directive\n if (!components.length) {\n return () => null as null;\n }\n return () => components;\n }\n return null;\n });\n\n return {\n inputValue,\n unit,\n indeterminate,\n checkedAll,\n filteredData,\n footerRender,\n listRender,\n searchRender,\n clearSearchValue,\n handleCheckAllChange,\n handleItemSelect,\n handleInputChange\n };\n }\n});\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_normalizeStyle","_createElementVNode","_createBlock","_toDisplayString","_Fragment","_createVNode"],"mappings":"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"}
|