@majoo-ui/react 1.57.8 → 1.57.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.esm.js CHANGED
@@ -20,13 +20,13 @@ import * as SwitchPrimitive from '@radix-ui/react-switch';
20
20
  import Downshift, { useMultipleSelection, useCombobox } from 'downshift';
21
21
  import InfiniteScroll from 'react-infinite-scroller';
22
22
  import debounce from 'lodash.debounce';
23
- import { useFloating, offset, flip, shift as shift$2, useInteractions, useClick, useDismiss, FloatingPortal, FloatingFocusManager } from '@floating-ui/react';
24
- import * as DialogPrimitive from '@radix-ui/react-dialog';
23
+ import { useFloating, offset, shift as shift$2, flip, useInteractions, useClick, useDismiss, FloatingPortal, FloatingFocusManager } from '@floating-ui/react';
25
24
  import OTPInput, { ResendOTP as ResendOTP$1 } from 'otp-input-react';
26
25
  import * as SliderPrimitive from '@radix-ui/react-slider';
27
26
  import * as TabsPrimitive from '@radix-ui/react-tabs';
28
27
  import * as SeparatorPrimitive from '@radix-ui/react-separator';
29
28
  import * as ToggleGroupPrimitive from '@radix-ui/react-toggle-group';
29
+ import * as DialogPrimitive from '@radix-ui/react-dialog';
30
30
  import * as AccordionPrimitive from '@radix-ui/react-accordion';
31
31
  import { useDayzed } from 'dayzed';
32
32
  import { useTable, useSortBy, useExpanded, usePagination, useRowSelect, useColumnOrder, useMountedLayoutEffect } from 'react-table';
@@ -4188,6 +4188,21 @@ const ButtonPrimitive = styled('button', {
4188
4188
  alignItems: 'center',
4189
4189
  justifyContent: 'center'
4190
4190
  }
4191
+ },
4192
+ mobileOnly: {
4193
+ true: {
4194
+ '@md': {
4195
+ display: 'none !important'
4196
+ }
4197
+ }
4198
+ },
4199
+ desktopOnly: {
4200
+ true: {
4201
+ display: 'none !important',
4202
+ '@md': {
4203
+ display: 'inherit !important'
4204
+ }
4205
+ }
4191
4206
  }
4192
4207
  }
4193
4208
  });
@@ -4203,9 +4218,11 @@ const Button$4 = /*#__PURE__*/React.forwardRef((_a, forwardedRef) => {
4203
4218
  leftIcon,
4204
4219
  rightIcon,
4205
4220
  icon = false,
4206
- iconSize
4221
+ iconSize,
4222
+ mobileOnly,
4223
+ desktopOnly
4207
4224
  } = _a,
4208
- props = __rest(_a, ["children", "type", "buttonType", "size", "disabled", "block", "width", "leftIcon", "rightIcon", "icon", "iconSize"]);
4225
+ props = __rest(_a, ["children", "type", "buttonType", "size", "disabled", "block", "width", "leftIcon", "rightIcon", "icon", "iconSize", "mobileOnly", "desktopOnly"]);
4209
4226
  return jsxs(ButtonPrimitive, Object.assign({
4210
4227
  type: type,
4211
4228
  buttonType: buttonType,
@@ -4213,6 +4230,8 @@ const Button$4 = /*#__PURE__*/React.forwardRef((_a, forwardedRef) => {
4213
4230
  withIcon: Boolean(icon || leftIcon || rightIcon),
4214
4231
  iconSize: icon ? size : undefined,
4215
4232
  disabled: disabled,
4233
+ mobileOnly: mobileOnly,
4234
+ desktopOnly: desktopOnly,
4216
4235
  css: Object.assign(Object.assign({}, props.css), {
4217
4236
  width: block ? '100%' : width
4218
4237
  }),
@@ -8623,106 +8642,6 @@ fixRegExpWellKnownSymbolLogic$1('search', function (SEARCH, nativeSearch, maybeC
8623
8642
  ];
8624
8643
  });
8625
8644
 
8626
- const StyledOverlay$3 = styled(DialogPrimitive.Overlay, {
8627
- backgroundColor: '$bgDimmer',
8628
- position: 'fixed',
8629
- inset: 0
8630
- });
8631
- const StyledContent$5 = styled(DialogPrimitive.Content, {
8632
- position: 'fixed',
8633
- top: '50%',
8634
- left: '50%',
8635
- transform: 'translate(-50%, -50%)',
8636
- '&:focus': {
8637
- outline: 'none'
8638
- },
8639
- width: '100%',
8640
- variants: {
8641
- /**
8642
- * Size of modal width, the height sized according to content. Size must be placed on DialogContent element
8643
- * if it's on mobile view will auto set maxWidth to 'unset'.
8644
- */
8645
- size: {
8646
- auto: {
8647
- '@md': {
8648
- width: 'auto'
8649
- }
8650
- },
8651
- xs: {
8652
- maxWidth: 'unset',
8653
- '@md': {
8654
- maxWidth: '320px'
8655
- }
8656
- },
8657
- sm: {
8658
- maxWidth: 'unset',
8659
- '@md': {
8660
- maxWidth: '384px'
8661
- }
8662
- },
8663
- md: {
8664
- maxWidth: 'unset',
8665
- '@md': {
8666
- maxWidth: '448px'
8667
- }
8668
- },
8669
- lg: {
8670
- maxWidth: 'unset',
8671
- '@md': {
8672
- maxWidth: '512px'
8673
- }
8674
- },
8675
- xl: {
8676
- maxWidth: 'unset',
8677
- '@md': {
8678
- maxWidth: '576px'
8679
- }
8680
- },
8681
- full: {
8682
- maxWidth: '100vw',
8683
- minHeight: '100vh'
8684
- }
8685
- }
8686
- },
8687
- defaultVariants: {
8688
- size: 'md'
8689
- }
8690
- });
8691
- const Content$2 = /*#__PURE__*/React__default.forwardRef((props, ref) => {
8692
- const {
8693
- children
8694
- } = props,
8695
- rest = __rest(props, ["children"]);
8696
- return jsx(StyledContent$5, Object.assign({}, rest, {
8697
- ref: ref
8698
- }, {
8699
- children: children
8700
- }), void 0);
8701
- });
8702
- const StyledTitle$1 = styled(DialogPrimitive.Title, {});
8703
- const StyledDescription$2 = styled(DialogPrimitive.Description, {
8704
- margin: '10px 0 20px',
8705
- color: '$textSecondary',
8706
- fontSize: 15,
8707
- lineHeight: 1.5
8708
- });
8709
- // Exports
8710
- const Dialog = DialogPrimitive.Root;
8711
- const DialogTrigger = DialogPrimitive.Trigger;
8712
- const DialogContent = Content$2;
8713
- const DialogTitle = StyledTitle$1;
8714
- const DialogDescription = StyledDescription$2;
8715
- const DialogClose = DialogPrimitive.Close;
8716
- const DialogOverlay = StyledOverlay$3;
8717
- const DialogPortal = DialogPrimitive.Portal;
8718
- DialogTrigger.displayName = 'DialogTrigger';
8719
- DialogContent.displayName = 'DialogContent';
8720
- DialogTitle.displayName = 'DialogTitle';
8721
- DialogDescription.displayName = 'DialogDescription';
8722
- DialogClose.displayName = 'DialogClose';
8723
- DialogOverlay.displayName = 'DialogOverlay';
8724
- DialogPortal.displayName = 'DialogPortal';
8725
-
8726
8645
  const _excluded$d = ["children"];
8727
8646
  var _jsxFileName$y = "/Users/ryanakbar20/Documents/project/majoo/majoo-ui/packages/react/src/components/popover/Popover.js";
8728
8647
  const {
@@ -8735,7 +8654,9 @@ const Popover = ({
8735
8654
  onOpenChange,
8736
8655
  placement,
8737
8656
  sideOffset: _sideOffset = 5,
8738
- hideOnScroll: _hideOnScroll = false
8657
+ hideOnScroll: _hideOnScroll = false,
8658
+ flip: _flip = true,
8659
+ onClose
8739
8660
  }) => {
8740
8661
  const [openState, setOpenState] = useState(false);
8741
8662
  useEffect(() => {
@@ -8746,8 +8667,11 @@ const Popover = ({
8746
8667
  }, [openState, onOpenChange]);
8747
8668
  const floatingHook = useFloating({
8748
8669
  open: openState,
8749
- onOpenChange: setOpenState,
8750
- middleware: [offset(_sideOffset), flip(), shift$2()],
8670
+ middleware: [offset(_sideOffset), shift$2(), _flip && flip()],
8671
+ onOpenChange: isOpen => {
8672
+ setOpenState(isOpen);
8673
+ !isOpen && (onClose === null || onClose === void 0 ? void 0 : onClose());
8674
+ },
8751
8675
  placement
8752
8676
  });
8753
8677
  const {
@@ -8768,7 +8692,7 @@ const Popover = ({
8768
8692
  __self: undefined,
8769
8693
  __source: {
8770
8694
  fileName: _jsxFileName$y,
8771
- lineNumber: 49,
8695
+ lineNumber: 60,
8772
8696
  columnNumber: 10
8773
8697
  }
8774
8698
  }, children);
@@ -8810,14 +8734,14 @@ const PopoverContent = ({
8810
8734
  __self: undefined,
8811
8735
  __source: {
8812
8736
  fileName: _jsxFileName$y,
8813
- lineNumber: 67,
8737
+ lineNumber: 78,
8814
8738
  columnNumber: 65
8815
8739
  }
8816
8740
  }, child),
8817
8741
  __self: undefined,
8818
8742
  __source: {
8819
8743
  fileName: _jsxFileName$y,
8820
- lineNumber: 67,
8744
+ lineNumber: 78,
8821
8745
  columnNumber: 5
8822
8746
  }
8823
8747
  }, /*#__PURE__*/React__default.createElement(FloatingFocusManager, {
@@ -8828,7 +8752,7 @@ const PopoverContent = ({
8828
8752
  __self: undefined,
8829
8753
  __source: {
8830
8754
  fileName: _jsxFileName$y,
8831
- lineNumber: 68,
8755
+ lineNumber: 79,
8832
8756
  columnNumber: 7
8833
8757
  }
8834
8758
  }, /*#__PURE__*/React__default.createElement("div", _extends({}, getFloatingProps({
@@ -8843,7 +8767,7 @@ const PopoverContent = ({
8843
8767
  __self: undefined,
8844
8768
  __source: {
8845
8769
  fileName: _jsxFileName$y,
8846
- lineNumber: 69,
8770
+ lineNumber: 80,
8847
8771
  columnNumber: 9
8848
8772
  }
8849
8773
  }), children))) : /*#__PURE__*/React__default.createElement(React__default.Fragment, null);
@@ -8864,7 +8788,7 @@ const PopoverClose = _ref => {
8864
8788
  __self: undefined,
8865
8789
  __source: {
8866
8790
  fileName: _jsxFileName$y,
8867
- lineNumber: 93,
8791
+ lineNumber: 104,
8868
8792
  columnNumber: 5
8869
8793
  }
8870
8794
  }), children);
@@ -9203,9 +9127,10 @@ const InputSelect = /*#__PURE__*/forwardRef((_a, ref) => {
9203
9127
  isLoading = false,
9204
9128
  showTooltip = false,
9205
9129
  css,
9206
- renderFooter
9130
+ renderFooter,
9131
+ optionCss
9207
9132
  } = _a,
9208
- props = __rest(_a, ["option", "onChange", "value", "placeholder", "searchPlaceholder", "embedSearch", "size", "disabled", "search", "iconColor", "hideArrowicon", "showLeadingIcon", "placement", "disabledOptions", "textSelector", "valueSelector", "readOnly", "isInvalid", "noOptionIcon", "fetchData", "onSearch", "isLoading", "showTooltip", "css", "renderFooter"]);
9133
+ props = __rest(_a, ["option", "onChange", "value", "placeholder", "searchPlaceholder", "embedSearch", "size", "disabled", "search", "iconColor", "hideArrowicon", "showLeadingIcon", "placement", "disabledOptions", "textSelector", "valueSelector", "readOnly", "isInvalid", "noOptionIcon", "fetchData", "onSearch", "isLoading", "showTooltip", "css", "renderFooter", "optionCss"]);
9209
9134
  const {
9210
9135
  t
9211
9136
  } = useTranslation(['MajooUI/inputSelect', 'translation']);
@@ -9439,11 +9364,11 @@ const InputSelect = /*#__PURE__*/forwardRef((_a, ref) => {
9439
9364
  }, {
9440
9365
  suppressRefError: true
9441
9366
  }), {
9442
- css: {
9367
+ css: Object.assign({
9443
9368
  display: isOpen ? 'block' : 'none',
9444
9369
  zIndex: '$popover',
9445
9370
  pointerEvents: 'auto'
9446
- },
9371
+ }, optionCss),
9447
9372
  withFooter: renderFooter && typeof renderFooter === 'function',
9448
9373
  placement: placement
9449
9374
  }, {
@@ -10913,7 +10838,7 @@ const CheckOutline = props => /*#__PURE__*/React.createElement("svg", _extends({
10913
10838
  }
10914
10839
  }));
10915
10840
 
10916
- const _excluded$c = ["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"];
10841
+ const _excluded$c = ["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"];
10917
10842
  var _jsxFileName$w = "/Users/ryanakbar20/Documents/project/majoo/majoo-ui/packages/react/src/components/form/components/InputSelectCheck/InputSelectCheck.js";
10918
10843
  const Wrapper$1 = styled('div', {
10919
10844
  margin: 0,
@@ -11175,7 +11100,8 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11175
11100
  toggleInput,
11176
11101
  fetchData,
11177
11102
  onSearch,
11178
- isLoading
11103
+ isLoading,
11104
+ maxSelectedItem
11179
11105
  } = _ref,
11180
11106
  props = _objectWithoutPropertiesLoose(_ref, _excluded$c);
11181
11107
  const {
@@ -11189,6 +11115,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11189
11115
  const [inputSelectValue, setInputSelectValue] = React__default.useState(defaultValue || []);
11190
11116
  const [query, setQuery] = React__default.useState('');
11191
11117
  const scrollerRef = React__default.useRef(null);
11118
+ const isShowSelectAll = showSelectAll && !maxSelectedItem;
11192
11119
  useEffect(() => {
11193
11120
  var _scrollerRef$current;
11194
11121
  (_scrollerRef$current = scrollerRef.current) === null || _scrollerRef$current === void 0 ? void 0 : _scrollerRef$current.scrollTo({
@@ -11411,17 +11338,25 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11411
11338
  }
11412
11339
  }
11413
11340
  });
11341
+ const getOption = useCallback(() => option === null || option === void 0 ? void 0 : option.map(item => {
11342
+ const isMaxSelectedItem = maxSelectedItem && (selectedValue === null || selectedValue === void 0 ? void 0 : selectedValue.length) >= maxSelectedItem;
11343
+ if (isMaxSelectedItem && !(selectedValue !== null && selectedValue !== void 0 && selectedValue.includes(item.id))) {
11344
+ item.hideCheck = true;
11345
+ item.isDisabled = true;
11346
+ }
11347
+ return item;
11348
+ }), [maxSelectedItem, option, selectedValue]);
11414
11349
  useEffect(() => {
11415
11350
  sortItems();
11416
- setItems(showSelectAll ? [{
11351
+ setItems(isShowSelectAll ? [{
11417
11352
  id: '!all',
11418
11353
  name: selectAllLabel != null ? selectAllLabel : t('selectAllLabelText', 'Pilih Semua')
11419
- }, ...option] : option);
11420
- setInitItems(showSelectAll ? [{
11354
+ }, ...getOption()] : getOption());
11355
+ setInitItems(isShowSelectAll ? [{
11421
11356
  id: '!all',
11422
11357
  name: selectAllLabel != null ? selectAllLabel : t('selectAllLabelText', 'Pilih Semua')
11423
- }, ...option] : option);
11424
- }, [option, showSelectAll]);
11358
+ }, ...getOption()] : getOption());
11359
+ }, [getOption, isShowSelectAll]);
11425
11360
  useEffect(() => {
11426
11361
  if (selectedValue.length > 0 && disabledOptions.length === 0) {
11427
11362
  setInitItems(sortValue);
@@ -11434,16 +11369,16 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11434
11369
  useEffect(() => {
11435
11370
  if (disabledOptions.length > 0) {
11436
11371
  const options = generateOptions(sortDisabled);
11437
- setItems(showSelectAll ? [{
11372
+ setItems(isShowSelectAll ? [{
11438
11373
  id: '!all',
11439
11374
  name: selectAllLabel != null ? selectAllLabel : t('selectAllLabelText', 'Pilih Semua')
11440
11375
  }, ...options] : options);
11441
- setInitItems(showSelectAll ? [{
11376
+ setInitItems(isShowSelectAll ? [{
11442
11377
  id: '!all',
11443
11378
  name: selectAllLabel != null ? selectAllLabel : t('selectAllLabelText', 'Pilih Semua')
11444
11379
  }, ...options] : options);
11445
11380
  }
11446
- }, [disabledOptions, showSelectAll]);
11381
+ }, [disabledOptions, isShowSelectAll]);
11447
11382
  useEffect(() => {
11448
11383
  setSelectedValue(items.length > 0 && inputSelectValue.length === items.length - 1 ? ['!all', ...inputSelectValue] : inputSelectValue);
11449
11384
  }, [inputSelectValue, items]);
@@ -11463,7 +11398,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11463
11398
  __self: undefined,
11464
11399
  __source: {
11465
11400
  fileName: _jsxFileName$w,
11466
- lineNumber: 596,
11401
+ lineNumber: 611,
11467
11402
  columnNumber: 7
11468
11403
  }
11469
11404
  }), /*#__PURE__*/React__default.createElement(Select, {
@@ -11473,7 +11408,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11473
11408
  __self: undefined,
11474
11409
  __source: {
11475
11410
  fileName: _jsxFileName$w,
11476
- lineNumber: 597,
11411
+ lineNumber: 612,
11477
11412
  columnNumber: 9
11478
11413
  }
11479
11414
  }, /*#__PURE__*/React__default.createElement(InputWrapper$1, _extends({}, getComboboxProps(getDropdownProps({
@@ -11488,7 +11423,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11488
11423
  __self: undefined,
11489
11424
  __source: {
11490
11425
  fileName: _jsxFileName$w,
11491
- lineNumber: 598,
11426
+ lineNumber: 613,
11492
11427
  columnNumber: 11
11493
11428
  }
11494
11429
  }), /*#__PURE__*/React__default.createElement(Input$6, _extends({}, getInputProps({
@@ -11506,7 +11441,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11506
11441
  __self: undefined,
11507
11442
  __source: {
11508
11443
  fileName: _jsxFileName$w,
11509
- lineNumber: 608,
11444
+ lineNumber: 623,
11510
11445
  columnNumber: 13
11511
11446
  }
11512
11447
  })), /*#__PURE__*/React__default.createElement(Button$2, _extends({}, getToggleButtonProps({
@@ -11519,7 +11454,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11519
11454
  __self: undefined,
11520
11455
  __source: {
11521
11456
  fileName: _jsxFileName$w,
11522
- lineNumber: 615,
11457
+ lineNumber: 630,
11523
11458
  columnNumber: 13
11524
11459
  }
11525
11460
  }), placeholder != null ? placeholder : t('placeholder', 'Pilih Item'))), /*#__PURE__*/React__default.createElement(IconWrapper, _extends({}, getToggleButtonProps({
@@ -11530,7 +11465,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11530
11465
  __self: undefined,
11531
11466
  __source: {
11532
11467
  fileName: _jsxFileName$w,
11533
- lineNumber: 625,
11468
+ lineNumber: 640,
11534
11469
  columnNumber: 11
11535
11470
  }
11536
11471
  }), /*#__PURE__*/React__default.createElement(IconCaretDown, {
@@ -11538,7 +11473,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11538
11473
  __self: undefined,
11539
11474
  __source: {
11540
11475
  fileName: _jsxFileName$w,
11541
- lineNumber: 630,
11476
+ lineNumber: 645,
11542
11477
  columnNumber: 13
11543
11478
  }
11544
11479
  }))), helperText && /*#__PURE__*/React__default.createElement(Paragraph, {
@@ -11551,7 +11486,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11551
11486
  __self: undefined,
11552
11487
  __source: {
11553
11488
  fileName: _jsxFileName$w,
11554
- lineNumber: 634,
11489
+ lineNumber: 649,
11555
11490
  columnNumber: 11
11556
11491
  }
11557
11492
  }, helperText), showSelectedTag && !showCounter && selectedItems.length !== 0 && /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(TagWrapper$2, {
@@ -11559,7 +11494,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11559
11494
  __self: undefined,
11560
11495
  __source: {
11561
11496
  fileName: _jsxFileName$w,
11562
- lineNumber: 640,
11497
+ lineNumber: 655,
11563
11498
  columnNumber: 13
11564
11499
  }
11565
11500
  }, isShowTagSelectAll ? /*#__PURE__*/React__default.createElement(Tag, _extends({
@@ -11579,7 +11514,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11579
11514
  __self: undefined,
11580
11515
  __source: {
11581
11516
  fileName: _jsxFileName$w,
11582
- lineNumber: 642,
11517
+ lineNumber: 657,
11583
11518
  columnNumber: 17
11584
11519
  }
11585
11520
  }), selectAllLabel != null ? selectAllLabel : t('selectAllLabelText', 'Pilih Semua')) : selectedItems === null || selectedItems === void 0 ? void 0 : (_selectedItems$filter = selectedItems.filter(item => (item === null || item === void 0 ? void 0 : item.id) !== '!all')) === null || _selectedItems$filter === void 0 ? void 0 : (_selectedItems$filter2 = _selectedItems$filter.filter((_, idx) => {
@@ -11609,7 +11544,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11609
11544
  __self: undefined,
11610
11545
  __source: {
11611
11546
  fileName: _jsxFileName$w,
11612
- lineNumber: 670,
11547
+ lineNumber: 685,
11613
11548
  columnNumber: 21
11614
11549
  }
11615
11550
  }), selectedItem.name))), collapsible && !isShowTagSelectAll && (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 5 && /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -11618,7 +11553,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11618
11553
  __self: undefined,
11619
11554
  __source: {
11620
11555
  fileName: _jsxFileName$w,
11621
- lineNumber: 692,
11556
+ lineNumber: 707,
11622
11557
  columnNumber: 15
11623
11558
  }
11624
11559
  }, /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -11628,14 +11563,14 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11628
11563
  __self: undefined,
11629
11564
  __source: {
11630
11565
  fileName: _jsxFileName$w,
11631
- lineNumber: 693,
11566
+ lineNumber: 708,
11632
11567
  columnNumber: 17
11633
11568
  }
11634
11569
  }, /*#__PURE__*/React__default.createElement(Separator$2, {
11635
11570
  __self: undefined,
11636
11571
  __source: {
11637
11572
  fileName: _jsxFileName$w,
11638
- lineNumber: 694,
11573
+ lineNumber: 709,
11639
11574
  columnNumber: 19
11640
11575
  }
11641
11576
  }), /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -11649,7 +11584,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11649
11584
  __self: undefined,
11650
11585
  __source: {
11651
11586
  fileName: _jsxFileName$w,
11652
- lineNumber: 695,
11587
+ lineNumber: 710,
11653
11588
  columnNumber: 19
11654
11589
  }
11655
11590
  }, showAllTags ? /*#__PURE__*/React__default.createElement(ChevronUpOutline, {
@@ -11657,7 +11592,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11657
11592
  __self: undefined,
11658
11593
  __source: {
11659
11594
  fileName: _jsxFileName$w,
11660
- lineNumber: 701,
11595
+ lineNumber: 716,
11661
11596
  columnNumber: 23
11662
11597
  }
11663
11598
  }) : /*#__PURE__*/React__default.createElement(ChevronDownOutline, {
@@ -11665,7 +11600,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11665
11600
  __self: undefined,
11666
11601
  __source: {
11667
11602
  fileName: _jsxFileName$w,
11668
- lineNumber: 703,
11603
+ lineNumber: 718,
11669
11604
  columnNumber: 23
11670
11605
  }
11671
11606
  }), /*#__PURE__*/React__default.createElement(Paragraph, {
@@ -11677,14 +11612,14 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11677
11612
  __self: undefined,
11678
11613
  __source: {
11679
11614
  fileName: _jsxFileName$w,
11680
- lineNumber: 705,
11615
+ lineNumber: 720,
11681
11616
  columnNumber: 21
11682
11617
  }
11683
11618
  }, showAllTags ? t('showSomeText', 'Tampilkan Sebagian') : t('showAllText', 'Tampilkan Semua'))), /*#__PURE__*/React__default.createElement(Separator$2, {
11684
11619
  __self: undefined,
11685
11620
  __source: {
11686
11621
  fileName: _jsxFileName$w,
11687
- lineNumber: 709,
11622
+ lineNumber: 724,
11688
11623
  columnNumber: 19
11689
11624
  }
11690
11625
  })), /*#__PURE__*/React__default.createElement(Paragraph, {
@@ -11695,7 +11630,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11695
11630
  __self: undefined,
11696
11631
  __source: {
11697
11632
  fileName: _jsxFileName$w,
11698
- lineNumber: 711,
11633
+ lineNumber: 726,
11699
11634
  columnNumber: 17
11700
11635
  }
11701
11636
  }, `${selectedItems === null || selectedItems === void 0 ? void 0 : (_selectedItems$filter3 = selectedItems.filter(item => (item === null || item === void 0 ? void 0 : item.id) !== '!all')) === null || _selectedItems$filter3 === void 0 ? void 0 : _selectedItems$filter3.length} ${labelCounter || t('labelCounterText', 'Item terpilih')}`))), showCounter && !isShowTagSelectAll && Boolean(selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) && /*#__PURE__*/React__default.createElement(Paragraph, {
@@ -11707,7 +11642,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11707
11642
  __self: undefined,
11708
11643
  __source: {
11709
11644
  fileName: _jsxFileName$w,
11710
- lineNumber: 721,
11645
+ lineNumber: 736,
11711
11646
  columnNumber: 11
11712
11647
  }
11713
11648
  }, `${selectedItems === null || selectedItems === void 0 ? void 0 : (_selectedItems$filter4 = selectedItems.filter(item => (item === null || item === void 0 ? void 0 : item.id) !== '!all')) === null || _selectedItems$filter4 === void 0 ? void 0 : _selectedItems$filter4.length} ${labelCounter || t('labelCounterText', 'Item terpilih')}`), /*#__PURE__*/React__default.createElement(OptionWrapper$1, {
@@ -11719,7 +11654,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11719
11654
  __self: undefined,
11720
11655
  __source: {
11721
11656
  fileName: _jsxFileName$w,
11722
- lineNumber: 728,
11657
+ lineNumber: 743,
11723
11658
  columnNumber: 9
11724
11659
  }
11725
11660
  }, isLoading && /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -11740,7 +11675,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11740
11675
  __self: undefined,
11741
11676
  __source: {
11742
11677
  fileName: _jsxFileName$w,
11743
- lineNumber: 734,
11678
+ lineNumber: 749,
11744
11679
  columnNumber: 13
11745
11680
  }
11746
11681
  }, /*#__PURE__*/React__default.createElement(Text$1, {
@@ -11748,7 +11683,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11748
11683
  __self: undefined,
11749
11684
  __source: {
11750
11685
  fileName: _jsxFileName$w,
11751
- lineNumber: 750,
11686
+ lineNumber: 765,
11752
11687
  columnNumber: 15
11753
11688
  }
11754
11689
  }, "Loading....")), items.length > 0 || isLoading ? /*#__PURE__*/React__default.createElement(Option, _extends({}, getMenuProps({
@@ -11759,7 +11694,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11759
11694
  __self: undefined,
11760
11695
  __source: {
11761
11696
  fileName: _jsxFileName$w,
11762
- lineNumber: 756,
11697
+ lineNumber: 771,
11763
11698
  columnNumber: 13
11764
11699
  }
11765
11700
  }), /*#__PURE__*/React__default.createElement(ConditionalWrapper, {
@@ -11774,14 +11709,14 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11774
11709
  __self: undefined,
11775
11710
  __source: {
11776
11711
  fileName: _jsxFileName$w,
11777
- lineNumber: 760,
11712
+ lineNumber: 775,
11778
11713
  columnNumber: 19
11779
11714
  }
11780
11715
  }, child),
11781
11716
  __self: undefined,
11782
11717
  __source: {
11783
11718
  fileName: _jsxFileName$w,
11784
- lineNumber: 757,
11719
+ lineNumber: 772,
11785
11720
  columnNumber: 15
11786
11721
  }
11787
11722
  }, isOpen && items.map((item, index) => {
@@ -11801,7 +11736,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11801
11736
  __self: undefined,
11802
11737
  __source: {
11803
11738
  fileName: _jsxFileName$w,
11804
- lineNumber: 772,
11739
+ lineNumber: 787,
11805
11740
  columnNumber: 21
11806
11741
  }
11807
11742
  }), /*#__PURE__*/React__default.createElement(IconWrapper, {
@@ -11814,37 +11749,37 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11814
11749
  __self: undefined,
11815
11750
  __source: {
11816
11751
  fileName: _jsxFileName$w,
11817
- lineNumber: 785,
11752
+ lineNumber: 800,
11818
11753
  columnNumber: 23
11819
11754
  }
11820
- }, item.isDisabled ? /*#__PURE__*/React__default.createElement(CheckOutline, {
11755
+ }, !(item !== null && item !== void 0 && item.hideCheck) && (item.isDisabled ? /*#__PURE__*/React__default.createElement(CheckOutline, {
11821
11756
  color: colors$7.iconDisable,
11822
11757
  __self: undefined,
11823
11758
  __source: {
11824
11759
  fileName: _jsxFileName$w,
11825
- lineNumber: 794,
11826
- columnNumber: 27
11760
+ lineNumber: 810,
11761
+ columnNumber: 29
11827
11762
  }
11828
11763
  }) : selectedValue.includes(item.id) && (item.isDisabled === false || item.isDisabled === undefined) && /*#__PURE__*/React__default.createElement(CheckOutline, {
11829
11764
  color: colors$7.iconGreen,
11830
11765
  __self: undefined,
11831
11766
  __source: {
11832
11767
  fileName: _jsxFileName$w,
11833
- lineNumber: 798,
11834
- columnNumber: 29
11768
+ lineNumber: 814,
11769
+ columnNumber: 31
11835
11770
  }
11836
- }), showSelectAll && (item === null || item === void 0 ? void 0 : item.id) === '!all' && selectedValue !== null && selectedValue !== void 0 && selectedValue.length && (selectedValue === null || selectedValue === void 0 ? void 0 : selectedValue.length) < (items === null || items === void 0 ? void 0 : items.length) ? /*#__PURE__*/React__default.createElement(IndeterminateFilled, {
11771
+ })), isShowSelectAll && (item === null || item === void 0 ? void 0 : item.id) === '!all' && selectedValue !== null && selectedValue !== void 0 && selectedValue.length && (selectedValue === null || selectedValue === void 0 ? void 0 : selectedValue.length) < (items === null || items === void 0 ? void 0 : items.length) ? /*#__PURE__*/React__default.createElement(IndeterminateFilled, {
11837
11772
  __self: undefined,
11838
11773
  __source: {
11839
11774
  fileName: _jsxFileName$w,
11840
- lineNumber: 805,
11775
+ lineNumber: 821,
11841
11776
  columnNumber: 27
11842
11777
  }
11843
11778
  }, "-") : /*#__PURE__*/React__default.createElement("div", {
11844
11779
  __self: undefined,
11845
11780
  __source: {
11846
11781
  fileName: _jsxFileName$w,
11847
- lineNumber: 807,
11782
+ lineNumber: 823,
11848
11783
  columnNumber: 27
11849
11784
  }
11850
11785
  })), /*#__PURE__*/React__default.createElement(Item$3, {
@@ -11855,7 +11790,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11855
11790
  __self: undefined,
11856
11791
  __source: {
11857
11792
  fileName: _jsxFileName$w,
11858
- lineNumber: 810,
11793
+ lineNumber: 826,
11859
11794
  columnNumber: 23
11860
11795
  }
11861
11796
  }, item.render ? (_item$render = item.render) === null || _item$render === void 0 ? void 0 : _item$render.call(item, item.name) : item.name));
@@ -11869,14 +11804,14 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11869
11804
  __self: undefined,
11870
11805
  __source: {
11871
11806
  fileName: _jsxFileName$w,
11872
- lineNumber: 818,
11807
+ lineNumber: 834,
11873
11808
  columnNumber: 13
11874
11809
  }
11875
11810
  }), /*#__PURE__*/React__default.createElement(StyledDiv, {
11876
11811
  __self: undefined,
11877
11812
  __source: {
11878
11813
  fileName: _jsxFileName$w,
11879
- lineNumber: 819,
11814
+ lineNumber: 835,
11880
11815
  columnNumber: 15
11881
11816
  }
11882
11817
  }, /*#__PURE__*/React__default.createElement("div", {
@@ -11886,7 +11821,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11886
11821
  __self: undefined,
11887
11822
  __source: {
11888
11823
  fileName: _jsxFileName$w,
11889
- lineNumber: 820,
11824
+ lineNumber: 836,
11890
11825
  columnNumber: 17
11891
11826
  }
11892
11827
  }, /*#__PURE__*/React__default.createElement(CircleInfoOutline, {
@@ -11898,7 +11833,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
11898
11833
  __self: undefined,
11899
11834
  __source: {
11900
11835
  fileName: _jsxFileName$w,
11901
- lineNumber: 821,
11836
+ lineNumber: 837,
11902
11837
  columnNumber: 19
11903
11838
  }
11904
11839
  })), textEmptyItem != null ? textEmptyItem : t('emptyItemText', 'Item tidak ditemukan')))));
@@ -11932,7 +11867,8 @@ InputSelectCheck.propTypes = {
11932
11867
  fetchData: PropTypes.func,
11933
11868
  onSearch: PropTypes.func,
11934
11869
  isLoading: PropTypes.bool,
11935
- showTagSelectAll: PropTypes.bool
11870
+ showTagSelectAll: PropTypes.bool,
11871
+ maxSelectedItem: PropTypes.number
11936
11872
  };
11937
11873
  InputSelectCheck.defaultProps = {
11938
11874
  size: 'lg',
@@ -11991,7 +11927,8 @@ InputSelectTag.propTypes = {
11991
11927
  fetchData: PropTypes.func,
11992
11928
  onSearch: PropTypes.func,
11993
11929
  isLoading: PropTypes.bool,
11994
- showTagSelectAll: PropTypes.bool
11930
+ showTagSelectAll: PropTypes.bool,
11931
+ maxSelectedItem: PropTypes.number
11995
11932
  };
11996
11933
  InputSelectTag.defaultProps = {
11997
11934
  size: 'lg',
@@ -13645,7 +13582,7 @@ const StyledTrigger$1 = styled(TabsPrimitive.Trigger, {
13645
13582
  size: 'lg'
13646
13583
  }
13647
13584
  });
13648
- const StyledContent$4 = styled(TabsPrimitive.Content, {
13585
+ const StyledContent$5 = styled(TabsPrimitive.Content, {
13649
13586
  flexGrow: 1,
13650
13587
  borderRadius: '$lg',
13651
13588
  backgroundColor: '$white',
@@ -13865,7 +13802,7 @@ const TabsTrigger$1 = _ref3 => {
13865
13802
  };
13866
13803
  const TabsContent$1 = _ref4 => {
13867
13804
  let props = _objectWithoutPropertiesLoose(_ref4, _excluded4);
13868
- return /*#__PURE__*/React__default.createElement(StyledContent$4, _extends({}, props, {
13805
+ return /*#__PURE__*/React__default.createElement(StyledContent$5, _extends({}, props, {
13869
13806
  __self: undefined,
13870
13807
  __source: {
13871
13808
  fileName: _jsxFileName$r,
@@ -14548,6 +14485,106 @@ const IconButton = styled('button', {
14548
14485
  }
14549
14486
  });
14550
14487
 
14488
+ const StyledOverlay$3 = styled(DialogPrimitive.Overlay, {
14489
+ backgroundColor: '$bgDimmer',
14490
+ position: 'fixed',
14491
+ inset: 0
14492
+ });
14493
+ const StyledContent$4 = styled(DialogPrimitive.Content, {
14494
+ position: 'fixed',
14495
+ top: '50%',
14496
+ left: '50%',
14497
+ transform: 'translate(-50%, -50%)',
14498
+ '&:focus': {
14499
+ outline: 'none'
14500
+ },
14501
+ width: '100%',
14502
+ variants: {
14503
+ /**
14504
+ * Size of modal width, the height sized according to content. Size must be placed on DialogContent element
14505
+ * if it's on mobile view will auto set maxWidth to 'unset'.
14506
+ */
14507
+ size: {
14508
+ auto: {
14509
+ '@md': {
14510
+ width: 'auto'
14511
+ }
14512
+ },
14513
+ xs: {
14514
+ maxWidth: 'unset',
14515
+ '@md': {
14516
+ maxWidth: '320px'
14517
+ }
14518
+ },
14519
+ sm: {
14520
+ maxWidth: 'unset',
14521
+ '@md': {
14522
+ maxWidth: '384px'
14523
+ }
14524
+ },
14525
+ md: {
14526
+ maxWidth: 'unset',
14527
+ '@md': {
14528
+ maxWidth: '448px'
14529
+ }
14530
+ },
14531
+ lg: {
14532
+ maxWidth: 'unset',
14533
+ '@md': {
14534
+ maxWidth: '512px'
14535
+ }
14536
+ },
14537
+ xl: {
14538
+ maxWidth: 'unset',
14539
+ '@md': {
14540
+ maxWidth: '576px'
14541
+ }
14542
+ },
14543
+ full: {
14544
+ maxWidth: '100vw',
14545
+ minHeight: '100vh'
14546
+ }
14547
+ }
14548
+ },
14549
+ defaultVariants: {
14550
+ size: 'md'
14551
+ }
14552
+ });
14553
+ const Content$2 = /*#__PURE__*/React__default.forwardRef((props, ref) => {
14554
+ const {
14555
+ children
14556
+ } = props,
14557
+ rest = __rest(props, ["children"]);
14558
+ return jsx(StyledContent$4, Object.assign({}, rest, {
14559
+ ref: ref
14560
+ }, {
14561
+ children: children
14562
+ }), void 0);
14563
+ });
14564
+ const StyledTitle$1 = styled(DialogPrimitive.Title, {});
14565
+ const StyledDescription$2 = styled(DialogPrimitive.Description, {
14566
+ margin: '10px 0 20px',
14567
+ color: '$textSecondary',
14568
+ fontSize: 15,
14569
+ lineHeight: 1.5
14570
+ });
14571
+ // Exports
14572
+ const Dialog = DialogPrimitive.Root;
14573
+ const DialogTrigger = DialogPrimitive.Trigger;
14574
+ const DialogContent = Content$2;
14575
+ const DialogTitle = StyledTitle$1;
14576
+ const DialogDescription = StyledDescription$2;
14577
+ const DialogClose = DialogPrimitive.Close;
14578
+ const DialogOverlay = StyledOverlay$3;
14579
+ const DialogPortal = DialogPrimitive.Portal;
14580
+ DialogTrigger.displayName = 'DialogTrigger';
14581
+ DialogContent.displayName = 'DialogContent';
14582
+ DialogTitle.displayName = 'DialogTitle';
14583
+ DialogDescription.displayName = 'DialogDescription';
14584
+ DialogClose.displayName = 'DialogClose';
14585
+ DialogOverlay.displayName = 'DialogOverlay';
14586
+ DialogPortal.displayName = 'DialogPortal';
14587
+
14551
14588
  const ModalDialogFooter = styled('div');
14552
14589
  ModalDialogFooter.displayName = 'ModalDialogFooter';
14553
14590
  const ModalDialogTitle = styled('div');
@@ -17679,7 +17716,8 @@ function InputDatePicker({
17679
17716
  readOnly,
17680
17717
  isInvalid,
17681
17718
  allowReset,
17682
- portalled
17719
+ portalled,
17720
+ onClose
17683
17721
  }) {
17684
17722
  const {
17685
17723
  t,
@@ -17819,8 +17857,10 @@ function InputDatePicker({
17819
17857
  }, void 0);
17820
17858
  };
17821
17859
  return !isMobile ? jsxs(Popover, Object.assign({
17860
+ flip: false,
17822
17861
  open: openPicker,
17823
17862
  onOpenChange: setOpenPicker,
17863
+ onClose: onClose,
17824
17864
  placement: placement
17825
17865
  }, {
17826
17866
  children: [disabled || readOnly ? jsx(Box, Object.assign({
@@ -17885,7 +17925,10 @@ function InputDatePicker({
17885
17925
  }), void 0)
17886
17926
  }), void 0), jsx(Drawer, Object.assign({
17887
17927
  open: openPicker,
17888
- onOpenChange: handleChange,
17928
+ onOpenChange: isOpen => {
17929
+ handleChange();
17930
+ !isOpen && (onClose === null || onClose === void 0 ? void 0 : onClose());
17931
+ },
17889
17932
  side: "bottom",
17890
17933
  portalled: false
17891
17934
  }, {