@aloudata/aloudata-design 2.14.6 → 2.14.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- var _excluded = ["id", "className", "displayValues", "onDisplayValuesChange", "displayMenu", "notFoundContent", "onClear", "width", "mode", "status", "onOptionSelect", "onClick", "size", "borderLess", "disabled", "placeholder", "open", "defaultOpen", "onOpenChange", "showSearch", "innerSearchValue", "setInnerSearchValue", "allowClear", "showArrow", "prefix", "suffixIcon", "dropdownRender", "overlayStyle", "dropdownStyle", "popupMatchSelectWidth", "placement", "popupClassName", "style", "listHeight"];
1
+ var _excluded = ["id", "className", "displayValues", "onDisplayValuesChange", "displayMenu", "notFoundContent", "onClear", "width", "mode", "status", "onOptionSelect", "onClick", "size", "borderLess", "disabled", "placeholder", "open", "defaultOpen", "onOpenChange", "showSearch", "innerSearchValue", "setInnerSearchValue", "allowClear", "showArrow", "prefix", "suffixIcon", "dropdownRender", "overlayStyle", "dropdownStyle", "popupMatchSelectWidth", "placement", "popupClassName", "style"];
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
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
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; }
@@ -72,7 +72,6 @@ var BaseSelect = /*#__PURE__*/React.forwardRef(function (props, ref) {
72
72
  placement = props.placement,
73
73
  popupClassName = props.popupClassName,
74
74
  style = props.style,
75
- listHeight = props.listHeight,
76
75
  restProps = _objectWithoutProperties(props, _excluded);
77
76
  var setClassNames = prefixCls('select');
78
77
  var selectRef = useRef(null);
@@ -105,6 +104,7 @@ var BaseSelect = /*#__PURE__*/React.forwardRef(function (props, ref) {
105
104
  return onToggleOpen(true);
106
105
  },
107
106
  close: function close() {
107
+ console.log('ref close');
108
108
  onToggleOpen(false);
109
109
  }
110
110
  };
@@ -127,6 +127,7 @@ var BaseSelect = /*#__PURE__*/React.forwardRef(function (props, ref) {
127
127
  setInnerOpen = _useMergedState2[1];
128
128
  var mergedOpen = innerOpen;
129
129
  var onToggleOpen = React.useCallback(function (newOpen) {
130
+ console.log('toggle', newOpen);
130
131
  var nextOpen = newOpen !== undefined ? newOpen : !mergedOpen;
131
132
  if (!nextOpen) {
132
133
  setShowResponsiveSelectedSection(false);
@@ -170,6 +171,7 @@ var BaseSelect = /*#__PURE__*/React.forwardRef(function (props, ref) {
170
171
  var _displayMenu$onClick;
171
172
  displayMenu === null || displayMenu === void 0 ? void 0 : (_displayMenu$onClick = displayMenu.onClick) === null || _displayMenu$onClick === void 0 ? void 0 : _displayMenu$onClick.call(displayMenu, info);
172
173
  if (displayMenu && !isMultipleMode) {
174
+ console.log('menu onClick', info);
173
175
  onToggleOpen(false);
174
176
  setFocus(false);
175
177
  }
@@ -204,9 +206,9 @@ var BaseSelect = /*#__PURE__*/React.forwardRef(function (props, ref) {
204
206
  ,
205
207
  dropdownRender: dropdownRender,
206
208
  overlayStyle: overlayStyle || dropdownStyle,
207
- listHeight: listHeight,
208
209
  placement: placement,
209
210
  onOpenChange: function onOpenChange(open) {
211
+ console.log('onOpenChange', open);
210
212
  if (isResponsiveMode) {
211
213
  if (!mergedOpen && !showResponsiveSelectedSection && displayValues.length > 0) {
212
214
  setShowResponsiveSelectedSection(true);
@@ -224,6 +226,7 @@ var BaseSelect = /*#__PURE__*/React.forwardRef(function (props, ref) {
224
226
  }, prefix), _.isEmpty(displayValues) && /*#__PURE__*/React.createElement("div", {
225
227
  className: setClassNames('placeholder')
226
228
  }, placeholder), !_.isEmpty(displayValues) && /*#__PURE__*/React.createElement(Selector, _extends({}, restProps, {
229
+ suffixIcon: suffixIcon,
227
230
  size: size,
228
231
  mode: mode,
229
232
  dropdownRef: dropdownRef,
@@ -236,6 +239,7 @@ var BaseSelect = /*#__PURE__*/React.forwardRef(function (props, ref) {
236
239
  allowClear: allowClear,
237
240
  isHover: isHover,
238
241
  onClear: function onClear() {
242
+ console.log('onClear');
239
243
  onToggleOpen(false);
240
244
  onDisplayValuesChange([], {
241
245
  type: 'clear',
@@ -18,7 +18,6 @@ export interface SelectTriggerProps extends IDropdownProps {
18
18
  searchValue?: string;
19
19
  setInnerSearchValue?: (value: string) => void;
20
20
  filterOption?: (inputValue: string, option: SelectOptionType) => boolean;
21
- listHeight?: number;
22
21
  }
23
22
  declare const RefSelectTrigger: React.ForwardRefExoticComponent<SelectTriggerProps & React.RefAttributes<RefTriggerProps>>;
24
23
  export default RefSelectTrigger;
@@ -1,4 +1,4 @@
1
- var _excluded = ["overlayStyle", "disabled", "open", "children", "dropdownRender", "getPopupContainer", "onOpenChange", "showSearch", "searchValue", "setInnerSearchValue", "menu", "overlayClassName", "placement", "popupMatchSelectWidth", "listHeight", "notFoundContent"];
1
+ var _excluded = ["overlayStyle", "disabled", "open", "children", "dropdownRender", "getPopupContainer", "onOpenChange", "showSearch", "searchValue", "setInnerSearchValue", "menu", "overlayClassName", "placement", "popupMatchSelectWidth", "notFoundContent"];
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
3
  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; }
4
4
  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; }
@@ -24,7 +24,6 @@ var RefSelectTrigger = /*#__PURE__*/React.forwardRef(function (props, ref) {
24
24
  _props$placement = props.placement,
25
25
  placement = _props$placement === void 0 ? 'bottom-start' : _props$placement,
26
26
  popupMatchSelectWidth = props.popupMatchSelectWidth,
27
- listHeight = props.listHeight,
28
27
  _props$notFoundConten = props.notFoundContent,
29
28
  notFoundContent = _props$notFoundConten === void 0 ? /*#__PURE__*/React.createElement(Empty, {
30
29
  size: "small"
@@ -43,11 +42,7 @@ var RefSelectTrigger = /*#__PURE__*/React.forwardRef(function (props, ref) {
43
42
  var customDropdownRender = useCallback(function (menu) {
44
43
  return /*#__PURE__*/React.createElement("div", {
45
44
  className: "beta-ald-select-popup",
46
- ref: popupRef,
47
- style: {
48
- height: listHeight,
49
- overflow: 'auto'
50
- }
45
+ ref: popupRef
51
46
  }, /*#__PURE__*/React.createElement(SearchBox, {
52
47
  showSearch: showSearch,
53
48
  value: searchValue,
@@ -60,7 +55,7 @@ var RefSelectTrigger = /*#__PURE__*/React.forwardRef(function (props, ref) {
60
55
  dropdownRender: dropdownRender,
61
56
  menuProps: menuProps
62
57
  }));
63
- }, [dropdownRender, listHeight, menuProps, notFoundContent, searchValue, setInnerSearchValue, showSearch]);
58
+ }, [dropdownRender, menuProps, notFoundContent, searchValue, setInnerSearchValue, showSearch]);
64
59
  return /*#__PURE__*/React.createElement(Dropdown, _extends({}, restProps, {
65
60
  disabled: disabled,
66
61
  open: open,
@@ -6,4 +6,6 @@ export default function MultipleResponsiveSelectedSection(params: {
6
6
  renderItem: (valueItem: DisplayValueType) => React.JSX.Element | null;
7
7
  onToggleOpen: (open: boolean) => void;
8
8
  dropdownRef: RefObject<RefTriggerProps>;
9
+ maxHeight?: number;
10
+ suffixIcon?: React.ReactNode;
9
11
  }): React.JSX.Element;
@@ -1,34 +1,50 @@
1
1
  import React, { useEffect, useRef } from 'react';
2
+ import ScrollArea from "../../ScrollArea";
3
+ import Suffix from "../components/Suffix";
2
4
  export default function MultipleResponsiveSelectedSection(params) {
3
5
  var displayValues = params.displayValues,
4
6
  renderItem = params.renderItem,
5
7
  onToggleOpen = params.onToggleOpen,
6
- dropdownRef = params.dropdownRef;
8
+ dropdownRef = params.dropdownRef,
9
+ maxHeight = params.maxHeight,
10
+ suffixIcon = params.suffixIcon;
7
11
  var multipleSelectedSectionRef = useRef(null);
8
12
  useEffect(function () {
9
- function getSelect() {
10
- var _multipleSelectedSect, _multipleSelectedSect2, _multipleSelectedSect3;
11
- var select = (_multipleSelectedSect = multipleSelectedSectionRef.current) === null || _multipleSelectedSect === void 0 ? void 0 : (_multipleSelectedSect2 = _multipleSelectedSect.parentElement) === null || _multipleSelectedSect2 === void 0 ? void 0 : (_multipleSelectedSect3 = _multipleSelectedSect2.parentElement) === null || _multipleSelectedSect3 === void 0 ? void 0 : _multipleSelectedSect3.parentElement;
12
- if (select && select.classList.contains('beta-ald-select')) {
13
- return select;
13
+ function isAncestorElement(ancestorClass, target) {
14
+ var currentElement = target;
15
+ while (currentElement) {
16
+ if (currentElement.classList.contains(ancestorClass)) {
17
+ return true;
18
+ }
19
+ currentElement = currentElement.parentElement;
14
20
  }
15
- return null;
21
+ return false;
16
22
  }
17
23
  function close(e) {
18
- var _dropdownRef$current, _dropdownRef$current$;
19
24
  var target = e.target;
20
- var select = getSelect();
21
- if (select && !select.contains(target) && !((_dropdownRef$current = dropdownRef.current) !== null && _dropdownRef$current !== void 0 && (_dropdownRef$current$ = _dropdownRef$current.getPopupElement()) !== null && _dropdownRef$current$ !== void 0 && _dropdownRef$current$.contains(target))) {
25
+ if (!isAncestorElement('beta-ald-select', target) && !isAncestorElement('beta-ald-select-popup', target)) {
22
26
  onToggleOpen(false);
23
27
  }
24
28
  }
25
- document.addEventListener('click', close);
29
+ document.addEventListener('mousedown', close);
26
30
  return function () {
27
- document.removeEventListener('click', close);
31
+ document.removeEventListener('mousedown', close);
28
32
  };
29
33
  }, [onToggleOpen, dropdownRef]);
30
34
  return /*#__PURE__*/React.createElement("div", {
31
35
  ref: multipleSelectedSectionRef,
32
36
  className: "beta-ald-select-selector-multiple-responsive-selected-section"
33
- }, displayValues.map(renderItem));
37
+ }, /*#__PURE__*/React.createElement(ScrollArea, {
38
+ innerClassName: "beta-ald-select-selector-multiple-responsive-selected-section-inner",
39
+ innerStyle: {
40
+ maxHeight: maxHeight
41
+ }
42
+ }, /*#__PURE__*/React.createElement("div", {
43
+ className: "beta-ald-select-selector-multiple-responsive-selected-section-tags"
44
+ }, displayValues.map(renderItem))), /*#__PURE__*/React.createElement(Suffix, {
45
+ showArrow: true,
46
+ allowClear: false,
47
+ icon: suffixIcon,
48
+ displayValues: displayValues
49
+ }));
34
50
  }
@@ -33,7 +33,8 @@ export default function MultipleSelector(props) {
33
33
  disabled = props.disabled,
34
34
  maxTagPlaceholder = props.maxTagPlaceholder,
35
35
  showResponsiveSelectedSection = props.showResponsiveSelectedSection,
36
- dropdownRef = props.dropdownRef;
36
+ dropdownRef = props.dropdownRef,
37
+ suffixIcon = props.suffixIcon;
37
38
  var innerMaxTagPlaceholder = function innerMaxTagPlaceholder(omittedValues) {
38
39
  return "+ ".concat(omittedValues.length === displayValues.length ? omittedValues.length - 1 : omittedValues.length);
39
40
  };
@@ -44,7 +45,6 @@ export default function MultipleSelector(props) {
44
45
  var customizeRenderSelector = function customizeRenderSelector(value, content, itemDisabled, closable, onClose, isPreview) {
45
46
  var onMouseDown = function onMouseDown(e) {
46
47
  onPreventMouseDown(e);
47
- onToggleOpen(!open);
48
48
  };
49
49
  return /*#__PURE__*/React.createElement("span", {
50
50
  className: "beta-ald-select-custom-tag-render-wrapper",
@@ -106,15 +106,16 @@ export default function MultipleSelector(props) {
106
106
  };
107
107
  var maxHeight = useMemo(function () {
108
108
  if (isMultiple(mode)) {
109
+ var maxRows;
109
110
  if (_typeof(mode) === 'object') {
110
- var maxRows = mode.maxRows;
111
- if (!maxRows) {
112
- // 2.5行高+2行间距
113
- return 2.5 * tagHeight + 2 * gap;
114
- } else {
115
- // 总行高+总行间距
116
- return maxRows * tagHeight + (maxRows - 1) * gap;
117
- }
111
+ maxRows = mode.maxRows;
112
+ }
113
+ if (!maxRows) {
114
+ // 2.5行高+2行间距
115
+ return 2.5 * tagHeight + 2 * gap;
116
+ } else {
117
+ // 总行高+总行间距
118
+ return maxRows * tagHeight + (maxRows - 1) * gap;
118
119
  }
119
120
  }
120
121
  return undefined;
@@ -139,6 +140,8 @@ export default function MultipleSelector(props) {
139
140
  }), showResponsiveSelectedSection && /*#__PURE__*/React.createElement(MultipleResponsiveSelectedSection, {
140
141
  displayValues: displayValues,
141
142
  renderItem: renderItem,
143
+ maxHeight: maxHeight,
144
+ suffixIcon: suffixIcon,
142
145
  onToggleOpen: onToggleOpen,
143
146
  dropdownRef: dropdownRef
144
147
  }));
@@ -12,6 +12,7 @@ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToAr
12
12
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
13
13
  import { useCallback, useMemo } from 'react';
14
14
  import { isDivideMenuItem, isHeaderMenuItem, isSubMenuItem } from "../../Menu";
15
+ import { toString } from "../utils/commonUtil";
15
16
  export default function useDisplayMenu(menu, filterOptions, innerSearchValue) {
16
17
  var items = menu.items;
17
18
  var filter = useCallback(function (inputValue, option) {
@@ -19,7 +20,7 @@ export default function useDisplayMenu(menu, filterOptions, innerSearchValue) {
19
20
  return filterOptions(inputValue, option);
20
21
  }
21
22
  var toBeSearched = option.label || option.value || '';
22
- return toBeSearched.toString().includes(inputValue);
23
+ return toString(toBeSearched).includes(inputValue);
23
24
  }, [filterOptions]);
24
25
  var findFilteredItems = useCallback(function (currentItems) {
25
26
  return currentItems.filter(function (item) {
@@ -5,7 +5,13 @@ export declare function isRawValue(value: DraftValueType): value is RawValueType
5
5
  * Parse `children` to `options` if `options` is not provided.
6
6
  * Then flatten the `options`.
7
7
  */
8
- export default function useOptions<OptionType extends DefaultOptionType>(menu?: SelectMenuProps, options?: OptionType[], value?: DraftValueType, optionLabelProp?: string): {
8
+ export default function useOptions<OptionType extends DefaultOptionType>({ menu, options, value, optionLabelProp, listHeight, }: {
9
+ menu?: SelectMenuProps;
10
+ options?: OptionType[];
11
+ value?: DraftValueType;
12
+ optionLabelProp?: string;
13
+ listHeight?: number;
14
+ }): {
9
15
  menu: SelectMenuProps;
10
16
  keyMenuItems: Map<string, SelectItemType>;
11
17
  labelMenuItems: Map<React.ReactNode, SelectMenuItemType>;
@@ -6,7 +6,7 @@ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input ==
6
6
  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); }
7
7
  import * as React from 'react';
8
8
  import { isDivideMenuItem, isHeaderMenuItem, isSubMenuItem } from "../../Menu";
9
- import { convertOptionsToMenu, toArray } from "../utils/commonUtil";
9
+ import { convertOptionsToMenu, toArray, toString } from "../utils/commonUtil";
10
10
  export function isRawValue(value) {
11
11
  return !value || _typeof(value) !== 'object';
12
12
  }
@@ -14,18 +14,23 @@ export function isRawValue(value) {
14
14
  * Parse `children` to `options` if `options` is not provided.
15
15
  * Then flatten the `options`.
16
16
  */
17
- export default function useOptions(menu, options, value, optionLabelProp) {
17
+ export default function useOptions(_ref) {
18
+ var menu = _ref.menu,
19
+ options = _ref.options,
20
+ value = _ref.value,
21
+ optionLabelProp = _ref.optionLabelProp,
22
+ listHeight = _ref.listHeight;
18
23
  return React.useMemo(function () {
19
24
  var selectedKeys = [];
20
25
  if (value) {
21
26
  var valueList = toArray(value);
22
27
  valueList.forEach(function (val) {
23
28
  if (isRawValue(val)) {
24
- selectedKeys.push(val.toString());
29
+ selectedKeys.push(toString(val));
25
30
  } else {
26
31
  var key = val.value;
27
32
  if (key) {
28
- selectedKeys.push(key.toString());
33
+ selectedKeys.push(toString(key));
29
34
  }
30
35
  }
31
36
  });
@@ -55,10 +60,15 @@ export default function useOptions(menu, options, value, optionLabelProp) {
55
60
  }
56
61
  }
57
62
  dig(mergedMenu.items || []);
63
+ if (listHeight) {
64
+ mergedMenu.menuStyle = {
65
+ maxHeight: listHeight
66
+ };
67
+ }
58
68
  return {
59
69
  menu: mergedMenu,
60
70
  keyMenuItems: keyMenuItems,
61
71
  labelMenuItems: labelMenuItems
62
72
  };
63
- }, [value, menu, options, optionLabelProp]);
73
+ }, [value, menu, options, optionLabelProp, listHeight]);
64
74
  }
@@ -23,6 +23,7 @@ import useCache from "./hooks/useCache";
23
23
  import BaseSelect, { isMultiple } from "./BaseSelect";
24
24
  import { injectPropsWithOption } from "./utils/valueUtil";
25
25
  import useDisplayMenu from "./hooks/useDisplayMenu";
26
+ import { toString } from "./utils/commonUtil";
26
27
  export default /*#__PURE__*/forwardRef(function AldSelect(props, ref) {
27
28
  var value = props.value,
28
29
  defaultValue = props.defaultValue,
@@ -35,7 +36,8 @@ export default /*#__PURE__*/forwardRef(function AldSelect(props, ref) {
35
36
  labelInValue = props.labelInValue,
36
37
  filterOption = props.filterOption,
37
38
  searchValue = props.searchValue,
38
- optionLabelProp = props.optionLabelProp;
39
+ optionLabelProp = props.optionLabelProp,
40
+ listHeight = props.listHeight;
39
41
 
40
42
  // =========================== Values ===========================
41
43
  var _useMergedState = useMergedState(defaultValue, {
@@ -44,7 +46,13 @@ export default /*#__PURE__*/forwardRef(function AldSelect(props, ref) {
44
46
  _useMergedState2 = _slicedToArray(_useMergedState, 2),
45
47
  internalValue = _useMergedState2[0],
46
48
  setInternalValue = _useMergedState2[1];
47
- var parsedOptions = useOptions(menu, options, internalValue);
49
+ var parsedOptions = useOptions({
50
+ menu: menu,
51
+ options: options,
52
+ value: internalValue,
53
+ optionLabelProp: optionLabelProp,
54
+ listHeight: listHeight
55
+ });
48
56
  var mergedMenu = parsedOptions.menu,
49
57
  keyMenuItems = parsedOptions.keyMenuItems;
50
58
  var multiple = mode && isMultiple(mode);
@@ -73,7 +81,7 @@ export default /*#__PURE__*/forwardRef(function AldSelect(props, ref) {
73
81
  // @ts-ignore val.key是为了兼容存在key的情况
74
82
  rawValue = (_ref = val.value) !== null && _ref !== void 0 ? _ref : val.key;
75
83
  }
76
- var menuItem = keyMenuItems.get(rawValue.toString());
84
+ var menuItem = keyMenuItems.get(toString(rawValue));
77
85
  if (menuItem) {
78
86
  // Fill missing props
79
87
  if (rawLabel === undefined) {
@@ -169,7 +177,7 @@ export default /*#__PURE__*/forwardRef(function AldSelect(props, ref) {
169
177
  // Used for OptionList selection
170
178
  var onOptionSelect = function onOptionSelect(val) {
171
179
  var selected = displayValues.find(function (item) {
172
- return item.value.toString() === val;
180
+ return toString(item.value) === toString(val);
173
181
  });
174
182
  if (isMultiple(mode)) {
175
183
  if (!selected) {
@@ -200,10 +208,10 @@ export default /*#__PURE__*/forwardRef(function AldSelect(props, ref) {
200
208
  var _mergedMenu$onClick;
201
209
  if (mode && isMultiple(mode)) {
202
210
  if (displayValues.find(function (item) {
203
- return item.value.toString() === menuInfo.key;
211
+ return toString(item.value) === menuInfo.key;
204
212
  })) {
205
213
  triggerChange(displayValues.filter(function (item) {
206
- return item.value.toString() !== menuInfo.key;
214
+ return toString(item.value) !== menuInfo.key;
207
215
  }).map(function (item) {
208
216
  return item.value;
209
217
  }));
@@ -119,14 +119,17 @@
119
119
  position: absolute;
120
120
  top: -1px;
121
121
  left: -1px;
122
- display: flex;
123
- gap: 4px;
124
- flex-wrap: wrap;
125
- align-items: flex-start;
126
122
  border-width: 1px;
127
123
  border-style: solid;
128
124
  background-color: #fff;
129
125
  z-index: 1;
126
+
127
+ .beta-ald-select-selector-multiple-responsive-selected-section-tags {
128
+ align-items: flex-start;
129
+ display: flex !important;
130
+ flex-wrap: wrap;
131
+ gap: 4px;
132
+ }
130
133
  }
131
134
  }
132
135
 
@@ -2,6 +2,7 @@
2
2
  import { DefaultOptionType, SelectMenuProps } from '../interface';
3
3
  export declare function toArray<T>(value: T | T[]): T[];
4
4
  export declare const isClient: false | HTMLElement;
5
+ export declare const toString: (value: any) => string;
5
6
  /** Is client side and not jsdom */
6
7
  export declare const isBrowserClient: false | HTMLElement;
7
8
  export declare function convertOptionsToMenu(options: DefaultOptionType[], selectedKeys: React.Key[]): SelectMenuProps;
@@ -4,6 +4,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
4
4
  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; }
5
5
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
6
6
  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); }
7
+ import _ from 'lodash';
7
8
  export function toArray(value) {
8
9
  if (Array.isArray(value)) {
9
10
  return value;
@@ -11,16 +12,17 @@ export function toArray(value) {
11
12
  return value !== undefined ? [value] : [];
12
13
  }
13
14
  export var isClient = typeof window !== 'undefined' && window.document && window.document.documentElement;
14
-
15
+ export var toString = function toString(value) {
16
+ return _.toString(value);
17
+ };
15
18
  /** Is client side and not jsdom */
16
19
  export var isBrowserClient = process.env.NODE_ENV !== 'test' && isClient;
17
20
  export function convertOptionsToMenu(options, selectedKeys) {
18
21
  return {
19
22
  items: options.map(function (option) {
20
- var _option$value;
21
23
  return _objectSpread(_objectSpread({}, option), {}, {
22
24
  label: option.label,
23
- key: ((_option$value = option.value) === null || _option$value === void 0 ? void 0 : _option$value.toString()) || '',
25
+ key: toString(option.value),
24
26
  disabled: option.disabled,
25
27
  onClick: option.onClick,
26
28
  className: option.className,
@@ -5,6 +5,6 @@ declare const DoubleCircleIcon: (props: {
5
5
  size?: number | undefined;
6
6
  innerColor?: string | undefined;
7
7
  children: React.ReactNode;
8
- type?: "success" | "error" | "info" | "warning" | undefined;
8
+ type?: "error" | "warning" | "success" | "info" | undefined;
9
9
  }) => React.JSX.Element;
10
10
  export default DoubleCircleIcon;
@@ -42,7 +42,8 @@ export default function Dropdown(props) {
42
42
  delay = _props$delay === void 0 ? 0 : _props$delay,
43
43
  _props$autoUpdatePos = props.autoUpdatePos,
44
44
  autoUpdatePos = _props$autoUpdatePos === void 0 ? false : _props$autoUpdatePos,
45
- initialFocus = props.initialFocus,
45
+ _props$initialFocus = props.initialFocus,
46
+ initialFocus = _props$initialFocus === void 0 ? -1 : _props$initialFocus,
46
47
  _props$popupMatchTrig = props.popupMatchTriggerWidth,
47
48
  popupMatchTriggerWidth = _props$popupMatchTrig === void 0 ? false : _props$popupMatchTrig;
48
49
  var _useState = useState(open || false),
@@ -18,7 +18,7 @@ interface IFormItemProps extends FormItemProps {
18
18
  declare const AldFormItem: {
19
19
  (props: IFormItemProps): React.JSX.Element;
20
20
  useStatus: () => {
21
- status?: "" | "success" | "error" | "warning" | "validating" | undefined;
21
+ status?: "" | "error" | "warning" | "success" | "validating" | undefined;
22
22
  errors: React.ReactNode[];
23
23
  warnings: React.ReactNode[];
24
24
  };
@@ -8,5 +8,6 @@ interface IProps {
8
8
  size?: 'small' | 'middle' | 'large';
9
9
  initWidth?: number;
10
10
  defaultValue?: string;
11
+ inputMode?: boolean;
11
12
  }
12
13
  export {};
@@ -17,6 +17,7 @@ import Input from "../Input";
17
17
  import { LocaleContext, getTranslator } from "../locale/default";
18
18
  var DEFAULT_WIDTH = 68;
19
19
  export default function InputSearch(props) {
20
+ var _classnames;
20
21
  var _useContext = useContext(LocaleContext),
21
22
  locale = _useContext.locale;
22
23
  var t = getTranslator(locale);
@@ -29,7 +30,9 @@ export default function InputSearch(props) {
29
30
  size = _props$size === void 0 ? 'small' : _props$size,
30
31
  _props$initWidth = props.initWidth,
31
32
  initWidth = _props$initWidth === void 0 ? DEFAULT_WIDTH : _props$initWidth,
32
- defaultValue = props.defaultValue;
33
+ defaultValue = props.defaultValue,
34
+ _props$inputMode = props.inputMode,
35
+ inputMode = _props$inputMode === void 0 ? false : _props$inputMode;
33
36
  var _useState = useState(defaultValue || ''),
34
37
  _useState2 = _slicedToArray(_useState, 2),
35
38
  searchValue = _useState2[0],
@@ -57,7 +60,7 @@ export default function InputSearch(props) {
57
60
  '--init-width': initWidth + 'px'
58
61
  }
59
62
  }, /*#__PURE__*/React.createElement(Input, {
60
- className: classnames(className, _defineProperty({}, 'input-search-has-value', searchValue.length !== 0)),
63
+ className: classnames(className, (_classnames = {}, _defineProperty(_classnames, 'input-search-has-value', searchValue.length !== 0 || inputMode), _defineProperty(_classnames, 'inputMode', inputMode), _classnames)),
61
64
  size: size,
62
65
  onChange: onChangeValue,
63
66
  onPressEnter: onPressEnter,
@@ -31,6 +31,10 @@
31
31
  transition: all 0.2s ease 0.1s !important;
32
32
  background-color: var(--alias-colors-bg-skeleton-subtler, #fff);
33
33
 
34
+ &.inputMode {
35
+ width: 100% !important;
36
+ }
37
+
34
38
  input {
35
39
  background-color: #fff;
36
40
  }
@@ -1,3 +1,4 @@
1
+ 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; } } }; }
1
2
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
3
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
4
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
@@ -6,7 +7,7 @@ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefine
6
7
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
8
  import classNames from 'classnames';
8
9
  import _ from 'lodash';
9
- import React, { useContext, useRef, useState } from 'react';
10
+ import React, { useCallback, useContext, useRef, useState } from 'react';
10
11
  import { DragPreviewImage, useDrag, useDrop } from 'react-dnd';
11
12
  import { EPutPosition } from "../..";
12
13
  import DragLightLine from "../../../Icon/components/DragLightLine";
@@ -144,16 +145,54 @@ export default function LogicItem(_ref) {
144
145
  drop = _useDrop2[1];
145
146
  drag(drop(ref));
146
147
  var isDragOver = isOver && canDrop && !isRoot;
147
- var firstRefCallback = function firstRefCallback(e) {
148
- if (e) {
149
- setFirstNodeHight(e.clientHeight);
150
- }
151
- };
152
- var lastRefCallback = function lastRefCallback(e) {
153
- if (e) {
154
- setLastNodeHight(e.clientHeight);
155
- }
156
- };
148
+ var firstRef = useCallback(function (node) {
149
+ if (!node) return;
150
+ var resizeObserver = new ResizeObserver(function (entries) {
151
+ var _iterator = _createForOfIteratorHelper(entries),
152
+ _step;
153
+ try {
154
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
155
+ var entry = _step.value;
156
+ var newHeight = entry.contentRect.height;
157
+ if (newHeight > 0) {
158
+ setFirstNodeHight(newHeight);
159
+ }
160
+ }
161
+ } catch (err) {
162
+ _iterator.e(err);
163
+ } finally {
164
+ _iterator.f();
165
+ }
166
+ });
167
+ resizeObserver.observe(node);
168
+ return function () {
169
+ resizeObserver.disconnect();
170
+ };
171
+ }, []);
172
+ var lastRef = useCallback(function (node) {
173
+ if (!node) return;
174
+ var resizeObserver = new ResizeObserver(function (entries) {
175
+ var _iterator2 = _createForOfIteratorHelper(entries),
176
+ _step2;
177
+ try {
178
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
179
+ var entry = _step2.value;
180
+ var newHeight = entry.contentRect.height;
181
+ if (newHeight > 0) {
182
+ setLastNodeHight(newHeight);
183
+ }
184
+ }
185
+ } catch (err) {
186
+ _iterator2.e(err);
187
+ } finally {
188
+ _iterator2.f();
189
+ }
190
+ });
191
+ resizeObserver.observe(node);
192
+ return function () {
193
+ resizeObserver.disconnect();
194
+ };
195
+ }, []);
157
196
  var onAddCondition = function onAddCondition() {
158
197
  var id = value.id;
159
198
  addCondition(id);
@@ -195,16 +234,16 @@ export default function LogicItem(_ref) {
195
234
  },
196
235
  ref: ref
197
236
  }, _.map(nodes, function (node, index) {
198
- var ref = null;
237
+ var heightRef = null;
199
238
  if (index === 0) {
200
- ref = firstRefCallback;
239
+ heightRef = firstRef;
201
240
  } else if (index === nodes.length - 1) {
202
- ref = lastRefCallback;
241
+ heightRef = lastRef;
203
242
  }
204
243
  return /*#__PURE__*/React.createElement("div", {
205
244
  className: "ald-logic-tree-node-wrap",
206
- ref: ref,
207
- key: node.id
245
+ key: node.id,
246
+ ref: heightRef
208
247
  }, /*#__PURE__*/React.createElement("div", {
209
248
  className: "ald-logic-tree-horizontal-line"
210
249
  }), /*#__PURE__*/React.createElement(LogicItem, {
@@ -4,6 +4,7 @@ export interface MenuProps {
4
4
  className?: string;
5
5
  items: MenuItemType[];
6
6
  selectedKeys?: string[];
7
+ menuStyle?: React.CSSProperties;
7
8
  }
8
9
  export default function Menu(props: MenuProps): React.JSX.Element;
9
10
  export declare function isHeaderMenuItem(menuItem: MenuItemType): menuItem is MenuHeaderType;