import Carousel, { CarouselProps } from 'nuka-carousel'
import React, { PropsWithChildren } from 'react'
import Box from '@mui/material/Box'
import IconButton from '@mui/material/IconButton'
import ChevronLeft from 'mdi-material-ui/ChevronLeft'
import ChevronRight from 'mdi-material-ui/ChevronRight'
import CircleMedium from 'mdi-material-ui/CircleMedium'
import MinusThick from 'mdi-material-ui/MinusThick'
import CircleSmall from 'mdi-material-ui/CircleSmall'
import Minus from 'mdi-material-ui/Minus'
const DARK = 'rgba(0,0,0,0.8)'
const LIGHT = 'rgba(255,255,255,0.8)'
type LmNukaCarouselProps = PropsWithChildren<
CarouselProps & {
hidePagination?: boolean
paginationBelowContent?: boolean
arrowsBesidePagination?: boolean
hideArrows?: boolean
darkArrows?: boolean
darkPagination?: boolean // the property should render minus
paginationCircle?: boolean
}
>
export default function LmNukaCarousel({
hidePagination,
paginationBelowContent,
arrowsBesidePagination,
hideArrows,
darkArrows,
darkPagination,
paginationCircle,
...carouselProps
}: LmNukaCarouselProps) {
const ActiveIndicator = paginationCircle ? :
const DefaultIndicator = paginationCircle ? :
return (
{
return (
previousSlide()}
color={'inherit'}
>
{pagingDotsIndices.map((i) => (
goToSlide(i)}
>
{currentSlide === i ? ActiveIndicator : DefaultIndicator}
))}
nextSlide()}
color="inherit"
size="small"
sx={{
display: arrowsBesidePagination ? 'inline-flex' : 'none'
}}
>
)
}}
renderCenterLeftControls={({ previousDisabled, previousSlide }) =>
!hideArrows ? (
) : null
}
renderCenterRightControls={({ nextDisabled, nextSlide }) =>
!hideArrows ? (
) : null
}
/>
)
}