@zjpcy/simple-design 1.2.11 → 1.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 +2 -2
- package/dist/cjs/index.css +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/es/Icon/path.js +1 -1
- package/dist/es/Layout/index.js +1 -1
- package/dist/es/Menu/index.js +1 -1
- package/dist/es/Spin/index.js +1 -0
- package/dist/es/Splitter/index.js +1 -0
- package/dist/es/Splitter/styles.js +1 -0
- package/dist/es/Upload/index.js +1 -0
- package/dist/es/index.css +1 -1
- package/dist/es/index.js +1 -1
- package/dist/es/src/i18n/locales/en-US.json.js +1 -1
- package/dist/es/src/i18n/locales/zh-CN.json.js +1 -1
- package/dist/i18n/locales/en-US.json +7 -7
- package/dist/i18n/locales/zh-CN.json +7 -7
- package/dist/types/components/Menu/types.d.ts +7 -1
- package/dist/types/components/Spin/index.d.ts +6 -0
- package/dist/types/components/Spin/types.d.ts +44 -0
- package/dist/types/components/Splitter/index.d.ts +9 -0
- package/dist/types/components/Splitter/styles.d.ts +61 -0
- package/dist/types/components/Splitter/types.d.ts +115 -0
- package/dist/types/components/Upload/index.d.ts +6 -0
- package/dist/types/components/Upload/styles.d.ts +28 -0
- package/dist/types/components/Upload/types.d.ts +90 -0
- package/dist/types/components/index.d.ts +6 -0
- package/dist/variables.css +31 -0
- package/package.json +1 -1
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { ReactNode, CSSProperties } from 'react';
|
|
2
|
+
export type SpinSize = 'small' | 'default' | 'large';
|
|
3
|
+
export interface SpinProps {
|
|
4
|
+
/**
|
|
5
|
+
* 是否为加载状态
|
|
6
|
+
* @default true
|
|
7
|
+
*/
|
|
8
|
+
spinning?: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* 加载指示符
|
|
11
|
+
*/
|
|
12
|
+
indicator?: ReactNode;
|
|
13
|
+
/**
|
|
14
|
+
* 当作为包裹元素时,可以自定义描述文案
|
|
15
|
+
*/
|
|
16
|
+
tip?: ReactNode;
|
|
17
|
+
/**
|
|
18
|
+
* 组件大小
|
|
19
|
+
* @default 'default'
|
|
20
|
+
*/
|
|
21
|
+
size?: SpinSize;
|
|
22
|
+
/**
|
|
23
|
+
* 延迟显示加载效果的时间(防止闪烁)
|
|
24
|
+
* @default 0
|
|
25
|
+
*/
|
|
26
|
+
delay?: number;
|
|
27
|
+
/**
|
|
28
|
+
* 自定义类名
|
|
29
|
+
*/
|
|
30
|
+
className?: string;
|
|
31
|
+
/**
|
|
32
|
+
* 自定义样式
|
|
33
|
+
*/
|
|
34
|
+
style?: CSSProperties;
|
|
35
|
+
/**
|
|
36
|
+
* 包裹的子元素
|
|
37
|
+
*/
|
|
38
|
+
children?: ReactNode;
|
|
39
|
+
/**
|
|
40
|
+
* 是否全屏显示
|
|
41
|
+
* @default false
|
|
42
|
+
*/
|
|
43
|
+
fullscreen?: boolean;
|
|
44
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Splitter 组件样式工具函数
|
|
3
|
+
* 使用 CSS 变量与现代化设计系统保持一致
|
|
4
|
+
*/
|
|
5
|
+
import { CSSProperties } from 'react';
|
|
6
|
+
/**
|
|
7
|
+
* 获取容器样式
|
|
8
|
+
*/
|
|
9
|
+
export declare const getContainerStyle: (layout: "horizontal" | "vertical", customStyle?: CSSProperties) => CSSProperties;
|
|
10
|
+
/**
|
|
11
|
+
* 获取面板样式
|
|
12
|
+
* @param size - 面板尺寸(像素)
|
|
13
|
+
* @param layout - 布局方向
|
|
14
|
+
* @param index - 面板索引
|
|
15
|
+
* @param totalPanels - 面板总数
|
|
16
|
+
*/
|
|
17
|
+
export declare const getPanelStyle: (size: number, layout: "horizontal" | "vertical", index?: number, totalPanels?: number) => CSSProperties;
|
|
18
|
+
/**
|
|
19
|
+
* 获取分割条样式
|
|
20
|
+
* 使用 CSS 变量实现现代化渐变和阴影效果
|
|
21
|
+
* @param layout - 布局方向
|
|
22
|
+
* @param splitterSize - 分割条大小
|
|
23
|
+
* @param disabled - 是否禁用
|
|
24
|
+
* @param index - 分割条索引
|
|
25
|
+
*/
|
|
26
|
+
export declare const getSplitterBarStyle: (layout: "horizontal" | "vertical", splitterSize: number | undefined, disabled: boolean, index?: number) => CSSProperties;
|
|
27
|
+
/**
|
|
28
|
+
* 获取分割线样式
|
|
29
|
+
* 支持自定义颜色和拖拽状态
|
|
30
|
+
* @param layout - 布局方向
|
|
31
|
+
* @param lineColor - 线条颜色
|
|
32
|
+
* @param lineHoverColor - 悬停颜色
|
|
33
|
+
* @param isDragging - 是否正在拖拽
|
|
34
|
+
* @param isActive - 是否激活状态(当前拖拽的分割条)
|
|
35
|
+
*/
|
|
36
|
+
export declare const getSplitterLineStyle: (layout: "horizontal" | "vertical", lineColor: string | undefined, lineHoverColor: string | undefined, isDragging: boolean, isActive?: boolean) => CSSProperties;
|
|
37
|
+
/**
|
|
38
|
+
* 获取拖拽遮罩层样式
|
|
39
|
+
* 用于拖拽时覆盖整个页面防止事件穿透
|
|
40
|
+
*/
|
|
41
|
+
export declare const getDragOverlayStyle: () => CSSProperties;
|
|
42
|
+
/**
|
|
43
|
+
* 解析尺寸配置为数组
|
|
44
|
+
* @param size - 尺寸配置(单值或数组)
|
|
45
|
+
* @param count - 面板数量
|
|
46
|
+
* @param defaultValue - 默认值
|
|
47
|
+
*/
|
|
48
|
+
export declare const parseSizeConfig: (size: number | string | (number | string)[] | undefined, count: number, defaultValue?: number | string) => (number | string)[];
|
|
49
|
+
/**
|
|
50
|
+
* 解析数字配置为数组
|
|
51
|
+
* @param value - 数值配置(单值或数组)
|
|
52
|
+
* @param count - 面板数量
|
|
53
|
+
* @param defaultValue - 默认值
|
|
54
|
+
*/
|
|
55
|
+
export declare const parseNumberConfig: (value: number | number[] | undefined, count: number, defaultValue: number) => number[];
|
|
56
|
+
/**
|
|
57
|
+
* 将尺寸值转换为像素
|
|
58
|
+
* @param size - 尺寸值(数字或百分比字符串)
|
|
59
|
+
* @param availableSpace - 可用空间
|
|
60
|
+
*/
|
|
61
|
+
export declare const parseSizeToPixels: (size: number | string, availableSpace: number) => number;
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Splitter 组件类型定义
|
|
3
|
+
* 用于自由切分指定区域,支持水平和垂直分隔,支持多面板
|
|
4
|
+
*/
|
|
5
|
+
import React from 'react';
|
|
6
|
+
/**
|
|
7
|
+
* 单个面板配置
|
|
8
|
+
*/
|
|
9
|
+
export interface SplitterPanel {
|
|
10
|
+
/** 面板内容 */
|
|
11
|
+
content: React.ReactNode;
|
|
12
|
+
/** 面板默认大小(像素或百分比) */
|
|
13
|
+
defaultSize?: number | string;
|
|
14
|
+
/** 面板最小尺寸 */
|
|
15
|
+
minSize?: number;
|
|
16
|
+
/** 面板最大尺寸 */
|
|
17
|
+
maxSize?: number;
|
|
18
|
+
/** 是否禁用该面板相邻的分割条拖拽 */
|
|
19
|
+
disabled?: boolean;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Splitter 组件 Props
|
|
23
|
+
*/
|
|
24
|
+
export interface SplitterProps {
|
|
25
|
+
/** 布局方向 */
|
|
26
|
+
layout?: 'horizontal' | 'vertical';
|
|
27
|
+
/**
|
|
28
|
+
* 面板数组,支持多面板配置
|
|
29
|
+
* 当提供 panels 时,优先使用 panels,忽略 left/right/top/bottom/children
|
|
30
|
+
*/
|
|
31
|
+
panels?: SplitterPanel[];
|
|
32
|
+
/**
|
|
33
|
+
* 默认大小配置(像素或百分比)
|
|
34
|
+
* 可以是单个值(用于2面板模式)或数组(用于多面板模式)
|
|
35
|
+
* 默认为 '50%' 或 ['33%', '33%', '33%']
|
|
36
|
+
*/
|
|
37
|
+
defaultSize?: number | string | (number | string)[];
|
|
38
|
+
/**
|
|
39
|
+
* 最小尺寸配置
|
|
40
|
+
* 可以是单个值或数组
|
|
41
|
+
*/
|
|
42
|
+
minSize?: number | number[];
|
|
43
|
+
/**
|
|
44
|
+
* 最大尺寸配置
|
|
45
|
+
* 可以是单个值或数组
|
|
46
|
+
*/
|
|
47
|
+
maxSize?: number | number[];
|
|
48
|
+
/** 分割条大小(像素),默认为 10 */
|
|
49
|
+
splitterSize?: number;
|
|
50
|
+
/** 拖拽线颜色 */
|
|
51
|
+
lineColor?: string;
|
|
52
|
+
/** 拖拽线悬停/拖拽时的颜色 */
|
|
53
|
+
lineHoverColor?: string;
|
|
54
|
+
/** 是否禁用所有拖拽 */
|
|
55
|
+
disabled?: boolean;
|
|
56
|
+
/**
|
|
57
|
+
* 拖拽时的回调
|
|
58
|
+
* @param sizes - 所有面板的当前尺寸数组
|
|
59
|
+
* @param index - 正在拖拽的分割条索引
|
|
60
|
+
*/
|
|
61
|
+
onResize?: (sizes: number[], index: number) => void;
|
|
62
|
+
/**
|
|
63
|
+
* 拖拽结束后的回调
|
|
64
|
+
* @param sizes - 所有面板的最终尺寸数组
|
|
65
|
+
*/
|
|
66
|
+
onResizeEnd?: (sizes: number[]) => void;
|
|
67
|
+
/** 自定义类名 */
|
|
68
|
+
className?: string;
|
|
69
|
+
/** 自定义样式 */
|
|
70
|
+
style?: React.CSSProperties;
|
|
71
|
+
/** @deprecated 请使用 panels 或 children */
|
|
72
|
+
left?: React.ReactNode;
|
|
73
|
+
/** @deprecated 请使用 panels 或 children */
|
|
74
|
+
right?: React.ReactNode;
|
|
75
|
+
/** @deprecated 请使用 panels 或 children */
|
|
76
|
+
top?: React.ReactNode;
|
|
77
|
+
/** @deprecated 请使用 panels 或 children */
|
|
78
|
+
bottom?: React.ReactNode;
|
|
79
|
+
/**
|
|
80
|
+
* 子元素数组
|
|
81
|
+
* 用于2面板模式时传入 [面板1, 面板2]
|
|
82
|
+
* 用于多面板模式时传入任意数量的面板
|
|
83
|
+
*/
|
|
84
|
+
children?: React.ReactNode[];
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* 单个拖拽状态
|
|
88
|
+
*/
|
|
89
|
+
export interface DragState {
|
|
90
|
+
/** 是否正在拖拽 */
|
|
91
|
+
isDragging: boolean;
|
|
92
|
+
/** 拖拽开始时的鼠标/触摸位置 */
|
|
93
|
+
startPosition: number;
|
|
94
|
+
/** 拖拽开始时的各面板尺寸 */
|
|
95
|
+
startSizes: number[];
|
|
96
|
+
/** 容器尺寸 */
|
|
97
|
+
containerSize: number;
|
|
98
|
+
/** 正在拖拽的分割条索引 */
|
|
99
|
+
splitterIndex: number;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* 面板尺寸信息
|
|
103
|
+
*/
|
|
104
|
+
export interface PanelSizeInfo {
|
|
105
|
+
/** 面板索引 */
|
|
106
|
+
index: number;
|
|
107
|
+
/** 面板当前尺寸 */
|
|
108
|
+
size: number;
|
|
109
|
+
/** 面板最小尺寸 */
|
|
110
|
+
minSize: number;
|
|
111
|
+
/** 面板最大尺寸 */
|
|
112
|
+
maxSize: number;
|
|
113
|
+
/** 默认尺寸 */
|
|
114
|
+
defaultSize: number | string;
|
|
115
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { UploadFile } from './types';
|
|
2
|
+
export declare const UploadWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
|
|
3
|
+
disabled?: boolean;
|
|
4
|
+
}>> & string;
|
|
5
|
+
export declare const UploadInput: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, never>> & string;
|
|
6
|
+
export declare const UploadTrigger: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
7
|
+
export declare const UploadDragArea: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
|
|
8
|
+
isDragOver?: boolean;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
}>> & string;
|
|
11
|
+
export declare const UploadDragIcon: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
12
|
+
export declare const UploadDragText: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
13
|
+
export declare const UploadDragHint: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
14
|
+
export declare const UploadListWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
15
|
+
export declare const UploadListItem: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
|
|
16
|
+
status?: UploadFile["status"];
|
|
17
|
+
}>> & string;
|
|
18
|
+
export declare const UploadListItemInfo: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
19
|
+
export declare const UploadListItemName: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
|
|
20
|
+
export declare const UploadListItemIcon: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
|
|
21
|
+
export declare const UploadListItemActions: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
|
|
22
|
+
export declare const UploadListItemAction: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, never>> & string;
|
|
23
|
+
export declare const UploadProgress: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
24
|
+
export declare const UploadProgressBar: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
|
|
25
|
+
percent: number;
|
|
26
|
+
status?: UploadFile["status"];
|
|
27
|
+
}>> & string;
|
|
28
|
+
export declare const UploadListItemContent: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface UploadFile {
|
|
3
|
+
uid: string;
|
|
4
|
+
name: string;
|
|
5
|
+
size: number;
|
|
6
|
+
type: string;
|
|
7
|
+
status?: 'ready' | 'uploading' | 'success' | 'error';
|
|
8
|
+
percent?: number;
|
|
9
|
+
response?: any;
|
|
10
|
+
error?: Error;
|
|
11
|
+
raw?: File;
|
|
12
|
+
}
|
|
13
|
+
export interface UploadProps {
|
|
14
|
+
/** 上传地址 */
|
|
15
|
+
action?: string;
|
|
16
|
+
/** 默认已经上传的文件列表 */
|
|
17
|
+
defaultFileList?: UploadFile[];
|
|
18
|
+
/** 已经上传的文件列表(受控) */
|
|
19
|
+
fileList?: UploadFile[];
|
|
20
|
+
/** 上传文件改变时的状态 */
|
|
21
|
+
onChange?: (fileList: UploadFile[]) => void;
|
|
22
|
+
/** 上传文件之前的钩子,参数为上传的文件 */
|
|
23
|
+
beforeUpload?: (file: File, fileList: File[]) => boolean | Promise<File>;
|
|
24
|
+
/** 文件上传时的钩子 */
|
|
25
|
+
onProgress?: (percent: number, file: UploadFile) => void;
|
|
26
|
+
/** 文件上传成功时的钩子 */
|
|
27
|
+
onSuccess?: (response: any, file: UploadFile) => void;
|
|
28
|
+
/** 文件上传失败时的钩子 */
|
|
29
|
+
onError?: (error: Error, file: UploadFile) => void;
|
|
30
|
+
/** 文件移除时的钩子 */
|
|
31
|
+
onRemove?: (file: UploadFile) => void | boolean | Promise<boolean>;
|
|
32
|
+
/** 设置上传的请求头部 */
|
|
33
|
+
headers?: Record<string, string>;
|
|
34
|
+
/** 上传的文件字段名 */
|
|
35
|
+
name?: string;
|
|
36
|
+
/** 上传时附带的额外参数 */
|
|
37
|
+
data?: Record<string, any> | ((file: File) => Record<string, any>);
|
|
38
|
+
/** 支持发送 cookie 凭证信息 */
|
|
39
|
+
withCredentials?: boolean;
|
|
40
|
+
/** 接受上传的文件类型 */
|
|
41
|
+
accept?: string;
|
|
42
|
+
/** 是否支持多选文件 */
|
|
43
|
+
multiple?: boolean;
|
|
44
|
+
/** 是否禁用 */
|
|
45
|
+
disabled?: boolean;
|
|
46
|
+
/** 是否支持拖拽上传 */
|
|
47
|
+
drag?: boolean;
|
|
48
|
+
/** 上传组件的样式 */
|
|
49
|
+
style?: React.CSSProperties;
|
|
50
|
+
/** 上传组件的类名 */
|
|
51
|
+
className?: string;
|
|
52
|
+
/** 自定义上传方法 */
|
|
53
|
+
customRequest?: (options: UploadRequestOptions) => void;
|
|
54
|
+
/** 文件列表渲染 */
|
|
55
|
+
itemRender?: (file: UploadFile, fileList: UploadFile[]) => React.ReactNode;
|
|
56
|
+
/** 是否显示文件列表 */
|
|
57
|
+
showUploadList?: boolean | ShowUploadListType;
|
|
58
|
+
/** 自定义请求方法 */
|
|
59
|
+
method?: 'POST' | 'PUT' | 'PATCH' | 'post' | 'put' | 'patch';
|
|
60
|
+
/** 子元素 */
|
|
61
|
+
children?: React.ReactNode;
|
|
62
|
+
/** 最大上传文件数量 */
|
|
63
|
+
maxCount?: number;
|
|
64
|
+
}
|
|
65
|
+
export interface ShowUploadListType {
|
|
66
|
+
showRemoveIcon?: boolean;
|
|
67
|
+
showPreviewIcon?: boolean;
|
|
68
|
+
showDownloadIcon?: boolean;
|
|
69
|
+
}
|
|
70
|
+
export interface UploadRequestOptions {
|
|
71
|
+
action: string;
|
|
72
|
+
filename: string;
|
|
73
|
+
file: File;
|
|
74
|
+
data?: Record<string, any>;
|
|
75
|
+
headers?: Record<string, string>;
|
|
76
|
+
withCredentials?: boolean;
|
|
77
|
+
onProgress: (percent: number) => void;
|
|
78
|
+
onSuccess: (response: any) => void;
|
|
79
|
+
onError: (error: Error) => void;
|
|
80
|
+
method: string;
|
|
81
|
+
}
|
|
82
|
+
export interface UploadListProps {
|
|
83
|
+
fileList: UploadFile[];
|
|
84
|
+
onRemove: (file: UploadFile) => void;
|
|
85
|
+
showUploadList?: boolean | ShowUploadListType;
|
|
86
|
+
itemRender?: (file: UploadFile, fileList: UploadFile[]) => React.ReactNode;
|
|
87
|
+
}
|
|
88
|
+
export interface UploadDragProps extends Omit<UploadProps, 'drag'> {
|
|
89
|
+
children?: React.ReactNode;
|
|
90
|
+
}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export { default as Button } from './Button';
|
|
2
|
+
export { default as Spin } from './Spin';
|
|
3
|
+
export type { SpinProps, SpinSize } from './Spin';
|
|
2
4
|
export { default as Carousel } from './Carousel';
|
|
3
5
|
export { default as Cascader } from './Cascader';
|
|
4
6
|
export { default as TreeSelect } from './TreeSelect';
|
|
@@ -55,3 +57,7 @@ export { default as DatePicker } from './DatePicker';
|
|
|
55
57
|
export type { DatePickerProps, DateRangePickerProps } from './DatePicker';
|
|
56
58
|
export { default as Tree } from './Tree';
|
|
57
59
|
export type { TreeProps, TreeNode, TreeRef } from './Tree';
|
|
60
|
+
export { default as Upload } from './Upload';
|
|
61
|
+
export type { UploadProps, UploadFile, UploadRequestOptions } from './Upload';
|
|
62
|
+
export { default as Splitter } from './Splitter';
|
|
63
|
+
export type { SplitterProps } from './Splitter/types';
|
package/dist/variables.css
CHANGED
|
@@ -191,4 +191,35 @@
|
|
|
191
191
|
--idp-slider-tooltip-bg: rgba(0, 0, 0, 0.75); /* 滑块工具提示背景 */
|
|
192
192
|
--idp-slider-tooltip-color: var(--idp-bg-color-white); /* 滑块工具提示文字颜色 */
|
|
193
193
|
--idp-slider-tooltip-shadow: var(--idp-shadow-md); /* 滑块工具提示阴影 */
|
|
194
|
+
|
|
195
|
+
/* Splitter 组件 - 分割面板相关样式变量(现代化设计) */
|
|
196
|
+
--idp-splitter-bar-size: 6px; /* 分割条大小 - 细线设计更精致 */
|
|
197
|
+
--idp-splitter-bar-bg: linear-gradient(135deg, var(--idp-bg-color-light) 0%, var(--idp-bg-color) 100%); /* 分割条渐变背景 */
|
|
198
|
+
--idp-splitter-bar-hover-bg: linear-gradient(135deg, var(--idp-bg-color) 0%, var(--idp-border-color-light) 100%); /* 分割条悬停渐变背景 */
|
|
199
|
+
--idp-splitter-bar-radius: var(--idp-border-radius-md); /* 分割条圆角 */
|
|
200
|
+
|
|
201
|
+
/* 分割线样式 */
|
|
202
|
+
--idp-splitter-line-color: var(--idp-border-color-extra-light); /* 分割线默认颜色 */
|
|
203
|
+
--idp-splitter-line-hover-color: var(--idp-primary-color); /* 分割线悬停颜色 */
|
|
204
|
+
--idp-splitter-line-active-color: var(--idp-primary-hover-color); /* 分割线激活颜色 */
|
|
205
|
+
--idp-splitter-line-disabled-color: var(--idp-text-color-light); /* 分割线禁用颜色 */
|
|
206
|
+
--idp-splitter-line-width: 2px; /* 分割线宽度 */
|
|
207
|
+
--idp-splitter-line-length: 32px; /* 分割线长度 */
|
|
208
|
+
--idp-splitter-line-min-length: 24px; /* 分割线最小长度 */
|
|
209
|
+
--idp-splitter-line-bg: linear-gradient(180deg, var(--idp-border-color-light) 0%, var(--idp-border-color) 50%, var(--idp-border-color-light) 100%); /* 分割线渐变背景 */
|
|
210
|
+
--idp-splitter-line-hover-bg: linear-gradient(180deg, var(--idp-primary-light-color) 0%, var(--idp-primary-color) 50%, var(--idp-primary-light-color) 100%); /* 分割线悬停渐变背景 */
|
|
211
|
+
|
|
212
|
+
/* 分割条阴影效果 */
|
|
213
|
+
--idp-splitter-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08); /* 分割条轻微阴影 */
|
|
214
|
+
--idp-splitter-shadow-md: 0 2px 8px rgba(24, 144, 255, 0.25); /* 分割条悬停阴影 */
|
|
215
|
+
--idp-splitter-shadow-active: 0 0 12px rgba(24, 144, 255, 0.4); /* 分割条激活发光效果 */
|
|
216
|
+
|
|
217
|
+
/* 面板样式 */
|
|
218
|
+
--idp-splitter-panel-bg: var(--idp-bg-color-white); /* 面板背景色 */
|
|
219
|
+
--idp-splitter-panel-border: var(--idp-border-color-light); /* 面板边框色 */
|
|
220
|
+
--idp-splitter-panel-radius: var(--idp-border-radius-md); /* 面板圆角 */
|
|
221
|
+
|
|
222
|
+
/* 面板阴影效果 - 用于增强层次感 */
|
|
223
|
+
--idp-splitter-panel-shadow: 2px 0 8px rgba(0, 0, 0, 0.08); /* 水平布局时左侧面板右侧阴影 */
|
|
224
|
+
--idp-splitter-panel-shadow-vertical: 0 2px 8px rgba(0, 0, 0, 0.08); /* 垂直布局时上面板底部阴影 */
|
|
194
225
|
}
|