balibabu
feat: Add Sider to SearchPage #2247 (#2262)
f372e89
raw
history blame
2.18 kB
import { useNextFetchKnowledgeList } from '@/hooks/knowledge-hooks';
import { Checkbox, Layout, List, Typography } from 'antd';
import React, { useCallback } from 'react';
import { CheckboxValueType } from 'antd/es/checkbox/Group';
import styles from './index.less';
const { Header, Content, Footer, Sider } = Layout;
const SearchPage = () => {
const { list } = useNextFetchKnowledgeList();
const handleChange = useCallback((checkedValue: CheckboxValueType[]) => {
console.log('🚀 ~ handleChange ~ args:', checkedValue);
}, []);
return (
<Layout hasSider>
<Sider className={styles.searchSide} theme={'light'}>
<Checkbox.Group className={styles.checkGroup} onChange={handleChange}>
<List
bordered
dataSource={list}
className={styles.list}
renderItem={(item) => (
<List.Item>
<Checkbox value={item.id} className={styles.checkbox}>
<Typography.Text
ellipsis={{ tooltip: item.name }}
className={styles.knowledgeName}
>
{item.name}
</Typography.Text>
</Checkbox>
</List.Item>
)}
/>
</Checkbox.Group>
</Sider>
<Layout style={{ marginInlineStart: 200 }}>
<Header style={{ padding: 0 }} />
<Content style={{ margin: '24px 16px 0', overflow: 'initial' }}>
<div
style={{
padding: 24,
textAlign: 'center',
}}
>
<p>long content</p>
{
// indicates very long content
Array.from({ length: 100 }, (_, index) => (
<React.Fragment key={index}>
{index % 20 === 0 && index ? 'more' : '...'}
<br />
</React.Fragment>
))
}
</div>
</Content>
<Footer style={{ textAlign: 'center' }}>
Ant Design ©{new Date().getFullYear()} Created by Ant UED
</Footer>
</Layout>
</Layout>
);
};
export default SearchPage;