UNPKG

@gravity-ui/uikit

Version:

Gravity UI base styling and components

23 lines (22 loc) 767 B
import * as React from 'react'; import { PrivateDefaultPropsContext } from "./PrivateDefaultPropsProvider.js"; export function useDefaultProps(componentName, componentProps) { const ctx = React.useContext(PrivateDefaultPropsContext); const defaultProps = ctx[componentName]; if (!defaultProps) { return componentProps; } const cleanedProps = {}; for (const k in componentProps) { if (componentProps[k] !== undefined) { cleanedProps[k] = componentProps[k]; } } return [defaultProps, cleanedProps].reduce((acc, props) => { for (const [key, value] of Object.entries(props)) { acc[key] = value; } return acc; }, {}); } //# sourceMappingURL=useDefaultProps.js.map