packages/plugin-docs/src2/Overview/index.tsx (43 lines of code) (raw):

import React from "react"; import queryString from "query-string"; import { Toaster } from "react-hot-toast"; import Loader, { entries } from "../Loader"; import styles from "./index.scoped.less"; import DemoList from "./DemoList"; import type { IOverviewProps } from "@alicloud/console-toolkit-docs-shared"; declare const window: Window; const entryKeys = entries.map(({ key }) => key); const Overview: React.FC<IOverviewProps> = ({ entryKey, onEntryKeyChange, ...restLoaderProps }) => { const { loadOpts } = restLoaderProps as any; const isDemoOnly = Boolean(queryString.parseUrl(window.location.href)?.query?.demoOnly); return ( <div> { isDemoOnly && entryKey ? ( <Loader {...restLoaderProps} key={entryKey} entryKey={entryKey} /> ) : ( <div> <Toaster position="bottom-right" /> <DemoList entryKeys={entryKeys} currentEntryKey={entryKey} onChange={onEntryKeyChange} loadOpts={loadOpts} /> <hr /> {entryKey && ( <div className={styles.widgetCtn}> <Loader {...restLoaderProps} key={entryKey} entryKey={entryKey} /> </div> )} </div> ) } </div> ); }; export default Overview;