UNPKG

infinity-forge

Version:
35 lines 1.45 kB
"use strict"; //@ts-nocheck Object.defineProperty(exports, "__esModule", { value: true }); exports.default = getBreakpoint; var window_1 = require("../../ssr-window/window.js"); function getBreakpoint(breakpoints, base, containerEl) { if (base === void 0) { base = 'window'; } if (!breakpoints || (base === 'container' && !containerEl)) return undefined; var breakpoint = false; var window = (0, window_1.getWindow)(); 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 _a = points[i], point = _a.point, value = _a.value; if (base === 'window') { if (window.matchMedia("(min-width: ".concat(value, "px)")).matches) { breakpoint = point; } } else if (value <= containerEl.clientWidth) { breakpoint = point; } } return breakpoint || 'max'; } //# sourceMappingURL=getBreakpoint.js.map