{"version":3,"file":"table-config.vue2.mjs","sources":["../../../../../../packages/components/table/src/table-config.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\n\tname: 'ToTableConfig'\n});\n</script>\n<template>\n\t<div class=\"config\">\n\t\t<to-icon ref=\"configIcon\" value=\"config\" color=\"info\" mode=\"none\" link @click=\"() => floatRef.value?.toggle(configIconRef.value)\" />\n\t\t<to-float ref=\"floatRef\" width=\"18\" :lazy=\"false\">\n\t\t\t<to-scroll padding=\"0.5\">\n\t\t\t\t<to-tree show-checkbox check-strictly expand check-on-click-node :data=\"configData\" value-text=\"label\" :checked-keys=\"checked\" @check-change=\"check\" @node-expand=\"flex\" @node-collapse=\"flex\" />\n\t\t\t</to-scroll>\n\t\t</to-float>\n\t</div>\n</template>\n\n<script setup lang=\"ts\">\n\nimport { ref, onMounted, watch } from 'vue'\n\nconst props = defineProps({\n\tdata: { type: Array as () => any[], default: () => [] }\n})\nconst emit = defineEmits(['change'])\n\nconst checked = ref<string[]>([])\nconst configData = ref<any[]>([])\nconst configIconRef = ref()\nconst floatRef = ref()\n\nfunction setConfigData() {\n\tconst data = JSON.parse(JSON.stringify(props.data))\n\tfunction setData(data: any[], path?: string[]) {\n\t\tdata.forEach((dataItem, dataIndex) => {\n\t\t\tif (dataItem.type === 'selection' || dataItem.type === 'radio') {\n\t\t\t\tdataItem.label = '选择器'\n\t\t\t}\n\t\t\tif (dataItem.type === 'action') {\n\t\t\t\tdata.splice(dataIndex, 1)\n\t\t\t}\n\t\t\tdataItem.path = path ? path.concat(dataItem.label) : [dataItem.label]\n\t\t\tif (dataItem.children) {\n\t\t\t\tsetData(dataItem.children, dataItem.path)\n\t\t\t}\n\t\t})\n\t}\n\tsetData(data)\n\tconfigData.value = data\n}\n\nfunction setChecked() {\n\tconst arr: string[] = []\n\tfunction setData(data: any[]) {\n\t\tdata.forEach(dataItem => {\n\t\t\tif (dataItem.show !== false) {\n\t\t\t\tif (dataItem.type === 'selection') {\n\t\t\t\t\tarr.push('选择器')\n\t\t\t\t} else {\n\t\t\t\t\tarr.push(dataItem.label)\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (dataItem.children) {\n\t\t\t\tsetData(dataItem.children)\n\t\t\t}\n\t\t})\n\t}\n\tsetData(props.data)\n\tchecked.value = arr\n}\n\nfunction flex() {\n\tfloatRef.value?.set(configIconRef.value?.$el)\n}\n\nfunction check(checkedKeys: string[], checkedNodes: any, node: any, checkedFlag: boolean) {\n\tconst data = JSON.parse(JSON.stringify(props.data))\n\tfunction checkData(data: any[]) {\n\t\tdata.forEach(dataItem => {\n\t\t\tif (dataItem.type === 'selection') {\n\t\t\t\tdataItem.show = checkedKeys.includes('选择器')\n\t\t\t} else {\n\t\t\t\tdataItem.show = checkedKeys.includes(dataItem.label) || dataItem.type === 'action'\n\t\t\t}\n\t\t\tif (dataItem.children) {\n\t\t\t\tcheckData(dataItem.children)\n\t\t\t}\n\t\t})\n\t}\n\tfunction setChildrenHide(data: any[], setHide: boolean) {\n\t\tdata.forEach(dataItem => {\n\t\t\tif (setHide) {\n\t\t\t\tdataItem.show = false\n\t\t\t\tchecked.value = checked.value.filter(item => item !== dataItem.label)\n\t\t\t}\n\t\t\tif (dataItem.children) {\n\t\t\t\tsetChildrenHide(dataItem.children, dataItem.label === node.label || setHide)\n\t\t\t}\n\t\t})\n\t}\n\tfunction setChildrenAndParentShow(data: any[], setShow: boolean) {\n\t\tdata.forEach(dataItem => {\n\t\t\tif (setShow || node.path.includes(dataItem.label)) {\n\t\t\t\tdataItem.show = true\n\t\t\t\tif (!checked.value.includes(dataItem.label)) {\n\t\t\t\t\tchecked.value.push(dataItem.label)\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (dataItem.children) {\n\t\t\t\tsetChildrenAndParentShow(dataItem.children, dataItem.label === node.label || setShow)\n\t\t\t}\n\t\t})\n\t}\n\tcheckData(data)\n\tif (!checkedFlag) {\n\t\tsetChildrenHide(data, false)\n\t\tchecked.value = checked.value.filter(item => item !== node.label)\n\t} else {\n\t\tsetChildrenAndParentShow(data, false)\n\t\tchecked.value.push(node.label)\n\t}\n\temit('change', data)\n}\n\nonMounted(() => {\n\tsetConfigData()\n\tsetChecked()\n})\nwatch(\n\t() => props.data,\n\t() => {\n\t\tsetConfigData()\n\t\tsetChecked()\n\t}\n)\n</script>\n"],"names":["DO_defineComponent","data","_createElementBlock","_createVNode"],"mappings":"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"}