"use strict";
Object.defineProperty(exports, "__esModule", {
    value: true
});
function _export(target, all) {
    for(var name in all)Object.defineProperty(target, name, {
        enumerable: true,
        get: Object.getOwnPropertyDescriptor(all, name).get
    });
}
_export(exports, {
    get breakpoints () {
        return breakpoints;
    },
    get columns () {
        return columns;
    },
    get gutters () {
        return gutters;
    },
    get margins () {
        return margins;
    },
    get mediaQuery () {
        return mediaQuery;
    },
    get sizes () {
        return sizes;
    }
});
const breakpoints = {
    XL: 960,
    L: 769,
    M: 560,
    S: 0
};
const columns = {
    XL: 12,
    L: 8,
    M: 6,
    S: 4
};
const margins = {
    XL: 4,
    L: 3.5,
    M: 3.5,
    S: 1
};
const gutters = {
    XL: 1,
    L: 1,
    M: 1,
    S: 0.5
};
const sizes = Object.keys(breakpoints);
const mediaQuery = (breakpoint, deviceScale = 2)=>{
    const index = sizes.indexOf(breakpoint);
    const nextBreakpoint = sizes[index - 1];
    const min = breakpoints[breakpoint] > 0 ? breakpoints[breakpoint] * deviceScale : null;
    const max = breakpoints[nextBreakpoint] ? (breakpoints[nextBreakpoint] - 1) * deviceScale : null;
    if (min === null && max !== null) {
        return (content)=>`
                @media (max-width: ${max}px) {
                    ${content}
                }
            `;
    }
    if (min !== null && max !== null) {
        return (content)=>`
                @media screen and (min-width: ${min}px) and (max-width: ${max}px) {
                    ${content}
                }
            `;
    }
    return (content)=>`
            @media (min-width: ${min}px) {
                ${content}
            }
        `;
};
