UNPKG

@hopepaddy/dumi-theme

Version:

dumi-theme-hopepaddy is a documentation site theme package designed for dumi2. It provides a more beautiful and user-friendly development and reading experience based on @lobehub/ui

51 lines 1.87 kB
import { ThemeProvider } from '@lobehub/ui'; import { useLocale, useLocation, useNavData, useOutlet, useRouteMeta, useSidebarData, useSiteData, useTabMeta } from 'dumi'; import isEqual from 'fast-deep-equal'; import { memo, useMemo } from 'react'; import { Provider, createStore as _createStore, useThemeStore } from "../../store"; import Analytics from "../DocLayout/Head/Analytics"; import Favicons from "../DocLayout/Head/Favicons"; import Og from "../DocLayout/Head/Og"; import StructuredData from "../DocLayout/Head/StructuredData"; import GlobalStyle from "./GlobalStyle"; import { jsx as _jsx } from "react/jsx-runtime"; import { jsxs as _jsxs } from "react/jsx-runtime"; var App = /*#__PURE__*/memo(function (_ref) { var initState = _ref.initState; var themeMode = useThemeStore(function (st) { return st.themeMode; }, isEqual); var outlet = useOutlet(); return /*#__PURE__*/_jsxs(Provider, { createStore: function createStore() { return _createStore(initState); }, children: [/*#__PURE__*/_jsx(Favicons, {}), /*#__PURE__*/_jsx(Og, {}), /*#__PURE__*/_jsx(Analytics, {}), /*#__PURE__*/_jsx(StructuredData, {}), /*#__PURE__*/_jsxs(ThemeProvider, { themeMode: themeMode, children: [/*#__PURE__*/_jsx(GlobalStyle, {}), outlet] })] }); }); export default /*#__PURE__*/memo(function () { var siteData = useSiteData(); var sidebar = useSidebarData(); var routeMeta = useRouteMeta(); var tabMeta = useTabMeta(); var navData = useNavData(); var location = useLocation(); var locale = useLocale(); var initState = useMemo(function () { return { locale: locale, location: location, navData: navData, routeMeta: routeMeta, sidebar: sidebar, siteData: siteData, tabMeta: tabMeta }; }, []); return /*#__PURE__*/_jsx(App, { initState: initState }); });