UNPKG

@gravity-ui/uikit

Version:

Gravity UI base styling and components

27 lines (26 loc) 970 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useDefaultProps = useDefaultProps; const tslib_1 = require("tslib"); const React = tslib_1.__importStar(require("react")); const PrivateDefaultPropsProvider_1 = require("./PrivateDefaultPropsProvider.js"); function useDefaultProps(componentName, componentProps) { const ctx = React.useContext(PrivateDefaultPropsProvider_1.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