Files
element-plus/packages/components/select-v2/src/util.ts
三咲智子 55348b30b6 style: use prettier (#3228)
* style: use prettier

* style: just prettier format, no code changes

* style: eslint fix
object-shorthand, prefer-const

* style: fix no-void

* style: no-console
2021-09-04 19:29:28 +08:00

28 lines
577 B
TypeScript

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
}