Files
reacord/packages/docs/src/helpers/lazy-named.ts
2022-01-02 22:14:27 -06:00

12 lines
299 B
TypeScript

import { lazy } from "react"
export function lazyNamed<
Key extends string,
Component extends React.ComponentType,
>(key: Key, loadModule: () => Promise<Record<Key, Component>>) {
return lazy<Component>(async () => {
const mod = await loadModule()
return { default: mod[key] }
})
}