"use strict";
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const keys = require("../../../../core/utils/keys/keys.cjs");
const rem = require("../../../../core/utils/units-converters/rem.cjs");
require("react");
require("react/jsx-runtime");
const getSortedBreakpoints = require("../../../../core/utils/get-sorted-breakpoints/get-sorted-breakpoints.cjs");
require("clsx");
const assignAsideVariables = require("../assign-aside-variables/assign-aside-variables.cjs");
const assignFooterVariables = require("../assign-footer-variables/assign-footer-variables.cjs");
const assignHeaderVariables = require("../assign-header-variables/assign-header-variables.cjs");
const assignNavbarVariables = require("../assign-navbar-variables/assign-navbar-variables.cjs");
const assignPaddingVariables = require("../assign-padding-variables/assign-padding-variables.cjs");
function getVariables({ navbar, header, footer, aside, padding, theme }) {
  const minMediaStyles = {};
  const maxMediaStyles = {};
  const baseStyles = {};
  assignNavbarVariables.assignNavbarVariables({
    baseStyles,
    minMediaStyles,
    maxMediaStyles,
    navbar,
    theme
  });
  assignAsideVariables.assignAsideVariables({
    baseStyles,
    minMediaStyles,
    maxMediaStyles,
    aside,
    theme
  });
  assignHeaderVariables.assignHeaderVariables({ baseStyles, minMediaStyles, header });
  assignFooterVariables.assignFooterVariables({ baseStyles, minMediaStyles, footer });
  assignPaddingVariables.assignPaddingVariables({ baseStyles, minMediaStyles, padding });
  const minMedia = getSortedBreakpoints.getSortedBreakpoints(keys.keys(minMediaStyles), theme.breakpoints).map(
    (breakpoint) => ({
      query: `(min-width: ${rem.em(breakpoint.px)})`,
      styles: minMediaStyles[breakpoint.value]
    })
  );
  const maxMedia = getSortedBreakpoints.getSortedBreakpoints(keys.keys(maxMediaStyles), theme.breakpoints).map(
    (breakpoint) => ({
      query: `(max-width: ${rem.em(breakpoint.px)})`,
      styles: maxMediaStyles[breakpoint.value]
    })
  );
  const media = [...minMedia, ...maxMedia];
  return { baseStyles, media };
}
exports.getVariables = getVariables;
