@whitesev/pops 3.2.1 → 3.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 +249 -249
- package/dist/index.amd.js +736 -948
- package/dist/index.amd.js.map +1 -1
- package/dist/index.amd.min.js +1 -1
- package/dist/index.amd.min.js.map +1 -1
- package/dist/index.cjs.js +736 -948
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.cjs.min.js +1 -1
- package/dist/index.cjs.min.js.map +1 -1
- package/dist/index.esm.js +736 -948
- package/dist/index.esm.js.map +1 -1
- package/dist/index.esm.min.js +1 -1
- package/dist/index.esm.min.js.map +1 -1
- package/dist/index.iife.js +736 -948
- package/dist/index.iife.js.map +1 -1
- package/dist/index.iife.min.js +1 -1
- package/dist/index.iife.min.js.map +1 -1
- package/dist/index.system.js +736 -948
- package/dist/index.system.js.map +1 -1
- package/dist/index.system.min.js +1 -1
- package/dist/index.system.min.js.map +1 -1
- package/dist/index.umd.js +736 -948
- package/dist/index.umd.js.map +1 -1
- package/dist/index.umd.min.js +1 -1
- package/dist/index.umd.min.js.map +1 -1
- package/dist/types/src/PopsCore.d.ts +15 -7
- package/dist/types/src/components/folder/types/index.d.ts +43 -13
- package/dist/types/src/types/PopsDOMUtilsEventType.d.ts +313 -313
- package/dist/types/src/types/animation.d.ts +19 -19
- package/dist/types/src/types/button.d.ts +94 -94
- package/dist/types/src/types/components.d.ts +211 -211
- package/dist/types/src/types/event.d.ts +43 -43
- package/dist/types/src/types/global.d.ts +31 -31
- package/dist/types/src/types/icon.d.ts +32 -32
- package/dist/types/src/types/inst.d.ts +28 -28
- package/dist/types/src/types/main.d.ts +66 -66
- package/dist/types/src/types/mask.d.ts +52 -52
- package/dist/types/src/types/position.d.ts +60 -60
- package/package.json +28 -27
- package/src/Pops.ts +206 -206
- package/src/PopsAnimation.ts +32 -32
- package/src/PopsCSS.ts +54 -54
- package/src/PopsCore.ts +53 -37
- package/src/PopsIcon.ts +95 -95
- package/src/PopsInst.ts +21 -21
- package/src/components/alert/defaultConfig.ts +62 -62
- package/src/components/alert/index.ts +163 -163
- package/src/components/alert/types/index.ts +23 -23
- package/src/components/confirm/defaultConfig.ts +90 -90
- package/src/components/confirm/index.ts +165 -165
- package/src/components/confirm/types/index.ts +13 -17
- package/src/components/drawer/defaultConfig.ts +89 -89
- package/src/components/drawer/index.css +37 -37
- package/src/components/drawer/index.ts +245 -245
- package/src/components/drawer/types/index.ts +62 -61
- package/src/components/folder/defaultConfig.ts +151 -151
- package/src/components/folder/folderIcon.ts +28 -28
- package/src/components/folder/index.css +303 -303
- package/src/components/folder/index.ts +953 -932
- package/src/components/folder/types/index.ts +143 -110
- package/src/components/iframe/defaultConfig.ts +60 -60
- package/src/components/iframe/index.css +76 -76
- package/src/components/iframe/index.ts +331 -331
- package/src/components/iframe/types/index.ts +96 -96
- package/src/components/loading/defaultConfig.ts +29 -29
- package/src/components/loading/index.css +66 -66
- package/src/components/loading/index.ts +101 -101
- package/src/components/loading/types/index.ts +36 -34
- package/src/components/panel/css/components-select.css +84 -84
- package/src/components/panel/defaultConfig.ts +868 -868
- package/src/components/panel/handlerComponents.ts +3993 -3993
- package/src/components/panel/index.css +1403 -1403
- package/src/components/panel/index.ts +221 -221
- package/src/components/panel/types/components-button.ts +56 -56
- package/src/components/panel/types/components-common.ts +73 -73
- package/src/components/panel/types/components-container.ts +25 -25
- package/src/components/panel/types/components-deepMenu.ts +64 -64
- package/src/components/panel/types/components-input.ts +90 -90
- package/src/components/panel/types/components-own.ts +16 -16
- package/src/components/panel/types/components-select.ts +169 -169
- package/src/components/panel/types/components-selectMultiple.ts +105 -104
- package/src/components/panel/types/components-slider.ts +55 -55
- package/src/components/panel/types/components-switch.ts +33 -33
- package/src/components/panel/types/components-textarea.ts +45 -45
- package/src/components/panel/types/index.ts +244 -244
- package/src/components/prompt/defaultConfig.ts +94 -94
- package/src/components/prompt/index.css +34 -34
- package/src/components/prompt/index.ts +187 -215
- package/src/components/prompt/types/index.ts +57 -56
- package/src/components/rightClickMenu/defaultConfig.ts +103 -103
- package/src/components/rightClickMenu/index.css +115 -115
- package/src/components/rightClickMenu/index.ts +662 -662
- package/src/components/rightClickMenu/types/index.ts +145 -143
- package/src/components/searchSuggestion/defaultConfig.ts +63 -63
- package/src/components/searchSuggestion/index.ts +813 -813
- package/src/components/searchSuggestion/types/index.ts +244 -242
- package/src/components/tooltip/defaultConfig.ts +33 -33
- package/src/components/tooltip/index.css +199 -199
- package/src/components/tooltip/index.ts +617 -617
- package/src/components/tooltip/types/index.ts +123 -121
- package/src/config/CommonCSSClassName.ts +17 -17
- package/src/config/GlobalConfig.ts +63 -63
- package/src/css/animation.css +987 -987
- package/src/css/button.css +551 -551
- package/src/css/common.css +54 -54
- package/src/css/index.css +253 -253
- package/src/css/ninePalaceGridPosition.css +50 -50
- package/src/css/scrollbar.css +22 -22
- package/src/handler/PopsElementHandler.ts +303 -303
- package/src/handler/PopsHandler.ts +611 -611
- package/src/types/PopsDOMUtilsEventType.d.ts +313 -313
- package/src/types/animation.d.ts +19 -19
- package/src/types/button.d.ts +94 -94
- package/src/types/components.d.ts +211 -211
- package/src/types/event.d.ts +43 -43
- package/src/types/global.d.ts +31 -31
- package/src/types/icon.d.ts +32 -32
- package/src/types/inst.d.ts +28 -28
- package/src/types/main.d.ts +66 -66
- package/src/types/mask.d.ts +52 -52
- package/src/types/position.d.ts +60 -60
- package/src/utils/PopsDOMUtils.ts +2483 -2483
- package/src/utils/PopsDOMUtilsEventsConfig.ts +4 -4
- package/src/utils/PopsInstanceUtils.ts +714 -714
- package/src/utils/PopsMathUtils.ts +71 -71
- package/src/utils/PopsSafeUtils.ts +22 -22
- package/src/utils/PopsUtils.ts +391 -421
|
@@ -1,169 +1,169 @@
|
|
|
1
|
-
import type { PopsPanelGeneralConfig } from "./components-common";
|
|
2
|
-
import type { PopsPanelContainerConfig } from "./components-container";
|
|
3
|
-
import type { PopsPanelViewConfig } from ".";
|
|
4
|
-
import type { PopsAlertConfig } from "../../alert/types";
|
|
5
|
-
export type PopsPanelSelectMode = "native" | "dialog" | "horizontal";
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* 分组配置
|
|
9
|
-
*
|
|
10
|
-
* 用在mode="dialog"里
|
|
11
|
-
*/
|
|
12
|
-
export type PopsPanelSelectDialogGroupOption<T> = {
|
|
13
|
-
/**
|
|
14
|
-
* 是否是分组
|
|
15
|
-
* @default false
|
|
16
|
-
*
|
|
17
|
-
* + true 这时候text的值是显示的分组名,value是可以忽略的
|
|
18
|
-
*/
|
|
19
|
-
isGroup?: boolean;
|
|
20
|
-
/**
|
|
21
|
-
* 分组内部选择是否是单选
|
|
22
|
-
* @default false
|
|
23
|
-
*/
|
|
24
|
-
isSingleSelect?: boolean;
|
|
25
|
-
/**
|
|
26
|
-
* 分组数据列表
|
|
27
|
-
*
|
|
28
|
-
* 该数据仅在mode === "dialog"下生效
|
|
29
|
-
* @default []
|
|
30
|
-
*/
|
|
31
|
-
groupDataOptions?: IFunction<Omit<PopsPanelSelectDataOption<T>, keyof PopsPanelSelectDialogGroupOption<T>>[]>;
|
|
32
|
-
};
|
|
33
|
-
/**
|
|
34
|
-
* 选择项的配置数据
|
|
35
|
-
*/
|
|
36
|
-
export type PopsPanelSelectDataOption<T> = {
|
|
37
|
-
/**
|
|
38
|
-
* 真正的值
|
|
39
|
-
*/
|
|
40
|
-
value: T;
|
|
41
|
-
/**
|
|
42
|
-
* 显示的文字
|
|
43
|
-
*/
|
|
44
|
-
text:
|
|
45
|
-
| string
|
|
46
|
-
| ((
|
|
47
|
-
/** 当前的值 */
|
|
48
|
-
value: T,
|
|
49
|
-
/**当前选中的配置信息 */
|
|
50
|
-
selectedInfo?: PopsPanelSelectDataOption<T>
|
|
51
|
-
) => string);
|
|
52
|
-
/**
|
|
53
|
-
* 显示的文字是否是html
|
|
54
|
-
* @default false
|
|
55
|
-
*/
|
|
56
|
-
isHTML?: boolean;
|
|
57
|
-
/**
|
|
58
|
-
* (可选)是否禁用项
|
|
59
|
-
* 触发条件:
|
|
60
|
-
* + 点击select元素
|
|
61
|
-
* + select元素触发change事件
|
|
62
|
-
* @param value 当前的值
|
|
63
|
-
* @param selectedInfo 当前选中的配置信息
|
|
64
|
-
*/
|
|
65
|
-
disable?(value: T, selectedInfo?: PopsPanelSelectDataOption<T>): boolean;
|
|
66
|
-
/**
|
|
67
|
-
* 子配置,跟随切换改变
|
|
68
|
-
*
|
|
69
|
-
* 选中项后,根据配置添加到页面中
|
|
70
|
-
*/
|
|
71
|
-
views?: IFunction<(PopsPanelContainerConfig | PopsPanelViewConfig)[]>;
|
|
72
|
-
/**
|
|
73
|
-
* (可选)是否是自定义输入的内容
|
|
74
|
-
* @default false
|
|
75
|
-
*/
|
|
76
|
-
addCustomInput?: boolean;
|
|
77
|
-
/**
|
|
78
|
-
* (可选)自定义输入内容存储的key
|
|
79
|
-
*
|
|
80
|
-
* 该属性内部未做处理,仅为传递作用
|
|
81
|
-
*/
|
|
82
|
-
customInputStoreKey?: string;
|
|
83
|
-
/**
|
|
84
|
-
* (可选)校验自定义输入内容
|
|
85
|
-
* @default () => {valid: true}
|
|
86
|
-
*/
|
|
87
|
-
onValid?(dataOption: PopsPanelSelectDataOption<T>): {
|
|
88
|
-
/**
|
|
89
|
-
*
|
|
90
|
-
* + true: 校验通过
|
|
91
|
-
* + false: 校验失败,阻止关闭弹窗
|
|
92
|
-
*/
|
|
93
|
-
valid: boolean;
|
|
94
|
-
message?: string;
|
|
95
|
-
};
|
|
96
|
-
};
|
|
97
|
-
/**
|
|
98
|
-
* pops.panel的 select
|
|
99
|
-
*/
|
|
100
|
-
export interface PopsPanelSelectConfig<T = any> extends PopsPanelGeneralConfig<PopsPanelSelectConfig<T>> {
|
|
101
|
-
/**
|
|
102
|
-
* 组件类型
|
|
103
|
-
*/
|
|
104
|
-
type: "select";
|
|
105
|
-
/**
|
|
106
|
-
* 显示在左边的文字
|
|
107
|
-
*/
|
|
108
|
-
text: string;
|
|
109
|
-
/**
|
|
110
|
-
* (可选)左边的文字下面的描述
|
|
111
|
-
* @default ""
|
|
112
|
-
*/
|
|
113
|
-
description?: string;
|
|
114
|
-
/**
|
|
115
|
-
* (可选)是否禁用
|
|
116
|
-
* @default false
|
|
117
|
-
*/
|
|
118
|
-
disabled?: IFunction<boolean>;
|
|
119
|
-
/**
|
|
120
|
-
* 提示文字
|
|
121
|
-
*/
|
|
122
|
-
placeholder?: IFunction<string>;
|
|
123
|
-
/**
|
|
124
|
-
* 已选中文字的显示文字的对齐方式
|
|
125
|
-
*
|
|
126
|
-
* 也包括提示文字的对齐方式
|
|
127
|
-
* @default "left"
|
|
128
|
-
*/
|
|
129
|
-
selectedTextAlign?: "left" | "center" | "right";
|
|
130
|
-
/**
|
|
131
|
-
* 获取该项的值的回调函数
|
|
132
|
-
*/
|
|
133
|
-
getValue(): T;
|
|
134
|
-
/**
|
|
135
|
-
* 选择器的值改变触发的回调函数
|
|
136
|
-
* @param isSelectedInfo 当前已选中的信息,可能为空
|
|
137
|
-
*/
|
|
138
|
-
callback?(isSelectedInfo?: PopsPanelSelectDataOption<T>): void;
|
|
139
|
-
/**
|
|
140
|
-
* 点击select元素触发该回调
|
|
141
|
-
* @param event 点击事件
|
|
142
|
-
* @param selectElement 当前的select元素
|
|
143
|
-
* @returns
|
|
144
|
-
* + false 阻止更新状态
|
|
145
|
-
*/
|
|
146
|
-
clickCallBack?(
|
|
147
|
-
event: PointerEvent | MouseEvent,
|
|
148
|
-
/** 当前已选中的信息 */
|
|
149
|
-
isSelectedInfo: PopsPanelSelectDataOption<T>
|
|
150
|
-
): void | boolean;
|
|
151
|
-
/**
|
|
152
|
-
* 选择列表内的数据
|
|
153
|
-
*/
|
|
154
|
-
data: IFunction<PopsPanelSelectDataOption<T>[]>;
|
|
155
|
-
/**
|
|
156
|
-
* 显示模式
|
|
157
|
-
* @default "native"
|
|
158
|
-
*/
|
|
159
|
-
mode?: PopsPanelSelectMode;
|
|
160
|
-
/**
|
|
161
|
-
* 宽度
|
|
162
|
-
* @default "200px"
|
|
163
|
-
*/
|
|
164
|
-
width?: number | string;
|
|
165
|
-
/**
|
|
166
|
-
* 弹出的下拉列表弹窗的配置
|
|
167
|
-
*/
|
|
168
|
-
selectConfirmDialogConfig?: Partial<PopsAlertConfig>;
|
|
169
|
-
}
|
|
1
|
+
import type { PopsPanelGeneralConfig } from "./components-common";
|
|
2
|
+
import type { PopsPanelContainerConfig } from "./components-container";
|
|
3
|
+
import type { PopsPanelViewConfig } from ".";
|
|
4
|
+
import type { PopsAlertConfig } from "../../alert/types";
|
|
5
|
+
export type PopsPanelSelectMode = "native" | "dialog" | "horizontal";
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* 分组配置
|
|
9
|
+
*
|
|
10
|
+
* 用在mode="dialog"里
|
|
11
|
+
*/
|
|
12
|
+
export type PopsPanelSelectDialogGroupOption<T> = {
|
|
13
|
+
/**
|
|
14
|
+
* 是否是分组
|
|
15
|
+
* @default false
|
|
16
|
+
*
|
|
17
|
+
* + true 这时候text的值是显示的分组名,value是可以忽略的
|
|
18
|
+
*/
|
|
19
|
+
isGroup?: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* 分组内部选择是否是单选
|
|
22
|
+
* @default false
|
|
23
|
+
*/
|
|
24
|
+
isSingleSelect?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* 分组数据列表
|
|
27
|
+
*
|
|
28
|
+
* 该数据仅在mode === "dialog"下生效
|
|
29
|
+
* @default []
|
|
30
|
+
*/
|
|
31
|
+
groupDataOptions?: IFunction<Omit<PopsPanelSelectDataOption<T>, keyof PopsPanelSelectDialogGroupOption<T>>[]>;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* 选择项的配置数据
|
|
35
|
+
*/
|
|
36
|
+
export type PopsPanelSelectDataOption<T> = {
|
|
37
|
+
/**
|
|
38
|
+
* 真正的值
|
|
39
|
+
*/
|
|
40
|
+
value: T;
|
|
41
|
+
/**
|
|
42
|
+
* 显示的文字
|
|
43
|
+
*/
|
|
44
|
+
text:
|
|
45
|
+
| string
|
|
46
|
+
| ((
|
|
47
|
+
/** 当前的值 */
|
|
48
|
+
value: T,
|
|
49
|
+
/**当前选中的配置信息 */
|
|
50
|
+
selectedInfo?: PopsPanelSelectDataOption<T>
|
|
51
|
+
) => string);
|
|
52
|
+
/**
|
|
53
|
+
* 显示的文字是否是html
|
|
54
|
+
* @default false
|
|
55
|
+
*/
|
|
56
|
+
isHTML?: boolean;
|
|
57
|
+
/**
|
|
58
|
+
* (可选)是否禁用项
|
|
59
|
+
* 触发条件:
|
|
60
|
+
* + 点击select元素
|
|
61
|
+
* + select元素触发change事件
|
|
62
|
+
* @param value 当前的值
|
|
63
|
+
* @param selectedInfo 当前选中的配置信息
|
|
64
|
+
*/
|
|
65
|
+
disable?(value: T, selectedInfo?: PopsPanelSelectDataOption<T>): boolean;
|
|
66
|
+
/**
|
|
67
|
+
* 子配置,跟随切换改变
|
|
68
|
+
*
|
|
69
|
+
* 选中项后,根据配置添加到页面中
|
|
70
|
+
*/
|
|
71
|
+
views?: IFunction<(PopsPanelContainerConfig | PopsPanelViewConfig)[]>;
|
|
72
|
+
/**
|
|
73
|
+
* (可选)是否是自定义输入的内容
|
|
74
|
+
* @default false
|
|
75
|
+
*/
|
|
76
|
+
addCustomInput?: boolean;
|
|
77
|
+
/**
|
|
78
|
+
* (可选)自定义输入内容存储的key
|
|
79
|
+
*
|
|
80
|
+
* 该属性内部未做处理,仅为传递作用
|
|
81
|
+
*/
|
|
82
|
+
customInputStoreKey?: string;
|
|
83
|
+
/**
|
|
84
|
+
* (可选)校验自定义输入内容
|
|
85
|
+
* @default () => {valid: true}
|
|
86
|
+
*/
|
|
87
|
+
onValid?(dataOption: PopsPanelSelectDataOption<T>): {
|
|
88
|
+
/**
|
|
89
|
+
*
|
|
90
|
+
* + true: 校验通过
|
|
91
|
+
* + false: 校验失败,阻止关闭弹窗
|
|
92
|
+
*/
|
|
93
|
+
valid: boolean;
|
|
94
|
+
message?: string;
|
|
95
|
+
};
|
|
96
|
+
};
|
|
97
|
+
/**
|
|
98
|
+
* pops.panel的 select
|
|
99
|
+
*/
|
|
100
|
+
export interface PopsPanelSelectConfig<T = any> extends PopsPanelGeneralConfig<PopsPanelSelectConfig<T>> {
|
|
101
|
+
/**
|
|
102
|
+
* 组件类型
|
|
103
|
+
*/
|
|
104
|
+
type: "select";
|
|
105
|
+
/**
|
|
106
|
+
* 显示在左边的文字
|
|
107
|
+
*/
|
|
108
|
+
text: string;
|
|
109
|
+
/**
|
|
110
|
+
* (可选)左边的文字下面的描述
|
|
111
|
+
* @default ""
|
|
112
|
+
*/
|
|
113
|
+
description?: string;
|
|
114
|
+
/**
|
|
115
|
+
* (可选)是否禁用
|
|
116
|
+
* @default false
|
|
117
|
+
*/
|
|
118
|
+
disabled?: IFunction<boolean>;
|
|
119
|
+
/**
|
|
120
|
+
* 提示文字
|
|
121
|
+
*/
|
|
122
|
+
placeholder?: IFunction<string>;
|
|
123
|
+
/**
|
|
124
|
+
* 已选中文字的显示文字的对齐方式
|
|
125
|
+
*
|
|
126
|
+
* 也包括提示文字的对齐方式
|
|
127
|
+
* @default "left"
|
|
128
|
+
*/
|
|
129
|
+
selectedTextAlign?: "left" | "center" | "right";
|
|
130
|
+
/**
|
|
131
|
+
* 获取该项的值的回调函数
|
|
132
|
+
*/
|
|
133
|
+
getValue(): T;
|
|
134
|
+
/**
|
|
135
|
+
* 选择器的值改变触发的回调函数
|
|
136
|
+
* @param isSelectedInfo 当前已选中的信息,可能为空
|
|
137
|
+
*/
|
|
138
|
+
callback?(isSelectedInfo?: PopsPanelSelectDataOption<T>): void;
|
|
139
|
+
/**
|
|
140
|
+
* 点击select元素触发该回调
|
|
141
|
+
* @param event 点击事件
|
|
142
|
+
* @param selectElement 当前的select元素
|
|
143
|
+
* @returns
|
|
144
|
+
* + false 阻止更新状态
|
|
145
|
+
*/
|
|
146
|
+
clickCallBack?(
|
|
147
|
+
event: PointerEvent | MouseEvent,
|
|
148
|
+
/** 当前已选中的信息 */
|
|
149
|
+
isSelectedInfo: PopsPanelSelectDataOption<T>
|
|
150
|
+
): void | boolean;
|
|
151
|
+
/**
|
|
152
|
+
* 选择列表内的数据
|
|
153
|
+
*/
|
|
154
|
+
data: IFunction<PopsPanelSelectDataOption<T>[]>;
|
|
155
|
+
/**
|
|
156
|
+
* 显示模式
|
|
157
|
+
* @default "native"
|
|
158
|
+
*/
|
|
159
|
+
mode?: PopsPanelSelectMode;
|
|
160
|
+
/**
|
|
161
|
+
* 宽度
|
|
162
|
+
* @default "200px"
|
|
163
|
+
*/
|
|
164
|
+
width?: number | string;
|
|
165
|
+
/**
|
|
166
|
+
* 弹出的下拉列表弹窗的配置
|
|
167
|
+
*/
|
|
168
|
+
selectConfirmDialogConfig?: Partial<PopsAlertConfig>;
|
|
169
|
+
}
|
|
@@ -1,104 +1,105 @@
|
|
|
1
|
-
import type { PopsAlertConfig } from "../../alert/types";
|
|
2
|
-
import type { PopsPanelGeneralConfig } from "./components-common";
|
|
3
|
-
|
|
4
|
-
export interface PopsPanelSelectMultipleDataOption<T> {
|
|
5
|
-
/**
|
|
6
|
-
* 真正的值
|
|
7
|
-
*/
|
|
8
|
-
value: T;
|
|
9
|
-
/**
|
|
10
|
-
* 显示的文字
|
|
11
|
-
*/
|
|
12
|
-
text:
|
|
13
|
-
| string
|
|
14
|
-
| ((
|
|
15
|
-
/** 当前的值 */
|
|
16
|
-
value: T,
|
|
17
|
-
/** 所有选中的配置信息 */
|
|
18
|
-
allSelectedInfo: PopsPanelSelectMultipleDataOption<T>[]
|
|
19
|
-
) => string);
|
|
20
|
-
/**
|
|
21
|
-
* 显示的文字是否是html
|
|
22
|
-
* @default false
|
|
23
|
-
*/
|
|
24
|
-
isHTML?: boolean;
|
|
25
|
-
/**
|
|
26
|
-
* (可选)是否禁用项
|
|
27
|
-
* 触发条件:
|
|
28
|
-
* + 点击select元素
|
|
29
|
-
* + select元素触发change事件
|
|
30
|
-
* @param value 当前的值
|
|
31
|
-
* @param allSelectedInfo 所有选中的配置信息
|
|
32
|
-
*/
|
|
33
|
-
disable?(value: T, allSelectedInfo: PopsPanelSelectMultipleDataOption<T>[]): boolean;
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* pops.panel的 select
|
|
37
|
-
*/
|
|
38
|
-
export interface PopsPanelSelectMultipleConfig<T = any>
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
*
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
*
|
|
72
|
-
* @
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
*
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
1
|
+
import type { PopsAlertConfig } from "../../alert/types";
|
|
2
|
+
import type { PopsPanelGeneralConfig } from "./components-common";
|
|
3
|
+
|
|
4
|
+
export interface PopsPanelSelectMultipleDataOption<T> {
|
|
5
|
+
/**
|
|
6
|
+
* 真正的值
|
|
7
|
+
*/
|
|
8
|
+
value: T;
|
|
9
|
+
/**
|
|
10
|
+
* 显示的文字
|
|
11
|
+
*/
|
|
12
|
+
text:
|
|
13
|
+
| string
|
|
14
|
+
| ((
|
|
15
|
+
/** 当前的值 */
|
|
16
|
+
value: T,
|
|
17
|
+
/** 所有选中的配置信息 */
|
|
18
|
+
allSelectedInfo: PopsPanelSelectMultipleDataOption<T>[]
|
|
19
|
+
) => string);
|
|
20
|
+
/**
|
|
21
|
+
* 显示的文字是否是html
|
|
22
|
+
* @default false
|
|
23
|
+
*/
|
|
24
|
+
isHTML?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* (可选)是否禁用项
|
|
27
|
+
* 触发条件:
|
|
28
|
+
* + 点击select元素
|
|
29
|
+
* + select元素触发change事件
|
|
30
|
+
* @param value 当前的值
|
|
31
|
+
* @param allSelectedInfo 所有选中的配置信息
|
|
32
|
+
*/
|
|
33
|
+
disable?(value: T, allSelectedInfo: PopsPanelSelectMultipleDataOption<T>[]): boolean;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* pops.panel的 select
|
|
37
|
+
*/
|
|
38
|
+
export interface PopsPanelSelectMultipleConfig<T = any> extends PopsPanelGeneralConfig<
|
|
39
|
+
PopsPanelSelectMultipleConfig<T>
|
|
40
|
+
> {
|
|
41
|
+
/**
|
|
42
|
+
* 组件类型
|
|
43
|
+
*/
|
|
44
|
+
type: "select-multiple";
|
|
45
|
+
/**
|
|
46
|
+
* 显示在左边的文字
|
|
47
|
+
*/
|
|
48
|
+
text: string;
|
|
49
|
+
/**
|
|
50
|
+
* (可选)左边的文字下面的描述
|
|
51
|
+
*/
|
|
52
|
+
description?: string;
|
|
53
|
+
/**
|
|
54
|
+
* (可选)是否禁用
|
|
55
|
+
*/
|
|
56
|
+
disabled?: boolean | (() => boolean);
|
|
57
|
+
/**
|
|
58
|
+
* 提示文字
|
|
59
|
+
*/
|
|
60
|
+
placeholder?: string | (() => string);
|
|
61
|
+
/**
|
|
62
|
+
* 获取该项的值的回调函数
|
|
63
|
+
*/
|
|
64
|
+
getValue(): T[];
|
|
65
|
+
/**
|
|
66
|
+
* 选择器的值改变触发的回调函数
|
|
67
|
+
* @param isSelectedInfo 当前已选中的信息
|
|
68
|
+
*/
|
|
69
|
+
callback?(isSelectedInfo: PopsPanelSelectMultipleDataOption<T>[]): void;
|
|
70
|
+
/**
|
|
71
|
+
* 点击某个项的元素触发该回调
|
|
72
|
+
* @param event 点击事件
|
|
73
|
+
* @returns 如果返回boolean为false,则不会触发默认的点击事件
|
|
74
|
+
*/
|
|
75
|
+
clickCallBack?(
|
|
76
|
+
event: PointerEvent | MouseEvent,
|
|
77
|
+
/** 当前已选中的信息 */
|
|
78
|
+
isSelectedInfo: PopsPanelSelectMultipleDataOption<T>[]
|
|
79
|
+
): void | boolean;
|
|
80
|
+
/**
|
|
81
|
+
* 点击标签tag的关闭图标触发该回调
|
|
82
|
+
* 如果返回boolean类型且为false,则阻止默认的事件
|
|
83
|
+
*/
|
|
84
|
+
closeIconClickCallBack?: (
|
|
85
|
+
event: PointerEvent | MouseEvent,
|
|
86
|
+
data: {
|
|
87
|
+
/** 标签元素 */
|
|
88
|
+
$tag: HTMLElement;
|
|
89
|
+
/** 关闭图标元素 */
|
|
90
|
+
$closeIcon: HTMLElement;
|
|
91
|
+
/** 值 */
|
|
92
|
+
value: T;
|
|
93
|
+
/** 显示的文字 */
|
|
94
|
+
text: PopsPanelSelectMultipleDataOption<T>["text"];
|
|
95
|
+
}
|
|
96
|
+
) => void | boolean;
|
|
97
|
+
/**
|
|
98
|
+
* 选择列表内的数据
|
|
99
|
+
*/
|
|
100
|
+
data: PopsPanelSelectMultipleDataOption<T>[];
|
|
101
|
+
/**
|
|
102
|
+
* 弹出的下拉列表弹窗的配置
|
|
103
|
+
*/
|
|
104
|
+
selectConfirmDialogConfig?: Partial<PopsAlertConfig>;
|
|
105
|
+
}
|
|
@@ -1,55 +1,55 @@
|
|
|
1
|
-
import type { PopsPanelGeneralConfig } from "./components-common";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* pops.panel的 slider
|
|
5
|
-
*/
|
|
6
|
-
export interface PopsPanelSliderConfig extends PopsPanelGeneralConfig<PopsPanelSliderConfig> {
|
|
7
|
-
/**
|
|
8
|
-
* 组件类型
|
|
9
|
-
*/
|
|
10
|
-
type: "slider";
|
|
11
|
-
/**
|
|
12
|
-
* 显示在左边的文字
|
|
13
|
-
*/
|
|
14
|
-
text: string;
|
|
15
|
-
/**
|
|
16
|
-
* (可选)左边的文字下面的描述
|
|
17
|
-
* @default ""
|
|
18
|
-
*/
|
|
19
|
-
description?: string;
|
|
20
|
-
/**
|
|
21
|
-
* (可选)是否禁用
|
|
22
|
-
* @default false
|
|
23
|
-
*/
|
|
24
|
-
disabled?: boolean | (() => boolean);
|
|
25
|
-
/**
|
|
26
|
-
* 是否显示滑块的hover提示
|
|
27
|
-
* @default true
|
|
28
|
-
*/
|
|
29
|
-
isShowHoverTip?: boolean | (() => boolean);
|
|
30
|
-
/**
|
|
31
|
-
* 获取该项的值的回调函数
|
|
32
|
-
*/
|
|
33
|
-
getValue(): number;
|
|
34
|
-
/**
|
|
35
|
-
* 滑块的值改变触发的回调函数
|
|
36
|
-
*/
|
|
37
|
-
callback(event: InputEvent, value: number): void;
|
|
38
|
-
/**
|
|
39
|
-
* 获取tooltip的提示内容,可自定义,默认为slider的值
|
|
40
|
-
*/
|
|
41
|
-
getToolTipContent?(value: number): string;
|
|
42
|
-
/**
|
|
43
|
-
* 滑块的最小值
|
|
44
|
-
*/
|
|
45
|
-
min: number;
|
|
46
|
-
/**
|
|
47
|
-
* 滑块的最大值
|
|
48
|
-
*/
|
|
49
|
-
max: number;
|
|
50
|
-
/**
|
|
51
|
-
* (可选)每次滑动的间隔值
|
|
52
|
-
* @default 1
|
|
53
|
-
*/
|
|
54
|
-
step?: number;
|
|
55
|
-
}
|
|
1
|
+
import type { PopsPanelGeneralConfig } from "./components-common";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* pops.panel的 slider
|
|
5
|
+
*/
|
|
6
|
+
export interface PopsPanelSliderConfig extends PopsPanelGeneralConfig<PopsPanelSliderConfig> {
|
|
7
|
+
/**
|
|
8
|
+
* 组件类型
|
|
9
|
+
*/
|
|
10
|
+
type: "slider";
|
|
11
|
+
/**
|
|
12
|
+
* 显示在左边的文字
|
|
13
|
+
*/
|
|
14
|
+
text: string;
|
|
15
|
+
/**
|
|
16
|
+
* (可选)左边的文字下面的描述
|
|
17
|
+
* @default ""
|
|
18
|
+
*/
|
|
19
|
+
description?: string;
|
|
20
|
+
/**
|
|
21
|
+
* (可选)是否禁用
|
|
22
|
+
* @default false
|
|
23
|
+
*/
|
|
24
|
+
disabled?: boolean | (() => boolean);
|
|
25
|
+
/**
|
|
26
|
+
* 是否显示滑块的hover提示
|
|
27
|
+
* @default true
|
|
28
|
+
*/
|
|
29
|
+
isShowHoverTip?: boolean | (() => boolean);
|
|
30
|
+
/**
|
|
31
|
+
* 获取该项的值的回调函数
|
|
32
|
+
*/
|
|
33
|
+
getValue(): number;
|
|
34
|
+
/**
|
|
35
|
+
* 滑块的值改变触发的回调函数
|
|
36
|
+
*/
|
|
37
|
+
callback(event: InputEvent, value: number): void;
|
|
38
|
+
/**
|
|
39
|
+
* 获取tooltip的提示内容,可自定义,默认为slider的值
|
|
40
|
+
*/
|
|
41
|
+
getToolTipContent?(value: number): string;
|
|
42
|
+
/**
|
|
43
|
+
* 滑块的最小值
|
|
44
|
+
*/
|
|
45
|
+
min: number;
|
|
46
|
+
/**
|
|
47
|
+
* 滑块的最大值
|
|
48
|
+
*/
|
|
49
|
+
max: number;
|
|
50
|
+
/**
|
|
51
|
+
* (可选)每次滑动的间隔值
|
|
52
|
+
* @default 1
|
|
53
|
+
*/
|
|
54
|
+
step?: number;
|
|
55
|
+
}
|