UNPKG

tdesign-mobile-vue

Version:
1 lines 16.9 kB
{"version":3,"file":"tree-select.mjs","sources":["../../src/tree-select/tree-select.tsx"],"sourcesContent":["import { computed, defineComponent, ref, toRefs, watch } from 'vue';\nimport { SideBar as TSideBar, SideBarItem as TSideBarItem } from '../side-bar';\nimport TRadio, { RadioGroup as TRadioGroup } from '../radio';\nimport TCheckbox, { CheckboxGroup as TCheckboxGroup } from '../checkbox';\nimport config from '../config';\nimport { convertUnit } from '../shared';\nimport props from './props';\nimport { TdTreeSelectProps, TreeSelectValue, _TreeOptionData } from './type';\nimport { usePrefixClass } from '../hooks/useClass';\nimport useVModel from '../hooks/useVModel';\n\nconst { prefix } = config;\n\nexport default defineComponent({\n name: `${prefix}-tree-select`,\n components: {\n TSideBar,\n TSideBarItem,\n TRadio,\n TRadioGroup,\n },\n props,\n emits: ['update:value', 'update:modelValue', 'change'],\n setup(props: TdTreeSelectProps, context) {\n const treeSelectClass = usePrefixClass('tree-select');\n const { height, customStyle, value, modelValue, options, keys, multiple } = toRefs(props);\n const [innerValue, setInnerValue] = useVModel(value, modelValue, props.defaultValue, props.onChange);\n\n const leafLevel = ref(0);\n const treeOptions = ref<_TreeOptionData[][]>([]);\n const rootStyle = computed(() => [`height: ${convertUnit(height.value)}`, customStyle.value].join(';'));\n\n const buildTreeOptions = () => {\n const { options, multiple, keys } = props;\n\n let level = -1;\n const tmpTreeOptions: _TreeOptionData[][] = [];\n let node: _TreeOptionData = { children: options };\n if (options.length === 0 || (Array.isArray(value) && value.length === 0)) return;\n while (node && node.children) {\n level += 1;\n const list = (node.children as _TreeOptionData[]).map((item: _TreeOptionData) => ({\n label: item[keys?.label || 'label'],\n value: item[keys?.value || 'value'],\n disabled: item[keys?.disabled || 'disabled'],\n children: item.children,\n }));\n const thisValue = innerValue.value?.[level];\n\n tmpTreeOptions.push([...list]);\n if (thisValue == null) {\n const [firstChild] = list;\n node = firstChild;\n } else {\n const child = list.find((child) => child.value === thisValue);\n node = child ?? list[0];\n }\n }\n leafLevel.value = Math.max(0, level);\n treeOptions.value = tmpTreeOptions;\n\n if (multiple) {\n const finalValue = innerValue.value;\n if (finalValue[leafLevel.value] != null && !Array.isArray(finalValue[leafLevel.value])) {\n throw TypeError('应传入数组类型的 value');\n }\n }\n };\n\n const getTreeClass = (level: number, total: number) => {\n if (level === 0) return 'right';\n if (level === 1 && level !== total - 1) return 'middle';\n return 'left';\n };\n\n const onRootChange = (level: number) => {\n setInnerValue(innerValue.value, level);\n };\n\n const handleTreeClick = (itemValue: TreeSelectValue, level: number, isDisabled: boolean) => {\n if (isDisabled) return;\n innerValue.value[level] = itemValue;\n setInnerValue(innerValue.value, level);\n };\n\n watch(\n [innerValue, options, keys, multiple],\n () => {\n buildTreeOptions();\n },\n { immediate: true, deep: true },\n );\n\n const renderSideBar = (treeOption: _TreeOptionData[]) => {\n return (\n <TSideBar\n v-model={innerValue.value[0]}\n class={`${treeSelectClass.value}-colum`}\n onChange={() => onRootChange(0)}\n >\n {treeOption.map((item, index) => (\n <TSideBarItem key={index} label={item.label} value={item.value} disabled={item.disabled}></TSideBarItem>\n ))}\n </TSideBar>\n );\n };\n\n const renderMiddleLevel = (treeOption: _TreeOptionData[], level: number) => {\n return treeOption.map((item) => (\n <div\n key={item.value}\n class={{\n [`${treeSelectClass.value}__item`]: true,\n [`${treeSelectClass.value}__item--active`]: item.value === innerValue.value[level],\n [`${treeSelectClass.value}__item--disabled`]: item.disabled,\n }}\n onClick={() => handleTreeClick(item.value, level, item.disabled)}\n >\n {item.label}\n </div>\n ));\n };\n\n const renderLeafLevel = (treeOption: _TreeOptionData[], level: number) => {\n if (multiple.value) {\n return (\n <TCheckboxGroup\n v-model={innerValue.value[level]}\n class={`${treeSelectClass.value}__checkbox`}\n onChange={() => onRootChange(level)}\n >\n {treeOption.map((item) => (\n <TCheckbox\n key={item.value}\n class={`${treeSelectClass.value}__checkbox-item`}\n value={item.value}\n maxLabelRow={1}\n icon=\"line\"\n borderless\n placement=\"right\"\n disabled={item.disabled}\n >\n {item.label}\n </TCheckbox>\n ))}\n </TCheckboxGroup>\n );\n }\n return (\n <TRadioGroup\n v-model={innerValue.value[level]}\n class={`${treeSelectClass.value}__radio`}\n onChange={() => onRootChange(level)}\n >\n {treeOption.map((item) => (\n <TRadio\n key={item.value}\n class={`${treeSelectClass.value}__radio-item`}\n value={item.value}\n icon=\"line\"\n maxLabelRow={1}\n borderless\n placement=\"right\"\n disabled={item.disabled}\n >\n {item.label}\n </TRadio>\n ))}\n </TRadioGroup>\n );\n };\n\n return () => {\n return (\n <div class={treeSelectClass.value} style={rootStyle.value}>\n {treeOptions.value.map((item, level) => {\n let levelContent;\n if (level === 0) {\n levelContent = renderSideBar(item);\n } else if (level === leafLevel.value) {\n levelContent = renderLeafLevel(item, level);\n } else {\n levelContent = renderMiddleLevel(item, level);\n }\n\n return (\n <div\n key={level}\n class={[\n `${treeSelectClass.value}__column`,\n `${treeSelectClass.value}__column--${getTreeClass(\n leafLevel.value - level,\n treeOptions.value.length,\n )}`,\n ]}\n >\n {levelContent}\n </div>\n );\n })}\n </div>\n );\n };\n },\n});\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","prefix","config","defineComponent","name","components","TSideBar","TSideBarItem","TRadio","TRadioGroup","props","emits","setup","context","treeSelectClass","usePrefixClass","_toRefs","toRefs","height","customStyle","value","modelValue","options","keys","multiple","_useVModel","useVModel","defaultValue","onChange","_useVModel2","_slicedToArray","innerValue","setInnerValue","leafLevel","ref","treeOptions","rootStyle","computed","concat","convertUnit","join","buildTreeOptions","level","tmpTreeOptions","node","children","length","Array","isArray","_loop","_innerValue$value","list","map","item","label","disabled","thisValue","push","_toConsumableArray","_list","firstChild","child","find","Math","max","finalValue","TypeError","getTreeClass","total","onRootChange","handleTreeClick","itemValue","isDisabled","watch","immediate","deep","renderSideBar","treeOption","_slot","_createVNode","onUpdateModelValue","$event","index","renderMiddleLevel","_defineProperty","onClick","renderLeafLevel","_slot3","_slot2","TCheckboxGroup","TCheckbox","default","_default","levelContent"],"mappings":"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"}