UNPKG

infinity-forge

Version:
47 lines 1.68 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.renderVirtual = renderVirtual; // @ts-nocheck var react_1 = __importDefault(require("react")); function renderVirtual(swiper, slides, virtualData) { var _a; if (!virtualData) return null; var getSlideIndex = function (index) { var slideIndex = index; if (index < 0) { slideIndex = slides.length + index; } else if (slideIndex >= slides.length) { // eslint-disable-next-line slideIndex = slideIndex - slides.length; } return slideIndex; }; var style = swiper.isHorizontal() ? (_a = {}, _a[swiper.rtlTranslate ? 'right' : 'left'] = "".concat(virtualData.offset, "px"), _a) : { top: "".concat(virtualData.offset, "px"), }; var from = virtualData.from, to = virtualData.to; var loopFrom = swiper.params.loop ? -slides.length : 0; var loopTo = swiper.params.loop ? slides.length * 2 : slides.length; var slidesToRender = []; for (var i = loopFrom; i < loopTo; i += 1) { if (i >= from && i <= to) { slidesToRender.push(slides[getSlideIndex(i)]); } } return slidesToRender.map(function (child, index) { return react_1.default.cloneElement(child, { swiper: swiper, style: style, key: child.props.virtualIndex || child.key || "slide-".concat(index), }); }); } //# sourceMappingURL=virtual.js.map