import { useRef } from "@wordpress/element";
// eslint-disable-next-line import/no-unresolved
import { Swiper, SwiperSlide } from "swiper/react";
import { Navigation, Autoplay, EffectFade, FreeMode } from "swiper/modules";
import Marquee from "react-fast-marquee";
import Template from "./template";
import TemplateOne from "./templateOne";
import { arrayChunk } from "../shared/helpFn";
import { NewsIcon, NewsIcon2, NewsIcon3, NewsIcon4, NewsIcon5 } from "../../icons/icons";
import { breakpoint, inArray } from "../../controls/controls";
// eslint-disable-next-line no-duplicate-imports
import { Fragment } from "@wordpress/element";
import { SlideButton } from "./SlideButton";
import NewsTickerTypewriter from "./cutomTypewriter";
import classNames from "classnames";
const Render = ({ attributes, posts, swiperKey = "", renderKey = null, pageType = "frontend" }) => {
const {
// uniqueId,
carouselPaginationStyle,
displayStyle,
tickerTitleGap,
carouselAutoPlay,
carouselAutoPlayDelay,
carouselDirection,
carouselPauseOnHover,
carouselAnimationEffect,
carouselTickerSpeed,
HeadingLabel,
tickerIconColor,
tickerIconSource,
tickerIconEnabled,
tickerSeparatorEnable,
tickerListStyle,
tickerListStyleColor,
tickerDate,
tickerDateType,
metaDateFormat,
tickerImg,
tickerImagePosition,
carouselNavArrow,
carouselArrowStyle,
dynamicClassNames,
navArrowVisibilityOnHover,
tickerNavigation,
tickerPause,
tickerDivider,
tickerTitleListStyleEnble,
HeadingPosition,
headingStyle,
titleLength,
newsTickerCarouselArrowColor,
tickerImgShape,
newsTickerItemToDisplay,
headingGlobalTypography,
tickerTitleGlobalTypography,
} = attributes;
// const swiperDotsRef = useRef(null);
const spTickerRef = useRef(null);
const swiperNevNextRef = useRef(null);
const swiperNevPrevRef = useRef(null);
const deviceType = breakpoint();
// const paginationDotStyle = paginationDotType(swiperDotsRef, carouselPaginationStyle);
let AllPosts = posts;
if (inArray(["fade"], carouselAnimationEffect)) {
const columnWithDevice = newsTickerItemToDisplay.device?.[deviceType];
AllPosts = arrayChunk(posts, columnWithDevice);
}
if (inArray(["fade"], carouselAnimationEffect)) {
const columnWithDevice = newsTickerItemToDisplay.device?.[deviceType];
AllPosts = arrayChunk(posts, columnWithDevice);
}
const itemToDisplay = newsTickerItemToDisplay.device?.[deviceType];
const templateOneAndTwo = (post) => {
return