@turinhub/atomix-common-ui 0.2.2 → 0.3.0
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/README.md +4 -0
- package/dist/components/FileUpload.d.ts +61 -0
- package/dist/components/FileUpload.d.ts.map +1 -0
- package/dist/index-DJdfLA8M.js +2140 -0
- package/dist/index-DJdfLA8M.js.map +1 -0
- package/dist/{index-Ba1twkJn.js → index-DUxYhmkV.js} +2 -2
- package/dist/{index-Ba1twkJn.js.map → index-DUxYhmkV.js.map} +1 -1
- package/dist/{index-CN76z2bu.cjs → index-miejqTjn.cjs} +3 -3
- package/dist/{index-CN76z2bu.cjs.map → index-miejqTjn.cjs.map} +1 -1
- package/dist/index-tIca-Q_M.cjs +23 -0
- package/dist/index-tIca-Q_M.cjs.map +1 -0
- package/dist/index.c.js +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -7
- package/package.json +1 -1
- package/dist/index-6lJCWESg.js +0 -1793
- package/dist/index-6lJCWESg.js.map +0 -1
- package/dist/index-C94iJmKE.cjs +0 -23
- package/dist/index-C94iJmKE.cjs.map +0 -1
package/README.md
CHANGED
|
@@ -104,6 +104,7 @@ import { dataTableUI } from '@/lib/ui-adapter';
|
|
|
104
104
|
- **TablePagination** - 分页组件
|
|
105
105
|
- **ThemeSwitcher** - 主题切换组件(完整版,支持下拉菜单)
|
|
106
106
|
- **ThemeSwitcherContent** - 主题切换内容组件(轻量版,可嵌入)
|
|
107
|
+
- **FileUpload** - 标准文件上传界面(支持拖拽、校验、进度、失败重试,可接入 Tale SDK 上传流程)
|
|
107
108
|
- **SimplePDFReader** - 轻量级 PDF 阅读器组件
|
|
108
109
|
- **PDFReader** - 功能完整的 PDF 阅读器组件(包含侧边栏导航、页面旋转等高级功能)
|
|
109
110
|
- **PDFSidebar** - PDF 侧边栏导航组件(缩略图和书签)
|
|
@@ -173,6 +174,9 @@ import type {
|
|
|
173
174
|
ThemeSwitcherContentProps,
|
|
174
175
|
ThemeSwitcherContentUIComponents,
|
|
175
176
|
ThemeOption,
|
|
177
|
+
FileUploadProps,
|
|
178
|
+
FileUploadUIComponents,
|
|
179
|
+
FileUploadItem,
|
|
176
180
|
SimplePDFReaderProps,
|
|
177
181
|
SimplePDFReaderUIComponents,
|
|
178
182
|
PDFReaderProps,
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { HTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
import { ButtonComponent, CardComponent, UIComponent } from '../types/component-types';
|
|
3
|
+
export type FileUploadStatus = 'ready' | 'uploading' | 'success' | 'error';
|
|
4
|
+
export interface FileUploadItem<TResult = unknown> {
|
|
5
|
+
id: string;
|
|
6
|
+
file: File;
|
|
7
|
+
name: string;
|
|
8
|
+
size: number;
|
|
9
|
+
type: string;
|
|
10
|
+
status: FileUploadStatus;
|
|
11
|
+
progress: number;
|
|
12
|
+
error?: string;
|
|
13
|
+
result?: TResult;
|
|
14
|
+
}
|
|
15
|
+
export interface FileUploadHelpers {
|
|
16
|
+
setProgress: (progress: number) => void;
|
|
17
|
+
}
|
|
18
|
+
export interface FileUploadUIComponents {
|
|
19
|
+
Card: CardComponent;
|
|
20
|
+
CardHeader?: UIComponent<HTMLAttributes<HTMLDivElement>>;
|
|
21
|
+
CardTitle?: UIComponent<HTMLAttributes<HTMLDivElement>>;
|
|
22
|
+
CardDescription?: UIComponent<HTMLAttributes<HTMLDivElement>>;
|
|
23
|
+
CardContent: UIComponent<HTMLAttributes<HTMLDivElement>>;
|
|
24
|
+
CardFooter?: UIComponent<HTMLAttributes<HTMLDivElement>>;
|
|
25
|
+
Button: ButtonComponent;
|
|
26
|
+
}
|
|
27
|
+
export interface FileUploadProps<TResult = unknown> {
|
|
28
|
+
components?: FileUploadUIComponents;
|
|
29
|
+
title?: ReactNode;
|
|
30
|
+
description?: ReactNode;
|
|
31
|
+
helperText?: ReactNode;
|
|
32
|
+
accept?: string;
|
|
33
|
+
multiple?: boolean;
|
|
34
|
+
maxFiles?: number;
|
|
35
|
+
maxSize?: number;
|
|
36
|
+
disabled?: boolean;
|
|
37
|
+
autoUpload?: boolean;
|
|
38
|
+
showUploadButton?: boolean;
|
|
39
|
+
showResetButton?: boolean;
|
|
40
|
+
selectLabel?: string;
|
|
41
|
+
uploadLabel?: string;
|
|
42
|
+
retryLabel?: string;
|
|
43
|
+
resetLabel?: string;
|
|
44
|
+
emptyLabel?: ReactNode;
|
|
45
|
+
dropzoneLabel?: ReactNode;
|
|
46
|
+
dropzoneDescription?: ReactNode;
|
|
47
|
+
uploadingText?: string;
|
|
48
|
+
successText?: string;
|
|
49
|
+
errorText?: string;
|
|
50
|
+
className?: string;
|
|
51
|
+
dropzoneClassName?: string;
|
|
52
|
+
listClassName?: string;
|
|
53
|
+
formatFileSize?: (size: number) => string;
|
|
54
|
+
validateFile?: (file: File, currentItems: FileUploadItem<TResult>[]) => string | undefined;
|
|
55
|
+
onFilesChange?: (items: FileUploadItem<TResult>[]) => void;
|
|
56
|
+
onUpload?: (item: FileUploadItem<TResult>, helpers: FileUploadHelpers) => Promise<TResult> | TResult;
|
|
57
|
+
onUploadComplete?: (item: FileUploadItem<TResult>) => void;
|
|
58
|
+
onUploadError?: (item: FileUploadItem<TResult>, error: unknown) => void;
|
|
59
|
+
}
|
|
60
|
+
export declare function FileUpload<TResult = unknown>({ components, title, description, helperText, accept, multiple, maxFiles, maxSize, disabled, autoUpload, showUploadButton, showResetButton, selectLabel, uploadLabel, retryLabel, resetLabel, emptyLabel, dropzoneLabel, dropzoneDescription, uploadingText, successText, errorText, className, dropzoneClassName, listClassName, formatFileSize, validateFile, onFilesChange, onUpload, onUploadComplete, onUploadError, }: FileUploadProps<TResult>): import("react/jsx-runtime").JSX.Element;
|
|
61
|
+
//# sourceMappingURL=FileUpload.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileUpload.d.ts","sourceRoot":"","sources":["../../src/components/FileUpload.tsx"],"names":[],"mappings":"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"}
|