@majoo-ui/react 1.61.20-rc.4 → 1.61.20-rc.5

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 (2) hide show
  1. package/index.esm.js +184 -103
  2. package/package.json +1 -1
package/index.esm.js CHANGED
@@ -14187,6 +14187,12 @@ function OptionGroupItem({
14187
14187
 
14188
14188
  const _excluded$d = ["placeholder", "option", "value", "defaultValue", "size", "disabled", "onChange", "search", "readOnly", "placement", "disabledOptions", "textEmptyItem", "onRemoveItem", "isInvalid", "sortBy", "showSelectAll", "showTagSelectAll", "selectAllLabel", "showSelectedTag", "unremovableTags", "helperText", "css", "showCounter", "labelCounter", "collapsible", "toggleInput", "fetchData", "onSearch", "isLoading", "maxSelectedItem", "mobileOnly", "desktopOnly", "label", "tagCss", "checkBoxCss", "optionListCss", "showCollapsibleCounter", "collapsibleLimit", "pageIndex", "onSelectAllChecked", "totalOptions", "clearSearchOnSelect", "onItemClick", "virtualized", "virtualizedThreshold"];
14189
14189
  var _jsxFileName$x = "/home/alfiantryp/Project/majoo-ui/packages/react/src/components/form/components/InputSelectCheck/InputSelectCheck.js";
14190
+
14191
+ // Polyfill for startTransition (React 17 compatibility)
14192
+ const startTransition = React__default.startTransition || (callback => {
14193
+ // For React 17, use setTimeout to defer updates
14194
+ setTimeout(callback, 0);
14195
+ });
14190
14196
  const Wrapper$1 = styled('div', {
14191
14197
  margin: 0,
14192
14198
  flexDirection: 'column',
@@ -14442,7 +14448,7 @@ const IndeterminateFilled$1 = styled('div', {
14442
14448
  alignItems: 'center'
14443
14449
  });
14444
14450
  const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14445
- var _initItem$reduce, _ref2, _selectedItems$filter, _selectedItems$filter2, _selectedItems$filter3;
14451
+ var _ref2, _selectedItems$filter, _selectedItems$filter2, _selectedItems$filter3;
14446
14452
  let {
14447
14453
  placeholder,
14448
14454
  option,
@@ -14506,6 +14512,9 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14506
14512
  const scrollerRef = React__default.useRef(null);
14507
14513
  const isShowSelectAll = showSelectAll && !maxSelectedItem;
14508
14514
 
14515
+ // Use Set for O(1) lookup performance with large datasets
14516
+ const selectedValueSet = useMemo(() => new Set(selectedValue), [selectedValue]);
14517
+
14509
14518
  // Calculate total item count efficiently without creating full array
14510
14519
  const totalItemCount = useMemo(() => {
14511
14520
  return items.reduce((count, item) => {
@@ -14516,6 +14525,25 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14516
14525
  }, 0);
14517
14526
  }, [items]);
14518
14527
 
14528
+ // Batched onChange to prevent multiple rapid calls
14529
+ const onChangeTimeoutRef = useRef(null);
14530
+ const batchedOnChange = useCallback(values => {
14531
+ // Clear any pending onChange calls
14532
+ if (onChangeTimeoutRef.current) {
14533
+ clearTimeout(onChangeTimeoutRef.current);
14534
+ }
14535
+
14536
+ // For large datasets, batch the onChange call to prevent freezing
14537
+ if (totalItemCount > 10000) {
14538
+ onChangeTimeoutRef.current = setTimeout(() => {
14539
+ onChange == null || onChange(values);
14540
+ }, 0);
14541
+ } else {
14542
+ // For smaller datasets, call immediately
14543
+ onChange == null || onChange(values);
14544
+ }
14545
+ }, [onChange, totalItemCount]);
14546
+
14519
14547
  // Determine if virtualization should be enabled
14520
14548
  const shouldVirtualize = virtualized && totalItemCount >= virtualizedThreshold;
14521
14549
 
@@ -14612,6 +14640,23 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14612
14640
  return [...res, ...filterOption]; // add the missing elements
14613
14641
  }
14614
14642
  }, []) : option;
14643
+
14644
+ // Memoize selected items to prevent expensive recalculation on every render
14645
+ const memoizedSelectedItems = useMemo(() => {
14646
+ var _initItem$reduce;
14647
+ if (selectedValue.length === 0) return [];
14648
+
14649
+ // For very large datasets, skip the expensive flatten and filter
14650
+ if ((initItem == null ? void 0 : initItem.length) > 10000) {
14651
+ // Just return a minimal representation for useMultipleSelection
14652
+ return selectedValue.map(id => ({
14653
+ id
14654
+ }));
14655
+ }
14656
+
14657
+ // For smaller datasets, do the full flatten and filter
14658
+ return (initItem == null || (_initItem$reduce = initItem.reduce((acc, item) => [...acc, item, ...(item.children ? item.children : [])], [])) == null ? void 0 : _initItem$reduce.filter(item => selectedValueSet.has(item.id))) || [];
14659
+ }, [selectedValue, initItem, selectedValueSet]);
14615
14660
  const {
14616
14661
  getSelectedItemProps,
14617
14662
  getDropdownProps,
@@ -14619,7 +14664,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14619
14664
  removeSelectedItem,
14620
14665
  selectedItems
14621
14666
  } = useMultipleSelection({
14622
- selectedItems: selectedValue.length > 0 ? initItem == null || (_initItem$reduce = initItem.reduce((acc, item) => [...acc, item, ...(item.children ? item.children : [])], [])) == null ? void 0 : _initItem$reduce.filter(item => selectedValue.includes(item.id)) : []
14667
+ selectedItems: memoizedSelectedItems
14623
14668
  });
14624
14669
  const generateOptions = data => {
14625
14670
  return data.map(option => {
@@ -14684,7 +14729,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14684
14729
  if ((selected == null ? void 0 : selected.id) === 'counter') {
14685
14730
  setSelectedValue([]);
14686
14731
  setInputSelectValue([]);
14687
- onChange == null || onChange([]);
14732
+ batchedOnChange([]);
14688
14733
  for (let i = 0; i < selectedValue.length; i++) {
14689
14734
  removeSelectedItem(selectedValue[i]);
14690
14735
  }
@@ -14694,7 +14739,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14694
14739
  setSelectedValue(filterItems);
14695
14740
  setInputSelectValue(filterItems);
14696
14741
  if (selected.id !== '!all') {
14697
- onChange == null || onChange(filterItems);
14742
+ batchedOnChange(filterItems);
14698
14743
  }
14699
14744
  }
14700
14745
  }
@@ -14702,14 +14747,20 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14702
14747
 
14703
14748
  // Memoize flattened items for useCombobox to prevent recalculation on every render
14704
14749
  const flattenedItemsForCombobox = useMemo(() => {
14705
- // For very large datasets, limit the flattened array to improve performance
14706
- // useCombobox needs this for keyboard navigation, but we can optimize it
14707
- if (totalItemCount > 10000) {
14708
- // For huge datasets, only flatten what's visible or searched
14709
- return items.slice(0, 100).reduce((acc, item) => [...acc, item, ...(item.children ? item.children : [])], []);
14750
+ // We need all items for selection to work properly, even for large datasets
14751
+ // Optimize by using for loops instead of reduce/spread for better performance
14752
+ const result = [];
14753
+ for (let i = 0; i < items.length; i++) {
14754
+ const item = items[i];
14755
+ result.push(item);
14756
+ if (item.children) {
14757
+ for (let j = 0; j < item.children.length; j++) {
14758
+ result.push(item.children[j]);
14759
+ }
14760
+ }
14710
14761
  }
14711
- return items.reduce((acc, item) => [...acc, item, ...(item.children ? item.children : [])], []);
14712
- }, [items, totalItemCount]);
14762
+ return result;
14763
+ }, [items]);
14713
14764
  const {
14714
14765
  getToggleButtonProps,
14715
14766
  getMenuProps,
@@ -14755,9 +14806,13 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14755
14806
  removeSelectedItem(item);
14756
14807
  }
14757
14808
  });
14758
- setSelectedValue([]);
14759
- setInputSelectValue([]);
14760
- onChange == null || onChange([]);
14809
+
14810
+ // Use startTransition for non-urgent state updates
14811
+ startTransition(() => {
14812
+ setSelectedValue([]);
14813
+ setInputSelectValue([]);
14814
+ });
14815
+ batchedOnChange([]);
14761
14816
  } else {
14762
14817
  removeItem(selectedItem);
14763
14818
  }
@@ -14765,27 +14820,34 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14765
14820
  }
14766
14821
  } else {
14767
14822
  if (selectedItem.id === '!all') {
14823
+ // Optimized select all - batch operations instead of individual calls
14768
14824
  const itemIds = [];
14825
+ const itemsToAdd = [];
14769
14826
  items.filter(item => !item.isDisabled).forEach(item => {
14770
14827
  var _item$children3;
14771
14828
  if (item != null && (_item$children3 = item.children) != null && _item$children3.length) {
14772
- var _item$children4;
14773
- item == null || (_item$children4 = item.children) == null || _item$children4.filter(item => !item.isDisabled).forEach(item => {
14774
- addSelectedItem(item);
14775
- itemIds.push(item.id);
14829
+ item.children.filter(child => !child.isDisabled).forEach(child => {
14830
+ itemsToAdd.push(child);
14831
+ itemIds.push(child.id);
14776
14832
  });
14777
14833
  } else {
14778
- addSelectedItem(item);
14834
+ itemsToAdd.push(item);
14779
14835
  itemIds.push(item.id);
14780
14836
  }
14781
14837
  });
14782
- setSelectedValue(itemIds);
14783
- setInputSelectValue(itemIds);
14784
- // onChange?.(itemIds.slice(1).filter(id => !items.find(item => item.id === id)?.children?.length));
14838
+
14839
+ // Batch add all items at once instead of one by one
14840
+ itemsToAdd.forEach(item => addSelectedItem(item));
14841
+
14842
+ // Use startTransition for non-urgent state updates
14843
+ startTransition(() => {
14844
+ setSelectedValue(itemIds);
14845
+ setInputSelectValue(itemIds);
14846
+ });
14785
14847
  if (onSelectAllChecked) {
14786
14848
  onSelectAllChecked(itemIds.slice(1));
14787
14849
  } else {
14788
- onChange == null || onChange(itemIds.slice(1));
14850
+ batchedOnChange(itemIds.slice(1));
14789
14851
  }
14790
14852
  } else {
14791
14853
  var _selectedItem$childre;
@@ -14794,34 +14856,48 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14794
14856
  var _selectedItem$childre2;
14795
14857
  const itemIdsSelect = [];
14796
14858
  const itemIdsUnSelect = [];
14859
+ const itemsToAdd = [];
14860
+ const itemsToRemove = [];
14797
14861
  selectedItem == null || (_selectedItem$childre2 = selectedItem.children) == null || _selectedItem$childre2.filter(item => !item.isDisabled).forEach(item => {
14798
- if (selectedValue != null && selectedValue.includes(item.id)) {
14799
- removeSelectedItem(item);
14862
+ if (selectedValueSet.has(item.id)) {
14863
+ itemsToRemove.push(item);
14800
14864
  itemIdsUnSelect.push(item.id);
14801
14865
  } else {
14802
- addSelectedItem(item);
14866
+ itemsToAdd.push(item);
14803
14867
  itemIdsSelect.push(item.id);
14804
14868
  }
14805
14869
  });
14806
14870
 
14871
+ // Batch add/remove operations
14872
+ itemsToAdd.forEach(item => addSelectedItem(item));
14873
+ itemsToRemove.forEach(item => removeSelectedItem(item));
14874
+
14807
14875
  //select all child in one of the option groups
14808
14876
  if (itemIdsSelect.length) {
14809
- setSelectedValue([...selectedValue, ...itemIdsSelect]);
14810
- setInputSelectValue([...selectedValue, ...itemIdsSelect]);
14811
- const _filteredSelectedValues = selectedValue.filter(val => val !== '!all');
14812
- onChange == null || onChange([..._filteredSelectedValues, ...itemIdsSelect]);
14877
+ const _newSelectedValue = [...selectedValue, ...itemIdsSelect];
14878
+
14879
+ // Use startTransition for non-urgent updates
14880
+ startTransition(() => {
14881
+ setSelectedValue(_newSelectedValue);
14882
+ setInputSelectValue(_newSelectedValue);
14883
+ });
14884
+ const _filteredSelectedValues = _newSelectedValue.filter(val => val !== '!all');
14885
+ batchedOnChange(_filteredSelectedValues);
14813
14886
  }
14814
14887
 
14815
14888
  //unselect all child in one of the option groups
14816
14889
  if (itemIdsUnSelect.length) {
14817
- const newSelectedValue = selectedValue.filter(selId => {
14818
- var _itemIdsUnSelect$filt;
14819
- return ((_itemIdsUnSelect$filt = itemIdsUnSelect.filter(unselId => unselId === selId && unselId)) == null ? void 0 : _itemIdsUnSelect$filt[0]) !== selId && selId;
14890
+ // Use Set for O(1) lookup instead of nested filter
14891
+ const unSelectSet = new Set(itemIdsUnSelect);
14892
+ const _newSelectedValue2 = selectedValue.filter(selId => !unSelectSet.has(selId) && selId);
14893
+
14894
+ // Use startTransition for non-urgent updates
14895
+ startTransition(() => {
14896
+ setSelectedValue(_newSelectedValue2);
14897
+ setInputSelectValue(_newSelectedValue2);
14820
14898
  });
14821
- setSelectedValue(newSelectedValue);
14822
- setInputSelectValue(newSelectedValue);
14823
- const _filteredSelectedValues2 = newSelectedValue.filter(val => val !== '!all');
14824
- onChange == null || onChange(_filteredSelectedValues2);
14899
+ const _filteredSelectedValues2 = _newSelectedValue2.filter(val => val !== '!all');
14900
+ batchedOnChange(_filteredSelectedValues2);
14825
14901
  }
14826
14902
  return;
14827
14903
  }
@@ -14835,10 +14911,15 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14835
14911
  //end check the child from one of the option groups
14836
14912
 
14837
14913
  addSelectedItem(selectedItem);
14838
- setSelectedValue([...selectedValue, selectedItem.id]);
14839
- setInputSelectValue([...selectedValue, selectedItem.id]);
14914
+ const newSelectedValue = [...selectedValue, selectedItem.id];
14915
+
14916
+ // Use startTransition for non-urgent updates
14917
+ startTransition(() => {
14918
+ setSelectedValue(newSelectedValue);
14919
+ setInputSelectValue(newSelectedValue);
14920
+ });
14840
14921
  const filteredSelectedValues = selectedValue.filter(val => val !== '!all');
14841
- onChange == null || onChange([...filteredSelectedValues, selectedItem.id]);
14922
+ batchedOnChange([...filteredSelectedValues, selectedItem.id]);
14842
14923
  }
14843
14924
  selectItem(null);
14844
14925
  }
@@ -14991,7 +15072,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14991
15072
  }
14992
15073
  onItemClick({
14993
15074
  item,
14994
- isSelected: !selectedValue.includes(item.id)
15075
+ isSelected: !selectedValueSet.has(item.id)
14995
15076
  });
14996
15077
  },
14997
15078
  css: {
@@ -15003,7 +15084,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15003
15084
  __self: undefined,
15004
15085
  __source: {
15005
15086
  fileName: _jsxFileName$x,
15006
- lineNumber: 866,
15087
+ lineNumber: 951,
15007
15088
  columnNumber: 9
15008
15089
  }
15009
15090
  }), /*#__PURE__*/React__default.createElement(IconWrapper, {
@@ -15017,7 +15098,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15017
15098
  __self: undefined,
15018
15099
  __source: {
15019
15100
  fileName: _jsxFileName$x,
15020
- lineNumber: 885,
15101
+ lineNumber: 970,
15021
15102
  columnNumber: 11
15022
15103
  }
15023
15104
  }, !(item != null && item.hideCheck) && (item.isDisabled ? /*#__PURE__*/React__default.createElement(CheckOutline, {
@@ -15025,29 +15106,29 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15025
15106
  __self: undefined,
15026
15107
  __source: {
15027
15108
  fileName: _jsxFileName$x,
15028
- lineNumber: 897,
15109
+ lineNumber: 982,
15029
15110
  columnNumber: 17
15030
15111
  }
15031
- }) : selectedValue.includes(item.id) && (item.isDisabled === false || item.isDisabled === undefined) && /*#__PURE__*/React__default.createElement(CheckOutline, {
15112
+ }) : selectedValueSet.has(item.id) && (item.isDisabled === false || item.isDisabled === undefined) && /*#__PURE__*/React__default.createElement(CheckOutline, {
15032
15113
  color: colors$7.iconGreen,
15033
15114
  __self: undefined,
15034
15115
  __source: {
15035
15116
  fileName: _jsxFileName$x,
15036
- lineNumber: 901,
15117
+ lineNumber: 986,
15037
15118
  columnNumber: 19
15038
15119
  }
15039
15120
  })), isShowSelectAll && (item == null ? void 0 : item.id) === '!all' && selectedValue != null && selectedValue.length && (selectedValue == null ? void 0 : selectedValue.length) < itemsLength ? /*#__PURE__*/React__default.createElement(IndeterminateFilled$1, {
15040
15121
  __self: undefined,
15041
15122
  __source: {
15042
15123
  fileName: _jsxFileName$x,
15043
- lineNumber: 905,
15124
+ lineNumber: 990,
15044
15125
  columnNumber: 15
15045
15126
  }
15046
15127
  }, "-") : /*#__PURE__*/React__default.createElement("div", {
15047
15128
  __self: undefined,
15048
15129
  __source: {
15049
15130
  fileName: _jsxFileName$x,
15050
- lineNumber: 907,
15131
+ lineNumber: 992,
15051
15132
  columnNumber: 15
15052
15133
  }
15053
15134
  })), /*#__PURE__*/React__default.createElement(Item$2, {
@@ -15058,18 +15139,18 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15058
15139
  __self: undefined,
15059
15140
  __source: {
15060
15141
  fileName: _jsxFileName$x,
15061
- lineNumber: 910,
15142
+ lineNumber: 995,
15062
15143
  columnNumber: 11
15063
15144
  }
15064
15145
  }, item.render ? item.render == null ? void 0 : item.render(item.name) : item.name));
15065
15146
  };
15066
15147
  let lastGroupIndex = showSelectAll ? 1 : 0;
15067
15148
  const renderOptionGroupItem = (item, index) => {
15068
- var _item$children5, _item$children6, _item$children7, _item$children8;
15149
+ var _item$children4, _item$children5, _item$children6, _item$children7;
15069
15150
  // const groupIndex = (index > (showSelectAll ? 1 : 0)) ? lastGroupIndex : 0;
15070
15151
  const groupIndex = lastGroupIndex;
15071
- lastGroupIndex += ((item == null || (_item$children5 = item.children) == null ? void 0 : _item$children5.length) || 0) + 1;
15072
- const filterSelectedChild = item == null || (_item$children6 = item.children) == null ? void 0 : _item$children6.filter(e => selectedValue.includes(e.id) && !e.isDisabled);
15152
+ lastGroupIndex += ((item == null || (_item$children4 = item.children) == null ? void 0 : _item$children4.length) || 0) + 1;
15153
+ const filterSelectedChild = item == null || (_item$children5 = item.children) == null ? void 0 : _item$children5.filter(e => selectedValueSet.has(e.id) && !e.isDisabled);
15073
15154
  return /*#__PURE__*/React__default.createElement(OptionGroupItem, {
15074
15155
  item: /*#__PURE__*/React__default.createElement(ItemWrapper$1, _extends({
15075
15156
  key: item.id
@@ -15086,7 +15167,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15086
15167
  __self: undefined,
15087
15168
  __source: {
15088
15169
  fileName: _jsxFileName$x,
15089
- lineNumber: 926,
15170
+ lineNumber: 1011,
15090
15171
  columnNumber: 13
15091
15172
  }
15092
15173
  }), /*#__PURE__*/React__default.createElement(IconWrapper, {
@@ -15099,7 +15180,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15099
15180
  __self: undefined,
15100
15181
  __source: {
15101
15182
  fileName: _jsxFileName$x,
15102
- lineNumber: 939,
15183
+ lineNumber: 1024,
15103
15184
  columnNumber: 15
15104
15185
  }
15105
15186
  }, !(item != null && item.hideCheck) && item.isDisabled ? /*#__PURE__*/React__default.createElement(CheckOutline, {
@@ -15107,22 +15188,22 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15107
15188
  __self: undefined,
15108
15189
  __source: {
15109
15190
  fileName: _jsxFileName$x,
15110
- lineNumber: 949,
15191
+ lineNumber: 1034,
15111
15192
  columnNumber: 19
15112
15193
  }
15113
- }) : (filterSelectedChild == null ? void 0 : filterSelectedChild.length) === (item == null || (_item$children7 = item.children) == null || (_item$children7 = _item$children7.filter(e => !e.isDisabled)) == null ? void 0 : _item$children7.length) ? /*#__PURE__*/React__default.createElement(CheckOutline, {
15194
+ }) : (filterSelectedChild == null ? void 0 : filterSelectedChild.length) === (item == null || (_item$children6 = item.children) == null || (_item$children6 = _item$children6.filter(e => !e.isDisabled)) == null ? void 0 : _item$children6.length) ? /*#__PURE__*/React__default.createElement(CheckOutline, {
15114
15195
  color: colors$7.iconGreen,
15115
15196
  __self: undefined,
15116
15197
  __source: {
15117
15198
  fileName: _jsxFileName$x,
15118
- lineNumber: 951,
15199
+ lineNumber: 1036,
15119
15200
  columnNumber: 19
15120
15201
  }
15121
15202
  }) : (filterSelectedChild == null ? void 0 : filterSelectedChild.length) > 0 ? /*#__PURE__*/React__default.createElement(IndeterminateFilled$1, {
15122
15203
  __self: undefined,
15123
15204
  __source: {
15124
15205
  fileName: _jsxFileName$x,
15125
- lineNumber: 953,
15206
+ lineNumber: 1038,
15126
15207
  columnNumber: 19
15127
15208
  }
15128
15209
  }, "-") : null), /*#__PURE__*/React__default.createElement(Item$2, {
@@ -15133,17 +15214,17 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15133
15214
  __self: undefined,
15134
15215
  __source: {
15135
15216
  fileName: _jsxFileName$x,
15136
- lineNumber: 956,
15217
+ lineNumber: 1041,
15137
15218
  columnNumber: 15
15138
15219
  }
15139
15220
  }, item.render ? item.render == null ? void 0 : item.render(item.name) : item.name)),
15140
15221
  __self: undefined,
15141
15222
  __source: {
15142
15223
  fileName: _jsxFileName$x,
15143
- lineNumber: 924,
15224
+ lineNumber: 1009,
15144
15225
  columnNumber: 9
15145
15226
  }
15146
- }, item == null || (_item$children8 = item.children) == null ? void 0 : _item$children8.map((optItem, optIndex) => renderOptionItem(optItem, groupIndex + optIndex + 1, true)));
15227
+ }, item == null || (_item$children7 = item.children) == null ? void 0 : _item$children7.map((optItem, optIndex) => renderOptionItem(optItem, groupIndex + optIndex + 1, true)));
15147
15228
  };
15148
15229
  return /*#__PURE__*/React__default.createElement(Wrapper$1, _extends({
15149
15230
  css: css
@@ -15153,7 +15234,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15153
15234
  __self: undefined,
15154
15235
  __source: {
15155
15236
  fileName: _jsxFileName$x,
15156
- lineNumber: 968,
15237
+ lineNumber: 1053,
15157
15238
  columnNumber: 7
15158
15239
  }
15159
15240
  }), /*#__PURE__*/React__default.createElement(Select, {
@@ -15163,7 +15244,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15163
15244
  __self: undefined,
15164
15245
  __source: {
15165
15246
  fileName: _jsxFileName$x,
15166
- lineNumber: 969,
15247
+ lineNumber: 1054,
15167
15248
  columnNumber: 9
15168
15249
  }
15169
15250
  }, /*#__PURE__*/React__default.createElement(InputWrapper$1, _extends({}, getComboboxProps(getDropdownProps({
@@ -15178,7 +15259,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15178
15259
  __self: undefined,
15179
15260
  __source: {
15180
15261
  fileName: _jsxFileName$x,
15181
- lineNumber: 970,
15262
+ lineNumber: 1055,
15182
15263
  columnNumber: 11
15183
15264
  }
15184
15265
  }), /*#__PURE__*/React__default.createElement(Input$6, _extends({}, getInputProps({
@@ -15196,7 +15277,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15196
15277
  __self: undefined,
15197
15278
  __source: {
15198
15279
  fileName: _jsxFileName$x,
15199
- lineNumber: 980,
15280
+ lineNumber: 1065,
15200
15281
  columnNumber: 13
15201
15282
  }
15202
15283
  })), /*#__PURE__*/React__default.createElement(Button$2, _extends({}, getToggleButtonProps({
@@ -15210,7 +15291,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15210
15291
  __self: undefined,
15211
15292
  __source: {
15212
15293
  fileName: _jsxFileName$x,
15213
- lineNumber: 987,
15294
+ lineNumber: 1072,
15214
15295
  columnNumber: 13
15215
15296
  }
15216
15297
  }), (_ref2 = label != null ? label : placeholder) != null ? _ref2 : t('placeholder', 'Pilih Item'))), /*#__PURE__*/React__default.createElement(IconWrapper, _extends({}, getToggleButtonProps({
@@ -15221,7 +15302,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15221
15302
  __self: undefined,
15222
15303
  __source: {
15223
15304
  fileName: _jsxFileName$x,
15224
- lineNumber: 998,
15305
+ lineNumber: 1083,
15225
15306
  columnNumber: 11
15226
15307
  }
15227
15308
  }), /*#__PURE__*/React__default.createElement(IconCaretDown, {
@@ -15229,7 +15310,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15229
15310
  __self: undefined,
15230
15311
  __source: {
15231
15312
  fileName: _jsxFileName$x,
15232
- lineNumber: 1003,
15313
+ lineNumber: 1088,
15233
15314
  columnNumber: 13
15234
15315
  }
15235
15316
  }))), helperText && /*#__PURE__*/React__default.createElement(Paragraph, {
@@ -15242,7 +15323,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15242
15323
  __self: undefined,
15243
15324
  __source: {
15244
15325
  fileName: _jsxFileName$x,
15245
- lineNumber: 1007,
15326
+ lineNumber: 1092,
15246
15327
  columnNumber: 11
15247
15328
  }
15248
15329
  }, helperText), showSelectedTag && !showCounter && selectedItems.length !== 0 && /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(TagWrapper$2, {
@@ -15250,7 +15331,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15250
15331
  __self: undefined,
15251
15332
  __source: {
15252
15333
  fileName: _jsxFileName$x,
15253
- lineNumber: 1013,
15334
+ lineNumber: 1098,
15254
15335
  columnNumber: 13
15255
15336
  }
15256
15337
  }, isShowTagSelectAll ? /*#__PURE__*/React__default.createElement(Tag, _extends({
@@ -15271,7 +15352,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15271
15352
  __self: undefined,
15272
15353
  __source: {
15273
15354
  fileName: _jsxFileName$x,
15274
- lineNumber: 1015,
15355
+ lineNumber: 1100,
15275
15356
  columnNumber: 17
15276
15357
  }
15277
15358
  }), selectAllLabel != null ? selectAllLabel : t('selectAllLabelText', 'Pilih Semua')) : selectedItems == null || (_selectedItems$filter = selectedItems.filter(item => (item == null ? void 0 : item.id) !== '!all')) == null || (_selectedItems$filter = _selectedItems$filter.filter((_, idx) => {
@@ -15302,7 +15383,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15302
15383
  __self: undefined,
15303
15384
  __source: {
15304
15385
  fileName: _jsxFileName$x,
15305
- lineNumber: 1044,
15386
+ lineNumber: 1129,
15306
15387
  columnNumber: 21
15307
15388
  }
15308
15389
  }), selectedItem.name))), collapsible && !isShowTagSelectAll && (selectedItems == null ? void 0 : selectedItems.length) > collapsibleLimit && /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -15311,7 +15392,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15311
15392
  __self: undefined,
15312
15393
  __source: {
15313
15394
  fileName: _jsxFileName$x,
15314
- lineNumber: 1067,
15395
+ lineNumber: 1152,
15315
15396
  columnNumber: 15
15316
15397
  }
15317
15398
  }, /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -15321,14 +15402,14 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15321
15402
  __self: undefined,
15322
15403
  __source: {
15323
15404
  fileName: _jsxFileName$x,
15324
- lineNumber: 1068,
15405
+ lineNumber: 1153,
15325
15406
  columnNumber: 17
15326
15407
  }
15327
15408
  }, /*#__PURE__*/React__default.createElement(Separator$2, {
15328
15409
  __self: undefined,
15329
15410
  __source: {
15330
15411
  fileName: _jsxFileName$x,
15331
- lineNumber: 1069,
15412
+ lineNumber: 1154,
15332
15413
  columnNumber: 19
15333
15414
  }
15334
15415
  }), /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -15342,7 +15423,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15342
15423
  __self: undefined,
15343
15424
  __source: {
15344
15425
  fileName: _jsxFileName$x,
15345
- lineNumber: 1070,
15426
+ lineNumber: 1155,
15346
15427
  columnNumber: 19
15347
15428
  }
15348
15429
  }, showAllTags ? /*#__PURE__*/React__default.createElement(ChevronUpOutline, {
@@ -15350,7 +15431,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15350
15431
  __self: undefined,
15351
15432
  __source: {
15352
15433
  fileName: _jsxFileName$x,
15353
- lineNumber: 1076,
15434
+ lineNumber: 1161,
15354
15435
  columnNumber: 23
15355
15436
  }
15356
15437
  }) : /*#__PURE__*/React__default.createElement(ChevronDownOutline, {
@@ -15358,7 +15439,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15358
15439
  __self: undefined,
15359
15440
  __source: {
15360
15441
  fileName: _jsxFileName$x,
15361
- lineNumber: 1078,
15442
+ lineNumber: 1163,
15362
15443
  columnNumber: 23
15363
15444
  }
15364
15445
  }), /*#__PURE__*/React__default.createElement(Paragraph, {
@@ -15370,14 +15451,14 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15370
15451
  __self: undefined,
15371
15452
  __source: {
15372
15453
  fileName: _jsxFileName$x,
15373
- lineNumber: 1080,
15454
+ lineNumber: 1165,
15374
15455
  columnNumber: 21
15375
15456
  }
15376
15457
  }, showAllTags ? t('showSomeText', 'Tampilkan Sebagian') : t('showAllText', 'Tampilkan Semua'))), /*#__PURE__*/React__default.createElement(Separator$2, {
15377
15458
  __self: undefined,
15378
15459
  __source: {
15379
15460
  fileName: _jsxFileName$x,
15380
- lineNumber: 1084,
15461
+ lineNumber: 1169,
15381
15462
  columnNumber: 19
15382
15463
  }
15383
15464
  })), showCollapsibleCounter && /*#__PURE__*/React__default.createElement(Paragraph, {
@@ -15388,7 +15469,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15388
15469
  __self: undefined,
15389
15470
  __source: {
15390
15471
  fileName: _jsxFileName$x,
15391
- lineNumber: 1087,
15472
+ lineNumber: 1172,
15392
15473
  columnNumber: 19
15393
15474
  }
15394
15475
  }, `${totalOptions ? totalOptions : selectedItems == null || (_selectedItems$filter2 = selectedItems.filter(item => (item == null ? void 0 : item.id) !== '!all')) == null ? void 0 : _selectedItems$filter2.length} ${labelCounter || t('labelCounterText', 'Item terpilih')}`))), showCounter && !isShowTagSelectAll && Boolean(selectedItems == null ? void 0 : selectedItems.length) && /*#__PURE__*/React__default.createElement(Paragraph, {
@@ -15400,7 +15481,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15400
15481
  __self: undefined,
15401
15482
  __source: {
15402
15483
  fileName: _jsxFileName$x,
15403
- lineNumber: 1098,
15484
+ lineNumber: 1183,
15404
15485
  columnNumber: 11
15405
15486
  }
15406
15487
  }, `${totalOptions ? totalOptions : selectedItems == null || (_selectedItems$filter3 = selectedItems.filter(item => (item == null ? void 0 : item.id) !== '!all')) == null ? void 0 : _selectedItems$filter3.length} ${labelCounter || t('labelCounterText', 'Item terpilih')}`), /*#__PURE__*/React__default.createElement(OptionWrapper$1, {
@@ -15413,7 +15494,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15413
15494
  __self: undefined,
15414
15495
  __source: {
15415
15496
  fileName: _jsxFileName$x,
15416
- lineNumber: 1105,
15497
+ lineNumber: 1190,
15417
15498
  columnNumber: 9
15418
15499
  }
15419
15500
  }, isLoading && /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -15435,7 +15516,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15435
15516
  __self: undefined,
15436
15517
  __source: {
15437
15518
  fileName: _jsxFileName$x,
15438
- lineNumber: 1115,
15519
+ lineNumber: 1200,
15439
15520
  columnNumber: 13
15440
15521
  }
15441
15522
  }, /*#__PURE__*/React__default.createElement(Text$1, {
@@ -15443,7 +15524,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15443
15524
  __self: undefined,
15444
15525
  __source: {
15445
15526
  fileName: _jsxFileName$x,
15446
- lineNumber: 1132,
15527
+ lineNumber: 1217,
15447
15528
  columnNumber: 15
15448
15529
  }
15449
15530
  }, "Loading....")), items.length > 0 || isLoading ? /*#__PURE__*/React__default.createElement(Option, _extends({}, getMenuProps({
@@ -15455,7 +15536,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15455
15536
  __self: undefined,
15456
15537
  __source: {
15457
15538
  fileName: _jsxFileName$x,
15458
- lineNumber: 1137,
15539
+ lineNumber: 1222,
15459
15540
  columnNumber: 13
15460
15541
  }
15461
15542
  }), /*#__PURE__*/React__default.createElement(ConditionalWrapper, {
@@ -15478,14 +15559,14 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15478
15559
  __self: undefined,
15479
15560
  __source: {
15480
15561
  fileName: _jsxFileName$x,
15481
- lineNumber: 1141,
15562
+ lineNumber: 1226,
15482
15563
  columnNumber: 19
15483
15564
  }
15484
15565
  }, child),
15485
15566
  __self: undefined,
15486
15567
  __source: {
15487
15568
  fileName: _jsxFileName$x,
15488
- lineNumber: 1138,
15569
+ lineNumber: 1223,
15489
15570
  columnNumber: 15
15490
15571
  }
15491
15572
  }, isOpen && shouldVirtualize ?
@@ -15500,11 +15581,11 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15500
15581
  __self: undefined,
15501
15582
  __source: {
15502
15583
  fileName: _jsxFileName$x,
15503
- lineNumber: 1162,
15584
+ lineNumber: 1247,
15504
15585
  columnNumber: 21
15505
15586
  }
15506
15587
  }, rowVirtualizer.virtualItems.map(virtualRow => {
15507
- var _item$children9, _item$children0, _item$children1;
15588
+ var _item$children8, _item$children9, _item$children0;
15508
15589
  const virtualItem = getItemAtIndex(virtualRow.index);
15509
15590
  if (!virtualItem) return null;
15510
15591
  const {
@@ -15523,7 +15604,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15523
15604
  __self: undefined,
15524
15605
  __source: {
15525
15606
  fileName: _jsxFileName$x,
15526
- lineNumber: 1170,
15607
+ lineNumber: 1255,
15527
15608
  columnNumber: 27
15528
15609
  }
15529
15610
  }, type === 'group' ?
@@ -15543,7 +15624,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15543
15624
  __self: undefined,
15544
15625
  __source: {
15545
15626
  fileName: _jsxFileName$x,
15546
- lineNumber: 1182,
15627
+ lineNumber: 1267,
15547
15628
  columnNumber: 31
15548
15629
  }
15549
15630
  }), /*#__PURE__*/React__default.createElement(IconWrapper, {
@@ -15556,7 +15637,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15556
15637
  __self: undefined,
15557
15638
  __source: {
15558
15639
  fileName: _jsxFileName$x,
15559
- lineNumber: 1195,
15640
+ lineNumber: 1280,
15560
15641
  columnNumber: 33
15561
15642
  }
15562
15643
  }, !(item != null && item.hideCheck) && item.isDisabled ? /*#__PURE__*/React__default.createElement(CheckOutline, {
@@ -15564,22 +15645,22 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15564
15645
  __self: undefined,
15565
15646
  __source: {
15566
15647
  fileName: _jsxFileName$x,
15567
- lineNumber: 1205,
15648
+ lineNumber: 1290,
15568
15649
  columnNumber: 37
15569
15650
  }
15570
- }) : (item == null || (_item$children9 = item.children) == null || (_item$children9 = _item$children9.filter(e => selectedValue.includes(e.id) && !e.isDisabled)) == null ? void 0 : _item$children9.length) === (item == null || (_item$children0 = item.children) == null || (_item$children0 = _item$children0.filter(e => !e.isDisabled)) == null ? void 0 : _item$children0.length) ? /*#__PURE__*/React__default.createElement(CheckOutline, {
15651
+ }) : (item == null || (_item$children8 = item.children) == null || (_item$children8 = _item$children8.filter(e => selectedValueSet.has(e.id) && !e.isDisabled)) == null ? void 0 : _item$children8.length) === (item == null || (_item$children9 = item.children) == null || (_item$children9 = _item$children9.filter(e => !e.isDisabled)) == null ? void 0 : _item$children9.length) ? /*#__PURE__*/React__default.createElement(CheckOutline, {
15571
15652
  color: colors$7.iconGreen,
15572
15653
  __self: undefined,
15573
15654
  __source: {
15574
15655
  fileName: _jsxFileName$x,
15575
- lineNumber: 1209,
15656
+ lineNumber: 1294,
15576
15657
  columnNumber: 39
15577
15658
  }
15578
- }) : (item == null || (_item$children1 = item.children) == null || (_item$children1 = _item$children1.filter(e => selectedValue.includes(e.id) && !e.isDisabled)) == null ? void 0 : _item$children1.length) > 0 ? /*#__PURE__*/React__default.createElement(IndeterminateFilled$1, {
15659
+ }) : (item == null || (_item$children0 = item.children) == null || (_item$children0 = _item$children0.filter(e => selectedValueSet.has(e.id) && !e.isDisabled)) == null ? void 0 : _item$children0.length) > 0 ? /*#__PURE__*/React__default.createElement(IndeterminateFilled$1, {
15579
15660
  __self: undefined,
15580
15661
  __source: {
15581
15662
  fileName: _jsxFileName$x,
15582
- lineNumber: 1211,
15663
+ lineNumber: 1296,
15583
15664
  columnNumber: 39
15584
15665
  }
15585
15666
  }, "-") : null), /*#__PURE__*/React__default.createElement(Item$2, {
@@ -15590,7 +15671,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15590
15671
  __self: undefined,
15591
15672
  __source: {
15592
15673
  fileName: _jsxFileName$x,
15593
- lineNumber: 1215,
15674
+ lineNumber: 1300,
15594
15675
  columnNumber: 33
15595
15676
  }
15596
15677
  }, item.render ? item.render == null ? void 0 : item.render(item.name) : item.name)) :
@@ -15608,14 +15689,14 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15608
15689
  __self: undefined,
15609
15690
  __source: {
15610
15691
  fileName: _jsxFileName$x,
15611
- lineNumber: 1238,
15692
+ lineNumber: 1323,
15612
15693
  columnNumber: 13
15613
15694
  }
15614
15695
  }), /*#__PURE__*/React__default.createElement(StyledDiv, {
15615
15696
  __self: undefined,
15616
15697
  __source: {
15617
15698
  fileName: _jsxFileName$x,
15618
- lineNumber: 1239,
15699
+ lineNumber: 1324,
15619
15700
  columnNumber: 15
15620
15701
  }
15621
15702
  }, /*#__PURE__*/React__default.createElement("div", {
@@ -15625,7 +15706,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15625
15706
  __self: undefined,
15626
15707
  __source: {
15627
15708
  fileName: _jsxFileName$x,
15628
- lineNumber: 1240,
15709
+ lineNumber: 1325,
15629
15710
  columnNumber: 17
15630
15711
  }
15631
15712
  }, /*#__PURE__*/React__default.createElement(CircleInfoOutline, {
@@ -15637,7 +15718,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15637
15718
  __self: undefined,
15638
15719
  __source: {
15639
15720
  fileName: _jsxFileName$x,
15640
- lineNumber: 1241,
15721
+ lineNumber: 1326,
15641
15722
  columnNumber: 19
15642
15723
  }
15643
15724
  })), textEmptyItem != null ? textEmptyItem : t('emptyItemText', 'Item tidak ditemukan')))));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@majoo-ui/react",
3
- "version": "1.61.20-rc.4",
3
+ "version": "1.61.20-rc.5",
4
4
  "main": "./index.esm.js",
5
5
  "exports": {
6
6
  ".": {