{"componentChunkName":"component---src-templates-post-template-js","path":"/en-US/ai/sidebar","result":{"data":{"current":{"frontmatter":{"title":"Sidebar","order":103,"brief":"Display configuration and detail information in AI scenarios","icon":"doc-sidebar"},"fields":{"type":"ai"},"tableOfContents":{"items":[{"url":"#usage-scenarios","title":"Usage Scenarios"},{"url":"#code-examples","title":"Code Examples","items":[{"url":"#basic-container","title":"Basic Container"},{"url":"#mcp-configuration","title":"MCP Configuration"},{"url":"#references","title":"References"},{"url":"#code-display","title":"Code Display"},{"url":"#code-list","title":"Code List"},{"url":"#rich-text-editor","title":"Rich Text Editor"},{"url":"#rich-text-list","title":"Rich Text List"},{"url":"#sidebar","title":"Sidebar"}]},{"url":"#api-reference","title":"API Reference","items":[{"url":"#container","title":"Container"},{"url":"#mcpconfigure","title":"MCPConfigure","items":[{"url":"#mcpreactoption","title":"MCPReactOption"}]},{"url":"#annotation","title":"Annotation","items":[{"url":"#annotationitem","title":"AnnotationItem"}]},{"url":"#sidebar-1","title":"Sidebar"},{"url":"#code","title":"Code","items":[{"url":"#codeitemprops","title":"CodeItemProps"}]},{"url":"#file","title":"File","items":[{"url":"#filecontent","title":"FileContent"},{"url":"#fileitemprops","title":"FileItemProps"}]}]}]},"body":"var _excluded = [\"components\"];\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }\n/* @jsxRuntime classic */\n/* @jsx mdx */\n\nvar _frontmatter = {\n  \"localeCode\": \"en-US\",\n  \"order\": 103,\n  \"category\": \"Ai\",\n  \"title\": \"Sidebar\",\n  \"icon\": \"doc-sidebar\",\n  \"width\": \"60%\",\n  \"brief\": \"Display configuration and detail information in AI scenarios\",\n  \"showNew\": true\n};\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\nvar ApiType = makeShortcode(\"ApiType\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n    props = _objectWithoutProperties(_ref, _excluded);\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"section\", null, mdx(\"h2\", {\n    parentName: \"section\"\n  }, \"Usage Scenarios\"), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"The Sidebar is mainly used in AI scenarios for information display and feature configuration, including MCP configuration, reference sources, code preview, rich text preview and editing, etc.\")), mdx(\"section\", null, mdx(\"h2\", {\n    parentName: \"section\"\n  }, \"Code Examples\"), mdx(\"h3\", {\n    parentName: \"section\"\n  }, \"Basic Container\"), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"The basic container of the Sidebar is the base container for \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"#mcp-configuration\"\n  }, \"MCP configuration\"), \", \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"#Annotation\"\n  }, \"Annotation\"), \" and \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"#sidebar\"\n  }, \"Sidebar\"), \".\"), mdx(\"ul\", {\n    parentName: \"section\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"visible\"), \" together with \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"onCancel\"), \" is used to control show/hide\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"title\"), \" sets the title\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"motion\"), \" sets whether to enable the expand animation\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"resizable\"), \" sets whether the width is resizable. When \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"true\"), \", you can use \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"minSize\"), \" and \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"maxSize\"), \" to control min and max width\")), mdx(\"pre\", {\n    parentName: \"section\"\n  }, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-jsx\",\n    \"metastring\": \"live=true dir=\\\"column\\\" noInline=true\",\n    \"live\": \"true\",\n    \"dir\": \"\\\"column\\\"\",\n    \"noInline\": \"true\"\n  }, \"import React from 'react';\\nimport { Sidebar, Button, Switch } from '@douyinfe/semi-ui';\\n\\nconst { Container } = Sidebar;\\nconst containerStyle = {\\n    display: 'flex',\\n    height: '500px',\\n    border: '1px solid var(--semi-color-border)',\\n    borderRadius: 8,\\n    overflow: 'hidden',\\n    boxSizing: 'border-box'\\n};\\n\\nconst ContainerDemo = () => {\\n    const [visible, setVisible] = useState(true);\\n    const [motion, setMotion] = useState(true);\\n    const [resizable, setResizable] = useState(true);\\n\\n    const toggleVisible = useCallback(() => {\\n        setVisible(visible => !visible);\\n    }, []);\\n\\n    const onMotionChange = useCallback((checked) => {\\n        setMotion(checked);\\n    }, []);\\n\\n    const onResizableChange = useCallback((checked) => {\\n        setResizable(checked);\\n    }, []);\\n\\n    return <div style={containerStyle}>\\n        <div style={{ flexGrow: 1, flexShrink: 1, padding: 20 }}>\\n            <div>\\n                <Button onClick={toggleVisible}>Click to {visible ? 'Hide' : 'Show'} container</Button>\\n                <div style={{ display: 'flex', alignItems: 'center', marginTop: 10 }}>Animation <Switch checked={motion} onChange={onMotionChange} /></div>\\n                <div style={{ display: 'flex', alignItems: 'center', marginTop: 10 }}>Resizable <Switch checked={resizable} onChange={onResizableChange} /></div>\\n            </div>\\n        </div>\\n        <Container\\n            motion={motion}\\n            resizable={resizable}\\n            minWidth={250}\\n            maxWidth={'60%'}\\n            visible={visible}\\n            title={\\\"Basic container demo\\\"}\\n            style={resizable ? {} : { width: 200 }}\\n            onCancel={toggleVisible}\\n        >   \\n        </Container>\\n    </div>;\\n};\\n\\nrender(<ContainerDemo />);\\n\")), mdx(\"h3\", {\n    parentName: \"section\"\n  }, \"MCP Configuration\"), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"Use \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"MCPConfigure\"), \" to display, enable/disable, configure and search MCP tools.\"), mdx(\"ul\", {\n    parentName: \"section\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Use \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"options\"), \" and \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"customOptions\"), \" to set built\\u2011in MCP tools and custom MCP tools\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Use \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"visible\"), \" to control show and hide, and \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"onCancel\"), \" to listen to user close behavior\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Use \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"onStatusChange\"), \" to handle enabling/disabling of MCP tools\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Use \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"onAddClick\"), \" to handle actions after clicking the Add button in custom MCP page\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Use \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"onConfigureClick\"), \" to listen to configuration of built\\u2011in MCP tools, and \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"onEditClick\"), \" to listen to configuration of custom MCP tools\")), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"For other APIs of MCPConfigure, see \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"#MCPConfigureProps\"\n  }, \"MCPConfigureProps\"), \".\"), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"The type of MCP tool item is as follows:\"), mdx(\"pre\", {\n    parentName: \"section\"\n  }, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-ts\"\n  }, \"interface MCPOption {\\n    icon?: ReactNode;\\n    label?: string;\\n    value?: string;\\n    desc?: ReactNode;\\n    active?: boolean;\\n    disabled?: boolean; \\n    configure?: boolean // whether to show configure button\\n}\\n\")), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"Usage example:\"), mdx(\"pre\", {\n    parentName: \"section\"\n  }, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-jsx\",\n    \"metastring\": \"live=true dir=\\\"column\\\" noInline=true\",\n    \"live\": \"true\",\n    \"dir\": \"\\\"column\\\"\",\n    \"noInline\": \"true\"\n  }, \"import React from 'react';\\nimport { Sidebar, MCPConfigure, Button, Modal, Form } from '@douyinfe/semi-ui';\\nimport { IconSemiLogo, IconFigma } from '@douyinfe/semi-icons';\\n\\nconst defaultOptions = [\\n    {\\n        icon: <IconSemiLogo />,\\n        value: 'Semi mcp',\\n        label: \\\"Semi\\\",\\n        configure: true,\\n        desc: \\\"Support searching Semi docs and source code to assist development\\\"\\n    },\\n    {\\n        icon: <IconFigma />,\\n        value: 'figma',\\n        label: \\\"Figma\\\",\\n        desc: \\\"Figma MCP Server connects Figma with AI development tools. Through Model Context Protocol (MCP), it exposes design data such as components and variables to AI, enabling intelligent generation from design to code and significantly improving development efficiency.\\\"\\n    }\\n];\\n\\nconst CustomOptionCreateModel = (props) => {\\n    const { visible, handleOk, handleCancel, formRef } = props;\\n\\n    return (<Modal\\n        title=\\\"Custom MCP\\\"\\n        visible={visible}\\n        onOk={handleOk}\\n        onCancel={handleCancel}\\n        closeOnEsc={true}\\n    >\\n        <Form\\n            ref={formRef} \\n            layout='vertical' \\n            onValueChange={values=>console.log(values)}\\n        >\\n            <Form.Input \\n                rules={[{ required: true, message: 'Please enter MCP name' }]} \\n                field='name' \\n                label='MCP name' \\n                style={{ width: '100%' }}\\n            />\\n            <Form.Input \\n                initValue={'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/dy.png'}\\n                rules={[\\n                    { required: true, message: 'Please enter MCP icon URL' },\\n                    { \\n                        validator: (rule, value) => {\\n                            const urlRegex = /^(?:https?:\\\\/\\\\/)?(?:www\\\\.)?[a-zA-Z0-9-]+(?:\\\\.[a-zA-Z0-9-]+)+(?:\\\\:\\\\d+)?(?:\\\\/[^\\\\s]*)?$/i;\\n                            return urlRegex.test(value);\\n                        },\\n                        message: 'Please enter a valid MCP icon URL'\\n                    }\\n                ]} \\n                field='src' \\n                label='MCP icon URL' \\n                style={{ width: '100%' }}\\n                \\n            />\\n            <Form.TextArea \\n                rules={[{ required: true, message: 'Please enter MCP description' }]} \\n                field='desc' \\n                label=\\\"MCP description\\\" \\n                style={{ width: '100%' }}\\n            />\\n        </Form>\\n    </Modal>);\\n};\\n\\nconst containerStyle = {\\n    display: 'flex',\\n    height: '500px',\\n    border: '1px solid var(--semi-color-border)',\\n    borderRadius: 8,\\n    overflow: 'hidden',\\n    boxSizing: 'border-box'\\n};\\n\\nlet index = 1;\\n\\nfunction McpConfigureDemo() {\\n    const [visible, setVisible] = useState(true);\\n    const toggleVisible = useCallback(() => {\\n        setVisible(visible => !visible);\\n    }, []);\\n    const [options, setOptions] = useState(defaultOptions);\\n    const [mVisible, setMVisible] = useState(false);\\n    const [customOptions, setCustomOptions] = useState([]);\\n    const formRef = useRef(null);\\n\\n    const handleOk = useCallback(() => {\\n        formRef.current.formApi.validate().then(values => {\\n            const newOptions = [...customOptions, {\\n                label: values.name,\\n                icon: values.src,\\n                value: `mcp-${index++}`,\\n                desc: values.desc\\n            }];\\n            setCustomOptions(newOptions);\\n            setMVisible(false);\\n        }).catch(errors => {\\n            console.log('errors', errors);\\n        });\\n    }, [customOptions]);\\n\\n    const showDialog = useCallback(() => {\\n        setMVisible(true);\\n    }, []);\\n\\n    const handleCancel = useCallback(() => {\\n        setMVisible(false);\\n    }, []);\\n\\n    const onStatusChange = useCallback((options, custom) => {\\n        if (custom) {\\n            setCustomOptions(options);\\n        } else {\\n            setOptions(options);\\n        }\\n    }, []);\\n\\n    const onAddClick = useCallback((e) => {\\n        showDialog();\\n    }, []);\\n\\n    const onConfigureClick = useCallback((e, option) => {\\n        console.log('configure click', option);\\n    }, []);\\n\\n    const onEditClick = useCallback((e, option) => {\\n        console.log('edit click', option);\\n    }, []);\\n\\n    return (<div style={containerStyle}>\\n        <div style={{ flexGrow: 1, flexShrink: 1, padding: 20 }}>\\n            <Button onClick={toggleVisible}>{visible ? 'Close' : 'Open' } MCP configuration </Button>\\n        </div>\\n        <MCPConfigure\\n            style={{ width: 500 }}\\n            resizable={false}\\n            visible={visible}\\n            onCancel={toggleVisible}\\n            options={options}\\n            customOptions={customOptions}\\n            onStatusChange={onStatusChange}\\n            onAddClick={onAddClick}\\n            onConfigureClick={onConfigureClick}\\n            onEditClick={onEditClick}\\n        />\\n        <CustomOptionCreateModel\\n            formRef={formRef}\\n            visible={mVisible}\\n            handleOk={handleOk}\\n            handleCancel={handleCancel}\\n        />\\n    </div>);\\n}\\n\\nrender(<McpConfigureDemo />);\\n\")), mdx(\"h3\", {\n    parentName: \"section\"\n  }, \"References\"), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"Use the \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Annotation\"), \" component to manage the display of reference sources.\"), mdx(\"ul\", {\n    parentName: \"section\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Use \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"activeKey\"), \" together with \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"onChange\"), \" to manage the currently expanded item\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"info\"), \" sets the reference content list\")), mdx(\"pre\", {\n    parentName: \"section\"\n  }, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-jsx\",\n    \"metastring\": \"live=true dir=\\\"column\\\" noInline=true\",\n    \"live\": \"true\",\n    \"dir\": \"\\\"column\\\"\",\n    \"noInline\": \"true\"\n  }, \"import React from 'react';\\nimport { Button, Annotation } from '@douyinfe/semi-ui';\\n\\nconst containerStyle = {\\n    display: 'flex',\\n    height: '500px',\\n    border: '1px solid var(--semi-color-border)',\\n    borderRadius: 8,\\n    overflow: 'hidden',\\n    boxSizing: 'border-box'\\n};\\n\\nconst defaultInfoList = [\\n    {\\n        header: 'Semi design introduction',\\n        key: '1',\\n        annotations: [\\n            {\\n                order: 1,\\n                type: 'video',\\n                duration: 4432,\\n                title: 'Semi Design is a design system',\\n                url: 'https://semi.design/',\\n                logo: 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/dy.png',\\n                siteName: 'Semi Design',\\n                detail: 'A comprehensive, easy-to-use, and high-quality modern enterprise-level application UI solution',\\n                img: 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/abstract.jpg'\\n            },\\n            {\\n                order: 2,\\n                title: 'Quick start',\\n                type: 'video',\\n                duration: 56,\\n                url: 'https://semi.design/',\\n                detail: 'A comprehensive, easy-to-use, and high-quality modern enterprise-level application UI solution',\\n                logo: 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/dy.png',\\n                siteName: 'Semi Design',\\n                img: 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/abstract.jpg'\\n            },\\n            {\\n                order: 3,\\n                title: 'Use components in a modular way',\\n                url: 'https://semi.design/',\\n                detail: `Semi provides dist in esm format, and the css of the component is only imported by the corresponding js.\\nWhen used in Webpack, Rspack, create-react-app or Vite projects, there is no need to configure any extra compilation items.`,\\n                logo: 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/dy.png',\\n                siteName: 'Semi Design',\\n                img: 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/abstract.jpg'\\n            }\\n        ]\\n    },\\n    {\\n        header: 'Design resource',\\n        key: '2',\\n        annotations: [\\n            {\\n                order: 2,\\n                title: 'Semi Design resource',\\n                url: 'https://semi.design/',\\n                detail: 'Semi Design provides a wealth of design resources to help designers and developers collaborate efficiently. Whether you are a community user or an internal ByteDance designer, you can find UI kits and Figma plugins that fit your needs.',\\n                logo: 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/dy.png',\\n                siteName: 'Semi Design resource',\\n                img: 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/abstract.jpg'\\n            }\\n        ]\\n    },\\n];\\n\\nfunction Demo() {\\n    const [visible, setVisible] = useState(true);\\n    const [activeKey, setActiveKey] = useState('1');\\n\\n    const toggleVisible = useCallback(() => {\\n        setVisible(visible => !visible);\\n    }, []);\\n\\n    const onChange = useCallback((key) => {\\n        console.log('onChange', key);\\n        setActiveKey(key);\\n    }, []);\\n\\n    const onClick = useCallback((e, item) => {\\n        console.log('onClick', e, item);\\n    }, []);\\n\\n    return <div style={containerStyle}>\\n        <div style={{ flexGrow: 1, flexShrink: 1, padding: 20 }}>\\n            <Button onClick={toggleVisible}>{visible ? 'Show' : 'Hide'} references </Button>\\n        </div>\\n        <Annotation\\n            defaultSize={{ width: 420 }}\\n            visible={visible}\\n            onCancel={toggleVisible}\\n            activeKey={activeKey}\\n            info={defaultInfoList}\\n            onChange={onChange}\\n            onClick={onClick}\\n        />\\n    </div>;\\n}\\n\\nrender(<Demo />);\\n\\n\")), mdx(\"h3\", {\n    parentName: \"section\"\n  }, \"Code Display\"), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"You can use \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"CodeItem\"), \" in \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Sidebar\"), \" to display code. \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"CodeItem\"), \" is built based on \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https:/lf3-static.semi.design/obj/semi-tos/semi_main/plus/jsonviewer\"\n  }, \"JsonViewer\"), \" and \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https:/lf3-static.semi.design/obj/semi-tos/semi_main/plus/codehighlight\"\n  }, \"CodeHighlight\"), \".\"), mdx(\"ul\", {\n    parentName: \"section\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"content\"), \": content string\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"isJson\"), \": whether the content is json \"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"language\"), \": programming language name, same as \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"language\"), \" in \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"CodeHighlight\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"JsonViewerProps\"), \": configure other JsonViewer props\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"CodeHighlightProps\"), \": configure other CodeHighlight props\")), mdx(\"pre\", {\n    parentName: \"section\"\n  }, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-jsx\",\n    \"metastring\": \"live=true dir=\\\"column\\\" noInline=true\",\n    \"live\": \"true\",\n    \"dir\": \"\\\"column\\\"\",\n    \"noInline\": \"true\"\n  }, \"import React from 'react';\\nimport { Sidebar, RadioGroup, Radio } from '@douyinfe/semi-ui';\\n\\nconst { CodeItem } = Sidebar;\\n\\nconst code = `.semi-animation-react-demo-auto {\\n    button {\\n        height: 50px;\\n        border: 0;\\n        cursor: pointer !important;\\n        background: #777;\\n        color: white;\\n        outline: none;\\n        -webkit-appearance: none;\\n    }\\n\\n    button:hover {\\n        background: #878787;\\n    }\\n\\n    .auto-main {\\n        display: grid;\\n        grid-template-columns: repeat(3, 1fr);\\n        grid-template-rows: auto 1fr;\\n        background: #575757;\\n    }\\n\\n    .content {\\n        grid-column: span 3;\\n    }\\n\\n    .item {\\n        background: indianred;\\n        width: 100%;\\n        overflow: hidden;\\n        color: white;\\n    }\\n\\n    .item p {\\n        margin: 0;\\n        padding: 10px;\\n    }\\n}\\n`;\\n\\nconst json = `{\\n    \\\"axisX\\\": {\\n        \\\"title\\\": {\\n            \\\"visible\\\": false,\\n            \\\"position\\\": \\\"center\\\"\\n        },\\n        \\\"label\\\": {\\n            \\\"visible\\\": true,\\n            \\\"style\\\": {\\n                \\\"fontSize\\\": 12,\\n                \\\"fontWeight\\\": 400,\\n                \\\"lineHeight\\\": 16,\\n                \\\"fontFamily\\\": [\\n                    \\\"Inter\\\"\\n                ],\\n                \\\"fill\\\": \\\"rgba(0, 0, 0, 0.47843137254901963)\\\"\\n            },\\n            \\\"space\\\": 12\\n        }\\n    }\\n}`;\\n\\nconst codeProps = {\\n    content: code,\\n    language: 'css',\\n};\\n\\nconst jsonProps = {\\n    isJson: true,\\n    content: json,\\n};\\n\\nconst CodeDemo = () => {\\n    const [type, setType] = useState('json');\\n    const onRadioChange = useCallback((e) => {\\n        setType(e.target.value);\\n    }, []);\\n\\n    return <>\\n        <RadioGroup\\n            type='button'\\n            buttonSize='middle' \\n            value={type}\\n            onChange={onRadioChange}\\n            style={{ marginBottom: 10 }}\\n        >\\n            <Radio value={'json'}>JSON</Radio>\\n            <Radio value={'css'}>CSS</Radio>\\n        </RadioGroup>\\n        <div style={{ height: 200, overflow: 'auto' }}>\\n            <CodeItem\\n                {...(type === 'json' ? jsonProps : codeProps)}\\n            />\\n        </div>\\n    </>;\\n};\\n\\nrender(<CodeDemo />);\\n\\n\")), mdx(\"h3\", {\n    parentName: \"section\"\n  }, \"Code List\"), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"You can use \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"CodeContent\"), \" in \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Sidebar\"), \" to display a list of code blocks.\"), mdx(\"pre\", {\n    parentName: \"section\"\n  }, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-jsx\",\n    \"metastring\": \"live=true dir=\\\"column\\\" noInline=true\",\n    \"live\": \"true\",\n    \"dir\": \"\\\"column\\\"\",\n    \"noInline\": \"true\"\n  }, \"import React from 'react';\\nimport { Sidebar } from '@douyinfe/semi-ui';\\n\\nconst { CodeContent } = Sidebar;\\n\\nconst defaultCodes = [\\n    {\\n        name: 'Component.js',\\n        key: 'code1',\\n        language: 'javascript',\\n        content: `import React from 'react';\\nimport { AutoComplete } from '@douyinfe/semi-ui';\\nimport { IconSearch } from '@douyinfe/semi-icons';\\n\\n() => {\\n    const [stringData, setStringData] = useState([]);\\n    const [value, setValue] = useState('');\\n    const handleStringSearch = (value) => {\\n        let result;\\n        if (value) {\\n            result = ['gmail.com', '163.com', 'qq.com'].map(domain => value+domain);\\n        } else {\\n            result = [];\\n        }\\n        setStringData(result);\\n    };\\n\\n    const handleChange = (value) => {\\n        console.log('onChange', value);\\n        setValue(value);\\n    };\\n    return (\\n        <AutoComplete\\n            data={stringData}\\n            value={value}\\n            showClear\\n            prefix={<IconSearch />}\\n            placeholder=\\\"Search... \\\"\\n            onSearch={handleStringSearch}\\n            onChange={handleChange}\\n            style={{ width: 200 }}\\n        />\\n    );\\n};\\n` \\n       \\n    }, \\n    {\\n        name: 'Style.css',\\n        key: 'code2',\\n        language: 'css',\\n        content: `.semi-animation-react-demo-auto {\\n    button {\\n        height: 50px;\\n        border: 0;\\n        cursor: pointer !important;\\n        background: #777;\\n        color: white;\\n        outline: none;\\n        -webkit-appearance: none;\\n    }\\n\\n    button:hover {\\n        background: #878787;\\n    }\\n\\n    .auto-main {\\n        display: grid;\\n        grid-template-columns: repeat(3, 1fr);\\n        grid-template-rows: auto 1fr;\\n        background: #575757;\\n    }\\n\\n    .content {\\n        grid-column: span 3;\\n    }\\n\\n    .item {\\n        background: indianred;\\n        width: 100%;\\n        overflow: hidden;\\n        color: white;\\n    }\\n\\n    .item p {\\n        margin: 0;\\n        padding: 10px;\\n    }\\n}\\n`\\n        \\n    },\\n    {\\n        name: 'Chart.json',\\n        key: 'code3',\\n        isJson: true,\\n        language: 'html',\\n        content: `{\\n    \\\"axisX\\\": {\\n        \\\"title\\\": {\\n            \\\"visible\\\": false,\\n            \\\"position\\\": \\\"center\\\"\\n        },\\n        \\\"label\\\": {\\n            \\\"visible\\\": true,\\n            \\\"style\\\": {\\n                \\\"fontSize\\\": 12,\\n                \\\"fontWeight\\\": 400,\\n                \\\"lineHeight\\\": 16,\\n                \\\"fontFamily\\\": [\\n                    \\\"Inter\\\"\\n                ],\\n                \\\"fill\\\": \\\"rgba(0, 0, 0, 0.47843137254901963)\\\"\\n            },\\n            \\\"space\\\": 12\\n        },\\n        \\\"domainLine\\\": {\\n            \\\"visible\\\": true,\\n            \\\"style\\\": {\\n                \\\"lineWidth\\\": 1,\\n                \\\"stroke\\\": \\\"rgba(0, 0, 0, 0.12156862745098039)\\\",\\n                \\\"lineDash\\\": []\\n            }\\n        },\\n        \\\"tick\\\": {\\n            \\\"visible\\\": false,\\n            \\\"style\\\": {\\n                \\\"lineWidth\\\": 1,\\n                \\\"stroke\\\": \\\"rgba(255, 255, 255, 0)\\\"\\n            }\\n        },\\n        \\\"subTick\\\": {\\n            \\\"visible\\\": false\\n        },\\n        \\\"grid\\\": {\\n            \\\"visible\\\": false\\n        },\\n        \\\"subGrid\\\": {\\n            \\\"visible\\\": false\\n        }\\n    }\\n}`\\n       \\n    },\\n];\\n\\nconst Demo = () => {\\n    const [activeKey, setActiveKey] = useState('code1');\\n\\n    const onChange = useCallback((key) => {\\n        setActiveKey(key);\\n    }, []);\\n\\n    return <div className='semi-sidebar-main'>\\n        <CodeContent\\n            style={{ width: 600 }}\\n            activeKey={activeKey}\\n            codes={defaultCodes}\\n            onChange={onChange}\\n        />\\n    </div>;\\n};\\n\\nrender(<Demo />);\\n\")), mdx(\"h3\", {\n    parentName: \"section\"\n  }, \"Rich Text Editor\"), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"You can use \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"FileItem\"), \" in \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Sidebar\"), \" to view and edit rich text content. \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"FileItem\"), \" is implemented based on \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://tiptap.dev/docs/editor/getting-started/overview\"\n  }, \"tiptap\"), \".\"), mdx(\"ul\", {\n    parentName: \"section\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"content\"), \": rich text content, supports the same types as TiptapContent\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"editable\"), \": whether the content is editable\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"imgUploadProps\"), \": configure image upload endpoint and how to set the src after upload. Use \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"action\"), \" to set upload url and \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"getUploadImageSrc\"), \" to return the uploaded image url, which will be used as src of img node in rich text\")), mdx(\"pre\", {\n    parentName: \"section\"\n  }, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-jsx\",\n    \"metastring\": \"live=true dir=\\\"column\\\" noInline=true\",\n    \"live\": \"true\",\n    \"dir\": \"\\\"column\\\"\",\n    \"noInline\": \"true\"\n  }, \"import React from 'react';\\nimport { Button, Sidebar, RadioGroup } from '@douyinfe/semi-ui';\\n\\nconst { FileItem } = Sidebar;\\n\\nconst defaultFileContent = `<h2>\\n  Semi Design Introduction\\n</h2>\\n<p>\\n  Semi Design is a design system designed, developed and maintained by the <strong>Douyin front-end team</strong> and the MED product design team. As a comprehensive, easy-to-use and high-quality modern application UI solution, Semi Design is refined from complex scenarios of various ByteDance business lines. It currently supports nearly a thousand platform products and serves more than 100,000 internal and external users. For details, see https://semi.design/start/introduction. The main features of Semi Design include:\\n</p>\\n<ul>\\n  <li>\\n    Simple and modern design.\\n  </li>\\n  <li>\\n    Theming solution with deeply customizable styles.\\n  </li>\\n</ul>\\n<p>\\n  Internationalization support for Simplified Chinese, Traditional Chinese, English, Japanese, Korean, Portuguese and 20+ other languages. Date and time components support global time zones, and all components automatically adapt to RTL layout for Arabic.\\n</p>\\n<pre><code class=\\\"language-css\\\">body {\\n  display: none;\\n}</code></pre>\\n<p>\\n  Based on the Foundation and Adapter cross-framework technical solution, it is easy to extend.\\n</p>\\n<blockquote>\\n  Semi Design is a design system designed, developed and maintained by the Douyin front-end team and the MED product design team.\\n  <br />\\n  \\u2014 Semi Design\\n</blockquote>`;\\n\\nconst imgUploadProps = {\\n    action: 'https://api.semi.design/upload',\\n    getUploadImageSrc: (response) => {\\n        // response is the result returned from action. This is only a demo.\\n        // In real use you can read response and return the actual image url.\\n        return 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/dy.png';\\n    },\\n};\\n\\nconst FileDemo = () => {\\n    const [editable, setEditable] = useState(true);\\n    const [content, setContent] = useState(defaultFileContent);\\n    const toggleEditable = useCallback(() => {\\n        setEditable(editable => !editable);\\n    }, []);\\n\\n    return <>\\n        <Button onClick={toggleEditable}>Editable: {editable ? 'Yes' : 'No'}</Button>\\n        <br /><br />\\n        <FileItem\\n            content={content}\\n            // onContentChange={(props) => { console.log('onContentChange', props); }}\\n            editable={editable}\\n            style={{ border: '1px solid var(--semi-color-border)', padding: 12 }}\\n            imgUploadProps={imgUploadProps}\\n        />\\n    </>;\\n};\\n\\nrender(<FileDemo />);\\n\\n\")), mdx(\"h3\", {\n    parentName: \"section\"\n  }, \"Rich Text List\"), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"You can use \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"FileContent\"), \" in \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Sidebar\"), \" to display a list of rich text documents.\"), mdx(\"pre\", {\n    parentName: \"section\"\n  }, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-jsx\",\n    \"metastring\": \"live=true dir=\\\"column\\\" noInline=true\",\n    \"live\": \"true\",\n    \"dir\": \"\\\"column\\\"\",\n    \"noInline\": \"true\"\n  }, \"import React from 'react';\\nimport { Sidebar } from '@douyinfe/semi-ui';\\n\\nconst { FileContent } = Sidebar;\\n\\nconst defaultFiles = [\\n    {\\n        key: 'file1',\\n        name: 'Semi Design Introduction',\\n        content: `\\n<h2>\\n  Semi Design Introduction\\n</h2>\\n<p>\\n  Semi Design is a design system designed, developed and maintained by the <strong>Douyin front-end team</strong> and the MED product design team. As a comprehensive, easy-to-use and high-quality modern application UI solution, Semi Design is refined from complex scenarios of various ByteDance business lines. It currently supports nearly a thousand platform products and serves more than 100,000 internal and external users. For details, see https://semi.design/start/introduction. The main features of Semi Design include:\\n</p>\\n<ul>\\n  <li>\\n    Simple and modern design.\\n  </li>\\n  <li>\\n    Theming solution with deeply customizable styles.\\n  </li>\\n</ul>\\n<p>\\n  Internationalization support for Simplified Chinese, Traditional Chinese, English, Japanese, Korean, Portuguese and 20+ other languages. Date and time components support global time zones, and all components automatically adapt to RTL layout for Arabic.\\n</p>\\n<pre><code class=\\\"language-css\\\">body {\\n  display: none;\\n}</code></pre>\\n<p>\\n  Based on the Foundation and Adapter cross-framework technical solution, it is easy to extend.\\n</p>\\n<blockquote>\\n  Semi Design is a design system designed, developed and maintained by the Douyin front-end team and the MED product design team.\\n  <br />\\n  \\u2014 Semi Design\\n</blockquote>\\n<p>\\n  Semi Design is a design system designed, developed and maintained by the <strong>Douyin front-end team</strong> and the MED product design team. As a comprehensive, easy-to-use and high-quality modern application UI solution, Semi Design is refined from complex scenarios of various ByteDance business lines. It currently supports nearly a thousand platform products and serves more than 100,000 internal and external users. For details, see https://semi.design/start/introduction. The main features of Semi Design include:\\n</p>\\n<ul>\\n  <li>\\n    Simple and modern design.\\n  </li>\\n  <li>\\n    Theming solution with deeply customizable styles.\\n  </li>\\n</ul>\\n<p>\\n  Internationalization support for Simplified Chinese, Traditional Chinese, English, Japanese, Korean, Portuguese and 20+ other languages. Date and time components support global time zones, and all components automatically adapt to RTL layout for Arabic.\\n</p>\\n<pre><code class=\\\"language-css\\\">body {\\n  display: none;\\n}</code></pre>\\n<p>\\n  Based on the Foundation and Adapter cross-framework technical solution, it is easy to extend.\\n</p>\\n<blockquote>\\n  Semi Design is a design system designed, developed and maintained by the Douyin front-end team and the MED product design team.\\n  <br />\\n  \\u2014 Semi Design\\n</blockquote>\\n<p>\\n  Semi Design is a design system designed, developed and maintained by the <strong>Douyin front-end team</strong> and the MED product design team. As a comprehensive, easy-to-use and high-quality modern application UI solution, Semi Design is refined from complex scenarios of various ByteDance business lines. It currently supports nearly a thousand platform products and serves more than 100,000 internal and external users. For details, see https://semi.design/start/introduction. The main features of Semi Design include:\\n</p>\\n<ul>\\n  <li>\\n    Simple and modern design.\\n  </li>\\n  <li>\\n    Theming solution with deeply customizable styles.\\n  </li>\\n</ul>\\n<p>\\n  Internationalization support for Simplified Chinese, Traditional Chinese, English, Japanese, Korean, Portuguese and 20+ other languages. Date and time components support global time zones, and all components automatically adapt to RTL layout for Arabic.\\n</p>\\n<pre><code class=\\\"language-css\\\">body {\\n  display: none;\\n}</code></pre>\\n<p>\\n  Based on the Foundation and Adapter cross-framework technical solution, it is easy to extend.\\n</p>\\n<blockquote>\\n  Semi Design is a design system designed, developed and maintained by the Douyin front-end team and the MED product design team.\\n  <br />\\n  \\u2014 Semi Design\\n</blockquote>\\n`,\\n    },\\n    {\\n        key: 'file2',\\n        name: 'Semi Design DSM',\\n        content: `<h2>\\n  Semi Design DSM\\n</h2>\\n<p>Semi DSM is a design system management tool provided by Semi Design. It supports global and component-level style customization and keeps synchronization between Figma and front-end code. It is suitable for teams of all sizes. Whether you need to simplify workflows, improve team collaboration, or increase productivity, we provide features that work for you.</p>\\n`\\n    },\\n    {\\n        key: 'file3',\\n        name: 'React v19 Adaptation',\\n        content: `<h2>\\n  React v19 Adaptation\\n</h2>\\n<p>Since the release of React v19, React has introduced numerous underlying mechanism and API changes, including upgrades and adjustments to the render mechanism, ref, context, TypeScript types, and related deprecated APIs. To ensure that the Semi Design component library is smoothly compatible with both React v19 and lower versions, we provide the original component package @douyinfe/semi-ui for React versions below v19, as well as a new package @douyinfe/semi-ui-19 specifically adapted for React v19, so users can choose as needed. This guide will help you understand how to install, use, and the precautions to take.\\nInstallation & Usage\\nIf your project is using React v19, please use @douyinfe/semi-ui-19. For React versions below v19, continue using @douyinfe/semi-ui as before.</p>\\n`\\n    },\\n];\\n\\nconst Demo = () => {\\n    const [activeKey, setActiveKey] = useState('file1');\\n\\n    const onChange = useCallback((key) => {\\n        setActiveKey(key);\\n    }, []);\\n\\n    return <div className='semi-sidebar-main'>\\n        <FileContent\\n            style={{ width: 600 }}\\n            activeKey={activeKey}\\n            files={defaultFiles}\\n            onChange={onChange}\\n        />\\n    </div>;\\n};\\n\\nrender(<Demo />);\\n\")), mdx(\"h3\", {\n    parentName: \"section\"\n  }, \"Sidebar\"), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"The \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Sidebar\"), \" has a main view (\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"mode\"), \" is \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"main\"), \") and detail views (\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"mode\"), \" is \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"code\"), \", \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"text\"), \" and other custom values).\"), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"In the main view you can configure the title through \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"title\"), \", decide whether to show close button through \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"showClose\"), \", and configure top button group through \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"options\"), \".\"), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"For content rendering in the main view, you can pass a render function via \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"renderMainContent\"), \". You can use \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"AnnotationContent\"), \" in \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Annotation\"), \" to render references, \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"FileContent\"), \" in \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Sidebar\"), \" to render rich text, and \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"CodeContent\"), \" to render code.\"), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"For detail views, if the content is rich text or code, set \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"mode\"), \" to \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"code\"), \" or \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"text\"), \" and provide \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"detailContent\"), \" to display the content with built-in code display component / rich text editor. If you want to customize how the detail view is rendered, you can use \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"renderDetailContent\"), \" to handle it yourself.\"), mdx(\"pre\", {\n    parentName: \"section\"\n  }, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-jsx\",\n    \"metastring\": \"live=true dir=\\\"column\\\" noInline=true\",\n    \"live\": \"true\",\n    \"dir\": \"\\\"column\\\"\",\n    \"noInline\": \"true\"\n  }, \"import React from 'react';\\nimport { Sidebar, Annotation } from '@douyinfe/semi-ui';\\nimport { IconSearch, IconBriefStroked, IconCodeStroked, IconModalStroked } from '@douyinfe/semi-icons';\\n\\nconst { FileContent, CodeContent } = Sidebar;\\nconst { AnnotationContent } = Annotation;\\n\\nconst containerStyle = {\\n    display: 'flex',\\n    height: '800px',\\n    border: '1px solid var(--semi-color-border)',\\n    borderRadius: 8,\\n    overflow: 'hidden',\\n    boxSizing: 'border-box'\\n};\\n\\nconst optionList = [\\n    {\\n        icon: <IconSearch />,\\n        name: 'Search result',\\n        key: 'searchResult'\\n    },\\n    {\\n        icon: <IconBriefStroked />,\\n        name: 'File preview',\\n        key: 'filePreview'\\n    },\\n    {\\n        icon: <IconCodeStroked />,\\n        name: 'Code preview',\\n        key: 'codePreview'\\n    },\\n    {\\n        icon: <IconModalStroked />,\\n        name: 'Browser',\\n        key: 'network'\\n    }\\n];\\n\\nconst defaultCodes = [\\n    {\\n        name: 'Component.js',\\n        key: 'code1',\\n        language: 'javascript',\\n        content: `import React from 'react';\\nimport { AutoComplete } from '@douyinfe/semi-ui';\\nimport { IconSearch } from '@douyinfe/semi-icons';\\n\\n() => {\\n    const [stringData, setStringData] = useState([]);\\n    const [value, setValue] = useState('');\\n    const handleStringSearch = (value) => {\\n        let result;\\n        if (value) {\\n            result = ['gmail.com', '163.com', 'qq.com'].map(domain => value+domain);\\n        } else {\\n            result = [];\\n        }\\n        setStringData(result);\\n    };\\n\\n    const handleChange = (value) => {\\n        console.log('onChange', value);\\n        setValue(value);\\n    };\\n    return (\\n        <AutoComplete\\n            data={stringData}\\n            value={value}\\n            showClear\\n            prefix={<IconSearch />}\\n            placeholder=\\\"Search... \\\"\\n            onSearch={handleStringSearch}\\n            onChange={handleChange}\\n            style={{ width: 200 }}\\n        />\\n    );\\n};\\n`\\n       \\n    }, \\n    {\\n        name: 'Style.css',\\n        key: 'code2',\\n        language: 'css',\\n        content: `.semi-animation-react-demo-auto {\\n    button {\\n        height: 50px;\\n        border: 0;\\n        cursor: pointer !important;\\n        background: #777;\\n        color: white;\\n        outline: none;\\n        -webkit-appearance: none;\\n    }\\n\\n    button:hover {\\n        background: #878787;\\n    }\\n\\n    .auto-main {\\n        display: grid;\\n        grid-template-columns: repeat(3, 1fr);\\n        grid-template-rows: auto 1fr;\\n        background: #575757;\\n    }\\n\\n    .content {\\n        grid-column: span 3;\\n    }\\n\\n    .item {\\n        background: indianred;\\n        width: 100%;\\n        overflow: hidden;\\n        color: white;\\n    }\\n\\n    .item p {\\n        margin: 0;\\n        padding: 10px;\\n    }\\n}\\n`\\n        \\n    },\\n    {\\n        name: 'Chart.json',\\n        key: 'code3',\\n        isJson: true,\\n        language: 'html',\\n        content: `{\\n    \\\"axisX\\\": {\\n        \\\"title\\\": {\\n            \\\"visible\\\": false,\\n            \\\"position\\\": \\\"center\\\"\\n        },\\n        \\\"label\\\": {\\n            \\\"visible\\\": true,\\n            \\\"style\\\": {\\n                \\\"fontSize\\\": 12,\\n                \\\"fontWeight\\\": 400,\\n                \\\"lineHeight\\\": 16,\\n                \\\"fontFamily\\\": [\\n                    \\\"Inter\\\"\\n                ],\\n                \\\"fill\\\": \\\"rgba(0, 0, 0, 0.47843137254901963)\\\"\\n            },\\n            \\\"space\\\": 12\\n        },\\n        \\\"domainLine\\\": {\\n            \\\"visible\\\": true,\\n            \\\"style\\\": {\\n                \\\"lineWidth\\\": 1,\\n                \\\"stroke\\\": \\\"rgba(0, 0, 0, 0.12156862745098039)\\\",\\n                \\\"lineDash\\\": []\\n            }\\n        },\\n        \\\"tick\\\": {\\n            \\\"visible\\\": false,\\n            \\\"style\\\": {\\n                \\\"lineWidth\\\": 1,\\n                \\\"stroke\\\": \\\"rgba(255, 255, 255, 0)\\\"\\n            }\\n        },\\n        \\\"subTick\\\": {\\n            \\\"visible\\\": false\\n        },\\n        \\\"grid\\\": {\\n            \\\"visible\\\": false\\n        },\\n        \\\"subGrid\\\": {\\n            \\\"visible\\\": false\\n        }\\n    }\\n}`\\n    },\\n];\\n\\nconst defaultFiles = [\\n    {\\n        key: 'file1',\\n        name: 'Semi Design Introduction',\\n        content: `\\n<h2>\\n  Semi Design Introduction\\n</h2>\\n<p>\\n  Semi Design is a design system designed, developed and maintained by the <strong>Douyin front-end team</strong> and the MED product design team. As a comprehensive, easy-to-use and high-quality modern application UI solution, Semi Design is refined from complex scenarios of various ByteDance business lines. It currently supports nearly a thousand platform products and serves more than 100,000 internal and external users. For details, see https://semi.design/start/introduction. The main features of Semi Design include:\\n</p>\\n<ul>\\n  <li>\\n    Simple and modern design.\\n  </li>\\n  <li>\\n    Theming solution with deeply customizable styles.\\n  </li>\\n</ul>\\n<p>\\n  Internationalization support for Simplified Chinese, Traditional Chinese, English, Japanese, Korean, Portuguese and 20+ other languages. Date and time components support global time zones, and all components automatically adapt to RTL layout for Arabic.\\n</p>\\n<pre><code class=\\\"language-css\\\">body {\\n  display: none;\\n}</code></pre>\\n<p>\\n  Based on the Foundation and Adapter cross-framework technical solution, it is easy to extend.\\n</p>\\n<blockquote>\\n  Semi Design is a design system designed, developed and maintained by the Douyin front-end team and the MED product design team.\\n  <br />\\n  \\u2014 Semi Design\\n</blockquote>\\n<p>\\n  Semi Design is a design system designed, developed and maintained by the <strong>Douyin front-end team</strong> and the MED product design team. As a comprehensive, easy-to-use and high-quality modern application UI solution, Semi Design is refined from complex scenarios of various ByteDance business lines. It currently supports nearly a thousand platform products and serves more than 100,000 internal and external users. For details, see https://semi.design/start/introduction. The main features of Semi Design include:\\n</p>\\n<ul>\\n  <li>\\n    Simple and modern design.\\n  </li>\\n  <li>\\n    Theming solution with deeply customizable styles.\\n  </li>\\n</ul>\\n<p>\\n  Internationalization support for Simplified Chinese, Traditional Chinese, English, Japanese, Korean, Portuguese and 20+ other languages. Date and time components support global time zones, and all components automatically adapt to RTL layout for Arabic.\\n</p>\\n<pre><code class=\\\"language-css\\\">body {\\n  display: none;\\n}</code></pre>\\n<p>\\n  Based on the Foundation and Adapter cross-framework technical solution, it is easy to extend.\\n</p>\\n<blockquote>\\n  Semi Design is a design system designed, developed and maintained by the Douyin front-end team and the MED product design team.\\n  <br />\\n  \\u2014 Semi Design\\n</blockquote>\\n<p>\\n  Semi Design is a design system designed, developed and maintained by the <strong>Douyin front-end team</strong> and the MED product design team. As a comprehensive, easy-to-use and high-quality modern application UI solution, Semi Design is refined from complex scenarios of various ByteDance business lines. It currently supports nearly a thousand platform products and serves more than 100,000 internal and external users. For details, see https://semi.design/start/introduction. The main features of Semi Design include:\\n</p>\\n<ul>\\n  <li>\\n    Simple and modern design.\\n  </li>\\n  <li>\\n    Theming solution with deeply customizable styles.\\n  </li>\\n</ul>\\n<p>\\n  Internationalization support for Simplified Chinese, Traditional Chinese, English, Japanese, Korean, Portuguese and 20+ other languages. Date and time components support global time zones, and all components automatically adapt to RTL layout for Arabic.\\n</p>\\n<pre><code class=\\\"language-css\\\">body {\\n  display: none;\\n}</code></pre>\\n<p>\\n  Based on the Foundation and Adapter cross-framework technical solution, it is easy to extend.\\n</p>\\n<blockquote>\\n  Semi Design is a design system designed, developed and maintained by the Douyin front-end team and the MED product design team.\\n  <br />\\n  \\u2014 Semi Design\\n</blockquote>\\n`,\\n    },\\n    {\\n        key: 'file2',\\n        name: 'Semi Design DSM',\\n        content: `<h2>\\n  Semi Design DSM\\n</h2>\\n<p>Semi DSM is a design system management tool provided by Semi Design. It supports global and component-level style customization and keeps synchronization between Figma and front-end code. It is suitable for teams of all sizes. Whether you need to simplify workflows, improve team collaboration, or increase productivity, we provide features that work for you.</p>\\n`\\n    },\\n    {\\n        key: 'file3',\\n        name: 'React v19 Adaptation',\\n        content: `<h2>\\n  React v19 Adaptation\\n</h2>\\n<p>Since the release of React v19, React has introduced numerous underlying mechanism and API changes, including upgrades and adjustments to the render mechanism, ref, context, TypeScript types, and related deprecated APIs. To ensure that the Semi Design component library is smoothly compatible with both React v19 and lower versions, we provide the original component package @douyinfe/semi-ui for React versions below v19, as well as a new package @douyinfe/semi-ui-19 specifically adapted for React v19, so users can choose as needed. This guide will help you understand how to install, use, and the precautions to take.\\nInstallation & Usage\\nIf your project is using React v19, please use @douyinfe/semi-ui-19. For React versions below v19, continue using @douyinfe/semi-ui as before.</p>\\n`\\n    },\\n];\\n\\nconst defaultInfoList = [\\n    {\\n        header: 'Semi design introduction',\\n        key: '1',\\n        annotations: [\\n            {\\n                order: 1,\\n                type: 'video',\\n                duration: 4432,\\n                title: 'Semi Design is a design system designed',\\n                url: 'https://semi.design/',\\n                logo: 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/dy.png',\\n                siteName: 'Semi Design',\\n                detail: ' As a comprehensive, easy-to-use, and high-quality modern enterprise-level application UI solution',\\n                img: 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/abstract.jpg'\\n            },\\n            {\\n                order: 2,\\n                title: 'Quick start',\\n                type: 'video',\\n                duration: 56,\\n                url: 'https://semi.design/',\\n                detail: ' As a comprehensive, easy-to-use, and high-quality modern enterprise-level application UI solution',\\n                logo: 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/dy.png',\\n                siteName: 'Semi Design',\\n                img: 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/abstract.jpg'\\n            },\\n            {\\n                order: 3,\\n                title: 'Use components in a modular way',\\n                url: 'https://semi.design/',\\n                detail: `Semi provides esm format dist, and the css of the component is only imported by the corresponding js.\\nWhen used in Webpack, Rspack, create-react-app or Vite projects, there is no need to configure any compilation items.`,\\n                logo: 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/dy.png',\\n                siteName: 'Semi Design',\\n                img: 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/abstract.jpg'\\n            }\\n        ]\\n    },\\n    {\\n        header: 'Design resource',\\n        key: '2',\\n        annotations: [\\n            {\\n                order: 2,\\n                title: 'Semi Design resource',\\n                url: 'https://semi.design/',\\n                detail: 'Semi Design provides a wealth of design resources to help designers and developers collaborate efficiently. Whether you are a community user or a ByteDance internal designer, you can find UI Kit resource and Figma plug-ins that suit you here.',\\n                logo: 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/dy.png',\\n                siteName: 'Semi Design resource',\\n                img: 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/abstract.jpg'\\n            }\\n        ]\\n    },\\n];\\n\\nconst imgUploadProps = {\\n    action: 'https://api.semi.design/upload',\\n    getUploadImageSrc: (response) => {\\n        // response is the result returned from action. This is only a demo.\\n        // In real use you can read response and return the actual image url.\\n        return 'https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/dy.png';\\n    },\\n};\\n\\nconst SideBarDemo = () => {\\n    const [mode, setMode] = useState('main');\\n    const [activeKey, setActiveKey] = useState('codePreview');\\n    const [activeCodeKey, setActiveCodeKey] = useState('code1');\\n    const [activeFileKey, setActiveFileKey] = useState('file1');\\n    const [activeReferKey, setActiveReferKey] = useState('1');\\n    const [currentDetail, setCurrentDetail] = useState();\\n\\n    const onExpand = useCallback((e, content, mode) => {\\n        setMode(mode);\\n        setCurrentDetail(content);\\n    }, []);\\n\\n    const onActiveCodeKeyChange = useCallback((codeKey) => {\\n        setActiveCodeKey(codeKey);\\n    }, []);\\n\\n    const onActiveFileKeyChange = useCallback((fileKey) => {\\n        setActiveFileKey(fileKey);\\n    }, []);\\n\\n    const onActiveReferKeyChange = useCallback((referKey) => {\\n        setActiveReferKey(referKey);\\n    }, []);\\n\\n    const renderMainContent = useCallback((activeKey) => {\\n        switch (activeKey) {\\n            case 'searchResult':\\n                return <AnnotationContent\\n                    activeKey={activeReferKey}\\n                    info={defaultInfoList}\\n                    onChange={onActiveReferKeyChange}\\n                />;\\n            case 'filePreview':\\n                return <FileContent\\n                    activeKey={activeFileKey}\\n                    files={defaultFiles}\\n                    onExpand={onExpand}\\n                    onChange={onActiveFileKeyChange}\\n                />;\\n            case 'codePreview':\\n                return <CodeContent\\n                    activeKey={activeCodeKey}\\n                    codes={defaultCodes}\\n                    onExpand={onExpand}\\n                    onChange={onActiveCodeKeyChange}\\n                />;\\n            case 'network':\\n                return <img\\n                    alt='network' \\n                    src=\\\"https://lf3-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/root-web-sites/test.jpg\\\"\\n                    style={{ width: '100%' }}\\n                />;\\n            default:\\n                return;\\n        } \\n    }, [activeCodeKey, activeFileKey, activeReferKey]);\\n\\n    const renderDetailContent = useCallback((mode) => {\\n        switch (mode) {\\n            default:\\n                return;\\n        }\\n    }, []);\\n    \\n    const onActiveOptionChange = useCallback((e, key) => {\\n        setActiveKey(key);\\n    }, []);\\n\\n    const onBackWard = useCallback((e, mode) => {\\n        setMode(mode);\\n    }, []);\\n\\n    return <div style={containerStyle}>\\n        <div style={{ flexGrow: 1, flexShrink: 1, padding: 20 }}>Workspace placeholder</div>\\n        <Sidebar\\n            showClose={false}\\n            visible={true}\\n            motion={false}\\n            title=\\\"Agent \\u7684\\u5DE5\\u4F5C\\u7A7A\\u95F4\\\"\\n            mode={mode}\\n            defaultSize={{ width: '60%' }}\\n            onActiveOptionChange={onActiveOptionChange}\\n            activeKey={activeKey}\\n            options={optionList}\\n            onBackWard={onBackWard}\\n            renderMainContent={renderMainContent}\\n            renderDetailContent={renderDetailContent}\\n            onExpand={onExpand}\\n            detailContent={currentDetail}\\n            imgUploadProps={imgUploadProps}\\n        />\\n    </div>;\\n};\\n\\nrender(<SideBarDemo />);\\n\"))), mdx(\"section\", null, mdx(\"h2\", {\n    parentName: \"section\"\n  }, \"API Reference\"), mdx(\"h3\", {\n    parentName: \"section\"\n  }, \"Container\"), mdx(\"table\", {\n    parentName: \"section\"\n  }, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Property\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Description\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Type\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Default\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"afterVisibleChange\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback fired after visible state changes\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(isVisible: boolean) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"className\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom class name\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"containerRef\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Ref of the container element\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"React.RefObject<HTMLDivElement\", \">\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"defaultSize\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Default size (width/height), only effective when resizable is true\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"{ width?: number \", \"|\", \" string; height?: number \", \"|\", \" string }\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"maxWidth\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Max width, only effective when resizable is true\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string \", \"|\", \" number\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"minWidth\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Min width, only effective when resizable is true\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string \", \"|\", \" number\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"motion\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Whether to enable animation\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"boolean\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"true\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onCancel\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback fired when user cancels/closes\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(e: any) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"renderHeader\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom header render function\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"() => ReactNode\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"resizable\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Whether the container is resizable\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"boolean\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"true\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"showClose\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Whether to show close button\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"boolean\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"true\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"style\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom inline style\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"CSSProperties\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"title\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Title content\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"ReactNode\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"visible\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Whether the container is visible\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"boolean\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")))), mdx(\"h3\", {\n    parentName: \"section\"\n  }, \"MCPConfigure\"), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"Supports all props of \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"#Container\"\n  }, \"Container\"), \".\"), mdx(\"table\", {\n    parentName: \"section\"\n  }, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Property\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Description\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Type\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Default\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"className\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom class name\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"customOptions\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom MCP options\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"a\", {\n    parentName: \"td\",\n    \"href\": \"#MCPReactOption\"\n  }, \"MCPReactOption\"), \"[]\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"filter\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Filter function to filter options by input value\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(inputValue: string, option: MCPReactOption) => boolean\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onAddClick\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback when Add button is clicked\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(e: MouseEvent) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onConfigureClick\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback when configure button of built\\u2011in MCP is clicked\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(e: MouseEvent, option: MCPReactOption) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onEditClick\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback when edit button of custom MCP is clicked\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(e: MouseEvent, option: MCPReactOption) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onSearch\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback when search is triggered, returns input value and whether it targets custom MCP\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(inputValue: string, custom: boolean) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onStatusChange\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback when status changes, returns options and whether they are custom\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(options: MCPReactOption[], custom: boolean) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"options\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Built\\u2011in MCP options\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"MCPReactOption[]\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"placeholder\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Input placeholder\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Please enter\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"renderItem\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom option render function\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(option: MCPReactOption,custom: boolean) => ReactNode\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"style\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom inline style\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"CSSProperties\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")))), mdx(\"h4\", {\n    parentName: \"section\"\n  }, \"MCPReactOption\"), mdx(\"table\", {\n    parentName: \"section\"\n  }, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Property\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Description\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Type\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Default\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"active\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Whether this MCP is active\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"boolean\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"false\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"configure\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Whether to show configuration related operation/indicator\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"boolean\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"false\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"desc\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Description content\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"ReactNode\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"disabled\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Whether this MCP is disabled. When true, users cannot toggle its active state\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"boolean\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"false\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"icon\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Icon element\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"ReactNode\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"label\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Label text\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"value\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Value\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")))), mdx(\"h3\", {\n    parentName: \"section\"\n  }, \"Annotation\"), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"Supports all props of \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"#Container\"\n  }, \"Container\"), \".\"), mdx(\"table\", {\n    parentName: \"section\"\n  }, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Property\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Description\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Type\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Default\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"activeKey\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Active key(s). Supports single or multiple values\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string \", \"|\", \" string[]\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  })), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"className\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom class name\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  })), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"info\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Annotation info list including header, key and reference details\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"{ header: React.ReactNode; key: string; annotations: \", mdx(\"a\", {\n    parentName: \"td\",\n    \"href\": \"#AnnotationItem\"\n  }, \"AnnotationItem\"), \"[] }[]\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  })), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onChange\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback when active item changes, returns current active key(s)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(key: string \", \"|\", \" string[]) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  })), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onClick\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback when a reference is clicked, returns mouse event and reference item\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(e: MouseEvent, item: AnnotationItem) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  })), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"renderItem\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom render function for reference item\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(annotation: AnnotationItem) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  })), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"style\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom inline style\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"React.CSSProperties\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  })))), mdx(\"h4\", {\n    parentName: \"section\"\n  }, \"AnnotationItem\"), mdx(\"table\", {\n    parentName: \"section\"\n  }, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Property\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Description\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Type\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Default\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"detail\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Extra detail text such as video description or text note\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"duration\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Duration, usually used for videos, in seconds\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"number\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"img\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Image url, such as video cover or illustration\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"logo\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Logo url of the site/platform to which the content belongs\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onClick\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback when item is clicked, returns event and current reference item\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(event: MouseEvent, item: AnnotationItem) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"order\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Order/index number\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"number\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"siteName\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Name of the site/platform where the content belongs\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"title\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Title\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"type\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Content type\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"'video' \", \"|\", \" 'text'\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"url\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Resource url. Clicking the reference will open this link\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")))), mdx(\"h3\", {\n    parentName: \"section\"\n  }, \"Sidebar\"), mdx(\"table\", {\n    parentName: \"section\"\n  }, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Property\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Description\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Type\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Default\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"className\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom class name\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"detailContent\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Content in detail view\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(ApiType, {\n    detail: \"[CodeItemProps](#CodeItemProps) \\\\| [FileItemProps](#FileItemProps) \\\\| any\",\n    mdxType: \"ApiType\"\n  }, \"DetailContent\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"fileEditable\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Whether file content is editable\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"boolean\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"true\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"imgUploadProps\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Image upload related config\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"ImageUploadNodeOptions\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"mode\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Display mode, can be main, code, file or other custom strings\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onActiveOptionChange\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback when active option changes, returns mouse event and current active key\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(e: MouseEvent, activeKey: string) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onBackWard\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback when Back is clicked, returns mouse event and current mode, supports async\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(e: MouseEvent, mode: string) => void \", \"|\", \" Promise<any\", \">\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onDetailContentCopy\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback when content in detail view is copied, returns mouse event, content and copy result\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(e: MouseEvent, content: string, res: boolean) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onFileContentChange\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback when file content changes, returns updated content\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(content: string) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"renderDetailContent\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom render function for detail view, receives current mode\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(mode: string) => ReactNode\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"renderDetailHeader\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom render function for detail header, receives current mode\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(mode: string, detailContent: \", mdx(ApiType, {\n    detail: \"[CodeItemProps](#CodeItemProps) \\\\| [FileItemProps](#FileItemProps) \\\\| any\",\n    mdxType: \"ApiType\"\n  }, \"DetailContent\"), \") => ReactNode\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"renderMainContent\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom render function for main content, receives current active key\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(activeKey: string) => ReactNode\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"style\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom inline style\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"React.CSSProperties\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")))), mdx(\"h3\", {\n    parentName: \"section\"\n  }, \"Code\"), mdx(\"table\", {\n    parentName: \"section\"\n  }, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Property\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Description\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Type\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Default\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"activeKey\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Active key(s). Supports single string (single select) or string array (multi-select)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string \", \"|\", \" string[]\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"className\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom class name\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"codes\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Code detail list\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"a\", {\n    parentName: \"td\",\n    \"href\": \"#CodeItemProps\"\n  }, \"CodeItemProps\"), \"[]\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onChange\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback when active key changes, returns current active key(s)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(activeKey: string \", \"|\", \" string[]) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onExpand\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback when expand is clicked, returns mouse event, corresponding code item and current mode\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(e: MouseEvent, code: \", mdx(\"a\", {\n    parentName: \"td\",\n    \"href\": \"#CodeItemProps\"\n  }, \"CodeItemProps\"), \", mode: string) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"style\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom inline style\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"React.CSSProperties\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")))), mdx(\"h4\", {\n    parentName: \"section\"\n  }, \"CodeItemProps\"), mdx(\"table\", {\n    parentName: \"section\"\n  }, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Property\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Description\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Type\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Default\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"codeHighlightProps\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Props for CodeHighlight\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"a\", {\n    parentName: \"td\",\n    \"href\": \"https:/lf3-static.semi.design/obj/semi-tos/semi_main/plus/codehighlight#API\"\n  }, \"CodeHighlightProps\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  })), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"content\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Code/text content\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"isJson\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Whether content is JSON\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"boolean\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"false\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"jsonViewerProps\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Props for JsonViewer\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"a\", {\n    parentName: \"td\",\n    \"href\": \"https:/lf3-static.semi.design/obj/semi-tos/semi_main/plus/jsonviewer#JsonViewer\"\n  }, \"JsonViewerProps\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"language\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Language type of the code (js, ts, json, etc.). Same as \", mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"language\"), \" in CodeHighlight\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"name\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Name\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")))), mdx(\"h3\", {\n    parentName: \"section\"\n  }, \"File\"), mdx(\"h4\", {\n    parentName: \"section\"\n  }, \"FileContent\"), mdx(\"table\", {\n    parentName: \"section\"\n  }, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Property\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Description\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Type\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Default\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"activeKey\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Active key(s). Supports single string (single select) or string array (multi-select)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string \", \"|\", \" string[]\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"className\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom class name\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"files\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"File info list\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"a\", {\n    parentName: \"td\",\n    \"href\": \"#FileItemProps\"\n  }, \"FileItemProps\"), \"[]\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onChange\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback when active key changes, returns current active key(s)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(activeKey: string \", \"|\", \" string[]) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onExpand\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback when a file item is expanded, returns mouse event, file item and current mode\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(e: MouseEvent, file: FileItemProps, mode: string) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"style\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom inline style\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"React.CSSProperties\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"-\")))), mdx(\"h4\", {\n    parentName: \"section\"\n  }, \"FileItemProps\"), mdx(\"table\", {\n    parentName: \"section\"\n  }, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Property\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Description\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Type\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Default\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"className\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom class name\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  })), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"content\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Text/content in the editor area\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  })), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"editable\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Whether content is editable\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"boolean\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  })), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"extensions\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Extension plugins list\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Extension[]\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  })), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"imgUploadProps\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Image upload related config\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"ImageUploadNodeOptions\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  })), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"key\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Unique key\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"string\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  })), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"onContentChange\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Callback when content changes, returns updated content\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"(content: string) => void\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  })), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"style\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Custom inline style\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"React.CSSProperties\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }))))));\n}\n;\nMDXContent.isMDXComponent = true;"}},"pageContext":{"slug":"en-US/ai/sidebar","next":{"fields":{"slug":"zh-CN/ai/sidebar"},"id":"ab8b6285-f6df-5967-bf23-01040c171f1e","frontmatter":{"title":"Sidebar 侧边信息栏","localeCode":"zh-CN","icon":"doc-sidebar","showNew":true}},"previous":{"fields":{"slug":"zh-CN/ai/aiChatDialogue"},"id":"399d8103-1188-5be6-81f5-01ae62c65ea0","frontmatter":{"title":"AIChatDialogue AI对话","localeCode":"zh-CN","icon":"doc-aiDialogue","showNew":true}}}},"staticQueryHashes":["1348983216229725","1477422646229725","3245198693229725","417590761229725","63159454229725"]}