@kne/system-layout 0.2.0-alpha.2 → 0.2.0-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +3 -3
- package/dist/index.modern.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -383,8 +383,8 @@ const Layout = _ref => {
|
|
|
383
383
|
className: classnames__default["default"](className, 'layout', style$3['layout'], {
|
|
384
384
|
'is-mobile': deviceIsMobile,
|
|
385
385
|
[style$3['is-mobile']]: deviceIsMobile,
|
|
386
|
-
'has-toolbar': toolbarShow,
|
|
387
|
-
[style$3['has-toolbar']]: toolbarShow
|
|
386
|
+
'has-toolbar': deviceIsMobile && toolbarShow,
|
|
387
|
+
[style$3['has-toolbar']]: deviceIsMobile && toolbarShow
|
|
388
388
|
}),
|
|
389
389
|
style: {
|
|
390
390
|
'--menu-max-width': menuMaxWidth,
|
|
@@ -536,7 +536,7 @@ const Layout = _ref => {
|
|
|
536
536
|
})]
|
|
537
537
|
}), /*#__PURE__*/jsxRuntime.jsx(Toolbar, _extends({}, menu, {
|
|
538
538
|
className: classnames__default["default"](style$3['toolbar']),
|
|
539
|
-
show: toolbarShow,
|
|
539
|
+
show: deviceIsMobile && toolbarShow,
|
|
540
540
|
target: toolbarTarget
|
|
541
541
|
}))]
|
|
542
542
|
})]
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/Layout/UserCard.js","../src/Menu/index.js","../src/Toolbar/index.js","../src/locale/zh-CN.js","../src/locale/en-US.js","../src/withLocale.js","../src/ErrorComponent/index.js","../src/isMobile.js","../src/context.js","../src/Layout/index.js","../src/Page/index.js","../src/index.js"],"sourcesContent":["import { Image } from '@kne/react-file';\nimport { Flex } from 'antd';\nimport classnames from 'classnames';\nimport style from './style.module.scss';\n\nconst UserCard = ({ name, avatar, email, phone, description, menuOpen }) => {\n if (!menuOpen) {\n return <Image.Avatar id={avatar} src={avatar} shape=\"circle\" size={40} alt=\"avatar\" />;\n }\n return (\n <Flex gap={12} justify=\"center\">\n <Image.Avatar id={avatar} src={avatar} shape=\"circle\" size={40} alt=\"avatar\" />\n <Flex vertical>\n <div className={classnames('username', style['username'])}>{name || '-'}</div>\n <div className={classnames('user-description', style['user-description'])}>{email || phone || description || '-'}</div>\n </Flex>\n </Flex>\n );\n};\n\nexport default UserCard;\n","import { Flex } from 'antd';\nimport { isValidElement } from 'react';\nimport { useLocation, useNavigate } from 'react-router-dom';\nimport classnames from 'classnames';\nimport Icon from '@kne/react-icon';\nimport ensureSlash from '@kne/ensure-slash';\nimport isPlainObject from 'lodash/isPlainObject';\nimport style from './style.module.scss';\n\nconst Menu = ({ className, menuOpen, items, activeKey, base = '', onChange }) => {\n const location = useLocation();\n const navigate = useNavigate();\n const currentPathname = base ? location.pathname.replace(new RegExp(`^${base}`), '') : location.pathname;\n return (\n <div className={classnames('menu', className, style['menu-list'])}>\n {items.map((item, index) => {\n const active = (() => {\n if (typeof activeKey === 'string') {\n return activeKey === item.key;\n }\n if (typeof activeKey === 'function') {\n return activeKey(item, { menuOpen, base });\n }\n if (typeof item.path === 'string') {\n return ensureSlash(currentPathname) === ensureSlash(item.path);\n }\n return false;\n })();\n\n const icon = typeof item.icon === 'function' ? item.icon({ menuOpen, active }) : item.icon;\n const hasGroup = item.group && item.group !== items[index - 1]?.group;\n return (\n <div\n key={item.key || item.path || index}\n title={item.label}\n onClick={e => {\n if (active) {\n return;\n }\n onChange && onChange(item, { menuOpen, base });\n if (typeof item.onClick === 'function') {\n item.onClick(item, { menuOpen, base, event: e });\n return;\n }\n if (item.path) {\n navigate(ensureSlash(`${base}${item.path}`));\n }\n }}\n >\n {hasGroup && menuOpen ? <div className={classnames('menu-group', style['menu-group'])}>{item.groupLabel || item.group}</div> : null}\n {hasGroup && !menuOpen ? <div className={classnames('menu-group-split', style['menu-group-split'])} /> : null}\n <Flex\n className={classnames('menu-item', style['menu-item'], {\n ['is-active']: active,\n ['is-closed']: !menuOpen\n })}\n align=\"center\"\n gap={8}\n >\n {(icon => {\n if (typeof icon === 'string') {\n return <Icon className={classnames('menu-item-icon', style['menu-item-icon'])} type={icon} fontClassName=\"system\" />;\n }\n\n if (isValidElement(icon)) {\n return <span className={classnames('menu-item-icon', style['menu-item-icon'])}>{icon}</span>;\n }\n\n if (isPlainObject(icon) && typeof icon.type === 'string') {\n return <Icon {...icon} className={classnames('menu-item-icon', style['menu-item-icon'])} />;\n }\n\n return null;\n })(icon)}\n {menuOpen && item.label}\n </Flex>\n </div>\n );\n })}\n </div>\n );\n};\n\nexport default Menu;\n","import { createPortal } from 'react-dom';\nimport { Flex } from 'antd';\nimport ensureSlash from '@kne/ensure-slash';\nimport { useLocation, useNavigate } from 'react-router-dom';\nimport Icon from '@kne/react-icon';\nimport classnames from 'classnames';\nimport style from './style.module.scss';\nimport { isValidElement } from 'react';\nimport isPlainObject from 'lodash/isPlainObject';\n\nconst Toolbar = ({ show = true, className, items, activeKey, base = '', onChange, target }) => {\n const location = useLocation();\n const navigate = useNavigate();\n const currentPathname = base ? location.pathname.replace(new RegExp(`^${base}`), '') : location.pathname;\n const toolbarMenu = items.filter(item => item.toolbar);\n\n if (!show) {\n return null;\n }\n\n return (\n <div className={classnames('toolbar', style['toolbar'], className)}>\n {createPortal(\n <Flex className={classnames('toolbar-list', style['toolbar-list'])}>\n {toolbarMenu.map((item, index) => {\n const active = (() => {\n if (typeof activeKey === 'string') {\n return activeKey === item.key;\n }\n if (typeof activeKey === 'function') {\n return activeKey(item, { base });\n }\n if (typeof item.path === 'string') {\n return ensureSlash(currentPathname) === ensureSlash(item.path);\n }\n return false;\n })();\n const icon = typeof item.icon === 'function' ? item.icon({ active }) : item.icon;\n return (\n <Flex\n key={item.key || item.path || index}\n vertical\n flex={1}\n justify=\"center\"\n align=\"center\"\n className={classnames('toolbar-item', style['toolbar-item'], {\n ['is-active']: active\n })}\n onClick={e => {\n if (active) {\n return;\n }\n onChange && onChange(item, { base });\n if (typeof item.onClick === 'function') {\n item.onClick(item, { menuOpen, base, event: e });\n return;\n }\n if (item.path) {\n navigate(ensureSlash(`${base}${item.path}`));\n }\n }}\n >\n {(icon => {\n if (typeof icon === 'string') {\n return <Icon className={classnames('toolbar-item-icon', style['toolbar-item-icon'])} type={icon} fontClassName=\"system\" />;\n }\n\n if (isValidElement(icon)) {\n return <span className={classnames('toolbar-item-icon', style['toolbar-item-icon'])}>{icon}</span>;\n }\n\n if (isPlainObject(icon) && typeof icon.type === 'string') {\n return <Icon {...icon} className={classnames('toolbar-item-icon', style['toolbar-item-icon'])} />;\n }\n\n return null;\n })(icon)}\n <div className={classnames('toolbar-item-label', style['toolbar-item-label'])}>{item.label}</div>\n </Flex>\n );\n })}\n </Flex>,\n target ? (typeof target === 'function' ? target() : target) : document.body\n )}\n </div>\n );\n};\n\nexport default Toolbar;\n","const locale = {\n systemError: '系统出了点小问题,可刷新页面进行解决',\n refresh: '刷新'\n};\n\nexport default locale;\n","const locale = {\n systemError: 'The system encountered a minor issue, please refresh the page to resolve it',\n refresh: 'Refresh'\n};\n\nexport default locale;\n","import { createWithIntlProvider } from '@kne/react-intl';\nimport zhCn from './locale/zh-CN';\nimport enUS from './locale/en-US';\n\nconst withLocale = createWithIntlProvider({\n defaultLocale: 'zh-CN',\n messages: {\n 'zh-CN': zhCn,\n 'en-US': enUS\n },\n namespace: 'system-layout'\n});\n\nexport default withLocale;\n","import React from 'react';\nimport { Alert, Button } from 'antd';\nimport ReactErrorBoundary from '@kne/react-error-boundary';\nimport { useIntl } from '@kne/react-intl';\nimport withLocale from '../withLocale';\n\nconst ErrorComponent = withLocale(() => {\n const { formatMessage } = useIntl();\n return (\n <Alert\n message={formatMessage({ id: 'systemError' })}\n showIcon\n type=\"error\"\n action={\n <Button size=\"small\" danger onClick={() => window.location.reload()}>\n {formatMessage({ id: 'refresh' })}\n </Button>\n }\n />\n );\n});\n\nconst ErrorBoundary = props => {\n return <ReactErrorBoundary {...props} errorComponent={ErrorComponent} />;\n};\n\nexport default ErrorBoundary;\n","const isMobile = () => {\n return /iPhone|iPod|Android|ios|iPad/i.test(navigator.userAgent);\n};\n\nexport default isMobile;\n","import { createContext, useContext as useReactContext } from 'react';\n\nconst context = createContext({});\n\nexport const useContext = () => {\n return useReactContext(context);\n};\n\nexport const { Provider, Consumer } = context;\n\nexport default context;\n","import { useMemo, useState, useRef, useEffect } from 'react';\nimport { Flex, Row, Col } from 'antd';\nimport classnames from 'classnames';\nimport localStorage from '@kne/local-storage';\nimport { Image } from '@kne/react-file';\nimport UserCard from './UserCard';\nimport Menu from '../Menu';\nimport Toolbar from '../Toolbar';\nimport Icon from '@kne/react-icon';\nimport defaultLogo from './defaultLogo.svg';\nimport { ReactComponent as ExpandIcon } from './expand.svg';\nimport style from './style.module.scss';\nimport ErrorBoundary from '../ErrorComponent';\nimport SimpleBar from 'simplebar-react';\nimport 'simplebar-react/dist/simplebar.min.css';\nimport isMobile from '../isMobile';\nimport { Provider } from '../context';\nimport { useLocation } from 'react-router-dom';\n\nconst LayoutMenuOpenKey = 'LAYOUT_MENU_OPEN';\n\nconst Layout = ({\n className,\n menu,\n background = 'linear-gradient(0deg, #BBCFE7 0%, #BBCFE7 100%), #FFFFFF',\n menuMaxWidth = '254px',\n menuMinWidth = '84px',\n logo,\n menuHeader,\n userInfo,\n aiDialog = null,\n openScrollbar: openScrollbarProps,\n isMobile: isMobileProps,\n toolbarTarget,\n children\n}) => {\n const localMenuOpen = localStorage.getItem(LayoutMenuOpenKey);\n const [menuOpen, setMenuOpen] = useState(typeof localMenuOpen === 'boolean' ? localMenuOpen : true);\n const [toolbarShow, setToolbarShow] = useState(true);\n const [aiType, setAiType] = useState('closed');\n const deviceIsMobile = typeof isMobileProps === 'boolean' ? isMobileProps : isMobile();\n const openScrollbar = typeof openScrollbarProps === 'boolean' ? openScrollbarProps : !deviceIsMobile && !window.__COMPONENTS_CORE_SIMPLE_BAR_DISABLED;\n const userAvatar = userInfo?.avatar;\n const contextValue = useMemo(() => {\n return {\n setToolbarShow,\n setMenuOpen,\n deviceIsMobile,\n logo: Object.assign(\n {},\n logo\n ? logo\n : {\n src: defaultLogo\n }\n ),\n userAvatar\n };\n }, [deviceIsMobile, logo, userAvatar]);\n const topRef = useRef(null);\n const location = useLocation();\n useEffect(() => {\n topRef.current && topRef.current.scrollIntoView();\n }, [location]);\n return (\n <Provider value={contextValue}>\n <div ref={topRef} />\n <div\n className={classnames(className, 'layout', style['layout'], {\n 'is-mobile': deviceIsMobile,\n [style['is-mobile']]: deviceIsMobile,\n 'has-toolbar': toolbarShow,\n [style['has-toolbar']]: toolbarShow\n })}\n style={{\n '--menu-max-width': menuMaxWidth,\n '--menu-min-width': menuMinWidth,\n '--background': background\n }}\n >\n {deviceIsMobile && (\n <div\n className={classnames('layer-menu', style['layer-menu'], {\n ['open']: menuOpen,\n [style['open']]: menuOpen\n })}\n onClick={() => {\n setMenuOpen(false);\n }}\n />\n )}\n <Flex>\n <div\n className={classnames('menu', style['menu'], {\n ['open']: menuOpen,\n [style['open']]: menuOpen\n })}\n >\n <div className={classnames('logo', style['logo'])}>\n <Image className={style['logo-img']} {...contextValue.logo} />\n </div>\n <div\n className={classnames('expand-btn-wrapper', style['expand-btn-wrapper'])}\n onClick={() => {\n setMenuOpen(menuOpen => {\n localStorage.setItem(LayoutMenuOpenKey, !menuOpen);\n return !menuOpen;\n });\n }}\n >\n <ExpandIcon\n className={classnames('expand-btn', style['expand-btn'], {\n 'is-closed': !menuOpen\n })}\n />\n </div>\n <div className={classnames('menu-inner', style['menu-inner'])}>\n <div className={classnames('menu-header', style['menu-header'])}>\n <ErrorBoundary>{menuHeader ? typeof menuHeader === 'function' ? menuHeader({ menuOpen }) : menuHeader : <UserCard menuOpen={menuOpen} {...Object.assign({}, userInfo)} />}</ErrorBoundary>\n </div>\n <ErrorBoundary>\n <Menu\n className={classnames('menu-list', style['menu-list'])}\n menuOpen={menuOpen}\n {...menu}\n onChange={() => {\n deviceIsMobile && setMenuOpen(false);\n }}\n />\n </ErrorBoundary>\n {aiDialog && (\n <div\n className={classnames('ai-entry', style['ai-entry'])}\n onClick={() => {\n setAiType('small');\n }}\n >\n <Icon type=\"system-prompt\" colorful />\n </div>\n )}\n </div>\n </div>\n <Flex flex={1} className={classnames('page', style['page'])}>\n <Row className={classnames('page-content', style['page-content'])}>\n {!deviceIsMobile && aiDialog && aiType === 'inner' && (\n <Col span={8} className={classnames('page-dialog-outer', style['page-dialog-outer'])}>\n <div className={classnames('page-dialog', style['page-dialog'])}>\n <Flex className={classnames('ai-dialog-window-title', style['ai-dialog-window-title'])}>\n <div>{aiDialog.title}</div>\n <Flex gap={10}>\n <Icon\n className=\"btn\"\n type=\"icon-a-Typeclose\"\n fontClassName=\"system\"\n onClick={() => {\n setAiType('closed');\n }}\n />\n </Flex>\n </Flex>\n <ErrorBoundary>\n <div className={classnames('page-window-content', style['page-window-content'])}>{aiDialog.content}</div>\n </ErrorBoundary>\n </div>\n </Col>\n )}\n <Col span={!deviceIsMobile && aiDialog && aiType === 'inner' ? 16 : 24}>\n <ErrorBoundary>\n {openScrollbar ? (\n <SimpleBar\n className={classnames('page-children', style['page-children'], {\n ['has-left']: aiType === 'inner'\n })}\n >\n {children}\n </SimpleBar>\n ) : (\n <div\n className={classnames('page-children', 'is-scroller', style['page-children'], style['is-scroller'], {\n ['has-left']: aiType === 'inner'\n })}\n >\n {children}\n </div>\n )}\n </ErrorBoundary>\n </Col>\n </Row>\n </Flex>\n {aiDialog && aiType === 'small' && (\n <div className={classnames('ai-dialog-window', style['ai-dialog-window'])}>\n <Flex className={classnames('ai-dialog-window-title', style['ai-dialog-window-title'])}>\n <div>{aiDialog.title}</div>\n <Flex gap={10}>\n <Icon\n className=\"btn\"\n type=\"icon-a-Typeopen_in_full\"\n fontClassName=\"system\"\n onClick={() => {\n setAiType('inner');\n }}\n />\n <Icon\n className=\"btn\"\n type=\"icon-a-Typeclose\"\n fontClassName=\"system\"\n onClick={() => {\n setAiType('closed');\n }}\n />\n </Flex>\n </Flex>\n <ErrorBoundary>\n <div className={classnames('ai-dialog-window-content', style['ai-dialog-window-content'])}>{aiDialog.content}</div>\n </ErrorBoundary>\n </div>\n )}\n </Flex>\n <Toolbar {...menu} className={classnames(style['toolbar'])} show={toolbarShow} target={toolbarTarget} />\n </div>\n </Provider>\n );\n};\n\nexport default Layout;\n","import { Flex, Button } from 'antd';\nimport { useEffect } from 'react';\nimport Icon from '@kne/react-icon';\nimport ButtonGroup from '@kne/button-group';\nimport classnames from 'classnames';\nimport { useContext } from '../context';\nimport style from './style.module.scss';\nimport { Image } from '@kne/react-file';\n\nconst Page = ({ title, extra = null, back, buttonProps, children, toolbar = true }) => {\n const { setToolbarShow, setMenuOpen, deviceIsMobile, userAvatar } = useContext();\n useEffect(() => {\n setToolbarShow && setToolbarShow(!!toolbar);\n }, [toolbar]);\n return (\n <Flex\n vertical\n gap={24}\n className={classnames('page', style['page'], {\n ['is-mobile']: deviceIsMobile,\n [style['is-mobile']]: deviceIsMobile\n })}\n >\n <Flex justify=\"space-between\" align=\"center\" gap={20} className={classnames('page-header', style['page-header'])}>\n <Flex className={classnames('page-title-outer', style['page-title-outer'])} align=\"center\" gap={4}>\n {back && <Button type=\"text\" icon={<Icon className={style['back-icon']} type=\"a-Typearrow_forward_ios\" fontClassName=\"system\" />} />}\n {!back && deviceIsMobile && (\n <Button\n type=\"link\"\n icon={<Icon className={style['back-icon']} type=\"a-Typeequal\" fontClassName=\"system\" />}\n onClick={() => {\n setMenuOpen(open => !open);\n }}\n />\n )}\n <div className={classnames('page-title', style['page-title'])}>{title}</div>\n </Flex>\n <div className={classnames('page-title-extra', style['page-title-extra'])}>\n {extra ? (\n extra\n ) : deviceIsMobile ? (\n <Flex gap={4} align=\"center\">\n {buttonProps && <ButtonGroup {...Object.assign({}, buttonProps, deviceIsMobile ? { showLength: 0, moreType: 'link' } : {})} />}\n <Image.Avatar id={userAvatar} src={userAvatar} shape=\"circle\" size={30} alt=\"avatar\" />\n </Flex>\n ) : (\n buttonProps && <ButtonGroup {...buttonProps} />\n )}\n </div>\n </Flex>\n <div className={classnames('page-inner', style['page-inner'])}>{children}</div>\n </Flex>\n );\n};\n\nexport default Page;\n","export { default } from './Layout';\nexport { default as Layout } from './Layout';\nexport { default as Page } from './Page';\nexport { default as isMobile } from './isMobile';\nexport { useContext as useLayoutContext } from './context';\n\nimport('./icons/index');\n"],"names":["UserCard","name","avatar","email","phone","description","menuOpen","_jsx","Image","Avatar","id","src","shape","size","alt","_jsxs","Flex","gap","justify","children","vertical","className","classnames","style","Menu","items","activeKey","base","onChange","location","useLocation","navigate","useNavigate","currentPathname","pathname","replace","RegExp","map","item","index","active","key","path","ensureSlash","icon","hasGroup","group","title","label","onClick","e","event","groupLabel","align","Icon","type","fontClassName","isValidElement","isPlainObject","Toolbar","show","target","toolbarMenu","filter","toolbar","createPortal","flex","document","body","locale","systemError","refresh","withLocale","createWithIntlProvider","defaultLocale","messages","zhCn","enUS","namespace","ErrorComponent","formatMessage","useIntl","Alert","message","showIcon","action","Button","danger","window","reload","ErrorBoundary","props","ReactErrorBoundary","errorComponent","isMobile","test","navigator","userAgent","context","createContext","useContext","useReactContext","Provider","Consumer","LayoutMenuOpenKey","Layout","_ref","menu","background","menuMaxWidth","menuMinWidth","logo","menuHeader","userInfo","aiDialog","openScrollbar","openScrollbarProps","isMobileProps","toolbarTarget","localMenuOpen","localStorage","getItem","setMenuOpen","useState","toolbarShow","setToolbarShow","aiType","setAiType","deviceIsMobile","__COMPONENTS_CORE_SIMPLE_BAR_DISABLED","userAvatar","contextValue","useMemo","Object","assign","defaultLogo","topRef","useRef","useEffect","current","scrollIntoView","value","ref","_extends","setItem","ExpandIcon","colorful","Row","Col","span","content","SimpleBar","Page","extra","back","buttonProps","open","ButtonGroup","showLength","moreType"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/Layout/UserCard.js","../src/Menu/index.js","../src/Toolbar/index.js","../src/locale/zh-CN.js","../src/locale/en-US.js","../src/withLocale.js","../src/ErrorComponent/index.js","../src/isMobile.js","../src/context.js","../src/Layout/index.js","../src/Page/index.js","../src/index.js"],"sourcesContent":["import { Image } from '@kne/react-file';\nimport { Flex } from 'antd';\nimport classnames from 'classnames';\nimport style from './style.module.scss';\n\nconst UserCard = ({ name, avatar, email, phone, description, menuOpen }) => {\n if (!menuOpen) {\n return <Image.Avatar id={avatar} src={avatar} shape=\"circle\" size={40} alt=\"avatar\" />;\n }\n return (\n <Flex gap={12} justify=\"center\">\n <Image.Avatar id={avatar} src={avatar} shape=\"circle\" size={40} alt=\"avatar\" />\n <Flex vertical>\n <div className={classnames('username', style['username'])}>{name || '-'}</div>\n <div className={classnames('user-description', style['user-description'])}>{email || phone || description || '-'}</div>\n </Flex>\n </Flex>\n );\n};\n\nexport default UserCard;\n","import { Flex } from 'antd';\nimport { isValidElement } from 'react';\nimport { useLocation, useNavigate } from 'react-router-dom';\nimport classnames from 'classnames';\nimport Icon from '@kne/react-icon';\nimport ensureSlash from '@kne/ensure-slash';\nimport isPlainObject from 'lodash/isPlainObject';\nimport style from './style.module.scss';\n\nconst Menu = ({ className, menuOpen, items, activeKey, base = '', onChange }) => {\n const location = useLocation();\n const navigate = useNavigate();\n const currentPathname = base ? location.pathname.replace(new RegExp(`^${base}`), '') : location.pathname;\n return (\n <div className={classnames('menu', className, style['menu-list'])}>\n {items.map((item, index) => {\n const active = (() => {\n if (typeof activeKey === 'string') {\n return activeKey === item.key;\n }\n if (typeof activeKey === 'function') {\n return activeKey(item, { menuOpen, base });\n }\n if (typeof item.path === 'string') {\n return ensureSlash(currentPathname) === ensureSlash(item.path);\n }\n return false;\n })();\n\n const icon = typeof item.icon === 'function' ? item.icon({ menuOpen, active }) : item.icon;\n const hasGroup = item.group && item.group !== items[index - 1]?.group;\n return (\n <div\n key={item.key || item.path || index}\n title={item.label}\n onClick={e => {\n if (active) {\n return;\n }\n onChange && onChange(item, { menuOpen, base });\n if (typeof item.onClick === 'function') {\n item.onClick(item, { menuOpen, base, event: e });\n return;\n }\n if (item.path) {\n navigate(ensureSlash(`${base}${item.path}`));\n }\n }}\n >\n {hasGroup && menuOpen ? <div className={classnames('menu-group', style['menu-group'])}>{item.groupLabel || item.group}</div> : null}\n {hasGroup && !menuOpen ? <div className={classnames('menu-group-split', style['menu-group-split'])} /> : null}\n <Flex\n className={classnames('menu-item', style['menu-item'], {\n ['is-active']: active,\n ['is-closed']: !menuOpen\n })}\n align=\"center\"\n gap={8}\n >\n {(icon => {\n if (typeof icon === 'string') {\n return <Icon className={classnames('menu-item-icon', style['menu-item-icon'])} type={icon} fontClassName=\"system\" />;\n }\n\n if (isValidElement(icon)) {\n return <span className={classnames('menu-item-icon', style['menu-item-icon'])}>{icon}</span>;\n }\n\n if (isPlainObject(icon) && typeof icon.type === 'string') {\n return <Icon {...icon} className={classnames('menu-item-icon', style['menu-item-icon'])} />;\n }\n\n return null;\n })(icon)}\n {menuOpen && item.label}\n </Flex>\n </div>\n );\n })}\n </div>\n );\n};\n\nexport default Menu;\n","import { createPortal } from 'react-dom';\nimport { Flex } from 'antd';\nimport ensureSlash from '@kne/ensure-slash';\nimport { useLocation, useNavigate } from 'react-router-dom';\nimport Icon from '@kne/react-icon';\nimport classnames from 'classnames';\nimport style from './style.module.scss';\nimport { isValidElement } from 'react';\nimport isPlainObject from 'lodash/isPlainObject';\n\nconst Toolbar = ({ show = true, className, items, activeKey, base = '', onChange, target }) => {\n const location = useLocation();\n const navigate = useNavigate();\n const currentPathname = base ? location.pathname.replace(new RegExp(`^${base}`), '') : location.pathname;\n const toolbarMenu = items.filter(item => item.toolbar);\n\n if (!show) {\n return null;\n }\n\n return (\n <div className={classnames('toolbar', style['toolbar'], className)}>\n {createPortal(\n <Flex className={classnames('toolbar-list', style['toolbar-list'])}>\n {toolbarMenu.map((item, index) => {\n const active = (() => {\n if (typeof activeKey === 'string') {\n return activeKey === item.key;\n }\n if (typeof activeKey === 'function') {\n return activeKey(item, { base });\n }\n if (typeof item.path === 'string') {\n return ensureSlash(currentPathname) === ensureSlash(item.path);\n }\n return false;\n })();\n const icon = typeof item.icon === 'function' ? item.icon({ active }) : item.icon;\n return (\n <Flex\n key={item.key || item.path || index}\n vertical\n flex={1}\n justify=\"center\"\n align=\"center\"\n className={classnames('toolbar-item', style['toolbar-item'], {\n ['is-active']: active\n })}\n onClick={e => {\n if (active) {\n return;\n }\n onChange && onChange(item, { base });\n if (typeof item.onClick === 'function') {\n item.onClick(item, { menuOpen, base, event: e });\n return;\n }\n if (item.path) {\n navigate(ensureSlash(`${base}${item.path}`));\n }\n }}\n >\n {(icon => {\n if (typeof icon === 'string') {\n return <Icon className={classnames('toolbar-item-icon', style['toolbar-item-icon'])} type={icon} fontClassName=\"system\" />;\n }\n\n if (isValidElement(icon)) {\n return <span className={classnames('toolbar-item-icon', style['toolbar-item-icon'])}>{icon}</span>;\n }\n\n if (isPlainObject(icon) && typeof icon.type === 'string') {\n return <Icon {...icon} className={classnames('toolbar-item-icon', style['toolbar-item-icon'])} />;\n }\n\n return null;\n })(icon)}\n <div className={classnames('toolbar-item-label', style['toolbar-item-label'])}>{item.label}</div>\n </Flex>\n );\n })}\n </Flex>,\n target ? (typeof target === 'function' ? target() : target) : document.body\n )}\n </div>\n );\n};\n\nexport default Toolbar;\n","const locale = {\n systemError: '系统出了点小问题,可刷新页面进行解决',\n refresh: '刷新'\n};\n\nexport default locale;\n","const locale = {\n systemError: 'The system encountered a minor issue, please refresh the page to resolve it',\n refresh: 'Refresh'\n};\n\nexport default locale;\n","import { createWithIntlProvider } from '@kne/react-intl';\nimport zhCn from './locale/zh-CN';\nimport enUS from './locale/en-US';\n\nconst withLocale = createWithIntlProvider({\n defaultLocale: 'zh-CN',\n messages: {\n 'zh-CN': zhCn,\n 'en-US': enUS\n },\n namespace: 'system-layout'\n});\n\nexport default withLocale;\n","import React from 'react';\nimport { Alert, Button } from 'antd';\nimport ReactErrorBoundary from '@kne/react-error-boundary';\nimport { useIntl } from '@kne/react-intl';\nimport withLocale from '../withLocale';\n\nconst ErrorComponent = withLocale(() => {\n const { formatMessage } = useIntl();\n return (\n <Alert\n message={formatMessage({ id: 'systemError' })}\n showIcon\n type=\"error\"\n action={\n <Button size=\"small\" danger onClick={() => window.location.reload()}>\n {formatMessage({ id: 'refresh' })}\n </Button>\n }\n />\n );\n});\n\nconst ErrorBoundary = props => {\n return <ReactErrorBoundary {...props} errorComponent={ErrorComponent} />;\n};\n\nexport default ErrorBoundary;\n","const isMobile = () => {\n return /iPhone|iPod|Android|ios|iPad/i.test(navigator.userAgent);\n};\n\nexport default isMobile;\n","import { createContext, useContext as useReactContext } from 'react';\n\nconst context = createContext({});\n\nexport const useContext = () => {\n return useReactContext(context);\n};\n\nexport const { Provider, Consumer } = context;\n\nexport default context;\n","import { useMemo, useState, useRef, useEffect } from 'react';\nimport { Flex, Row, Col } from 'antd';\nimport classnames from 'classnames';\nimport localStorage from '@kne/local-storage';\nimport { Image } from '@kne/react-file';\nimport UserCard from './UserCard';\nimport Menu from '../Menu';\nimport Toolbar from '../Toolbar';\nimport Icon from '@kne/react-icon';\nimport defaultLogo from './defaultLogo.svg';\nimport { ReactComponent as ExpandIcon } from './expand.svg';\nimport style from './style.module.scss';\nimport ErrorBoundary from '../ErrorComponent';\nimport SimpleBar from 'simplebar-react';\nimport 'simplebar-react/dist/simplebar.min.css';\nimport isMobile from '../isMobile';\nimport { Provider } from '../context';\nimport { useLocation } from 'react-router-dom';\n\nconst LayoutMenuOpenKey = 'LAYOUT_MENU_OPEN';\n\nconst Layout = ({\n className,\n menu,\n background = 'linear-gradient(0deg, #BBCFE7 0%, #BBCFE7 100%), #FFFFFF',\n menuMaxWidth = '254px',\n menuMinWidth = '84px',\n logo,\n menuHeader,\n userInfo,\n aiDialog = null,\n openScrollbar: openScrollbarProps,\n isMobile: isMobileProps,\n toolbarTarget,\n children\n}) => {\n const localMenuOpen = localStorage.getItem(LayoutMenuOpenKey);\n const [menuOpen, setMenuOpen] = useState(typeof localMenuOpen === 'boolean' ? localMenuOpen : true);\n const [toolbarShow, setToolbarShow] = useState(true);\n const [aiType, setAiType] = useState('closed');\n const deviceIsMobile = typeof isMobileProps === 'boolean' ? isMobileProps : isMobile();\n const openScrollbar = typeof openScrollbarProps === 'boolean' ? openScrollbarProps : !deviceIsMobile && !window.__COMPONENTS_CORE_SIMPLE_BAR_DISABLED;\n const userAvatar = userInfo?.avatar;\n const contextValue = useMemo(() => {\n return {\n setToolbarShow,\n setMenuOpen,\n deviceIsMobile,\n logo: Object.assign(\n {},\n logo\n ? logo\n : {\n src: defaultLogo\n }\n ),\n userAvatar\n };\n }, [deviceIsMobile, logo, userAvatar]);\n const topRef = useRef(null);\n const location = useLocation();\n useEffect(() => {\n topRef.current && topRef.current.scrollIntoView();\n }, [location]);\n return (\n <Provider value={contextValue}>\n <div ref={topRef} />\n <div\n className={classnames(className, 'layout', style['layout'], {\n 'is-mobile': deviceIsMobile,\n [style['is-mobile']]: deviceIsMobile,\n 'has-toolbar': deviceIsMobile && toolbarShow,\n [style['has-toolbar']]: deviceIsMobile && toolbarShow\n })}\n style={{\n '--menu-max-width': menuMaxWidth,\n '--menu-min-width': menuMinWidth,\n '--background': background\n }}\n >\n {deviceIsMobile && (\n <div\n className={classnames('layer-menu', style['layer-menu'], {\n ['open']: menuOpen,\n [style['open']]: menuOpen\n })}\n onClick={() => {\n setMenuOpen(false);\n }}\n />\n )}\n <Flex>\n <div\n className={classnames('menu', style['menu'], {\n ['open']: menuOpen,\n [style['open']]: menuOpen\n })}\n >\n <div className={classnames('logo', style['logo'])}>\n <Image className={style['logo-img']} {...contextValue.logo} />\n </div>\n <div\n className={classnames('expand-btn-wrapper', style['expand-btn-wrapper'])}\n onClick={() => {\n setMenuOpen(menuOpen => {\n localStorage.setItem(LayoutMenuOpenKey, !menuOpen);\n return !menuOpen;\n });\n }}\n >\n <ExpandIcon\n className={classnames('expand-btn', style['expand-btn'], {\n 'is-closed': !menuOpen\n })}\n />\n </div>\n <div className={classnames('menu-inner', style['menu-inner'])}>\n <div className={classnames('menu-header', style['menu-header'])}>\n <ErrorBoundary>{menuHeader ? typeof menuHeader === 'function' ? menuHeader({ menuOpen }) : menuHeader : <UserCard menuOpen={menuOpen} {...Object.assign({}, userInfo)} />}</ErrorBoundary>\n </div>\n <ErrorBoundary>\n <Menu\n className={classnames('menu-list', style['menu-list'])}\n menuOpen={menuOpen}\n {...menu}\n onChange={() => {\n deviceIsMobile && setMenuOpen(false);\n }}\n />\n </ErrorBoundary>\n {aiDialog && (\n <div\n className={classnames('ai-entry', style['ai-entry'])}\n onClick={() => {\n setAiType('small');\n }}\n >\n <Icon type=\"system-prompt\" colorful />\n </div>\n )}\n </div>\n </div>\n <Flex flex={1} className={classnames('page', style['page'])}>\n <Row className={classnames('page-content', style['page-content'])}>\n {!deviceIsMobile && aiDialog && aiType === 'inner' && (\n <Col span={8} className={classnames('page-dialog-outer', style['page-dialog-outer'])}>\n <div className={classnames('page-dialog', style['page-dialog'])}>\n <Flex className={classnames('ai-dialog-window-title', style['ai-dialog-window-title'])}>\n <div>{aiDialog.title}</div>\n <Flex gap={10}>\n <Icon\n className=\"btn\"\n type=\"icon-a-Typeclose\"\n fontClassName=\"system\"\n onClick={() => {\n setAiType('closed');\n }}\n />\n </Flex>\n </Flex>\n <ErrorBoundary>\n <div className={classnames('page-window-content', style['page-window-content'])}>{aiDialog.content}</div>\n </ErrorBoundary>\n </div>\n </Col>\n )}\n <Col span={!deviceIsMobile && aiDialog && aiType === 'inner' ? 16 : 24}>\n <ErrorBoundary>\n {openScrollbar ? (\n <SimpleBar\n className={classnames('page-children', style['page-children'], {\n ['has-left']: aiType === 'inner'\n })}\n >\n {children}\n </SimpleBar>\n ) : (\n <div\n className={classnames('page-children', 'is-scroller', style['page-children'], style['is-scroller'], {\n ['has-left']: aiType === 'inner'\n })}\n >\n {children}\n </div>\n )}\n </ErrorBoundary>\n </Col>\n </Row>\n </Flex>\n {aiDialog && aiType === 'small' && (\n <div className={classnames('ai-dialog-window', style['ai-dialog-window'])}>\n <Flex className={classnames('ai-dialog-window-title', style['ai-dialog-window-title'])}>\n <div>{aiDialog.title}</div>\n <Flex gap={10}>\n <Icon\n className=\"btn\"\n type=\"icon-a-Typeopen_in_full\"\n fontClassName=\"system\"\n onClick={() => {\n setAiType('inner');\n }}\n />\n <Icon\n className=\"btn\"\n type=\"icon-a-Typeclose\"\n fontClassName=\"system\"\n onClick={() => {\n setAiType('closed');\n }}\n />\n </Flex>\n </Flex>\n <ErrorBoundary>\n <div className={classnames('ai-dialog-window-content', style['ai-dialog-window-content'])}>{aiDialog.content}</div>\n </ErrorBoundary>\n </div>\n )}\n </Flex>\n <Toolbar {...menu} className={classnames(style['toolbar'])} show={deviceIsMobile && toolbarShow} target={toolbarTarget} />\n </div>\n </Provider>\n );\n};\n\nexport default Layout;\n","import { Flex, Button } from 'antd';\nimport { useEffect } from 'react';\nimport Icon from '@kne/react-icon';\nimport ButtonGroup from '@kne/button-group';\nimport classnames from 'classnames';\nimport { useContext } from '../context';\nimport style from './style.module.scss';\nimport { Image } from '@kne/react-file';\n\nconst Page = ({ title, extra = null, back, buttonProps, children, toolbar = true }) => {\n const { setToolbarShow, setMenuOpen, deviceIsMobile, userAvatar } = useContext();\n useEffect(() => {\n setToolbarShow && setToolbarShow(!!toolbar);\n }, [toolbar]);\n return (\n <Flex\n vertical\n gap={24}\n className={classnames('page', style['page'], {\n ['is-mobile']: deviceIsMobile,\n [style['is-mobile']]: deviceIsMobile\n })}\n >\n <Flex justify=\"space-between\" align=\"center\" gap={20} className={classnames('page-header', style['page-header'])}>\n <Flex className={classnames('page-title-outer', style['page-title-outer'])} align=\"center\" gap={4}>\n {back && <Button type=\"text\" icon={<Icon className={style['back-icon']} type=\"a-Typearrow_forward_ios\" fontClassName=\"system\" />} />}\n {!back && deviceIsMobile && (\n <Button\n type=\"link\"\n icon={<Icon className={style['back-icon']} type=\"a-Typeequal\" fontClassName=\"system\" />}\n onClick={() => {\n setMenuOpen(open => !open);\n }}\n />\n )}\n <div className={classnames('page-title', style['page-title'])}>{title}</div>\n </Flex>\n <div className={classnames('page-title-extra', style['page-title-extra'])}>\n {extra ? (\n extra\n ) : deviceIsMobile ? (\n <Flex gap={4} align=\"center\">\n {buttonProps && <ButtonGroup {...Object.assign({}, buttonProps, deviceIsMobile ? { showLength: 0, moreType: 'link' } : {})} />}\n <Image.Avatar id={userAvatar} src={userAvatar} shape=\"circle\" size={30} alt=\"avatar\" />\n </Flex>\n ) : (\n buttonProps && <ButtonGroup {...buttonProps} />\n )}\n </div>\n </Flex>\n <div className={classnames('page-inner', style['page-inner'])}>{children}</div>\n </Flex>\n );\n};\n\nexport default Page;\n","export { default } from './Layout';\nexport { default as Layout } from './Layout';\nexport { default as Page } from './Page';\nexport { default as isMobile } from './isMobile';\nexport { useContext as useLayoutContext } from './context';\n\nimport('./icons/index');\n"],"names":["UserCard","name","avatar","email","phone","description","menuOpen","_jsx","Image","Avatar","id","src","shape","size","alt","_jsxs","Flex","gap","justify","children","vertical","className","classnames","style","Menu","items","activeKey","base","onChange","location","useLocation","navigate","useNavigate","currentPathname","pathname","replace","RegExp","map","item","index","active","key","path","ensureSlash","icon","hasGroup","group","title","label","onClick","e","event","groupLabel","align","Icon","type","fontClassName","isValidElement","isPlainObject","Toolbar","show","target","toolbarMenu","filter","toolbar","createPortal","flex","document","body","locale","systemError","refresh","withLocale","createWithIntlProvider","defaultLocale","messages","zhCn","enUS","namespace","ErrorComponent","formatMessage","useIntl","Alert","message","showIcon","action","Button","danger","window","reload","ErrorBoundary","props","ReactErrorBoundary","errorComponent","isMobile","test","navigator","userAgent","context","createContext","useContext","useReactContext","Provider","Consumer","LayoutMenuOpenKey","Layout","_ref","menu","background","menuMaxWidth","menuMinWidth","logo","menuHeader","userInfo","aiDialog","openScrollbar","openScrollbarProps","isMobileProps","toolbarTarget","localMenuOpen","localStorage","getItem","setMenuOpen","useState","toolbarShow","setToolbarShow","aiType","setAiType","deviceIsMobile","__COMPONENTS_CORE_SIMPLE_BAR_DISABLED","userAvatar","contextValue","useMemo","Object","assign","defaultLogo","topRef","useRef","useEffect","current","scrollIntoView","value","ref","_extends","setItem","ExpandIcon","colorful","Row","Col","span","content","SimpleBar","Page","extra","back","buttonProps","open","ButtonGroup","showLength","moreType"],"mappings":"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"}
|
package/dist/index.modern.js
CHANGED
|
@@ -368,8 +368,8 @@ const Layout = ({
|
|
|
368
368
|
className: classnames(className, 'layout', style$3['layout'], {
|
|
369
369
|
'is-mobile': deviceIsMobile,
|
|
370
370
|
[style$3['is-mobile']]: deviceIsMobile,
|
|
371
|
-
'has-toolbar': toolbarShow,
|
|
372
|
-
[style$3['has-toolbar']]: toolbarShow
|
|
371
|
+
'has-toolbar': deviceIsMobile && toolbarShow,
|
|
372
|
+
[style$3['has-toolbar']]: deviceIsMobile && toolbarShow
|
|
373
373
|
}),
|
|
374
374
|
style: {
|
|
375
375
|
'--menu-max-width': _menuMaxWidth,
|
|
@@ -521,7 +521,7 @@ const Layout = ({
|
|
|
521
521
|
})]
|
|
522
522
|
}), /*#__PURE__*/jsx(Toolbar, _extends({}, menu, {
|
|
523
523
|
className: classnames(style$3['toolbar']),
|
|
524
|
-
show: toolbarShow,
|
|
524
|
+
show: deviceIsMobile && toolbarShow,
|
|
525
525
|
target: toolbarTarget
|
|
526
526
|
}))]
|
|
527
527
|
})]
|
package/dist/index.modern.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.modern.js","sources":["../src/Layout/UserCard.js","../src/Menu/index.js","../src/Toolbar/index.js","../src/locale/zh-CN.js","../src/locale/en-US.js","../src/withLocale.js","../src/ErrorComponent/index.js","../src/isMobile.js","../src/context.js","../src/Layout/index.js","../src/Page/index.js","../src/index.js"],"sourcesContent":["import { Image } from '@kne/react-file';\nimport { Flex } from 'antd';\nimport classnames from 'classnames';\nimport style from './style.module.scss';\n\nconst UserCard = ({ name, avatar, email, phone, description, menuOpen }) => {\n if (!menuOpen) {\n return <Image.Avatar id={avatar} src={avatar} shape=\"circle\" size={40} alt=\"avatar\" />;\n }\n return (\n <Flex gap={12} justify=\"center\">\n <Image.Avatar id={avatar} src={avatar} shape=\"circle\" size={40} alt=\"avatar\" />\n <Flex vertical>\n <div className={classnames('username', style['username'])}>{name || '-'}</div>\n <div className={classnames('user-description', style['user-description'])}>{email || phone || description || '-'}</div>\n </Flex>\n </Flex>\n );\n};\n\nexport default UserCard;\n","import { Flex } from 'antd';\nimport { isValidElement } from 'react';\nimport { useLocation, useNavigate } from 'react-router-dom';\nimport classnames from 'classnames';\nimport Icon from '@kne/react-icon';\nimport ensureSlash from '@kne/ensure-slash';\nimport isPlainObject from 'lodash/isPlainObject';\nimport style from './style.module.scss';\n\nconst Menu = ({ className, menuOpen, items, activeKey, base = '', onChange }) => {\n const location = useLocation();\n const navigate = useNavigate();\n const currentPathname = base ? location.pathname.replace(new RegExp(`^${base}`), '') : location.pathname;\n return (\n <div className={classnames('menu', className, style['menu-list'])}>\n {items.map((item, index) => {\n const active = (() => {\n if (typeof activeKey === 'string') {\n return activeKey === item.key;\n }\n if (typeof activeKey === 'function') {\n return activeKey(item, { menuOpen, base });\n }\n if (typeof item.path === 'string') {\n return ensureSlash(currentPathname) === ensureSlash(item.path);\n }\n return false;\n })();\n\n const icon = typeof item.icon === 'function' ? item.icon({ menuOpen, active }) : item.icon;\n const hasGroup = item.group && item.group !== items[index - 1]?.group;\n return (\n <div\n key={item.key || item.path || index}\n title={item.label}\n onClick={e => {\n if (active) {\n return;\n }\n onChange && onChange(item, { menuOpen, base });\n if (typeof item.onClick === 'function') {\n item.onClick(item, { menuOpen, base, event: e });\n return;\n }\n if (item.path) {\n navigate(ensureSlash(`${base}${item.path}`));\n }\n }}\n >\n {hasGroup && menuOpen ? <div className={classnames('menu-group', style['menu-group'])}>{item.groupLabel || item.group}</div> : null}\n {hasGroup && !menuOpen ? <div className={classnames('menu-group-split', style['menu-group-split'])} /> : null}\n <Flex\n className={classnames('menu-item', style['menu-item'], {\n ['is-active']: active,\n ['is-closed']: !menuOpen\n })}\n align=\"center\"\n gap={8}\n >\n {(icon => {\n if (typeof icon === 'string') {\n return <Icon className={classnames('menu-item-icon', style['menu-item-icon'])} type={icon} fontClassName=\"system\" />;\n }\n\n if (isValidElement(icon)) {\n return <span className={classnames('menu-item-icon', style['menu-item-icon'])}>{icon}</span>;\n }\n\n if (isPlainObject(icon) && typeof icon.type === 'string') {\n return <Icon {...icon} className={classnames('menu-item-icon', style['menu-item-icon'])} />;\n }\n\n return null;\n })(icon)}\n {menuOpen && item.label}\n </Flex>\n </div>\n );\n })}\n </div>\n );\n};\n\nexport default Menu;\n","import { createPortal } from 'react-dom';\nimport { Flex } from 'antd';\nimport ensureSlash from '@kne/ensure-slash';\nimport { useLocation, useNavigate } from 'react-router-dom';\nimport Icon from '@kne/react-icon';\nimport classnames from 'classnames';\nimport style from './style.module.scss';\nimport { isValidElement } from 'react';\nimport isPlainObject from 'lodash/isPlainObject';\n\nconst Toolbar = ({ show = true, className, items, activeKey, base = '', onChange, target }) => {\n const location = useLocation();\n const navigate = useNavigate();\n const currentPathname = base ? location.pathname.replace(new RegExp(`^${base}`), '') : location.pathname;\n const toolbarMenu = items.filter(item => item.toolbar);\n\n if (!show) {\n return null;\n }\n\n return (\n <div className={classnames('toolbar', style['toolbar'], className)}>\n {createPortal(\n <Flex className={classnames('toolbar-list', style['toolbar-list'])}>\n {toolbarMenu.map((item, index) => {\n const active = (() => {\n if (typeof activeKey === 'string') {\n return activeKey === item.key;\n }\n if (typeof activeKey === 'function') {\n return activeKey(item, { base });\n }\n if (typeof item.path === 'string') {\n return ensureSlash(currentPathname) === ensureSlash(item.path);\n }\n return false;\n })();\n const icon = typeof item.icon === 'function' ? item.icon({ active }) : item.icon;\n return (\n <Flex\n key={item.key || item.path || index}\n vertical\n flex={1}\n justify=\"center\"\n align=\"center\"\n className={classnames('toolbar-item', style['toolbar-item'], {\n ['is-active']: active\n })}\n onClick={e => {\n if (active) {\n return;\n }\n onChange && onChange(item, { base });\n if (typeof item.onClick === 'function') {\n item.onClick(item, { menuOpen, base, event: e });\n return;\n }\n if (item.path) {\n navigate(ensureSlash(`${base}${item.path}`));\n }\n }}\n >\n {(icon => {\n if (typeof icon === 'string') {\n return <Icon className={classnames('toolbar-item-icon', style['toolbar-item-icon'])} type={icon} fontClassName=\"system\" />;\n }\n\n if (isValidElement(icon)) {\n return <span className={classnames('toolbar-item-icon', style['toolbar-item-icon'])}>{icon}</span>;\n }\n\n if (isPlainObject(icon) && typeof icon.type === 'string') {\n return <Icon {...icon} className={classnames('toolbar-item-icon', style['toolbar-item-icon'])} />;\n }\n\n return null;\n })(icon)}\n <div className={classnames('toolbar-item-label', style['toolbar-item-label'])}>{item.label}</div>\n </Flex>\n );\n })}\n </Flex>,\n target ? (typeof target === 'function' ? target() : target) : document.body\n )}\n </div>\n );\n};\n\nexport default Toolbar;\n","const locale = {\n systemError: '系统出了点小问题,可刷新页面进行解决',\n refresh: '刷新'\n};\n\nexport default locale;\n","const locale = {\n systemError: 'The system encountered a minor issue, please refresh the page to resolve it',\n refresh: 'Refresh'\n};\n\nexport default locale;\n","import { createWithIntlProvider } from '@kne/react-intl';\nimport zhCn from './locale/zh-CN';\nimport enUS from './locale/en-US';\n\nconst withLocale = createWithIntlProvider({\n defaultLocale: 'zh-CN',\n messages: {\n 'zh-CN': zhCn,\n 'en-US': enUS\n },\n namespace: 'system-layout'\n});\n\nexport default withLocale;\n","import React from 'react';\nimport { Alert, Button } from 'antd';\nimport ReactErrorBoundary from '@kne/react-error-boundary';\nimport { useIntl } from '@kne/react-intl';\nimport withLocale from '../withLocale';\n\nconst ErrorComponent = withLocale(() => {\n const { formatMessage } = useIntl();\n return (\n <Alert\n message={formatMessage({ id: 'systemError' })}\n showIcon\n type=\"error\"\n action={\n <Button size=\"small\" danger onClick={() => window.location.reload()}>\n {formatMessage({ id: 'refresh' })}\n </Button>\n }\n />\n );\n});\n\nconst ErrorBoundary = props => {\n return <ReactErrorBoundary {...props} errorComponent={ErrorComponent} />;\n};\n\nexport default ErrorBoundary;\n","const isMobile = () => {\n return /iPhone|iPod|Android|ios|iPad/i.test(navigator.userAgent);\n};\n\nexport default isMobile;\n","import { createContext, useContext as useReactContext } from 'react';\n\nconst context = createContext({});\n\nexport const useContext = () => {\n return useReactContext(context);\n};\n\nexport const { Provider, Consumer } = context;\n\nexport default context;\n","import { useMemo, useState, useRef, useEffect } from 'react';\nimport { Flex, Row, Col } from 'antd';\nimport classnames from 'classnames';\nimport localStorage from '@kne/local-storage';\nimport { Image } from '@kne/react-file';\nimport UserCard from './UserCard';\nimport Menu from '../Menu';\nimport Toolbar from '../Toolbar';\nimport Icon from '@kne/react-icon';\nimport defaultLogo from './defaultLogo.svg';\nimport { ReactComponent as ExpandIcon } from './expand.svg';\nimport style from './style.module.scss';\nimport ErrorBoundary from '../ErrorComponent';\nimport SimpleBar from 'simplebar-react';\nimport 'simplebar-react/dist/simplebar.min.css';\nimport isMobile from '../isMobile';\nimport { Provider } from '../context';\nimport { useLocation } from 'react-router-dom';\n\nconst LayoutMenuOpenKey = 'LAYOUT_MENU_OPEN';\n\nconst Layout = ({\n className,\n menu,\n background = 'linear-gradient(0deg, #BBCFE7 0%, #BBCFE7 100%), #FFFFFF',\n menuMaxWidth = '254px',\n menuMinWidth = '84px',\n logo,\n menuHeader,\n userInfo,\n aiDialog = null,\n openScrollbar: openScrollbarProps,\n isMobile: isMobileProps,\n toolbarTarget,\n children\n}) => {\n const localMenuOpen = localStorage.getItem(LayoutMenuOpenKey);\n const [menuOpen, setMenuOpen] = useState(typeof localMenuOpen === 'boolean' ? localMenuOpen : true);\n const [toolbarShow, setToolbarShow] = useState(true);\n const [aiType, setAiType] = useState('closed');\n const deviceIsMobile = typeof isMobileProps === 'boolean' ? isMobileProps : isMobile();\n const openScrollbar = typeof openScrollbarProps === 'boolean' ? openScrollbarProps : !deviceIsMobile && !window.__COMPONENTS_CORE_SIMPLE_BAR_DISABLED;\n const userAvatar = userInfo?.avatar;\n const contextValue = useMemo(() => {\n return {\n setToolbarShow,\n setMenuOpen,\n deviceIsMobile,\n logo: Object.assign(\n {},\n logo\n ? logo\n : {\n src: defaultLogo\n }\n ),\n userAvatar\n };\n }, [deviceIsMobile, logo, userAvatar]);\n const topRef = useRef(null);\n const location = useLocation();\n useEffect(() => {\n topRef.current && topRef.current.scrollIntoView();\n }, [location]);\n return (\n <Provider value={contextValue}>\n <div ref={topRef} />\n <div\n className={classnames(className, 'layout', style['layout'], {\n 'is-mobile': deviceIsMobile,\n [style['is-mobile']]: deviceIsMobile,\n 'has-toolbar': toolbarShow,\n [style['has-toolbar']]: toolbarShow\n })}\n style={{\n '--menu-max-width': menuMaxWidth,\n '--menu-min-width': menuMinWidth,\n '--background': background\n }}\n >\n {deviceIsMobile && (\n <div\n className={classnames('layer-menu', style['layer-menu'], {\n ['open']: menuOpen,\n [style['open']]: menuOpen\n })}\n onClick={() => {\n setMenuOpen(false);\n }}\n />\n )}\n <Flex>\n <div\n className={classnames('menu', style['menu'], {\n ['open']: menuOpen,\n [style['open']]: menuOpen\n })}\n >\n <div className={classnames('logo', style['logo'])}>\n <Image className={style['logo-img']} {...contextValue.logo} />\n </div>\n <div\n className={classnames('expand-btn-wrapper', style['expand-btn-wrapper'])}\n onClick={() => {\n setMenuOpen(menuOpen => {\n localStorage.setItem(LayoutMenuOpenKey, !menuOpen);\n return !menuOpen;\n });\n }}\n >\n <ExpandIcon\n className={classnames('expand-btn', style['expand-btn'], {\n 'is-closed': !menuOpen\n })}\n />\n </div>\n <div className={classnames('menu-inner', style['menu-inner'])}>\n <div className={classnames('menu-header', style['menu-header'])}>\n <ErrorBoundary>{menuHeader ? typeof menuHeader === 'function' ? menuHeader({ menuOpen }) : menuHeader : <UserCard menuOpen={menuOpen} {...Object.assign({}, userInfo)} />}</ErrorBoundary>\n </div>\n <ErrorBoundary>\n <Menu\n className={classnames('menu-list', style['menu-list'])}\n menuOpen={menuOpen}\n {...menu}\n onChange={() => {\n deviceIsMobile && setMenuOpen(false);\n }}\n />\n </ErrorBoundary>\n {aiDialog && (\n <div\n className={classnames('ai-entry', style['ai-entry'])}\n onClick={() => {\n setAiType('small');\n }}\n >\n <Icon type=\"system-prompt\" colorful />\n </div>\n )}\n </div>\n </div>\n <Flex flex={1} className={classnames('page', style['page'])}>\n <Row className={classnames('page-content', style['page-content'])}>\n {!deviceIsMobile && aiDialog && aiType === 'inner' && (\n <Col span={8} className={classnames('page-dialog-outer', style['page-dialog-outer'])}>\n <div className={classnames('page-dialog', style['page-dialog'])}>\n <Flex className={classnames('ai-dialog-window-title', style['ai-dialog-window-title'])}>\n <div>{aiDialog.title}</div>\n <Flex gap={10}>\n <Icon\n className=\"btn\"\n type=\"icon-a-Typeclose\"\n fontClassName=\"system\"\n onClick={() => {\n setAiType('closed');\n }}\n />\n </Flex>\n </Flex>\n <ErrorBoundary>\n <div className={classnames('page-window-content', style['page-window-content'])}>{aiDialog.content}</div>\n </ErrorBoundary>\n </div>\n </Col>\n )}\n <Col span={!deviceIsMobile && aiDialog && aiType === 'inner' ? 16 : 24}>\n <ErrorBoundary>\n {openScrollbar ? (\n <SimpleBar\n className={classnames('page-children', style['page-children'], {\n ['has-left']: aiType === 'inner'\n })}\n >\n {children}\n </SimpleBar>\n ) : (\n <div\n className={classnames('page-children', 'is-scroller', style['page-children'], style['is-scroller'], {\n ['has-left']: aiType === 'inner'\n })}\n >\n {children}\n </div>\n )}\n </ErrorBoundary>\n </Col>\n </Row>\n </Flex>\n {aiDialog && aiType === 'small' && (\n <div className={classnames('ai-dialog-window', style['ai-dialog-window'])}>\n <Flex className={classnames('ai-dialog-window-title', style['ai-dialog-window-title'])}>\n <div>{aiDialog.title}</div>\n <Flex gap={10}>\n <Icon\n className=\"btn\"\n type=\"icon-a-Typeopen_in_full\"\n fontClassName=\"system\"\n onClick={() => {\n setAiType('inner');\n }}\n />\n <Icon\n className=\"btn\"\n type=\"icon-a-Typeclose\"\n fontClassName=\"system\"\n onClick={() => {\n setAiType('closed');\n }}\n />\n </Flex>\n </Flex>\n <ErrorBoundary>\n <div className={classnames('ai-dialog-window-content', style['ai-dialog-window-content'])}>{aiDialog.content}</div>\n </ErrorBoundary>\n </div>\n )}\n </Flex>\n <Toolbar {...menu} className={classnames(style['toolbar'])} show={toolbarShow} target={toolbarTarget} />\n </div>\n </Provider>\n );\n};\n\nexport default Layout;\n","import { Flex, Button } from 'antd';\nimport { useEffect } from 'react';\nimport Icon from '@kne/react-icon';\nimport ButtonGroup from '@kne/button-group';\nimport classnames from 'classnames';\nimport { useContext } from '../context';\nimport style from './style.module.scss';\nimport { Image } from '@kne/react-file';\n\nconst Page = ({ title, extra = null, back, buttonProps, children, toolbar = true }) => {\n const { setToolbarShow, setMenuOpen, deviceIsMobile, userAvatar } = useContext();\n useEffect(() => {\n setToolbarShow && setToolbarShow(!!toolbar);\n }, [toolbar]);\n return (\n <Flex\n vertical\n gap={24}\n className={classnames('page', style['page'], {\n ['is-mobile']: deviceIsMobile,\n [style['is-mobile']]: deviceIsMobile\n })}\n >\n <Flex justify=\"space-between\" align=\"center\" gap={20} className={classnames('page-header', style['page-header'])}>\n <Flex className={classnames('page-title-outer', style['page-title-outer'])} align=\"center\" gap={4}>\n {back && <Button type=\"text\" icon={<Icon className={style['back-icon']} type=\"a-Typearrow_forward_ios\" fontClassName=\"system\" />} />}\n {!back && deviceIsMobile && (\n <Button\n type=\"link\"\n icon={<Icon className={style['back-icon']} type=\"a-Typeequal\" fontClassName=\"system\" />}\n onClick={() => {\n setMenuOpen(open => !open);\n }}\n />\n )}\n <div className={classnames('page-title', style['page-title'])}>{title}</div>\n </Flex>\n <div className={classnames('page-title-extra', style['page-title-extra'])}>\n {extra ? (\n extra\n ) : deviceIsMobile ? (\n <Flex gap={4} align=\"center\">\n {buttonProps && <ButtonGroup {...Object.assign({}, buttonProps, deviceIsMobile ? { showLength: 0, moreType: 'link' } : {})} />}\n <Image.Avatar id={userAvatar} src={userAvatar} shape=\"circle\" size={30} alt=\"avatar\" />\n </Flex>\n ) : (\n buttonProps && <ButtonGroup {...buttonProps} />\n )}\n </div>\n </Flex>\n <div className={classnames('page-inner', style['page-inner'])}>{children}</div>\n </Flex>\n );\n};\n\nexport default Page;\n","export { default } from './Layout';\nexport { default as Layout } from './Layout';\nexport { default as Page } from './Page';\nexport { default as isMobile } from './isMobile';\nexport { useContext as useLayoutContext } from './context';\n\nimport('./icons/index');\n"],"names":["UserCard","name","avatar","email","phone","description","menuOpen","_jsx","Image","Avatar","id","src","shape","size","alt","_jsxs","Flex","gap","justify","children","vertical","className","classnames","style","Menu","items","activeKey","base","onChange","location","useLocation","navigate","useNavigate","currentPathname","pathname","replace","RegExp","map","item","index","_items","active","key","path","ensureSlash","icon","hasGroup","group","title","label","onClick","e","event","groupLabel","align","Icon","type","fontClassName","isValidElement","isPlainObject","_extends","Toolbar","show","target","toolbarMenu","filter","toolbar","createPortal","flex","document","body","locale","systemError","refresh","withLocale","createWithIntlProvider","defaultLocale","messages","zhCn","enUS","namespace","ErrorComponent","formatMessage","useIntl","Alert","message","showIcon","action","Button","danger","window","reload","ErrorBoundary","props","ReactErrorBoundary","errorComponent","isMobile","test","navigator","userAgent","context","createContext","useContext","useReactContext","Provider","Consumer","LayoutMenuOpenKey","Layout","menu","background","menuMaxWidth","menuMinWidth","logo","menuHeader","userInfo","aiDialog","openScrollbar","openScrollbarProps","isMobileProps","toolbarTarget","localMenuOpen","localStorage","getItem","setMenuOpen","useState","toolbarShow","setToolbarShow","aiType","setAiType","deviceIsMobile","__COMPONENTS_CORE_SIMPLE_BAR_DISABLED","userAvatar","contextValue","useMemo","Object","assign","defaultLogo","topRef","useRef","useEffect","current","scrollIntoView","value","ref","setItem","ExpandIcon","colorful","Row","Col","span","content","SimpleBar","Page","extra","back","buttonProps","open","ButtonGroup","showLength","moreType"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.modern.js","sources":["../src/Layout/UserCard.js","../src/Menu/index.js","../src/Toolbar/index.js","../src/locale/zh-CN.js","../src/locale/en-US.js","../src/withLocale.js","../src/ErrorComponent/index.js","../src/isMobile.js","../src/context.js","../src/Layout/index.js","../src/Page/index.js","../src/index.js"],"sourcesContent":["import { Image } from '@kne/react-file';\nimport { Flex } from 'antd';\nimport classnames from 'classnames';\nimport style from './style.module.scss';\n\nconst UserCard = ({ name, avatar, email, phone, description, menuOpen }) => {\n if (!menuOpen) {\n return <Image.Avatar id={avatar} src={avatar} shape=\"circle\" size={40} alt=\"avatar\" />;\n }\n return (\n <Flex gap={12} justify=\"center\">\n <Image.Avatar id={avatar} src={avatar} shape=\"circle\" size={40} alt=\"avatar\" />\n <Flex vertical>\n <div className={classnames('username', style['username'])}>{name || '-'}</div>\n <div className={classnames('user-description', style['user-description'])}>{email || phone || description || '-'}</div>\n </Flex>\n </Flex>\n );\n};\n\nexport default UserCard;\n","import { Flex } from 'antd';\nimport { isValidElement } from 'react';\nimport { useLocation, useNavigate } from 'react-router-dom';\nimport classnames from 'classnames';\nimport Icon from '@kne/react-icon';\nimport ensureSlash from '@kne/ensure-slash';\nimport isPlainObject from 'lodash/isPlainObject';\nimport style from './style.module.scss';\n\nconst Menu = ({ className, menuOpen, items, activeKey, base = '', onChange }) => {\n const location = useLocation();\n const navigate = useNavigate();\n const currentPathname = base ? location.pathname.replace(new RegExp(`^${base}`), '') : location.pathname;\n return (\n <div className={classnames('menu', className, style['menu-list'])}>\n {items.map((item, index) => {\n const active = (() => {\n if (typeof activeKey === 'string') {\n return activeKey === item.key;\n }\n if (typeof activeKey === 'function') {\n return activeKey(item, { menuOpen, base });\n }\n if (typeof item.path === 'string') {\n return ensureSlash(currentPathname) === ensureSlash(item.path);\n }\n return false;\n })();\n\n const icon = typeof item.icon === 'function' ? item.icon({ menuOpen, active }) : item.icon;\n const hasGroup = item.group && item.group !== items[index - 1]?.group;\n return (\n <div\n key={item.key || item.path || index}\n title={item.label}\n onClick={e => {\n if (active) {\n return;\n }\n onChange && onChange(item, { menuOpen, base });\n if (typeof item.onClick === 'function') {\n item.onClick(item, { menuOpen, base, event: e });\n return;\n }\n if (item.path) {\n navigate(ensureSlash(`${base}${item.path}`));\n }\n }}\n >\n {hasGroup && menuOpen ? <div className={classnames('menu-group', style['menu-group'])}>{item.groupLabel || item.group}</div> : null}\n {hasGroup && !menuOpen ? <div className={classnames('menu-group-split', style['menu-group-split'])} /> : null}\n <Flex\n className={classnames('menu-item', style['menu-item'], {\n ['is-active']: active,\n ['is-closed']: !menuOpen\n })}\n align=\"center\"\n gap={8}\n >\n {(icon => {\n if (typeof icon === 'string') {\n return <Icon className={classnames('menu-item-icon', style['menu-item-icon'])} type={icon} fontClassName=\"system\" />;\n }\n\n if (isValidElement(icon)) {\n return <span className={classnames('menu-item-icon', style['menu-item-icon'])}>{icon}</span>;\n }\n\n if (isPlainObject(icon) && typeof icon.type === 'string') {\n return <Icon {...icon} className={classnames('menu-item-icon', style['menu-item-icon'])} />;\n }\n\n return null;\n })(icon)}\n {menuOpen && item.label}\n </Flex>\n </div>\n );\n })}\n </div>\n );\n};\n\nexport default Menu;\n","import { createPortal } from 'react-dom';\nimport { Flex } from 'antd';\nimport ensureSlash from '@kne/ensure-slash';\nimport { useLocation, useNavigate } from 'react-router-dom';\nimport Icon from '@kne/react-icon';\nimport classnames from 'classnames';\nimport style from './style.module.scss';\nimport { isValidElement } from 'react';\nimport isPlainObject from 'lodash/isPlainObject';\n\nconst Toolbar = ({ show = true, className, items, activeKey, base = '', onChange, target }) => {\n const location = useLocation();\n const navigate = useNavigate();\n const currentPathname = base ? location.pathname.replace(new RegExp(`^${base}`), '') : location.pathname;\n const toolbarMenu = items.filter(item => item.toolbar);\n\n if (!show) {\n return null;\n }\n\n return (\n <div className={classnames('toolbar', style['toolbar'], className)}>\n {createPortal(\n <Flex className={classnames('toolbar-list', style['toolbar-list'])}>\n {toolbarMenu.map((item, index) => {\n const active = (() => {\n if (typeof activeKey === 'string') {\n return activeKey === item.key;\n }\n if (typeof activeKey === 'function') {\n return activeKey(item, { base });\n }\n if (typeof item.path === 'string') {\n return ensureSlash(currentPathname) === ensureSlash(item.path);\n }\n return false;\n })();\n const icon = typeof item.icon === 'function' ? item.icon({ active }) : item.icon;\n return (\n <Flex\n key={item.key || item.path || index}\n vertical\n flex={1}\n justify=\"center\"\n align=\"center\"\n className={classnames('toolbar-item', style['toolbar-item'], {\n ['is-active']: active\n })}\n onClick={e => {\n if (active) {\n return;\n }\n onChange && onChange(item, { base });\n if (typeof item.onClick === 'function') {\n item.onClick(item, { menuOpen, base, event: e });\n return;\n }\n if (item.path) {\n navigate(ensureSlash(`${base}${item.path}`));\n }\n }}\n >\n {(icon => {\n if (typeof icon === 'string') {\n return <Icon className={classnames('toolbar-item-icon', style['toolbar-item-icon'])} type={icon} fontClassName=\"system\" />;\n }\n\n if (isValidElement(icon)) {\n return <span className={classnames('toolbar-item-icon', style['toolbar-item-icon'])}>{icon}</span>;\n }\n\n if (isPlainObject(icon) && typeof icon.type === 'string') {\n return <Icon {...icon} className={classnames('toolbar-item-icon', style['toolbar-item-icon'])} />;\n }\n\n return null;\n })(icon)}\n <div className={classnames('toolbar-item-label', style['toolbar-item-label'])}>{item.label}</div>\n </Flex>\n );\n })}\n </Flex>,\n target ? (typeof target === 'function' ? target() : target) : document.body\n )}\n </div>\n );\n};\n\nexport default Toolbar;\n","const locale = {\n systemError: '系统出了点小问题,可刷新页面进行解决',\n refresh: '刷新'\n};\n\nexport default locale;\n","const locale = {\n systemError: 'The system encountered a minor issue, please refresh the page to resolve it',\n refresh: 'Refresh'\n};\n\nexport default locale;\n","import { createWithIntlProvider } from '@kne/react-intl';\nimport zhCn from './locale/zh-CN';\nimport enUS from './locale/en-US';\n\nconst withLocale = createWithIntlProvider({\n defaultLocale: 'zh-CN',\n messages: {\n 'zh-CN': zhCn,\n 'en-US': enUS\n },\n namespace: 'system-layout'\n});\n\nexport default withLocale;\n","import React from 'react';\nimport { Alert, Button } from 'antd';\nimport ReactErrorBoundary from '@kne/react-error-boundary';\nimport { useIntl } from '@kne/react-intl';\nimport withLocale from '../withLocale';\n\nconst ErrorComponent = withLocale(() => {\n const { formatMessage } = useIntl();\n return (\n <Alert\n message={formatMessage({ id: 'systemError' })}\n showIcon\n type=\"error\"\n action={\n <Button size=\"small\" danger onClick={() => window.location.reload()}>\n {formatMessage({ id: 'refresh' })}\n </Button>\n }\n />\n );\n});\n\nconst ErrorBoundary = props => {\n return <ReactErrorBoundary {...props} errorComponent={ErrorComponent} />;\n};\n\nexport default ErrorBoundary;\n","const isMobile = () => {\n return /iPhone|iPod|Android|ios|iPad/i.test(navigator.userAgent);\n};\n\nexport default isMobile;\n","import { createContext, useContext as useReactContext } from 'react';\n\nconst context = createContext({});\n\nexport const useContext = () => {\n return useReactContext(context);\n};\n\nexport const { Provider, Consumer } = context;\n\nexport default context;\n","import { useMemo, useState, useRef, useEffect } from 'react';\nimport { Flex, Row, Col } from 'antd';\nimport classnames from 'classnames';\nimport localStorage from '@kne/local-storage';\nimport { Image } from '@kne/react-file';\nimport UserCard from './UserCard';\nimport Menu from '../Menu';\nimport Toolbar from '../Toolbar';\nimport Icon from '@kne/react-icon';\nimport defaultLogo from './defaultLogo.svg';\nimport { ReactComponent as ExpandIcon } from './expand.svg';\nimport style from './style.module.scss';\nimport ErrorBoundary from '../ErrorComponent';\nimport SimpleBar from 'simplebar-react';\nimport 'simplebar-react/dist/simplebar.min.css';\nimport isMobile from '../isMobile';\nimport { Provider } from '../context';\nimport { useLocation } from 'react-router-dom';\n\nconst LayoutMenuOpenKey = 'LAYOUT_MENU_OPEN';\n\nconst Layout = ({\n className,\n menu,\n background = 'linear-gradient(0deg, #BBCFE7 0%, #BBCFE7 100%), #FFFFFF',\n menuMaxWidth = '254px',\n menuMinWidth = '84px',\n logo,\n menuHeader,\n userInfo,\n aiDialog = null,\n openScrollbar: openScrollbarProps,\n isMobile: isMobileProps,\n toolbarTarget,\n children\n}) => {\n const localMenuOpen = localStorage.getItem(LayoutMenuOpenKey);\n const [menuOpen, setMenuOpen] = useState(typeof localMenuOpen === 'boolean' ? localMenuOpen : true);\n const [toolbarShow, setToolbarShow] = useState(true);\n const [aiType, setAiType] = useState('closed');\n const deviceIsMobile = typeof isMobileProps === 'boolean' ? isMobileProps : isMobile();\n const openScrollbar = typeof openScrollbarProps === 'boolean' ? openScrollbarProps : !deviceIsMobile && !window.__COMPONENTS_CORE_SIMPLE_BAR_DISABLED;\n const userAvatar = userInfo?.avatar;\n const contextValue = useMemo(() => {\n return {\n setToolbarShow,\n setMenuOpen,\n deviceIsMobile,\n logo: Object.assign(\n {},\n logo\n ? logo\n : {\n src: defaultLogo\n }\n ),\n userAvatar\n };\n }, [deviceIsMobile, logo, userAvatar]);\n const topRef = useRef(null);\n const location = useLocation();\n useEffect(() => {\n topRef.current && topRef.current.scrollIntoView();\n }, [location]);\n return (\n <Provider value={contextValue}>\n <div ref={topRef} />\n <div\n className={classnames(className, 'layout', style['layout'], {\n 'is-mobile': deviceIsMobile,\n [style['is-mobile']]: deviceIsMobile,\n 'has-toolbar': deviceIsMobile && toolbarShow,\n [style['has-toolbar']]: deviceIsMobile && toolbarShow\n })}\n style={{\n '--menu-max-width': menuMaxWidth,\n '--menu-min-width': menuMinWidth,\n '--background': background\n }}\n >\n {deviceIsMobile && (\n <div\n className={classnames('layer-menu', style['layer-menu'], {\n ['open']: menuOpen,\n [style['open']]: menuOpen\n })}\n onClick={() => {\n setMenuOpen(false);\n }}\n />\n )}\n <Flex>\n <div\n className={classnames('menu', style['menu'], {\n ['open']: menuOpen,\n [style['open']]: menuOpen\n })}\n >\n <div className={classnames('logo', style['logo'])}>\n <Image className={style['logo-img']} {...contextValue.logo} />\n </div>\n <div\n className={classnames('expand-btn-wrapper', style['expand-btn-wrapper'])}\n onClick={() => {\n setMenuOpen(menuOpen => {\n localStorage.setItem(LayoutMenuOpenKey, !menuOpen);\n return !menuOpen;\n });\n }}\n >\n <ExpandIcon\n className={classnames('expand-btn', style['expand-btn'], {\n 'is-closed': !menuOpen\n })}\n />\n </div>\n <div className={classnames('menu-inner', style['menu-inner'])}>\n <div className={classnames('menu-header', style['menu-header'])}>\n <ErrorBoundary>{menuHeader ? typeof menuHeader === 'function' ? menuHeader({ menuOpen }) : menuHeader : <UserCard menuOpen={menuOpen} {...Object.assign({}, userInfo)} />}</ErrorBoundary>\n </div>\n <ErrorBoundary>\n <Menu\n className={classnames('menu-list', style['menu-list'])}\n menuOpen={menuOpen}\n {...menu}\n onChange={() => {\n deviceIsMobile && setMenuOpen(false);\n }}\n />\n </ErrorBoundary>\n {aiDialog && (\n <div\n className={classnames('ai-entry', style['ai-entry'])}\n onClick={() => {\n setAiType('small');\n }}\n >\n <Icon type=\"system-prompt\" colorful />\n </div>\n )}\n </div>\n </div>\n <Flex flex={1} className={classnames('page', style['page'])}>\n <Row className={classnames('page-content', style['page-content'])}>\n {!deviceIsMobile && aiDialog && aiType === 'inner' && (\n <Col span={8} className={classnames('page-dialog-outer', style['page-dialog-outer'])}>\n <div className={classnames('page-dialog', style['page-dialog'])}>\n <Flex className={classnames('ai-dialog-window-title', style['ai-dialog-window-title'])}>\n <div>{aiDialog.title}</div>\n <Flex gap={10}>\n <Icon\n className=\"btn\"\n type=\"icon-a-Typeclose\"\n fontClassName=\"system\"\n onClick={() => {\n setAiType('closed');\n }}\n />\n </Flex>\n </Flex>\n <ErrorBoundary>\n <div className={classnames('page-window-content', style['page-window-content'])}>{aiDialog.content}</div>\n </ErrorBoundary>\n </div>\n </Col>\n )}\n <Col span={!deviceIsMobile && aiDialog && aiType === 'inner' ? 16 : 24}>\n <ErrorBoundary>\n {openScrollbar ? (\n <SimpleBar\n className={classnames('page-children', style['page-children'], {\n ['has-left']: aiType === 'inner'\n })}\n >\n {children}\n </SimpleBar>\n ) : (\n <div\n className={classnames('page-children', 'is-scroller', style['page-children'], style['is-scroller'], {\n ['has-left']: aiType === 'inner'\n })}\n >\n {children}\n </div>\n )}\n </ErrorBoundary>\n </Col>\n </Row>\n </Flex>\n {aiDialog && aiType === 'small' && (\n <div className={classnames('ai-dialog-window', style['ai-dialog-window'])}>\n <Flex className={classnames('ai-dialog-window-title', style['ai-dialog-window-title'])}>\n <div>{aiDialog.title}</div>\n <Flex gap={10}>\n <Icon\n className=\"btn\"\n type=\"icon-a-Typeopen_in_full\"\n fontClassName=\"system\"\n onClick={() => {\n setAiType('inner');\n }}\n />\n <Icon\n className=\"btn\"\n type=\"icon-a-Typeclose\"\n fontClassName=\"system\"\n onClick={() => {\n setAiType('closed');\n }}\n />\n </Flex>\n </Flex>\n <ErrorBoundary>\n <div className={classnames('ai-dialog-window-content', style['ai-dialog-window-content'])}>{aiDialog.content}</div>\n </ErrorBoundary>\n </div>\n )}\n </Flex>\n <Toolbar {...menu} className={classnames(style['toolbar'])} show={deviceIsMobile && toolbarShow} target={toolbarTarget} />\n </div>\n </Provider>\n );\n};\n\nexport default Layout;\n","import { Flex, Button } from 'antd';\nimport { useEffect } from 'react';\nimport Icon from '@kne/react-icon';\nimport ButtonGroup from '@kne/button-group';\nimport classnames from 'classnames';\nimport { useContext } from '../context';\nimport style from './style.module.scss';\nimport { Image } from '@kne/react-file';\n\nconst Page = ({ title, extra = null, back, buttonProps, children, toolbar = true }) => {\n const { setToolbarShow, setMenuOpen, deviceIsMobile, userAvatar } = useContext();\n useEffect(() => {\n setToolbarShow && setToolbarShow(!!toolbar);\n }, [toolbar]);\n return (\n <Flex\n vertical\n gap={24}\n className={classnames('page', style['page'], {\n ['is-mobile']: deviceIsMobile,\n [style['is-mobile']]: deviceIsMobile\n })}\n >\n <Flex justify=\"space-between\" align=\"center\" gap={20} className={classnames('page-header', style['page-header'])}>\n <Flex className={classnames('page-title-outer', style['page-title-outer'])} align=\"center\" gap={4}>\n {back && <Button type=\"text\" icon={<Icon className={style['back-icon']} type=\"a-Typearrow_forward_ios\" fontClassName=\"system\" />} />}\n {!back && deviceIsMobile && (\n <Button\n type=\"link\"\n icon={<Icon className={style['back-icon']} type=\"a-Typeequal\" fontClassName=\"system\" />}\n onClick={() => {\n setMenuOpen(open => !open);\n }}\n />\n )}\n <div className={classnames('page-title', style['page-title'])}>{title}</div>\n </Flex>\n <div className={classnames('page-title-extra', style['page-title-extra'])}>\n {extra ? (\n extra\n ) : deviceIsMobile ? (\n <Flex gap={4} align=\"center\">\n {buttonProps && <ButtonGroup {...Object.assign({}, buttonProps, deviceIsMobile ? { showLength: 0, moreType: 'link' } : {})} />}\n <Image.Avatar id={userAvatar} src={userAvatar} shape=\"circle\" size={30} alt=\"avatar\" />\n </Flex>\n ) : (\n buttonProps && <ButtonGroup {...buttonProps} />\n )}\n </div>\n </Flex>\n <div className={classnames('page-inner', style['page-inner'])}>{children}</div>\n </Flex>\n );\n};\n\nexport default Page;\n","export { default } from './Layout';\nexport { default as Layout } from './Layout';\nexport { default as Page } from './Page';\nexport { default as isMobile } from './isMobile';\nexport { useContext as useLayoutContext } from './context';\n\nimport('./icons/index');\n"],"names":["UserCard","name","avatar","email","phone","description","menuOpen","_jsx","Image","Avatar","id","src","shape","size","alt","_jsxs","Flex","gap","justify","children","vertical","className","classnames","style","Menu","items","activeKey","base","onChange","location","useLocation","navigate","useNavigate","currentPathname","pathname","replace","RegExp","map","item","index","_items","active","key","path","ensureSlash","icon","hasGroup","group","title","label","onClick","e","event","groupLabel","align","Icon","type","fontClassName","isValidElement","isPlainObject","_extends","Toolbar","show","target","toolbarMenu","filter","toolbar","createPortal","flex","document","body","locale","systemError","refresh","withLocale","createWithIntlProvider","defaultLocale","messages","zhCn","enUS","namespace","ErrorComponent","formatMessage","useIntl","Alert","message","showIcon","action","Button","danger","window","reload","ErrorBoundary","props","ReactErrorBoundary","errorComponent","isMobile","test","navigator","userAgent","context","createContext","useContext","useReactContext","Provider","Consumer","LayoutMenuOpenKey","Layout","menu","background","menuMaxWidth","menuMinWidth","logo","menuHeader","userInfo","aiDialog","openScrollbar","openScrollbarProps","isMobileProps","toolbarTarget","localMenuOpen","localStorage","getItem","setMenuOpen","useState","toolbarShow","setToolbarShow","aiType","setAiType","deviceIsMobile","__COMPONENTS_CORE_SIMPLE_BAR_DISABLED","userAvatar","contextValue","useMemo","Object","assign","defaultLogo","topRef","useRef","useEffect","current","scrollIntoView","value","ref","setItem","ExpandIcon","colorful","Row","Col","span","content","SimpleBar","Page","extra","back","buttonProps","open","ButtonGroup","showLength","moreType"],"mappings":"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"}
|