shineout 3.10.2-beta.7 → 3.10.2-beta.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.
package/cjs/index.js CHANGED
@@ -545,5 +545,5 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
545
545
  // 此文件由脚本自动生成,请勿直接修改。
546
546
  // This file was generated automatically by a script. Please do not modify it directly.
547
547
  var _default = exports.default = {
548
- version: '3.10.2-beta.7'
548
+ version: '3.10.2-beta.8'
549
549
  };
package/dist/shineout.js CHANGED
@@ -13736,7 +13736,7 @@ var handleStyle = function handleStyle(style) {
13736
13736
  };
13737
13737
  /* harmony default export */ var jss_style_handleStyle = (handleStyle);
13738
13738
  ;// CONCATENATED MODULE: ../shineout-style/src/version.ts
13739
- /* harmony default export */ var version = ('3.10.2-beta.7');
13739
+ /* harmony default export */ var version = ('3.10.2-beta.8');
13740
13740
  ;// CONCATENATED MODULE: ../shineout-style/src/jss-style/index.tsx
13741
13741
 
13742
13742
 
@@ -46686,6 +46686,10 @@ var useListSelectMultiple = function useListSelectMultiple(props) {
46686
46686
  if (checkedNum === validateNum) return true;
46687
46687
  return 'indeterminate';
46688
46688
  });
46689
+
46690
+ // TODO: Object.values(props) 作为 deps 是反模式,value/prediction 等变化都会使 datum 引用失效。
46691
+ // 精确依赖应为 [props.data](方法均为 usePersistFn,引用稳定)。
46692
+ // 待 Tbody/Tr 加 React.memo 后一起改,届时 datum 引用稳定才能真正减少 re-render。
46689
46693
  var func = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useMemo)(function () {
46690
46694
  return {
46691
46695
  add: add,
@@ -58254,6 +58258,9 @@ var useListSelect = function useListSelect(props) {
58254
58258
  overwrite: true
58255
58259
  });
58256
58260
  });
58261
+
58262
+ // TODO: Object.values(props) 作为 deps 是反模式。精确依赖应为 [datum, multiple]。
58263
+ // 待 Tbody/Tr 加 React.memo 后一起改。
58257
58264
  var result = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useMemo)(function () {
58258
58265
  if (!multiple) {
58259
58266
  return objectSpread2_default()(objectSpread2_default()({}, datum), {}, {
@@ -68052,9 +68059,14 @@ var useTableFilter = function useTableFilter(props) {
68052
68059
 
68053
68060
  // 根据columns生成filterInfo
68054
68061
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
68062
+ var _props$columns2;
68063
+ // 没有任何 filter 列时跳过,避免无谓的 setFilterInfo 触发 re-render
68064
+ if (!((_props$columns2 = props.columns) !== null && _props$columns2 !== void 0 && _props$columns2.some(function (col) {
68065
+ return col.filter;
68066
+ }))) return;
68055
68067
  setFilterInfo(function (prev) {
68056
- var _props$columns2;
68057
- var _filterInfo = props === null || props === void 0 || (_props$columns2 = props.columns) === null || _props$columns2 === void 0 ? void 0 : _props$columns2.reduce(function (acc, column, index) {
68068
+ var _props$columns3;
68069
+ var _filterInfo = props === null || props === void 0 || (_props$columns3 = props.columns) === null || _props$columns3 === void 0 ? void 0 : _props$columns3.reduce(function (acc, column, index) {
68058
68070
  var _prev$get2, _column$filter;
68059
68071
  if (!column.filter) return acc;
68060
68072
  var columnKey = typeof column.render === 'string' ? column.render : String(index);
@@ -68067,7 +68079,8 @@ var useTableFilter = function useTableFilter(props) {
68067
68079
  }, new Map());
68068
68080
  return _filterInfo || new Map();
68069
68081
  });
68070
- }, [props.columns]);
68082
+ }, [props.columns]); // eslint-disable-line react-hooks/exhaustive-deps
68083
+
68071
68084
  return {
68072
68085
  filterInfo: filterInfo,
68073
68086
  setFilterInfo: setFilterInfo,
@@ -80144,7 +80157,7 @@ var watermark_interface = __webpack_require__(6640);
80144
80157
 
80145
80158
 
80146
80159
  /* harmony default export */ var src_0 = ({
80147
- version: '3.10.2-beta.7'
80160
+ version: '3.10.2-beta.8'
80148
80161
  });
80149
80162
  }();
80150
80163
  /******/ return __webpack_exports__;