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

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 +208 -107
  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,43 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14612
14640
  return [...res, ...filterOption]; // add the missing elements
14613
14641
  }
14614
14642
  }, []) : option;
14643
+
14644
+ // Create a fast lookup map for item names (for large datasets)
14645
+ const itemLookupMap = useMemo(() => {
14646
+ if ((initItem == null ? void 0 : initItem.length) <= 10000) return null;
14647
+ const map = new Map();
14648
+ for (let i = 0; i < initItem.length; i++) {
14649
+ const item = initItem[i];
14650
+ map.set(item.id, item);
14651
+ if (item.children) {
14652
+ for (let j = 0; j < item.children.length; j++) {
14653
+ const child = item.children[j];
14654
+ map.set(child.id, child);
14655
+ }
14656
+ }
14657
+ }
14658
+ return map;
14659
+ }, [initItem]);
14660
+
14661
+ // Memoize selected items to prevent expensive recalculation on every render
14662
+ const memoizedSelectedItems = useMemo(() => {
14663
+ var _initItem$reduce;
14664
+ if (selectedValue.length === 0) return [];
14665
+
14666
+ // For very large datasets, use lookup map for O(1) access
14667
+ if ((initItem == null ? void 0 : initItem.length) > 10000 && itemLookupMap) {
14668
+ return selectedValue.map(id => {
14669
+ const item = itemLookupMap.get(id);
14670
+ return item || {
14671
+ id,
14672
+ name: id
14673
+ }; // Fallback to id as name if not found
14674
+ });
14675
+ }
14676
+
14677
+ // For smaller datasets, do the full flatten and filter
14678
+ 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))) || [];
14679
+ }, [selectedValue, initItem, selectedValueSet, itemLookupMap]);
14615
14680
  const {
14616
14681
  getSelectedItemProps,
14617
14682
  getDropdownProps,
@@ -14619,7 +14684,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14619
14684
  removeSelectedItem,
14620
14685
  selectedItems
14621
14686
  } = 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)) : []
14687
+ selectedItems: memoizedSelectedItems
14623
14688
  });
14624
14689
  const generateOptions = data => {
14625
14690
  return data.map(option => {
@@ -14684,7 +14749,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14684
14749
  if ((selected == null ? void 0 : selected.id) === 'counter') {
14685
14750
  setSelectedValue([]);
14686
14751
  setInputSelectValue([]);
14687
- onChange == null || onChange([]);
14752
+ batchedOnChange([]);
14688
14753
  for (let i = 0; i < selectedValue.length; i++) {
14689
14754
  removeSelectedItem(selectedValue[i]);
14690
14755
  }
@@ -14694,7 +14759,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14694
14759
  setSelectedValue(filterItems);
14695
14760
  setInputSelectValue(filterItems);
14696
14761
  if (selected.id !== '!all') {
14697
- onChange == null || onChange(filterItems);
14762
+ batchedOnChange(filterItems);
14698
14763
  }
14699
14764
  }
14700
14765
  }
@@ -14702,14 +14767,20 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14702
14767
 
14703
14768
  // Memoize flattened items for useCombobox to prevent recalculation on every render
14704
14769
  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 : [])], []);
14770
+ // We need all items for selection to work properly, even for large datasets
14771
+ // Optimize by using for loops instead of reduce/spread for better performance
14772
+ const result = [];
14773
+ for (let i = 0; i < items.length; i++) {
14774
+ const item = items[i];
14775
+ result.push(item);
14776
+ if (item.children) {
14777
+ for (let j = 0; j < item.children.length; j++) {
14778
+ result.push(item.children[j]);
14779
+ }
14780
+ }
14710
14781
  }
14711
- return items.reduce((acc, item) => [...acc, item, ...(item.children ? item.children : [])], []);
14712
- }, [items, totalItemCount]);
14782
+ return result;
14783
+ }, [items]);
14713
14784
  const {
14714
14785
  getToggleButtonProps,
14715
14786
  getMenuProps,
@@ -14755,9 +14826,13 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14755
14826
  removeSelectedItem(item);
14756
14827
  }
14757
14828
  });
14758
- setSelectedValue([]);
14759
- setInputSelectValue([]);
14760
- onChange == null || onChange([]);
14829
+
14830
+ // Use startTransition for non-urgent state updates
14831
+ startTransition(() => {
14832
+ setSelectedValue([]);
14833
+ setInputSelectValue([]);
14834
+ });
14835
+ batchedOnChange([]);
14761
14836
  } else {
14762
14837
  removeItem(selectedItem);
14763
14838
  }
@@ -14765,27 +14840,34 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14765
14840
  }
14766
14841
  } else {
14767
14842
  if (selectedItem.id === '!all') {
14843
+ // Optimized select all - batch operations instead of individual calls
14768
14844
  const itemIds = [];
14845
+ const itemsToAdd = [];
14769
14846
  items.filter(item => !item.isDisabled).forEach(item => {
14770
14847
  var _item$children3;
14771
14848
  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);
14849
+ item.children.filter(child => !child.isDisabled).forEach(child => {
14850
+ itemsToAdd.push(child);
14851
+ itemIds.push(child.id);
14776
14852
  });
14777
14853
  } else {
14778
- addSelectedItem(item);
14854
+ itemsToAdd.push(item);
14779
14855
  itemIds.push(item.id);
14780
14856
  }
14781
14857
  });
14782
- setSelectedValue(itemIds);
14783
- setInputSelectValue(itemIds);
14784
- // onChange?.(itemIds.slice(1).filter(id => !items.find(item => item.id === id)?.children?.length));
14858
+
14859
+ // Batch add all items at once instead of one by one
14860
+ itemsToAdd.forEach(item => addSelectedItem(item));
14861
+
14862
+ // Use startTransition for non-urgent state updates
14863
+ startTransition(() => {
14864
+ setSelectedValue(itemIds);
14865
+ setInputSelectValue(itemIds);
14866
+ });
14785
14867
  if (onSelectAllChecked) {
14786
14868
  onSelectAllChecked(itemIds.slice(1));
14787
14869
  } else {
14788
- onChange == null || onChange(itemIds.slice(1));
14870
+ batchedOnChange(itemIds.slice(1));
14789
14871
  }
14790
14872
  } else {
14791
14873
  var _selectedItem$childre;
@@ -14794,34 +14876,48 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14794
14876
  var _selectedItem$childre2;
14795
14877
  const itemIdsSelect = [];
14796
14878
  const itemIdsUnSelect = [];
14879
+ const itemsToAdd = [];
14880
+ const itemsToRemove = [];
14797
14881
  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);
14882
+ if (selectedValueSet.has(item.id)) {
14883
+ itemsToRemove.push(item);
14800
14884
  itemIdsUnSelect.push(item.id);
14801
14885
  } else {
14802
- addSelectedItem(item);
14886
+ itemsToAdd.push(item);
14803
14887
  itemIdsSelect.push(item.id);
14804
14888
  }
14805
14889
  });
14806
14890
 
14891
+ // Batch add/remove operations
14892
+ itemsToAdd.forEach(item => addSelectedItem(item));
14893
+ itemsToRemove.forEach(item => removeSelectedItem(item));
14894
+
14807
14895
  //select all child in one of the option groups
14808
14896
  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]);
14897
+ const _newSelectedValue = [...selectedValue, ...itemIdsSelect];
14898
+
14899
+ // Use startTransition for non-urgent updates
14900
+ startTransition(() => {
14901
+ setSelectedValue(_newSelectedValue);
14902
+ setInputSelectValue(_newSelectedValue);
14903
+ });
14904
+ const _filteredSelectedValues = _newSelectedValue.filter(val => val !== '!all');
14905
+ batchedOnChange(_filteredSelectedValues);
14813
14906
  }
14814
14907
 
14815
14908
  //unselect all child in one of the option groups
14816
14909
  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;
14910
+ // Use Set for O(1) lookup instead of nested filter
14911
+ const unSelectSet = new Set(itemIdsUnSelect);
14912
+ const _newSelectedValue2 = selectedValue.filter(selId => !unSelectSet.has(selId) && selId);
14913
+
14914
+ // Use startTransition for non-urgent updates
14915
+ startTransition(() => {
14916
+ setSelectedValue(_newSelectedValue2);
14917
+ setInputSelectValue(_newSelectedValue2);
14820
14918
  });
14821
- setSelectedValue(newSelectedValue);
14822
- setInputSelectValue(newSelectedValue);
14823
- const _filteredSelectedValues2 = newSelectedValue.filter(val => val !== '!all');
14824
- onChange == null || onChange(_filteredSelectedValues2);
14919
+ const _filteredSelectedValues2 = _newSelectedValue2.filter(val => val !== '!all');
14920
+ batchedOnChange(_filteredSelectedValues2);
14825
14921
  }
14826
14922
  return;
14827
14923
  }
@@ -14835,10 +14931,15 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14835
14931
  //end check the child from one of the option groups
14836
14932
 
14837
14933
  addSelectedItem(selectedItem);
14838
- setSelectedValue([...selectedValue, selectedItem.id]);
14839
- setInputSelectValue([...selectedValue, selectedItem.id]);
14934
+ const newSelectedValue = [...selectedValue, selectedItem.id];
14935
+
14936
+ // Use startTransition for non-urgent updates
14937
+ startTransition(() => {
14938
+ setSelectedValue(newSelectedValue);
14939
+ setInputSelectValue(newSelectedValue);
14940
+ });
14840
14941
  const filteredSelectedValues = selectedValue.filter(val => val !== '!all');
14841
- onChange == null || onChange([...filteredSelectedValues, selectedItem.id]);
14942
+ batchedOnChange([...filteredSelectedValues, selectedItem.id]);
14842
14943
  }
14843
14944
  selectItem(null);
14844
14945
  }
@@ -14991,7 +15092,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
14991
15092
  }
14992
15093
  onItemClick({
14993
15094
  item,
14994
- isSelected: !selectedValue.includes(item.id)
15095
+ isSelected: !selectedValueSet.has(item.id)
14995
15096
  });
14996
15097
  },
14997
15098
  css: {
@@ -15003,7 +15104,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15003
15104
  __self: undefined,
15004
15105
  __source: {
15005
15106
  fileName: _jsxFileName$x,
15006
- lineNumber: 866,
15107
+ lineNumber: 971,
15007
15108
  columnNumber: 9
15008
15109
  }
15009
15110
  }), /*#__PURE__*/React__default.createElement(IconWrapper, {
@@ -15017,7 +15118,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15017
15118
  __self: undefined,
15018
15119
  __source: {
15019
15120
  fileName: _jsxFileName$x,
15020
- lineNumber: 885,
15121
+ lineNumber: 990,
15021
15122
  columnNumber: 11
15022
15123
  }
15023
15124
  }, !(item != null && item.hideCheck) && (item.isDisabled ? /*#__PURE__*/React__default.createElement(CheckOutline, {
@@ -15025,29 +15126,29 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15025
15126
  __self: undefined,
15026
15127
  __source: {
15027
15128
  fileName: _jsxFileName$x,
15028
- lineNumber: 897,
15129
+ lineNumber: 1002,
15029
15130
  columnNumber: 17
15030
15131
  }
15031
- }) : selectedValue.includes(item.id) && (item.isDisabled === false || item.isDisabled === undefined) && /*#__PURE__*/React__default.createElement(CheckOutline, {
15132
+ }) : selectedValueSet.has(item.id) && (item.isDisabled === false || item.isDisabled === undefined) && /*#__PURE__*/React__default.createElement(CheckOutline, {
15032
15133
  color: colors$7.iconGreen,
15033
15134
  __self: undefined,
15034
15135
  __source: {
15035
15136
  fileName: _jsxFileName$x,
15036
- lineNumber: 901,
15137
+ lineNumber: 1006,
15037
15138
  columnNumber: 19
15038
15139
  }
15039
15140
  })), 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
15141
  __self: undefined,
15041
15142
  __source: {
15042
15143
  fileName: _jsxFileName$x,
15043
- lineNumber: 905,
15144
+ lineNumber: 1010,
15044
15145
  columnNumber: 15
15045
15146
  }
15046
15147
  }, "-") : /*#__PURE__*/React__default.createElement("div", {
15047
15148
  __self: undefined,
15048
15149
  __source: {
15049
15150
  fileName: _jsxFileName$x,
15050
- lineNumber: 907,
15151
+ lineNumber: 1012,
15051
15152
  columnNumber: 15
15052
15153
  }
15053
15154
  })), /*#__PURE__*/React__default.createElement(Item$2, {
@@ -15058,18 +15159,18 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15058
15159
  __self: undefined,
15059
15160
  __source: {
15060
15161
  fileName: _jsxFileName$x,
15061
- lineNumber: 910,
15162
+ lineNumber: 1015,
15062
15163
  columnNumber: 11
15063
15164
  }
15064
15165
  }, item.render ? item.render == null ? void 0 : item.render(item.name) : item.name));
15065
15166
  };
15066
15167
  let lastGroupIndex = showSelectAll ? 1 : 0;
15067
15168
  const renderOptionGroupItem = (item, index) => {
15068
- var _item$children5, _item$children6, _item$children7, _item$children8;
15169
+ var _item$children4, _item$children5, _item$children6, _item$children7;
15069
15170
  // const groupIndex = (index > (showSelectAll ? 1 : 0)) ? lastGroupIndex : 0;
15070
15171
  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);
15172
+ lastGroupIndex += ((item == null || (_item$children4 = item.children) == null ? void 0 : _item$children4.length) || 0) + 1;
15173
+ const filterSelectedChild = item == null || (_item$children5 = item.children) == null ? void 0 : _item$children5.filter(e => selectedValueSet.has(e.id) && !e.isDisabled);
15073
15174
  return /*#__PURE__*/React__default.createElement(OptionGroupItem, {
15074
15175
  item: /*#__PURE__*/React__default.createElement(ItemWrapper$1, _extends({
15075
15176
  key: item.id
@@ -15086,7 +15187,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15086
15187
  __self: undefined,
15087
15188
  __source: {
15088
15189
  fileName: _jsxFileName$x,
15089
- lineNumber: 926,
15190
+ lineNumber: 1031,
15090
15191
  columnNumber: 13
15091
15192
  }
15092
15193
  }), /*#__PURE__*/React__default.createElement(IconWrapper, {
@@ -15099,7 +15200,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15099
15200
  __self: undefined,
15100
15201
  __source: {
15101
15202
  fileName: _jsxFileName$x,
15102
- lineNumber: 939,
15203
+ lineNumber: 1044,
15103
15204
  columnNumber: 15
15104
15205
  }
15105
15206
  }, !(item != null && item.hideCheck) && item.isDisabled ? /*#__PURE__*/React__default.createElement(CheckOutline, {
@@ -15107,22 +15208,22 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15107
15208
  __self: undefined,
15108
15209
  __source: {
15109
15210
  fileName: _jsxFileName$x,
15110
- lineNumber: 949,
15211
+ lineNumber: 1054,
15111
15212
  columnNumber: 19
15112
15213
  }
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, {
15214
+ }) : (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
15215
  color: colors$7.iconGreen,
15115
15216
  __self: undefined,
15116
15217
  __source: {
15117
15218
  fileName: _jsxFileName$x,
15118
- lineNumber: 951,
15219
+ lineNumber: 1056,
15119
15220
  columnNumber: 19
15120
15221
  }
15121
15222
  }) : (filterSelectedChild == null ? void 0 : filterSelectedChild.length) > 0 ? /*#__PURE__*/React__default.createElement(IndeterminateFilled$1, {
15122
15223
  __self: undefined,
15123
15224
  __source: {
15124
15225
  fileName: _jsxFileName$x,
15125
- lineNumber: 953,
15226
+ lineNumber: 1058,
15126
15227
  columnNumber: 19
15127
15228
  }
15128
15229
  }, "-") : null), /*#__PURE__*/React__default.createElement(Item$2, {
@@ -15133,17 +15234,17 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15133
15234
  __self: undefined,
15134
15235
  __source: {
15135
15236
  fileName: _jsxFileName$x,
15136
- lineNumber: 956,
15237
+ lineNumber: 1061,
15137
15238
  columnNumber: 15
15138
15239
  }
15139
15240
  }, item.render ? item.render == null ? void 0 : item.render(item.name) : item.name)),
15140
15241
  __self: undefined,
15141
15242
  __source: {
15142
15243
  fileName: _jsxFileName$x,
15143
- lineNumber: 924,
15244
+ lineNumber: 1029,
15144
15245
  columnNumber: 9
15145
15246
  }
15146
- }, item == null || (_item$children8 = item.children) == null ? void 0 : _item$children8.map((optItem, optIndex) => renderOptionItem(optItem, groupIndex + optIndex + 1, true)));
15247
+ }, item == null || (_item$children7 = item.children) == null ? void 0 : _item$children7.map((optItem, optIndex) => renderOptionItem(optItem, groupIndex + optIndex + 1, true)));
15147
15248
  };
15148
15249
  return /*#__PURE__*/React__default.createElement(Wrapper$1, _extends({
15149
15250
  css: css
@@ -15153,7 +15254,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15153
15254
  __self: undefined,
15154
15255
  __source: {
15155
15256
  fileName: _jsxFileName$x,
15156
- lineNumber: 968,
15257
+ lineNumber: 1073,
15157
15258
  columnNumber: 7
15158
15259
  }
15159
15260
  }), /*#__PURE__*/React__default.createElement(Select, {
@@ -15163,7 +15264,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15163
15264
  __self: undefined,
15164
15265
  __source: {
15165
15266
  fileName: _jsxFileName$x,
15166
- lineNumber: 969,
15267
+ lineNumber: 1074,
15167
15268
  columnNumber: 9
15168
15269
  }
15169
15270
  }, /*#__PURE__*/React__default.createElement(InputWrapper$1, _extends({}, getComboboxProps(getDropdownProps({
@@ -15178,7 +15279,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15178
15279
  __self: undefined,
15179
15280
  __source: {
15180
15281
  fileName: _jsxFileName$x,
15181
- lineNumber: 970,
15282
+ lineNumber: 1075,
15182
15283
  columnNumber: 11
15183
15284
  }
15184
15285
  }), /*#__PURE__*/React__default.createElement(Input$6, _extends({}, getInputProps({
@@ -15196,7 +15297,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15196
15297
  __self: undefined,
15197
15298
  __source: {
15198
15299
  fileName: _jsxFileName$x,
15199
- lineNumber: 980,
15300
+ lineNumber: 1085,
15200
15301
  columnNumber: 13
15201
15302
  }
15202
15303
  })), /*#__PURE__*/React__default.createElement(Button$2, _extends({}, getToggleButtonProps({
@@ -15210,7 +15311,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15210
15311
  __self: undefined,
15211
15312
  __source: {
15212
15313
  fileName: _jsxFileName$x,
15213
- lineNumber: 987,
15314
+ lineNumber: 1092,
15214
15315
  columnNumber: 13
15215
15316
  }
15216
15317
  }), (_ref2 = label != null ? label : placeholder) != null ? _ref2 : t('placeholder', 'Pilih Item'))), /*#__PURE__*/React__default.createElement(IconWrapper, _extends({}, getToggleButtonProps({
@@ -15221,7 +15322,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15221
15322
  __self: undefined,
15222
15323
  __source: {
15223
15324
  fileName: _jsxFileName$x,
15224
- lineNumber: 998,
15325
+ lineNumber: 1103,
15225
15326
  columnNumber: 11
15226
15327
  }
15227
15328
  }), /*#__PURE__*/React__default.createElement(IconCaretDown, {
@@ -15229,7 +15330,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15229
15330
  __self: undefined,
15230
15331
  __source: {
15231
15332
  fileName: _jsxFileName$x,
15232
- lineNumber: 1003,
15333
+ lineNumber: 1108,
15233
15334
  columnNumber: 13
15234
15335
  }
15235
15336
  }))), helperText && /*#__PURE__*/React__default.createElement(Paragraph, {
@@ -15242,7 +15343,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15242
15343
  __self: undefined,
15243
15344
  __source: {
15244
15345
  fileName: _jsxFileName$x,
15245
- lineNumber: 1007,
15346
+ lineNumber: 1112,
15246
15347
  columnNumber: 11
15247
15348
  }
15248
15349
  }, helperText), showSelectedTag && !showCounter && selectedItems.length !== 0 && /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(TagWrapper$2, {
@@ -15250,7 +15351,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15250
15351
  __self: undefined,
15251
15352
  __source: {
15252
15353
  fileName: _jsxFileName$x,
15253
- lineNumber: 1013,
15354
+ lineNumber: 1118,
15254
15355
  columnNumber: 13
15255
15356
  }
15256
15357
  }, isShowTagSelectAll ? /*#__PURE__*/React__default.createElement(Tag, _extends({
@@ -15271,7 +15372,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15271
15372
  __self: undefined,
15272
15373
  __source: {
15273
15374
  fileName: _jsxFileName$x,
15274
- lineNumber: 1015,
15375
+ lineNumber: 1120,
15275
15376
  columnNumber: 17
15276
15377
  }
15277
15378
  }), 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 +15403,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15302
15403
  __self: undefined,
15303
15404
  __source: {
15304
15405
  fileName: _jsxFileName$x,
15305
- lineNumber: 1044,
15406
+ lineNumber: 1149,
15306
15407
  columnNumber: 21
15307
15408
  }
15308
15409
  }), selectedItem.name))), collapsible && !isShowTagSelectAll && (selectedItems == null ? void 0 : selectedItems.length) > collapsibleLimit && /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -15311,7 +15412,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15311
15412
  __self: undefined,
15312
15413
  __source: {
15313
15414
  fileName: _jsxFileName$x,
15314
- lineNumber: 1067,
15415
+ lineNumber: 1172,
15315
15416
  columnNumber: 15
15316
15417
  }
15317
15418
  }, /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -15321,14 +15422,14 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15321
15422
  __self: undefined,
15322
15423
  __source: {
15323
15424
  fileName: _jsxFileName$x,
15324
- lineNumber: 1068,
15425
+ lineNumber: 1173,
15325
15426
  columnNumber: 17
15326
15427
  }
15327
15428
  }, /*#__PURE__*/React__default.createElement(Separator$2, {
15328
15429
  __self: undefined,
15329
15430
  __source: {
15330
15431
  fileName: _jsxFileName$x,
15331
- lineNumber: 1069,
15432
+ lineNumber: 1174,
15332
15433
  columnNumber: 19
15333
15434
  }
15334
15435
  }), /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -15342,7 +15443,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15342
15443
  __self: undefined,
15343
15444
  __source: {
15344
15445
  fileName: _jsxFileName$x,
15345
- lineNumber: 1070,
15446
+ lineNumber: 1175,
15346
15447
  columnNumber: 19
15347
15448
  }
15348
15449
  }, showAllTags ? /*#__PURE__*/React__default.createElement(ChevronUpOutline, {
@@ -15350,7 +15451,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15350
15451
  __self: undefined,
15351
15452
  __source: {
15352
15453
  fileName: _jsxFileName$x,
15353
- lineNumber: 1076,
15454
+ lineNumber: 1181,
15354
15455
  columnNumber: 23
15355
15456
  }
15356
15457
  }) : /*#__PURE__*/React__default.createElement(ChevronDownOutline, {
@@ -15358,7 +15459,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15358
15459
  __self: undefined,
15359
15460
  __source: {
15360
15461
  fileName: _jsxFileName$x,
15361
- lineNumber: 1078,
15462
+ lineNumber: 1183,
15362
15463
  columnNumber: 23
15363
15464
  }
15364
15465
  }), /*#__PURE__*/React__default.createElement(Paragraph, {
@@ -15370,14 +15471,14 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15370
15471
  __self: undefined,
15371
15472
  __source: {
15372
15473
  fileName: _jsxFileName$x,
15373
- lineNumber: 1080,
15474
+ lineNumber: 1185,
15374
15475
  columnNumber: 21
15375
15476
  }
15376
15477
  }, showAllTags ? t('showSomeText', 'Tampilkan Sebagian') : t('showAllText', 'Tampilkan Semua'))), /*#__PURE__*/React__default.createElement(Separator$2, {
15377
15478
  __self: undefined,
15378
15479
  __source: {
15379
15480
  fileName: _jsxFileName$x,
15380
- lineNumber: 1084,
15481
+ lineNumber: 1189,
15381
15482
  columnNumber: 19
15382
15483
  }
15383
15484
  })), showCollapsibleCounter && /*#__PURE__*/React__default.createElement(Paragraph, {
@@ -15388,7 +15489,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15388
15489
  __self: undefined,
15389
15490
  __source: {
15390
15491
  fileName: _jsxFileName$x,
15391
- lineNumber: 1087,
15492
+ lineNumber: 1192,
15392
15493
  columnNumber: 19
15393
15494
  }
15394
15495
  }, `${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 +15501,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15400
15501
  __self: undefined,
15401
15502
  __source: {
15402
15503
  fileName: _jsxFileName$x,
15403
- lineNumber: 1098,
15504
+ lineNumber: 1203,
15404
15505
  columnNumber: 11
15405
15506
  }
15406
15507
  }, `${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 +15514,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15413
15514
  __self: undefined,
15414
15515
  __source: {
15415
15516
  fileName: _jsxFileName$x,
15416
- lineNumber: 1105,
15517
+ lineNumber: 1210,
15417
15518
  columnNumber: 9
15418
15519
  }
15419
15520
  }, isLoading && /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -15435,7 +15536,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15435
15536
  __self: undefined,
15436
15537
  __source: {
15437
15538
  fileName: _jsxFileName$x,
15438
- lineNumber: 1115,
15539
+ lineNumber: 1220,
15439
15540
  columnNumber: 13
15440
15541
  }
15441
15542
  }, /*#__PURE__*/React__default.createElement(Text$1, {
@@ -15443,7 +15544,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15443
15544
  __self: undefined,
15444
15545
  __source: {
15445
15546
  fileName: _jsxFileName$x,
15446
- lineNumber: 1132,
15547
+ lineNumber: 1237,
15447
15548
  columnNumber: 15
15448
15549
  }
15449
15550
  }, "Loading....")), items.length > 0 || isLoading ? /*#__PURE__*/React__default.createElement(Option, _extends({}, getMenuProps({
@@ -15455,7 +15556,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15455
15556
  __self: undefined,
15456
15557
  __source: {
15457
15558
  fileName: _jsxFileName$x,
15458
- lineNumber: 1137,
15559
+ lineNumber: 1242,
15459
15560
  columnNumber: 13
15460
15561
  }
15461
15562
  }), /*#__PURE__*/React__default.createElement(ConditionalWrapper, {
@@ -15478,14 +15579,14 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15478
15579
  __self: undefined,
15479
15580
  __source: {
15480
15581
  fileName: _jsxFileName$x,
15481
- lineNumber: 1141,
15582
+ lineNumber: 1246,
15482
15583
  columnNumber: 19
15483
15584
  }
15484
15585
  }, child),
15485
15586
  __self: undefined,
15486
15587
  __source: {
15487
15588
  fileName: _jsxFileName$x,
15488
- lineNumber: 1138,
15589
+ lineNumber: 1243,
15489
15590
  columnNumber: 15
15490
15591
  }
15491
15592
  }, isOpen && shouldVirtualize ?
@@ -15500,11 +15601,11 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15500
15601
  __self: undefined,
15501
15602
  __source: {
15502
15603
  fileName: _jsxFileName$x,
15503
- lineNumber: 1162,
15604
+ lineNumber: 1267,
15504
15605
  columnNumber: 21
15505
15606
  }
15506
15607
  }, rowVirtualizer.virtualItems.map(virtualRow => {
15507
- var _item$children9, _item$children0, _item$children1;
15608
+ var _item$children8, _item$children9, _item$children0;
15508
15609
  const virtualItem = getItemAtIndex(virtualRow.index);
15509
15610
  if (!virtualItem) return null;
15510
15611
  const {
@@ -15523,7 +15624,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15523
15624
  __self: undefined,
15524
15625
  __source: {
15525
15626
  fileName: _jsxFileName$x,
15526
- lineNumber: 1170,
15627
+ lineNumber: 1275,
15527
15628
  columnNumber: 27
15528
15629
  }
15529
15630
  }, type === 'group' ?
@@ -15543,7 +15644,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15543
15644
  __self: undefined,
15544
15645
  __source: {
15545
15646
  fileName: _jsxFileName$x,
15546
- lineNumber: 1182,
15647
+ lineNumber: 1287,
15547
15648
  columnNumber: 31
15548
15649
  }
15549
15650
  }), /*#__PURE__*/React__default.createElement(IconWrapper, {
@@ -15556,7 +15657,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15556
15657
  __self: undefined,
15557
15658
  __source: {
15558
15659
  fileName: _jsxFileName$x,
15559
- lineNumber: 1195,
15660
+ lineNumber: 1300,
15560
15661
  columnNumber: 33
15561
15662
  }
15562
15663
  }, !(item != null && item.hideCheck) && item.isDisabled ? /*#__PURE__*/React__default.createElement(CheckOutline, {
@@ -15564,22 +15665,22 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15564
15665
  __self: undefined,
15565
15666
  __source: {
15566
15667
  fileName: _jsxFileName$x,
15567
- lineNumber: 1205,
15668
+ lineNumber: 1310,
15568
15669
  columnNumber: 37
15569
15670
  }
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, {
15671
+ }) : (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
15672
  color: colors$7.iconGreen,
15572
15673
  __self: undefined,
15573
15674
  __source: {
15574
15675
  fileName: _jsxFileName$x,
15575
- lineNumber: 1209,
15676
+ lineNumber: 1314,
15576
15677
  columnNumber: 39
15577
15678
  }
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, {
15679
+ }) : (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
15680
  __self: undefined,
15580
15681
  __source: {
15581
15682
  fileName: _jsxFileName$x,
15582
- lineNumber: 1211,
15683
+ lineNumber: 1316,
15583
15684
  columnNumber: 39
15584
15685
  }
15585
15686
  }, "-") : null), /*#__PURE__*/React__default.createElement(Item$2, {
@@ -15590,7 +15691,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15590
15691
  __self: undefined,
15591
15692
  __source: {
15592
15693
  fileName: _jsxFileName$x,
15593
- lineNumber: 1215,
15694
+ lineNumber: 1320,
15594
15695
  columnNumber: 33
15595
15696
  }
15596
15697
  }, item.render ? item.render == null ? void 0 : item.render(item.name) : item.name)) :
@@ -15608,14 +15709,14 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15608
15709
  __self: undefined,
15609
15710
  __source: {
15610
15711
  fileName: _jsxFileName$x,
15611
- lineNumber: 1238,
15712
+ lineNumber: 1343,
15612
15713
  columnNumber: 13
15613
15714
  }
15614
15715
  }), /*#__PURE__*/React__default.createElement(StyledDiv, {
15615
15716
  __self: undefined,
15616
15717
  __source: {
15617
15718
  fileName: _jsxFileName$x,
15618
- lineNumber: 1239,
15719
+ lineNumber: 1344,
15619
15720
  columnNumber: 15
15620
15721
  }
15621
15722
  }, /*#__PURE__*/React__default.createElement("div", {
@@ -15625,7 +15726,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15625
15726
  __self: undefined,
15626
15727
  __source: {
15627
15728
  fileName: _jsxFileName$x,
15628
- lineNumber: 1240,
15729
+ lineNumber: 1345,
15629
15730
  columnNumber: 17
15630
15731
  }
15631
15732
  }, /*#__PURE__*/React__default.createElement(CircleInfoOutline, {
@@ -15637,7 +15738,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
15637
15738
  __self: undefined,
15638
15739
  __source: {
15639
15740
  fileName: _jsxFileName$x,
15640
- lineNumber: 1241,
15741
+ lineNumber: 1346,
15641
15742
  columnNumber: 19
15642
15743
  }
15643
15744
  })), textEmptyItem != null ? textEmptyItem : t('emptyItemText', 'Item tidak ditemukan')))));
@@ -57902,13 +58003,13 @@ var getNative = _getNative,
57902
58003
  root = _root;
57903
58004
 
57904
58005
  /* Built-in method references that are verified to be native. */
57905
- var Map$1 = getNative(root, 'Map');
58006
+ var Map$2 = getNative(root, 'Map');
57906
58007
 
57907
- var _Map = Map$1;
58008
+ var _Map = Map$2;
57908
58009
 
57909
58010
  var Hash = _Hash,
57910
58011
  ListCache = _ListCache,
57911
- Map = _Map;
58012
+ Map$1 = _Map;
57912
58013
 
57913
58014
  /**
57914
58015
  * Removes all key-value entries from the map.
@@ -57921,7 +58022,7 @@ function mapCacheClear$1() {
57921
58022
  this.size = 0;
57922
58023
  this.__data__ = {
57923
58024
  'hash': new Hash,
57924
- 'map': new (Map || ListCache),
58025
+ 'map': new (Map$1 || ListCache),
57925
58026
  'string': new Hash
57926
58027
  };
57927
58028
  }
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.6",
4
4
  "main": "./index.esm.js",
5
5
  "exports": {
6
6
  ".": {