@antscorp/antsomi-ui 2.0.39 → 2.0.40

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.
@@ -43,7 +43,7 @@ const { t } = i18nInstance;
43
43
  const { Text } = Typography;
44
44
  export function MatchesAny(props) {
45
45
  // Props
46
- const { maxSelectedItem, maxLengthEachItem = 200, objectName, loading = false, showExtendValue = true, selectedItems: selectedItemsProp, items, groupSelectProps, renderExtraValues, customItemRenders, listEmptyProps, selectedListEmptyProps, selectedTreeData: selectedTreeDataProp, searchValue = '', isExternalSearch, onApply = () => { }, onCancel = () => { }, onLoadMore = () => { }, onChangeSearch, ...restOfProps } = props;
46
+ const { maxSelectedItem, maxLengthEachItem, objectName, loading = false, showExtendValue = true, selectedItems: selectedItemsProp, items, groupSelectProps, renderExtraValues, customItemRenders, listEmptyProps, selectedListEmptyProps, selectedTreeData: selectedTreeDataProp, searchValue = '', isExternalSearch, onApply = () => { }, onCancel = () => { }, onLoadMore = () => { }, onChangeSearch, ...restOfProps } = props;
47
47
  // State
48
48
  const [state, setState] = useState(matchesAnyInitialState);
49
49
  const [maxItemsError, setMaxItemsError] = useState(false);
@@ -55,7 +55,9 @@ export function MatchesAny(props) {
55
55
  const { description: selectedListEmptyDescription = t(translations.global.selectItemsFromList).toString(), icon: selectedListEmptyIcon = _jsx(DataIcon, { color: globalToken?.bw5, size: 48 }), ...restSelectedListEmptyProps } = selectedListEmptyProps || {};
56
56
  useDeepCompareEffect(() => {
57
57
  const isOverMaxSelected = maxSelectedItem && selectedItems && selectedItems.length > maxSelectedItem;
58
- const isSomeTextTooLong = selectedItems && selectedItems.some(item => item.key?.toString().length > maxLengthEachItem);
58
+ const isSomeTextTooLong = maxLengthEachItem
59
+ ? selectedItems && selectedItems.some(item => item.key?.toString().length > maxLengthEachItem)
60
+ : false;
59
61
  setMaxItemsError(!!isOverMaxSelected);
60
62
  setItemOverMaxLength(!!isSomeTextTooLong);
61
63
  if (isApply && !isOverMaxSelected && !isSomeTextTooLong)
@@ -183,7 +185,7 @@ export function MatchesAny(props) {
183
185
  };
184
186
  const handleClickRemoveInvalid = () => {
185
187
  selectedItems?.forEach(item => {
186
- if (item.key?.toString().length > maxLengthEachItem) {
188
+ if (maxLengthEachItem && item.key?.toString().length > maxLengthEachItem) {
187
189
  onRemoveItem(item);
188
190
  }
189
191
  });
@@ -205,6 +207,7 @@ export function MatchesAny(props) {
205
207
  : extraValue.render
206
208
  : item[extraValue.key] }) }, `${extraValue.key}`))) }))] }), _jsxs(Flex, { align: "center", gap: 10, children: [mode === 'select' && renderItemError(item), mode === 'select' &&
207
209
  item.key?.toString().length &&
210
+ maxLengthEachItem &&
208
211
  item.key?.toString().length > maxLengthEachItem && _jsx(ErrorIcon, { size: 16 }), isExtendValue && (_jsx(Icon, { type: "icon-ants-empty-flag", size: 20, color: globalToken?.colorPrimary })), _jsx(ActionButton, { className: "select-button", align: "center", justify: "center", onClick: () => {
209
212
  // Call onSelectItem function if provided
210
213
  if (onSelectItem) {
@@ -215,7 +218,7 @@ export function MatchesAny(props) {
215
218
  onRemoveItem(item);
216
219
  }
217
220
  }, children: _jsx(Icon, { type: `icon-ants-${onSelectItem ? 'double-arrow-up' : 'remove-slim'}`, size: 11 }) })] })] }));
218
- }, [customItemRenders, renderExtraValues, itemOverMaxLength, renderItemError]);
221
+ }, [renderExtraValues, customItemRenders, maxLengthEachItem, renderItemError]);
219
222
  // Memos
220
223
  const { treeData } = useDeepCompareMemo(() => {
221
224
  const { results, matchedParents } = recursiveSearchItems({
@@ -376,7 +379,7 @@ export function MatchesAny(props) {
376
379
  return (_jsx(ConfigProvider, { theme: MATCHES_ANY_THEME, children: _jsxs(MatchesAnyWrapper, { ...restOfProps, vertical: true, justify: "space-between", children: [_jsxs(Flex, { style: { width: '100%', height: '100%' }, children: [renderSelectList(), renderSelectedList()] }), _jsxs(Flex, { className: "matches-any__footer", align: "center", justify: "space-between", children: [_jsxs(Flex, { align: "center", gap: 10, children: [_jsx(Button, { type: "primary", disabled: isDisableApply, onClick: onClickApply, children: translate(translationsLocale._ACT_APPLY) }), _jsx(Button, { onClick: () => onCancel(), children: translate(translationsLocale._ACT_CANCEL) }), isApply && (maxItemsError || itemOverMaxLength) && (_jsxs(_Fragment, { children: [_jsx(Typography, { style: { color: globalToken?.colorError }, children: translate(translationsLocale._OPERATOR_MATCH_ANY_EX_VALUE_LIMIT) }), itemOverMaxLength && (_jsx(Button, { type: "text", onClick: handleClickRemoveInvalid, children: translate(translationsLocale._OPERATOR_MATCH_ANY_EX_VALUE_LIMIT_REMOVE_INV) }))] }))] }), showExtendValue && (_jsx(ExtendValuePopup, { getPopupContainer: trigger => trigger.parentElement || document.body, onApply: onApplyExtendValue, children: _jsx(Button, { icon: _jsx(Icon, { type: "icon-ants-empty-flag" }), children: t(translations.extendValue.title).toString() }) }))] })] }) }));
377
380
  }
378
381
  export function MatchesAnySelect(props) {
379
- const { maxSelectedItem, maxLengthEachItem = 200, placeholder = 'Select an item', dropdownStyle, objectName, selectedItems, items, loading, popupClassName, groupSelectProps, renderExtraValues, customItemRenders, popoverProps, listEmptyProps, selectedListEmptyProps, selectedTreeData, error, onChangeSearch, onChange = () => { }, onLoadMore, ...restProps } = props;
382
+ const { maxSelectedItem, maxLengthEachItem, placeholder = 'Select an item', dropdownStyle, objectName, selectedItems, items, loading, popupClassName, groupSelectProps, renderExtraValues, customItemRenders, popoverProps, listEmptyProps, selectedListEmptyProps, selectedTreeData, error, onChangeSearch, onChange = () => { }, onLoadMore, ...restProps } = props;
380
383
  // State
381
384
  const [state, setState] = useState(initialState);
382
385
  // Variables
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antscorp/antsomi-ui",
3
- "version": "2.0.39",
3
+ "version": "2.0.40",
4
4
  "description": "An enterprise-class UI design language and React UI library.",
5
5
  "sideEffects": [
6
6
  "dist/*",
@@ -251,4 +251,4 @@
251
251
  "react-dom": ">=16.9.0",
252
252
  "react-router-dom": ">= 5.1.0"
253
253
  }
254
- }
254
+ }