@sheinx/base 3.4.0-beta.4 → 3.4.0-beta.5

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.
Files changed (129) hide show
  1. package/cjs/absolute-list/absolute-list.d.ts.map +1 -1
  2. package/cjs/absolute-list/absolute-list.js +25 -14
  3. package/cjs/absolute-list/absolute-list.type.d.ts +4 -0
  4. package/cjs/absolute-list/absolute-list.type.d.ts.map +1 -1
  5. package/cjs/cascader/cascader.js +2 -2
  6. package/cjs/checkbox/checkbox-group.d.ts.map +1 -1
  7. package/cjs/checkbox/checkbox-group.js +4 -0
  8. package/cjs/date-picker/date-picker.d.ts.map +1 -1
  9. package/cjs/date-picker/date-picker.js +12 -4
  10. package/cjs/date-picker/date-picker.type.d.ts +8 -0
  11. package/cjs/date-picker/date-picker.type.d.ts.map +1 -1
  12. package/cjs/date-picker/day.d.ts.map +1 -1
  13. package/cjs/date-picker/day.js +8 -3
  14. package/cjs/date-picker/day.type.d.ts +3 -0
  15. package/cjs/date-picker/day.type.d.ts.map +1 -1
  16. package/cjs/date-picker/picker.d.ts.map +1 -1
  17. package/cjs/date-picker/picker.js +7 -2
  18. package/cjs/date-picker/picker.type.d.ts +2 -0
  19. package/cjs/date-picker/picker.type.d.ts.map +1 -1
  20. package/cjs/date-picker/quick.d.ts.map +1 -1
  21. package/cjs/date-picker/quick.js +23 -5
  22. package/cjs/date-picker/quick.type.d.ts +1 -0
  23. package/cjs/date-picker/quick.type.d.ts.map +1 -1
  24. package/cjs/form/form-footer-context.d.ts.map +1 -1
  25. package/cjs/form/form-footer-context.js +6 -2
  26. package/cjs/form/form.d.ts.map +1 -1
  27. package/cjs/form/form.js +3 -1
  28. package/cjs/select/list-columns.js +1 -1
  29. package/cjs/select/list-option.d.ts.map +1 -1
  30. package/cjs/select/list-option.js +23 -3
  31. package/cjs/select/list-option.type.d.ts +2 -0
  32. package/cjs/select/list-option.type.d.ts.map +1 -1
  33. package/cjs/select/list.d.ts.map +1 -1
  34. package/cjs/select/list.js +7 -13
  35. package/cjs/select/result-more.d.ts +2 -2
  36. package/cjs/select/result-more.d.ts.map +1 -1
  37. package/cjs/select/result-more.js +2 -2
  38. package/cjs/select/result-more.type.d.ts +1 -1
  39. package/cjs/select/result-more.type.d.ts.map +1 -1
  40. package/cjs/select/select.type.d.ts +6 -3
  41. package/cjs/select/select.type.d.ts.map +1 -1
  42. package/cjs/table/table.d.ts.map +1 -1
  43. package/cjs/table/table.js +2 -2
  44. package/cjs/table/table.type.d.ts +6 -5
  45. package/cjs/table/table.type.d.ts.map +1 -1
  46. package/cjs/table/tbody.d.ts.map +1 -1
  47. package/cjs/table/tbody.js +1 -0
  48. package/cjs/table/tr.d.ts +1 -0
  49. package/cjs/table/tr.d.ts.map +1 -1
  50. package/cjs/table/tr.js +9 -6
  51. package/cjs/tabs/tabs.d.ts.map +1 -1
  52. package/cjs/tabs/tabs.js +13 -14
  53. package/cjs/tag/tag.js +2 -2
  54. package/cjs/tag/use-tag.js +2 -2
  55. package/cjs/tooltip/tooltip.d.ts.map +1 -1
  56. package/cjs/tooltip/tooltip.js +18 -6
  57. package/cjs/tooltip/tooltip.type.d.ts +4 -0
  58. package/cjs/tooltip/tooltip.type.d.ts.map +1 -1
  59. package/cjs/virtual-scroll/scroll.d.ts.map +1 -1
  60. package/cjs/virtual-scroll/scroll.js +11 -1
  61. package/cjs/virtual-scroll/virtual-scroll-list.d.ts.map +1 -1
  62. package/cjs/virtual-scroll/virtual-scroll-list.js +147 -20
  63. package/cjs/virtual-scroll/virtual-scroll-list.type.d.ts +1 -0
  64. package/cjs/virtual-scroll/virtual-scroll-list.type.d.ts.map +1 -1
  65. package/esm/absolute-list/absolute-list.d.ts.map +1 -1
  66. package/esm/absolute-list/absolute-list.js +25 -14
  67. package/esm/absolute-list/absolute-list.type.d.ts +4 -0
  68. package/esm/absolute-list/absolute-list.type.d.ts.map +1 -1
  69. package/esm/cascader/cascader.js +2 -2
  70. package/esm/checkbox/checkbox-group.d.ts.map +1 -1
  71. package/esm/checkbox/checkbox-group.js +6 -2
  72. package/esm/date-picker/date-picker.d.ts.map +1 -1
  73. package/esm/date-picker/date-picker.js +12 -4
  74. package/esm/date-picker/date-picker.type.d.ts +8 -0
  75. package/esm/date-picker/date-picker.type.d.ts.map +1 -1
  76. package/esm/date-picker/day.d.ts.map +1 -1
  77. package/esm/date-picker/day.js +8 -3
  78. package/esm/date-picker/day.type.d.ts +3 -0
  79. package/esm/date-picker/day.type.d.ts.map +1 -1
  80. package/esm/date-picker/picker.d.ts.map +1 -1
  81. package/esm/date-picker/picker.js +7 -2
  82. package/esm/date-picker/picker.type.d.ts +2 -0
  83. package/esm/date-picker/picker.type.d.ts.map +1 -1
  84. package/esm/date-picker/quick.d.ts.map +1 -1
  85. package/esm/date-picker/quick.js +20 -5
  86. package/esm/date-picker/quick.type.d.ts +1 -0
  87. package/esm/date-picker/quick.type.d.ts.map +1 -1
  88. package/esm/form/form-footer-context.d.ts.map +1 -1
  89. package/esm/form/form-footer-context.js +6 -2
  90. package/esm/form/form.d.ts.map +1 -1
  91. package/esm/form/form.js +3 -1
  92. package/esm/select/list-columns.js +1 -1
  93. package/esm/select/list-option.d.ts.map +1 -1
  94. package/esm/select/list-option.js +23 -3
  95. package/esm/select/list-option.type.d.ts +2 -0
  96. package/esm/select/list-option.type.d.ts.map +1 -1
  97. package/esm/select/list.d.ts.map +1 -1
  98. package/esm/select/list.js +7 -13
  99. package/esm/select/result-more.d.ts +2 -2
  100. package/esm/select/result-more.d.ts.map +1 -1
  101. package/esm/select/result-more.js +2 -2
  102. package/esm/select/result-more.type.d.ts +1 -1
  103. package/esm/select/result-more.type.d.ts.map +1 -1
  104. package/esm/select/select.type.d.ts +6 -3
  105. package/esm/select/select.type.d.ts.map +1 -1
  106. package/esm/table/table.d.ts.map +1 -1
  107. package/esm/table/table.js +2 -2
  108. package/esm/table/table.type.d.ts +6 -5
  109. package/esm/table/table.type.d.ts.map +1 -1
  110. package/esm/table/tbody.d.ts.map +1 -1
  111. package/esm/table/tbody.js +1 -0
  112. package/esm/table/tr.d.ts +1 -0
  113. package/esm/table/tr.d.ts.map +1 -1
  114. package/esm/table/tr.js +9 -6
  115. package/esm/tabs/tabs.d.ts.map +1 -1
  116. package/esm/tabs/tabs.js +13 -14
  117. package/esm/tag/tag.js +2 -2
  118. package/esm/tag/use-tag.js +2 -2
  119. package/esm/tooltip/tooltip.d.ts.map +1 -1
  120. package/esm/tooltip/tooltip.js +20 -8
  121. package/esm/tooltip/tooltip.type.d.ts +4 -0
  122. package/esm/tooltip/tooltip.type.d.ts.map +1 -1
  123. package/esm/virtual-scroll/scroll.d.ts.map +1 -1
  124. package/esm/virtual-scroll/scroll.js +12 -2
  125. package/esm/virtual-scroll/virtual-scroll-list.d.ts.map +1 -1
  126. package/esm/virtual-scroll/virtual-scroll-list.js +147 -20
  127. package/esm/virtual-scroll/virtual-scroll-list.type.d.ts +1 -0
  128. package/esm/virtual-scroll/virtual-scroll-list.type.d.ts.map +1 -1
  129. package/package.json +2 -2
@@ -37,30 +37,110 @@ var VirtualList = function VirtualList(props) {
37
37
  _props$tag = props.tag,
38
38
  tag = _props$tag === void 0 ? 'div' : _props$tag,
39
39
  tagClassName = props.tagClassName,
40
+ dynamicVirtual = props.dynamicVirtual,
40
41
  virtualRef = props.virtualRef,
41
42
  onControlTypeChange = props.onControlTypeChange;
42
43
  var _useState = (0, _react.useState)(0),
43
44
  _useState2 = _slicedToArray(_useState, 2),
44
- currentIndex = _useState2[0],
45
- setCurrentIndex = _useState2[1];
45
+ top = _useState2[0],
46
+ setTop = _useState2[1];
46
47
  var _useState3 = (0, _react.useState)(0),
47
48
  _useState4 = _slicedToArray(_useState3, 2),
48
- top = _useState4[0],
49
- setTop = _useState4[1];
49
+ offsetY = _useState4[0],
50
+ setOffsetY = _useState4[1];
51
+ var _useState5 = (0, _react.useState)(props.data.length * lineHeight),
52
+ _useState6 = _slicedToArray(_useState5, 2),
53
+ scrollHeight = _useState6[0],
54
+ setHeight = _useState6[1];
55
+ var _useState7 = (0, _react.useState)(0),
56
+ _useState8 = _slicedToArray(_useState7, 2),
57
+ startIndex = _useState8[0],
58
+ setCurrentIndex = _useState8[1];
50
59
  var wrapperRef = (0, _react.useRef)(null);
51
- var getScrollHeight = function getScrollHeight() {
52
- var rows = Math.ceil(data.length);
53
- return rows * lineHeight;
60
+ var _useRef = (0, _react.useRef)({
61
+ cachedHeight: [],
62
+ controlScrollRate: null,
63
+ heightCallback: null,
64
+ preIndex: null,
65
+ topTimer: null,
66
+ rateTimer: null,
67
+ shouldUpdateHeight: true
68
+ }),
69
+ context = _useRef.current;
70
+ var getContentHeight = function getContentHeight(index) {
71
+ var sum = 0;
72
+ for (var i = 0; i <= index; i++) {
73
+ sum += context.cachedHeight[i] || lineHeight;
74
+ }
75
+ return sum;
54
76
  };
55
77
  var getCurrentIndex = (0, _hooks.usePersistFn)(function () {
56
- return currentIndex;
78
+ return startIndex;
57
79
  });
58
80
  var getTop = (0, _hooks.usePersistFn)(function () {
59
81
  return top;
60
82
  });
83
+ var setRowHeight = (0, _hooks.usePersistFn)(function (index, height) {
84
+ var beforeHeight = context.cachedHeight[index];
85
+ if (beforeHeight && beforeHeight === height) return;
86
+ context.cachedHeight[index] = height;
87
+ if (context.shouldUpdateHeight) {
88
+ setHeight(getContentHeight(props.data.length - 1));
89
+ }
90
+ var preIndex = context.preIndex;
91
+ // 解决: 从下往上滚 由于高度变化会导致滚动条跳动
92
+ if (preIndex && preIndex > startIndex && startIndex === index) {
93
+ // 发生在顶部
94
+ if (context.heightCallback) return;
95
+ var offset = height - (beforeHeight || lineHeight);
96
+ setOffsetY(function (s) {
97
+ return s + offset;
98
+ });
99
+ }
100
+ });
101
+ var updateRateScroll = (0, _hooks.usePersistFn)(function (rate) {
102
+ var sumHeight = getContentHeight(props.data.length - 1);
103
+ if (sumHeight === scrollHeight) return;
104
+ context.shouldUpdateHeight = true;
105
+ context.heightCallback = function () {
106
+ if (wrapperRef && wrapperRef.current) {
107
+ var _scrollHeight = wrapperRef.current.scrollHeight;
108
+ var clientHeight = wrapperRef.current.clientHeight;
109
+ var nowTop = wrapperRef.current.scrollTop;
110
+ var max = _scrollHeight - clientHeight;
111
+ var _top = rate * max;
112
+ if (Math.abs(nowTop - _top) < 1) {
113
+ context.controlScrollRate = null;
114
+ } else {
115
+ context.controlScrollRate = rate;
116
+ wrapperRef.current.scrollTop = _top;
117
+ }
118
+ }
119
+ };
120
+ setHeight(sumHeight);
121
+ });
122
+ var updateIndexAndTopFromTop = function updateIndexAndTopFromTop(scrollTop) {
123
+ var sum = 0;
124
+ var nextCurrentIndex = 0;
125
+ var top = 0;
126
+ var maxIndex = Math.max(props.data.length - rowsInView, 0);
127
+ for (var i = 0; i <= maxIndex; i++) {
128
+ sum += context.cachedHeight[i] || lineHeight;
129
+ if (scrollTop < sum || i === maxIndex) {
130
+ nextCurrentIndex = i;
131
+ var beforeHeight = i === 0 ? 0 : sum - (context.cachedHeight[i] || lineHeight);
132
+ top = scrollTop - beforeHeight;
133
+ break;
134
+ }
135
+ }
136
+ if (nextCurrentIndex !== startIndex) {
137
+ setCurrentIndex(nextCurrentIndex);
138
+ }
139
+ setTop(top);
140
+ };
61
141
  var handleScrollByStep = (0, _hooks.usePersistFn)(function (step, top) {
62
142
  var _wrapperRef$current;
63
- var next = currentIndex + step;
143
+ var next = startIndex + step;
64
144
  (_wrapperRef$current = wrapperRef.current) === null || _wrapperRef$current === void 0 || _wrapperRef$current.scrollTo({
65
145
  top: next * lineHeight + (top || 0)
66
146
  });
@@ -70,21 +150,36 @@ var VirtualList = function VirtualList(props) {
70
150
  };
71
151
  var handleScroll = function handleScroll(info) {
72
152
  var _props$onScroll;
73
- var current = Math.floor(info.scrollTop / lineHeight);
74
- var top = info.scrollTop - current * lineHeight;
153
+ var scrollLeft = info.scrollLeft,
154
+ height = info.height,
155
+ y = info.y,
156
+ fromDrag = info.fromDrag;
157
+ var scrollTop = info.scrollTop;
158
+ context.shouldUpdateHeight = !fromDrag;
159
+ var sumHeight = getContentHeight(props.data.length - 1);
160
+ var max = sumHeight - height;
161
+ if (scrollTop > max) {
162
+ scrollTop = max;
163
+ }
164
+ if (fromDrag) {
165
+ var _top2 = y * max;
166
+ updateIndexAndTopFromTop(_top2);
167
+ if (context.rateTimer) clearTimeout(context.rateTimer);
168
+ context.rateTimer = setTimeout(function () {
169
+ updateRateScroll(y);
170
+ }, 120);
171
+ } else {
172
+ updateIndexAndTopFromTop(scrollTop);
173
+ }
75
174
  (_props$onScroll = props.onScroll) === null || _props$onScroll === void 0 || _props$onScroll.call(props, info);
76
- setTop(top);
77
- setCurrentIndex(current);
78
175
  };
79
- var scrollHeight = getScrollHeight();
80
176
  var renderList = function renderList() {
81
- var start = currentIndex;
82
- var end = currentIndex + rowsInView;
83
- var items = data.slice(start, end);
177
+ var items = data.slice(startIndex, startIndex + rowsInView);
84
178
  var Tag = tag;
85
179
  var shouldScroll = data.length * lineHeight > height;
86
180
  var nextStyle = _objectSpread({}, style);
87
181
  if (shouldScroll) nextStyle.height = height;
182
+ var scrollHeight = getContentHeight(data.length - 1);
88
183
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_scroll.default, {
89
184
  className: className,
90
185
  style: nextStyle,
@@ -105,16 +200,48 @@ var VirtualList = function VirtualList(props) {
105
200
  children: items.map(function (d, i) {
106
201
  if (d[groupKey]) {
107
202
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.default.Fragment, {
108
- children: customRenderItem(d, currentIndex + i, i)
203
+ children: customRenderItem(d, startIndex + i, i)
109
204
  }, i);
110
205
  }
111
206
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.default.Fragment, {
112
- children: renderItem(d, currentIndex + i, i)
113
- }, i);
207
+ children: renderItem(d, startIndex + i, i, setRowHeight)
208
+ }, dynamicVirtual ? startIndex + i : i);
114
209
  })
115
210
  })
116
211
  });
117
212
  };
213
+ (0, _react.useEffect)(function () {
214
+ setHeight(getContentHeight(props.data.length - 1));
215
+ }, [data.length]);
216
+ (0, _react.useEffect)(function () {
217
+ if (offsetY) {
218
+ // if (wrapperRef.current && props.innerRef.current) {
219
+ if (wrapperRef.current) {
220
+ setOffsetY(0);
221
+ setTop(function (s) {
222
+ return s + offsetY;
223
+ });
224
+ wrapperRef.current.scrollTop += offsetY;
225
+ }
226
+ }
227
+ }, [offsetY, startIndex]);
228
+ (0, _react.useEffect)(function () {
229
+ // 数据变化的时候清空掉 preIndex, 如果之前有缓存的index, setRowHeight 会有问题
230
+ return function () {
231
+ context.preIndex = null;
232
+ };
233
+ }, [props.data]);
234
+ (0, _react.useEffect)(function () {
235
+ if (context.heightCallback) {
236
+ var cb = context.heightCallback;
237
+ context.heightCallback = null;
238
+ cb();
239
+ }
240
+ }, [scrollHeight]);
241
+ (0, _react.useEffect)(function () {
242
+ // 记录preIndex
243
+ context.preIndex = startIndex;
244
+ }, [startIndex]);
118
245
  (0, _react.useEffect)(function () {
119
246
  if (virtualRef !== null && virtualRef !== void 0 && virtualRef.current) {
120
247
  virtualRef.current.scrollByStep = handleScrollByStep;
@@ -21,6 +21,7 @@ export interface VirtualListProps<DataItem> extends Pick<CommonType, 'className'
21
21
  tagClassName?: string;
22
22
  virtualRef?: React.MutableRefObject<VirtualListType>;
23
23
  scrollerStyle?: React.CSSProperties;
24
+ dynamicVirtual?: boolean;
24
25
  onControlTypeChange?: React.Dispatch<React.SetStateAction<'mouse' | 'keyboard'>>;
25
26
  onScroll?: (info: {
26
27
  scrollLeft: number;
@@ -1 +1 @@
1
- {"version":3,"file":"virtual-scroll-list.type.d.ts","sourceRoot":"","sources":["virtual-scroll-list.type.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,eAAe,CAAC,EAAE,MAAM,MAAM,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;CAC9B,CAAC;AAEF,MAAM,WAAW,gBAAgB,CAAC,QAAQ,CAAE,SAAQ,IAAI,CAAC,UAAU,EAAE,WAAW,GAAG,OAAO,CAAC;IACzF,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;IAE9B,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,GAAG,CAAC;IAChB,gBAAgB,CAAC,EAAE,GAAG,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC;IACrD,aAAa,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAEpC,mBAAmB,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC;IACjF,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,QAAQ,EAAE,OAAO,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACf,KAAK,IAAI,CAAC;CACZ"}
1
+ {"version":3,"file":"virtual-scroll-list.type.d.ts","sourceRoot":"","sources":["virtual-scroll-list.type.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,eAAe,CAAC,EAAE,MAAM,MAAM,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;CAC9B,CAAC;AAEF,MAAM,WAAW,gBAAgB,CAAC,QAAQ,CAAE,SAAQ,IAAI,CAAC,UAAU,EAAE,WAAW,GAAG,OAAO,CAAC;IACzF,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;IAE9B,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,GAAG,CAAC;IAChB,gBAAgB,CAAC,EAAE,GAAG,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC;IACrD,aAAa,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAEpC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,mBAAmB,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC;IACjF,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,QAAQ,EAAE,OAAO,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACf,KAAK,IAAI,CAAC;CACZ"}
@@ -1 +1 @@
1
- {"version":3,"file":"absolute-list.d.ts","sourceRoot":"","sources":["absolute-list.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6B,MAAM,OAAO,CAAC;AAGlD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAIzD,QAAA,MAAM,YAAY,UAAW,iBAAiB;;sBA6D7C,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"absolute-list.d.ts","sourceRoot":"","sources":["absolute-list.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6B,MAAM,OAAO,CAAC;AAGlD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAIzD,QAAA,MAAM,YAAY,UAAW,iBAAiB;;sBAwE7C,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -18,6 +18,7 @@ var AbsoluteList = function AbsoluteList(props) {
18
18
  _props$zIndex = props.zIndex,
19
19
  zIndex = _props$zIndex === void 0 ? 1051 : _props$zIndex,
20
20
  focus = props.focus,
21
+ arrowRef = props.arrowRef,
21
22
  popupElRef = props.popupElRef,
22
23
  updateKey = props.updateKey,
23
24
  popupGap = props.popupGap,
@@ -36,23 +37,33 @@ var AbsoluteList = function AbsoluteList(props) {
36
37
  rendered: false
37
38
  }),
38
39
  context = _useRef.current;
39
- var style = usePositionStyle({
40
- getContainer: getRoot,
41
- position: position,
42
- absolute: !!absolute,
43
- parentElRef: parentElRef,
44
- show: focus,
45
- fixedWidth: fixedWidth,
46
- zIndex: zIndex,
47
- scrollElRef: scrollElRef,
48
- popupElRef: popupElRef,
49
- updateKey: updateKey,
50
- popupGap: popupGap,
51
- adjust: adjust
52
- });
40
+ var _usePositionStyle = usePositionStyle({
41
+ getContainer: getRoot,
42
+ position: position,
43
+ absolute: !!absolute,
44
+ parentElRef: parentElRef,
45
+ show: focus,
46
+ fixedWidth: fixedWidth,
47
+ zIndex: zIndex,
48
+ scrollElRef: scrollElRef,
49
+ popupElRef: popupElRef,
50
+ updateKey: updateKey,
51
+ popupGap: popupGap,
52
+ adjust: adjust
53
+ }),
54
+ style = _usePositionStyle.style,
55
+ arrayStyle = _usePositionStyle.arrayStyle;
53
56
  var childStyle = children.props.style;
54
57
  var newStyle = _objectSpread(_objectSpread({}, style), childStyle);
55
58
  if ( /*#__PURE__*/React.isValidElement(children) === false) return null;
59
+ if (arrowRef && arrayStyle && Object.keys(arrayStyle).length > 0) {
60
+ Object.keys(arrayStyle).forEach(function (key) {
61
+ if (arrowRef.current) {
62
+ // @ts-ignore
63
+ arrowRef.current.style[key] = arrayStyle[key];
64
+ }
65
+ });
66
+ }
56
67
  var styledChild = /*#__PURE__*/React.cloneElement(children, {
57
68
  style: newStyle
58
69
  });
@@ -29,9 +29,13 @@ export interface AbsoluteListProps {
29
29
  scrollElRef?: React.RefObject<HTMLElement>;
30
30
  scrollLeft?: number;
31
31
  scrollTop?: number;
32
+ arrowRef?: React.RefObject<HTMLElement>;
32
33
  popupElRef: React.RefObject<HTMLElement>;
33
34
  destroy?: boolean;
34
35
  adjust?: boolean;
35
36
  lazy?: boolean;
37
+ arrowStyleRef?: React.RefObject<{
38
+ style: React.CSSProperties;
39
+ }>;
36
40
  }
37
41
  //# sourceMappingURL=absolute-list.type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"absolute-list.type.d.ts","sourceRoot":"","sources":["absolute-list.type.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,MAAM,kBAAkB,GAC1B,aAAa,GACb,UAAU,GACV,cAAc,GACd,WAAW,GACX,MAAM,GACN,OAAO,CAAC;AACZ,MAAM,MAAM,gBAAgB,GACxB,aAAa,GACb,cAAc,GACd,UAAU,GACV,WAAW,GACX,KAAK,GACL,QAAQ,CAAC;AAEb,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC;IAC7B,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC1C,UAAU,EAAE,KAAK,GAAG,OAAO,CAAC;IAC5B,QAAQ,EAAE,kBAAkB,GAAG,gBAAgB,GAAG,OAAO,CAAC;IAC1D,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,GAAG,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC;IAE5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAEzC,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB"}
1
+ {"version":3,"file":"absolute-list.type.d.ts","sourceRoot":"","sources":["absolute-list.type.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,MAAM,kBAAkB,GAC1B,aAAa,GACb,UAAU,GACV,cAAc,GACd,WAAW,GACX,MAAM,GACN,OAAO,CAAC;AACZ,MAAM,MAAM,gBAAgB,GACxB,aAAa,GACb,cAAc,GACd,UAAU,GACV,WAAW,GACX,KAAK,GACL,QAAQ,CAAC;AAEb,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC;IAC7B,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC1C,UAAU,EAAE,KAAK,GAAG,OAAO,CAAC;IAC5B,QAAQ,EAAE,kBAAkB,GAAG,gBAAgB,GAAG,OAAO,CAAC;IAC1D,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,GAAG,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC;IAE5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACxC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAEzC,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;QAAE,KAAK,EAAE,KAAK,CAAC,aAAa,CAAA;KAAE,CAAC,CAAC;CACjE"}
@@ -308,8 +308,8 @@ var Cascader = function Cascader(props0) {
308
308
  return;
309
309
  }
310
310
  };
311
- var handleChange = function handleChange(item) {
312
- onChange === null || onChange === void 0 || onChange(item);
311
+ var handleChange = function handleChange(item, selectId) {
312
+ onChange === null || onChange === void 0 || onChange(item, selectId);
313
313
  };
314
314
  var handleClear = function handleClear(e) {
315
315
  e.stopPropagation();
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox-group.d.ts","sourceRoot":"","sources":["checkbox-group.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAQ3D,QAAA,MAAM,KAAK;;;oBA2FG,GAAG;wBACC,GAAG;;CAHpB,CAAC;AAMF,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"checkbox-group.d.ts","sourceRoot":"","sources":["checkbox-group.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAQ3D,QAAA,MAAM,KAAK;;;oBAiGG,GAAG;wBACC,GAAG;;CAHpB,CAAC;AAMF,eAAe,KAAK,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { useInputAble, useListSelectMultiple, usePersistFn, util } from '@sheinx/hooks';
2
- import groupContext from "./group-context";
2
+ import GroupContext from "./group-context";
3
3
  import Checkbox from "./checkbox";
4
4
  import React from 'react';
5
5
  import classNames from 'classnames';
@@ -42,6 +42,10 @@ var Group = function Group(props0) {
42
42
  } else {
43
43
  datum.remove(raw);
44
44
  }
45
+ if (children && /*#__PURE__*/React.isValidElement(children)) {
46
+ var _children$props$onCha, _children$props;
47
+ (_children$props$onCha = (_children$props = children.props).onChange) === null || _children$props$onCha === void 0 || _children$props$onCha.call(_children$props, _, checked, children.props.htmlValue);
48
+ }
45
49
  });
46
50
  var isChecked = usePersistFn(function (d) {
47
51
  return datum.check(d);
@@ -67,7 +71,7 @@ var Group = function Group(props0) {
67
71
  return /*#__PURE__*/_jsx("div", {
68
72
  className: groupClass,
69
73
  style: style,
70
- children: /*#__PURE__*/_jsx(groupContext.Provider, {
74
+ children: /*#__PURE__*/_jsx(GroupContext.Provider, {
71
75
  value: providerValue,
72
76
  children: children
73
77
  })
@@ -1 +1 @@
1
- {"version":3,"file":"date-picker.d.ts","sourceRoot":"","sources":["date-picker.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAiB1E,QAAA,MAAM,UAAU,oFA8Rf,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"date-picker.d.ts","sourceRoot":"","sources":["date-picker.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAiB1E,QAAA,MAAM,UAAU,oFAmSf,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -52,16 +52,20 @@ var DatePicker = function DatePicker(props0) {
52
52
  _React$useState2 = _slicedToArray(_React$useState, 2),
53
53
  activeIndex = _React$useState2[0],
54
54
  setActiveIndex = _React$useState2[1];
55
+ var _React$useState3 = React.useState(0),
56
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
57
+ clickTimes = _React$useState4[0],
58
+ setClickTimes = _React$useState4[1];
55
59
  var inputRef = useRef({
56
60
  inputRef: null
57
61
  });
58
62
  var styles = jssStyle === null || jssStyle === void 0 || (_jssStyle$datePicker = jssStyle.datePicker) === null || _jssStyle$datePicker === void 0 ? void 0 : _jssStyle$datePicker.call(jssStyle);
59
63
  var isRTL = direction === 'rtl';
60
64
  var dfp = isRTL ? 'bottom-right' : 'bottom-left';
61
- var _React$useState3 = React.useState(false),
62
- _React$useState4 = _slicedToArray(_React$useState3, 2),
63
- focused = _React$useState4[0],
64
- setFocused = _React$useState4[1];
65
+ var _React$useState5 = React.useState(false),
66
+ _React$useState6 = _slicedToArray(_React$useState5, 2),
67
+ focused = _React$useState6[0],
68
+ setFocused = _React$useState6[1];
65
69
  var listPosition = props.position || dfp;
66
70
  if (horizontalPosition.includes(listPosition)) {
67
71
  listPosition = listPosition.split('-').reverse().join('-');
@@ -89,6 +93,7 @@ var DatePicker = function DatePicker(props0) {
89
93
  clearable: clearable,
90
94
  disabled: disabled,
91
95
  clearWithUndefined: props.clearWithUndefined,
96
+ clearToUndefined: props.clearToUndefined,
92
97
  onClear: undefined,
93
98
  allowSingle: props.allowSingle,
94
99
  defaultCurrent: props.defaultPickerValue || props.defaultRangeMonth,
@@ -156,6 +161,7 @@ var DatePicker = function DatePicker(props0) {
156
161
  var handleClose = function handleClose() {
157
162
  var _inputRef$current$inp;
158
163
  closePop();
164
+ setClickTimes(0);
159
165
  (_inputRef$current$inp = inputRef.current.inputRef) === null || _inputRef$current$inp === void 0 || _inputRef$current$inp.blur();
160
166
  };
161
167
  var handleResultClick = usePersistFn(function () {
@@ -264,6 +270,8 @@ var DatePicker = function DatePicker(props0) {
264
270
  disabledTime: props.disabledTime,
265
271
  quickSelect: props.quickSelect,
266
272
  showSelNow: props.showSelNow,
273
+ clickTimes: clickTimes,
274
+ setClickTimes: setClickTimes,
267
275
  setActiveIndex: setActiveIndex,
268
276
  hourStep: props.hourStep,
269
277
  minuteStep: props.minuteStep,
@@ -82,6 +82,7 @@ export interface DatePickerClasses {
82
82
  datetimeHide: string;
83
83
  quickPicker: string;
84
84
  quickPickerItem: string;
85
+ quickPickerActiveItem: string;
85
86
  }
86
87
  export type DisabledType = 'start' | 'end';
87
88
  interface DatePickerJssStyle {
@@ -188,6 +189,13 @@ export interface DatePickerProps<Value extends DatePickerValueType> extends Pick
188
189
  * @default false
189
190
  */
190
191
  clearWithUndefined?: boolean;
192
+ /**
193
+ * @en After clicking the clear button, the data becomes undefined
194
+ * @cn 点击清除按钮后数据变为 undefined
195
+ * @default false
196
+ * @version 3.4.0
197
+ */
198
+ clearToUndefined?: boolean;
191
199
  /**
192
200
  * @en allow single select, only in range can set
193
201
  * @cn 是否允许单选, 仅在 range 模式下有效
@@ -1 +1 @@
1
- {"version":3,"file":"date-picker.type.d.ts","sourceRoot":"","sources":["date-picker.type.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"date-picker.type.d.ts","sourceRoot":"","sources":["date-picker.type.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"day.d.ts","sourceRoot":"","sources":["day.tsx"],"names":[],"mappings":";AAQA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAG3C,QAAA,MAAM,GAAG,UAAW,QAAQ,gBAkQ3B,CAAC;AAEF,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"day.d.ts","sourceRoot":"","sources":["day.tsx"],"names":[],"mappings":";AAQA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAG3C,QAAA,MAAM,GAAG,UAAW,QAAQ,gBAyQ3B,CAAC;AAEF,eAAe,GAAG,CAAC"}
@@ -23,8 +23,8 @@ var Day = function Day(props) {
23
23
  direction = _useConfig.direction;
24
24
  var styles = jssStyle === null || jssStyle === void 0 || (_jssStyle$datePicker = jssStyle.datePicker) === null || _jssStyle$datePicker === void 0 ? void 0 : _jssStyle$datePicker.call(jssStyle);
25
25
  var areaType = props.type === 'week' ? 'week' : 'day';
26
- var onChange = usePersistFn(function (date) {
27
- props.onChange(date, props.type === 'datetime');
26
+ var onChange = usePersistFn(function (date, noClose) {
27
+ props.onChange(date, noClose || props.type === 'datetime');
28
28
  props.setTarget(undefined);
29
29
  });
30
30
  var setCurrent = usePersistFn(function (date) {
@@ -66,7 +66,12 @@ var Day = function Day(props) {
66
66
  dir: direction,
67
67
  className: classNames(styles === null || styles === void 0 ? void 0 : styles.pickerCell, isActive && (styles === null || styles === void 0 ? void 0 : styles.pickerCellActive), !isCurrentMonth && (styles === null || styles === void 0 ? void 0 : styles.pickerCellBound), isDisabled && (styles === null || styles === void 0 ? void 0 : styles.pickerCellDisabled), isToday && (styles === null || styles === void 0 ? void 0 : styles.pickerCellToday), isInRange && (styles === null || styles === void 0 ? void 0 : styles.pickerCellInRange), (isInRange === 'start' || isInRange === 'start-end') && props.position === 'start' && (styles === null || styles === void 0 ? void 0 : styles.pickerCellInRangeStart), (isInRange === 'end' || isInRange === 'start-end') && props.position === 'end' && (styles === null || styles === void 0 ? void 0 : styles.pickerCellInRangeEnd)),
68
68
  onClick: function onClick() {
69
- return func.handleDayClick(item);
69
+ if (props.range) {
70
+ func.handleDayClick(item, props.clickTimes < 1);
71
+ props.setClickTimes(props.clickTimes + 1);
72
+ } else {
73
+ func.handleDayClick(item);
74
+ }
70
75
  },
71
76
  onDoubleClick: function onDoubleClick() {
72
77
  var _props$onDoubleClick;
@@ -1,6 +1,9 @@
1
1
  import type { CommonPickerProps, CommonTimeProps } from './picker.type';
2
2
  export interface DayProps extends CommonPickerProps, CommonTimeProps {
3
3
  open?: boolean;
4
+ clickTimes: number;
5
+ setClickTimes: (times: number) => void;
6
+ range?: boolean | number;
4
7
  onDoubleClick?: (date: Date, type: string) => void;
5
8
  }
6
9
  //# sourceMappingURL=day.type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"day.type.d.ts","sourceRoot":"","sources":["day.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAExE,MAAM,WAAW,QAAS,SAAQ,iBAAiB,EAAE,eAAe;IAClE,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACpD"}
1
+ {"version":3,"file":"day.type.d.ts","sourceRoot":"","sources":["day.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAExE,MAAM,WAAW,QAAS,SAAQ,iBAAiB,EAAE,eAAe;IAClE,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACpD"}
@@ -1 +1 @@
1
- {"version":3,"file":"picker.d.ts","sourceRoot":"","sources":["picker.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAS5C,QAAA,MAAM,MAAM,UAAW,WAAW,gBAqIjC,CAAC;AAEF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"picker.d.ts","sourceRoot":"","sources":["picker.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAS5C,QAAA,MAAM,MAAM,UAAW,WAAW,gBAyIjC,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -21,7 +21,8 @@ var Picker = function Picker(props) {
21
21
  dateArr = props.dateArr,
22
22
  options = props.options,
23
23
  jssStyle = props.jssStyle,
24
- isDisabledDate = props.isDisabledDate;
24
+ isDisabledDate = props.isDisabledDate,
25
+ type = props.type;
25
26
  var styles = jssStyle === null || jssStyle === void 0 || (_jssStyle$datePicker = jssStyle.datePicker) === null || _jssStyle$datePicker === void 0 ? void 0 : _jssStyle$datePicker.call(jssStyle);
26
27
  var _useDatePickerRange = useDatePickerRange({
27
28
  type: props.type,
@@ -78,7 +79,10 @@ var Picker = function Picker(props) {
78
79
  setTarget: position === 'end' ? func.setTargetEnd : func.setTargetStart,
79
80
  registerModeDisabled: props.registerModeDisabled,
80
81
  onMouseEnter: function onMouseEnter() {},
81
- onMouseLeave: function onMouseLeave() {}
82
+ onMouseLeave: function onMouseLeave() {},
83
+ range: range,
84
+ setClickTimes: props.setClickTimes,
85
+ clickTimes: props.clickTimes
82
86
  };
83
87
  if (range) {
84
88
  commonProps['onMouseEnter'] = position === 'end' ? handleEnterEnd : handleEnterStart;
@@ -134,6 +138,7 @@ var Picker = function Picker(props) {
134
138
  range: props.range,
135
139
  jssStyle: jssStyle,
136
140
  dateArr: dateArr,
141
+ type: type,
137
142
  setDateArr: props.setDateArr,
138
143
  setCurrentArr: props.setCurrentArr,
139
144
  format: props.format,
@@ -34,6 +34,8 @@ export interface PickerProps {
34
34
  setActiveIndex: (index: number) => void;
35
35
  registerModeDisabled: (position: 'start' | 'end' | undefined, mode: string, disabled: (d: Date) => boolean) => void;
36
36
  isDisabledDate: (date: Date, position: 'start' | 'end' | undefined) => boolean;
37
+ clickTimes: number;
38
+ setClickTimes: Dispatch<SetStateAction<number>>;
37
39
  }
38
40
  export interface CommonPickerProps extends Pick<PickerProps, 'jssStyle' | 'options' | 'format' | 'type' | 'showSelNow' | 'registerModeDisabled' | 'children'> {
39
41
  rangeDate: Array<Date | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"picker.type.d.ts","sourceRoot":"","sources":["picker.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvF,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;IAC3C,WAAW,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC;IACjD,WAAW,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC;IACjD,UAAU,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC;IAC/C,QAAQ,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;IAC3C,YAAY,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,CAAC;IACnD,KAAK,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;IACrC,QAAQ,CAAC,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;IAC5C,UAAU,CAAC,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC;IAChD,UAAU,CAAC,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC;IAChD,QAAQ,CAAC,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC;IACjC,YAAY,EAAE,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAChE,UAAU,EAAE,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAC9D,UAAU,EAAE,IAAI,EAAE,CAAC;IACnB,aAAa,EAAE,CACb,GAAG,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,EACjC,IAAI,EAAE,MAAM,EACZ,KAAK,EACD;QACE,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;QACtB,KAAK,EAAE,GAAG,CAAC;KACZ,GACD,SAAS,KACV,IAAI,CAAC;IACV,IAAI,EAAE,kBAAkB,EAAE,CAAC;IAC3B,OAAO,EAAE,QAAQ,CAAC,cAAc,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;IACxD,OAAO,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,GAAG,CAAC,EAAE,YAAY,CAAC;IACnB,GAAG,CAAC,EAAE,YAAY,CAAC;IACnB,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,oBAAoB,EAAE,CACpB,QAAQ,EAAE,OAAO,GAAG,KAAK,GAAG,SAAS,EACrC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,OAAO,KAC3B,IAAI,CAAC;IACV,cAAc,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,GAAG,KAAK,GAAG,SAAS,KAAK,OAAO,CAAC;CAChF;AAED,MAAM,WAAW,iBACf,SAAQ,IAAI,CACV,WAAW,EACX,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,YAAY,GAAG,sBAAsB,GAAG,UAAU,CAChG;IACD,SAAS,EAAE,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC;IACnC,OAAO,EAAE,IAAI,CAAC;IACd,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,KAAK,EAAE,IAAI,GAAG,SAAS,CAAC;IACxB,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC;IAClC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,GAAG,CAAC,EAAE,IAAI,CAAC;IACX,GAAG,CAAC,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,KAAK,IAAI,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,eACf,SAAQ,IAAI,CAAC,WAAW,EAAE,cAAc,GAAG,UAAU,GAAG,YAAY,GAAG,YAAY,CAAC;IACpF,WAAW,EAAE,YAAY,CAAC;CAC3B"}
1
+ {"version":3,"file":"picker.type.d.ts","sourceRoot":"","sources":["picker.type.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"quick.d.ts","sourceRoot":"","sources":["quick.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK/C,QAAA,MAAM,KAAK,UAAW,UAAU,gBAsC/B,CAAC;AAEF,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"quick.d.ts","sourceRoot":"","sources":["quick.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK/C,QAAA,MAAM,KAAK,UAAW,UAAU,gBA+D/B,CAAC;AAEF,eAAe,KAAK,CAAC"}
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import React, { useRef } from 'react';
2
2
  import { dateUtil, util } from '@sheinx/hooks';
3
3
  import classNames from 'classnames';
4
4
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -8,10 +8,15 @@ var Quick = function Quick(props) {
8
8
  quickSelect = props.quickSelect,
9
9
  format = props.format,
10
10
  options = props.options,
11
- children = props.children;
11
+ children = props.children,
12
+ type = props.type;
12
13
  var styles = jssStyle === null || jssStyle === void 0 || (_jssStyle$datePicker = jssStyle.datePicker) === null || _jssStyle$datePicker === void 0 ? void 0 : _jssStyle$datePicker.call(jssStyle);
13
- var handleClick = function handleClick(item) {
14
+ var quickDateCache = useRef();
15
+ var quickActiveKey = useRef();
16
+ var handleClick = function handleClick(item, index) {
14
17
  var itemV = util.isFunc(item.value) ? item.value() : item.value;
18
+ quickDateCache.current = itemV;
19
+ quickActiveKey.current = index;
15
20
  if (!util.isArray(itemV)) {
16
21
  itemV = [itemV];
17
22
  }
@@ -27,13 +32,23 @@ var Quick = function Quick(props) {
27
32
  if (!(quickSelect !== null && quickSelect !== void 0 && quickSelect.length)) {
28
33
  return children || null;
29
34
  }
35
+ var compareDate = function compareDate(index) {
36
+ if (!quickDateCache.current) return false;
37
+ if (index !== quickActiveKey.current) return false;
38
+ var currentArr = quickDateCache.current;
39
+ if (!util.isArray(currentArr)) {
40
+ currentArr = [currentArr];
41
+ }
42
+ return dateUtil.compareDateArray(currentArr, props.dateArr, type, options, format);
43
+ };
30
44
  return /*#__PURE__*/_jsx("div", {
31
45
  className: classNames(styles === null || styles === void 0 ? void 0 : styles.quickPicker, styles === null || styles === void 0 ? void 0 : styles.picker),
32
46
  children: quickSelect === null || quickSelect === void 0 ? void 0 : quickSelect.map(function (item, index) {
47
+ var isActive = compareDate(index);
33
48
  return /*#__PURE__*/_jsx("div", {
34
- className: styles === null || styles === void 0 ? void 0 : styles.quickPickerItem,
49
+ className: classNames(styles === null || styles === void 0 ? void 0 : styles.quickPickerItem, isActive && (styles === null || styles === void 0 ? void 0 : styles.quickPickerActiveItem)),
35
50
  onClick: function onClick() {
36
- handleClick(item);
51
+ handleClick(item, index);
37
52
  },
38
53
  children: item.name
39
54
  }, index);
@@ -2,6 +2,7 @@ import { PickerProps } from './picker.type';
2
2
  export interface QuickProps {
3
3
  jssStyle?: PickerProps['jssStyle'];
4
4
  quickSelect?: PickerProps['quickSelect'];
5
+ type: PickerProps['type'];
5
6
  dateArr: PickerProps['dateArr'];
6
7
  setDateArr: PickerProps['setDateArr'];
7
8
  format: PickerProps['format'];