@teamix/pro 1.2.6 → 1.2.10

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 (62) hide show
  1. package/dist/212.js +1 -1
  2. package/dist/pro.css +1 -1
  3. package/dist/pro.js +683 -380
  4. package/dist/pro.min.css +1 -1
  5. package/dist/pro.min.js +1 -1
  6. package/es/actions/dialog-form.js +2 -2
  7. package/es/actions/dialog.js +16 -21
  8. package/es/actions/index.js +25 -21
  9. package/es/actions/index.scss +14 -7
  10. package/es/card/index.d.ts +12 -3
  11. package/es/card/index.js +11 -9
  12. package/es/card/index.scss +52 -2
  13. package/es/card/selectable.d.ts +13 -0
  14. package/es/card/selectable.js +45 -0
  15. package/es/form/Filter/index.js +5 -5
  16. package/es/form/ProForm/index.scss +9 -0
  17. package/es/index.d.ts +1 -1
  18. package/es/index.js +7 -4
  19. package/es/info/components/tableInfo/index.js +10 -6
  20. package/es/nocode/configurators/Card.js +31 -8
  21. package/es/sidebar/components/sidebar-container/index.d.ts +5 -0
  22. package/es/sidebar/components/sidebar-container/index.js +77 -0
  23. package/es/sidebar/components/sidebar-container/index.scss +18 -0
  24. package/es/sidebar/components/tree/index.d.ts +4 -0
  25. package/es/sidebar/components/tree/index.js +162 -0
  26. package/es/sidebar/index.d.ts +5 -0
  27. package/es/sidebar/index.js +70 -0
  28. package/es/sidebar/index.scss +3 -0
  29. package/es/sidebar/typing.d.ts +64 -0
  30. package/es/sidebar/typing.js +1 -0
  31. package/es/table/index.js +11 -2
  32. package/es/table/index.scss +1 -0
  33. package/es/table/typing.d.ts +2 -0
  34. package/lib/actions/dialog-form.js +1 -1
  35. package/lib/actions/dialog.js +15 -20
  36. package/lib/actions/index.js +25 -21
  37. package/lib/actions/index.scss +14 -7
  38. package/lib/card/index.d.ts +12 -3
  39. package/lib/card/index.js +15 -12
  40. package/lib/card/index.scss +52 -2
  41. package/lib/card/selectable.d.ts +13 -0
  42. package/lib/card/selectable.js +60 -0
  43. package/lib/form/Filter/index.js +5 -6
  44. package/lib/form/ProForm/index.scss +9 -0
  45. package/lib/index.d.ts +1 -1
  46. package/lib/index.js +3 -1
  47. package/lib/info/components/tableInfo/index.js +10 -6
  48. package/lib/nocode/configurators/Card.js +31 -8
  49. package/lib/sidebar/components/sidebar-container/index.d.ts +5 -0
  50. package/lib/sidebar/components/sidebar-container/index.js +93 -0
  51. package/lib/sidebar/components/sidebar-container/index.scss +18 -0
  52. package/lib/sidebar/components/tree/index.d.ts +4 -0
  53. package/lib/sidebar/components/tree/index.js +179 -0
  54. package/lib/sidebar/index.d.ts +5 -0
  55. package/lib/sidebar/index.js +91 -0
  56. package/lib/sidebar/index.scss +3 -0
  57. package/lib/sidebar/typing.d.ts +64 -0
  58. package/lib/sidebar/typing.js +5 -0
  59. package/lib/table/index.js +11 -2
  60. package/lib/table/index.scss +1 -0
  61. package/lib/table/typing.d.ts +2 -0
  62. package/package.json +1 -1
@@ -23,7 +23,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
23
23
 
24
24
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
25
25
 
26
- import React, { useState, useRef, useEffect } from 'react';
26
+ import React, { useState, useEffect, createRef } from 'react';
27
27
  import { useHistory } from 'react-router-dom';
28
28
  import { Loading } from '@alicloudfe/components';
29
29
  import ProForm, { createForm } from '../form';
@@ -136,7 +136,7 @@ export function useDialogFormAction(action, context) {
136
136
  _onFinish = action.onFinish,
137
137
  others = _objectWithoutProperties(action, _excluded2);
138
138
 
139
- var formRef = useRef();
139
+ var formRef = /*#__PURE__*/createRef();
140
140
  return useDialogAction(Object.assign({
141
141
  size: size,
142
142
  closeable: true,
@@ -1,10 +1,5 @@
1
1
  var _excluded = ["url", "method", "params", "data", "extendParams", "successMsg", "errorMsg", "formatParams", "formatResult", "onSuccess", "onError"],
2
- _excluded2 = ["title", "content", "component", "schema", "onFinish", "dialogType", "dialogQuickShowType", "messageType", "beforeRequest", "onTrigger", "link", "beforeContent", "afterContent", "message", "footerDescription", "footerAlign", "overlayProps"],
3
- _excluded3 = ["className"];
4
-
5
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
6
-
7
- function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
2
+ _excluded2 = ["title", "content", "component", "schema", "onFinish", "dialogType", "dialogQuickShowType", "messageType", "beforeRequest", "onTrigger", "link", "beforeContent", "afterContent", "message", "footerDescription", "footerAlign", "className"];
8
3
 
9
4
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
10
5
 
@@ -12,6 +7,10 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
12
7
 
13
8
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
14
9
 
10
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
11
+
12
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
13
+
15
14
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
16
15
 
17
16
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
@@ -32,7 +31,7 @@ import React, { useState, useEffect, useRef } from 'react';
32
31
  import classnames from 'classnames';
33
32
  import { useHistory } from 'react-router-dom';
34
33
  import { Dialog, Drawer } from '@alicloudfe/components';
35
- import { getTargetValue, uuid, goToLink } from '@teamix/utils';
34
+ import { getTargetValue, uuid, goToLink, getMessage } from '@teamix/utils';
36
35
  import ProForm, { createForm } from '../form';
37
36
  import { renderProMessage } from '../utils/message';
38
37
  import { eventHandler } from './base';
@@ -110,28 +109,21 @@ export function useDialogAction(action, context) {
110
109
  message = _getTargetValue.message,
111
110
  footerDescription = _getTargetValue.footerDescription,
112
111
  footerAlign = _getTargetValue.footerAlign,
113
- _getTargetValue$overl = _getTargetValue.overlayProps,
114
- overlayProps = _getTargetValue$overl === void 0 ? {} : _getTargetValue$overl,
112
+ className = _getTargetValue.className,
115
113
  containerProps = _objectWithoutProperties(_getTargetValue, _excluded2);
116
114
 
117
115
  var isDrawer = dialogType === 'drawer';
118
116
  var container = isDrawer ? Drawer : Dialog;
119
-
120
- var overlayClassName = overlayProps.className,
121
- overlayOtherProps = _objectWithoutProperties(overlayProps, _excluded3);
122
-
123
117
  var dialogOnlyProps = {
124
118
  type: dialogQuickShowType,
125
119
  messageProps: {
126
120
  type: messageType
127
- },
128
- overlayProps: _objectSpread({
129
- className: classnames('teamix-pro-action-dialog', overlayClassName, {
130
- 'has-footer-description': !!footerDescription
131
- })
132
- }, overlayOtherProps)
121
+ }
133
122
  };
134
- var containerOtherProps = isDrawer ? {} : dialogOnlyProps;
123
+ var containerOtherProps = isDrawer ? {
124
+ okText: getMessage('ok'),
125
+ cancelText: getMessage('cancel')
126
+ } : dialogOnlyProps;
135
127
 
136
128
  var renderDialogFooterDescription = function renderDialogFooterDescription(footer) {
137
129
  if (footer instanceof Array || footer.component) {
@@ -240,7 +232,10 @@ export function useDialogAction(action, context) {
240
232
  className: classnames('teamix-pro-dialog-footer-description', getFooterAlignClass(isDrawer, footerAlign))
241
233
  }, renderDialogFooterDescription(footerDescription))),
242
234
  closeable: !loading,
243
- footerAlign: footerAlign
235
+ footerAlign: footerAlign,
236
+ className: classnames('teamix-pro-action-dialog', {
237
+ 'has-footer-description': !!footerDescription
238
+ })
244
239
  }, containerOtherProps), containerProps);
245
240
 
246
241
  var ret = container.show(quickShowProps);
@@ -169,13 +169,15 @@ export var ProActionButton = function ProActionButton(props) {
169
169
  }, buttonProps), buttonContent(children, icon, iconSize, context));
170
170
  };
171
171
 
172
- function renderMenuButtonItem(item, key, context) {
173
- var config = item.config,
174
- btnContext = item.context,
175
- _onClick2 = item.onClick,
176
- children = item.children,
177
- icon = item.icon,
178
- disabled = item.disabled;
172
+ var ProActionMenuButtonItem = function ProActionMenuButtonItem(props) {
173
+ var action = props.action,
174
+ context = props.context;
175
+ var config = action.config,
176
+ btnContext = action.context,
177
+ _onClick2 = action.onClick,
178
+ children = action.children,
179
+ icon = action.icon,
180
+ disabled = action.disabled;
179
181
  var menuItemActionConfig = Object.assign({}, config, {
180
182
  trigger: 'onClick'
181
183
  });
@@ -184,30 +186,33 @@ function renderMenuButtonItem(item, key, context) {
184
186
  loading = _useAction.loading,
185
187
  menuItemProps = _objectWithoutProperties(_useAction, _excluded3);
186
188
 
187
- var buttonProps = _onClick2 ? _objectSpread(_objectSpread({}, menuItemProps), {}, {
189
+ var buttonProps = disabled ? {} : _onClick2 ? _objectSpread(_objectSpread({}, menuItemProps), {}, {
188
190
  onClick: function onClick(e) {
189
191
  return _onClick2(e, context);
190
192
  }
191
193
  }) : _objectSpread({}, menuItemProps);
192
- return /*#__PURE__*/React.createElement(MenuButton.Item, _objectSpread({
193
- key: key,
194
- disabled: disabled
194
+ return /*#__PURE__*/React.createElement("div", _objectSpread({
195
+ className: cls('teamix-pro-action-menu-item', 'next-menu-item', {
196
+ 'next-disabled': disabled
197
+ })
195
198
  }, buttonProps), buttonContent(children, icon, undefined, context));
196
- }
199
+ };
197
200
 
198
- function renderCommonActionButtonMenuItem(action, key, context) {
201
+ function renderCommonActionButtonMenuItem(action, context) {
199
202
  var menuBtn = action;
200
203
 
201
204
  if (menuBtn.actions && menuBtn.actions.length && menuBtn.disabled !== true) {
202
205
  return /*#__PURE__*/React.createElement(Menu.SubMenu, {
203
- key: key,
204
206
  label: menuBtn.label || menuBtn.children
205
207
  }, menuBtn.actions.map(function (a, j) {
206
- return renderCommonActionButtonMenuItem(a, j, context);
208
+ return renderCommonActionButtonMenuItem(a, context);
207
209
  }));
208
210
  }
209
211
 
210
- return renderMenuButtonItem(action, key, context);
212
+ return /*#__PURE__*/React.createElement(ProActionMenuButtonItem, {
213
+ action: action,
214
+ context: context
215
+ });
211
216
  }
212
217
 
213
218
  export var ProActionMenuButton = function ProActionMenuButton(props) {
@@ -223,6 +228,7 @@ export var ProActionMenuButton = function ProActionMenuButton(props) {
223
228
 
224
229
  return /*#__PURE__*/React.createElement(MenuButton, _objectSpread({
225
230
  popupTriggerType: "hover",
231
+ autoWidth: false,
226
232
  menuProps: {
227
233
  mode: 'popup',
228
234
  triggerType: 'hover'
@@ -232,8 +238,8 @@ export var ProActionMenuButton = function ProActionMenuButton(props) {
232
238
  },
233
239
  type: type,
234
240
  label: buttonContent(label || children, icon, iconSize, context)
235
- }, others), actions.map(function (action, i) {
236
- return renderCommonActionButtonMenuItem(action, i, context);
241
+ }, others), actions.map(function (action) {
242
+ return renderCommonActionButtonMenuItem(action, context);
237
243
  }));
238
244
  }; // 如果 actions 数量超过了 max,则把第 max 个和剩余超出部分折叠起来成为一个 menu
239
245
 
@@ -337,9 +343,7 @@ export function ProActionGroup(props) {
337
343
  })
338
344
  }, containerProps), formatedActions.map(function (actionBtn, i) {
339
345
  var isLastOne = i === formatedActions.length - 1;
340
- return /*#__PURE__*/React.createElement(React.Fragment, {
341
- key: i
342
- }, renderCommonActionButton(actionBtn, context, isTypeText), isTypeText && divider && !isLastOne && /*#__PURE__*/React.createElement(Divider, {
346
+ return /*#__PURE__*/React.createElement(React.Fragment, null, renderCommonActionButton(actionBtn, context, isTypeText), isTypeText && divider && !isLastOne && /*#__PURE__*/React.createElement(Divider, {
343
347
  direction: "ver"
344
348
  }));
345
349
  }));
@@ -28,6 +28,19 @@
28
28
  flex-shrink: 0;
29
29
  }
30
30
  }
31
+ .next-dialog.teamix-pro-action-dialog {
32
+ &.has-footer-description {
33
+ .next-message {
34
+ position: static;
35
+ }
36
+ }
37
+
38
+ &.quick-show-confirm-or-alert {
39
+ .teamix-pro-dialog-footer-description {
40
+ bottom: var(--dialog-footer-padding-bottom, 20px);
41
+ }
42
+ }
43
+ }
31
44
 
32
45
  .teamix-pro-dialog-footer-description {
33
46
  position: absolute;
@@ -48,12 +61,6 @@
48
61
  }
49
62
  }
50
63
 
51
- .teamix-pro-action-dialog.has-footer-description {
52
- .next-message {
53
- position: static;
54
- }
55
- }
56
-
57
64
  .teamix-pro-dialog-before-content {
58
65
  margin-bottom: var(--s-2);
59
66
  }
@@ -61,7 +68,7 @@
61
68
  .teamix-pro-dialog-message {
62
69
  margin-bottom: var(--s-2);
63
70
 
64
- &+.next-loading {
71
+ & + .next-loading {
65
72
  .teamix-pro-form {
66
73
  margin-top: 20px;
67
74
  }
@@ -23,11 +23,11 @@ export interface ProCardProps extends Omit<React.HTMLAttributes<HTMLElement>, 't
23
23
  image?: string;
24
24
  /** 卡片标题下方是否有分割线 */
25
25
  divider?: boolean;
26
- /** 卡片是否有边框 */
27
- bordered?: boolean;
28
26
  /**
29
- * @deprecated 已经没有这个效果了,将在下一个 minor 版本移除
27
+ * @deprecated 建议使用 borderColor = 'none' 代替
30
28
  */
29
+ bordered?: boolean;
30
+ /** 卡片在 hover 时拥有阴影效果 */
31
31
  hoveredShadow?: boolean;
32
32
  /** 卡片是否为紧凑模式,紧凑模式下卡片没有内边距和边框 */
33
33
  compacted?: boolean;
@@ -35,6 +35,8 @@ export interface ProCardProps extends Omit<React.HTMLAttributes<HTMLElement>, 't
35
35
  centered?: boolean;
36
36
  /** 加载中状态 */
37
37
  loading?: boolean;
38
+ /** 边框颜色 */
39
+ borderColor?: 'blue' | 'green' | 'red' | 'orange' | 'yellow' | 'grey' | 'transparent' | 'none';
38
40
  /** 背景色 */
39
41
  backgroundColor?: 'blue' | 'green' | 'red' | 'orange' | 'yellow' | 'grey' | 'transparent';
40
42
  /** 内容区栅格排列 flex 方向,仅仅在卡片嵌套模式下生效 */
@@ -77,6 +79,13 @@ export declare const ProCard: {
77
79
  (props: React.HTMLAttributes<HTMLElement>): JSX.Element;
78
80
  isProCardDivider: boolean;
79
81
  };
82
+ Selectable: {
83
+ (props: import("./selectable").ProCardSelectableProps): JSX.Element;
84
+ defaultProps: {
85
+ hoveredShadow: boolean;
86
+ };
87
+ isProCard: boolean;
88
+ };
80
89
  isProCard: boolean;
81
90
  };
82
91
  export default ProCard;
package/es/card/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  var _excluded = ["context"],
2
- _excluded2 = ["children", "title", "subTitle", "tooltip", "tooltipIcon", "description", "extra", "actions", "style", "className", "image", "divider", "bordered", "compacted", "centered", "loading", "backgroundColor", "contentClassName", "contentStyle", "direction", "wrap", "spacing", "split", "collapsible", "defaultCollapsed", "collapsed", "onCollapse", "context"];
2
+ _excluded2 = ["children", "title", "subTitle", "tooltip", "tooltipIcon", "description", "extra", "actions", "style", "className", "image", "hoveredShadow", "divider", "bordered", "compacted", "centered", "loading", "borderColor", "backgroundColor", "contentClassName", "contentStyle", "direction", "wrap", "spacing", "split", "collapsible", "defaultCollapsed", "collapsed", "onCollapse", "context"];
3
3
 
4
4
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
5
5
 
@@ -32,6 +32,7 @@ import { ProSkeletonRaw } from '../skeleton';
32
32
  import { ProActionGroup } from '../actions';
33
33
  import { formatSpacing, getColClassAndStyle } from './utils';
34
34
  import ProCardDivider from './divider';
35
+ import ProCardSelectable from './selectable';
35
36
  import './index.scss';
36
37
  export * from './card-container';
37
38
  var cls = baseClass('teamix-pro-card');
@@ -66,7 +67,7 @@ var getFlexDirectionClassName = function getFlexDirectionClassName(direction, sp
66
67
  };
67
68
 
68
69
  export var ProCard = function ProCard(props) {
69
- var _classnames;
70
+ var _classnames, _classnames2;
70
71
 
71
72
  var children = props.children,
72
73
  title = props.title,
@@ -79,11 +80,13 @@ export var ProCard = function ProCard(props) {
79
80
  style = props.style,
80
81
  className = props.className,
81
82
  image = props.image,
83
+ hoveredShadow = props.hoveredShadow,
82
84
  divider = props.divider,
83
85
  bordered = props.bordered,
84
86
  compacted = props.compacted,
85
87
  centered = props.centered,
86
88
  loading = props.loading,
89
+ borderColor = props.borderColor,
87
90
  backgroundColor = props.backgroundColor,
88
91
  contentClassName = props.contentClassName,
89
92
  contentStyle = props.contentStyle,
@@ -161,7 +164,6 @@ export var ProCard = function ProCard(props) {
161
164
  }
162
165
 
163
166
  if (element === null || element === void 0 ? void 0 : (_element$type2 = element.type) === null || _element$type2 === void 0 ? void 0 : _element$type2.isProCardDivider) {
164
- console.log('isProCardDivider');
165
167
  return /*#__PURE__*/React.cloneElement(element, {
166
168
  style: dividerStyle
167
169
  });
@@ -169,13 +171,12 @@ export var ProCard = function ProCard(props) {
169
171
 
170
172
  return element;
171
173
  });
172
- var cardClassName = classnames(cls(), className, backgroundColor, {
173
- noBorder: !bordered,
174
- compacted: compacted
175
- });
176
- var cardContentClassName = classnames(cls('content'), contentClassName, getFlexDirectionClassName(direction, split), (_classnames = {
174
+ var cardClassName = classnames(cls(), className, backgroundColor, (_classnames = {
175
+ 'border-none': !bordered
176
+ }, _defineProperty(_classnames, "border-".concat(borderColor), borderColor), _defineProperty(_classnames, "compacted", compacted), _defineProperty(_classnames, "hoverable", hoveredShadow), _classnames));
177
+ var cardContentClassName = classnames(cls('content'), contentClassName, getFlexDirectionClassName(direction, split), (_classnames2 = {
177
178
  'contain-pro-card': containProCard
178
- }, _defineProperty(_classnames, "split-".concat(split), split), _defineProperty(_classnames, 'flex-wrap', wrap), _defineProperty(_classnames, "centered", centered), _classnames));
179
+ }, _defineProperty(_classnames2, "split-".concat(split), split), _defineProperty(_classnames2, 'flex-wrap', wrap), _defineProperty(_classnames2, "centered", centered), _classnames2));
179
180
  var cardContentMargin = containProCard && !split ? {
180
181
  marginRight: -horizonal,
181
182
  marginLeft: -horizonal,
@@ -243,5 +244,6 @@ ProCard.defaultProps = {
243
244
  direction: 'row'
244
245
  };
245
246
  ProCard.Divider = ProCardDivider;
247
+ ProCard.Selectable = ProCardSelectable;
246
248
  ProCard.isProCard = true;
247
249
  export default ProCard;
@@ -166,8 +166,10 @@
166
166
  }
167
167
  }
168
168
 
169
- &.noBorder {
170
- border: none;
169
+ &.hoverable {
170
+ &:hover {
171
+ box-shadow: var(--shadow-3, 0px 6px 24px 0px rgba(0, 0, 0, 0.1));
172
+ }
171
173
  }
172
174
 
173
175
  &.compacted {
@@ -183,6 +185,54 @@
183
185
  }
184
186
  }
185
187
 
188
+ &.border {
189
+ &-blue {
190
+ border-color: var(--color-notice-5);
191
+ }
192
+
193
+ &-orange {
194
+ border-color: var(--color-warning-5);
195
+ }
196
+
197
+ &-yellow {
198
+ border-color: var(--color-help-5);
199
+ }
200
+
201
+ &-red {
202
+ border-color: var(--color-error-5);
203
+ }
204
+
205
+ &-green {
206
+ border-color: var(--color-success-5);
207
+ }
208
+
209
+ &-grey {
210
+ border-color: var(--color-line1-1);
211
+ }
212
+
213
+ &-transparent {
214
+ border-color: transparent;
215
+ }
216
+
217
+ &-none {
218
+ border: none;
219
+ }
220
+ }
221
+
222
+ &-selectable {
223
+ cursor: pointer;
224
+
225
+ &-icon {
226
+ &-selected {
227
+ color: var(--color-notice-5);
228
+ }
229
+
230
+ &-unselected {
231
+ color: var(--color-line1-1);
232
+ }
233
+ }
234
+ }
235
+
186
236
  &.blue {
187
237
  background-color: var(--color-notice-1);
188
238
  }
@@ -0,0 +1,13 @@
1
+ import { ProCardProps } from './index';
2
+ export interface ProCardSelectableProps extends Omit<ProCardProps, 'onSelect'> {
3
+ selected?: boolean;
4
+ onSelect?: (selected: boolean) => void;
5
+ }
6
+ declare const ProCardSelectable: {
7
+ (props: ProCardSelectableProps): JSX.Element;
8
+ defaultProps: {
9
+ hoveredShadow: boolean;
10
+ };
11
+ isProCard: boolean;
12
+ };
13
+ export default ProCardSelectable;
@@ -0,0 +1,45 @@
1
+ var _excluded = ["selected", "onSelect", "className", "onClick"];
2
+
3
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
4
+
5
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
6
+
7
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
8
+
9
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
10
+
11
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
12
+
13
+ import React from 'react';
14
+ import classnames from 'classnames';
15
+ import TeamixIcon from '@teamix/icon';
16
+ import { baseClass } from '@teamix/utils';
17
+ import { ProCard } from './index';
18
+ var cls = baseClass('teamix-pro-card-selectable');
19
+
20
+ var ProCardSelectable = function ProCardSelectable(props) {
21
+ var selected = props.selected,
22
+ onSelect = props.onSelect,
23
+ className = props.className,
24
+ _onClick = props.onClick,
25
+ others = _objectWithoutProperties(props, _excluded);
26
+
27
+ return /*#__PURE__*/React.createElement(ProCard, _objectSpread({
28
+ className: classnames(cls(), className),
29
+ borderColor: selected ? 'blue' : 'grey',
30
+ extra: /*#__PURE__*/React.createElement(TeamixIcon, {
31
+ className: cls('icon', selected ? 'icon-selected' : 'icon-unselected'),
32
+ type: selected ? 'success-fill' : 'circle-line'
33
+ }),
34
+ onClick: function onClick(e) {
35
+ _onClick && _onClick(e);
36
+ onSelect && onSelect(!selected);
37
+ }
38
+ }, others));
39
+ };
40
+
41
+ ProCardSelectable.defaultProps = {
42
+ hoveredShadow: true
43
+ };
44
+ ProCardSelectable.isProCard = true;
45
+ export default ProCardSelectable;
@@ -29,7 +29,6 @@ import { usePrefixCls, getMessage } from '@teamix/utils';
29
29
  import { createForm } from '@formily/core';
30
30
  import ProForm from '../ProForm';
31
31
  import { mergeArrayValue } from '../utils';
32
- var searchText = getMessage('search');
33
32
 
34
33
  var getEventProps = function getEventProps(triggerType, onFilter) {
35
34
  var keydownEvent = {
@@ -177,7 +176,8 @@ var AdvancedFilter = /*#__PURE__*/memo(function (props) {
177
176
  onResetValidateSuccess: onReset,
178
177
  style: _objectSpread({}, triggerType === 'submit' ? {} : {
179
178
  marginRight: -16
180
- })
179
+ }),
180
+ children: getMessage('reset')
181
181
  }
182
182
  }, {
183
183
  component: 'Submit',
@@ -186,9 +186,9 @@ var AdvancedFilter = /*#__PURE__*/memo(function (props) {
186
186
  marginRight: -8
187
187
  } : {
188
188
  display: 'none'
189
- })
190
- },
191
- content: searchText
189
+ }),
190
+ children: getMessage('search')
191
+ }
192
192
  }]
193
193
  }]
194
194
  }])
@@ -288,3 +288,12 @@
288
288
  cursor: pointer;
289
289
  }
290
290
  }
291
+
292
+ /* hack todo remove */
293
+ .#{$form-item-cls}-control-content-component {
294
+ .teamix-pro-field-tooltip.teamix-pro-field-checkbox {
295
+ .teamix-pro-lable-icon-tip-icon {
296
+ transform: translate(0px, 4px);
297
+ }
298
+ }
299
+ }
package/es/index.d.ts CHANGED
@@ -21,5 +21,5 @@ export * from './page-container';
21
21
  export * from './page-header';
22
22
  export * from './skeleton';
23
23
  export * from './table';
24
- declare const version = "1.2.5";
24
+ declare const version = "1.2.9";
25
25
  export { version, ProAction, ProCard, ProField, ProForm, ProInfo, ProPageContainer, ProPageHeader, ProSkeleton, ProTable, hooks, nocode, templates, utils, };
package/es/index.js CHANGED
@@ -9,7 +9,8 @@ import ProPageContainer from './page-container';
9
9
  import ProPageHeader from './page-header';
10
10
  import ProTable from './table';
11
11
  import ProSkeleton from './skeleton';
12
- import utils from './utils';
12
+ import utils from './utils'; // import ProSidebar from './sidebar'
13
+
13
14
  import * as nocode from './nocode';
14
15
  import * as templates from './templates';
15
16
  import TeamixIcon from '@teamix/icon'; // 设置图标源
@@ -24,7 +25,9 @@ export * from './nocode';
24
25
  export * from './page-container';
25
26
  export * from './page-header';
26
27
  export * from './skeleton';
27
- export * from './table';
28
- var version = '1.2.5';
28
+ export * from './table'; // export * from './sidebar';
29
+
30
+ var version = '1.2.9';
29
31
  export { version, ProAction, ProCard, ProField, ProForm, ProInfo, // ProLayout,
30
- ProPageContainer, ProPageHeader, ProSkeleton, ProTable, hooks, nocode, templates, utils };
32
+ ProPageContainer, ProPageHeader, ProSkeleton, ProTable, // ProSidebar,
33
+ hooks, nocode, templates, utils };
@@ -38,8 +38,9 @@ var ProTableInfo = function ProTableInfo(props) {
38
38
  _layout$labelGutter = layout.labelGutter,
39
39
  labelGutter = _layout$labelGutter === void 0 ? '80px' : _layout$labelGutter;
40
40
 
41
- var newColumns = function newColumns() {
42
- return _toConsumableArray(new Array(colNum)).map(function (_, index) {
41
+ var getNewColumns = function getNewColumns() {
42
+ // 需要 fill 填充 否则有可能不执行
43
+ return _toConsumableArray(new Array(colNum)).fill(1).map(function (_, index) {
43
44
  return [{
44
45
  dataIndex: "label_".concat(index),
45
46
  align: 'left',
@@ -84,9 +85,7 @@ var ProTableInfo = function ProTableInfo(props) {
84
85
  var needCol = 1 + ((_columnsItem$colSpan = columnsItem === null || columnsItem === void 0 ? void 0 : columnsItem.colSpan) !== null && _columnsItem$colSpan !== void 0 ? _columnsItem$colSpan : 1); // 如果剩余的col能满足下一组数据那么就放在这一组
85
86
 
86
87
  if (needCol <= col) {
87
- var _columnsItem$colSpan2;
88
-
89
- col = col - 1 - ((_columnsItem$colSpan2 = columnsItem === null || columnsItem === void 0 ? void 0 : columnsItem.colSpan) !== null && _columnsItem$colSpan2 !== void 0 ? _columnsItem$colSpan2 : 1);
88
+ col = col - needCol;
90
89
  filterColumns.push(columnsItem);
91
90
  } else {
92
91
  var _filterColumns$0$colS;
@@ -99,6 +98,11 @@ var ProTableInfo = function ProTableInfo(props) {
99
98
  col = 0;
100
99
  }
101
100
  }
101
+
102
+ if (columnsCopy.length === 0) {
103
+ // 如果剩余仍有列数并且已经没有columns分配了
104
+ col = 0;
105
+ }
102
106
  }
103
107
 
104
108
  var itemData = filterColumns.map(function (item, index) {
@@ -165,7 +169,7 @@ var ProTableInfo = function ProTableInfo(props) {
165
169
  return /*#__PURE__*/React.createElement(Table.StickyLock, {
166
170
  className: "teamix-pro-info-table",
167
171
  cellProps: setCellProps,
168
- columns: newColumns(),
172
+ columns: getNewColumns(),
169
173
  hasHeader: false,
170
174
  hasBorder: true,
171
175
  dataSource: newDataSource
@@ -1,9 +1,7 @@
1
1
  var initialValues = {
2
2
  title: '卡片标题',
3
3
  children: '卡片内容卡片内容卡片内容',
4
- extra: '操作',
5
- bordered: true,
6
- hoveredShadow: true
4
+ extra: '操作'
7
5
  };
8
6
  var schema = [{
9
7
  component: 'FormTab',
@@ -54,10 +52,6 @@ var schema = [{
54
52
  children: [{
55
53
  title: '整体样式',
56
54
  children: [{
57
- name: 'bordered',
58
- title: '边框',
59
- component: 'Switch'
60
- }, {
61
55
  name: 'divider',
62
56
  title: '头部分割线',
63
57
  component: 'Switch'
@@ -72,7 +66,36 @@ var schema = [{
72
66
  label: '蓝色',
73
67
  value: 'blue'
74
68
  }, {
75
- label: '绿生',
69
+ label: '绿色',
70
+ value: 'green'
71
+ }, {
72
+ label: '红色',
73
+ value: 'red'
74
+ }, {
75
+ label: '橙色',
76
+ value: 'orange'
77
+ }, {
78
+ label: '黄色',
79
+ value: 'yellow'
80
+ }, {
81
+ label: '灰色',
82
+ value: 'grey'
83
+ }, {
84
+ label: '透明',
85
+ value: 'transparent'
86
+ }]
87
+ }, {
88
+ name: 'borderColor',
89
+ title: '边框色',
90
+ component: 'Select',
91
+ dataSource: [{
92
+ label: '无边框',
93
+ value: 'none'
94
+ }, {
95
+ label: '蓝色',
96
+ value: 'blue'
97
+ }, {
98
+ label: '绿色',
76
99
  value: 'green'
77
100
  }, {
78
101
  label: '红色',
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import { ProSidebarContainerProps } from '../../typing';
3
+ import './index.scss';
4
+ declare const ProSidebarContainer: React.FC<ProSidebarContainerProps>;
5
+ export default ProSidebarContainer;