alinea
Version:
Headless git-based CMS
57 lines (53 loc) • 1.53 kB
JavaScript
import {
dist_default
} from "../chunks/chunk-A5O3N2GS.js";
import "../chunks/chunk-NZLE2WMY.js";
// src/ui/Main.tsx
import { assign } from "alinea/core/util/Objects";
import { forwardRef } from "react";
import { Loader } from "./Loader.js";
// src/ui/Main.module.scss
var Main_module_default = {
"root": "alinea-Main",
"root-loading": "alinea-Main-loading",
"rootLoading": "alinea-Main-loading",
"root-inner": "alinea-Main-inner",
"rootInner": "alinea-Main-inner",
"is-scrollable": "alinea-Main-is-scrollable",
"isScrollable": "alinea-Main-is-scrollable",
"container": "alinea-Main-container"
};
// src/ui/Main.tsx
import { jsx, jsxs } from "react/jsx-runtime";
var styles = dist_default(Main_module_default);
function MainRoot({
children,
head,
scrollRef,
isLoading,
scrollable = true,
...props
}, ref) {
return /* @__PURE__ */ jsxs("div", { ref, className: styles.root({ scrollable, loading: isLoading }), children: [
head,
/* @__PURE__ */ jsx(
"div",
{
ref: scrollRef,
...props,
className: styles.root.inner.mergeProps(props)(),
children
}
),
isLoading && /* @__PURE__ */ jsx("div", { className: styles.root.loading(), children: /* @__PURE__ */ jsx(Loader, { absolute: true }) })
] });
}
function MainContainer(props) {
return /* @__PURE__ */ jsx("div", { ...props, className: styles.container(dist_default.merge(props)) });
}
var Main = assign(forwardRef(MainRoot), {
Container: MainContainer
});
export {
Main
};