@zat-design/sisyphus-react 3.5.3-beta.1 → 3.5.3-beta.3

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.
@@ -530,7 +530,7 @@ var RenderField = function RenderField(_ref) {
530
530
  }
531
531
  Object.assign(_formItemProps, _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, defaultTransform()), valueTypeTransform()), namesTransform()), isTrim(type, trim, useProConfig())));
532
532
  // 编辑&保存模式,在查看状态下移除表单的rules不做校验
533
- if (!isEditing) {
533
+ if (isView) {
534
534
  delete _formItemProps.rules;
535
535
  }
536
536
  var _className = classNames(_defineProperty(_defineProperty({}, className, className), 'pro-form-item-changed', changed));
@@ -85,6 +85,7 @@ export interface RequestOptions<T, R> {
85
85
  onPageChange?: (page: PaginationProps) => void;
86
86
  transformParams?: (params: any, requestParams: any) => any;
87
87
  transformResponse?: (res: any) => ListResponse<R>;
88
+ disabled?: (record: any) => boolean;
88
89
  }
89
90
  export interface Params<T = any> extends PaginationProps {
90
91
  queryBean?: Partial<T>;
@@ -60,7 +60,8 @@ function useAntdTable(service, options, useRequestOptions) {
60
60
  crossPageSelect = _useDefaultOptions$cr === void 0 ? false : _useDefaultOptions$cr,
61
61
  onPageChange = _useDefaultOptions.onPageChange,
62
62
  transformParams = _useDefaultOptions.transformParams,
63
- transformResponse = _useDefaultOptions.transformResponse;
63
+ transformResponse = _useDefaultOptions.transformResponse,
64
+ disabled = _useDefaultOptions.disabled;
64
65
  var _ref = useRequestOptions || {},
65
66
  defaultParams = _ref.defaultParams,
66
67
  manual = _ref.manual;
@@ -136,12 +137,29 @@ function useAntdTable(service, options, useRequestOptions) {
136
137
  var filterList = data.filter(function (item) {
137
138
  return !selectedRowKeys.includes(item === null || item === void 0 ? void 0 : item[rowKey]);
138
139
  });
139
- setState({
140
+ var nextObject = {
140
141
  selectedRecords: [].concat(_toConsumableArray(selectedRecords), _toConsumableArray(filterList)),
141
142
  selectedRowKeys: [].concat(_toConsumableArray(selectedRowKeys), _toConsumableArray(filterList === null || filterList === void 0 ? void 0 : filterList.map(function (item) {
142
143
  return item === null || item === void 0 ? void 0 : item[rowKey];
143
144
  })))
144
- });
145
+ };
146
+ if (typeof disabled === 'function') {
147
+ var _selectedRecords$filt, _nextSelectRecords$ma;
148
+ var _nextObject = nextObject,
149
+ _selectedRecords = _nextObject.selectedRecords;
150
+ var nextSelectRecords = (_selectedRecords$filt = _selectedRecords.filter(function (item) {
151
+ // 去掉禁用的
152
+ return !disabled(item);
153
+ })) !== null && _selectedRecords$filt !== void 0 ? _selectedRecords$filt : [];
154
+ var nextSelectedRowKeys = (_nextSelectRecords$ma = nextSelectRecords.map(function (item) {
155
+ return item === null || item === void 0 ? void 0 : item[rowKey];
156
+ })) !== null && _nextSelectRecords$ma !== void 0 ? _nextSelectRecords$ma : [];
157
+ nextObject = {
158
+ selectedRecords: nextSelectRecords,
159
+ selectedRowKeys: nextSelectedRowKeys
160
+ };
161
+ }
162
+ setState(nextObject);
145
163
  }
146
164
  }, [allSelected, data]);
147
165
  // 分页变更
@@ -282,6 +300,7 @@ function useAntdTable(service, options, useRequestOptions) {
282
300
  }
283
301
  }, [curService]);
284
302
  useDeepCompareEffect(function () {
303
+ // extraParams改变时重新请求
285
304
  if (!manual && extraParams) {
286
305
  var newPage = {
287
306
  pageNum: 1,
@@ -32,10 +32,15 @@ function Trigger(props) {
32
32
  var _ref = appointProps || {},
33
33
  appointDisabled = _ref.disabled;
34
34
  var _tempAppointDisabled = appointDisabled || false;
35
- var _ref2 = Array.isArray(appointDisabled) ? appointDisabled : [_tempAppointDisabled, _tempAppointDisabled],
35
+ var _tempDisabled = disabled || false;
36
+ var _ref2 = Array.isArray(disabled) ? disabled : [_tempDisabled, _tempDisabled],
36
37
  _ref3 = _slicedToArray(_ref2, 2),
37
- allDisabled = _ref3[0],
38
- specifyDisabled = _ref3[1];
38
+ beforeDisabled = _ref3[0],
39
+ afterDisabled = _ref3[1];
40
+ var _ref4 = Array.isArray(appointDisabled) ? appointDisabled : [_tempAppointDisabled, _tempAppointDisabled],
41
+ _ref5 = _slicedToArray(_ref4, 2),
42
+ allDisabled = _ref5[0],
43
+ specifyDisabled = _ref5[1];
39
44
  var _useSetState = useSetState({
40
45
  mode: 'appoint'
41
46
  }),
@@ -94,18 +99,18 @@ function Trigger(props) {
94
99
  style: {
95
100
  width: 'auto'
96
101
  },
97
- disabled: disabled,
102
+ disabled: beforeDisabled,
98
103
  className: classNames(disabled ? 'trigger-no-hover' : '', appoint ? 'pro-tree-modal-input-appoint' : ''),
99
104
  defaultValue: "appoint",
100
105
  value: state.mode,
101
106
  onChange: onAppointChange,
102
107
  children: [_jsx(_Select.Option, {
103
108
  value: "all",
104
- disabled: disabled || allDisabled,
109
+ disabled: allDisabled,
105
110
  children: locale === null || locale === void 0 ? void 0 : locale.ProTreeModal.specifyMode[0]
106
111
  }), _jsx(_Select.Option, {
107
112
  value: "appoint",
108
- disabled: disabled || specifyDisabled,
113
+ disabled: specifyDisabled,
109
114
  children: locale === null || locale === void 0 ? void 0 : locale.ProTreeModal.specifyMode[1]
110
115
  })]
111
116
  }), props.children]
@@ -115,7 +120,7 @@ function Trigger(props) {
115
120
  };
116
121
  return _jsx(TriggerComponent, {
117
122
  children: _jsx(_Input, {
118
- className: classNames(disabled ? 'trigger-no-hover' : '', appoint ? 'pro-tree-modal-input-appoint' : ''),
123
+ className: classNames(afterDisabled ? 'trigger-no-hover' : '', appoint ? 'pro-tree-modal-input-appoint' : ''),
119
124
  onClick: handleClick,
120
125
  value: checkedValues.length === 0 ? null : state.mode === 'all' ? formatMessage(locale === null || locale === void 0 ? void 0 : locale.ProTreeModal.checkAll1, {
121
126
  all: label
@@ -124,7 +129,7 @@ function Trigger(props) {
124
129
  }),
125
130
  addonAfter: state.mode === 'all' ? null : _jsxs("div", {
126
131
  className: "pro-enum-input-addonAfter",
127
- children: [checkedValues.length > 0 && !disabled && _jsx("span", {
132
+ children: [checkedValues.length > 0 && !afterDisabled && _jsx("span", {
128
133
  className: "close-icon",
129
134
  children: _jsx(CloseOutlined, {
130
135
  onClick: handleClearAll
@@ -136,7 +141,7 @@ function Trigger(props) {
136
141
  })]
137
142
  }),
138
143
  placeholder: locale === null || locale === void 0 ? void 0 : (_locale$ProTreeModal3 = locale.ProTreeModal) === null || _locale$ProTreeModal3 === void 0 ? void 0 : _locale$ProTreeModal3.select,
139
- disabled: disabled || state.mode === 'all',
144
+ disabled: afterDisabled || state.mode === 'all',
140
145
  style: _objectSpread({}, triggerStyle)
141
146
  })
142
147
  });
@@ -11,6 +11,14 @@ import _message from "antd/es/message";
11
11
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
12
12
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
13
13
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
14
+ /*
15
+ * @Author: za-xuwenli xuwenli@zhongan.io
16
+ * @Date: 2024-06-04 10:01:18
17
+ * @LastEditors: za-xuwenli xuwenli@zhongan.io
18
+ * @LastEditTime: 2024-06-04 10:30:30
19
+ * @FilePath: /za-material-warehouse/src/ProTreeModal/index.tsx
20
+ * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
21
+ */
14
22
  import React, { useEffect, useMemo, useRef } from 'react';
15
23
  import { useDeepCompareEffect, useSetState, useRequest as useRequestFunc } from 'ahooks';
16
24
  import { cloneDeep, isFunction } from 'lodash';
@@ -61,7 +61,7 @@ export interface ProTreeModalProps {
61
61
  /** 当为列表时可开启右侧拖动 */
62
62
  draggable?: boolean;
63
63
  /** 禁用 */
64
- disabled?: boolean;
64
+ disabled?: any;
65
65
  /** 弹框的 title */
66
66
  title?: string | ReactNode;
67
67
  /** 全选的标识给后端 */
@@ -533,7 +533,7 @@ var RenderField = function RenderField(_ref) {
533
533
  }
534
534
  Object.assign(_formItemProps, (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, defaultTransform()), valueTypeTransform()), namesTransform()), (0, _utils.isTrim)(type, trim, (0, _ProConfigProvider.useProConfig)())));
535
535
  // 编辑&保存模式,在查看状态下移除表单的rules不做校验
536
- if (!isEditing) {
536
+ if (isView) {
537
537
  delete _formItemProps.rules;
538
538
  }
539
539
  var _className = (0, _classnames.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, className, className), 'pro-form-item-changed', changed));
@@ -85,6 +85,7 @@ export interface RequestOptions<T, R> {
85
85
  onPageChange?: (page: PaginationProps) => void;
86
86
  transformParams?: (params: any, requestParams: any) => any;
87
87
  transformResponse?: (res: any) => ListResponse<R>;
88
+ disabled?: (record: any) => boolean;
88
89
  }
89
90
  export interface Params<T = any> extends PaginationProps {
90
91
  queryBean?: Partial<T>;
@@ -67,7 +67,8 @@ function useAntdTable(service, options, useRequestOptions) {
67
67
  crossPageSelect = _useDefaultOptions$cr === void 0 ? false : _useDefaultOptions$cr,
68
68
  onPageChange = _useDefaultOptions.onPageChange,
69
69
  transformParams = _useDefaultOptions.transformParams,
70
- transformResponse = _useDefaultOptions.transformResponse;
70
+ transformResponse = _useDefaultOptions.transformResponse,
71
+ disabled = _useDefaultOptions.disabled;
71
72
  var _ref = useRequestOptions || {},
72
73
  defaultParams = _ref.defaultParams,
73
74
  manual = _ref.manual;
@@ -143,12 +144,29 @@ function useAntdTable(service, options, useRequestOptions) {
143
144
  var filterList = data.filter(function (item) {
144
145
  return !selectedRowKeys.includes(item === null || item === void 0 ? void 0 : item[rowKey]);
145
146
  });
146
- setState({
147
+ var nextObject = {
147
148
  selectedRecords: [].concat((0, _toConsumableArray2.default)(selectedRecords), (0, _toConsumableArray2.default)(filterList)),
148
149
  selectedRowKeys: [].concat((0, _toConsumableArray2.default)(selectedRowKeys), (0, _toConsumableArray2.default)(filterList === null || filterList === void 0 ? void 0 : filterList.map(function (item) {
149
150
  return item === null || item === void 0 ? void 0 : item[rowKey];
150
151
  })))
151
- });
152
+ };
153
+ if (typeof disabled === 'function') {
154
+ var _selectedRecords$filt, _nextSelectRecords$ma;
155
+ var _nextObject = nextObject,
156
+ _selectedRecords = _nextObject.selectedRecords;
157
+ var nextSelectRecords = (_selectedRecords$filt = _selectedRecords.filter(function (item) {
158
+ // 去掉禁用的
159
+ return !disabled(item);
160
+ })) !== null && _selectedRecords$filt !== void 0 ? _selectedRecords$filt : [];
161
+ var nextSelectedRowKeys = (_nextSelectRecords$ma = nextSelectRecords.map(function (item) {
162
+ return item === null || item === void 0 ? void 0 : item[rowKey];
163
+ })) !== null && _nextSelectRecords$ma !== void 0 ? _nextSelectRecords$ma : [];
164
+ nextObject = {
165
+ selectedRecords: nextSelectRecords,
166
+ selectedRowKeys: nextSelectedRowKeys
167
+ };
168
+ }
169
+ setState(nextObject);
152
170
  }
153
171
  }, [allSelected, data]);
154
172
  // 分页变更
@@ -289,6 +307,7 @@ function useAntdTable(service, options, useRequestOptions) {
289
307
  }
290
308
  }, [curService]);
291
309
  (0, _ahooks.useDeepCompareEffect)(function () {
310
+ // extraParams改变时重新请求
292
311
  if (!manual && extraParams) {
293
312
  var newPage = {
294
313
  pageNum: 1,
@@ -35,10 +35,15 @@ function Trigger(props) {
35
35
  var _ref = appointProps || {},
36
36
  appointDisabled = _ref.disabled;
37
37
  var _tempAppointDisabled = appointDisabled || false;
38
- var _ref2 = Array.isArray(appointDisabled) ? appointDisabled : [_tempAppointDisabled, _tempAppointDisabled],
38
+ var _tempDisabled = disabled || false;
39
+ var _ref2 = Array.isArray(disabled) ? disabled : [_tempDisabled, _tempDisabled],
39
40
  _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
40
- allDisabled = _ref3[0],
41
- specifyDisabled = _ref3[1];
41
+ beforeDisabled = _ref3[0],
42
+ afterDisabled = _ref3[1];
43
+ var _ref4 = Array.isArray(appointDisabled) ? appointDisabled : [_tempAppointDisabled, _tempAppointDisabled],
44
+ _ref5 = (0, _slicedToArray2.default)(_ref4, 2),
45
+ allDisabled = _ref5[0],
46
+ specifyDisabled = _ref5[1];
42
47
  var _useSetState = (0, _ahooks.useSetState)({
43
48
  mode: 'appoint'
44
49
  }),
@@ -97,18 +102,18 @@ function Trigger(props) {
97
102
  style: {
98
103
  width: 'auto'
99
104
  },
100
- disabled: disabled,
105
+ disabled: beforeDisabled,
101
106
  className: (0, _classnames.default)(disabled ? 'trigger-no-hover' : '', appoint ? 'pro-tree-modal-input-appoint' : ''),
102
107
  defaultValue: "appoint",
103
108
  value: state.mode,
104
109
  onChange: onAppointChange,
105
110
  children: [(0, _jsxRuntime.jsx)(_antd.Select.Option, {
106
111
  value: "all",
107
- disabled: disabled || allDisabled,
112
+ disabled: allDisabled,
108
113
  children: _locale.default === null || _locale.default === void 0 ? void 0 : _locale.default.ProTreeModal.specifyMode[0]
109
114
  }), (0, _jsxRuntime.jsx)(_antd.Select.Option, {
110
115
  value: "appoint",
111
- disabled: disabled || specifyDisabled,
116
+ disabled: specifyDisabled,
112
117
  children: _locale.default === null || _locale.default === void 0 ? void 0 : _locale.default.ProTreeModal.specifyMode[1]
113
118
  })]
114
119
  }), props.children]
@@ -118,7 +123,7 @@ function Trigger(props) {
118
123
  };
119
124
  return (0, _jsxRuntime.jsx)(TriggerComponent, {
120
125
  children: (0, _jsxRuntime.jsx)(_antd.Input, {
121
- className: (0, _classnames.default)(disabled ? 'trigger-no-hover' : '', appoint ? 'pro-tree-modal-input-appoint' : ''),
126
+ className: (0, _classnames.default)(afterDisabled ? 'trigger-no-hover' : '', appoint ? 'pro-tree-modal-input-appoint' : ''),
122
127
  onClick: handleClick,
123
128
  value: checkedValues.length === 0 ? null : state.mode === 'all' ? (0, _locale.formatMessage)(_locale.default === null || _locale.default === void 0 ? void 0 : _locale.default.ProTreeModal.checkAll1, {
124
129
  all: label
@@ -127,7 +132,7 @@ function Trigger(props) {
127
132
  }),
128
133
  addonAfter: state.mode === 'all' ? null : (0, _jsxRuntime.jsxs)("div", {
129
134
  className: "pro-enum-input-addonAfter",
130
- children: [checkedValues.length > 0 && !disabled && (0, _jsxRuntime.jsx)("span", {
135
+ children: [checkedValues.length > 0 && !afterDisabled && (0, _jsxRuntime.jsx)("span", {
131
136
  className: "close-icon",
132
137
  children: (0, _jsxRuntime.jsx)(_icons.CloseOutlined, {
133
138
  onClick: handleClearAll
@@ -139,7 +144,7 @@ function Trigger(props) {
139
144
  })]
140
145
  }),
141
146
  placeholder: _locale.default === null || _locale.default === void 0 ? void 0 : (_locale$ProTreeModal3 = _locale.default.ProTreeModal) === null || _locale$ProTreeModal3 === void 0 ? void 0 : _locale$ProTreeModal3.select,
142
- disabled: disabled || state.mode === 'all',
147
+ disabled: afterDisabled || state.mode === 'all',
143
148
  style: (0, _objectSpread2.default)({}, triggerStyle)
144
149
  })
145
150
  });
@@ -23,6 +23,15 @@ var _utils = require("./utils");
23
23
  var _inputSearch = _interopRequireDefault(require("../assets/input-search.svg"));
24
24
  var _locale = _interopRequireWildcard(require("../locale"));
25
25
  require("./style/index.less");
26
+ /*
27
+ * @Author: za-xuwenli xuwenli@zhongan.io
28
+ * @Date: 2024-06-04 10:01:18
29
+ * @LastEditors: za-xuwenli xuwenli@zhongan.io
30
+ * @LastEditTime: 2024-06-04 10:30:30
31
+ * @FilePath: /za-material-warehouse/src/ProTreeModal/index.tsx
32
+ * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
33
+ */
34
+
26
35
  var LIST = 'LIST';
27
36
  var TREE = 'TREE';
28
37
  var CASCADER = exports.CASCADER = 'CASCADER';
@@ -61,7 +61,7 @@ export interface ProTreeModalProps {
61
61
  /** 当为列表时可开启右侧拖动 */
62
62
  draggable?: boolean;
63
63
  /** 禁用 */
64
- disabled?: boolean;
64
+ disabled?: any;
65
65
  /** 弹框的 title */
66
66
  title?: string | ReactNode;
67
67
  /** 全选的标识给后端 */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zat-design/sisyphus-react",
3
- "version": "3.5.3-beta.1",
3
+ "version": "3.5.3-beta.3",
4
4
  "license": "Apache-2.0",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",