@sheinx/base 3.5.8-beta.8 → 3.5.8

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 (137) hide show
  1. package/cjs/absolute-list/absolute-list.d.ts.map +1 -1
  2. package/cjs/absolute-list/absolute-list.js +3 -1
  3. package/cjs/absolute-list/absolute-list.type.d.ts +1 -0
  4. package/cjs/absolute-list/absolute-list.type.d.ts.map +1 -1
  5. package/cjs/breadcrumb/breadcrumb.js +1 -0
  6. package/cjs/cascader/cascader.d.ts.map +1 -1
  7. package/cjs/cascader/cascader.js +8 -4
  8. package/cjs/cascader/cascader.type.d.ts +3 -0
  9. package/cjs/cascader/cascader.type.d.ts.map +1 -1
  10. package/cjs/cascader/filter-list.d.ts.map +1 -1
  11. package/cjs/cascader/filter-list.js +2 -0
  12. package/cjs/cascader/filter-list.type.d.ts +2 -1
  13. package/cjs/cascader/filter-list.type.d.ts.map +1 -1
  14. package/cjs/cascader/filter-node.d.ts.map +1 -1
  15. package/cjs/cascader/filter-node.js +23 -1
  16. package/cjs/cascader/filter-node.type.d.ts +3 -2
  17. package/cjs/cascader/filter-node.type.d.ts.map +1 -1
  18. package/cjs/cascader/list.d.ts.map +1 -1
  19. package/cjs/cascader/list.js +3 -2
  20. package/cjs/cascader/node.js +1 -0
  21. package/cjs/date-picker/date-picker.js +1 -1
  22. package/cjs/date-picker/day.d.ts.map +1 -1
  23. package/cjs/date-picker/day.js +1 -3
  24. package/cjs/descriptions/descriptions.d.ts.map +1 -1
  25. package/cjs/descriptions/descriptions.js +1 -0
  26. package/cjs/dropdown/dropdownIn.d.ts.map +1 -1
  27. package/cjs/dropdown/dropdownIn.js +1 -0
  28. package/cjs/icons/config.d.ts +3 -0
  29. package/cjs/icons/config.d.ts.map +1 -1
  30. package/cjs/icons/config.js +12 -9
  31. package/cjs/icons/icons.d.ts +3 -0
  32. package/cjs/icons/icons.d.ts.map +1 -1
  33. package/cjs/icons/icons.js +47 -25
  34. package/cjs/image/image-gallery.d.ts.map +1 -1
  35. package/cjs/image/image-gallery.js +1 -2
  36. package/cjs/image/image-magnify.d.ts.map +1 -1
  37. package/cjs/image/image-magnify.js +7 -3
  38. package/cjs/image/image.type.d.ts +2 -0
  39. package/cjs/image/image.type.d.ts.map +1 -1
  40. package/cjs/menu/item.d.ts.map +1 -1
  41. package/cjs/menu/item.js +5 -1
  42. package/cjs/menu/menu.d.ts.map +1 -1
  43. package/cjs/menu/menu.js +2 -1
  44. package/cjs/menu/menu.type.d.ts +1 -0
  45. package/cjs/menu/menu.type.d.ts.map +1 -1
  46. package/cjs/popover/popover.d.ts.map +1 -1
  47. package/cjs/popover/popover.js +1 -0
  48. package/cjs/popover/popover.type.d.ts +6 -0
  49. package/cjs/popover/popover.type.d.ts.map +1 -1
  50. package/cjs/select/list.d.ts.map +1 -1
  51. package/cjs/select/list.js +2 -1
  52. package/cjs/select/select.type.d.ts +2 -2
  53. package/cjs/switch/switch.d.ts.map +1 -1
  54. package/cjs/switch/switch.js +3 -1
  55. package/cjs/tabs/tabs.js +1 -1
  56. package/cjs/textarea/simple-textarea.d.ts.map +1 -1
  57. package/cjs/textarea/simple-textarea.js +3 -2
  58. package/cjs/textarea/textarea.d.ts.map +1 -1
  59. package/cjs/textarea/textarea.js +4 -2
  60. package/cjs/textarea/textarea.type.d.ts +7 -1
  61. package/cjs/textarea/textarea.type.d.ts.map +1 -1
  62. package/cjs/transfer/transfer-list.d.ts.map +1 -1
  63. package/cjs/transfer/transfer-list.js +2 -1
  64. package/cjs/virtual-scroll/scroll.d.ts.map +1 -1
  65. package/cjs/virtual-scroll/virtual-scroll-list.d.ts.map +1 -1
  66. package/cjs/virtual-scroll/virtual-scroll-list.js +15 -5
  67. package/cjs/virtual-scroll/virtual-scroll-list.type.d.ts +1 -0
  68. package/cjs/virtual-scroll/virtual-scroll-list.type.d.ts.map +1 -1
  69. package/esm/absolute-list/absolute-list.d.ts.map +1 -1
  70. package/esm/absolute-list/absolute-list.js +3 -1
  71. package/esm/absolute-list/absolute-list.type.d.ts +1 -0
  72. package/esm/absolute-list/absolute-list.type.d.ts.map +1 -1
  73. package/esm/breadcrumb/breadcrumb.js +1 -0
  74. package/esm/cascader/cascader.d.ts.map +1 -1
  75. package/esm/cascader/cascader.js +8 -4
  76. package/esm/cascader/cascader.type.d.ts +3 -0
  77. package/esm/cascader/cascader.type.d.ts.map +1 -1
  78. package/esm/cascader/filter-list.d.ts.map +1 -1
  79. package/esm/cascader/filter-list.js +2 -0
  80. package/esm/cascader/filter-list.type.d.ts +2 -1
  81. package/esm/cascader/filter-list.type.d.ts.map +1 -1
  82. package/esm/cascader/filter-node.d.ts.map +1 -1
  83. package/esm/cascader/filter-node.js +23 -1
  84. package/esm/cascader/filter-node.type.d.ts +3 -2
  85. package/esm/cascader/filter-node.type.d.ts.map +1 -1
  86. package/esm/cascader/list.d.ts.map +1 -1
  87. package/esm/cascader/list.js +3 -2
  88. package/esm/cascader/node.js +1 -0
  89. package/esm/date-picker/date-picker.js +1 -1
  90. package/esm/date-picker/day.d.ts.map +1 -1
  91. package/esm/date-picker/day.js +1 -3
  92. package/esm/descriptions/descriptions.d.ts.map +1 -1
  93. package/esm/descriptions/descriptions.js +1 -0
  94. package/esm/dropdown/dropdownIn.d.ts.map +1 -1
  95. package/esm/dropdown/dropdownIn.js +1 -0
  96. package/esm/icons/config.d.ts +3 -0
  97. package/esm/icons/config.d.ts.map +1 -1
  98. package/esm/icons/config.js +12 -9
  99. package/esm/icons/icons.d.ts +3 -0
  100. package/esm/icons/icons.d.ts.map +1 -1
  101. package/esm/icons/icons.js +47 -25
  102. package/esm/image/image-gallery.d.ts.map +1 -1
  103. package/esm/image/image-gallery.js +1 -2
  104. package/esm/image/image-magnify.d.ts.map +1 -1
  105. package/esm/image/image-magnify.js +6 -3
  106. package/esm/image/image.type.d.ts +2 -0
  107. package/esm/image/image.type.d.ts.map +1 -1
  108. package/esm/menu/item.d.ts.map +1 -1
  109. package/esm/menu/item.js +5 -1
  110. package/esm/menu/menu.d.ts.map +1 -1
  111. package/esm/menu/menu.js +2 -1
  112. package/esm/menu/menu.type.d.ts +1 -0
  113. package/esm/menu/menu.type.d.ts.map +1 -1
  114. package/esm/popover/popover.d.ts.map +1 -1
  115. package/esm/popover/popover.js +1 -0
  116. package/esm/popover/popover.type.d.ts +6 -0
  117. package/esm/popover/popover.type.d.ts.map +1 -1
  118. package/esm/select/list.d.ts.map +1 -1
  119. package/esm/select/list.js +2 -1
  120. package/esm/select/select.type.d.ts +2 -2
  121. package/esm/switch/switch.d.ts.map +1 -1
  122. package/esm/switch/switch.js +3 -1
  123. package/esm/tabs/tabs.js +2 -2
  124. package/esm/textarea/simple-textarea.d.ts.map +1 -1
  125. package/esm/textarea/simple-textarea.js +3 -2
  126. package/esm/textarea/textarea.d.ts.map +1 -1
  127. package/esm/textarea/textarea.js +4 -2
  128. package/esm/textarea/textarea.type.d.ts +7 -1
  129. package/esm/textarea/textarea.type.d.ts.map +1 -1
  130. package/esm/transfer/transfer-list.d.ts.map +1 -1
  131. package/esm/transfer/transfer-list.js +2 -1
  132. package/esm/virtual-scroll/scroll.d.ts.map +1 -1
  133. package/esm/virtual-scroll/virtual-scroll-list.d.ts.map +1 -1
  134. package/esm/virtual-scroll/virtual-scroll-list.js +16 -6
  135. package/esm/virtual-scroll/virtual-scroll-list.type.d.ts +1 -0
  136. package/esm/virtual-scroll/virtual-scroll-list.type.d.ts.map +1 -1
  137. package/package.json +2 -2
@@ -10,7 +10,7 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
10
10
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
11
11
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
12
12
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
13
- import React, { useState, useEffect, useLayoutEffect, useRef } from 'react';
13
+ import React, { useState, useEffect, useLayoutEffect, useRef, useMemo } from 'react';
14
14
  import { usePersistFn } from '@sheinx/hooks';
15
15
  import Scroll from "./scroll";
16
16
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -30,6 +30,7 @@ var VirtualList = function VirtualList(props) {
30
30
  tagClassName = props.tagClassName,
31
31
  dynamicVirtual = props.dynamicVirtual,
32
32
  virtualRef = props.virtualRef,
33
+ paddingY = props.paddingY,
33
34
  onControlTypeChange = props.onControlTypeChange;
34
35
  var _useState = useState(0),
35
36
  _useState2 = _slicedToArray(_useState, 2),
@@ -139,6 +140,12 @@ var VirtualList = function VirtualList(props) {
139
140
  var handleMouseMove = function handleMouseMove() {
140
141
  onControlTypeChange === null || onControlTypeChange === void 0 || onControlTypeChange('mouse');
141
142
  };
143
+
144
+ // 设置了容器的paddingY, translateY时需要加上,否则会出现底部滚不到底的问题
145
+ var addonScrollHeight = useMemo(function () {
146
+ // paddingY是奇数则加1
147
+ return paddingY ? paddingY * 2 + (paddingY % 2 === 1 ? 1 : 0) : 0;
148
+ }, [paddingY]);
142
149
  var handleScroll = function handleScroll(info) {
143
150
  var _props$onScroll;
144
151
  var height = info.height,
@@ -147,7 +154,7 @@ var VirtualList = function VirtualList(props) {
147
154
  var scrollTop = info.scrollTop;
148
155
  context.shouldUpdateHeight = !fromDrag;
149
156
  var sumHeight = getContentHeight(props.data.length - 1);
150
- var max = sumHeight - height;
157
+ var max = sumHeight - height + addonScrollHeight;
151
158
  if (scrollTop > max) {
152
159
  scrollTop = max;
153
160
  }
@@ -169,7 +176,12 @@ var VirtualList = function VirtualList(props) {
169
176
  var shouldScroll = getContentHeight(data.length - 1) > height;
170
177
  var nextStyle = _objectSpread({}, style);
171
178
  if (shouldScroll) nextStyle.height = height;
172
- var scrollHeight = getContentHeight(data.length - 1);
179
+ var scrollHeight = getContentHeight(data.length - 1) + addonScrollHeight;
180
+ var innerStyle = {
181
+ transform: "translate3d(0, -".concat(top, "px, 0)"),
182
+ paddingTop: paddingY,
183
+ paddingBottom: paddingY
184
+ };
173
185
  return /*#__PURE__*/_jsx(Scroll, {
174
186
  className: className,
175
187
  style: nextStyle,
@@ -184,9 +196,7 @@ var VirtualList = function VirtualList(props) {
184
196
  onMouseMove: handleMouseMove,
185
197
  children: /*#__PURE__*/_jsx(Tag, {
186
198
  className: tagClassName,
187
- style: {
188
- transform: "translate3d(0, -".concat(top, "px, 0)")
189
- },
199
+ style: innerStyle,
190
200
  children: items.map(function (d, i) {
191
201
  if (d[groupKey]) {
192
202
  return /*#__PURE__*/_jsx(React.Fragment, {
@@ -11,6 +11,7 @@ export type VirtualListType = {
11
11
  export interface VirtualListProps<DataItem> extends Pick<CommonType, 'className' | 'style'> {
12
12
  data: DataItem[];
13
13
  keygen?: KeygenType<DataItem>;
14
+ paddingY?: number;
14
15
  height: number | string;
15
16
  lineHeight: number;
16
17
  rowsInView: 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;IAC7B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC,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;IACpC,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
+ {"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;IAC7B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC,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;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,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;IACpC,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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sheinx/base",
3
- "version": "3.5.8-beta.8",
3
+ "version": "3.5.8",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "license": "MIT",
@@ -10,7 +10,7 @@
10
10
  "module": "./esm/index.js",
11
11
  "typings": "./cjs/index.d.ts",
12
12
  "dependencies": {
13
- "@sheinx/hooks": "3.5.8-beta.8",
13
+ "@sheinx/hooks": "3.5.8",
14
14
  "immer": "^10.0.0",
15
15
  "classnames": "^2.0.0",
16
16
  "@shined/reactive": "^0.1.3-alpha.0"