equal-vue
Version:
Equal is a Vue 3 hackable UI library empowered by tailwindcss
11 lines (9 loc) • 326 B
text/typescript
import { VNode, Slot } from 'vue'
export const getChildrenVNodesFromSlot = (slot: Slot): VNode[] => {
return slot().reduce((list: VNode[], child) => {
const resultChildren: VNode[] = child.children?.length
? (child.children as VNode[])
: [child]
return [...list, ...resultChildren]
}, [])
}