UNPKG

swiper

Version:

Most modern mobile touch slider and framework with hardware accelerated transitions

42 lines (37 loc) 1.17 kB
import { getWindow } from 'ssr-window'; export default function getBreakpoint(breakpoints, base, containerEl) { if (base === void 0) { base = 'window'; } if (!breakpoints || base === 'container' && !containerEl) return undefined; var breakpoint = false; var window = getWindow(); var currentWidth = base === 'window' ? window.innerWidth : containerEl.clientWidth; var currentHeight = base === 'window' ? window.innerHeight : containerEl.clientHeight; var points = Object.keys(breakpoints).map(function (point) { if (typeof point === 'string' && point.indexOf('@') === 0) { var minRatio = parseFloat(point.substr(1)); var value = currentHeight * minRatio; return { value: value, point: point }; } return { value: point, point: point }; }); points.sort(function (a, b) { return parseInt(a.value, 10) - parseInt(b.value, 10); }); for (var i = 0; i < points.length; i += 1) { var _points$i = points[i], point = _points$i.point, value = _points$i.value; if (value <= currentWidth) { breakpoint = point; } } return breakpoint || 'max'; }