@hitachivantara/uikit-react-lab
Version:
Contributed React components for the NEXT UI Kit.
64 lines (63 loc) • 1.92 kB
JavaScript
;
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const jsxRuntime = require("react/jsx-runtime");
const react = require("react");
const reactGridLayout = require("react-grid-layout");
const react$1 = require("@emotion/react");
const uikitReactCore = require("@hitachivantara/uikit-react-core");
const Dashboard_styles = require("./Dashboard.styles.cjs");
const GridLayout = reactGridLayout.WidthProvider(reactGridLayout.Responsive);
const defaultCols = {
xs: 12,
sm: 12,
md: 12,
lg: 12,
xl: 12
};
const HvDashboard = (props) => {
const {
children,
className,
layout,
cols: colsProp,
layouts: layoutsProp,
classes: classesProp,
...others
} = uikitReactCore.useDefaultProps("HvDashboard", props);
const { classes, cx } = Dashboard_styles.useClasses(classesProp);
const { activeTheme } = uikitReactCore.useTheme();
const layouts = react.useMemo(() => {
if (layoutsProp) return layoutsProp;
if (!layout) return {};
return { xs: layout, sm: layout, md: layout, lg: layout, xl: layout };
}, [layoutsProp, layout]);
const cols = react.useMemo(() => {
if (!colsProp) return defaultCols;
if (typeof colsProp === "number") {
return {
xs: colsProp,
sm: colsProp,
md: colsProp,
lg: colsProp,
xl: colsProp
};
}
return colsProp;
}, [colsProp]);
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
/* @__PURE__ */ jsxRuntime.jsx(react$1.Global, { styles: Dashboard_styles.gridStyles }),
/* @__PURE__ */ jsxRuntime.jsx(
GridLayout,
{
className: cx(classes.root, className),
breakpoints: activeTheme?.breakpoints.values,
cols,
layouts,
...others,
children
}
)
] });
};
exports.dashboardClasses = Dashboard_styles.staticClasses;
exports.HvDashboard = HvDashboard;