@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.
- package/dist/212.js +1 -1
- package/dist/pro.css +1 -1
- package/dist/pro.js +683 -380
- package/dist/pro.min.css +1 -1
- package/dist/pro.min.js +1 -1
- package/es/actions/dialog-form.js +2 -2
- package/es/actions/dialog.js +16 -21
- package/es/actions/index.js +25 -21
- package/es/actions/index.scss +14 -7
- package/es/card/index.d.ts +12 -3
- package/es/card/index.js +11 -9
- package/es/card/index.scss +52 -2
- package/es/card/selectable.d.ts +13 -0
- package/es/card/selectable.js +45 -0
- package/es/form/Filter/index.js +5 -5
- package/es/form/ProForm/index.scss +9 -0
- package/es/index.d.ts +1 -1
- package/es/index.js +7 -4
- package/es/info/components/tableInfo/index.js +10 -6
- package/es/nocode/configurators/Card.js +31 -8
- package/es/sidebar/components/sidebar-container/index.d.ts +5 -0
- package/es/sidebar/components/sidebar-container/index.js +77 -0
- package/es/sidebar/components/sidebar-container/index.scss +18 -0
- package/es/sidebar/components/tree/index.d.ts +4 -0
- package/es/sidebar/components/tree/index.js +162 -0
- package/es/sidebar/index.d.ts +5 -0
- package/es/sidebar/index.js +70 -0
- package/es/sidebar/index.scss +3 -0
- package/es/sidebar/typing.d.ts +64 -0
- package/es/sidebar/typing.js +1 -0
- package/es/table/index.js +11 -2
- package/es/table/index.scss +1 -0
- package/es/table/typing.d.ts +2 -0
- package/lib/actions/dialog-form.js +1 -1
- package/lib/actions/dialog.js +15 -20
- package/lib/actions/index.js +25 -21
- package/lib/actions/index.scss +14 -7
- package/lib/card/index.d.ts +12 -3
- package/lib/card/index.js +15 -12
- package/lib/card/index.scss +52 -2
- package/lib/card/selectable.d.ts +13 -0
- package/lib/card/selectable.js +60 -0
- package/lib/form/Filter/index.js +5 -6
- package/lib/form/ProForm/index.scss +9 -0
- package/lib/index.d.ts +1 -1
- package/lib/index.js +3 -1
- package/lib/info/components/tableInfo/index.js +10 -6
- package/lib/nocode/configurators/Card.js +31 -8
- package/lib/sidebar/components/sidebar-container/index.d.ts +5 -0
- package/lib/sidebar/components/sidebar-container/index.js +93 -0
- package/lib/sidebar/components/sidebar-container/index.scss +18 -0
- package/lib/sidebar/components/tree/index.d.ts +4 -0
- package/lib/sidebar/components/tree/index.js +179 -0
- package/lib/sidebar/index.d.ts +5 -0
- package/lib/sidebar/index.js +91 -0
- package/lib/sidebar/index.scss +3 -0
- package/lib/sidebar/typing.d.ts +64 -0
- package/lib/sidebar/typing.js +5 -0
- package/lib/table/index.js +11 -2
- package/lib/table/index.scss +1 -0
- package/lib/table/typing.d.ts +2 -0
- 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,
|
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 =
|
139
|
+
var formRef = /*#__PURE__*/createRef();
|
140
140
|
return useDialogAction(Object.assign({
|
141
141
|
size: size,
|
142
142
|
closeable: true,
|
package/es/actions/dialog.js
CHANGED
@@ -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", "
|
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
|
-
|
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 ? {
|
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);
|
package/es/actions/index.js
CHANGED
@@ -169,13 +169,15 @@ export var ProActionButton = function ProActionButton(props) {
|
|
169
169
|
}, buttonProps), buttonContent(children, icon, iconSize, context));
|
170
170
|
};
|
171
171
|
|
172
|
-
function
|
173
|
-
var
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
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(
|
193
|
-
|
194
|
-
|
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,
|
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,
|
208
|
+
return renderCommonActionButtonMenuItem(a, context);
|
207
209
|
}));
|
208
210
|
}
|
209
211
|
|
210
|
-
return
|
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
|
236
|
-
return renderCommonActionButtonMenuItem(action,
|
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
|
}));
|
package/es/actions/index.scss
CHANGED
@@ -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
|
-
|
71
|
+
& + .next-loading {
|
65
72
|
.teamix-pro-form {
|
66
73
|
margin-top: 20px;
|
67
74
|
}
|
package/es/card/index.d.ts
CHANGED
@@ -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
|
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
|
-
|
174
|
-
|
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(
|
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;
|
package/es/card/index.scss
CHANGED
@@ -166,8 +166,10 @@
|
|
166
166
|
}
|
167
167
|
}
|
168
168
|
|
169
|
-
&.
|
170
|
-
|
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;
|
package/es/form/Filter/index.js
CHANGED
@@ -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
|
-
|
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.
|
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
|
-
|
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,
|
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
|
42
|
-
|
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
|
-
|
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:
|
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: '红色',
|