@majoo-ui/react 1.58.8 → 1.58.10

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.umd.js CHANGED
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react'), require('prop-types'), require('@stitches/react'), require('@majoo-ui/core'), require('@majoo-ui/icons'), require('react-transition-group'), require('react/jsx-runtime'), require('@majoo-ui/helpers'), require('react-i18next'), require('moment'), require('@radix-ui/react-avatar'), require('@radix-ui/react-tooltip'), require('@radix-ui/react-progress'), require('@radix-ui/react-label'), require('@radix-ui/react-checkbox'), require('@radix-ui/react-radio-group'), require('react-hook-form'), require('@radix-ui/react-switch'), require('downshift'), require('react-infinite-scroller'), require('lodash.debounce'), require('@floating-ui/react'), require('otp-input-react'), require('@radix-ui/react-dialog'), require('@radix-ui/react-toggle-group'), require('dayzed'), require('@radix-ui/react-separator'), require('@radix-ui/react-slider'), require('@radix-ui/react-tabs'), require('@radix-ui/react-accordion'), require('react-table'), require('react-dom'), require('@radix-ui/react-alert-dialog'), require('@radix-ui/react-dropdown-menu'), require('@radix-ui/react-aspect-ratio'), require('react-color/lib/components/common'), require('react-color/lib/helpers/color'), require('react-step-wizard'), require('@react-google-maps/api'), require('superagent'), require('recharts'), require('draft-js'), require('react-draft-wysiwyg'), require('react-contextmenu'), require('react-loading-skeleton'), require('react-loading-skeleton/dist/skeleton.css'), require('react-ui-scrollspy'), require('react-image-crop'), require('browser-image-compression'), require('react-table-sticky')) :
3
- typeof define === 'function' && define.amd ? define(['exports', 'react', 'prop-types', '@stitches/react', '@majoo-ui/core', '@majoo-ui/icons', 'react-transition-group', 'react/jsx-runtime', '@majoo-ui/helpers', 'react-i18next', 'moment', '@radix-ui/react-avatar', '@radix-ui/react-tooltip', '@radix-ui/react-progress', '@radix-ui/react-label', '@radix-ui/react-checkbox', '@radix-ui/react-radio-group', 'react-hook-form', '@radix-ui/react-switch', 'downshift', 'react-infinite-scroller', 'lodash.debounce', '@floating-ui/react', 'otp-input-react', '@radix-ui/react-dialog', '@radix-ui/react-toggle-group', 'dayzed', '@radix-ui/react-separator', '@radix-ui/react-slider', '@radix-ui/react-tabs', '@radix-ui/react-accordion', 'react-table', 'react-dom', '@radix-ui/react-alert-dialog', '@radix-ui/react-dropdown-menu', '@radix-ui/react-aspect-ratio', 'react-color/lib/components/common', 'react-color/lib/helpers/color', 'react-step-wizard', '@react-google-maps/api', 'superagent', 'recharts', 'draft-js', 'react-draft-wysiwyg', 'react-contextmenu', 'react-loading-skeleton', 'react-loading-skeleton/dist/skeleton.css', 'react-ui-scrollspy', 'react-image-crop', 'browser-image-compression', 'react-table-sticky'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.React = {}, global.React, global.PropTypes, global.react, global.core, global.icons, global.reactTransitionGroup, global.jsxRuntime, global.helpers, global.reactI18next, global.moment, global.AvatarPrimitive, global.TooltipPrimitive, global.ProgressPrimitive, global.LabelPrimitive, global.CheckboxPrimitive, global.RadioGroupPrimitive, global.reactHookForm, global.SwitchPrimitive, global.Downshift, global.InfiniteScroll, global.debounce, global.react$1, global.OTPInput, global.DialogPrimitive, global.ToggleGroupPrimitive, global.dayzed, global.SeparatorPrimitive, global.SliderPrimitive, global.TabsPrimitive, global.AccordionPrimitive, global.reactTable, global.ReactDOM, global.ADialog, global.DropdownMenuPrimitive, global.AspectRatioPrimitive, global.common, global.color, global.StepWizard$1, global.api, global.request, global.recharts, global.draftJs, global.reactDraftWysiwyg, global.reactContextmenu, global.ReactSkeleton, null, global.ScrollSpy, global.ReactCrop, global.imageCompressionComponent, global.reactTableSticky));
5
- })(this, (function (exports, React, PropTypes, react, core, icons, reactTransitionGroup, jsxRuntime, helpers, reactI18next, moment, AvatarPrimitive, TooltipPrimitive, ProgressPrimitive, LabelPrimitive, CheckboxPrimitive, RadioGroupPrimitive, reactHookForm, SwitchPrimitive, Downshift, InfiniteScroll, debounce, react$1, OTPInput, DialogPrimitive, ToggleGroupPrimitive, dayzed, SeparatorPrimitive, SliderPrimitive, TabsPrimitive, AccordionPrimitive, reactTable, ReactDOM, ADialog, DropdownMenuPrimitive, AspectRatioPrimitive, common, color, StepWizard$1, api, request, recharts, draftJs, reactDraftWysiwyg, reactContextmenu, ReactSkeleton, skeleton_css, ScrollSpy, ReactCrop, imageCompressionComponent, reactTableSticky) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react'), require('prop-types'), require('@stitches/react'), require('@majoo-ui/core'), require('@majoo-ui/icons'), require('react-transition-group'), require('react/jsx-runtime'), require('@majoo-ui/helpers'), require('react-i18next'), require('moment'), require('@radix-ui/react-avatar'), require('@radix-ui/react-tooltip'), require('@radix-ui/react-progress'), require('@radix-ui/react-label'), require('@radix-ui/react-checkbox'), require('@radix-ui/react-radio-group'), require('react-hook-form'), require('@radix-ui/react-switch'), require('downshift'), require('react-infinite-scroller'), require('lodash.debounce'), require('@floating-ui/react'), require('otp-input-react'), require('@radix-ui/react-dialog'), require('@radix-ui/react-toggle-group'), require('dayzed'), require('@radix-ui/react-separator'), require('@radix-ui/react-slider'), require('@radix-ui/react-tabs'), require('@radix-ui/react-accordion'), require('react-table'), require('react-dom'), require('@radix-ui/react-alert-dialog'), require('@radix-ui/react-dropdown-menu'), require('@radix-ui/react-aspect-ratio'), require('react-color/lib/components/common'), require('react-color/lib/helpers/color'), require('react-step-wizard'), require('@react-google-maps/api'), require('superagent'), require('recharts'), require('draft-js'), require('react-draft-wysiwyg'), require('react-contextmenu'), require('react-loading-skeleton'), require('react-loading-skeleton/dist/skeleton.css'), require('react-virtual'), require('react-ui-scrollspy'), require('react-image-crop'), require('browser-image-compression'), require('react-table-sticky')) :
3
+ typeof define === 'function' && define.amd ? define(['exports', 'react', 'prop-types', '@stitches/react', '@majoo-ui/core', '@majoo-ui/icons', 'react-transition-group', 'react/jsx-runtime', '@majoo-ui/helpers', 'react-i18next', 'moment', '@radix-ui/react-avatar', '@radix-ui/react-tooltip', '@radix-ui/react-progress', '@radix-ui/react-label', '@radix-ui/react-checkbox', '@radix-ui/react-radio-group', 'react-hook-form', '@radix-ui/react-switch', 'downshift', 'react-infinite-scroller', 'lodash.debounce', '@floating-ui/react', 'otp-input-react', '@radix-ui/react-dialog', '@radix-ui/react-toggle-group', 'dayzed', '@radix-ui/react-separator', '@radix-ui/react-slider', '@radix-ui/react-tabs', '@radix-ui/react-accordion', 'react-table', 'react-dom', '@radix-ui/react-alert-dialog', '@radix-ui/react-dropdown-menu', '@radix-ui/react-aspect-ratio', 'react-color/lib/components/common', 'react-color/lib/helpers/color', 'react-step-wizard', '@react-google-maps/api', 'superagent', 'recharts', 'draft-js', 'react-draft-wysiwyg', 'react-contextmenu', 'react-loading-skeleton', 'react-loading-skeleton/dist/skeleton.css', 'react-virtual', 'react-ui-scrollspy', 'react-image-crop', 'browser-image-compression', 'react-table-sticky'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.React = {}, global.React, global.PropTypes, global.react, global.core, global.icons, global.reactTransitionGroup, global.jsxRuntime, global.helpers, global.reactI18next, global.moment, global.AvatarPrimitive, global.TooltipPrimitive, global.ProgressPrimitive, global.LabelPrimitive, global.CheckboxPrimitive, global.RadioGroupPrimitive, global.reactHookForm, global.SwitchPrimitive, global.Downshift, global.InfiniteScroll, global.debounce, global.react$1, global.OTPInput, global.DialogPrimitive, global.ToggleGroupPrimitive, global.dayzed, global.SeparatorPrimitive, global.SliderPrimitive, global.TabsPrimitive, global.AccordionPrimitive, global.reactTable, global.ReactDOM, global.ADialog, global.DropdownMenuPrimitive, global.AspectRatioPrimitive, global.common, global.color, global.StepWizard$1, global.api, global.request, global.recharts, global.draftJs, global.reactDraftWysiwyg, global.reactContextmenu, global.ReactSkeleton, null, global.reactVirtual, global.ScrollSpy, global.ReactCrop, global.imageCompressionComponent, global.reactTableSticky));
5
+ })(this, (function (exports, React, PropTypes, react, core, icons, reactTransitionGroup, jsxRuntime, helpers, reactI18next, moment, AvatarPrimitive, TooltipPrimitive, ProgressPrimitive, LabelPrimitive, CheckboxPrimitive, RadioGroupPrimitive, reactHookForm, SwitchPrimitive, Downshift, InfiniteScroll, debounce, react$1, OTPInput, DialogPrimitive, ToggleGroupPrimitive, dayzed, SeparatorPrimitive, SliderPrimitive, TabsPrimitive, AccordionPrimitive, reactTable, ReactDOM, ADialog, DropdownMenuPrimitive, AspectRatioPrimitive, common, color, StepWizard$1, api, request, recharts, draftJs, reactDraftWysiwyg, reactContextmenu, ReactSkeleton, skeleton_css, reactVirtual, ScrollSpy, ReactCrop, imageCompressionComponent, reactTableSticky) { 'use strict';
6
6
 
7
7
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
8
 
@@ -12996,6 +12996,142 @@
12996
12996
  }
12997
12997
  }));
12998
12998
 
12999
+ var StyledAccordion = styled(AccordionPrimitive__namespace.Root, {});
13000
+ var Accordion = /*#__PURE__*/React__namespace.forwardRef(function (_a, forwardedRef) {
13001
+ var children = _a.children,
13002
+ props = __rest(_a, ["children"]);
13003
+ return jsxRuntime.jsx(StyledAccordion, __assign({
13004
+ ref: forwardedRef
13005
+ }, props, props.type === 'single' ? {
13006
+ collapsible: true
13007
+ } : {}, {
13008
+ children: children
13009
+ }), void 0);
13010
+ });
13011
+ var StyledItem$1 = styled(AccordionPrimitive__namespace.Item, {
13012
+ borderTop: '1px solid $colors$slate6',
13013
+ '&:last-of-type': {
13014
+ borderBottom: '1px solid $colors$slate6'
13015
+ }
13016
+ });
13017
+ var StyledHeader = styled(AccordionPrimitive__namespace.Header, {
13018
+ all: 'unset'
13019
+ });
13020
+ var StyledTrigger$1 = styled(AccordionPrimitive__namespace.Trigger, {
13021
+ all: 'unset',
13022
+ boxSizing: 'border-box',
13023
+ userSelect: 'none',
13024
+ '&::before': {
13025
+ boxSizing: 'border-box'
13026
+ },
13027
+ '&::after': {
13028
+ boxSizing: 'border-box'
13029
+ },
13030
+ cursor: 'pointer',
13031
+ display: 'flex',
13032
+ alignItems: 'center',
13033
+ color: '$hiContrast',
13034
+ width: '100%',
13035
+ '@hover': {
13036
+ '&:hover': {
13037
+ backgroundColor: '$slate2'
13038
+ }
13039
+ },
13040
+ '&:focus': {
13041
+ outline: 'none',
13042
+ boxShadow: 'inset 0 0 0 1px $colors$slate8, 0 0 0 1px $colors$slate8'
13043
+ },
13044
+ '& svg.icon-cdf': {
13045
+ color: '$white',
13046
+ size: '24px',
13047
+ transition: 'transform 175ms cubic-bezier(0.65, 0, 0.35, 1)'
13048
+ },
13049
+ '& svg.right': {
13050
+ marginRight: '$spacing-05'
13051
+ },
13052
+ '&[data-state="open"]': {
13053
+ '& svg.icon-cdf': {
13054
+ transform: 'rotate(180deg)'
13055
+ }
13056
+ },
13057
+ variants: {
13058
+ arrowPosition: {
13059
+ right: {
13060
+ justifyContent: 'space-between'
13061
+ },
13062
+ left: {
13063
+ justifyContent: 'start'
13064
+ }
13065
+ }
13066
+ }
13067
+ });
13068
+ var AccordionTrigger = /*#__PURE__*/React__namespace.forwardRef(function (_a, forwardedRef) {
13069
+ var children = _a.children,
13070
+ _b = _a.arrowPosition,
13071
+ arrowPosition = _b === void 0 ? 'right' : _b,
13072
+ _c = _a.hasContent,
13073
+ hasContent = _c === void 0 ? true : _c,
13074
+ _d = _a.arrowColor,
13075
+ arrowColor = _d === void 0 ? 'white' : _d,
13076
+ props = __rest(_a, ["children", "arrowPosition", "hasContent", "arrowColor"]);
13077
+ return jsxRuntime.jsx(StyledHeader, {
13078
+ children: jsxRuntime.jsx(StyledTrigger$1, __assign({}, props, {
13079
+ arrowPosition: arrowPosition,
13080
+ ref: forwardedRef
13081
+ }, {
13082
+ children: arrowPosition === 'right' ? jsxRuntime.jsxs(jsxRuntime.Fragment, {
13083
+ children: [children, hasContent && jsxRuntime.jsx(icons.ChevronDownOutline, {
13084
+ className: "icon-cdf right",
13085
+ color: arrowColor
13086
+ }, void 0)]
13087
+ }, void 0) : jsxRuntime.jsxs(jsxRuntime.Fragment, {
13088
+ children: [hasContent && jsxRuntime.jsx(icons.ChevronDownOutline, {
13089
+ className: "icon-cdf left",
13090
+ color: arrowColor
13091
+ }, void 0), children]
13092
+ }, void 0)
13093
+ }), void 0)
13094
+ }, void 0);
13095
+ });
13096
+ var AccordionItem = StyledItem$1;
13097
+ var AccordionContent = AccordionPrimitive__namespace.Content;
13098
+
13099
+ var OptionGroup = styled(Flex$1, {
13100
+ position: 'relative'
13101
+ });
13102
+ var OptionItem = styled(Flex$1, {
13103
+ fontWeight: 600
13104
+ });
13105
+ var OptionChildren = styled(Box, {});
13106
+ var IconWrapper$1 = styled(Box, {
13107
+ position: 'absolute',
13108
+ top: 10,
13109
+ right: 0,
13110
+ cursor: 'pointer'
13111
+ });
13112
+ function OptionGroupItem(_a) {
13113
+ var item = _a.item,
13114
+ children = _a.children;
13115
+ var _b = React.useState(false),
13116
+ isShow = _b[0],
13117
+ setIsShow = _b[1];
13118
+ return jsxRuntime.jsxs(OptionGroup, __assign({
13119
+ direction: "column"
13120
+ }, {
13121
+ children: [jsxRuntime.jsxs(OptionItem, {
13122
+ children: [item, jsxRuntime.jsx(IconWrapper$1, __assign({
13123
+ onClick: function () {
13124
+ return setIsShow(!isShow);
13125
+ }
13126
+ }, {
13127
+ children: isShow ? jsxRuntime.jsx(icons.ChevronUpOutline, {}, void 0) : jsxRuntime.jsx(icons.ChevronDownOutline, {}, void 0)
13128
+ }), void 0)]
13129
+ }, void 0), isShow && jsxRuntime.jsx(OptionChildren, {
13130
+ children: children
13131
+ }, void 0)]
13132
+ }), void 0);
13133
+ }
13134
+
12999
13135
  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"];
13000
13136
  var _jsxFileName$w = "/Users/ryanakbar20/Documents/project/majoo/majoo-ui/packages/react/src/components/form/components/InputSelectCheck/InputSelectCheck.js";
13001
13137
  function _await(value, then, direct) {
@@ -13249,7 +13385,7 @@
13249
13385
  alignItems: 'center'
13250
13386
  });
13251
13387
  const InputSelectCheck = /*#__PURE__*/React.forwardRef((_ref, ref) => {
13252
- var _selectedItems$filter, _selectedItems$filter2, _selectedItems$filter3, _selectedItems$filter4;
13388
+ var _initItem$reduce, _selectedItems$filter, _selectedItems$filter2, _selectedItems$filter3, _selectedItems$filter4;
13253
13389
  let {
13254
13390
  placeholder,
13255
13391
  option,
@@ -13368,7 +13504,7 @@
13368
13504
  removeSelectedItem,
13369
13505
  selectedItems
13370
13506
  } = Downshift.useMultipleSelection({
13371
- selectedItems: selectedValue.length > 0 ? initItem.filter(item => selectedValue.includes(item.id)) : []
13507
+ selectedItems: selectedValue.length > 0 ? initItem === null || initItem === void 0 ? void 0 : (_initItem$reduce = initItem.reduce((acc, item) => [...acc, item, ...(item.children ? item.children : [])], [])) === null || _initItem$reduce === void 0 ? void 0 : _initItem$reduce.filter(item => selectedValue.includes(item.id)) : []
13372
13508
  });
13373
13509
  const generateOptions = data => {
13374
13510
  return data.map(option => {
@@ -13447,7 +13583,7 @@
13447
13583
  isOpen
13448
13584
  } = Downshift.useCombobox({
13449
13585
  inputValue,
13450
- items: items,
13586
+ items: items.reduce((acc, item) => [...acc, item, ...(item.children ? item.children : [])], []),
13451
13587
  selectedItem: selectedValue,
13452
13588
  itemToString: item => item ? item.name : '',
13453
13589
  onStateChange: ({
@@ -13489,6 +13625,52 @@
13489
13625
  setInputSelectValue(itemIds);
13490
13626
  onChange === null || onChange === void 0 ? void 0 : onChange(itemIds.slice(1));
13491
13627
  } else {
13628
+ var _selectedItem$childre;
13629
+ //start check if item have children (option group)
13630
+ if (selectedItem !== null && selectedItem !== void 0 && (_selectedItem$childre = selectedItem.children) !== null && _selectedItem$childre !== void 0 && _selectedItem$childre.length) {
13631
+ var _selectedItem$childre2;
13632
+ const itemIdsSelect = [];
13633
+ const itemIdsUnSelect = [];
13634
+ selectedItem === null || selectedItem === void 0 ? void 0 : (_selectedItem$childre2 = selectedItem.children) === null || _selectedItem$childre2 === void 0 ? void 0 : _selectedItem$childre2.forEach(item => {
13635
+ if (selectedValue !== null && selectedValue !== void 0 && selectedValue.includes(item.id)) {
13636
+ removeSelectedItem(item);
13637
+ itemIdsUnSelect.push(item.id);
13638
+ } else {
13639
+ addSelectedItem(item);
13640
+ itemIdsSelect.push(item.id);
13641
+ }
13642
+ });
13643
+
13644
+ //select all child in one of the option groups
13645
+ if (itemIdsSelect.length) {
13646
+ setSelectedValue([...selectedValue, ...itemIdsSelect]);
13647
+ setInputSelectValue([...selectedValue, ...itemIdsSelect]);
13648
+ const _filteredSelectedValues = selectedValue.filter(val => val !== '!all');
13649
+ onChange === null || onChange === void 0 ? void 0 : onChange([..._filteredSelectedValues, ...itemIdsSelect]);
13650
+ }
13651
+
13652
+ //unselect all child in one of the option groups
13653
+ if (itemIdsUnSelect.length) {
13654
+ const newSelectedValue = selectedValue.filter(selId => {
13655
+ var _itemIdsUnSelect$filt;
13656
+ return ((_itemIdsUnSelect$filt = itemIdsUnSelect.filter(unselId => unselId === selId && unselId)) === null || _itemIdsUnSelect$filt === void 0 ? void 0 : _itemIdsUnSelect$filt[0]) !== selId && selId;
13657
+ });
13658
+ setSelectedValue(newSelectedValue);
13659
+ setInputSelectValue(newSelectedValue);
13660
+ const _filteredSelectedValues2 = newSelectedValue.filter(val => val !== '!all');
13661
+ onChange === null || onChange === void 0 ? void 0 : onChange(_filteredSelectedValues2);
13662
+ }
13663
+ return;
13664
+ }
13665
+ //end check if item have children (option group)
13666
+
13667
+ //start check the child from one of the option groups
13668
+ if (selectedValue.includes(selectedItem.id)) {
13669
+ removeItem(selectedItem);
13670
+ return;
13671
+ }
13672
+ //end check the child from one of the option groups
13673
+
13492
13674
  addSelectedItem(selectedItem);
13493
13675
  setSelectedValue([...selectedValue, selectedItem.id]);
13494
13676
  setInputSelectValue([...selectedValue, selectedItem.id]);
@@ -13585,13 +13767,173 @@
13585
13767
  }
13586
13768
  };
13587
13769
  const isShowTagSelectAll = showTagSelectAll && (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > (option === null || option === void 0 ? void 0 : option.length);
13770
+ const renderOptionItem = (item, index, asChild) => {
13771
+ var _item$render;
13772
+ return /*#__PURE__*/React__default["default"].createElement(ItemWrapper$1, _extends({
13773
+ key: item.id
13774
+ }, getItemProps({
13775
+ item,
13776
+ index: index,
13777
+ disabled: item.isDisabled
13778
+ }), {
13779
+ css: {
13780
+ backgroundColor: highlightedIndex === index ? '$bgGray' : 'white',
13781
+ cursor: item.isDisabled ? 'not-allowed' : 'pointer',
13782
+ color: item.isDisabled ? '$textDisable' : 'textPrimary',
13783
+ padding: asChild ? '0px $spacing-05' : 0
13784
+ },
13785
+ __self: undefined,
13786
+ __source: {
13787
+ fileName: _jsxFileName$w,
13788
+ lineNumber: 678,
13789
+ columnNumber: 9
13790
+ }
13791
+ }), /*#__PURE__*/React__default["default"].createElement(IconWrapper, {
13792
+ css: {
13793
+ width: '16px',
13794
+ height: '16px',
13795
+ border: '1px solid $bgBorder',
13796
+ cursor: item.isDisabled ? 'not-allowed' : 'pointer'
13797
+ },
13798
+ __self: undefined,
13799
+ __source: {
13800
+ fileName: _jsxFileName$w,
13801
+ lineNumber: 692,
13802
+ columnNumber: 11
13803
+ }
13804
+ }, !(item !== null && item !== void 0 && item.hideCheck) && (item.isDisabled ? /*#__PURE__*/React__default["default"].createElement(CheckOutline, {
13805
+ color: colors$8.iconDisable,
13806
+ __self: undefined,
13807
+ __source: {
13808
+ fileName: _jsxFileName$w,
13809
+ lineNumber: 702,
13810
+ columnNumber: 17
13811
+ }
13812
+ }) : selectedValue.includes(item.id) && (item.isDisabled === false || item.isDisabled === undefined) && /*#__PURE__*/React__default["default"].createElement(CheckOutline, {
13813
+ color: colors$8.iconGreen,
13814
+ __self: undefined,
13815
+ __source: {
13816
+ fileName: _jsxFileName$w,
13817
+ lineNumber: 706,
13818
+ columnNumber: 19
13819
+ }
13820
+ })), 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["default"].createElement(IndeterminateFilled$1, {
13821
+ __self: undefined,
13822
+ __source: {
13823
+ fileName: _jsxFileName$w,
13824
+ lineNumber: 713,
13825
+ columnNumber: 15
13826
+ }
13827
+ }, "-") : /*#__PURE__*/React__default["default"].createElement("div", {
13828
+ __self: undefined,
13829
+ __source: {
13830
+ fileName: _jsxFileName$w,
13831
+ lineNumber: 715,
13832
+ columnNumber: 15
13833
+ }
13834
+ })), /*#__PURE__*/React__default["default"].createElement(Item$3, {
13835
+ css: {
13836
+ backgroundColor: 'unset',
13837
+ width: '100%'
13838
+ },
13839
+ __self: undefined,
13840
+ __source: {
13841
+ fileName: _jsxFileName$w,
13842
+ lineNumber: 718,
13843
+ columnNumber: 11
13844
+ }
13845
+ }, item.render ? (_item$render = item.render) === null || _item$render === void 0 ? void 0 : _item$render.call(item, item.name) : item.name));
13846
+ };
13847
+ let optionGroupIndex = showSelectAll ? 1 : 0;
13848
+ const renderOptionGroupItem = (item, index) => {
13849
+ var _item$children2, _item$children3, _item$children3$filte, _item$render2, _item$children4;
13850
+ if (index > showSelectAll ? 1 : 0) {
13851
+ var _item$children;
13852
+ optionGroupIndex += (item === null || item === void 0 ? void 0 : (_item$children = item.children) === null || _item$children === void 0 ? void 0 : _item$children.length) + 1;
13853
+ }
13854
+ const filterSelectedChild = item === null || item === void 0 ? void 0 : (_item$children2 = item.children) === null || _item$children2 === void 0 ? void 0 : _item$children2.filter(e => selectedValue.includes(e.id) && !e.isDisabled);
13855
+ return /*#__PURE__*/React__default["default"].createElement(OptionGroupItem, {
13856
+ item: /*#__PURE__*/React__default["default"].createElement(ItemWrapper$1, _extends({
13857
+ key: item.id
13858
+ }, getItemProps({
13859
+ item,
13860
+ index: optionGroupIndex,
13861
+ disabled: item.isDisabled
13862
+ }), {
13863
+ css: {
13864
+ backgroundColor: highlightedIndex === optionGroupIndex ? '$bgGray' : 'white',
13865
+ cursor: item.isDisabled ? 'not-allowed' : 'pointer',
13866
+ color: item.isDisabled ? '$textDisable' : 'textPrimary'
13867
+ },
13868
+ __self: undefined,
13869
+ __source: {
13870
+ fileName: _jsxFileName$w,
13871
+ lineNumber: 735,
13872
+ columnNumber: 13
13873
+ }
13874
+ }), /*#__PURE__*/React__default["default"].createElement(IconWrapper, {
13875
+ css: {
13876
+ width: '16px',
13877
+ height: '16px',
13878
+ border: '1px solid $bgBorder',
13879
+ cursor: item.isDisabled ? 'not-allowed' : 'pointer'
13880
+ },
13881
+ __self: undefined,
13882
+ __source: {
13883
+ fileName: _jsxFileName$w,
13884
+ lineNumber: 748,
13885
+ columnNumber: 15
13886
+ }
13887
+ }, !(item !== null && item !== void 0 && item.hideCheck) && item.isDisabled ? /*#__PURE__*/React__default["default"].createElement(CheckOutline, {
13888
+ color: colors$8.iconDisable,
13889
+ __self: undefined,
13890
+ __source: {
13891
+ fileName: _jsxFileName$w,
13892
+ lineNumber: 757,
13893
+ columnNumber: 19
13894
+ }
13895
+ }) : (filterSelectedChild === null || filterSelectedChild === void 0 ? void 0 : filterSelectedChild.length) === (item === null || item === void 0 ? void 0 : (_item$children3 = item.children) === null || _item$children3 === void 0 ? void 0 : (_item$children3$filte = _item$children3.filter(e => !e.isDisabled)) === null || _item$children3$filte === void 0 ? void 0 : _item$children3$filte.length) ? /*#__PURE__*/React__default["default"].createElement(CheckOutline, {
13896
+ color: colors$8.iconGreen,
13897
+ __self: undefined,
13898
+ __source: {
13899
+ fileName: _jsxFileName$w,
13900
+ lineNumber: 759,
13901
+ columnNumber: 19
13902
+ }
13903
+ }) : (filterSelectedChild === null || filterSelectedChild === void 0 ? void 0 : filterSelectedChild.length) > 0 ? /*#__PURE__*/React__default["default"].createElement(IndeterminateFilled$1, {
13904
+ __self: undefined,
13905
+ __source: {
13906
+ fileName: _jsxFileName$w,
13907
+ lineNumber: 761,
13908
+ columnNumber: 19
13909
+ }
13910
+ }, "-") : null), /*#__PURE__*/React__default["default"].createElement(Item$3, {
13911
+ css: {
13912
+ backgroundColor: 'unset',
13913
+ width: '100%'
13914
+ },
13915
+ __self: undefined,
13916
+ __source: {
13917
+ fileName: _jsxFileName$w,
13918
+ lineNumber: 764,
13919
+ columnNumber: 15
13920
+ }
13921
+ }, item.render ? (_item$render2 = item.render) === null || _item$render2 === void 0 ? void 0 : _item$render2.call(item, item.name) : item.name)),
13922
+ __self: undefined,
13923
+ __source: {
13924
+ fileName: _jsxFileName$w,
13925
+ lineNumber: 733,
13926
+ columnNumber: 9
13927
+ }
13928
+ }, item === null || item === void 0 ? void 0 : (_item$children4 = item.children) === null || _item$children4 === void 0 ? void 0 : _item$children4.map((optItem, optIndex) => renderOptionItem(optItem, optionGroupIndex + optIndex + 1, true)));
13929
+ };
13588
13930
  return /*#__PURE__*/React__default["default"].createElement(Wrapper$1, _extends({
13589
13931
  css: css
13590
13932
  }, props, {
13591
13933
  __self: undefined,
13592
13934
  __source: {
13593
13935
  fileName: _jsxFileName$w,
13594
- lineNumber: 626,
13936
+ lineNumber: 776,
13595
13937
  columnNumber: 7
13596
13938
  }
13597
13939
  }), /*#__PURE__*/React__default["default"].createElement(Select, {
@@ -13601,7 +13943,7 @@
13601
13943
  __self: undefined,
13602
13944
  __source: {
13603
13945
  fileName: _jsxFileName$w,
13604
- lineNumber: 627,
13946
+ lineNumber: 777,
13605
13947
  columnNumber: 9
13606
13948
  }
13607
13949
  }, /*#__PURE__*/React__default["default"].createElement(InputWrapper$1, _extends({}, getComboboxProps(getDropdownProps({
@@ -13616,7 +13958,7 @@
13616
13958
  __self: undefined,
13617
13959
  __source: {
13618
13960
  fileName: _jsxFileName$w,
13619
- lineNumber: 628,
13961
+ lineNumber: 778,
13620
13962
  columnNumber: 11
13621
13963
  }
13622
13964
  }), /*#__PURE__*/React__default["default"].createElement(Input$6, _extends({}, getInputProps({
@@ -13634,7 +13976,7 @@
13634
13976
  __self: undefined,
13635
13977
  __source: {
13636
13978
  fileName: _jsxFileName$w,
13637
- lineNumber: 638,
13979
+ lineNumber: 788,
13638
13980
  columnNumber: 13
13639
13981
  }
13640
13982
  })), /*#__PURE__*/React__default["default"].createElement(Button$2, _extends({}, getToggleButtonProps({
@@ -13647,7 +13989,7 @@
13647
13989
  __self: undefined,
13648
13990
  __source: {
13649
13991
  fileName: _jsxFileName$w,
13650
- lineNumber: 645,
13992
+ lineNumber: 795,
13651
13993
  columnNumber: 13
13652
13994
  }
13653
13995
  }), placeholder != null ? placeholder : t('placeholder', 'Pilih Item'))), /*#__PURE__*/React__default["default"].createElement(IconWrapper, _extends({}, getToggleButtonProps({
@@ -13658,7 +14000,7 @@
13658
14000
  __self: undefined,
13659
14001
  __source: {
13660
14002
  fileName: _jsxFileName$w,
13661
- lineNumber: 655,
14003
+ lineNumber: 805,
13662
14004
  columnNumber: 11
13663
14005
  }
13664
14006
  }), /*#__PURE__*/React__default["default"].createElement(IconCaretDown, {
@@ -13666,7 +14008,7 @@
13666
14008
  __self: undefined,
13667
14009
  __source: {
13668
14010
  fileName: _jsxFileName$w,
13669
- lineNumber: 660,
14011
+ lineNumber: 810,
13670
14012
  columnNumber: 13
13671
14013
  }
13672
14014
  }))), helperText && /*#__PURE__*/React__default["default"].createElement(Paragraph, {
@@ -13679,7 +14021,7 @@
13679
14021
  __self: undefined,
13680
14022
  __source: {
13681
14023
  fileName: _jsxFileName$w,
13682
- lineNumber: 664,
14024
+ lineNumber: 814,
13683
14025
  columnNumber: 11
13684
14026
  }
13685
14027
  }, helperText), showSelectedTag && !showCounter && selectedItems.length !== 0 && /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(TagWrapper$2, {
@@ -13687,7 +14029,7 @@
13687
14029
  __self: undefined,
13688
14030
  __source: {
13689
14031
  fileName: _jsxFileName$w,
13690
- lineNumber: 670,
14032
+ lineNumber: 820,
13691
14033
  columnNumber: 13
13692
14034
  }
13693
14035
  }, isShowTagSelectAll ? /*#__PURE__*/React__default["default"].createElement(Tag, _extends({
@@ -13707,7 +14049,7 @@
13707
14049
  __self: undefined,
13708
14050
  __source: {
13709
14051
  fileName: _jsxFileName$w,
13710
- lineNumber: 672,
14052
+ lineNumber: 822,
13711
14053
  columnNumber: 17
13712
14054
  }
13713
14055
  }), 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) => {
@@ -13737,7 +14079,7 @@
13737
14079
  __self: undefined,
13738
14080
  __source: {
13739
14081
  fileName: _jsxFileName$w,
13740
- lineNumber: 700,
14082
+ lineNumber: 850,
13741
14083
  columnNumber: 21
13742
14084
  }
13743
14085
  }), selectedItem.name))), collapsible && !isShowTagSelectAll && (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 5 && /*#__PURE__*/React__default["default"].createElement(Flex$1, {
@@ -13746,7 +14088,7 @@
13746
14088
  __self: undefined,
13747
14089
  __source: {
13748
14090
  fileName: _jsxFileName$w,
13749
- lineNumber: 722,
14091
+ lineNumber: 872,
13750
14092
  columnNumber: 15
13751
14093
  }
13752
14094
  }, /*#__PURE__*/React__default["default"].createElement(Flex$1, {
@@ -13756,14 +14098,14 @@
13756
14098
  __self: undefined,
13757
14099
  __source: {
13758
14100
  fileName: _jsxFileName$w,
13759
- lineNumber: 723,
14101
+ lineNumber: 873,
13760
14102
  columnNumber: 17
13761
14103
  }
13762
14104
  }, /*#__PURE__*/React__default["default"].createElement(Separator$2, {
13763
14105
  __self: undefined,
13764
14106
  __source: {
13765
14107
  fileName: _jsxFileName$w,
13766
- lineNumber: 724,
14108
+ lineNumber: 874,
13767
14109
  columnNumber: 19
13768
14110
  }
13769
14111
  }), /*#__PURE__*/React__default["default"].createElement(Flex$1, {
@@ -13777,7 +14119,7 @@
13777
14119
  __self: undefined,
13778
14120
  __source: {
13779
14121
  fileName: _jsxFileName$w,
13780
- lineNumber: 725,
14122
+ lineNumber: 875,
13781
14123
  columnNumber: 19
13782
14124
  }
13783
14125
  }, showAllTags ? /*#__PURE__*/React__default["default"].createElement(icons.ChevronUpOutline, {
@@ -13785,7 +14127,7 @@
13785
14127
  __self: undefined,
13786
14128
  __source: {
13787
14129
  fileName: _jsxFileName$w,
13788
- lineNumber: 731,
14130
+ lineNumber: 881,
13789
14131
  columnNumber: 23
13790
14132
  }
13791
14133
  }) : /*#__PURE__*/React__default["default"].createElement(icons.ChevronDownOutline, {
@@ -13793,7 +14135,7 @@
13793
14135
  __self: undefined,
13794
14136
  __source: {
13795
14137
  fileName: _jsxFileName$w,
13796
- lineNumber: 733,
14138
+ lineNumber: 883,
13797
14139
  columnNumber: 23
13798
14140
  }
13799
14141
  }), /*#__PURE__*/React__default["default"].createElement(Paragraph, {
@@ -13805,14 +14147,14 @@
13805
14147
  __self: undefined,
13806
14148
  __source: {
13807
14149
  fileName: _jsxFileName$w,
13808
- lineNumber: 735,
14150
+ lineNumber: 885,
13809
14151
  columnNumber: 21
13810
14152
  }
13811
14153
  }, showAllTags ? t('showSomeText', 'Tampilkan Sebagian') : t('showAllText', 'Tampilkan Semua'))), /*#__PURE__*/React__default["default"].createElement(Separator$2, {
13812
14154
  __self: undefined,
13813
14155
  __source: {
13814
14156
  fileName: _jsxFileName$w,
13815
- lineNumber: 739,
14157
+ lineNumber: 889,
13816
14158
  columnNumber: 19
13817
14159
  }
13818
14160
  })), /*#__PURE__*/React__default["default"].createElement(Paragraph, {
@@ -13823,7 +14165,7 @@
13823
14165
  __self: undefined,
13824
14166
  __source: {
13825
14167
  fileName: _jsxFileName$w,
13826
- lineNumber: 741,
14168
+ lineNumber: 891,
13827
14169
  columnNumber: 17
13828
14170
  }
13829
14171
  }, `${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["default"].createElement(Paragraph, {
@@ -13835,7 +14177,7 @@
13835
14177
  __self: undefined,
13836
14178
  __source: {
13837
14179
  fileName: _jsxFileName$w,
13838
- lineNumber: 751,
14180
+ lineNumber: 901,
13839
14181
  columnNumber: 11
13840
14182
  }
13841
14183
  }, `${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["default"].createElement(OptionWrapper$1, {
@@ -13848,7 +14190,7 @@
13848
14190
  __self: undefined,
13849
14191
  __source: {
13850
14192
  fileName: _jsxFileName$w,
13851
- lineNumber: 758,
14193
+ lineNumber: 908,
13852
14194
  columnNumber: 9
13853
14195
  }
13854
14196
  }, isLoading && /*#__PURE__*/React__default["default"].createElement(Flex$1, {
@@ -13870,7 +14212,7 @@
13870
14212
  __self: undefined,
13871
14213
  __source: {
13872
14214
  fileName: _jsxFileName$w,
13873
- lineNumber: 768,
14215
+ lineNumber: 918,
13874
14216
  columnNumber: 13
13875
14217
  }
13876
14218
  }, /*#__PURE__*/React__default["default"].createElement(Text$1, {
@@ -13878,7 +14220,7 @@
13878
14220
  __self: undefined,
13879
14221
  __source: {
13880
14222
  fileName: _jsxFileName$w,
13881
- lineNumber: 785,
14223
+ lineNumber: 935,
13882
14224
  columnNumber: 15
13883
14225
  }
13884
14226
  }, "Loading....")), items.length > 0 || isLoading ? /*#__PURE__*/React__default["default"].createElement(Option, _extends({}, getMenuProps({
@@ -13889,7 +14231,7 @@
13889
14231
  __self: undefined,
13890
14232
  __source: {
13891
14233
  fileName: _jsxFileName$w,
13892
- lineNumber: 791,
14234
+ lineNumber: 941,
13893
14235
  columnNumber: 13
13894
14236
  }
13895
14237
  }), /*#__PURE__*/React__default["default"].createElement(ConditionalWrapper, {
@@ -13904,92 +14246,17 @@
13904
14246
  __self: undefined,
13905
14247
  __source: {
13906
14248
  fileName: _jsxFileName$w,
13907
- lineNumber: 795,
14249
+ lineNumber: 945,
13908
14250
  columnNumber: 19
13909
14251
  }
13910
14252
  }, child),
13911
14253
  __self: undefined,
13912
14254
  __source: {
13913
14255
  fileName: _jsxFileName$w,
13914
- lineNumber: 792,
14256
+ lineNumber: 942,
13915
14257
  columnNumber: 15
13916
14258
  }
13917
- }, isOpen && items.map((item, index) => {
13918
- var _item$render;
13919
- return /*#__PURE__*/React__default["default"].createElement(ItemWrapper$1, _extends({
13920
- key: item.id
13921
- }, getItemProps({
13922
- item,
13923
- index: index,
13924
- disabled: item.isDisabled
13925
- }), {
13926
- css: {
13927
- backgroundColor: highlightedIndex === index ? '$bgGray' : 'white',
13928
- cursor: item.isDisabled ? 'not-allowed' : 'pointer',
13929
- color: item.isDisabled ? '$textDisable' : 'textPrimary'
13930
- },
13931
- __self: undefined,
13932
- __source: {
13933
- fileName: _jsxFileName$w,
13934
- lineNumber: 807,
13935
- columnNumber: 21
13936
- }
13937
- }), /*#__PURE__*/React__default["default"].createElement(IconWrapper, {
13938
- css: {
13939
- width: '16px',
13940
- height: '16px',
13941
- border: '1px solid $bgBorder',
13942
- cursor: item.isDisabled ? 'not-allowed' : 'pointer'
13943
- },
13944
- __self: undefined,
13945
- __source: {
13946
- fileName: _jsxFileName$w,
13947
- lineNumber: 820,
13948
- columnNumber: 23
13949
- }
13950
- }, !(item !== null && item !== void 0 && item.hideCheck) && (item.isDisabled ? /*#__PURE__*/React__default["default"].createElement(CheckOutline, {
13951
- color: colors$8.iconDisable,
13952
- __self: undefined,
13953
- __source: {
13954
- fileName: _jsxFileName$w,
13955
- lineNumber: 830,
13956
- columnNumber: 29
13957
- }
13958
- }) : selectedValue.includes(item.id) && (item.isDisabled === false || item.isDisabled === undefined) && /*#__PURE__*/React__default["default"].createElement(CheckOutline, {
13959
- color: colors$8.iconGreen,
13960
- __self: undefined,
13961
- __source: {
13962
- fileName: _jsxFileName$w,
13963
- lineNumber: 834,
13964
- columnNumber: 31
13965
- }
13966
- })), 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["default"].createElement(IndeterminateFilled$1, {
13967
- __self: undefined,
13968
- __source: {
13969
- fileName: _jsxFileName$w,
13970
- lineNumber: 841,
13971
- columnNumber: 27
13972
- }
13973
- }, "-") : /*#__PURE__*/React__default["default"].createElement("div", {
13974
- __self: undefined,
13975
- __source: {
13976
- fileName: _jsxFileName$w,
13977
- lineNumber: 843,
13978
- columnNumber: 27
13979
- }
13980
- })), /*#__PURE__*/React__default["default"].createElement(Item$3, {
13981
- css: {
13982
- backgroundColor: 'unset',
13983
- width: '100%'
13984
- },
13985
- __self: undefined,
13986
- __source: {
13987
- fileName: _jsxFileName$w,
13988
- lineNumber: 846,
13989
- columnNumber: 23
13990
- }
13991
- }, item.render ? (_item$render = item.render) === null || _item$render === void 0 ? void 0 : _item$render.call(item, item.name) : item.name));
13992
- }))) : /*#__PURE__*/React__default["default"].createElement(Option, _extends({
14259
+ }, isOpen && items.map((item, index) => item !== null && item !== void 0 && item.children ? renderOptionGroupItem(item, index) : renderOptionItem(item, index)))) : /*#__PURE__*/React__default["default"].createElement(Option, _extends({
13993
14260
  css: {
13994
14261
  height: 'auto'
13995
14262
  }
@@ -13999,14 +14266,14 @@
13999
14266
  __self: undefined,
14000
14267
  __source: {
14001
14268
  fileName: _jsxFileName$w,
14002
- lineNumber: 854,
14269
+ lineNumber: 962,
14003
14270
  columnNumber: 13
14004
14271
  }
14005
14272
  }), /*#__PURE__*/React__default["default"].createElement(StyledDiv, {
14006
14273
  __self: undefined,
14007
14274
  __source: {
14008
14275
  fileName: _jsxFileName$w,
14009
- lineNumber: 855,
14276
+ lineNumber: 963,
14010
14277
  columnNumber: 15
14011
14278
  }
14012
14279
  }, /*#__PURE__*/React__default["default"].createElement("div", {
@@ -14016,7 +14283,7 @@
14016
14283
  __self: undefined,
14017
14284
  __source: {
14018
14285
  fileName: _jsxFileName$w,
14019
- lineNumber: 856,
14286
+ lineNumber: 964,
14020
14287
  columnNumber: 17
14021
14288
  }
14022
14289
  }, /*#__PURE__*/React__default["default"].createElement(icons.CircleInfoOutline, {
@@ -14028,7 +14295,7 @@
14028
14295
  __self: undefined,
14029
14296
  __source: {
14030
14297
  fileName: _jsxFileName$w,
14031
- lineNumber: 857,
14298
+ lineNumber: 965,
14032
14299
  columnNumber: 19
14033
14300
  }
14034
14301
  })), textEmptyItem != null ? textEmptyItem : t('emptyItemText', 'Item tidak ditemukan')))));
@@ -17409,6 +17676,32 @@
17409
17676
  const Input$3 = styled('input', {
17410
17677
  display: 'none'
17411
17678
  });
17679
+ const InputTime = styled('input', {
17680
+ width: 44,
17681
+ border: 'none',
17682
+ outline: 'none',
17683
+ fontWeight: 600,
17684
+ fontStyle: 'normal',
17685
+ fontSize: 28,
17686
+ color: '$textPrimary',
17687
+ letterSpacing: 2,
17688
+ '&:read-only': {
17689
+ backgroundColor: '$bgWhite'
17690
+ },
17691
+ '&:disabled': {
17692
+ backgroundColor: '$gray100'
17693
+ },
17694
+ variants: {
17695
+ size: {
17696
+ sm: {
17697
+ fontSize: 28
17698
+ },
17699
+ lg: {
17700
+ fontSize: 32
17701
+ }
17702
+ }
17703
+ }
17704
+ });
17412
17705
  const Time = styled('p', {
17413
17706
  fontWeight: 600,
17414
17707
  fontStyle: 'normal',
@@ -17490,27 +17783,30 @@
17490
17783
  });
17491
17784
  const IconStateFull$2 = props => {
17492
17785
  const [isHover, setIsHover] = React.useState(false);
17493
- function toggleHover() {
17494
- setIsHover(!isHover);
17786
+ function handleEnter() {
17787
+ setIsHover(true);
17788
+ }
17789
+ function handleLeave() {
17790
+ setIsHover(false);
17495
17791
  }
17496
17792
  return props.type === 'up' ? /*#__PURE__*/React__default["default"].createElement(IconUp, _extends({}, props, {
17497
17793
  color: isHover && !props.disabled ? '#04C99E' : '#404545',
17498
- onMouseEnter: toggleHover,
17499
- onMouseLeave: toggleHover,
17794
+ onMouseEnter: handleEnter,
17795
+ onMouseLeave: handleLeave,
17500
17796
  __self: undefined,
17501
17797
  __source: {
17502
17798
  fileName: _jsxFileName$r,
17503
- lineNumber: 101,
17799
+ lineNumber: 134,
17504
17800
  columnNumber: 5
17505
17801
  }
17506
17802
  })) : /*#__PURE__*/React__default["default"].createElement(IconDown, _extends({}, props, {
17507
17803
  color: isHover && !props.disabled ? '#04C99E' : '#404545',
17508
- onMouseEnter: toggleHover,
17509
- onMouseLeave: toggleHover,
17804
+ onMouseEnter: handleEnter,
17805
+ onMouseLeave: handleLeave,
17510
17806
  __self: undefined,
17511
17807
  __source: {
17512
17808
  fileName: _jsxFileName$r,
17513
- lineNumber: 108,
17809
+ lineNumber: 141,
17514
17810
  columnNumber: 5
17515
17811
  }
17516
17812
  }));
@@ -17532,6 +17828,7 @@
17532
17828
  }) => {
17533
17829
  const [date, setDate] = React.useState(value ? value : defaultValue ? defaultValue : moment__default["default"]());
17534
17830
  const format = 'HH:mm';
17831
+ const inputRef = React__default["default"].useRef(false);
17535
17832
  function handleChange(e) {
17536
17833
  onChange(e, moment__default["default"](e).format(format));
17537
17834
  }
@@ -17565,6 +17862,65 @@
17565
17862
  }
17566
17863
  }
17567
17864
  }
17865
+ function handleInputChange(type, e) {
17866
+ var _e$target;
17867
+ const value = e === null || e === void 0 ? void 0 : (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.value;
17868
+ const format = 'DD:MM:YYYY:HH:mm';
17869
+ const minLength = (value === null || value === void 0 ? void 0 : value.length) > 1;
17870
+ const hourValue = params => moment__default["default"](moment__default["default"](`${moment__default["default"](date).format('DD:MM:YYYY:mm')}:${params}`, 'DD:MM:YYYY:mm:HH').toDate());
17871
+ const minuteValue = params => moment__default["default"](moment__default["default"](`${moment__default["default"](date).format('DD:MM:YYYY:HH')}:${params}`, 'DD:MM:YYYY:HH:mm').toDate());
17872
+ if (!disabled) {
17873
+ if (type === 'hour') {
17874
+ if (value < 0 && minLength) {
17875
+ setNewDate(minDate || hourValue(0));
17876
+ inputRef.current = false;
17877
+ return;
17878
+ }
17879
+ if (value > 23 && minLength) {
17880
+ setNewDate(maxDate || hourValue(23));
17881
+ inputRef.current = false;
17882
+ return;
17883
+ }
17884
+ if (minDate && hourValue(value) < moment__default["default"](minDate) && minLength) {
17885
+ setNewDate(minDate);
17886
+ inputRef.current = false;
17887
+ return;
17888
+ }
17889
+ if (maxDate && hourValue(value) > moment__default["default"](maxDate) && minLength) {
17890
+ setNewDate(maxDate);
17891
+ inputRef.current = false;
17892
+ return;
17893
+ }
17894
+ setNewDate(moment__default["default"](moment__default["default"](`${moment__default["default"](date).format('DD:MM:YYYY')}:${value}:${moment__default["default"](date).format('mm')}`, format).toDate()));
17895
+ inputRef.current = true;
17896
+ } else {
17897
+ if (value < 0 && minLength) {
17898
+ setNewDate(minuteValue(0));
17899
+ inputRef.current = false;
17900
+ return;
17901
+ }
17902
+ if (value > 59 && minLength) {
17903
+ setNewDate(minuteValue(59));
17904
+ inputRef.current = false;
17905
+ return;
17906
+ }
17907
+ if (minDate && minuteValue(value) < moment__default["default"](minDate) && minLength) {
17908
+ setNewDate(minDate);
17909
+ inputRef.current = false;
17910
+ return;
17911
+ }
17912
+ if (maxDate && minuteValue(value) > moment__default["default"](maxDate) && minLength) {
17913
+ setNewDate(maxDate);
17914
+ inputRef.current = false;
17915
+ return;
17916
+ }
17917
+ setNewDate(moment__default["default"](moment__default["default"](`${moment__default["default"](date).format('DD:MM:YYYY:HH')}:${value}`, format).toDate()));
17918
+ inputRef.current = true;
17919
+ }
17920
+ }
17921
+ }
17922
+ const hourValue = moment__default["default"](date).format('HH');
17923
+ const minuteValue = moment__default["default"](date).format('mm');
17568
17924
  return /*#__PURE__*/React__default["default"].createElement(Flex$1, {
17569
17925
  direction: "column",
17570
17926
  align: "center",
@@ -17576,7 +17932,7 @@
17576
17932
  __self: undefined,
17577
17933
  __source: {
17578
17934
  fileName: _jsxFileName$r,
17579
- lineNumber: 185,
17935
+ lineNumber: 285,
17580
17936
  columnNumber: 5
17581
17937
  }
17582
17938
  }, /*#__PURE__*/React__default["default"].createElement(Flex$1, {
@@ -17585,7 +17941,7 @@
17585
17941
  __self: undefined,
17586
17942
  __source: {
17587
17943
  fileName: _jsxFileName$r,
17588
- lineNumber: 191,
17944
+ lineNumber: 291,
17589
17945
  columnNumber: 7
17590
17946
  }
17591
17947
  }, /*#__PURE__*/React__default["default"].createElement(IconStateFull$2, {
@@ -17595,7 +17951,7 @@
17595
17951
  __self: undefined,
17596
17952
  __source: {
17597
17953
  fileName: _jsxFileName$r,
17598
- lineNumber: 192,
17954
+ lineNumber: 292,
17599
17955
  columnNumber: 9
17600
17956
  }
17601
17957
  }), /*#__PURE__*/React__default["default"].createElement(IconStateFull$2, {
@@ -17605,7 +17961,7 @@
17605
17961
  __self: undefined,
17606
17962
  __source: {
17607
17963
  fileName: _jsxFileName$r,
17608
- lineNumber: 197,
17964
+ lineNumber: 297,
17609
17965
  columnNumber: 9
17610
17966
  }
17611
17967
  })), /*#__PURE__*/React__default["default"].createElement(Input$3, {
@@ -17616,24 +17972,64 @@
17616
17972
  __self: undefined,
17617
17973
  __source: {
17618
17974
  fileName: _jsxFileName$r,
17619
- lineNumber: 203,
17975
+ lineNumber: 303,
17976
+ columnNumber: 7
17977
+ }
17978
+ }), /*#__PURE__*/React__default["default"].createElement(Flex$1, {
17979
+ gap: 1,
17980
+ __self: undefined,
17981
+ __source: {
17982
+ fileName: _jsxFileName$r,
17983
+ lineNumber: 304,
17620
17984
  columnNumber: 7
17621
17985
  }
17986
+ }, /*#__PURE__*/React__default["default"].createElement(InputTime, {
17987
+ size: size,
17988
+ maxLength: 2,
17989
+ disabled: disabled,
17990
+ readOnly: disabledHourIncrease || disabledHourDecrease || disabledHour,
17991
+ defaultValue: hourValue,
17992
+ value: !inputRef.current ? hourValue : undefined,
17993
+ onChange: e => handleInputChange('hour', e),
17994
+ onFocus: () => inputRef.current = true,
17995
+ onBlur: () => inputRef.current = false,
17996
+ __self: undefined,
17997
+ __source: {
17998
+ fileName: _jsxFileName$r,
17999
+ lineNumber: 305,
18000
+ columnNumber: 9
18001
+ }
17622
18002
  }), /*#__PURE__*/React__default["default"].createElement(Time, {
17623
18003
  size: size,
17624
18004
  __self: undefined,
17625
18005
  __source: {
17626
18006
  fileName: _jsxFileName$r,
17627
- lineNumber: 204,
17628
- columnNumber: 7
18007
+ lineNumber: 316,
18008
+ columnNumber: 9
17629
18009
  }
17630
- }, moment__default["default"](date).format(format)), /*#__PURE__*/React__default["default"].createElement(Flex$1, {
18010
+ }, ":"), /*#__PURE__*/React__default["default"].createElement(InputTime, {
18011
+ size: size,
18012
+ maxLength: 2,
18013
+ disabled: disabled,
18014
+ readOnly: disabledMinuteIncrease || disabledMinuteDecrease || disabledMinute,
18015
+ defaultValue: minuteValue,
18016
+ value: !inputRef.current ? minuteValue : undefined,
18017
+ onChange: e => handleInputChange('minute', e),
18018
+ onFocus: () => inputRef.current = true,
18019
+ onBlur: () => inputRef.current = false,
18020
+ __self: undefined,
18021
+ __source: {
18022
+ fileName: _jsxFileName$r,
18023
+ lineNumber: 317,
18024
+ columnNumber: 9
18025
+ }
18026
+ })), /*#__PURE__*/React__default["default"].createElement(Flex$1, {
17631
18027
  direction: "row",
17632
18028
  gap: 6,
17633
18029
  __self: undefined,
17634
18030
  __source: {
17635
18031
  fileName: _jsxFileName$r,
17636
- lineNumber: 205,
18032
+ lineNumber: 329,
17637
18033
  columnNumber: 7
17638
18034
  }
17639
18035
  }, /*#__PURE__*/React__default["default"].createElement(IconStateFull$2, {
@@ -17643,7 +18039,7 @@
17643
18039
  __self: undefined,
17644
18040
  __source: {
17645
18041
  fileName: _jsxFileName$r,
17646
- lineNumber: 206,
18042
+ lineNumber: 330,
17647
18043
  columnNumber: 9
17648
18044
  }
17649
18045
  }), /*#__PURE__*/React__default["default"].createElement(IconStateFull$2, {
@@ -17653,7 +18049,7 @@
17653
18049
  __self: undefined,
17654
18050
  __source: {
17655
18051
  fileName: _jsxFileName$r,
17656
- lineNumber: 211,
18052
+ lineNumber: 335,
17657
18053
  columnNumber: 9
17658
18054
  }
17659
18055
  })));
@@ -17738,7 +18134,7 @@
17738
18134
  __self: undefined,
17739
18135
  __source: {
17740
18136
  fileName: _jsxFileName$r,
17741
- lineNumber: 293,
18137
+ lineNumber: 417,
17742
18138
  columnNumber: 5
17743
18139
  }
17744
18140
  }, /*#__PURE__*/React__default["default"].createElement(NativeTimePicker, {
@@ -17758,7 +18154,7 @@
17758
18154
  __self: undefined,
17759
18155
  __source: {
17760
18156
  fileName: _jsxFileName$r,
17761
- lineNumber: 294,
18157
+ lineNumber: 418,
17762
18158
  columnNumber: 7
17763
18159
  }
17764
18160
  }));
@@ -19619,7 +20015,7 @@
19619
20015
  display: 'none'
19620
20016
  }
19621
20017
  });
19622
- const StyledTrigger$1 = styled(TabsPrimitive__namespace.Trigger, {
20018
+ const StyledTrigger = styled(TabsPrimitive__namespace.Trigger, {
19623
20019
  all: 'unset',
19624
20020
  fontFamily: 'inherit',
19625
20021
  backgroundColor: 'white',
@@ -19850,7 +20246,7 @@
19850
20246
  } = _ref3,
19851
20247
  props = _objectWithoutPropertiesLoose(_ref3, _excluded3$1);
19852
20248
  const [isIconHovered, setIsIconHovered] = React.useState(false);
19853
- return /*#__PURE__*/React__default["default"].createElement(StyledTrigger$1, _extends({
20249
+ return /*#__PURE__*/React__default["default"].createElement(StyledTrigger, _extends({
19854
20250
  value: value
19855
20251
  }, props, {
19856
20252
  __self: undefined,
@@ -20505,106 +20901,6 @@
20505
20901
  layer: '$modal'
20506
20902
  };
20507
20903
 
20508
- var StyledAccordion = styled(AccordionPrimitive__namespace.Root, {});
20509
- var Accordion = /*#__PURE__*/React__namespace.forwardRef(function (_a, forwardedRef) {
20510
- var children = _a.children,
20511
- props = __rest(_a, ["children"]);
20512
- return jsxRuntime.jsx(StyledAccordion, __assign({
20513
- ref: forwardedRef
20514
- }, props, props.type === 'single' ? {
20515
- collapsible: true
20516
- } : {}, {
20517
- children: children
20518
- }), void 0);
20519
- });
20520
- var StyledItem$1 = styled(AccordionPrimitive__namespace.Item, {
20521
- borderTop: '1px solid $colors$slate6',
20522
- '&:last-of-type': {
20523
- borderBottom: '1px solid $colors$slate6'
20524
- }
20525
- });
20526
- var StyledHeader = styled(AccordionPrimitive__namespace.Header, {
20527
- all: 'unset'
20528
- });
20529
- var StyledTrigger = styled(AccordionPrimitive__namespace.Trigger, {
20530
- all: 'unset',
20531
- boxSizing: 'border-box',
20532
- userSelect: 'none',
20533
- '&::before': {
20534
- boxSizing: 'border-box'
20535
- },
20536
- '&::after': {
20537
- boxSizing: 'border-box'
20538
- },
20539
- cursor: 'pointer',
20540
- display: 'flex',
20541
- alignItems: 'center',
20542
- color: '$hiContrast',
20543
- width: '100%',
20544
- '@hover': {
20545
- '&:hover': {
20546
- backgroundColor: '$slate2'
20547
- }
20548
- },
20549
- '&:focus': {
20550
- outline: 'none',
20551
- boxShadow: 'inset 0 0 0 1px $colors$slate8, 0 0 0 1px $colors$slate8'
20552
- },
20553
- '& svg.icon-cdf': {
20554
- color: '$white',
20555
- size: '24px',
20556
- transition: 'transform 175ms cubic-bezier(0.65, 0, 0.35, 1)'
20557
- },
20558
- '& svg.right': {
20559
- marginRight: '$spacing-05'
20560
- },
20561
- '&[data-state="open"]': {
20562
- '& svg.icon-cdf': {
20563
- transform: 'rotate(180deg)'
20564
- }
20565
- },
20566
- variants: {
20567
- arrowPosition: {
20568
- right: {
20569
- justifyContent: 'space-between'
20570
- },
20571
- left: {
20572
- justifyContent: 'start'
20573
- }
20574
- }
20575
- }
20576
- });
20577
- var AccordionTrigger = /*#__PURE__*/React__namespace.forwardRef(function (_a, forwardedRef) {
20578
- var children = _a.children,
20579
- _b = _a.arrowPosition,
20580
- arrowPosition = _b === void 0 ? 'right' : _b,
20581
- _c = _a.hasContent,
20582
- hasContent = _c === void 0 ? true : _c,
20583
- _d = _a.arrowColor,
20584
- arrowColor = _d === void 0 ? 'white' : _d,
20585
- props = __rest(_a, ["children", "arrowPosition", "hasContent", "arrowColor"]);
20586
- return jsxRuntime.jsx(StyledHeader, {
20587
- children: jsxRuntime.jsx(StyledTrigger, __assign({}, props, {
20588
- arrowPosition: arrowPosition,
20589
- ref: forwardedRef
20590
- }, {
20591
- children: arrowPosition === 'right' ? jsxRuntime.jsxs(jsxRuntime.Fragment, {
20592
- children: [children, hasContent && jsxRuntime.jsx(icons.ChevronDownOutline, {
20593
- className: "icon-cdf right",
20594
- color: arrowColor
20595
- }, void 0)]
20596
- }, void 0) : jsxRuntime.jsxs(jsxRuntime.Fragment, {
20597
- children: [hasContent && jsxRuntime.jsx(icons.ChevronDownOutline, {
20598
- className: "icon-cdf left",
20599
- color: arrowColor
20600
- }, void 0), children]
20601
- }, void 0)
20602
- }), void 0)
20603
- }, void 0);
20604
- });
20605
- var AccordionItem = StyledItem$1;
20606
- var AccordionContent = AccordionPrimitive__namespace.Content;
20607
-
20608
20904
  const removeUndefinedFields = obj => {
20609
20905
  let newObj = {};
20610
20906
  Object.keys(obj).forEach(key => {
@@ -32464,12 +32760,16 @@
32464
32760
  color: '$textRed !important'
32465
32761
  });
32466
32762
  function EditableTableMobile(props) {
32467
- var instance = props.instance,
32763
+ var _a, _b;
32764
+ var rowVirtualizer = props.rowVirtualizer,
32765
+ tableContainerRef = props.tableContainerRef,
32766
+ instance = props.instance,
32468
32767
  showCheckbox = props.showCheckbox,
32469
32768
  customRows = props.customRows,
32470
32769
  onExpand = props.onExpand,
32471
32770
  hiddenColumns = props.hiddenColumns,
32472
- customEmptyDataProps = props.customEmptyDataProps;
32771
+ customEmptyDataProps = props.customEmptyDataProps,
32772
+ virtualized = props.virtualized;
32473
32773
  var getTableProps = instance.getTableProps,
32474
32774
  getTableBodyProps = instance.getTableBodyProps,
32475
32775
  headerGroups = instance.headerGroups,
@@ -32511,121 +32811,129 @@
32511
32811
  showInMobile: showInMobile
32512
32812
  };
32513
32813
  };
32514
- var renderTableRow = function renderTableRow(row, index, customStyle) {
32814
+ var renderTableRow = function renderTableRow(row, customStyle) {
32815
+ var _a;
32515
32816
  return jsxRuntime.jsxs(jsxRuntime.Fragment, {
32516
- children: [/*#__PURE__*/React.createElement(TableRow$2, __assign({
32817
+ children: [jsxRuntime.jsx(TableRow$2, __assign({
32517
32818
  css: customStyle
32518
32819
  }, row.getRowProps(), {
32519
- key: "row_mobile_".concat(index)
32520
- }), row.cells.map(function (cell, index) {
32521
- var _a, _b;
32522
- var isMobileHeader = (_a = cell === null || cell === void 0 ? void 0 : cell.column) === null || _a === void 0 ? void 0 : _a.isMobileHeader;
32523
- var isSelector = ((_b = cell === null || cell === void 0 ? void 0 : cell.column) === null || _b === void 0 ? void 0 : _b.id) === 'selection';
32524
- return (isMobileHeader || isSelector) && /*#__PURE__*/React.createElement(TableCell$2, __assign({}, cell.getCellProps({
32525
- style: {
32526
- minWidth: cell.column.minWidth,
32527
- width: isSelector ? 10 : cell.column.width,
32528
- maxWidth: isSelector ? 10 : cell.column.maxWidth
32529
- }
32530
- }), {
32531
- key: index
32532
- }), jsxRuntime.jsxs(Flex$1, __assign({
32533
- align: "center",
32534
- justify: "between",
32535
- css: {
32536
- cursor: 'pointer',
32537
- minHeight: 40
32538
- }
32539
- }, {
32540
- children: [jsxRuntime.jsx(Box, {
32541
- children: cell.render('Cell')
32542
- }, void 0), !isSelector && jsxRuntime.jsx(Flex$1, __assign({
32543
- justify: "center",
32820
+ children: row.cells.map(function (cell, index) {
32821
+ var _a, _b;
32822
+ var isMobileHeader = (_a = cell === null || cell === void 0 ? void 0 : cell.column) === null || _a === void 0 ? void 0 : _a.isMobileHeader;
32823
+ var isSelector = ((_b = cell === null || cell === void 0 ? void 0 : cell.column) === null || _b === void 0 ? void 0 : _b.id) === 'selection';
32824
+ return (isMobileHeader || isSelector) && /*#__PURE__*/React.createElement(TableCell$2, __assign({}, cell.getCellProps({
32825
+ style: {
32826
+ minWidth: cell.column.minWidth,
32827
+ width: isSelector ? 10 : cell.column.width,
32828
+ maxWidth: isSelector ? 10 : cell.column.maxWidth
32829
+ }
32830
+ }), {
32831
+ key: "cell-body-".concat(index)
32832
+ }), jsxRuntime.jsxs(Flex$1, __assign({
32544
32833
  align: "center",
32545
- onClick: function () {
32546
- var _a;
32547
- if (!((_a = Object.keys(state.expanded)) === null || _a === void 0 ? void 0 : _a.includes(row.id))) {
32548
- toggleAllRowsExpanded(false);
32549
- }
32550
- row.toggleRowExpanded(!row.isExpanded);
32551
- onExpand === null || onExpand === void 0 ? void 0 : onExpand(!row.isExpanded);
32834
+ justify: "between",
32835
+ css: {
32836
+ cursor: 'pointer',
32837
+ minHeight: 40
32552
32838
  }
32553
32839
  }, {
32554
- children: row.isExpanded ? jsxRuntime.jsx(icons.ChevronUpOutline, {}, void 0) : jsxRuntime.jsx(icons.ChevronDownOutline, {}, void 0)
32555
- }), void 0)]
32556
- }), void 0));
32557
- })), /*#__PURE__*/React.createElement(TableRowCollapse, __assign({}, row.getRowProps(), {
32558
- key: "row_mobile_collapse_".concat(index),
32840
+ children: [jsxRuntime.jsx(Box, {
32841
+ children: cell.render('Cell')
32842
+ }, void 0), !isSelector && jsxRuntime.jsx(Flex$1, __assign({
32843
+ justify: "center",
32844
+ align: "center",
32845
+ onClick: function () {
32846
+ var _a;
32847
+ if (!((_a = Object.keys(state.expanded)) === null || _a === void 0 ? void 0 : _a.includes(row.id))) {
32848
+ toggleAllRowsExpanded(false);
32849
+ }
32850
+ row.toggleRowExpanded(!row.isExpanded);
32851
+ onExpand === null || onExpand === void 0 ? void 0 : onExpand(!row.isExpanded);
32852
+ }
32853
+ }, {
32854
+ children: row.isExpanded ? jsxRuntime.jsx(icons.ChevronUpOutline, {}, void 0) : jsxRuntime.jsx(icons.ChevronDownOutline, {}, void 0)
32855
+ }), void 0)]
32856
+ }), void 0));
32857
+ })
32858
+ }), void 0), jsxRuntime.jsxs(TableRowCollapse, __assign({
32559
32859
  css: {
32560
32860
  backgroundColor: '$gray50'
32561
32861
  }
32562
- }), showCheckbox && jsxRuntime.jsx(TableCell$2, {}, void 0), jsxRuntime.jsx(TableCellCollapse, {
32563
- children: jsxRuntime.jsx(Collapalse, __assign({
32564
- isOpen: row.isExpanded
32565
- }, {
32566
- children: jsxRuntime.jsx(Flex$1, __assign({
32567
- direction: "column",
32568
- css: {
32569
- borderTop: '1pt solid $bgBorder'
32570
- }
32862
+ }, {
32863
+ children: [showCheckbox && jsxRuntime.jsx(TableCell$2, {}, void 0), jsxRuntime.jsx(TableCellCollapse, {
32864
+ children: jsxRuntime.jsx(Collapalse, __assign({
32865
+ isOpen: row.isExpanded
32571
32866
  }, {
32572
- children: row.cells.filter(function (cell) {
32573
- var _a, _b, _c, _d;
32574
- return typeof ((_a = cell === null || cell === void 0 ? void 0 : cell.column) === null || _a === void 0 ? void 0 : _a.hidden) === 'boolean' ? !((_b = cell === null || cell === void 0 ? void 0 : cell.column) === null || _b === void 0 ? void 0 : _b.hidden) : !((_d = (_c = cell === null || cell === void 0 ? void 0 : cell.column) === null || _c === void 0 ? void 0 : _c.hidden) === null || _d === void 0 ? void 0 : _d.call(_c, cell));
32575
- }).map(function (cell, index) {
32576
- var _a, _b, _c, _d;
32577
- var headerRender = (_a = cell === null || cell === void 0 ? void 0 : cell.column) === null || _a === void 0 ? void 0 : _a.Header;
32578
- var isMobileHeader = (_b = cell === null || cell === void 0 ? void 0 : cell.column) === null || _b === void 0 ? void 0 : _b.isMobileHeader;
32579
- var isSelector = ((_c = cell === null || cell === void 0 ? void 0 : cell.column) === null || _c === void 0 ? void 0 : _c.id) === 'selection';
32580
- return !isMobileHeader && !isSelector && jsxRuntime.jsx(Flex$1, __assign({
32581
- direction: "column",
32582
- justify: "center",
32583
- css: {
32584
- borderBottom: '1pt solid $bgBorder',
32585
- padding: '10px 12px',
32586
- minHeight: 52
32587
- }
32588
- }, {
32589
- children: jsxRuntime.jsxs(Grid, __assign({
32590
- columns: 6,
32591
- flow: "row",
32867
+ children: jsxRuntime.jsx(Flex$1, __assign({
32868
+ direction: "column",
32869
+ css: {
32870
+ borderTop: '1pt solid $bgBorder'
32871
+ }
32872
+ }, {
32873
+ children: row.cells.filter(function (cell) {
32874
+ var _a, _b, _c, _d;
32875
+ return typeof ((_a = cell === null || cell === void 0 ? void 0 : cell.column) === null || _a === void 0 ? void 0 : _a.hidden) === 'boolean' ? !((_b = cell === null || cell === void 0 ? void 0 : cell.column) === null || _b === void 0 ? void 0 : _b.hidden) : !((_d = (_c = cell === null || cell === void 0 ? void 0 : cell.column) === null || _c === void 0 ? void 0 : _c.hidden) === null || _d === void 0 ? void 0 : _d.call(_c, cell));
32876
+ }).map(function (cell, index) {
32877
+ var _a, _b, _c, _d;
32878
+ var headerRender = (_a = cell === null || cell === void 0 ? void 0 : cell.column) === null || _a === void 0 ? void 0 : _a.Header;
32879
+ var isMobileHeader = (_b = cell === null || cell === void 0 ? void 0 : cell.column) === null || _b === void 0 ? void 0 : _b.isMobileHeader;
32880
+ var isSelector = ((_c = cell === null || cell === void 0 ? void 0 : cell.column) === null || _c === void 0 ? void 0 : _c.id) === 'selection';
32881
+ return !isMobileHeader && !isSelector && jsxRuntime.jsx(Flex$1, __assign({
32882
+ direction: "column",
32883
+ justify: "center",
32592
32884
  css: {
32593
- gridRowGap: '$spacing-04',
32594
- gridColumnGap: '$spacing-04',
32595
- alignItems: 'center'
32885
+ borderBottom: '1pt solid $bgBorder',
32886
+ padding: '10px 12px',
32887
+ minHeight: 52
32596
32888
  }
32597
32889
  }, {
32598
- children: [jsxRuntime.jsx(GridItem, __assign({
32599
- colSpan: 3
32890
+ children: jsxRuntime.jsxs(Grid, __assign({
32891
+ columns: 6,
32892
+ flow: "row",
32893
+ css: {
32894
+ gridRowGap: '$spacing-04',
32895
+ gridColumnGap: '$spacing-04',
32896
+ alignItems: 'center'
32897
+ }
32600
32898
  }, {
32601
- children: jsxRuntime.jsx(Heading, __assign({
32602
- heading: "headerTable",
32603
- color: "secondary"
32899
+ children: [jsxRuntime.jsx(GridItem, __assign({
32900
+ colSpan: 3
32604
32901
  }, {
32605
- children: typeof headerRender === 'string' ? jsxRuntime.jsxs(jsxRuntime.Fragment, {
32606
- children: [headerRender === null || headerRender === void 0 ? void 0 : headerRender.toUpperCase(), ((_d = cell === null || cell === void 0 ? void 0 : cell.column) === null || _d === void 0 ? void 0 : _d.isRequired) ? jsxRuntime.jsx(Required$2, {
32607
- children: "*"
32608
- }, void 0) : '']
32609
- }, void 0) : headerRender
32610
- }), void 0)
32611
- }), void 0), jsxRuntime.jsx(GridItem, __assign({
32612
- colSpan: 3
32613
- }, {
32614
- children: jsxRuntime.jsx(Flex$1, __assign({
32615
- justify: "end"
32902
+ children: jsxRuntime.jsx(Heading, __assign({
32903
+ heading: "headerTable",
32904
+ color: "secondary"
32905
+ }, {
32906
+ children: typeof headerRender === 'string' ? jsxRuntime.jsxs(jsxRuntime.Fragment, {
32907
+ children: [headerRender === null || headerRender === void 0 ? void 0 : headerRender.toUpperCase(), ((_d = cell === null || cell === void 0 ? void 0 : cell.column) === null || _d === void 0 ? void 0 : _d.isRequired) ? jsxRuntime.jsx(Required$2, {
32908
+ children: "*"
32909
+ }, void 0) : '']
32910
+ }, void 0) : headerRender
32911
+ }), void 0)
32912
+ }), void 0), jsxRuntime.jsx(GridItem, __assign({
32913
+ colSpan: 3
32616
32914
  }, {
32617
- children: cell.render('Cell')
32618
- }), void 0)
32619
- }), void 0)]
32620
- }), void 0)
32621
- }), index);
32622
- })
32915
+ children: jsxRuntime.jsx(Flex$1, __assign({
32916
+ justify: "end"
32917
+ }, {
32918
+ children: cell.render('Cell')
32919
+ }), void 0)
32920
+ }), void 0)]
32921
+ }), void 0)
32922
+ }), "cell-collapse-".concat(index));
32923
+ })
32924
+ }), void 0)
32623
32925
  }), void 0)
32624
- }), void 0)
32625
- }, void 0))]
32926
+ }, void 0)]
32927
+ }), 'row-collapse-' + ((_a = row.getRowProps()) === null || _a === void 0 ? void 0 : _a.key))]
32626
32928
  }, void 0);
32627
32929
  };
32930
+ var virtualRows = rowVirtualizer.virtualItems,
32931
+ totalSize = rowVirtualizer.totalSize;
32932
+ var paddingTop = virtualRows.length > 0 ? ((_a = virtualRows === null || virtualRows === void 0 ? void 0 : virtualRows[0]) === null || _a === void 0 ? void 0 : _a.start) || 0 : 0;
32933
+ var paddingBottom = virtualRows.length > 0 ? totalSize - (((_b = virtualRows === null || virtualRows === void 0 ? void 0 : virtualRows[virtualRows.length - 1]) === null || _b === void 0 ? void 0 : _b.end) || 0) : 0;
32934
+ var tableRowData = virtualized ? virtualRows : rows;
32628
32935
  return jsxRuntime.jsx(TableContainer$2, __assign({
32936
+ ref: tableContainerRef,
32629
32937
  css: props === null || props === void 0 ? void 0 : props.css
32630
32938
  }, {
32631
32939
  children: jsxRuntime.jsxs(TableContent$2, __assign({}, getTableProps(), {
@@ -32636,7 +32944,7 @@
32636
32944
  return typeof (column === null || column === void 0 ? void 0 : column.hidden) === 'boolean' ? !(column === null || column === void 0 ? void 0 : column.hidden) : !((_a = column === null || column === void 0 ? void 0 : column.hidden) === null || _a === void 0 ? void 0 : _a.call(column, column));
32637
32945
  });
32638
32946
  return /*#__PURE__*/React.createElement(TableHeadRow$2, __assign({}, headerGroup.getHeaderGroupProps(), {
32639
- key: index
32947
+ key: "head-row-".concat(index)
32640
32948
  }), visibleHeaders.map(function (column, index) {
32641
32949
  var isMobileHeader = column === null || column === void 0 ? void 0 : column.isMobileHeader;
32642
32950
  var isSelector = (column === null || column === void 0 ? void 0 : column.id) === 'selection';
@@ -32647,27 +32955,40 @@
32647
32955
  maxWidth: isSelector ? 10 : column.maxWidth
32648
32956
  }
32649
32957
  }), {
32650
- key: index
32958
+ key: "head-cell-".concat(index)
32651
32959
  }), column.render('Header'), (column === null || column === void 0 ? void 0 : column.isRequired) ? jsxRuntime.jsx(Required$2, {
32652
32960
  children: "*"
32653
32961
  }, void 0) : '');
32654
32962
  }));
32655
32963
  })
32656
- }, void 0), jsxRuntime.jsx(TableBody$2, __assign({}, getTableBodyProps(), {
32657
- children: rows.map(function (row, index) {
32964
+ }, void 0), jsxRuntime.jsxs(TableBody$2, __assign({}, getTableBodyProps(), {
32965
+ children: [virtualized && paddingTop > 0 && jsxRuntime.jsx("tr", {
32966
+ children: jsxRuntime.jsx("td", {
32967
+ style: {
32968
+ height: "".concat(paddingTop, "px")
32969
+ }
32970
+ }, void 0)
32971
+ }, void 0), tableRowData === null || tableRowData === void 0 ? void 0 : tableRowData.map(function (dataRow, index) {
32972
+ var row = virtualized ? rows === null || rows === void 0 ? void 0 : rows[dataRow === null || dataRow === void 0 ? void 0 : dataRow.index] : dataRow;
32658
32973
  prepareRow(row);
32659
32974
  var customStyle = getCustomRows(row).customStyle;
32660
32975
  var _a = getCustomRows(row, function () {
32661
- return renderTableRow(row, index, customStyle);
32976
+ return renderTableRow(row, customStyle);
32662
32977
  }),
32663
32978
  CustomRow = _a.CustomRow,
32664
32979
  showInMobile = _a.showInMobile;
32665
32980
  return jsxRuntime.jsx(React__default["default"].Fragment, {
32666
32981
  children: CustomRow && showInMobile ? jsxRuntime.jsx(CustomRow, {
32667
32982
  style: customStyle
32668
- }, void 0) : renderTableRow(row, index, customStyle)
32983
+ }, void 0) : renderTableRow(row, customStyle)
32669
32984
  }, index);
32670
- })
32985
+ }), virtualized && paddingBottom > 0 && jsxRuntime.jsx("tr", {
32986
+ children: jsxRuntime.jsx("td", {
32987
+ style: {
32988
+ height: "".concat(paddingBottom, "px")
32989
+ }
32990
+ }, void 0)
32991
+ }, void 0)]
32671
32992
  }), void 0), rows.length < 1 && jsxRuntime.jsx(TableFoot$1, {
32672
32993
  children: jsxRuntime.jsx(TableFootRow$1, {
32673
32994
  children: jsxRuntime.jsx(TableFootCell$1, __assign({
@@ -50169,6 +50490,7 @@
50169
50490
  }, void 0);
50170
50491
  }
50171
50492
  function EditableTable(props) {
50493
+ var _a, _b;
50172
50494
  var columns = props.columns,
50173
50495
  data = props.data,
50174
50496
  rowHeight = props.rowHeight,
@@ -50177,17 +50499,20 @@
50177
50499
  showCheckbox = props.showCheckbox,
50178
50500
  onSelectedChange = props.onSelectedChange,
50179
50501
  getCheckboxProps = props.getCheckboxProps,
50180
- _a = props.keyId,
50181
- keyId = _a === void 0 ? 'id' : _a,
50502
+ _c = props.keyId,
50503
+ keyId = _c === void 0 ? 'id' : _c,
50182
50504
  selectedIds = props.selectedIds,
50183
50505
  onExpand = props.onExpand,
50184
50506
  isMobileLayout = props.isMobileLayout,
50185
50507
  hiddenColumns = props.hiddenColumns,
50186
- emptyDataProps = props.customEmptyDataProps;
50508
+ emptyDataProps = props.customEmptyDataProps,
50509
+ _d = props.virtualized,
50510
+ virtualized = _d === void 0 ? false : _d;
50187
50511
  var t = reactI18next.useTranslation('MajooUI/table').t;
50188
- var _b = React.useState(null),
50189
- selectedIndex = _b[0],
50190
- setSelectedIndex = _b[1];
50512
+ var _e = React.useState(null),
50513
+ selectedIndex = _e[0],
50514
+ setSelectedIndex = _e[1];
50515
+ var isMobile = useMediaQuery(isMobileLayout === undefined ? '(max-width: 767px)' : isMobileLayout ? '(max-width: 8000px)' : '(max-width: 0px)');
50191
50516
  var IndeterminateCheckbox = function IndeterminateCheckbox(props) {
50192
50517
  function handleCheckedChange(checked) {
50193
50518
  props === null || props === void 0 ? void 0 : props.onChange({
@@ -50246,6 +50571,19 @@
50246
50571
  visibleColumns = instance.visibleColumns,
50247
50572
  setHiddenColumns = instance.setHiddenColumns,
50248
50573
  selectedRowIds = instance.state.selectedRowIds;
50574
+ var tableContainerRef = React.useRef(null);
50575
+ var rowVirtualizer = reactVirtual.useVirtual({
50576
+ parentRef: tableContainerRef,
50577
+ size: data === null || data === void 0 ? void 0 : data.length,
50578
+ overscan: isMobile ? 20 : 10,
50579
+ estimateSize: React.useCallback(function () {
50580
+ return isMobile ? 40 : rowHeight || 80;
50581
+ }, [isMobile, rowHeight])
50582
+ });
50583
+ var virtualRows = rowVirtualizer.virtualItems,
50584
+ totalSize = rowVirtualizer.totalSize;
50585
+ var paddingTop = virtualRows.length > 0 ? ((_a = virtualRows === null || virtualRows === void 0 ? void 0 : virtualRows[0]) === null || _a === void 0 ? void 0 : _a.start) || 0 : 0;
50586
+ var paddingBottom = virtualRows.length > 0 ? totalSize - (((_b = virtualRows === null || virtualRows === void 0 ? void 0 : virtualRows[virtualRows.length - 1]) === null || _b === void 0 ? void 0 : _b.end) || 0) : 0;
50249
50587
  React.useEffect(function () {
50250
50588
  if (hiddenColumns) setHiddenColumns(hiddenColumns);
50251
50589
  }, [hiddenColumns, setHiddenColumns]);
@@ -50259,7 +50597,6 @@
50259
50597
  });
50260
50598
  }
50261
50599
  }, [selectedRowIds, data, onSelectedChange, selectedIndex]);
50262
- var isMobile = useMediaQuery(isMobileLayout === undefined ? '(max-width: 767px)' : isMobileLayout ? '(max-width: 8000px)' : '(max-width: 0px)');
50263
50600
  var customEmptyDataProps = emptyDataProps || defaultEmptyDataProps(t, isMobile);
50264
50601
  var getCustomRows = function getCustomRows(row, renderRow) {
50265
50602
  var _a;
@@ -50315,7 +50652,9 @@
50315
50652
  })
50316
50653
  }), void 0);
50317
50654
  };
50655
+ var tableRowData = virtualized ? virtualRows : rows;
50318
50656
  return !isMobile ? jsxRuntime.jsx(TableContainer$1, __assign({
50657
+ ref: tableContainerRef,
50319
50658
  css: props === null || props === void 0 ? void 0 : props.css
50320
50659
  }, {
50321
50660
  children: jsxRuntime.jsxs(TableContent$1, __assign({}, getTableProps(), {
@@ -50341,8 +50680,15 @@
50341
50680
  })
50342
50681
  }), void 0);
50343
50682
  })
50344
- }, void 0), jsxRuntime.jsx(TableBody$1, __assign({}, getTableBodyProps(), {
50345
- children: rows.map(function (row, index) {
50683
+ }, void 0), jsxRuntime.jsxs(TableBody$1, __assign({}, getTableBodyProps(), {
50684
+ children: [virtualized && paddingTop > 0 && jsxRuntime.jsx("tr", {
50685
+ children: jsxRuntime.jsx("td", {
50686
+ style: {
50687
+ height: "".concat(paddingTop, "px")
50688
+ }
50689
+ }, void 0)
50690
+ }, void 0), tableRowData.map(function (dataRow, index) {
50691
+ var row = virtualized ? rows === null || rows === void 0 ? void 0 : rows[dataRow === null || dataRow === void 0 ? void 0 : dataRow.index] : dataRow;
50346
50692
  prepareRow(row);
50347
50693
  var subRowCells = row.cells.filter(function (cell) {
50348
50694
  return cell.column.isSubRow;
@@ -50399,7 +50745,13 @@
50399
50745
  }), cell.column.id);
50400
50746
  })]
50401
50747
  }, index);
50402
- })
50748
+ }), virtualized && paddingBottom > 0 && jsxRuntime.jsx("tr", {
50749
+ children: jsxRuntime.jsx("td", {
50750
+ style: {
50751
+ height: "".concat(paddingBottom, "px")
50752
+ }
50753
+ }, void 0)
50754
+ }, void 0)]
50403
50755
  }), void 0), rows.length < 1 && jsxRuntime.jsx(TableFoot, {
50404
50756
  children: jsxRuntime.jsx(TableFootRow, {
50405
50757
  children: jsxRuntime.jsx(TableFootCell, __assign({
@@ -50427,7 +50779,10 @@
50427
50779
  customRows: customRows,
50428
50780
  onExpand: onExpand,
50429
50781
  hiddenColumns: hiddenColumns,
50430
- customEmptyDataProps: customEmptyDataProps
50782
+ customEmptyDataProps: customEmptyDataProps,
50783
+ virtualized: virtualized,
50784
+ rowVirtualizer: rowVirtualizer,
50785
+ tableContainerRef: tableContainerRef
50431
50786
  }, void 0);
50432
50787
  }
50433
50788
  EditableTable.Product = Product;