{"version":3,"file":"slider-KbGkM1-J.js","sources":["../../src/foundation/Slider/slider.ts"],"sourcesContent":["import Swiper from \"swiper\";\r\nimport { Navigation, Pagination } from \"swiper/modules\";\r\n\r\ntype SliderProps = {\r\n\tonSlideChange?: () => void\r\n}\r\n\r\nconst slider = (container: HTMLElement, props: SliderProps = {}) => {\r\n\tconst pagination = container.querySelector(\".swiper-pagination\");\r\n\tconst nextButton = container.querySelector(\".swiper-button-next\");\r\n\tconst prevButton = container.querySelector(\".swiper-button-prev\");\r\n\tconst navButtons = container.querySelector(\".buttons-wrapper\");\r\n\r\n\tconst swiper = new Swiper(container, {\r\n\t\tmodules: [Navigation, Pagination],\r\n\t\tdirection: \"horizontal\",\r\n\t\tloop: false,\r\n\t\tspaceBetween: 24,\r\n\t\tobserver: true,\r\n\t\tobserveParents: true,\r\n\t\tspeed: 950,\r\n\t\ttouchEventsTarget: \"wrapper\",\r\n\t\tkeyboard: {\r\n\t\t\tenabled: true,\r\n\t\t\tonlyInViewport: false,\r\n\t\t},\r\n\t\tslidesPerView: \"auto\",\r\n\t\tpagination: {\r\n\t\t\tel: pagination,\r\n\t\t\tclickable: true,\r\n\t\t},\r\n\t\ton: {\r\n\t\t\tslideChange: props.onSlideChange,\r\n\t\t},\r\n\t\tbreakpoints: {\r\n\t\t\t768: {\r\n\t\t\t\tnavigation: {\r\n\t\t\t\t\tnextEl: nextButton,\r\n\t\t\t\t\tprevEl: prevButton,\r\n\t\t\t\t},\r\n\t\t\t},\r\n\t\t\t1280: {\r\n\t\t\t\tnavigation: {\r\n\t\t\t\t\tnextEl: nextButton,\r\n\t\t\t\t\tprevEl: prevButton,\r\n\t\t\t\t},\r\n\t\t\t\tspaceBetween: 32,\r\n\t\t\t}\r\n\t\t},\r\n\t});\r\n\r\n\tif (swiper.slides.length < 5) {\r\n\t\tnavButtons && (navButtons.style.display = \"none\");\r\n\t}\r\n\r\n\tcontainer.addEventListener('keydown', function (event) {\r\n\t\tswitch (event.key) {\r\n\t\t\tcase \"Tab\":\r\n\t\t\t\tif (event.shiftKey) {\r\n\t\t\t\t\tswiper.slidePrev();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tswiper.slideNext();\r\n\t\t\t\t}\r\n\t\t\t\tbreak;\r\n\t\t\tdefault: break;\r\n\t\t}\r\n\t});\r\n\r\n\tswiper.init();\r\n};\r\n\r\nexport default slider;\r\n"],"names":["slider","container","props","pagination","nextButton","prevButton","navButtons","swiper","Swiper","Navigation","Pagination","event"],"mappings":"qDAOA,MAAMA,EAAS,CAACC,EAAwBC,EAAqB,KAAO,CAC7D,MAAAC,EAAaF,EAAU,cAA2B,oBAAoB,EACtEG,EAAaH,EAAU,cAA2B,qBAAqB,EACvEI,EAAaJ,EAAU,cAA2B,qBAAqB,EACvEK,EAAaL,EAAU,cAA2B,kBAAkB,EAEpEM,EAAS,IAAIC,EAAOP,EAAW,CACpC,QAAS,CAACQ,EAAYC,CAAU,EAChC,UAAW,aACX,KAAM,GACN,aAAc,GACd,SAAU,GACV,eAAgB,GAChB,MAAO,IACP,kBAAmB,UACnB,SAAU,CACT,QAAS,GACT,eAAgB,EACjB,EACA,cAAe,OACf,WAAY,CACX,GAAIP,EACJ,UAAW,EACZ,EACA,GAAI,CACH,YAAaD,EAAM,aACpB,EACA,YAAa,CACZ,IAAK,CACJ,WAAY,CACX,OAAQE,EACR,OAAQC,CACT,CACD,EACA,KAAM,CACL,WAAY,CACX,OAAQD,EACR,OAAQC,CACT,EACA,aAAc,EACf,CACD,CAAA,CACA,EAEGE,EAAO,OAAO,OAAS,GACXD,IAAAA,EAAW,MAAM,QAAU,QAGjCL,EAAA,iBAAiB,UAAW,SAAUU,EAAO,CACtD,OAAQA,EAAM,IAAK,CAClB,IAAK,MACAA,EAAM,SACTJ,EAAO,UAAU,EAEjBA,EAAO,UAAU,EAElB,KAEF,CAAA,CACA,EAEDA,EAAO,KAAK,CACb"}