{"version":3,"file":"ScrollAreaViewport.mjs","sources":["../../../../src/components/ScrollArea/ScrollAreaViewport/ScrollAreaViewport.tsx"],"sourcesContent":["import { forwardRef } from 'react';\nimport { useMergedRef } from '@raikou/hooks';\nimport { Box, BoxProps, ElementProps } from '../../../core';\nimport { useScrollAreaContext } from '../ScrollArea.context';\n\nexport interface ScrollAreaViewportProps extends BoxProps, ElementProps<'div'> {}\n\nexport const ScrollAreaViewport = forwardRef<HTMLDivElement, ScrollAreaViewportProps>(\n  ({ children, style, ...others }, ref) => {\n    const ctx = useScrollAreaContext();\n    const rootRef = useMergedRef(ref, ctx.onViewportChange);\n\n    return (\n      <Box\n        {...others}\n        ref={rootRef}\n        style={{\n          overflowX: ctx.scrollbarXEnabled ? 'scroll' : 'hidden',\n          overflowY: ctx.scrollbarYEnabled ? 'scroll' : 'hidden',\n          ...style,\n        }}\n      >\n        <div style={{ minWidth: '100%', display: 'table' }} ref={ctx.onContentChange}>\n          {children}\n        </div>\n      </Box>\n    );\n  }\n);\n\nScrollAreaViewport.displayName = '@raikou/core/ScrollAreaViewport';\n"],"names":[],"mappings":";;;;;;;;;AAOO,MAAM,kBAAqB,GAAA,UAAA;AAAA,EAChC,CAAC,EAAE,QAAA,EAAU,OAAO,GAAG,MAAA,IAAU,GAAQ,KAAA;AACvC,IAAA,MAAM,MAAM,oBAAqB,EAAA;AACjC,IAAA,MAAM,OAAU,GAAA,YAAA,CAAa,GAAK,EAAA,GAAA,CAAI,gBAAgB,CAAA;AAEtD,IACE,uBAAA,GAAA;AAAA,MAAC,GAAA;AAAA,MAAA;AAAA,QACE,GAAG,MAAA;AAAA,QACJ,GAAK,EAAA,OAAA;AAAA,QACL,KAAO,EAAA;AAAA,UACL,SAAA,EAAW,GAAI,CAAA,iBAAA,GAAoB,QAAW,GAAA,QAAA;AAAA,UAC9C,SAAA,EAAW,GAAI,CAAA,iBAAA,GAAoB,QAAW,GAAA,QAAA;AAAA,UAC9C,GAAG;AAAA,SACL;AAAA,QAEA,QAAC,kBAAA,GAAA,CAAA,KAAA,EAAA,EAAI,KAAO,EAAA,EAAE,QAAU,EAAA,MAAA,EAAQ,OAAS,EAAA,OAAA,EAAW,EAAA,GAAA,EAAK,GAAI,CAAA,eAAA,EAC1D,QACH,EAAA;AAAA;AAAA,KACF;AAAA;AAGN;AAEA,kBAAA,CAAmB,WAAc,GAAA,iCAAA;;;;"}