+ {/*todo drag file*/}
+ {/*{dragEnterCount > 0 ? (
+
+
+
+ ) : null}*/}
+
+
+
+ {/*handle context*/}
+
+
+
+ {selectedMatterUuids.length !== data?.list.length && (
+
+ )}
+
+ {!!data?.list.length && selectedMatterUuids.length === data.list.length && (
+
+ )}
+
+ {selectedMatterUuids.length > 0 && (
+ <>
+
+ {checkHandlePermission() && (
+
+ )}
+ >
+ )}
+
+
+
+
+
+
+
+ setUrlQuery({
+ keyword: e.target.value,
+ // todo 考虑非第一页的情况会不会自动跳转到第一页
+ })
+ }
+ />
+
+
+
+ {/*uploader context*/}
+
+
+
handleChangeSortFilter('orderName')}>
+ {Lang.t('matter.fileName')}
+ {renderSortIcon(urlQuery.orderName)}
+
+
handleChangeSortFilter('orderSize')}>
+ {Lang.t('matter.size')}
+ {renderSortIcon(urlQuery.orderSize)}
+
+
handleChangeSortFilter('orderUpdateTime')}>
+ {Lang.t('matter.updateDate')}
+ {renderSortIcon(urlQuery.orderUpdateTime)}
+
+
+
+
+ {isCreateDir && handleCreateDir(name)} />}
+ {data?.list.map((matter) => (
+ handleMatterToggleSelect(matter)}
+ onTogglePrivacy={() => handleMatterTogglePrivacy(matter)}
+ onDelete={() => handleMatterDelete(matter)}
+ onSaveName={(name) => handleMatterRename(matter, name)}
+ onClickRow={() => handleMatterClickRow(matter)}
+ />
+ ))}
+
+
+
+
+ )
+}
+
+export default List
diff --git a/src/pages-hook/matter/components/MatterCreateItem.less b/src/pages-hook/matter/components/MatterCreateItem.less
new file mode 100644
index 0000000..49091c3
--- /dev/null
+++ b/src/pages-hook/matter/components/MatterCreateItem.less
@@ -0,0 +1,44 @@
+.widget-matter-create-item {
+ border-top: 1px solid #eee;
+ background-color: white;
+ display: flex;
+ align-content: center;
+ flex-wrap: nowrap;
+ line-height: 48px;
+
+ .checkbox-wrapper {
+ margin-left: 10px;
+ position: relative;
+ flex-shrink: 0;
+ &:after {
+ position: absolute;
+ top: 0;
+ right: -10px;
+ bottom: 0;
+ left: -10px;
+ content: '';
+ }
+ }
+
+ .icon-wrapper {
+ margin-left: 10px;
+ width: 24px;
+ flex-shrink: 0;
+ display: flex;
+ align-items: center;
+ img {
+ width: 24px;
+ }
+ }
+
+ .name-wrapper {
+ flex-grow: 1;
+ margin-left: 10px;
+ overflow: hidden;
+ .name-input {
+ width: calc(100% - 20px);
+ height: 26px;
+ padding: 6px;
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/pages-hook/matter/components/MatterCreateItem.tsx b/src/pages-hook/matter/components/MatterCreateItem.tsx
new file mode 100644
index 0000000..933828e
--- /dev/null
+++ b/src/pages-hook/matter/components/MatterCreateItem.tsx
@@ -0,0 +1,37 @@
+import { Checkbox } from 'antd'
+import React from 'react'
+import FileUtil from '@/common/util/FileUtil'
+import Lang from '@/common/model/global/Lang'
+import './MatterCreateItem.less'
+
+interface Props {
+ onBlurInput: (name: string) => void
+}
+
+const MatterCreateItem = ({ onBlurInput }: Props) => {
+ return (
+