UNPKG

element-plus

Version:

A Component Library for Vue3.0

27 lines (23 loc) 574 B
import { isArray } from '@vue/shared' import type { Option, OptionGroup } from './select.types' export const flattenOptions = (options: Array<Option | OptionGroup>) => { const flattened = [] options.map(option => { if (isArray(option.options)) { flattened.push({ label: option.label, isTitle: true, type: 'Group', }) option.options.forEach((o: Option) => { flattened.push(o) }) flattened.push({ type: 'Group', }) } else { flattened.push(option) } }) return flattened }