import {
  MainContainer_default
} from "./chunk-GCUTJTFQ.mjs";
import {
  NavVertical_default
} from "./chunk-UADMIDWU.mjs";
import {
  NavCentered_default
} from "./chunk-T3W2N4ZH.mjs";
import {
  NavHorizontal_default
} from "./chunk-BUELSK7Q.mjs";
import {
  NavMini_default
} from "./chunk-YPL3F6PX.mjs";
import {
  Header_default
} from "./chunk-EHH5I7CT.mjs";

// tmp-babel/navigations/web/NavigationLayout/index.js
import { useUISettings } from "@baseapp-frontend/design-system/hooks/web";
import { useBoolean } from "@baseapp-frontend/utils";
import Box from "@mui/material/Box";
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
function _typeof(o) {
  "@babel/helpers - typeof";
  return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) {
    return typeof o2;
  } : function(o2) {
    return o2 && "function" == typeof Symbol && o2.constructor === Symbol && o2 !== Symbol.prototype ? "symbol" : typeof o2;
  }, _typeof(o);
}
function ownKeys(e, r) {
  var t = Object.keys(e);
  if (Object.getOwnPropertySymbols) {
    var o = Object.getOwnPropertySymbols(e);
    r && (o = o.filter(function(r2) {
      return Object.getOwnPropertyDescriptor(e, r2).enumerable;
    })), t.push.apply(t, o);
  }
  return t;
}
function _objectSpread(e) {
  for (var r = 1; r < arguments.length; r++) {
    var t = null != arguments[r] ? arguments[r] : {};
    r % 2 ? ownKeys(Object(t), true).forEach(function(r2) {
      _defineProperty(e, r2, t[r2]);
    }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function(r2) {
      Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));
    });
  }
  return e;
}
function _defineProperty(e, r, t) {
  return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;
}
function _toPropertyKey(t) {
  var i = _toPrimitive(t, "string");
  return "symbol" == _typeof(i) ? i : i + "";
}
function _toPrimitive(t, r) {
  if ("object" != _typeof(t) || !t) return t;
  var e = t[Symbol.toPrimitive];
  if (void 0 !== e) {
    var i = e.call(t, r || "default");
    if ("object" != _typeof(i)) return i;
    throw new TypeError("@@toPrimitive must return a primitive value.");
  }
  return ("string" === r ? String : Number)(t);
}
var NavigationLayout = function NavigationLayout2(_ref) {
  var navData = _ref.navData, LogoIcon = _ref.LogoIcon, LogoProps = _ref.LogoProps, AccountMenu = _ref.AccountMenu, AccountMenuProps = _ref.AccountMenuProps, ToolbarProps = _ref.ToolbarProps, children = _ref.children, _ref$MainContainerPro = _ref.MainContainerProps, MainContainerProps = _ref$MainContainerPro === void 0 ? {} : _ref$MainContainerPro, _ref$MainContainer = _ref.MainContainer, MainContainer = _ref$MainContainer === void 0 ? MainContainer_default : _ref$MainContainer;
  var _useUISettings = useUISettings(), settings = _useUISettings.settings;
  var nav = useBoolean();
  var isNavCentered = (settings === null || settings === void 0 ? void 0 : settings.themeLayout) === "centered";
  var isNavHorizontal = (settings === null || settings === void 0 ? void 0 : settings.themeLayout) === "horizontal";
  var isNavMini = (settings === null || settings === void 0 ? void 0 : settings.themeLayout) === "mini";
  if (isNavCentered) {
    return /* @__PURE__ */ _jsxs(_Fragment, {
      children: [/* @__PURE__ */ _jsx(Header_default, {
        LogoIcon,
        LogoProps,
        onOpenNav: nav.onTrue,
        AccountMenu,
        AccountMenuProps,
        ToolbarProps,
        children: /* @__PURE__ */ _jsx(NavCentered_default, {
          navData,
          openNav: nav.value,
          onCloseNav: nav.onFalse
        })
      }), /* @__PURE__ */ _jsx(MainContainer, _objectSpread(_objectSpread({
        isNavCentered: true
      }, MainContainerProps), {}, {
        children
      }))]
    });
  }
  if (isNavHorizontal) {
    return /* @__PURE__ */ _jsxs(_Fragment, {
      children: [/* @__PURE__ */ _jsx(Header_default, {
        LogoIcon,
        LogoProps,
        onOpenNav: nav.onTrue,
        AccountMenu,
        AccountMenuProps,
        ToolbarProps
      }), /* @__PURE__ */ _jsx(NavHorizontal_default, {
        navData,
        openNav: nav.value,
        onCloseNav: nav.onFalse
      }), /* @__PURE__ */ _jsx(MainContainer, _objectSpread(_objectSpread({
        isNavHorizontal: true
      }, MainContainerProps), {}, {
        children
      }))]
    });
  }
  if (isNavMini) {
    return /* @__PURE__ */ _jsxs(_Fragment, {
      children: [/* @__PURE__ */ _jsx(Header_default, {
        LogoIcon,
        LogoProps,
        onOpenNav: nav.onTrue,
        AccountMenu,
        AccountMenuProps,
        ToolbarProps
      }), /* @__PURE__ */ _jsxs(Box, {
        sx: {
          minHeight: 1,
          display: "flex",
          flexDirection: {
            xs: "column",
            lg: "row"
          }
        },
        children: [/* @__PURE__ */ _jsx(NavMini_default, {
          navData,
          openNav: nav.value,
          onCloseNav: nav.onFalse,
          LogoIcon,
          LogoProps
        }), /* @__PURE__ */ _jsx(MainContainer, _objectSpread(_objectSpread({
          isNavMini: true
        }, MainContainerProps), {}, {
          children
        }))]
      })]
    });
  }
  return /* @__PURE__ */ _jsxs(_Fragment, {
    children: [/* @__PURE__ */ _jsx(Header_default, {
      LogoIcon,
      LogoProps,
      onOpenNav: nav.onTrue,
      AccountMenu,
      AccountMenuProps,
      ToolbarProps
    }), /* @__PURE__ */ _jsxs(Box, {
      sx: {
        minHeight: 1,
        display: "flex",
        flexDirection: {
          xs: "column",
          lg: "row"
        }
      },
      children: [/* @__PURE__ */ _jsx(NavVertical_default, {
        navData,
        LogoIcon,
        LogoProps,
        openNav: nav.value,
        onCloseNav: nav.onFalse
      }), /* @__PURE__ */ _jsx(MainContainer, _objectSpread(_objectSpread({}, MainContainerProps), {}, {
        children
      }))]
    })]
  });
};
var NavigationLayout_default = NavigationLayout;

export {
  NavigationLayout_default
};
//# sourceMappingURL=chunk-OAWGSPML.mjs.map