@lobehub/ui
Version:
Lobe UI is an open-source UI component library for building AIGC web apps
90 lines (87 loc) • 2.29 kB
JavaScript
'use client';
import FlexBasic_default from "../../Flex/FlexBasic.mjs";
import { styles } from "./style.mjs";
import Logo3d_default from "../Logo3d/index.mjs";
import LogoFlat_default from "../LogoFlat/index.mjs";
import { icons_default } from "../LogoMono/index.mjs";
import Divider_default from "../components/Divider.mjs";
import LobeHubText_default from "../LobeHubText/index.mjs";
import { memo } from "react";
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
import { cssVar } from "antd-style";
//#region src/brand/LobeHub/index.tsx
const LobeHub = memo(({ type = "3d", size = 32, style, extra, className, ...rest }) => {
let logoComponent;
switch (type) {
case "3d":
logoComponent = /* @__PURE__ */ jsx(Logo3d_default, {
size,
...rest
});
break;
case "flat":
logoComponent = /* @__PURE__ */ jsx(LogoFlat_default, {
size,
style
});
break;
case "mono":
logoComponent = /* @__PURE__ */ jsx(icons_default, {
size,
style
});
break;
case "text":
logoComponent = /* @__PURE__ */ jsx(LobeHubText_default, {
className,
size,
style,
...rest
});
break;
case "combine":
logoComponent = /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(Logo3d_default, {
alt: "LobeChat",
size
}), /* @__PURE__ */ jsx(LobeHubText_default, {
size,
style: { marginLeft: Math.round(size / 4) }
})] });
if (!extra) logoComponent = /* @__PURE__ */ jsx(FlexBasic_default, {
align: "center",
className,
flex: "none",
horizontal: true,
style,
children: logoComponent
});
break;
}
if (!extra) return logoComponent;
const extraSize = Math.round(size / 3 * 1.9);
return /* @__PURE__ */ jsxs(FlexBasic_default, {
align: "center",
className,
flex: "none",
horizontal: true,
style,
...rest,
children: [
logoComponent,
/* @__PURE__ */ jsx(Divider_default, {
size: extraSize,
style: { color: cssVar.colorFill }
}),
/* @__PURE__ */ jsx("div", {
className: styles.extraTitle,
style: { fontSize: extraSize },
children: extra
})
]
});
});
LobeHub.displayName = "LobeHubBrand";
var LobeHub_default = LobeHub;
//#endregion
export { LobeHub_default as default };
//# sourceMappingURL=index.mjs.map