{"version":3,"file":"use-props.cjs","sources":["../../../../src/core/RaikouProvider/use-props/use-props.ts"],"sourcesContent":["import { filterProps } from '../../utils';\nimport { useRaikouTheme } from '../useRaikouTheme/useRaikouTheme';\n\nexport function useProps<T extends Record<string, any>, U extends Partial<T> = {}>(\n  component: string,\n  defaultProps: U,\n  props: T\n): T & {\n  [Key in Extract<keyof T, keyof U>]-?: U[Key] | NonNullable<T[Key]>;\n} {\n  const theme = useRaikouTheme();\n  const contextPropsPayload = theme.components[component]?.defaultProps;\n  const contextProps =\n    typeof contextPropsPayload === 'function' ? contextPropsPayload(theme) : contextPropsPayload;\n\n  return { ...defaultProps, ...contextProps, ...filterProps(props) };\n}\n"],"names":["useRaikouTheme","filterProps"],"mappings":";;;;;;;;AAGgB,SAAA,QAAA,CACd,SACA,EAAA,YAAA,EACA,KAGA,EAAA;AACA,EAAA,MAAM,QAAQA,6BAAe,EAAA;AAC7B,EAAA,MAAM,mBAAsB,GAAA,KAAA,CAAM,UAAW,CAAA,SAAS,CAAG,EAAA,YAAA;AACzD,EAAA,MAAM,eACJ,OAAO,mBAAA,KAAwB,UAAa,GAAA,mBAAA,CAAoB,KAAK,CAAI,GAAA,mBAAA;AAE3E,EAAO,OAAA,EAAE,GAAG,YAAc,EAAA,GAAG,cAAc,GAAGC,uBAAA,CAAY,KAAK,CAAE,EAAA;AACnE;;;;"}