{"version":3,"file":"ScrollAreaScrollbar.cjs","sources":["../../../../src/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbar.tsx"],"sourcesContent":["import { forwardRef, useEffect } from 'react';\nimport { useScrollAreaContext } from '../ScrollArea.context';\nimport { ScrollAreaScrollbarAuto } from './ScrollAreaScrollbarAuto';\nimport { ScrollAreaScrollbarHover } from './ScrollAreaScrollbarHover';\nimport { ScrollAreaScrollbarScroll } from './ScrollAreaScrollbarScroll';\nimport {\n  ScrollAreaScrollbarVisible,\n  ScrollAreaScrollbarVisibleProps,\n} from './ScrollAreaScrollbarVisible';\n\ninterface ScrollAreaScrollbarProps extends ScrollAreaScrollbarVisibleProps {\n  forceMount?: true;\n}\n\nexport const ScrollAreaScrollbar = forwardRef<HTMLDivElement, ScrollAreaScrollbarProps>(\n  (props, forwardedRef) => {\n    const { forceMount, ...scrollbarProps } = props;\n    const context = useScrollAreaContext();\n    const { onScrollbarXEnabledChange, onScrollbarYEnabledChange } = context;\n    const isHorizontal = props.orientation === 'horizontal';\n\n    useEffect(() => {\n      isHorizontal ? onScrollbarXEnabledChange(true) : onScrollbarYEnabledChange(true);\n      return () => {\n        isHorizontal ? onScrollbarXEnabledChange(false) : onScrollbarYEnabledChange(false);\n      };\n    }, [isHorizontal, onScrollbarXEnabledChange, onScrollbarYEnabledChange]);\n\n    return context.type === 'hover' ? (\n      <ScrollAreaScrollbarHover {...scrollbarProps} ref={forwardedRef} forceMount={forceMount} />\n    ) : context.type === 'scroll' ? (\n      <ScrollAreaScrollbarScroll {...scrollbarProps} ref={forwardedRef} forceMount={forceMount} />\n    ) : context.type === 'auto' ? (\n      <ScrollAreaScrollbarAuto {...scrollbarProps} ref={forwardedRef} forceMount={forceMount} />\n    ) : context.type === 'always' ? (\n      <ScrollAreaScrollbarVisible {...scrollbarProps} ref={forwardedRef} />\n    ) : null;\n  }\n);\n\nScrollAreaScrollbar.displayName = '@raikou/core/ScrollAreaScrollbar';\n"],"names":["forwardRef","useScrollAreaContext","useEffect","ScrollAreaScrollbarHover","jsx","ScrollAreaScrollbarScroll","ScrollAreaScrollbarAuto","ScrollAreaScrollbarVisible"],"mappings":";;;;;;;;;;AAcO,MAAM,mBAAsB,GAAAA,gBAAA;AAAA,EACjC,CAAC,OAAO,YAAiB,KAAA;AACvB,IAAA,MAAM,EAAE,UAAA,EAAY,GAAG,cAAA,EAAmB,GAAA,KAAA;AAC1C,IAAA,MAAM,UAAUC,uCAAqB,EAAA;AACrC,IAAM,MAAA,EAAE,yBAA2B,EAAA,yBAAA,EAA8B,GAAA,OAAA;AACjE,IAAM,MAAA,YAAA,GAAe,MAAM,WAAgB,KAAA,YAAA;AAE3C,IAAAC,eAAA,CAAU,MAAM;AACd,MAAA,YAAA,GAAe,yBAA0B,CAAA,IAAI,CAAI,GAAA,yBAAA,CAA0B,IAAI,CAAA;AAC/E,MAAA,OAAO,MAAM;AACX,QAAA,YAAA,GAAe,yBAA0B,CAAA,KAAK,CAAI,GAAA,yBAAA,CAA0B,KAAK,CAAA;AAAA,OACnF;AAAA,KACC,EAAA,CAAC,YAAc,EAAA,yBAAA,EAA2B,yBAAyB,CAAC,CAAA;AAEvE,IAAA,OAAO,QAAQ,IAAS,KAAA,OAAA,kCACrBC,iDAA0B,EAAA,EAAA,GAAG,gBAAgB,GAAK,EAAA,YAAA,EAAc,YAAwB,CACvF,GAAA,OAAA,CAAQ,SAAS,QACnB,mBAAAC,cAAA,CAACC,uDAA2B,GAAG,cAAA,EAAgB,KAAK,YAAc,EAAA,UAAA,EAAwB,CACxF,GAAA,OAAA,CAAQ,SAAS,MACnB,mBAAAD,cAAA,CAACE,mDAAyB,GAAG,cAAA,EAAgB,KAAK,YAAc,EAAA,UAAA,EAAwB,IACtF,OAAQ,CAAA,IAAA,KAAS,2BAClBF,cAAA,CAAAG,qDAAA,EAAA,EAA4B,GAAG,cAAgB,EAAA,GAAA,EAAK,cAAc,CACjE,GAAA,IAAA;AAAA;AAER;AAEA,mBAAA,CAAoB,WAAc,GAAA,kCAAA;;;;"}