@rainbow-oh/yee-c 0.4.4 → 0.5.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/dist/cjs/Button/button.d.ts +1 -1
- package/dist/cjs/CSV/download.d.ts +1 -1
- package/dist/cjs/Carousel/carousel.d.ts +2 -2
- package/dist/cjs/Carousel/carousel.js +9 -2
- package/dist/cjs/Carousel/interface.d.ts +5 -0
- package/dist/cjs/Dialog/demo/basic.js +1 -1
- package/dist/cjs/Dialog/dialog.js +1 -1
- package/dist/cjs/Drawer/style/index.less +4 -0
- package/dist/cjs/Field/demo/validation.js +23 -3
- package/dist/cjs/Field/field.js +1 -1
- package/dist/cjs/FloatButton/float-button.d.ts +1 -1
- package/dist/cjs/Form/Field.js +1 -4
- package/dist/cjs/Form/Form.js +1 -1
- package/dist/cjs/Form/Group.js +36 -14
- package/dist/cjs/Form/List.js +23 -3
- package/dist/cjs/Form/demo/async-validate.d.ts +3 -0
- package/dist/cjs/Form/demo/async-validate.js +108 -0
- package/dist/cjs/Form/demo/basic.js +2 -2
- package/dist/cjs/Form/demo/virtual.js +1 -1
- package/dist/cjs/Form/form-store.d.ts +4 -4
- package/dist/cjs/Form/form-store.js +55 -25
- package/dist/cjs/Form/interface.d.ts +10 -7
- package/dist/cjs/Form/style/index.less +15 -0
- package/dist/cjs/Form/utils/validate.d.ts +23 -2
- package/dist/cjs/Form/utils/validate.js +59 -10
- package/dist/cjs/Input/style/index.less +0 -17
- package/dist/cjs/InputNumber/style/index.less +0 -29
- package/dist/cjs/PickerPanel/interface.d.ts +44 -2
- package/dist/cjs/PickerPanel/panels/DatePanel/DateBody.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/DatePanel/DateHeader.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/DatePanel/DateHeader.js +1 -1
- package/dist/cjs/PickerPanel/panels/DatePanel/index.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/DateTimePanel/index.d.ts +7 -1
- package/dist/cjs/PickerPanel/panels/DateTimePanel/index.js +18 -4
- package/dist/cjs/PickerPanel/panels/DecadePanel/DecadeBody.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/DecadePanel/DecadeBody.js +1 -1
- package/dist/cjs/PickerPanel/panels/DecadePanel/DecadeHeader.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/DecadePanel/DecadeHeader.js +1 -1
- package/dist/cjs/PickerPanel/panels/DecadePanel/index.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/DecadePanel/index.js +1 -1
- package/dist/cjs/PickerPanel/panels/Header.d.ts +13 -1
- package/dist/cjs/PickerPanel/panels/MonthPanel/MonthBody.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/MonthPanel/MonthHeader.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/MonthPanel/MonthHeader.js +1 -1
- package/dist/cjs/PickerPanel/panels/MonthPanel/index.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/MonthPanel/index.js +1 -1
- package/dist/cjs/PickerPanel/panels/PanelBody.d.ts +21 -1
- package/dist/cjs/PickerPanel/panels/PanelBody.js +3 -3
- package/dist/cjs/PickerPanel/panels/QuarterPanel/QuarterBody.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/QuarterPanel/QuarterHeader.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/QuarterPanel/index.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/RangePanel/index.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/RangePanel/index.js +2 -2
- package/dist/cjs/PickerPanel/panels/RangePanel/interface.d.ts +5 -5
- package/dist/cjs/PickerPanel/panels/TimePanel/TimeBody.d.ts +17 -1
- package/dist/cjs/PickerPanel/panels/TimePanel/TimeCell.d.ts +7 -1
- package/dist/cjs/PickerPanel/panels/TimePanel/TimeCell.js +1 -1
- package/dist/cjs/PickerPanel/panels/TimePanel/TimeColumn.d.ts +14 -1
- package/dist/cjs/PickerPanel/panels/TimePanel/TimeColumn.js +1 -1
- package/dist/cjs/PickerPanel/panels/TimePanel/TimeHeader.d.ts +4 -1
- package/dist/cjs/PickerPanel/panels/TimePanel/index.d.ts +9 -1
- package/dist/cjs/PickerPanel/panels/WeekPanel/WeekBody.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/WeekPanel/WeekHeader.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/WeekPanel/index.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/YearPanel/YearBody.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/YearPanel/YearBody.js +2 -2
- package/dist/cjs/PickerPanel/panels/YearPanel/YearHeader.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/YearPanel/YearHeader.js +7 -1
- package/dist/cjs/PickerPanel/panels/YearPanel/index.d.ts +2 -1
- package/dist/cjs/PickerPanel/panels/YearPanel/index.js +1 -1
- package/dist/cjs/PickerPanel/utils/pickerUtils.d.ts +7 -7
- package/dist/cjs/PickerPanel/utils/pickerUtils.js +2 -2
- package/dist/cjs/Select/demo/basic.js +1 -1
- package/dist/cjs/Select/demo/virtual.d.ts +3 -0
- package/dist/cjs/Select/demo/virtual.js +55 -0
- package/dist/cjs/Select/hooks/useSelectKeyboard.d.ts +7 -1
- package/dist/cjs/Select/hooks/useSelectKeyboard.js +16 -6
- package/dist/cjs/Select/interface.d.ts +44 -0
- package/dist/cjs/Select/option.js +3 -2
- package/dist/cjs/Select/options.js +115 -15
- package/dist/cjs/Select/select.js +20 -4
- package/dist/cjs/Select/style/index.less +17 -13
- package/dist/cjs/Selector/style/index.less +2 -137
- package/dist/cjs/Table/style/index.less +19 -0
- package/dist/cjs/TextArea/style/index.less +0 -17
- package/dist/cjs/hooks/index.d.ts +2 -1
- package/dist/cjs/hooks/index.js +3 -1
- package/dist/cjs/hooks/useEvent.js +4 -1
- package/dist/cjs/hooks/useVirtualList.d.ts +71 -0
- package/dist/cjs/hooks/useVirtualList.js +117 -0
- package/dist/cjs/style/size.css +1 -0
- package/dist/cjs/style/themes.css +1 -1
- package/dist/cjs/style/variables.css +2 -1
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/Button/button.d.ts +1 -1
- package/dist/esm/CSV/download.d.ts +1 -1
- package/dist/esm/Carousel/carousel.d.ts +2 -2
- package/dist/esm/Carousel/carousel.js +5 -1
- package/dist/esm/Carousel/interface.d.ts +5 -0
- package/dist/esm/Dialog/demo/basic.js +1 -1
- package/dist/esm/Dialog/dialog.js +1 -1
- package/dist/esm/Drawer/style/index.less +4 -0
- package/dist/esm/Field/demo/validation.js +30 -9
- package/dist/esm/Field/field.js +2 -1
- package/dist/esm/FloatButton/float-button.d.ts +1 -1
- package/dist/esm/Form/Field.js +3 -4
- package/dist/esm/Form/Form.js +1 -1
- package/dist/esm/Form/Group.js +142 -53
- package/dist/esm/Form/List.js +61 -42
- package/dist/esm/Form/demo/async-validate.d.ts +3 -0
- package/dist/esm/Form/demo/async-validate.js +95 -0
- package/dist/esm/Form/demo/basic.js +4 -2
- package/dist/esm/Form/demo/virtual.js +1 -1
- package/dist/esm/Form/form-store.d.ts +4 -4
- package/dist/esm/Form/form-store.js +187 -93
- package/dist/esm/Form/interface.d.ts +10 -7
- package/dist/esm/Form/style/index.less +15 -0
- package/dist/esm/Form/utils/validate.d.ts +23 -2
- package/dist/esm/Form/utils/validate.js +122 -17
- package/dist/esm/Input/style/index.less +0 -17
- package/dist/esm/InputNumber/style/index.less +0 -29
- package/dist/esm/PickerPanel/interface.d.ts +44 -2
- package/dist/esm/PickerPanel/panels/DatePanel/DateBody.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/DatePanel/DateHeader.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/DatePanel/DateHeader.js +1 -1
- package/dist/esm/PickerPanel/panels/DatePanel/index.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/DateTimePanel/index.d.ts +7 -1
- package/dist/esm/PickerPanel/panels/DateTimePanel/index.js +11 -7
- package/dist/esm/PickerPanel/panels/DecadePanel/DecadeBody.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/DecadePanel/DecadeBody.js +2 -1
- package/dist/esm/PickerPanel/panels/DecadePanel/DecadeHeader.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/DecadePanel/DecadeHeader.js +2 -1
- package/dist/esm/PickerPanel/panels/DecadePanel/index.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/DecadePanel/index.js +1 -1
- package/dist/esm/PickerPanel/panels/Header.d.ts +13 -1
- package/dist/esm/PickerPanel/panels/MonthPanel/MonthBody.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/MonthPanel/MonthHeader.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/MonthPanel/MonthHeader.js +2 -1
- package/dist/esm/PickerPanel/panels/MonthPanel/index.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/MonthPanel/index.js +1 -1
- package/dist/esm/PickerPanel/panels/PanelBody.d.ts +21 -1
- package/dist/esm/PickerPanel/panels/PanelBody.js +2 -4
- package/dist/esm/PickerPanel/panels/QuarterPanel/QuarterBody.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/QuarterPanel/QuarterHeader.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/QuarterPanel/index.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/RangePanel/index.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/RangePanel/index.js +2 -2
- package/dist/esm/PickerPanel/panels/RangePanel/interface.d.ts +5 -5
- package/dist/esm/PickerPanel/panels/TimePanel/TimeBody.d.ts +17 -1
- package/dist/esm/PickerPanel/panels/TimePanel/TimeCell.d.ts +7 -1
- package/dist/esm/PickerPanel/panels/TimePanel/TimeCell.js +1 -1
- package/dist/esm/PickerPanel/panels/TimePanel/TimeColumn.d.ts +14 -1
- package/dist/esm/PickerPanel/panels/TimePanel/TimeColumn.js +1 -1
- package/dist/esm/PickerPanel/panels/TimePanel/TimeHeader.d.ts +4 -1
- package/dist/esm/PickerPanel/panels/TimePanel/index.d.ts +9 -1
- package/dist/esm/PickerPanel/panels/WeekPanel/WeekBody.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/WeekPanel/WeekHeader.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/WeekPanel/index.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/YearPanel/YearBody.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/YearPanel/YearBody.js +3 -2
- package/dist/esm/PickerPanel/panels/YearPanel/YearHeader.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/YearPanel/YearHeader.js +2 -1
- package/dist/esm/PickerPanel/panels/YearPanel/index.d.ts +2 -1
- package/dist/esm/PickerPanel/panels/YearPanel/index.js +1 -1
- package/dist/esm/PickerPanel/picker-panel.js +3 -0
- package/dist/esm/PickerPanel/utils/pickerUtils.d.ts +7 -7
- package/dist/esm/PickerPanel/utils/pickerUtils.js +4 -10
- package/dist/esm/Select/demo/basic.js +1 -1
- package/dist/esm/Select/demo/virtual.d.ts +3 -0
- package/dist/esm/Select/demo/virtual.js +38 -0
- package/dist/esm/Select/hooks/useSelectKeyboard.d.ts +7 -1
- package/dist/esm/Select/hooks/useSelectKeyboard.js +25 -9
- package/dist/esm/Select/interface.d.ts +44 -0
- package/dist/esm/Select/option.js +4 -2
- package/dist/esm/Select/options.js +132 -13
- package/dist/esm/Select/select.js +19 -4
- package/dist/esm/Select/style/index.less +17 -13
- package/dist/esm/Selector/style/index.less +2 -137
- package/dist/esm/Table/style/index.less +19 -0
- package/dist/esm/TextArea/style/index.less +0 -17
- package/dist/esm/hooks/index.d.ts +2 -1
- package/dist/esm/hooks/index.js +2 -1
- package/dist/esm/hooks/useVirtualList.d.ts +71 -0
- package/dist/esm/hooks/useVirtualList.js +129 -0
- package/dist/esm/style/size.css +1 -0
- package/dist/esm/style/themes.css +1 -1
- package/dist/esm/style/variables.css +2 -1
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/umd/yee-c.min.css +2 -2
- package/dist/umd/yee-c.min.js +1 -1
- package/package.json +1 -1
- package/src/Carousel/carousel.tsx +14 -3
- package/src/Carousel/interface.ts +6 -0
- package/src/Cascader/cascader.tsx +3 -1
- package/src/Cascader/column.tsx +1 -1
- package/src/Dialog/demo/basic.tsx +1 -1
- package/src/Dialog/dialog.tsx +1 -1
- package/src/Drawer/style/index.less +4 -0
- package/src/Dropdown/dropdown.tsx +1 -1
- package/src/Field/demo/validation.tsx +2 -2
- package/src/Field/field.tsx +2 -1
- package/src/Field/index.en-US.md +1 -1
- package/src/Field/index.zh-CN.md +1 -1
- package/src/FloatButton/float-button.tsx +5 -3
- package/src/Form/Field.tsx +3 -4
- package/src/Form/Form.tsx +1 -1
- package/src/Form/Group.tsx +15 -12
- package/src/Form/List.tsx +3 -3
- package/src/Form/demo/async-validate.tsx +71 -0
- package/src/Form/demo/basic.tsx +2 -2
- package/src/Form/demo/virtual.tsx +1 -1
- package/src/Form/form-store.ts +37 -21
- package/src/Form/index.en-US.md +6 -5
- package/src/Form/index.zh-CN.md +6 -5
- package/src/Form/interface.ts +13 -7
- package/src/Form/style/index.less +15 -0
- package/src/Form/utils/validate.ts +65 -13
- package/src/Input/style/index.less +0 -17
- package/src/InputNumber/style/index.less +0 -29
- package/src/PickerPanel/interface.ts +43 -2
- package/src/PickerPanel/panels/DatePanel/DateBody.tsx +2 -1
- package/src/PickerPanel/panels/DatePanel/DateHeader.tsx +3 -2
- package/src/PickerPanel/panels/DatePanel/index.tsx +2 -1
- package/src/PickerPanel/panels/DateTimePanel/index.tsx +12 -5
- package/src/PickerPanel/panels/DecadePanel/DecadeBody.tsx +3 -2
- package/src/PickerPanel/panels/DecadePanel/DecadeHeader.tsx +3 -2
- package/src/PickerPanel/panels/DecadePanel/index.tsx +3 -2
- package/src/PickerPanel/panels/Header.tsx +14 -1
- package/src/PickerPanel/panels/MonthPanel/MonthBody.tsx +2 -1
- package/src/PickerPanel/panels/MonthPanel/MonthHeader.tsx +3 -2
- package/src/PickerPanel/panels/MonthPanel/index.tsx +3 -2
- package/src/PickerPanel/panels/PanelBody.tsx +27 -5
- package/src/PickerPanel/panels/QuarterPanel/QuarterBody.tsx +2 -1
- package/src/PickerPanel/panels/QuarterPanel/QuarterHeader.tsx +2 -1
- package/src/PickerPanel/panels/QuarterPanel/index.tsx +2 -1
- package/src/PickerPanel/panels/RangePanel/index.tsx +11 -9
- package/src/PickerPanel/panels/RangePanel/interface.ts +5 -5
- package/src/PickerPanel/panels/TimePanel/TimeBody.tsx +21 -5
- package/src/PickerPanel/panels/TimePanel/TimeCell.tsx +9 -2
- package/src/PickerPanel/panels/TimePanel/TimeColumn.tsx +15 -2
- package/src/PickerPanel/panels/TimePanel/TimeHeader.tsx +5 -1
- package/src/PickerPanel/panels/TimePanel/index.tsx +10 -1
- package/src/PickerPanel/panels/WeekPanel/WeekBody.tsx +2 -1
- package/src/PickerPanel/panels/WeekPanel/WeekHeader.tsx +2 -1
- package/src/PickerPanel/panels/WeekPanel/index.tsx +2 -1
- package/src/PickerPanel/panels/YearPanel/YearBody.tsx +4 -3
- package/src/PickerPanel/panels/YearPanel/YearHeader.tsx +9 -3
- package/src/PickerPanel/panels/YearPanel/index.tsx +3 -2
- package/src/PickerPanel/picker-panel.tsx +5 -3
- package/src/PickerPanel/utils/pickerUtils.ts +17 -8
- package/src/Select/demo/basic.tsx +1 -1
- package/src/Select/demo/virtual.tsx +25 -0
- package/src/Select/hooks/useSelectKeyboard.ts +30 -6
- package/src/Select/index.en-US.md +4 -0
- package/src/Select/index.zh-CN.md +4 -0
- package/src/Select/interface.ts +48 -2
- package/src/Select/option.tsx +2 -1
- package/src/Select/options.tsx +139 -8
- package/src/Select/select.tsx +23 -1
- package/src/Select/style/index.less +17 -13
- package/src/Selector/style/index.less +2 -137
- package/src/Splitter/hooks/useMove.ts +2 -2
- package/src/Table/style/index.less +19 -0
- package/src/TextArea/style/index.less +0 -17
- package/src/hooks/index.ts +2 -0
- package/src/hooks/useEvent.ts +7 -4
- package/src/hooks/useMergedState.ts +6 -4
- package/src/hooks/useVirtualList.ts +169 -0
- package/src/style/size.css +1 -0
- package/src/version.ts +1 -1
|
@@ -83,7 +83,10 @@ var Select = (baseprops) => {
|
|
|
83
83
|
optionFilterProp = "label",
|
|
84
84
|
disabled,
|
|
85
85
|
onChange,
|
|
86
|
-
onFilter
|
|
86
|
+
onFilter,
|
|
87
|
+
virtual,
|
|
88
|
+
itemHeight,
|
|
89
|
+
listHeight
|
|
87
90
|
} = _a, rest = __objRest(_a, [
|
|
88
91
|
"prefixCls",
|
|
89
92
|
"options",
|
|
@@ -94,7 +97,10 @@ var Select = (baseprops) => {
|
|
|
94
97
|
"optionFilterProp",
|
|
95
98
|
"disabled",
|
|
96
99
|
"onChange",
|
|
97
|
-
"onFilter"
|
|
100
|
+
"onFilter",
|
|
101
|
+
"virtual",
|
|
102
|
+
"itemHeight",
|
|
103
|
+
"listHeight"
|
|
98
104
|
]);
|
|
99
105
|
const single = mode !== "multiple" && mode !== "tags" ? true : false;
|
|
100
106
|
const handleState = (value2) => {
|
|
@@ -114,6 +120,11 @@ var Select = (baseprops) => {
|
|
|
114
120
|
const [searchValue, setSearchValue] = (0, import_react.useState)("");
|
|
115
121
|
const [open, setOpen] = (0, import_react.useState)(false);
|
|
116
122
|
const popupRef = (0, import_react.useRef)(null);
|
|
123
|
+
const virtualApiRef = (0, import_react.useRef)(null);
|
|
124
|
+
const handleVirtualScrollToIndex = (0, import_react.useCallback)((index) => {
|
|
125
|
+
var _a2;
|
|
126
|
+
(_a2 = virtualApiRef.current) == null ? void 0 : _a2.scrollToIndex(index);
|
|
127
|
+
}, []);
|
|
117
128
|
const getOptions = (keys) => {
|
|
118
129
|
if (keys === "" || keys === null) {
|
|
119
130
|
return void 0;
|
|
@@ -184,7 +195,8 @@ var Select = (baseprops) => {
|
|
|
184
195
|
onSelect: handleSelect,
|
|
185
196
|
onClose: () => setOpen(false),
|
|
186
197
|
onOpenChange: handleOpenChange,
|
|
187
|
-
containerRef: popupRef
|
|
198
|
+
containerRef: popupRef,
|
|
199
|
+
scrollToIndex: virtual ? handleVirtualScrollToIndex : void 0
|
|
188
200
|
});
|
|
189
201
|
const popup = /* @__PURE__ */ import_react.default.createElement(
|
|
190
202
|
import_options.default,
|
|
@@ -196,7 +208,11 @@ var Select = (baseprops) => {
|
|
|
196
208
|
selectedKeys: mergedValue,
|
|
197
209
|
dataTestId: rest["data-testid"],
|
|
198
210
|
onSelect: handleSelect,
|
|
199
|
-
ref: popupRef
|
|
211
|
+
ref: popupRef,
|
|
212
|
+
virtual,
|
|
213
|
+
itemHeight,
|
|
214
|
+
listHeight,
|
|
215
|
+
virtualApiRef
|
|
200
216
|
}
|
|
201
217
|
);
|
|
202
218
|
return /* @__PURE__ */ import_react.default.createElement(
|
|
@@ -8,6 +8,17 @@
|
|
|
8
8
|
overflow: auto;
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
+
// Virtual mode: the popup no longer scrolls itself; the inner viewport does.
|
|
12
|
+
// Without this override there would be two scrollbars.
|
|
13
|
+
&-popup-virtual {
|
|
14
|
+
max-height: none;
|
|
15
|
+
overflow: visible;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
&-popup-viewport {
|
|
19
|
+
overflow-y: auto;
|
|
20
|
+
}
|
|
21
|
+
|
|
11
22
|
&-option {
|
|
12
23
|
display: flex;
|
|
13
24
|
padding: var(--yee-select-option-padding);
|
|
@@ -37,20 +48,13 @@
|
|
|
37
48
|
}
|
|
38
49
|
}
|
|
39
50
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
// form error status
|
|
46
|
-
.yee-form-item-error {
|
|
47
|
-
@{pls} {
|
|
48
|
-
border-color: var(--yee-error-color);
|
|
51
|
+
// In virtual mode each option has a fixed inline height; center its content
|
|
52
|
+
// vertically so it stays aligned regardless of the inherited line-height.
|
|
53
|
+
&-popup-virtual &-option {
|
|
54
|
+
align-items: center;
|
|
49
55
|
}
|
|
50
|
-
}
|
|
51
56
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
border-color: var(--yee-warning-color);
|
|
57
|
+
&-empty {
|
|
58
|
+
padding: var(--yee-select-option-padding);
|
|
55
59
|
}
|
|
56
60
|
}
|
|
@@ -5,8 +5,7 @@
|
|
|
5
5
|
box-sizing: border-box;
|
|
6
6
|
width: 100%;
|
|
7
7
|
padding: var(--yee-selector-padding);
|
|
8
|
-
border: var(--yee-selector-border-width) solid
|
|
9
|
-
var(--yee-selector-border-color);
|
|
8
|
+
border: var(--yee-selector-border-width) solid var(--yee-input-border-color);
|
|
10
9
|
border-radius: var(--yee-selector-border-radius);
|
|
11
10
|
|
|
12
11
|
&-small {
|
|
@@ -145,7 +144,7 @@
|
|
|
145
144
|
|
|
146
145
|
&:not(@{pls}-disabled) {
|
|
147
146
|
&:hover {
|
|
148
|
-
border-color: var(--yee-
|
|
147
|
+
border-color: var(--yee-input-hover-border-color);
|
|
149
148
|
}
|
|
150
149
|
}
|
|
151
150
|
|
|
@@ -206,137 +205,3 @@
|
|
|
206
205
|
}
|
|
207
206
|
}
|
|
208
207
|
}
|
|
209
|
-
|
|
210
|
-
// .yee-tags-searchable {
|
|
211
|
-
// cursor: text;
|
|
212
|
-
|
|
213
|
-
// .yee-tags-input-wrapper {
|
|
214
|
-
// width: 100%;
|
|
215
|
-
// padding: 0;
|
|
216
|
-
// border: none;
|
|
217
|
-
// outline: none;
|
|
218
|
-
|
|
219
|
-
// &:focus {
|
|
220
|
-
// border: none;
|
|
221
|
-
// box-shadow: none;
|
|
222
|
-
// }
|
|
223
|
-
// }
|
|
224
|
-
|
|
225
|
-
// .yee-tags-icon {
|
|
226
|
-
// width: auto;
|
|
227
|
-
// }
|
|
228
|
-
// }
|
|
229
|
-
|
|
230
|
-
// .yee-tags-single-mode {
|
|
231
|
-
// height: var(--yee-tags-height);
|
|
232
|
-
|
|
233
|
-
// .yee-tags-input-container {
|
|
234
|
-
// position: absolute;
|
|
235
|
-
// z-index: -1;
|
|
236
|
-
// width: 100%;
|
|
237
|
-
// font-size: var(--yee-tags-input-font-size);
|
|
238
|
-
// line-height: var(--yee-tags-input-line-height);
|
|
239
|
-
|
|
240
|
-
// input {
|
|
241
|
-
// width: 100%;
|
|
242
|
-
// }
|
|
243
|
-
// }
|
|
244
|
-
|
|
245
|
-
// &.yee-tags-searchable {
|
|
246
|
-
// .yee-tags-single-option {
|
|
247
|
-
// width: 100%;
|
|
248
|
-
// }
|
|
249
|
-
|
|
250
|
-
// .yee-tags-container {
|
|
251
|
-
// &:focus-within,
|
|
252
|
-
// &:focus {
|
|
253
|
-
// .yee-tags-input-container {
|
|
254
|
-
// z-index: 1;
|
|
255
|
-
// opacity: var(--yee-tags-input-focus-opacity);
|
|
256
|
-
|
|
257
|
-
// &.has-value {
|
|
258
|
-
// opacity: 1;
|
|
259
|
-
|
|
260
|
-
// + .yee-tags-single-option {
|
|
261
|
-
// display: none;
|
|
262
|
-
// }
|
|
263
|
-
// }
|
|
264
|
-
// }
|
|
265
|
-
|
|
266
|
-
// .yee-tags-single-option {
|
|
267
|
-
// opacity: var(--yee-tags-single-option-focus-opacity);
|
|
268
|
-
// }
|
|
269
|
-
// }
|
|
270
|
-
// }
|
|
271
|
-
// }
|
|
272
|
-
// }
|
|
273
|
-
|
|
274
|
-
// .yee-tags-multi-mode {
|
|
275
|
-
// height: auto;
|
|
276
|
-
// min-height: var(--yee-tags-multi-min-height);
|
|
277
|
-
|
|
278
|
-
// &.yee-tags-searchable {
|
|
279
|
-
// .yee-tag {
|
|
280
|
-
// max-width: var(--yee-tags-multi-tag-max-width);
|
|
281
|
-
// height: var(--yee-tags-multi-tag-height);
|
|
282
|
-
// }
|
|
283
|
-
// }
|
|
284
|
-
|
|
285
|
-
// .yee-tags-container {
|
|
286
|
-
// flex-wrap: wrap;
|
|
287
|
-
// }
|
|
288
|
-
|
|
289
|
-
// .yee-tags-input-container {
|
|
290
|
-
// display: inline-grid;
|
|
291
|
-
// // color: var(--yee-tags-input-container-font-color);
|
|
292
|
-
// flex: 1 1 auto;
|
|
293
|
-
// grid-area: 1 / 1 / 2 / 3;
|
|
294
|
-
// grid-template-columns: 0 min-content;
|
|
295
|
-
// box-sizing: border-box;
|
|
296
|
-
// height: var(--yee-tags-multi-input-height);
|
|
297
|
-
|
|
298
|
-
// &::after {
|
|
299
|
-
// grid-area: 1 / 2 / auto / auto;
|
|
300
|
-
// min-width: var(--yee-tags-multi-input-after-min-width);
|
|
301
|
-
// margin: 0;
|
|
302
|
-
// padding: 0;
|
|
303
|
-
// font: inherit;
|
|
304
|
-
// white-space: pre;
|
|
305
|
-
// border: 0;
|
|
306
|
-
// outline: 0;
|
|
307
|
-
// visibility: hidden;
|
|
308
|
-
// content: attr(data-value) ' ';
|
|
309
|
-
// }
|
|
310
|
-
|
|
311
|
-
// & > input {
|
|
312
|
-
// grid-area: 1 / 2 / auto / auto;
|
|
313
|
-
// width: 100%;
|
|
314
|
-
// min-width: var(--yee-tags-multi-input-min-width);
|
|
315
|
-
// height: var(--yee-tags-multi-input-height);
|
|
316
|
-
// margin: 0;
|
|
317
|
-
// padding: 0;
|
|
318
|
-
// font: inherit;
|
|
319
|
-
// background-color: transparent;
|
|
320
|
-
// border: 0;
|
|
321
|
-
// outline: 0;
|
|
322
|
-
// opacity: 1;
|
|
323
|
-
// }
|
|
324
|
-
// }
|
|
325
|
-
// }
|
|
326
|
-
|
|
327
|
-
// form error status
|
|
328
|
-
.yee-form-item-error {
|
|
329
|
-
@{pls} {
|
|
330
|
-
border-color: var(--yee-error-color);
|
|
331
|
-
|
|
332
|
-
&:hover {
|
|
333
|
-
border-color: var(--yee-error-color-hover);
|
|
334
|
-
}
|
|
335
|
-
}
|
|
336
|
-
}
|
|
337
|
-
|
|
338
|
-
.yee-form-item-warning {
|
|
339
|
-
@{pls} {
|
|
340
|
-
border-color: var(--yee-warning-color);
|
|
341
|
-
}
|
|
342
|
-
}
|
|
@@ -23,13 +23,32 @@
|
|
|
23
23
|
var(--yee-table-tbody-td-borderbottom-color);
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
|
+
|
|
27
|
+
@{pls}-cell {
|
|
28
|
+
&::before {
|
|
29
|
+
display: none;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
26
32
|
}
|
|
27
33
|
|
|
28
34
|
&-thead {
|
|
29
35
|
color: var(--yee-table-thead-color);
|
|
30
36
|
|
|
31
37
|
@{pls}-cell {
|
|
38
|
+
position: relative;
|
|
32
39
|
background-color: var(--yee-table-thead-bg-color);
|
|
40
|
+
|
|
41
|
+
&:not(:last-child):not(@{pls}-expand-col) {
|
|
42
|
+
&::before {
|
|
43
|
+
position: absolute;
|
|
44
|
+
content: '';
|
|
45
|
+
width: 1.5px;
|
|
46
|
+
height: 30%;
|
|
47
|
+
top: 35%;
|
|
48
|
+
right: 0;
|
|
49
|
+
background-color: var(--yee-table-head-cell-split-line-color, #eee);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
33
52
|
}
|
|
34
53
|
|
|
35
54
|
&-cell {
|
|
@@ -98,20 +98,3 @@
|
|
|
98
98
|
cursor: not-allowed;
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
|
-
|
|
102
|
-
// form error status
|
|
103
|
-
.yee-form-item-error {
|
|
104
|
-
@{pls} {
|
|
105
|
-
border-color: var(--yee-error-color);
|
|
106
|
-
|
|
107
|
-
&:hover {
|
|
108
|
-
border-color: var(--yee-error-color-hover);
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
.yee-form-item-warning {
|
|
114
|
-
@{pls} {
|
|
115
|
-
border-color: var(--yee-warning-color);
|
|
116
|
-
}
|
|
117
|
-
}
|
|
@@ -16,4 +16,5 @@ import useMount from './useMount';
|
|
|
16
16
|
import usePrevious from './usePrevious';
|
|
17
17
|
import useUpdateEffect from './useUpdateEffect';
|
|
18
18
|
import useVirtualForm from './useVirtualForm';
|
|
19
|
-
|
|
19
|
+
import useVirtualList from './useVirtualList';
|
|
20
|
+
export { useBreakpoint, useDebounceFunction, useDebounceValue, useDeepCompareEffect, useDeepCompareMemo, useDeepCompareMemoize, useDelayState, useEsc, useEvent, useIntersectionObserver, useKeyControl, useLatest, useLayoutEffect, useMergedState, useMount, usePrevious, useUpdateEffect, useVirtualForm, useVirtualList, };
|
package/dist/cjs/hooks/index.js
CHANGED
|
@@ -46,7 +46,8 @@ __export(hooks_exports, {
|
|
|
46
46
|
useMount: () => import_useMount.default,
|
|
47
47
|
usePrevious: () => import_usePrevious.default,
|
|
48
48
|
useUpdateEffect: () => import_useUpdateEffect.default,
|
|
49
|
-
useVirtualForm: () => import_useVirtualForm.default
|
|
49
|
+
useVirtualForm: () => import_useVirtualForm.default,
|
|
50
|
+
useVirtualList: () => import_useVirtualList.default
|
|
50
51
|
});
|
|
51
52
|
module.exports = __toCommonJS(hooks_exports);
|
|
52
53
|
var import_useBreakpoint = __toESM(require("./useBreakpoint"));
|
|
@@ -67,3 +68,4 @@ var import_useMount = __toESM(require("./useMount"));
|
|
|
67
68
|
var import_usePrevious = __toESM(require("./usePrevious"));
|
|
68
69
|
var import_useUpdateEffect = __toESM(require("./useUpdateEffect"));
|
|
69
70
|
var import_useVirtualForm = __toESM(require("./useVirtualForm"));
|
|
71
|
+
var import_useVirtualList = __toESM(require("./useVirtualList"));
|
|
@@ -39,7 +39,10 @@ function useEvent(callback) {
|
|
|
39
39
|
const memoFn = import_react.default.useCallback(
|
|
40
40
|
(...args) => {
|
|
41
41
|
var _a;
|
|
42
|
-
return (_a = ref.current) == null ? void 0 : _a.call(
|
|
42
|
+
return (_a = ref.current) == null ? void 0 : _a.call(
|
|
43
|
+
ref,
|
|
44
|
+
...args
|
|
45
|
+
);
|
|
43
46
|
},
|
|
44
47
|
[]
|
|
45
48
|
);
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface UseVirtualListOptions {
|
|
3
|
+
/**
|
|
4
|
+
* Total number of items in the list.
|
|
5
|
+
*/
|
|
6
|
+
itemCount: number;
|
|
7
|
+
/**
|
|
8
|
+
* Fixed height of every item in pixels.
|
|
9
|
+
*/
|
|
10
|
+
itemHeight: number;
|
|
11
|
+
/**
|
|
12
|
+
* Extra items rendered above and below the visible window
|
|
13
|
+
* to avoid white flashes while scrolling.
|
|
14
|
+
* @default 4
|
|
15
|
+
*/
|
|
16
|
+
overscan?: number;
|
|
17
|
+
}
|
|
18
|
+
export interface UseVirtualListResult {
|
|
19
|
+
/**
|
|
20
|
+
* Inclusive start index of the render window (already includes overscan).
|
|
21
|
+
*/
|
|
22
|
+
start: number;
|
|
23
|
+
/**
|
|
24
|
+
* Exclusive end index of the render window (already includes overscan).
|
|
25
|
+
*/
|
|
26
|
+
end: number;
|
|
27
|
+
/**
|
|
28
|
+
* Vertical offset to apply to the rendered block, equal to `start * itemHeight`.
|
|
29
|
+
* Use it as `transform: translateY(offsetY)` or `top: offsetY`.
|
|
30
|
+
*/
|
|
31
|
+
offsetY: number;
|
|
32
|
+
/**
|
|
33
|
+
* Total scrollable height, equal to `itemCount * itemHeight`.
|
|
34
|
+
* Apply it to the inner spacer element so the scrollbar matches the full list.
|
|
35
|
+
*/
|
|
36
|
+
totalHeight: number;
|
|
37
|
+
/**
|
|
38
|
+
* Ref to bind to the scroll container element.
|
|
39
|
+
*/
|
|
40
|
+
viewportRef: React.RefObject<HTMLDivElement | null>;
|
|
41
|
+
/**
|
|
42
|
+
* Stable scroll handler (rAF-throttled). Bind to the viewport's `onScroll`.
|
|
43
|
+
*/
|
|
44
|
+
onScroll: () => void;
|
|
45
|
+
/**
|
|
46
|
+
* Scroll the viewport so that the item at `index` is visible.
|
|
47
|
+
* Used by keyboard navigation to replace `scrollIntoView`.
|
|
48
|
+
*/
|
|
49
|
+
scrollToIndex: (index: number) => void;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Fixed-height virtual scrolling hook.
|
|
53
|
+
*
|
|
54
|
+
* Renders only the items inside the visible window (plus an `overscan` buffer)
|
|
55
|
+
* and keeps the DOM node count constant regardless of `itemCount`.
|
|
56
|
+
*
|
|
57
|
+
* Usage:
|
|
58
|
+
* const { start, end, offsetY, totalHeight, viewportRef, onScroll, scrollToIndex } =
|
|
59
|
+
* useVirtualList({ itemCount, itemHeight });
|
|
60
|
+
*
|
|
61
|
+
* <div ref={viewportRef} onScroll={onScroll} style={{ maxHeight: 200, overflowY: 'auto' }}>
|
|
62
|
+
* <div style={{ height: totalHeight, position: 'relative' }}>
|
|
63
|
+
* {items.slice(start, end).map((it, i) => (
|
|
64
|
+
* <div key={it.key} style={{ position: 'absolute', height: itemHeight, transform: `translateY(${offsetY + i * itemHeight}px)` }}>
|
|
65
|
+
* {it.content}
|
|
66
|
+
* </div>
|
|
67
|
+
* ))}
|
|
68
|
+
* </div>
|
|
69
|
+
* </div>
|
|
70
|
+
*/
|
|
71
|
+
export default function useVirtualList({ itemCount, itemHeight, overscan, }: UseVirtualListOptions): UseVirtualListResult;
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
|
|
29
|
+
// src/hooks/useVirtualList.ts
|
|
30
|
+
var useVirtualList_exports = {};
|
|
31
|
+
__export(useVirtualList_exports, {
|
|
32
|
+
default: () => useVirtualList
|
|
33
|
+
});
|
|
34
|
+
module.exports = __toCommonJS(useVirtualList_exports);
|
|
35
|
+
var import_react = require("react");
|
|
36
|
+
var import_useEvent = __toESM(require("./useEvent"));
|
|
37
|
+
var import_useResizeObserver = __toESM(require("./useResizeObserver"));
|
|
38
|
+
function useVirtualList({
|
|
39
|
+
itemCount,
|
|
40
|
+
itemHeight,
|
|
41
|
+
overscan = 4
|
|
42
|
+
}) {
|
|
43
|
+
const [scrollTop, setScrollTop] = (0, import_react.useState)(0);
|
|
44
|
+
const [visibleHeight, setVisibleHeight] = (0, import_react.useState)(0);
|
|
45
|
+
const rafRef = (0, import_react.useRef)(null);
|
|
46
|
+
const { ref: viewportRef } = (0, import_useResizeObserver.default)((entries) => {
|
|
47
|
+
const entry = entries[0];
|
|
48
|
+
if (!entry)
|
|
49
|
+
return;
|
|
50
|
+
const h = entry.contentRect.height;
|
|
51
|
+
setVisibleHeight((prev) => prev === h ? prev : h);
|
|
52
|
+
});
|
|
53
|
+
const totalHeight = itemCount * itemHeight;
|
|
54
|
+
const readViewport = (0, import_useEvent.default)(() => {
|
|
55
|
+
const viewport = viewportRef.current;
|
|
56
|
+
if (!viewport)
|
|
57
|
+
return;
|
|
58
|
+
const top = viewport.scrollTop;
|
|
59
|
+
const h = viewport.clientHeight;
|
|
60
|
+
setScrollTop((prev) => prev === top ? prev : top);
|
|
61
|
+
setVisibleHeight((prev) => prev === h ? prev : h);
|
|
62
|
+
});
|
|
63
|
+
const onScroll = (0, import_useEvent.default)(() => {
|
|
64
|
+
if (rafRef.current !== null)
|
|
65
|
+
return;
|
|
66
|
+
rafRef.current = requestAnimationFrame(() => {
|
|
67
|
+
rafRef.current = null;
|
|
68
|
+
readViewport();
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
(0, import_react.useEffect)(
|
|
72
|
+
() => () => {
|
|
73
|
+
if (rafRef.current !== null) {
|
|
74
|
+
cancelAnimationFrame(rafRef.current);
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
[]
|
|
78
|
+
);
|
|
79
|
+
(0, import_react.useEffect)(() => {
|
|
80
|
+
readViewport();
|
|
81
|
+
}, [readViewport]);
|
|
82
|
+
(0, import_react.useEffect)(() => {
|
|
83
|
+
const viewport = viewportRef.current;
|
|
84
|
+
if (!viewport)
|
|
85
|
+
return;
|
|
86
|
+
const maxScroll = Math.max(0, totalHeight - viewport.clientHeight);
|
|
87
|
+
if (viewport.scrollTop > maxScroll) {
|
|
88
|
+
viewport.scrollTop = maxScroll;
|
|
89
|
+
setScrollTop(maxScroll);
|
|
90
|
+
}
|
|
91
|
+
}, [totalHeight, viewportRef]);
|
|
92
|
+
const scrollToIndex = (0, import_useEvent.default)((index) => {
|
|
93
|
+
const viewport = viewportRef.current;
|
|
94
|
+
if (!viewport)
|
|
95
|
+
return;
|
|
96
|
+
const maxScroll = Math.max(0, totalHeight - viewport.clientHeight);
|
|
97
|
+
const target = Math.min(Math.max(0, index * itemHeight), maxScroll);
|
|
98
|
+
if (viewport.scrollTop !== target) {
|
|
99
|
+
viewport.scrollTop = target;
|
|
100
|
+
}
|
|
101
|
+
readViewport();
|
|
102
|
+
});
|
|
103
|
+
const effectiveVisibleHeight = visibleHeight || itemHeight;
|
|
104
|
+
const visibleCount = Math.ceil(effectiveVisibleHeight / itemHeight);
|
|
105
|
+
const start = Math.max(0, Math.floor(scrollTop / itemHeight) - overscan);
|
|
106
|
+
const end = Math.min(itemCount, start + visibleCount + overscan * 2);
|
|
107
|
+
const offsetY = start * itemHeight;
|
|
108
|
+
return {
|
|
109
|
+
start,
|
|
110
|
+
end,
|
|
111
|
+
offsetY,
|
|
112
|
+
totalHeight,
|
|
113
|
+
viewportRef,
|
|
114
|
+
onScroll,
|
|
115
|
+
scrollToIndex
|
|
116
|
+
};
|
|
117
|
+
}
|
package/dist/cjs/style/size.css
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* @rainbow-oh/yee-c CSS Variables
|
|
3
3
|
* Auto-generated, do not edit manually
|
|
4
|
-
* Generated on 2026-07-
|
|
4
|
+
* Generated on 2026-07-07T06:37:47.907Z
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
/* ========== color.css ========== */
|
|
@@ -1364,6 +1364,7 @@
|
|
|
1364
1364
|
--yee-drawer-body-padding: 20px 24px;
|
|
1365
1365
|
--yee-drawer-close-top: 20px;
|
|
1366
1366
|
--yee-drawer-close-right: 20px;
|
|
1367
|
+
--yee-drawer-title-font-weight: 500;
|
|
1367
1368
|
|
|
1368
1369
|
/* --Field-- */
|
|
1369
1370
|
--yee-field-gap: 8px;
|
package/dist/cjs/version.d.ts
CHANGED
package/dist/cjs/version.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { ButtonProps } from './interface';
|
|
3
3
|
import './style/index.less';
|
|
4
|
-
declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<
|
|
4
|
+
declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement | HTMLAnchorElement>>;
|
|
5
5
|
export default Button;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { CSVDownloderProps } from './interface';
|
|
3
|
-
declare const Link: React.ForwardRefExoticComponent<CSVDownloderProps & React.RefAttributes<
|
|
3
|
+
declare const Link: React.ForwardRefExoticComponent<CSVDownloderProps & React.RefAttributes<HTMLButtonElement | HTMLAnchorElement>>;
|
|
4
4
|
export default Link;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { CarouselProps } from './interface';
|
|
2
|
+
import type { CarouselContextProps, CarouselProps } from './interface';
|
|
3
3
|
import './style/index.less';
|
|
4
|
-
export declare const CarouselCtx: React.Context<
|
|
4
|
+
export declare const CarouselCtx: React.Context<CarouselContextProps>;
|
|
5
5
|
declare const Carousel: React.ForwardRefExoticComponent<CarouselProps & React.RefAttributes<HTMLDivElement>>;
|
|
6
6
|
export default Carousel;
|
|
@@ -27,7 +27,11 @@ import mergeContextToProps from "../utils/mergeContextToProps";
|
|
|
27
27
|
import Item from "./carousel-item";
|
|
28
28
|
import "./style/index.less";
|
|
29
29
|
var DEFAULT_ANIMATION_DURATION = 500;
|
|
30
|
-
export var CarouselCtx = /*#__PURE__*/React.createContext({
|
|
30
|
+
export var CarouselCtx = /*#__PURE__*/React.createContext({
|
|
31
|
+
prefixCls: 'yee-carousel',
|
|
32
|
+
effect: 'scrollx',
|
|
33
|
+
current: 1
|
|
34
|
+
});
|
|
31
35
|
var Carousel = /*#__PURE__*/React.forwardRef(function (baseprops, ref) {
|
|
32
36
|
var _useContext = useContext(GlobalContext),
|
|
33
37
|
carousel = _useContext.carousel;
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
export type SemanticDOM = 'dot' | 'prev' | 'next';
|
|
3
|
+
export interface CarouselContextProps {
|
|
4
|
+
prefixCls: string;
|
|
5
|
+
effect: 'fade' | 'scrollx';
|
|
6
|
+
current: number;
|
|
7
|
+
}
|
|
3
8
|
export interface CarouselItemProps {
|
|
4
9
|
index: number;
|
|
5
10
|
style?: React.CSSProperties;
|
|
@@ -116,7 +116,7 @@ var Dialog = function Dialog(baseprops) {
|
|
|
116
116
|
useFocusManage(contentRef.current, delayOpen);
|
|
117
117
|
var cls = clsx(prefixCls, _defineProperty(_defineProperty({}, "".concat(prefixCls, "-open"), delayOpen), "".concat(prefixCls, "-fullscreen"), fullscreen));
|
|
118
118
|
var renderFooter = function renderFooter() {
|
|
119
|
-
if (footer === false) {
|
|
119
|
+
if (footer === false || footer === null) {
|
|
120
120
|
return null;
|
|
121
121
|
}
|
|
122
122
|
if (footer === true || footer === undefined) {
|