import type { UniComponent } from '@blocksuite/affine-shared/types'; export const uniMap = >( component: UniComponent, map: (r: R) => T ): UniComponent => { return (ele, props, expose) => { const result = component(ele, map(props), expose); return { unmount: result.unmount, update: props => { result.update(map(props)); }, }; }; };