@aloudata/aloudata-design 2.15.12 → 2.16.0
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/AMenu/index.d.ts +3 -0
- package/dist/AMenu/index.js +2 -0
- package/dist/AMenu/style/index.d.ts +2 -0
- package/dist/AMenu/style/index.js +2 -0
- package/dist/AMenu/style/index.less +1 -0
- package/dist/MemberPicker/components/MemberSelection.d.ts +1 -0
- package/dist/MemberPicker/components/MemberSelection.js +15 -6
- package/dist/MemberPicker/components/UserGroupSelection.d.ts +2 -1
- package/dist/MemberPicker/components/UserGroupSelection.js +8 -2
- package/dist/MemberPicker/index.js +22 -5
- package/dist/MemberPicker/interface.d.ts +1 -0
- package/dist/Modal/index.d.ts +1 -0
- package/dist/Modal/index.js +4 -2
- package/dist/Modal/style/modal.less +28 -0
- package/dist/ald.min.css +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.js +2 -1
- package/dist/index.less +2 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import '../../style/index.less';
|
|
@@ -7,7 +7,7 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
|
7
7
|
import { useVirtualizer } from '@tanstack/react-virtual';
|
|
8
8
|
import classNames from 'classnames';
|
|
9
9
|
import _ from 'lodash';
|
|
10
|
-
import React, { useContext, useDeferredValue, useEffect, useState } from 'react';
|
|
10
|
+
import React, { useContext, useDeferredValue, useEffect, useMemo, useState } from 'react';
|
|
11
11
|
import Empty from "../../Empty";
|
|
12
12
|
import { SearchLine } from "../../Icon";
|
|
13
13
|
import Input from "../../Input";
|
|
@@ -30,12 +30,21 @@ export default function MemberSelection(props) {
|
|
|
30
30
|
onSearchValueChange = props.onSearchValueChange,
|
|
31
31
|
loading = props.loading,
|
|
32
32
|
width = props.width,
|
|
33
|
-
lockedIds = props.lockedIds
|
|
33
|
+
lockedIds = props.lockedIds,
|
|
34
|
+
filterItem = props.filterItem;
|
|
35
|
+
var filteredList = useMemo(function () {
|
|
36
|
+
return userList.filter(function (item) {
|
|
37
|
+
if (filterItem) {
|
|
38
|
+
return filterItem(item);
|
|
39
|
+
}
|
|
40
|
+
return true;
|
|
41
|
+
});
|
|
42
|
+
}, [userList, filterItem]);
|
|
34
43
|
var parentRef = React.useRef(null);
|
|
35
44
|
|
|
36
45
|
// The virtualizer
|
|
37
46
|
var rowVirtualizer = useVirtualizer({
|
|
38
|
-
count:
|
|
47
|
+
count: filteredList.length,
|
|
39
48
|
getScrollElement: function getScrollElement() {
|
|
40
49
|
return parentRef.current;
|
|
41
50
|
},
|
|
@@ -66,7 +75,7 @@ export default function MemberSelection(props) {
|
|
|
66
75
|
onChange: function onChange(e) {
|
|
67
76
|
setSearchValue(e.target.value);
|
|
68
77
|
}
|
|
69
|
-
}),
|
|
78
|
+
}), filteredList.length === 0 && !loading && /*#__PURE__*/React.createElement(Empty, {
|
|
70
79
|
title: t.MemberPicker.noData,
|
|
71
80
|
size: "small",
|
|
72
81
|
image: Empty.PRESENTED_IMAGE_SEARCH,
|
|
@@ -84,7 +93,7 @@ export default function MemberSelection(props) {
|
|
|
84
93
|
overflowX: 'hidden'
|
|
85
94
|
},
|
|
86
95
|
className: classNames('ald-member-picker-member-list', {
|
|
87
|
-
'ald-member-picker-member-list-null':
|
|
96
|
+
'ald-member-picker-member-list-null': filteredList.length === 0 && !loading
|
|
88
97
|
})
|
|
89
98
|
// innerClassName="ald-member-picker-member-scroll"
|
|
90
99
|
}, /*#__PURE__*/React.createElement("div", {
|
|
@@ -96,7 +105,7 @@ export default function MemberSelection(props) {
|
|
|
96
105
|
height: "".concat(rowVirtualizer.getTotalSize(), "px")
|
|
97
106
|
}
|
|
98
107
|
}, rowVirtualizer.getVirtualItems().map(function (virtualItem) {
|
|
99
|
-
var user =
|
|
108
|
+
var user = filteredList[virtualItem.index];
|
|
100
109
|
var isSelected = selectedUsers.some(function (selectedUser) {
|
|
101
110
|
return selectedUser.userId === user.userId;
|
|
102
111
|
});
|
|
@@ -10,6 +10,7 @@ interface IProps {
|
|
|
10
10
|
onSearchValueChange?: (value: string) => void;
|
|
11
11
|
width: number;
|
|
12
12
|
lockedIds: Array<TUserValue | TUserGroupValue>;
|
|
13
|
+
filterItem?: (item: IUserGroup) => boolean;
|
|
13
14
|
}
|
|
14
|
-
declare const UserGroupSelection: ({ className, userGroupList, multiple, onChange, selectedUsersGroup: selectedUsersGroups, loading, width, lockedIds, }: IProps) => React.JSX.Element;
|
|
15
|
+
declare const UserGroupSelection: ({ className, userGroupList, multiple, onChange, selectedUsersGroup: selectedUsersGroups, loading, width, lockedIds, filterItem, }: IProps) => React.JSX.Element;
|
|
15
16
|
export default UserGroupSelection;
|
|
@@ -34,7 +34,8 @@ var UserGroupSelection = function UserGroupSelection(_ref) {
|
|
|
34
34
|
selectedUsersGroups = _ref.selectedUsersGroup,
|
|
35
35
|
loading = _ref.loading,
|
|
36
36
|
width = _ref.width,
|
|
37
|
-
lockedIds = _ref.lockedIds
|
|
37
|
+
lockedIds = _ref.lockedIds,
|
|
38
|
+
filterItem = _ref.filterItem;
|
|
38
39
|
var _useContext = useContext(LocaleContext),
|
|
39
40
|
locale = _useContext.locale;
|
|
40
41
|
var t = getTranslator(locale);
|
|
@@ -85,7 +86,12 @@ var UserGroupSelection = function UserGroupSelection(_ref) {
|
|
|
85
86
|
})), [userGroupList, groupPath, searchKey, getNextLevelGroup]);
|
|
86
87
|
useEffect(function () {
|
|
87
88
|
getFilterUserList().then(function (userGroups) {
|
|
88
|
-
setFilterUserList(userGroups)
|
|
89
|
+
setFilterUserList(userGroups.filter(function (userGroup) {
|
|
90
|
+
if (filterItem) {
|
|
91
|
+
return filterItem(userGroup);
|
|
92
|
+
}
|
|
93
|
+
return true;
|
|
94
|
+
}));
|
|
89
95
|
});
|
|
90
96
|
}, [getFilterUserList]);
|
|
91
97
|
return /*#__PURE__*/React.createElement("div", {
|
|
@@ -1,5 +1,11 @@
|
|
|
1
|
-
var _excluded = ["value", "type", "onChange", "multiple", "dropdownWidth", "open", "onOpenChange", "placeholder", "className", "allowClear", "disabled", "onClear", "size", "prefix", "lockedIds", "footer", "onCancel"];
|
|
1
|
+
var _excluded = ["value", "type", "onChange", "multiple", "dropdownWidth", "open", "onOpenChange", "placeholder", "className", "allowClear", "disabled", "onClear", "size", "prefix", "lockedIds", "footer", "onCancel", "filterItem", "mode"];
|
|
2
2
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
3
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
4
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
5
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
7
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
8
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
3
9
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
4
10
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
5
11
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
@@ -53,6 +59,8 @@ var Component = function Component(props) {
|
|
|
53
59
|
lockedIds = _props$lockedIds === void 0 ? [] : _props$lockedIds,
|
|
54
60
|
footer = props.footer,
|
|
55
61
|
_onCancel = props.onCancel,
|
|
62
|
+
filterItem = props.filterItem,
|
|
63
|
+
propsMode = props.mode,
|
|
56
64
|
restProps = _objectWithoutProperties(props, _excluded);
|
|
57
65
|
var _ConfigProvider$useGe = ConfigProvider.useGetUserList(),
|
|
58
66
|
getUsersByIds = _ConfigProvider$useGe.getUsersByIds,
|
|
@@ -129,8 +137,13 @@ var Component = function Component(props) {
|
|
|
129
137
|
return _.uniqBy(totalUsers, function (data) {
|
|
130
138
|
if (data.type === EUserType.USER) return data.userId;
|
|
131
139
|
return data.groupId;
|
|
140
|
+
}).filter(function (item) {
|
|
141
|
+
if (filterItem) {
|
|
142
|
+
return filterItem(item);
|
|
143
|
+
}
|
|
144
|
+
return true;
|
|
132
145
|
});
|
|
133
|
-
}, [searchString, searchUserList, selectedUserList]);
|
|
146
|
+
}, [filterItem, searchString, searchUserList, selectedUserList]);
|
|
134
147
|
useEffect(function () {
|
|
135
148
|
if (!dropdownOpen) return;
|
|
136
149
|
run();
|
|
@@ -181,7 +194,7 @@ var Component = function Component(props) {
|
|
|
181
194
|
setSelectedUserList([].concat(_toConsumableArray(result), _toConsumableArray(valueNotInResult)));
|
|
182
195
|
});
|
|
183
196
|
}
|
|
184
|
-
}, [value, queryByIds]);
|
|
197
|
+
}, [value, queryByIds, prevValue]);
|
|
185
198
|
var onSelectedChange = useCallback(function (users) {
|
|
186
199
|
if (multiple) {
|
|
187
200
|
setSelectedUserList(users);
|
|
@@ -234,13 +247,17 @@ var Component = function Component(props) {
|
|
|
234
247
|
}, [dropdownOpen]);
|
|
235
248
|
var mode = useMemo(function () {
|
|
236
249
|
if (multiple === true) {
|
|
250
|
+
if (_typeof(propsMode) === 'object') return _objectSpread(_objectSpread({}, propsMode || {}), {}, {
|
|
251
|
+
type: 'multiple',
|
|
252
|
+
responsive: _.isNil(propsMode.responsive) ? true : propsMode.responsive
|
|
253
|
+
});
|
|
237
254
|
return {
|
|
238
255
|
type: 'multiple',
|
|
239
256
|
responsive: true
|
|
240
257
|
};
|
|
241
258
|
}
|
|
242
|
-
return multiple ? multiple :
|
|
243
|
-
}, [multiple]);
|
|
259
|
+
return multiple ? multiple : propsMode;
|
|
260
|
+
}, [multiple, propsMode]);
|
|
244
261
|
var selectOpen = typeof open === 'boolean' ? open : dropdownOpen;
|
|
245
262
|
return /*#__PURE__*/React.createElement(AldSelect, _extends({
|
|
246
263
|
prefix: propPrefix
|
|
@@ -20,6 +20,7 @@ export interface IBaseMemberSelectorProps extends Omit<ISelectProps, 'type'> {
|
|
|
20
20
|
lockedIds?: Array<TUserValue | TUserGroupValue>;
|
|
21
21
|
footer?: ReactNode;
|
|
22
22
|
onCancel?: () => void;
|
|
23
|
+
filterItem?: (item: IUser | IUserGroup) => boolean;
|
|
23
24
|
}
|
|
24
25
|
export interface IMultipleMemberSelectorProps extends IBaseMemberSelectorProps {
|
|
25
26
|
multiple: true | Mode;
|
package/dist/Modal/index.d.ts
CHANGED
|
@@ -19,6 +19,7 @@ export interface ModalProps extends Omit<AntdModalProps, 'okButtonProps' | 'canc
|
|
|
19
19
|
okButtonProps?: IButtonProps;
|
|
20
20
|
okType?: ButtonType;
|
|
21
21
|
responsiveBounds?: boolean;
|
|
22
|
+
fullscreen?: boolean;
|
|
22
23
|
}
|
|
23
24
|
export interface ModalFuncProps extends Omit<AntdModalFuncProps, 'okButtonProps' | 'cancelButtonProps' | 'okType' | 'icon'> {
|
|
24
25
|
cancelButtonProps?: IButtonProps;
|
package/dist/Modal/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
2
2
|
var _excluded = ["className", "type", "loading", "size", "disabled", "shape"],
|
|
3
|
-
_excluded2 = ["className", "children", "okType", "width", "closeIcon", "subTitle", "okButtonProps", "cancelButtonProps", "okText", "cancelText", "icon", "title", "paddingLess", "responsiveBounds", "hideHeaderBottomBorder", "virtualScrollBar", "style", "maskClosable"],
|
|
3
|
+
_excluded2 = ["className", "children", "okType", "width", "closeIcon", "subTitle", "okButtonProps", "cancelButtonProps", "okText", "cancelText", "icon", "title", "paddingLess", "responsiveBounds", "hideHeaderBottomBorder", "virtualScrollBar", "style", "maskClosable", "fullscreen"],
|
|
4
4
|
_excluded3 = ["okButtonProps", "cancelButtonProps", "okType", "width", "title", "subTitle", "okText", "cancelText", "className"],
|
|
5
5
|
_excluded4 = ["okButtonProps", "cancelButtonProps", "okType", "width", "title", "subTitle", "okText", "cancelText", "className"],
|
|
6
6
|
_excluded5 = ["okButtonProps", "cancelButtonProps", "okType", "width", "title", "subTitle", "okText", "cancelText", "className"],
|
|
@@ -116,6 +116,7 @@ var OriginModal = function OriginModal(props) {
|
|
|
116
116
|
style = props.style,
|
|
117
117
|
_props$maskClosable = props.maskClosable,
|
|
118
118
|
maskClosable = _props$maskClosable === void 0 ? false : _props$maskClosable,
|
|
119
|
+
fullscreen = props.fullscreen,
|
|
119
120
|
restProps = _objectWithoutProperties(props, _excluded2);
|
|
120
121
|
var responsiveBoundsStyle = useMemo(function () {
|
|
121
122
|
if (!responsiveBounds) {
|
|
@@ -155,7 +156,8 @@ var OriginModal = function OriginModal(props) {
|
|
|
155
156
|
'ald-modal-padding-less': paddingLess,
|
|
156
157
|
'ald-modal-virtual-scroll-bar': virtualScrollBar,
|
|
157
158
|
'ald-modal-hide-header-bottom-border': hideHeaderBottomBorder,
|
|
158
|
-
'ald-modal-responsive-bounds': responsiveBounds
|
|
159
|
+
'ald-modal-responsive-bounds': responsiveBounds,
|
|
160
|
+
'ald-modal-fullscreen': fullscreen
|
|
159
161
|
}),
|
|
160
162
|
okButtonProps: getButtonProps(mergedOkButtonProps, 'primary', okType),
|
|
161
163
|
wrapClassName: classNames(props.wrapClassName, {
|
|
@@ -159,3 +159,31 @@
|
|
|
159
159
|
}
|
|
160
160
|
}
|
|
161
161
|
}
|
|
162
|
+
|
|
163
|
+
.ald-modal-fullscreen {
|
|
164
|
+
width: 100vw !important;
|
|
165
|
+
margin: 0 !important;
|
|
166
|
+
padding: 0 !important;
|
|
167
|
+
height: 100vh !important;
|
|
168
|
+
max-width: 100vw !important;
|
|
169
|
+
top: 0 !important;
|
|
170
|
+
left: 0 !important;
|
|
171
|
+
|
|
172
|
+
.ant-modal-content {
|
|
173
|
+
border-radius: 0 !important;
|
|
174
|
+
height: 100% !important;
|
|
175
|
+
|
|
176
|
+
.ant-modal-body {
|
|
177
|
+
height: 100% !important;
|
|
178
|
+
max-height: 100% !important;
|
|
179
|
+
padding: 0 !important;
|
|
180
|
+
overflow: hidden;
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
.ant-modal-header,
|
|
185
|
+
.ant-modal-footer,
|
|
186
|
+
.ant-modal-close {
|
|
187
|
+
display: none;
|
|
188
|
+
}
|
|
189
|
+
}
|