@majoo-ui/react 1.52.9 → 1.53.0

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
@@ -42,8 +42,9 @@ import request from 'superagent';
42
42
  import { ResponsiveContainer, LineChart as LineChart$1, XAxis, YAxis, CartesianGrid, Tooltip as Tooltip$2, Line as Line$1 } from 'recharts';
43
43
  import { EditorState } from 'draft-js';
44
44
  import { Editor } from 'react-draft-wysiwyg';
45
+ import { ContextMenuTrigger as ContextMenuTrigger$1, ContextMenu as ContextMenu$1, MenuItem } from 'react-contextmenu';
45
46
  import ReactCrop, { centerCrop, makeAspectCrop } from 'react-image-crop';
46
- import imageCompression from 'browser-image-compression';
47
+ import imageCompressionComponent from 'browser-image-compression';
47
48
  import { useSticky } from 'react-table-sticky';
48
49
 
49
50
  var _jsxFileName$10 = "C:\\Users\\Lenovo\\Documents\\code\\majoo\\majoo-ui\\packages\\react\\src\\majoo-provider\\ThemeProvider.js";
@@ -3875,6 +3876,20 @@ const ButtonNegativeGhost = {
3875
3876
  outline: '1px solid $btnNegative'
3876
3877
  }
3877
3878
  };
3879
+ const ButtonGhostSecondary = {
3880
+ backgroundColor: '$btnSecondary',
3881
+ color: '$textSecondary',
3882
+ border: 'none',
3883
+ '&:hover': {
3884
+ backgroundColor: '$gray100',
3885
+ outline: '1px solid $gray100',
3886
+ color: '$textSecondary'
3887
+ },
3888
+ '&:active': {
3889
+ backgroundColor: '$gray150',
3890
+ outline: '1px solid $gray150'
3891
+ }
3892
+ };
3878
3893
  const ButtonHeaderMenu = {
3879
3894
  backgroundColor: '$bgWhite',
3880
3895
  border: '1px solid $bgBorder',
@@ -3962,6 +3977,7 @@ const ButtonPrimitive = styled('button', {
3962
3977
  primary: Object.assign({}, ButtonPrimary),
3963
3978
  secondary: Object.assign({}, PrimarySecondary),
3964
3979
  ghost: Object.assign({}, GhostButton),
3980
+ 'ghost-secondary': Object.assign({}, ButtonGhostSecondary),
3965
3981
  negative: Object.assign({}, ButtonNegative),
3966
3982
  'negative-secondary': Object.assign({}, ButtonNegativeSecondary),
3967
3983
  'negative-ghost': Object.assign({}, ButtonNegativeGhost),
@@ -4818,7 +4834,7 @@ var _jsxFileName$Q = "C:\\Users\\Lenovo\\Documents\\code\\majoo\\majoo-ui\\packa
4818
4834
  const {
4819
4835
  zIndices: zIndices$1
4820
4836
  } = foundations;
4821
- const slideUpAndFade$1 = keyframes({
4837
+ const slideUpAndFade$2 = keyframes({
4822
4838
  '0%': {
4823
4839
  opacity: 0,
4824
4840
  transform: 'translateY(2px)'
@@ -4828,7 +4844,7 @@ const slideUpAndFade$1 = keyframes({
4828
4844
  transform: 'translateY(0)'
4829
4845
  }
4830
4846
  });
4831
- const slideRightAndFade$1 = keyframes({
4847
+ const slideRightAndFade$2 = keyframes({
4832
4848
  '0%': {
4833
4849
  opacity: 0,
4834
4850
  transform: 'translateX(-2px)'
@@ -4838,7 +4854,7 @@ const slideRightAndFade$1 = keyframes({
4838
4854
  transform: 'translateX(0)'
4839
4855
  }
4840
4856
  });
4841
- const slideDownAndFade$1 = keyframes({
4857
+ const slideDownAndFade$2 = keyframes({
4842
4858
  '0%': {
4843
4859
  opacity: 0,
4844
4860
  transform: 'translateY(-2px)'
@@ -4848,7 +4864,7 @@ const slideDownAndFade$1 = keyframes({
4848
4864
  transform: 'translateY(0)'
4849
4865
  }
4850
4866
  });
4851
- const slideLeftAndFade$1 = keyframes({
4867
+ const slideLeftAndFade$2 = keyframes({
4852
4868
  '0%': {
4853
4869
  opacity: 0,
4854
4870
  transform: 'translateX(2px)'
@@ -4875,16 +4891,16 @@ const StyledContent$6 = styled(TooltipPrimitive.Content, {
4875
4891
  willChange: 'transform, opacity',
4876
4892
  '&[data-state="delayed-open"]': {
4877
4893
  '&[data-side="top"]': {
4878
- animationName: slideDownAndFade$1
4894
+ animationName: slideDownAndFade$2
4879
4895
  },
4880
4896
  '&[data-side="right"]': {
4881
- animationName: slideLeftAndFade$1
4897
+ animationName: slideLeftAndFade$2
4882
4898
  },
4883
4899
  '&[data-side="bottom"]': {
4884
- animationName: slideUpAndFade$1
4900
+ animationName: slideUpAndFade$2
4885
4901
  },
4886
4902
  '&[data-side="left"]': {
4887
- animationName: slideRightAndFade$1
4903
+ animationName: slideRightAndFade$2
4888
4904
  }
4889
4905
  }
4890
4906
  }
@@ -6341,7 +6357,7 @@ InputRadioGroup.propTypes = {
6341
6357
  };
6342
6358
  InputRadioGroup.displayName = 'InputRadioGroup';
6343
6359
 
6344
- const _excluded$j = ["id", "disabled", "css", "inputType", "inputProps", "description"];
6360
+ const _excluded$j = ["id", "disabled", "css", "inputType", "inputProps", "description", "readOnly"];
6345
6361
  var _jsxFileName$E = "C:\\Users\\Lenovo\\Documents\\code\\majoo\\majoo-ui\\packages\\react\\src\\components\\form\\components\\InputRadio\\InputRadio.js";
6346
6362
  const INDICATOR_BASE_STYLES = {
6347
6363
  alignItems: 'center',
@@ -6412,6 +6428,20 @@ const StyledRadio = styled(RadioGroupPrimitive.Item, RADIO_BASE_STYLES, {
6412
6428
  backgroundColor: '$gray200'
6413
6429
  }
6414
6430
  }
6431
+ },
6432
+ variants: {
6433
+ readOnly: {
6434
+ true: {
6435
+ '&[data-state=checked]': {
6436
+ border: '2px solid $primary500 !important'
6437
+ },
6438
+ [`& ${StyledIndicator$1}`]: {
6439
+ '&::after': {
6440
+ backgroundColor: '$primary500 !important'
6441
+ }
6442
+ }
6443
+ }
6444
+ }
6415
6445
  }
6416
6446
  });
6417
6447
  const Container$8 = styled(Flex$1, {
@@ -6431,6 +6461,11 @@ const Container$8 = styled(Flex$1, {
6431
6461
  }
6432
6462
  }
6433
6463
  },
6464
+ disabledOutlined: {
6465
+ true: {
6466
+ backgroundColor: '$gray150 !important'
6467
+ }
6468
+ },
6434
6469
  active: {
6435
6470
  true: {
6436
6471
  border: '1px solid $primary400 !important'
@@ -6457,7 +6492,8 @@ const InputRadio = _ref => {
6457
6492
  css,
6458
6493
  inputType,
6459
6494
  inputProps,
6460
- description
6495
+ description,
6496
+ readOnly
6461
6497
  } = _ref,
6462
6498
  props = _objectWithoutPropertiesLoose(_ref, _excluded$j);
6463
6499
 
@@ -6466,22 +6502,24 @@ const InputRadio = _ref => {
6466
6502
  case 'number':
6467
6503
  return /*#__PURE__*/React__default.createElement(InputNumber, _extends({}, inputProps, {
6468
6504
  disabled: disabled || checked !== props.value,
6505
+ readOnly: readOnly || checked !== props.value,
6469
6506
  __self: this,
6470
6507
  __source: {
6471
6508
  fileName: _jsxFileName$E,
6472
- lineNumber: 125,
6473
- columnNumber: 16
6509
+ lineNumber: 146,
6510
+ columnNumber: 11
6474
6511
  }
6475
6512
  }));
6476
6513
 
6477
6514
  case 'text':
6478
6515
  return /*#__PURE__*/React__default.createElement(InputText, _extends({}, inputProps, {
6479
6516
  disabled: disabled || checked !== props.value,
6517
+ readOnly: readOnly || checked !== props.value,
6480
6518
  __self: this,
6481
6519
  __source: {
6482
6520
  fileName: _jsxFileName$E,
6483
- lineNumber: 128,
6484
- columnNumber: 16
6521
+ lineNumber: 155,
6522
+ columnNumber: 11
6485
6523
  }
6486
6524
  }));
6487
6525
 
@@ -6495,12 +6533,12 @@ const InputRadio = _ref => {
6495
6533
  letterSpacing: '$long-content-regular',
6496
6534
  fontWeight: '400',
6497
6535
  cursor: 'pointer',
6498
- color: disabled ? '$textDisable' : '$textPrimary'
6536
+ color: disabled || readOnly ? '$textDisable' : '$textPrimary'
6499
6537
  },
6500
6538
  __self: this,
6501
6539
  __source: {
6502
6540
  fileName: _jsxFileName$E,
6503
- lineNumber: 132,
6541
+ lineNumber: 164,
6504
6542
  columnNumber: 11
6505
6543
  }
6506
6544
  }, props.label);
@@ -6511,7 +6549,7 @@ const InputRadio = _ref => {
6511
6549
  __self: undefined,
6512
6550
  __source: {
6513
6551
  fileName: _jsxFileName$E,
6514
- lineNumber: 151,
6552
+ lineNumber: 183,
6515
6553
  columnNumber: 5
6516
6554
  }
6517
6555
  }, ({
@@ -6523,13 +6561,14 @@ const InputRadio = _ref => {
6523
6561
  return /*#__PURE__*/React__default.createElement(Container$8, {
6524
6562
  direction: "column",
6525
6563
  outlined: outlined,
6564
+ disabledOutlined: outlined && (readOnly || disabled),
6526
6565
  disabled: disabled,
6527
- active: outlined && checked === props.value && !disabled,
6566
+ active: outlined && checked === props.value && !disabled && !readOnly,
6528
6567
  css: css,
6529
6568
  __self: undefined,
6530
6569
  __source: {
6531
6570
  fileName: _jsxFileName$E,
6532
- lineNumber: 156,
6571
+ lineNumber: 188,
6533
6572
  columnNumber: 11
6534
6573
  }
6535
6574
  }, /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -6538,24 +6577,25 @@ const InputRadio = _ref => {
6538
6577
  __self: undefined,
6539
6578
  __source: {
6540
6579
  fileName: _jsxFileName$E,
6541
- lineNumber: 163,
6580
+ lineNumber: 196,
6542
6581
  columnNumber: 13
6543
6582
  }
6544
6583
  }, /*#__PURE__*/React__default.createElement(StyledRadio, _extends({
6545
6584
  id: id,
6546
- disabled: disabled
6585
+ disabled: disabled || readOnly,
6586
+ readOnly: readOnly
6547
6587
  }, props, {
6548
6588
  __self: undefined,
6549
6589
  __source: {
6550
6590
  fileName: _jsxFileName$E,
6551
- lineNumber: 164,
6591
+ lineNumber: 197,
6552
6592
  columnNumber: 15
6553
6593
  }
6554
6594
  }), /*#__PURE__*/React__default.createElement(StyledIndicator$1, {
6555
6595
  __self: undefined,
6556
6596
  __source: {
6557
6597
  fileName: _jsxFileName$E,
6558
- lineNumber: 165,
6598
+ lineNumber: 198,
6559
6599
  columnNumber: 17
6560
6600
  }
6561
6601
  })), renderInputType(inputType, checked)), description && /*#__PURE__*/React__default.createElement(Text$1, {
@@ -6567,7 +6607,7 @@ const InputRadio = _ref => {
6567
6607
  __self: undefined,
6568
6608
  __source: {
6569
6609
  fileName: _jsxFileName$E,
6570
- lineNumber: 171,
6610
+ lineNumber: 203,
6571
6611
  columnNumber: 15
6572
6612
  }
6573
6613
  }, description));
@@ -6581,7 +6621,8 @@ InputRadio.propTypes = {
6581
6621
  css: PropTypes.object,
6582
6622
  inputType: PropTypes.oneOf(['number', 'text', 'default']),
6583
6623
  onChange: PropTypes.func,
6584
- description: PropTypes.string
6624
+ description: PropTypes.string,
6625
+ readOnly: PropTypes.bool
6585
6626
  };
6586
6627
  InputRadio.displayName = 'InputRadio';
6587
6628
 
@@ -6763,7 +6804,7 @@ const InputNumber = /*#__PURE__*/React__default.forwardRef((_ref, ref) => {
6763
6804
  size: size,
6764
6805
  isInvalid: isInvalid,
6765
6806
  readOnly: readOnly,
6766
- isReadOnly: readOnly,
6807
+ isReadOnly: readOnly && !(props !== null && props !== void 0 && props.inputGroup),
6767
6808
  disabled: disabled
6768
6809
  }, props, {
6769
6810
  __self: undefined,
@@ -9324,7 +9365,7 @@ const ItemWrapper$1 = styled(Box, {
9324
9365
  alignItems: 'center',
9325
9366
  borderBottom: '1px solid $bgBorder'
9326
9367
  });
9327
- const Item$2 = styled('div', {
9368
+ const Item$3 = styled('div', {
9328
9369
  overflow: 'hidden',
9329
9370
  backgroundColor: '$bgWhite',
9330
9371
  lineHeight: '20px',
@@ -9820,7 +9861,7 @@ const InputSelectCheck = /*#__PURE__*/forwardRef((_ref, ref) => {
9820
9861
  lineNumber: 617,
9821
9862
  columnNumber: 25
9822
9863
  }
9823
- })), /*#__PURE__*/React__default.createElement(Item$2, {
9864
+ })), /*#__PURE__*/React__default.createElement(Item$3, {
9824
9865
  css: {
9825
9866
  backgroundColor: 'unset'
9826
9867
  },
@@ -10094,7 +10135,7 @@ const ItemWrapper = styled('div', {
10094
10135
  color: '$textGreen',
10095
10136
  height: '100%'
10096
10137
  });
10097
- const Item$1 = styled('div', {
10138
+ const Item$2 = styled('div', {
10098
10139
  backgroundColor: '$bgWhite',
10099
10140
  cursor: 'pointer',
10100
10141
  lineHeight: '20px'
@@ -10185,7 +10226,7 @@ function InputCreatable({
10185
10226
  lineNumber: 181,
10186
10227
  columnNumber: 11
10187
10228
  }
10188
- }), /*#__PURE__*/React__default.createElement(Item$1, {
10229
+ }), /*#__PURE__*/React__default.createElement(Item$2, {
10189
10230
  onClick: () => {
10190
10231
  if (onClickItem) onClickItem();
10191
10232
  setOpen(false);
@@ -14107,7 +14148,7 @@ function useMediaQuery(query) {
14107
14148
  }
14108
14149
 
14109
14150
  const ButtonGroup = styled(ToggleGroupPrimitive.Root, {});
14110
- const Item = styled(ButtonGroupItem, {
14151
+ const Item$1 = styled(ButtonGroupItem, {
14111
14152
  fontSize: '$label',
14112
14153
  lineHeight: '$label',
14113
14154
  letterSpacing: '$label',
@@ -14125,7 +14166,7 @@ const AdvancedOption = ({
14125
14166
  type: "single",
14126
14167
  orientation: "vertical"
14127
14168
  }, {
14128
- children: _options.map(option => jsx(Item, Object.assign({
14169
+ children: _options.map(option => jsx(Item$1, Object.assign({
14129
14170
  isToggle: false,
14130
14171
  disabled: disabled,
14131
14172
  value: option.value,
@@ -16343,13 +16384,11 @@ function advancePickerDate(type) {
16343
16384
 
16344
16385
  moment.locale('id');
16345
16386
 
16346
- const getInputPickerValue = (type, date) => {
16387
+ const getInputPickerValue = (type, date, isTimePicker) => {
16347
16388
  if (!date) return '';
16348
16389
 
16349
16390
  if (type === SINGLE_PICKER) {
16350
- return Intl.DateTimeFormat('id-ID', {
16351
- dateStyle: 'long'
16352
- }).format(date);
16391
+ return `${moment(date).format(isTimePicker ? 'D MMMM YYYY, HH:mm' : 'D MMMM YYYY')}`;
16353
16392
  } else {
16354
16393
  return `${moment(date[0]).format('ll')} - ${moment(date[1]).format('ll')}`;
16355
16394
  }
@@ -16415,7 +16454,7 @@ function InputDatePicker({
16415
16454
  children: jsx(CalendarOutline, {}, void 0)
16416
16455
  }, void 0), jsx(InputText, {
16417
16456
  placeholder: placeholder,
16418
- value: getInputPickerValue(type, selectedDate),
16457
+ value: getInputPickerValue(type, selectedDate, showTimePicker),
16419
16458
  // eslint-disable-next-line @typescript-eslint/no-empty-function
16420
16459
  onChange: () => {},
16421
16460
  isPicker: true
@@ -16988,6 +17027,130 @@ Pagination.propTypes = {
16988
17027
  };
16989
17028
  Pagination.displayName = 'Pagination';
16990
17029
 
17030
+ const Trigger = props => {
17031
+ return jsx(ContextMenuTrigger$1, Object.assign({}, props, {
17032
+ mouseButton: (props === null || props === void 0 ? void 0 : props.triggerSide) === 'left' ? 0 : undefined
17033
+ }, {
17034
+ children: props === null || props === void 0 ? void 0 : props.children
17035
+ }), void 0);
17036
+ };
17037
+
17038
+ const Menu = props => {
17039
+ return jsx(ContextMenu$1, Object.assign({}, props, {
17040
+ children: props === null || props === void 0 ? void 0 : props.children
17041
+ }), void 0);
17042
+ };
17043
+
17044
+ const Item = props => {
17045
+ return jsx(MenuItem, Object.assign({}, props, {
17046
+ children: props === null || props === void 0 ? void 0 : props.children
17047
+ }), void 0);
17048
+ };
17049
+
17050
+ const slideUpAndFade$1 = keyframes({
17051
+ '0%': {
17052
+ opacity: 0,
17053
+ transform: 'translateY(2px)'
17054
+ },
17055
+ '100%': {
17056
+ opacity: 1,
17057
+ transform: 'translateY(0)'
17058
+ }
17059
+ });
17060
+ const slideRightAndFade$1 = keyframes({
17061
+ '0%': {
17062
+ opacity: 0,
17063
+ transform: 'translateX(-2px)'
17064
+ },
17065
+ '100%': {
17066
+ opacity: 1,
17067
+ transform: 'translateX(0)'
17068
+ }
17069
+ });
17070
+ const slideDownAndFade$1 = keyframes({
17071
+ '0%': {
17072
+ opacity: 0,
17073
+ transform: 'translateY(-2px)'
17074
+ },
17075
+ '100%': {
17076
+ opacity: 1,
17077
+ transform: 'translateY(0)'
17078
+ }
17079
+ });
17080
+ const slideLeftAndFade$1 = keyframes({
17081
+ '0%': {
17082
+ opacity: 0,
17083
+ transform: 'translateX(2px)'
17084
+ },
17085
+ '100%': {
17086
+ opacity: 1,
17087
+ transform: 'translateX(0)'
17088
+ }
17089
+ });
17090
+ const ContextMenuTrigger = styled(Trigger);
17091
+ const ContextMenu = styled(Menu, {
17092
+ width: 'auto',
17093
+ minWidth: 143,
17094
+ maxWidth: 243,
17095
+ backgroundColor: 'white',
17096
+ borderRadius: 4,
17097
+ padding: 8,
17098
+ zIndex: '$sticky',
17099
+ boxShadow: '0px 10px 38px -10px rgba(22, 23, 24, 0.35), 0px 10px 20px -15px rgba(22, 23, 24, 0.2)',
17100
+ '@media (prefers-reduced-motion: no-preference)': {
17101
+ animationDuration: '400ms',
17102
+ animationTimingFunction: 'cubic-bezier(0.16, 1, 0.3, 1)',
17103
+ animationFillMode: 'forwards',
17104
+ willChange: 'transform, opacity',
17105
+ '&[data-state="open"]': {
17106
+ '&[data-side="top"]': {
17107
+ animationName: slideDownAndFade$1
17108
+ },
17109
+ '&[data-side="right"]': {
17110
+ animationName: slideLeftAndFade$1
17111
+ },
17112
+ '&[data-side="bottom"]': {
17113
+ animationName: slideUpAndFade$1
17114
+ },
17115
+ '&[data-side="left"]': {
17116
+ animationName: slideRightAndFade$1
17117
+ }
17118
+ }
17119
+ }
17120
+ });
17121
+ const ContextMenuItem = styled(Item, {
17122
+ all: 'unset',
17123
+ fontSize: 14,
17124
+ lineHeight: 1.5,
17125
+ borderRadius: 3,
17126
+ display: 'flex',
17127
+ alignItems: 'center',
17128
+ height: 'calc(36px - 8px)',
17129
+ padding: '4px 0',
17130
+ position: 'relative',
17131
+ userSelect: 'none',
17132
+ color: '$textPrimary',
17133
+ '&[data-disabled]': {
17134
+ color: colors$4.gray400,
17135
+ pointerEvents: 'none'
17136
+ },
17137
+ '&:hover': {
17138
+ cursor: 'pointer',
17139
+ backgroundColor: colors$4.gray100
17140
+ },
17141
+ '&:active': {
17142
+ backgroundColor: colors$4.gray150
17143
+ },
17144
+ '&:focus': {
17145
+ backgroundColor: colors$4.gray100
17146
+ }
17147
+ });
17148
+ const ContextMenuSeparator = styled('div', {
17149
+ height: 1,
17150
+ backgroundColor: colors$4.gray150,
17151
+ margin: 5
17152
+ });
17153
+
16991
17154
  const TableContainer$4 = styled(Flex$1, {
16992
17155
  position: 'relative',
16993
17156
  flexDirection: 'column',
@@ -17475,9 +17638,11 @@ function Table({
17475
17638
  columnOrder,
17476
17639
  customRowsStyle,
17477
17640
  isMobileLayout,
17478
- showDuplicatedData
17641
+ showDuplicatedData,
17642
+ onRowClick
17479
17643
  }) {
17480
17644
  const [limit, setLimit] = useState(rowLimit);
17645
+ const [dataRow, setDataRow] = useState({});
17481
17646
 
17482
17647
  const getInitialState = () => {
17483
17648
  const initialState = {};
@@ -17622,6 +17787,54 @@ function Table({
17622
17787
  });
17623
17788
  }
17624
17789
  }, [data, selectedIds]);
17790
+
17791
+ const getOptionsMenu = () => {
17792
+ var _a, _b;
17793
+
17794
+ let options = [];
17795
+
17796
+ for (let i = 0; i < (page === null || page === void 0 ? void 0 : page.length); i++) {
17797
+ prepareRow(page[i]);
17798
+
17799
+ for (let j = 0; j < page[i].cells.length; j++) {
17800
+ const column = (_b = (_a = page[i]) === null || _a === void 0 ? void 0 : _a.cells[j]) === null || _b === void 0 ? void 0 : _b.column;
17801
+
17802
+ if (column === null || column === void 0 ? void 0 : column.options) {
17803
+ options = column === null || column === void 0 ? void 0 : column.options;
17804
+ }
17805
+ }
17806
+ }
17807
+
17808
+ return options;
17809
+ };
17810
+
17811
+ const renderContextMenu = () => {
17812
+ const options = getOptionsMenu();
17813
+ return jsx(ContextMenu, Object.assign({
17814
+ id: "context-menu-table"
17815
+ }, {
17816
+ children: options === null || options === void 0 ? void 0 : options.map((option, index) => {
17817
+ return jsxs(React.Fragment, {
17818
+ children: [jsx(ContextMenuItem, Object.assign({
17819
+ data: {
17820
+ row: dataRow
17821
+ },
17822
+ onClick: () => option === null || option === void 0 ? void 0 : option.onClick({
17823
+ row: dataRow
17824
+ })
17825
+ }, {
17826
+ children: option === null || option === void 0 ? void 0 : option.title
17827
+ }), void 0), index !== (options === null || options === void 0 ? void 0 : options.length) - 1 && jsx(ContextMenuSeparator, {}, void 0)]
17828
+ }, index);
17829
+ })
17830
+ }), void 0);
17831
+ };
17832
+
17833
+ const handleRowClick = (row, i) => {
17834
+ onRowClick === null || onRowClick === void 0 ? void 0 : onRowClick(row, i);
17835
+ setDataRow(row);
17836
+ };
17837
+
17625
17838
  return jsxs(Box, Object.assign({
17626
17839
  css: {
17627
17840
  position: 'relative',
@@ -17649,11 +17862,11 @@ function Table({
17649
17862
  children: "Loading .... "
17650
17863
  }), void 0)
17651
17864
  }), void 0), !isMobile ? jsxs(Fragment, {
17652
- children: [jsx(TableContainer$3, Object.assign({
17865
+ children: [jsxs(TableContainer$3, Object.assign({
17653
17866
  css: css,
17654
17867
  ref: scrollerRef
17655
17868
  }, {
17656
- children: renderInfiniteScrollWrapper(jsxs(TableContent$3, Object.assign({}, getTableProps(), {
17869
+ children: [renderInfiniteScrollWrapper(jsxs(TableContent$3, Object.assign({}, getTableProps(), {
17657
17870
  children: [jsx(TableHead$3, Object.assign({
17658
17871
  css: headerCss
17659
17872
  }, {
@@ -17689,12 +17902,17 @@ function Table({
17689
17902
  })
17690
17903
  }), void 0), jsx(TableBody$3, Object.assign({}, getTableBodyProps(), {
17691
17904
  children: page.map((row, i) => {
17692
- var _a;
17905
+ var _a, _b;
17693
17906
 
17694
17907
  prepareRow(row);
17695
17908
  const subRowCells = row.cells.filter(cell => cell.column.isSubRow);
17696
17909
  const leftAddOnCells = (_a = row.cells.filter(cell => ['expander', 'selection'].includes(cell.column.id))) !== null && _a !== void 0 ? _a : [];
17697
17910
  const notNullHeaderColumns = visibleColumns.filter(column => typeof column.Header !== 'function' && column.Header !== null && !column.isSubRow);
17911
+ const isContextMenu = (_b = row.cells.filter(cell => {
17912
+ var _a, _b;
17913
+
17914
+ return (_b = (_a = cell.column) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.length;
17915
+ })) === null || _b === void 0 ? void 0 : _b.length;
17698
17916
  let customStyle = {};
17699
17917
 
17700
17918
  if (customRowsStyle && customRowsStyle(row.values).length) {
@@ -17714,13 +17932,35 @@ function Table({
17714
17932
  css: customStyle
17715
17933
  }, row.getRowProps(), {
17716
17934
  children: row.cells.filter(cell => !cell.column.isSubRow).map(cell => {
17935
+ var _a, _b;
17936
+
17717
17937
  return jsx(TableCell$3, Object.assign({}, cell.getCellProps(addOnCellStyle(cell.column.id)), {
17718
17938
  css: Object.assign(Object.assign({
17719
- padding: cell.column.accessor ? '20px 8px' : '20px 20px',
17720
- verticalAlign: cell.column.accessor ? cellAlign : 'center'
17721
- }, stickyPositionStyling(cell.column)), stickyShadowStyling(cell.column))
17939
+ padding: !isContextMenu || ['expander', 'selection', 'menu', 'eye'].includes((_a = cell === null || cell === void 0 ? void 0 : cell.column) === null || _a === void 0 ? void 0 : _a.id) ? cell.column.accessor ? '20px 8px' : '20px 20px' : '',
17940
+ verticalAlign: cell.column.accessor ? cellAlign : 'center',
17941
+ cursor: onRowClick ? 'pointer' : 'unset'
17942
+ }, stickyPositionStyling(cell.column)), stickyShadowStyling(cell.column)),
17943
+ onClick: () => handleRowClick(row, i)
17722
17944
  }, {
17723
- children: cell.render('Cell')
17945
+ children: jsx(ConditionalWrapper, Object.assign({
17946
+ condition: isContextMenu && !['expander', 'selection', 'menu', 'eye'].includes((_b = cell === null || cell === void 0 ? void 0 : cell.column) === null || _b === void 0 ? void 0 : _b.id),
17947
+ wrapper: children => jsx(ContextMenuTrigger, Object.assign({
17948
+ id: "context-menu-table",
17949
+ triggerSide: "left"
17950
+ }, {
17951
+ children: jsx(Box, Object.assign({
17952
+ css: {
17953
+ cursor: 'pointer',
17954
+ padding: cell.column.accessor ? '20px 8px' : '20px 20px'
17955
+ },
17956
+ onClick: () => handleRowClick(row, i)
17957
+ }, {
17958
+ children: children
17959
+ }), void 0)
17960
+ }), void 0)
17961
+ }, {
17962
+ children: cell.render('Cell')
17963
+ }), void 0)
17724
17964
  }), void 0);
17725
17965
  })
17726
17966
  }), void 0), row.isExpanded ? subRowCells.map((cell, index) => jsxs(TableRow$3, Object.assign({
@@ -17760,7 +18000,7 @@ function Table({
17760
18000
  }, row.id);
17761
18001
  })
17762
18002
  }), void 0)]
17763
- }), void 0))
18003
+ }), void 0)), renderContextMenu()]
17764
18004
  }), void 0), !isInfiniteScroll && jsx(Box, Object.assign({
17765
18005
  css: {
17766
18006
  width: '100%'
@@ -18534,6 +18774,7 @@ var _jsxFileName$d = "C:\\Users\\Lenovo\\Documents\\code\\majoo\\majoo-ui\\packa
18534
18774
 
18535
18775
  const rowMenuColumn = (options, icon, config) => ({
18536
18776
  id: 'menu',
18777
+ options,
18537
18778
  Header: () => null,
18538
18779
  Cell: props => {
18539
18780
  const defaultConfig = {
@@ -18557,7 +18798,7 @@ const rowMenuColumn = (options, icon, config) => ({
18557
18798
  __self: undefined,
18558
18799
  __source: {
18559
18800
  fileName: _jsxFileName$d,
18560
- lineNumber: 36,
18801
+ lineNumber: 37,
18561
18802
  columnNumber: 9
18562
18803
  }
18563
18804
  }, /*#__PURE__*/React__default.createElement(DropdownMenuTrigger, {
@@ -18565,7 +18806,7 @@ const rowMenuColumn = (options, icon, config) => ({
18565
18806
  __self: undefined,
18566
18807
  __source: {
18567
18808
  fileName: _jsxFileName$d,
18568
- lineNumber: 37,
18809
+ lineNumber: 38,
18569
18810
  columnNumber: 11
18570
18811
  }
18571
18812
  }, /*#__PURE__*/React__default.createElement(Box, {
@@ -18578,7 +18819,7 @@ const rowMenuColumn = (options, icon, config) => ({
18578
18819
  __self: undefined,
18579
18820
  __source: {
18580
18821
  fileName: _jsxFileName$d,
18581
- lineNumber: 38,
18822
+ lineNumber: 39,
18582
18823
  columnNumber: 13
18583
18824
  }
18584
18825
  }, /*#__PURE__*/React__default.createElement(IconButton, {
@@ -18586,21 +18827,21 @@ const rowMenuColumn = (options, icon, config) => ({
18586
18827
  __self: undefined,
18587
18828
  __source: {
18588
18829
  fileName: _jsxFileName$d,
18589
- lineNumber: 39,
18830
+ lineNumber: 40,
18590
18831
  columnNumber: 15
18591
18832
  }
18592
18833
  }, icon || /*#__PURE__*/React__default.createElement(EllipsisHorizontalOutline, {
18593
18834
  __self: undefined,
18594
18835
  __source: {
18595
18836
  fileName: _jsxFileName$d,
18596
- lineNumber: 39,
18837
+ lineNumber: 40,
18597
18838
  columnNumber: 70
18598
18839
  }
18599
18840
  })))), /*#__PURE__*/React__default.createElement(DropdownMenuPortal, {
18600
18841
  __self: undefined,
18601
18842
  __source: {
18602
18843
  fileName: _jsxFileName$d,
18603
- lineNumber: 42,
18844
+ lineNumber: 43,
18604
18845
  columnNumber: 11
18605
18846
  }
18606
18847
  }, /*#__PURE__*/React__default.createElement(DropdownMenuContent, {
@@ -18623,7 +18864,7 @@ const rowMenuColumn = (options, icon, config) => ({
18623
18864
  __self: undefined,
18624
18865
  __source: {
18625
18866
  fileName: _jsxFileName$d,
18626
- lineNumber: 43,
18867
+ lineNumber: 44,
18627
18868
  columnNumber: 13
18628
18869
  }
18629
18870
  }, options.map((option, index) => /*#__PURE__*/React__default.createElement(React__default.Fragment, {
@@ -18631,7 +18872,7 @@ const rowMenuColumn = (options, icon, config) => ({
18631
18872
  __self: undefined,
18632
18873
  __source: {
18633
18874
  fileName: _jsxFileName$d,
18634
- lineNumber: 63,
18875
+ lineNumber: 64,
18635
18876
  columnNumber: 17
18636
18877
  }
18637
18878
  }, /*#__PURE__*/React__default.createElement(DropdownMenuItem, {
@@ -18643,7 +18884,7 @@ const rowMenuColumn = (options, icon, config) => ({
18643
18884
  __self: undefined,
18644
18885
  __source: {
18645
18886
  fileName: _jsxFileName$d,
18646
- lineNumber: 64,
18887
+ lineNumber: 65,
18647
18888
  columnNumber: 19
18648
18889
  }
18649
18890
  }, option.title), /*#__PURE__*/React__default.createElement(DropdownMenuSeparator, {
@@ -18654,7 +18895,7 @@ const rowMenuColumn = (options, icon, config) => ({
18654
18895
  __self: undefined,
18655
18896
  __source: {
18656
18897
  fileName: _jsxFileName$d,
18657
- lineNumber: 73,
18898
+ lineNumber: 74,
18658
18899
  columnNumber: 19
18659
18900
  }
18660
18901
  })))))), /*#__PURE__*/React__default.createElement(ModalDialog, {
@@ -18665,7 +18906,7 @@ const rowMenuColumn = (options, icon, config) => ({
18665
18906
  __self: undefined,
18666
18907
  __source: {
18667
18908
  fileName: _jsxFileName$d,
18668
- lineNumber: 79,
18909
+ lineNumber: 80,
18669
18910
  columnNumber: 9
18670
18911
  }
18671
18912
  }, /*#__PURE__*/React__default.createElement(ModalDialogTrigger, {
@@ -18673,7 +18914,7 @@ const rowMenuColumn = (options, icon, config) => ({
18673
18914
  __self: undefined,
18674
18915
  __source: {
18675
18916
  fileName: _jsxFileName$d,
18676
- lineNumber: 80,
18917
+ lineNumber: 81,
18677
18918
  columnNumber: 11
18678
18919
  }
18679
18920
  }, /*#__PURE__*/React__default.createElement(Box, {
@@ -18686,28 +18927,28 @@ const rowMenuColumn = (options, icon, config) => ({
18686
18927
  __self: undefined,
18687
18928
  __source: {
18688
18929
  fileName: _jsxFileName$d,
18689
- lineNumber: 81,
18930
+ lineNumber: 82,
18690
18931
  columnNumber: 13
18691
18932
  }
18692
18933
  }, /*#__PURE__*/React__default.createElement(IconButton, {
18693
18934
  __self: undefined,
18694
18935
  __source: {
18695
18936
  fileName: _jsxFileName$d,
18696
- lineNumber: 82,
18937
+ lineNumber: 83,
18697
18938
  columnNumber: 15
18698
18939
  }
18699
18940
  }, icon || /*#__PURE__*/React__default.createElement(EllipsisHorizontalOutline, {
18700
18941
  __self: undefined,
18701
18942
  __source: {
18702
18943
  fileName: _jsxFileName$d,
18703
- lineNumber: 82,
18944
+ lineNumber: 83,
18704
18945
  columnNumber: 36
18705
18946
  }
18706
18947
  })))), /*#__PURE__*/React__default.createElement(ModalDialogTitle, {
18707
18948
  __self: undefined,
18708
18949
  __source: {
18709
18950
  fileName: _jsxFileName$d,
18710
- lineNumber: 85,
18951
+ lineNumber: 86,
18711
18952
  columnNumber: 11
18712
18953
  }
18713
18954
  }, mobileTitle), /*#__PURE__*/React__default.createElement(ModalDialogContent, {
@@ -18717,7 +18958,7 @@ const rowMenuColumn = (options, icon, config) => ({
18717
18958
  __self: undefined,
18718
18959
  __source: {
18719
18960
  fileName: _jsxFileName$d,
18720
- lineNumber: 86,
18961
+ lineNumber: 87,
18721
18962
  columnNumber: 11
18722
18963
  }
18723
18964
  }, /*#__PURE__*/React__default.createElement(Box, {
@@ -18732,7 +18973,7 @@ const rowMenuColumn = (options, icon, config) => ({
18732
18973
  __self: undefined,
18733
18974
  __source: {
18734
18975
  fileName: _jsxFileName$d,
18735
- lineNumber: 87,
18976
+ lineNumber: 88,
18736
18977
  columnNumber: 13
18737
18978
  }
18738
18979
  }, options.map((option, index) => /*#__PURE__*/React__default.createElement(React__default.Fragment, {
@@ -18740,7 +18981,7 @@ const rowMenuColumn = (options, icon, config) => ({
18740
18981
  __self: undefined,
18741
18982
  __source: {
18742
18983
  fileName: _jsxFileName$d,
18743
- lineNumber: 89,
18984
+ lineNumber: 90,
18744
18985
  columnNumber: 17
18745
18986
  }
18746
18987
  }, /*#__PURE__*/React__default.createElement(Box, {
@@ -18756,7 +18997,7 @@ const rowMenuColumn = (options, icon, config) => ({
18756
18997
  __self: undefined,
18757
18998
  __source: {
18758
18999
  fileName: _jsxFileName$d,
18759
- lineNumber: 90,
19000
+ lineNumber: 91,
18760
19001
  columnNumber: 19
18761
19002
  }
18762
19003
  }, /*#__PURE__*/React__default.createElement(Paragraph, {
@@ -18765,7 +19006,7 @@ const rowMenuColumn = (options, icon, config) => ({
18765
19006
  __self: undefined,
18766
19007
  __source: {
18767
19008
  fileName: _jsxFileName$d,
18768
- lineNumber: 101,
19009
+ lineNumber: 102,
18769
19010
  columnNumber: 21
18770
19011
  }
18771
19012
  }, option.title)), /*#__PURE__*/React__default.createElement(Separator$2, {
@@ -18773,7 +19014,7 @@ const rowMenuColumn = (options, icon, config) => ({
18773
19014
  __self: undefined,
18774
19015
  __source: {
18775
19016
  fileName: _jsxFileName$d,
18776
- lineNumber: 105,
19017
+ lineNumber: 106,
18777
19018
  columnNumber: 19
18778
19019
  }
18779
19020
  })))))));
@@ -21754,6 +21995,7 @@ function imgPreview(image, crop, scale = 1, rotate = 0, ratio) {
21754
21995
  function upload({
21755
21996
  url,
21756
21997
  file,
21998
+ customBody,
21757
21999
  tokenKey,
21758
22000
  token,
21759
22001
  progress,
@@ -21764,8 +22006,18 @@ function upload({
21764
22006
  onProgress
21765
22007
  }) {
21766
22008
  const promise = new Promise((resolve, reject) => {
22009
+ var _a;
22010
+
21767
22011
  const formdata = new FormData();
21768
- formdata.append(reqKey, file);
22012
+
22013
+ if (customBody) {
22014
+ for (let i = 0; i < ((_a = Object.keys(customBody)) === null || _a === void 0 ? void 0 : _a.length); i++) {
22015
+ formdata.append(Object.keys(customBody)[i], customBody[Object.keys(customBody)[i]]);
22016
+ }
22017
+ } else {
22018
+ formdata.append(reqKey, file);
22019
+ }
22020
+
21769
22021
  request.post(url).set(tokenKey, token).send(formdata).on('progress', e => {
21770
22022
  onProgress === null || onProgress === void 0 ? void 0 : onProgress(e);
21771
22023
  progress === null || progress === void 0 ? void 0 : progress(Math.round(e.percent));
@@ -21902,6 +22154,7 @@ const Upload = ({
21902
22154
  multiple,
21903
22155
  fileList,
21904
22156
  onChange,
22157
+ onBeforeCrop,
21905
22158
  onError,
21906
22159
  onSuccess,
21907
22160
  onProgress,
@@ -21919,6 +22172,7 @@ const Upload = ({
21919
22172
  progress,
21920
22173
  loading,
21921
22174
  action,
22175
+ customBodyRequest,
21922
22176
  token,
21923
22177
  tokenKey,
21924
22178
  reqKey,
@@ -21926,7 +22180,9 @@ const Upload = ({
21926
22180
  ratio,
21927
22181
  disabled,
21928
22182
  errorMessage,
21929
- maxSizeMB
22183
+ maxSizeMB,
22184
+ imageCompression,
22185
+ hiddenToggleAspect
21930
22186
  }) => {
21931
22187
  const isFile = listType === 'file';
21932
22188
  const imgRef = useRef(null);
@@ -22100,6 +22356,7 @@ const Upload = ({
22100
22356
  upload({
22101
22357
  url: action,
22102
22358
  file: newFile,
22359
+ customBody: customBodyRequest === null || customBodyRequest === void 0 ? void 0 : customBodyRequest(newFile),
22103
22360
  token,
22104
22361
  tokenKey,
22105
22362
  reqKey,
@@ -22122,7 +22379,7 @@ const Upload = ({
22122
22379
  }
22123
22380
  }
22124
22381
 
22125
- (_onChange = onChange({
22382
+ onChange === null || onChange === void 0 ? void 0 : (_onChange = onChange({
22126
22383
  fileList: arrProgress,
22127
22384
  file: fileProgress,
22128
22385
  indexReplace: indexReplace.current,
@@ -22144,7 +22401,7 @@ const Upload = ({
22144
22401
  }
22145
22402
  }
22146
22403
 
22147
- (_onChange2 = onChange({
22404
+ onChange === null || onChange === void 0 ? void 0 : (_onChange2 = onChange({
22148
22405
  fileList: arrSuccess,
22149
22406
  file: fileSuccess,
22150
22407
  indexReplace: indexReplace.current,
@@ -22165,7 +22422,7 @@ const Upload = ({
22165
22422
  }
22166
22423
  }
22167
22424
 
22168
- (_onChange3 = onChange({
22425
+ onChange === null || onChange === void 0 ? void 0 : (_onChange3 = onChange({
22169
22426
  fileList: arrError,
22170
22427
  file: fileError,
22171
22428
  indexReplace: indexReplace.current,
@@ -22175,7 +22432,7 @@ const Upload = ({
22175
22432
  } else {
22176
22433
  var _onChange4, _onChange4$then;
22177
22434
 
22178
- (_onChange4 = onChange({
22435
+ onChange === null || onChange === void 0 ? void 0 : (_onChange4 = onChange({
22179
22436
  fileList: arrFile,
22180
22437
  file: newFile,
22181
22438
  indexReplace: indexReplace.current,
@@ -22193,15 +22450,41 @@ const Upload = ({
22193
22450
  }
22194
22451
 
22195
22452
  function handleChange(e) {
22196
- if (e.target.files && e.target.files[0] && onChange) {
22453
+ if (e.target.files && e.target.files[0]) {
22197
22454
  const files = e.target.files;
22198
22455
 
22199
22456
  if (isFile || !showCropper) {
22200
22457
  handleUpload(files);
22201
22458
  } else {
22202
- toggleModal();
22203
- setFileState(files[0]);
22204
- setPreviewImage(URL.createObjectURL(files[0]));
22459
+ if (onBeforeCrop) {
22460
+ var _files$;
22461
+
22462
+ // program to get the dimensions of an image
22463
+ const img = document.createElement('img');
22464
+ img.src = URL.createObjectURL(files[0]);
22465
+ img.size = files === null || files === void 0 ? void 0 : (_files$ = files[0]) === null || _files$ === void 0 ? void 0 : _files$.size;
22466
+
22467
+ img.onload = () => {
22468
+ var _onBeforeCrop, _onBeforeCrop$then;
22469
+
22470
+ onBeforeCrop === null || onBeforeCrop === void 0 ? void 0 : (_onBeforeCrop = onBeforeCrop(img)) === null || _onBeforeCrop === void 0 ? void 0 : (_onBeforeCrop$then = _onBeforeCrop.then(() => {
22471
+ setError(null);
22472
+ toggleModal();
22473
+ setFileState(files[0]);
22474
+ setPreviewImage(URL.createObjectURL(files[0]));
22475
+ })) === null || _onBeforeCrop$then === void 0 ? void 0 : _onBeforeCrop$then.catch(error => setError(error === null || error === void 0 ? void 0 : error.message));
22476
+ };
22477
+
22478
+ img.onerror = error => {
22479
+ var _onBeforeCrop2, _onBeforeCrop2$then;
22480
+
22481
+ onBeforeCrop === null || onBeforeCrop === void 0 ? void 0 : (_onBeforeCrop2 = onBeforeCrop(img, error)) === null || _onBeforeCrop2 === void 0 ? void 0 : (_onBeforeCrop2$then = _onBeforeCrop2.then(() => setError(null))) === null || _onBeforeCrop2$then === void 0 ? void 0 : _onBeforeCrop2$then.catch(error => setError(error === null || error === void 0 ? void 0 : error.message));
22482
+ };
22483
+ } else {
22484
+ toggleModal();
22485
+ setFileState(files[0]);
22486
+ setPreviewImage(URL.createObjectURL(files[0]));
22487
+ }
22205
22488
  }
22206
22489
  }
22207
22490
  }
@@ -22209,22 +22492,36 @@ const Upload = ({
22209
22492
  function handleCrop() {
22210
22493
  if (completedCrop !== null && completedCrop !== void 0 && completedCrop.width && completedCrop !== null && completedCrop !== void 0 && completedCrop.height && imgRef.current) {
22211
22494
  imgPreview(imgRef.current, completedCrop, 1, 0, ratio).then(blob => {
22212
- imageCompression(blob, {
22213
- maxSizeMB,
22214
- maxWidthOrHeight: 1920,
22215
- maxIteration: 2,
22216
- useWebWorker: true,
22217
- alwaysKeepResolution: true
22218
- }).then(compressedFile => {
22495
+ const sizeMB = (blob === null || blob === void 0 ? void 0 : blob.size) / 1024 / 1024;
22496
+
22497
+ if (sizeMB < maxSizeMB || sizeMB < 1 || !imageCompression) {
22219
22498
  var _fileState$name;
22220
22499
 
22221
- const file = new File([compressedFile], (fileState === null || fileState === void 0 ? void 0 : (_fileState$name = fileState.name) === null || _fileState$name === void 0 ? void 0 : _fileState$name.replace(/\.[^/.]+$/, '')) + '.png', {
22222
- type: compressedFile === null || compressedFile === void 0 ? void 0 : compressedFile.type
22500
+ const file = new File([blob], (fileState === null || fileState === void 0 ? void 0 : (_fileState$name = fileState.name) === null || _fileState$name === void 0 ? void 0 : _fileState$name.replace(/\.[^/.]+$/, '')) + '.png', {
22501
+ type: blob === null || blob === void 0 ? void 0 : blob.type
22223
22502
  });
22224
22503
  handleUpload([file]);
22225
22504
  setCrop(null);
22226
22505
  setCompletedCrop(null);
22227
- }).catch(error => console.error(error === null || error === void 0 ? void 0 : error.message));
22506
+ } else {
22507
+ imageCompressionComponent(blob, {
22508
+ maxSizeMB,
22509
+ maxWidthOrHeight: 1920,
22510
+ maxIteration: 10,
22511
+ useWebWorker: true,
22512
+ alwaysKeepResolution: true
22513
+ }).then(compressedFile => {
22514
+ var _fileState$name2;
22515
+
22516
+ const file = new File([compressedFile], (fileState === null || fileState === void 0 ? void 0 : (_fileState$name2 = fileState.name) === null || _fileState$name2 === void 0 ? void 0 : _fileState$name2.replace(/\.[^/.]+$/, '')) + '.png', {
22517
+ type: compressedFile === null || compressedFile === void 0 ? void 0 : compressedFile.type
22518
+ });
22519
+ handleUpload([file]);
22520
+ setCrop(null);
22521
+ setCompletedCrop(null);
22522
+ }).catch(error => console.error(error === null || error === void 0 ? void 0 : error.message));
22523
+ }
22524
+
22228
22525
  toggleModal();
22229
22526
  }).catch(error => console.error(error === null || error === void 0 ? void 0 : error.message));
22230
22527
  } else {
@@ -22254,15 +22551,13 @@ const Upload = ({
22254
22551
  }
22255
22552
 
22256
22553
  function handleClose(file) {
22257
- if (onChange) {
22258
- const index = fileList.indexOf(file);
22259
- const newFileList = fileList.slice();
22260
- newFileList.splice(index, 1);
22261
- onChange({
22262
- fileList: newFileList,
22263
- file
22264
- });
22265
- }
22554
+ const index = fileList.indexOf(file);
22555
+ const newFileList = fileList.slice();
22556
+ newFileList.splice(index, 1);
22557
+ onChange === null || onChange === void 0 ? void 0 : onChange({
22558
+ fileList: newFileList,
22559
+ file
22560
+ });
22266
22561
  }
22267
22562
 
22268
22563
  function handleRemove(file) {
@@ -22355,7 +22650,7 @@ const Upload = ({
22355
22650
  __self: this,
22356
22651
  __source: {
22357
22652
  fileName: _jsxFileName$9,
22358
- lineNumber: 572,
22653
+ lineNumber: 607,
22359
22654
  columnNumber: 7
22360
22655
  }
22361
22656
  }, /*#__PURE__*/React__default.createElement(ButtonText, {
@@ -22365,7 +22660,7 @@ const Upload = ({
22365
22660
  __self: this,
22366
22661
  __source: {
22367
22662
  fileName: _jsxFileName$9,
22368
- lineNumber: 573,
22663
+ lineNumber: 608,
22369
22664
  columnNumber: 9
22370
22665
  }
22371
22666
  }, replaceLabel && replaceLabel.length > 0 ? replaceLabel : `Ubah Berkas`));
@@ -22381,7 +22676,7 @@ const Upload = ({
22381
22676
  __self: undefined,
22382
22677
  __source: {
22383
22678
  fileName: _jsxFileName$9,
22384
- lineNumber: 583,
22679
+ lineNumber: 618,
22385
22680
  columnNumber: 16
22386
22681
  }
22387
22682
  });
@@ -22393,7 +22688,7 @@ const Upload = ({
22393
22688
  __self: undefined,
22394
22689
  __source: {
22395
22690
  fileName: _jsxFileName$9,
22396
- lineNumber: 586,
22691
+ lineNumber: 621,
22397
22692
  columnNumber: 9
22398
22693
  }
22399
22694
  }, /*#__PURE__*/React__default.createElement(Box, {
@@ -22403,7 +22698,7 @@ const Upload = ({
22403
22698
  __self: undefined,
22404
22699
  __source: {
22405
22700
  fileName: _jsxFileName$9,
22406
- lineNumber: 587,
22701
+ lineNumber: 622,
22407
22702
  columnNumber: 11
22408
22703
  }
22409
22704
  }, !disabled && /*#__PURE__*/React__default.createElement(IconStateFull, {
@@ -22412,7 +22707,7 @@ const Upload = ({
22412
22707
  __self: undefined,
22413
22708
  __source: {
22414
22709
  fileName: _jsxFileName$9,
22415
- lineNumber: 588,
22710
+ lineNumber: 623,
22416
22711
  columnNumber: 27
22417
22712
  }
22418
22713
  }), /*#__PURE__*/React__default.createElement(Box, {
@@ -22425,7 +22720,7 @@ const Upload = ({
22425
22720
  __self: undefined,
22426
22721
  __source: {
22427
22722
  fileName: _jsxFileName$9,
22428
- lineNumber: 589,
22723
+ lineNumber: 624,
22429
22724
  columnNumber: 13
22430
22725
  }
22431
22726
  }, /*#__PURE__*/React__default.createElement(IconStateFull, {
@@ -22434,7 +22729,7 @@ const Upload = ({
22434
22729
  __self: undefined,
22435
22730
  __source: {
22436
22731
  fileName: _jsxFileName$9,
22437
- lineNumber: 597,
22732
+ lineNumber: 632,
22438
22733
  columnNumber: 15
22439
22734
  }
22440
22735
  })), /*#__PURE__*/React__default.createElement(Image, {
@@ -22444,7 +22739,7 @@ const Upload = ({
22444
22739
  __self: undefined,
22445
22740
  __source: {
22446
22741
  fileName: _jsxFileName$9,
22447
- lineNumber: 599,
22742
+ lineNumber: 634,
22448
22743
  columnNumber: 13
22449
22744
  }
22450
22745
  })), !disabled && renderButtonReplace(index));
@@ -22463,7 +22758,7 @@ const Upload = ({
22463
22758
  __self: undefined,
22464
22759
  __source: {
22465
22760
  fileName: _jsxFileName$9,
22466
- lineNumber: 610,
22761
+ lineNumber: 645,
22467
22762
  columnNumber: 16
22468
22763
  }
22469
22764
  });
@@ -22474,7 +22769,7 @@ const Upload = ({
22474
22769
  __self: undefined,
22475
22770
  __source: {
22476
22771
  fileName: _jsxFileName$9,
22477
- lineNumber: 613,
22772
+ lineNumber: 648,
22478
22773
  columnNumber: 9
22479
22774
  }
22480
22775
  }, /*#__PURE__*/React__default.createElement(Box, {
@@ -22484,7 +22779,7 @@ const Upload = ({
22484
22779
  __self: undefined,
22485
22780
  __source: {
22486
22781
  fileName: _jsxFileName$9,
22487
- lineNumber: 614,
22782
+ lineNumber: 649,
22488
22783
  columnNumber: 11
22489
22784
  }
22490
22785
  }, !disabled && /*#__PURE__*/React__default.createElement(IconStateFull, {
@@ -22493,7 +22788,7 @@ const Upload = ({
22493
22788
  __self: undefined,
22494
22789
  __source: {
22495
22790
  fileName: _jsxFileName$9,
22496
- lineNumber: 615,
22791
+ lineNumber: 650,
22497
22792
  columnNumber: 27
22498
22793
  }
22499
22794
  }), /*#__PURE__*/React__default.createElement(Box, {
@@ -22506,7 +22801,7 @@ const Upload = ({
22506
22801
  __self: undefined,
22507
22802
  __source: {
22508
22803
  fileName: _jsxFileName$9,
22509
- lineNumber: 616,
22804
+ lineNumber: 651,
22510
22805
  columnNumber: 13
22511
22806
  }
22512
22807
  }, /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -22516,14 +22811,14 @@ const Upload = ({
22516
22811
  __self: undefined,
22517
22812
  __source: {
22518
22813
  fileName: _jsxFileName$9,
22519
- lineNumber: 624,
22814
+ lineNumber: 659,
22520
22815
  columnNumber: 15
22521
22816
  }
22522
22817
  }, /*#__PURE__*/React__default.createElement(FileExtension, {
22523
22818
  __self: undefined,
22524
22819
  __source: {
22525
22820
  fileName: _jsxFileName$9,
22526
- lineNumber: 625,
22821
+ lineNumber: 660,
22527
22822
  columnNumber: 17
22528
22823
  }
22529
22824
  }, ".", item === null || item === void 0 ? void 0 : (_item$name = item.name) === null || _item$name === void 0 ? void 0 : _item$name.split('.').pop()), /*#__PURE__*/React__default.createElement(Tooltip$1, {
@@ -22531,7 +22826,7 @@ const Upload = ({
22531
22826
  __self: undefined,
22532
22827
  __source: {
22533
22828
  fileName: _jsxFileName$9,
22534
- lineNumber: 626,
22829
+ lineNumber: 661,
22535
22830
  columnNumber: 17
22536
22831
  }
22537
22832
  }, /*#__PURE__*/React__default.createElement(Text, {
@@ -22546,7 +22841,7 @@ const Upload = ({
22546
22841
  __self: undefined,
22547
22842
  __source: {
22548
22843
  fileName: _jsxFileName$9,
22549
- lineNumber: 627,
22844
+ lineNumber: 662,
22550
22845
  columnNumber: 19
22551
22846
  }
22552
22847
  }, item.name)))), /*#__PURE__*/React__default.createElement(Box, {
@@ -22559,7 +22854,7 @@ const Upload = ({
22559
22854
  __self: undefined,
22560
22855
  __source: {
22561
22856
  fileName: _jsxFileName$9,
22562
- lineNumber: 642,
22857
+ lineNumber: 677,
22563
22858
  columnNumber: 13
22564
22859
  }
22565
22860
  }, /*#__PURE__*/React__default.createElement(IconStateFull, {
@@ -22568,7 +22863,7 @@ const Upload = ({
22568
22863
  __self: undefined,
22569
22864
  __source: {
22570
22865
  fileName: _jsxFileName$9,
22571
- lineNumber: 650,
22866
+ lineNumber: 685,
22572
22867
  columnNumber: 15
22573
22868
  }
22574
22869
  })), /*#__PURE__*/React__default.createElement(Blank, {
@@ -22576,7 +22871,7 @@ const Upload = ({
22576
22871
  __self: undefined,
22577
22872
  __source: {
22578
22873
  fileName: _jsxFileName$9,
22579
- lineNumber: 652,
22874
+ lineNumber: 687,
22580
22875
  columnNumber: 13
22581
22876
  }
22582
22877
  })), !disabled && renderButtonReplace(index));
@@ -22592,7 +22887,7 @@ const Upload = ({
22592
22887
  __self: this,
22593
22888
  __source: {
22594
22889
  fileName: _jsxFileName$9,
22595
- lineNumber: 663,
22890
+ lineNumber: 698,
22596
22891
  columnNumber: 7
22597
22892
  }
22598
22893
  }, /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -22606,7 +22901,7 @@ const Upload = ({
22606
22901
  __self: this,
22607
22902
  __source: {
22608
22903
  fileName: _jsxFileName$9,
22609
- lineNumber: 664,
22904
+ lineNumber: 699,
22610
22905
  columnNumber: 9
22611
22906
  }
22612
22907
  }, /*#__PURE__*/React__default.createElement(LoadingBar, {
@@ -22632,7 +22927,7 @@ const Upload = ({
22632
22927
  __self: this,
22633
22928
  __source: {
22634
22929
  fileName: _jsxFileName$9,
22635
- lineNumber: 665,
22930
+ lineNumber: 700,
22636
22931
  columnNumber: 11
22637
22932
  }
22638
22933
  }), /*#__PURE__*/React__default.createElement(Text, {
@@ -22640,14 +22935,14 @@ const Upload = ({
22640
22935
  __self: this,
22641
22936
  __source: {
22642
22937
  fileName: _jsxFileName$9,
22643
- lineNumber: 678,
22938
+ lineNumber: 713,
22644
22939
  columnNumber: 11
22645
22940
  }
22646
22941
  }, `${progress <= 100 ? progress : 100}%`), /*#__PURE__*/React__default.createElement(Text, {
22647
22942
  __self: this,
22648
22943
  __source: {
22649
22944
  fileName: _jsxFileName$9,
22650
- lineNumber: 679,
22945
+ lineNumber: 714,
22651
22946
  columnNumber: 11
22652
22947
  }
22653
22948
  }, "Berkas sedang diunggah")));
@@ -22660,7 +22955,7 @@ const Upload = ({
22660
22955
  __self: this,
22661
22956
  __source: {
22662
22957
  fileName: _jsxFileName$9,
22663
- lineNumber: 687,
22958
+ lineNumber: 722,
22664
22959
  columnNumber: 7
22665
22960
  }
22666
22961
  }, /*#__PURE__*/React__default.createElement(ContainerUpload, {
@@ -22676,7 +22971,7 @@ const Upload = ({
22676
22971
  __self: this,
22677
22972
  __source: {
22678
22973
  fileName: _jsxFileName$9,
22679
- lineNumber: 688,
22974
+ lineNumber: 723,
22680
22975
  columnNumber: 9
22681
22976
  }
22682
22977
  }, /*#__PURE__*/React__default.createElement(Input$2, {
@@ -22688,21 +22983,21 @@ const Upload = ({
22688
22983
  __self: this,
22689
22984
  __source: {
22690
22985
  fileName: _jsxFileName$9,
22691
- lineNumber: 699,
22986
+ lineNumber: 734,
22692
22987
  columnNumber: 11
22693
22988
  }
22694
22989
  }), /*#__PURE__*/React__default.createElement(Children, {
22695
22990
  __self: this,
22696
22991
  __source: {
22697
22992
  fileName: _jsxFileName$9,
22698
- lineNumber: 700,
22993
+ lineNumber: 735,
22699
22994
  columnNumber: 11
22700
22995
  }
22701
22996
  }, children !== null && children !== void 0 ? children : /*#__PURE__*/React__default.createElement(React__default.Fragment, {
22702
22997
  __self: this,
22703
22998
  __source: {
22704
22999
  fileName: _jsxFileName$9,
22705
- lineNumber: 702,
23000
+ lineNumber: 737,
22706
23001
  columnNumber: 15
22707
23002
  }
22708
23003
  }, /*#__PURE__*/React__default.createElement(IconCard, {
@@ -22711,7 +23006,7 @@ const Upload = ({
22711
23006
  __self: this,
22712
23007
  __source: {
22713
23008
  fileName: _jsxFileName$9,
22714
- lineNumber: 703,
23009
+ lineNumber: 738,
22715
23010
  columnNumber: 17
22716
23011
  }
22717
23012
  }, /*#__PURE__*/React__default.createElement(UploadOutline, {
@@ -22719,7 +23014,7 @@ const Upload = ({
22719
23014
  __self: this,
22720
23015
  __source: {
22721
23016
  fileName: _jsxFileName$9,
22722
- lineNumber: 704,
23017
+ lineNumber: 739,
22723
23018
  columnNumber: 19
22724
23019
  }
22725
23020
  })), /*#__PURE__*/React__default.createElement(Text, {
@@ -22729,14 +23024,14 @@ const Upload = ({
22729
23024
  __self: this,
22730
23025
  __source: {
22731
23026
  fileName: _jsxFileName$9,
22732
- lineNumber: 706,
23027
+ lineNumber: 741,
22733
23028
  columnNumber: 17
22734
23029
  }
22735
23030
  }, placeholder !== null && placeholder !== void 0 ? placeholder : `Pilih atau letakkan berkas di sini`)))), error && /*#__PURE__*/React__default.createElement(ErrorMessage, {
22736
23031
  __self: this,
22737
23032
  __source: {
22738
23033
  fileName: _jsxFileName$9,
22739
- lineNumber: 713,
23034
+ lineNumber: 748,
22740
23035
  columnNumber: 19
22741
23036
  }
22742
23037
  }, error));
@@ -22747,7 +23042,7 @@ const Upload = ({
22747
23042
  __self: this,
22748
23043
  __source: {
22749
23044
  fileName: _jsxFileName$9,
22750
- lineNumber: 720,
23045
+ lineNumber: 755,
22751
23046
  columnNumber: 7
22752
23047
  }
22753
23048
  }, /*#__PURE__*/React__default.createElement(ModalDialogTrigger, {
@@ -22755,7 +23050,7 @@ const Upload = ({
22755
23050
  __self: this,
22756
23051
  __source: {
22757
23052
  fileName: _jsxFileName$9,
22758
- lineNumber: 721,
23053
+ lineNumber: 756,
22759
23054
  columnNumber: 9
22760
23055
  }
22761
23056
  }, /*#__PURE__*/React__default.createElement("div", {
@@ -22763,7 +23058,7 @@ const Upload = ({
22763
23058
  __self: this,
22764
23059
  __source: {
22765
23060
  fileName: _jsxFileName$9,
22766
- lineNumber: 722,
23061
+ lineNumber: 757,
22767
23062
  columnNumber: 11
22768
23063
  }
22769
23064
  })), /*#__PURE__*/React__default.createElement(ModalDialogTitle, {
@@ -22776,7 +23071,7 @@ const Upload = ({
22776
23071
  __self: this,
22777
23072
  __source: {
22778
23073
  fileName: _jsxFileName$9,
22779
- lineNumber: 724,
23074
+ lineNumber: 759,
22780
23075
  columnNumber: 9
22781
23076
  }
22782
23077
  }, cropperTitle), /*#__PURE__*/React__default.createElement(ModalDialogContent, {
@@ -22788,7 +23083,7 @@ const Upload = ({
22788
23083
  __self: this,
22789
23084
  __source: {
22790
23085
  fileName: _jsxFileName$9,
22791
- lineNumber: 727,
23086
+ lineNumber: 762,
22792
23087
  columnNumber: 9
22793
23088
  }
22794
23089
  }, /*#__PURE__*/React__default.createElement(ReactCrop, {
@@ -22799,7 +23094,7 @@ const Upload = ({
22799
23094
  __self: this,
22800
23095
  __source: {
22801
23096
  fileName: _jsxFileName$9,
22802
- lineNumber: 728,
23097
+ lineNumber: 763,
22803
23098
  columnNumber: 11
22804
23099
  }
22805
23100
  }, /*#__PURE__*/React__default.createElement(Image, {
@@ -22813,14 +23108,14 @@ const Upload = ({
22813
23108
  __self: this,
22814
23109
  __source: {
22815
23110
  fileName: _jsxFileName$9,
22816
- lineNumber: 729,
23111
+ lineNumber: 764,
22817
23112
  columnNumber: 13
22818
23113
  }
22819
23114
  }))), /*#__PURE__*/React__default.createElement(ModalDialogFooter, {
22820
23115
  __self: this,
22821
23116
  __source: {
22822
23117
  fileName: _jsxFileName$9,
22823
- lineNumber: 732,
23118
+ lineNumber: 767,
22824
23119
  columnNumber: 9
22825
23120
  }
22826
23121
  }, /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -22832,16 +23127,23 @@ const Upload = ({
22832
23127
  __self: this,
22833
23128
  __source: {
22834
23129
  fileName: _jsxFileName$9,
22835
- lineNumber: 733,
23130
+ lineNumber: 768,
22836
23131
  columnNumber: 11
22837
23132
  }
22838
- }, /*#__PURE__*/React__default.createElement(Tooltip$1, {
23133
+ }, hiddenToggleAspect ? /*#__PURE__*/React__default.createElement(Box, {
23134
+ __self: this,
23135
+ __source: {
23136
+ fileName: _jsxFileName$9,
23137
+ lineNumber: 770,
23138
+ columnNumber: 15
23139
+ }
23140
+ }) : /*#__PURE__*/React__default.createElement(Tooltip$1, {
22839
23141
  label: "Aspect Ratio",
22840
23142
  __self: this,
22841
23143
  __source: {
22842
23144
  fileName: _jsxFileName$9,
22843
- lineNumber: 734,
22844
- columnNumber: 13
23145
+ lineNumber: 772,
23146
+ columnNumber: 15
22845
23147
  }
22846
23148
  }, /*#__PURE__*/React__default.createElement(ImageOutline, {
22847
23149
  style: {
@@ -22852,15 +23154,15 @@ const Upload = ({
22852
23154
  __self: this,
22853
23155
  __source: {
22854
23156
  fileName: _jsxFileName$9,
22855
- lineNumber: 735,
22856
- columnNumber: 15
23157
+ lineNumber: 773,
23158
+ columnNumber: 17
22857
23159
  }
22858
23160
  })), /*#__PURE__*/React__default.createElement(Flex$1, {
22859
23161
  gap: 4,
22860
23162
  __self: this,
22861
23163
  __source: {
22862
23164
  fileName: _jsxFileName$9,
22863
- lineNumber: 741,
23165
+ lineNumber: 780,
22864
23166
  columnNumber: 13
22865
23167
  }
22866
23168
  }, /*#__PURE__*/React__default.createElement(Button$3, {
@@ -22869,7 +23171,7 @@ const Upload = ({
22869
23171
  __self: this,
22870
23172
  __source: {
22871
23173
  fileName: _jsxFileName$9,
22872
- lineNumber: 742,
23174
+ lineNumber: 781,
22873
23175
  columnNumber: 15
22874
23176
  }
22875
23177
  }, "Batal"), /*#__PURE__*/React__default.createElement(Button$3, {
@@ -22877,7 +23179,7 @@ const Upload = ({
22877
23179
  __self: this,
22878
23180
  __source: {
22879
23181
  fileName: _jsxFileName$9,
22880
- lineNumber: 745,
23182
+ lineNumber: 784,
22881
23183
  columnNumber: 15
22882
23184
  }
22883
23185
  }, "Simpan")))));
@@ -22893,7 +23195,7 @@ const Upload = ({
22893
23195
  __self: undefined,
22894
23196
  __source: {
22895
23197
  fileName: _jsxFileName$9,
22896
- lineNumber: 754,
23198
+ lineNumber: 793,
22897
23199
  columnNumber: 5
22898
23200
  }
22899
23201
  }, !isFile && renderPicture(), isFile && renderFile(), progress || isLoading ? /*#__PURE__*/React__default.createElement(UploadProgress, {
@@ -22902,7 +23204,7 @@ const Upload = ({
22902
23204
  __self: undefined,
22903
23205
  __source: {
22904
23206
  fileName: _jsxFileName$9,
22905
- lineNumber: 757,
23207
+ lineNumber: 796,
22906
23208
  columnNumber: 32
22907
23209
  }
22908
23210
  }) : renderUpload(), showCropper && renderCropper());
@@ -22920,7 +23222,8 @@ Upload.defaultProps = {
22920
23222
  resKey: 'url',
22921
23223
  ratio: 16 / 9,
22922
23224
  disabled: false,
22923
- maxSizeMB: 1
23225
+ maxSizeMB: 1,
23226
+ imageCompression: true
22924
23227
  };
22925
23228
  Upload.propTypes = {
22926
23229
  /**
@@ -23031,6 +23334,11 @@ Upload.propTypes = {
23031
23334
  */
23032
23335
  showCropper: PropTypes.bool,
23033
23336
 
23337
+ /**
23338
+ Hidden toggle aspect ratio image cropper.
23339
+ */
23340
+ hiddenToggleAspect: PropTypes.bool,
23341
+
23034
23342
  /**
23035
23343
  The aspect ratio of the crop, e.g. `1` for a square or `16 / 9` for landscape. Omit/pass undefined for a free-form crop.
23036
23344
  */
@@ -23056,6 +23364,11 @@ Upload.propTypes = {
23056
23364
  */
23057
23365
  action: PropTypes.string,
23058
23366
 
23367
+ /**
23368
+ Custom body request to upload action.
23369
+ */
23370
+ customBodyRequest: PropTypes.func,
23371
+
23059
23372
  /**
23060
23373
  Contains an authentication token for upload API.
23061
23374
  */
@@ -23074,7 +23387,17 @@ Upload.propTypes = {
23074
23387
  /**
23075
23388
  Referencing the key to get the file from the API response.
23076
23389
  */
23077
- resKey: PropTypes.string
23390
+ resKey: PropTypes.string,
23391
+
23392
+ /**
23393
+ To compression image if file size > 1MB.
23394
+ */
23395
+ imageCompression: PropTypes.bool,
23396
+
23397
+ /**
23398
+ Callback to handle before crop image.
23399
+ */
23400
+ onBeforeCrop: PropTypes.func
23078
23401
  };
23079
23402
  Upload.displayName = 'Upload';
23080
23403
 
@@ -26631,6 +26954,8 @@ const Navigation = props => {
26631
26954
  align: "center",
26632
26955
  key: `step-${i}`,
26633
26956
  onClick: () => {
26957
+ if (props.onNavClicked) props.onNavClicked(i);
26958
+
26634
26959
  if (!forbidClickNav && isComplete && !isHide) {
26635
26960
  props.goToStep(i);
26636
26961
  }
@@ -26648,7 +26973,7 @@ const Navigation = props => {
26648
26973
  __self: undefined,
26649
26974
  __source: {
26650
26975
  fileName: _jsxFileName$4,
26651
- lineNumber: 118,
26976
+ lineNumber: 119,
26652
26977
  columnNumber: 15
26653
26978
  }
26654
26979
  }), isComplete && /*#__PURE__*/React__default.createElement(StyledCheckFiled, {
@@ -26660,7 +26985,7 @@ const Navigation = props => {
26660
26985
  __self: undefined,
26661
26986
  __source: {
26662
26987
  fileName: _jsxFileName$4,
26663
- lineNumber: 119,
26988
+ lineNumber: 120,
26664
26989
  columnNumber: 30
26665
26990
  }
26666
26991
  }), typeof data[i - 1].title === 'string' ? data[i - 1].title : (_data$title = (_data = data[i - 1]).title) === null || _data$title === void 0 ? void 0 : _data$title.call(_data), ((_data2 = data[i - 1]) === null || _data2 === void 0 ? void 0 : _data2.withTolltip) && /*#__PURE__*/React__default.createElement(Tooltip$1, {
@@ -26669,7 +26994,7 @@ const Navigation = props => {
26669
26994
  __self: undefined,
26670
26995
  __source: {
26671
26996
  fileName: _jsxFileName$4,
26672
- lineNumber: 122,
26997
+ lineNumber: 123,
26673
26998
  columnNumber: 17
26674
26999
  }
26675
27000
  }, /*#__PURE__*/React__default.createElement(StyledCircleInfoOutline, {
@@ -26681,7 +27006,7 @@ const Navigation = props => {
26681
27006
  __self: undefined,
26682
27007
  __source: {
26683
27008
  fileName: _jsxFileName$4,
26684
- lineNumber: 123,
27009
+ lineNumber: 124,
26685
27010
  columnNumber: 19
26686
27011
  }
26687
27012
  })), ((_data4 = data[i - 1]) === null || _data4 === void 0 ? void 0 : _data4.comingSoon) && /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -26692,7 +27017,7 @@ const Navigation = props => {
26692
27017
  __self: undefined,
26693
27018
  __source: {
26694
27019
  fileName: _jsxFileName$4,
26695
- lineNumber: 127,
27020
+ lineNumber: 128,
26696
27021
  columnNumber: 17
26697
27022
  }
26698
27023
  }, /*#__PURE__*/React__default.createElement(Tag, {
@@ -26701,7 +27026,7 @@ const Navigation = props => {
26701
27026
  __self: undefined,
26702
27027
  __source: {
26703
27028
  fileName: _jsxFileName$4,
26704
- lineNumber: 128,
27029
+ lineNumber: 129,
26705
27030
  columnNumber: 19
26706
27031
  }
26707
27032
  }, "Coming Soon")))) : stepItems.push( /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -26718,7 +27043,7 @@ const Navigation = props => {
26718
27043
  __self: undefined,
26719
27044
  __source: {
26720
27045
  fileName: _jsxFileName$4,
26721
- lineNumber: 136,
27046
+ lineNumber: 137,
26722
27047
  columnNumber: 13
26723
27048
  }
26724
27049
  }, isComplete && /*#__PURE__*/React__default.createElement(StyledCheckFiled, {
@@ -26727,7 +27052,7 @@ const Navigation = props => {
26727
27052
  __self: undefined,
26728
27053
  __source: {
26729
27054
  fileName: _jsxFileName$4,
26730
- lineNumber: 148,
27055
+ lineNumber: 149,
26731
27056
  columnNumber: 30
26732
27057
  }
26733
27058
  }), !isComplete && /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -26743,7 +27068,7 @@ const Navigation = props => {
26743
27068
  __self: undefined,
26744
27069
  __source: {
26745
27070
  fileName: _jsxFileName$4,
26746
- lineNumber: 150,
27071
+ lineNumber: 151,
26747
27072
  columnNumber: 17
26748
27073
  }
26749
27074
  }), /*#__PURE__*/React__default.createElement(StyledDiv, {
@@ -26753,7 +27078,7 @@ const Navigation = props => {
26753
27078
  __self: undefined,
26754
27079
  __source: {
26755
27080
  fileName: _jsxFileName$4,
26756
- lineNumber: 162,
27081
+ lineNumber: 163,
26757
27082
  columnNumber: 15
26758
27083
  }
26759
27084
  }, isActive ? typeof data[i - 1].title === 'string' ? data[i - 1].title : (_data$title2 = (_data7 = data[i - 1]).title) === null || _data$title2 === void 0 ? void 0 : _data$title2.call(_data7) : ''), isActive && ((_data8 = data[i - 1]) === null || _data8 === void 0 ? void 0 : _data8.withTolltip) && /*#__PURE__*/React__default.createElement(Tooltip$1, {
@@ -26763,7 +27088,7 @@ const Navigation = props => {
26763
27088
  __self: undefined,
26764
27089
  __source: {
26765
27090
  fileName: _jsxFileName$4,
26766
- lineNumber: 166,
27091
+ lineNumber: 167,
26767
27092
  columnNumber: 17
26768
27093
  }
26769
27094
  }, /*#__PURE__*/React__default.createElement(StyledCircleInfoOutline, {
@@ -26772,7 +27097,7 @@ const Navigation = props => {
26772
27097
  __self: undefined,
26773
27098
  __source: {
26774
27099
  fileName: _jsxFileName$4,
26775
- lineNumber: 167,
27100
+ lineNumber: 168,
26776
27101
  columnNumber: 19
26777
27102
  }
26778
27103
  })), isActive && ((_data10 = data[i - 1]) === null || _data10 === void 0 ? void 0 : _data10.comingSoon) && /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -26784,7 +27109,7 @@ const Navigation = props => {
26784
27109
  __self: undefined,
26785
27110
  __source: {
26786
27111
  fileName: _jsxFileName$4,
26787
- lineNumber: 171,
27112
+ lineNumber: 172,
26788
27113
  columnNumber: 17
26789
27114
  }
26790
27115
  }, /*#__PURE__*/React__default.createElement(Tag, {
@@ -26793,7 +27118,7 @@ const Navigation = props => {
26793
27118
  __self: undefined,
26794
27119
  __source: {
26795
27120
  fileName: _jsxFileName$4,
26796
- lineNumber: 172,
27121
+ lineNumber: 173,
26797
27122
  columnNumber: 19
26798
27123
  }
26799
27124
  }, "Coming Soon"))));
@@ -26815,7 +27140,7 @@ const Navigation = props => {
26815
27140
  __self: undefined,
26816
27141
  __source: {
26817
27142
  fileName: _jsxFileName$4,
26818
- lineNumber: 182,
27143
+ lineNumber: 183,
26819
27144
  columnNumber: 5
26820
27145
  }
26821
27146
  }, isMobile ? /*#__PURE__*/React__default.createElement(StyledDiv, {
@@ -26827,7 +27152,7 @@ const Navigation = props => {
26827
27152
  __self: undefined,
26828
27153
  __source: {
26829
27154
  fileName: _jsxFileName$4,
26830
- lineNumber: 198,
27155
+ lineNumber: 199,
26831
27156
  columnNumber: 9
26832
27157
  }
26833
27158
  }, /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -26840,7 +27165,7 @@ const Navigation = props => {
26840
27165
  __self: undefined,
26841
27166
  __source: {
26842
27167
  fileName: _jsxFileName$4,
26843
- lineNumber: 199,
27168
+ lineNumber: 200,
26844
27169
  columnNumber: 11
26845
27170
  }
26846
27171
  }, stepItems)) : stepItems);
@@ -26941,7 +27266,7 @@ const Default = props => {
26941
27266
  __self: undefined,
26942
27267
  __source: {
26943
27268
  fileName: _jsxFileName$4,
26944
- lineNumber: 296,
27269
+ lineNumber: 297,
26945
27270
  columnNumber: 5
26946
27271
  }
26947
27272
  }, /*#__PURE__*/React__default.createElement(StepWizardContext.Provider, {
@@ -26963,7 +27288,7 @@ const Default = props => {
26963
27288
  __self: undefined,
26964
27289
  __source: {
26965
27290
  fileName: _jsxFileName$4,
26966
- lineNumber: 297,
27291
+ lineNumber: 298,
26967
27292
  columnNumber: 7
26968
27293
  }
26969
27294
  }, /*#__PURE__*/React__default.createElement(Stepper, _extends({}, props, {
@@ -26971,11 +27296,12 @@ const Default = props => {
26971
27296
  className: !props.isMobile && 'stepperInstance',
26972
27297
  instance: setInstance,
26973
27298
  nav: /*#__PURE__*/React__default.createElement(Navigation, {
27299
+ onNavClicked: props.onNavClicked,
26974
27300
  isComplete: state.isComplete,
26975
27301
  __self: undefined,
26976
27302
  __source: {
26977
27303
  fileName: _jsxFileName$4,
26978
- lineNumber: 319,
27304
+ lineNumber: 320,
26979
27305
  columnNumber: 16
26980
27306
  }
26981
27307
  }),
@@ -26985,7 +27311,7 @@ const Default = props => {
26985
27311
  __self: undefined,
26986
27312
  __source: {
26987
27313
  fileName: _jsxFileName$4,
26988
- lineNumber: 314,
27314
+ lineNumber: 315,
26989
27315
  columnNumber: 9
26990
27316
  }
26991
27317
  }), props.children)));
@@ -27489,7 +27815,8 @@ function EditableTableMobile(props) {
27489
27815
  const {
27490
27816
  instance,
27491
27817
  emptyDataMessage,
27492
- showCheckbox
27818
+ showCheckbox,
27819
+ customRows
27493
27820
  } = props;
27494
27821
  const {
27495
27822
  getTableProps,
@@ -27500,6 +27827,156 @@ function EditableTableMobile(props) {
27500
27827
  state,
27501
27828
  toggleAllRowsExpanded
27502
27829
  } = instance;
27830
+
27831
+ const getCustomRows = (row, renderRow) => {
27832
+ var _a, _b;
27833
+
27834
+ let customStyle = {};
27835
+ let CustomRow;
27836
+ let showInMobile = false;
27837
+
27838
+ if (customRows && customRows(row).length) {
27839
+ for (let i = 0; i < customRows(row).length; i++) {
27840
+ if ((_a = customRows(row)[i]) === null || _a === void 0 ? void 0 : _a.showInMobile) {
27841
+ showInMobile = true;
27842
+ }
27843
+
27844
+ if (customRows(row)[i].predicate) {
27845
+ customStyle = (_b = customRows(row)[i]) === null || _b === void 0 ? void 0 : _b.css;
27846
+
27847
+ CustomRow = () => {
27848
+ var _a;
27849
+
27850
+ return (_a = customRows(row)[i]) === null || _a === void 0 ? void 0 : _a.Row(row.values, renderRow);
27851
+ };
27852
+ }
27853
+ }
27854
+ }
27855
+
27856
+ return {
27857
+ CustomRow,
27858
+ customStyle,
27859
+ showInMobile
27860
+ };
27861
+ };
27862
+
27863
+ const renderTableRow = (row, index, customStyle) => {
27864
+ return jsxs(Fragment, {
27865
+ children: [/*#__PURE__*/createElement$2(TableRow$2, Object.assign({
27866
+ css: customStyle
27867
+ }, row.getRowProps(), {
27868
+ key: `row_mobile_${index}`
27869
+ }), row.cells.map((cell, index) => {
27870
+ var _a, _b;
27871
+
27872
+ const isMobileHeader = (_a = cell === null || cell === void 0 ? void 0 : cell.column) === null || _a === void 0 ? void 0 : _a.isMobileHeader;
27873
+ const isSelector = ((_b = cell === null || cell === void 0 ? void 0 : cell.column) === null || _b === void 0 ? void 0 : _b.id) === 'selection';
27874
+ return (isMobileHeader || isSelector) && /*#__PURE__*/createElement$2(TableCell$2, Object.assign({}, cell.getCellProps({
27875
+ style: {
27876
+ minWidth: cell.column.minWidth,
27877
+ width: isSelector ? 10 : cell.column.width,
27878
+ maxWidth: isSelector ? 10 : cell.column.maxWidth
27879
+ }
27880
+ }), {
27881
+ key: index
27882
+ }), jsxs(Flex$1, Object.assign({
27883
+ align: "center",
27884
+ justify: "between",
27885
+ css: {
27886
+ cursor: 'pointer',
27887
+ minHeight: 40
27888
+ }
27889
+ }, {
27890
+ children: [jsx(Box, {
27891
+ children: cell.render('Cell')
27892
+ }, void 0), !isSelector && jsx(Flex$1, Object.assign({
27893
+ justify: "center",
27894
+ align: "center",
27895
+ onClick: () => {
27896
+ if (!Object.keys(state.expanded).includes(row.id)) {
27897
+ toggleAllRowsExpanded(false);
27898
+ }
27899
+
27900
+ row.toggleRowExpanded(!row.isExpanded);
27901
+ }
27902
+ }, {
27903
+ children: row.isExpanded ? jsx(ChevronUpOutline, {}, void 0) : jsx(ChevronDownOutline, {}, void 0)
27904
+ }), void 0)]
27905
+ }), void 0));
27906
+ })), /*#__PURE__*/createElement$2(TableRowCollapse, Object.assign({}, row.getRowProps(), {
27907
+ key: `row_mobile_collapse_${index}`,
27908
+ css: {
27909
+ backgroundColor: '$gray50'
27910
+ }
27911
+ }), showCheckbox && jsx(TableCell$2, {}, void 0), jsx(TableCellCollapse, {
27912
+ children: jsx(Collapalse, Object.assign({
27913
+ isOpen: row.isExpanded
27914
+ }, {
27915
+ children: jsx(Flex$1, Object.assign({
27916
+ direction: "column",
27917
+ css: {
27918
+ borderTop: '1pt solid $bgBorder'
27919
+ }
27920
+ }, {
27921
+ children: row.cells.filter(cell => {
27922
+ var _a, _b, _c, _d;
27923
+
27924
+ 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));
27925
+ }).map((cell, index) => {
27926
+ var _a, _b, _c, _d;
27927
+
27928
+ const headerRender = (_a = cell === null || cell === void 0 ? void 0 : cell.column) === null || _a === void 0 ? void 0 : _a.Header;
27929
+ const isMobileHeader = (_b = cell === null || cell === void 0 ? void 0 : cell.column) === null || _b === void 0 ? void 0 : _b.isMobileHeader;
27930
+ const isSelector = ((_c = cell === null || cell === void 0 ? void 0 : cell.column) === null || _c === void 0 ? void 0 : _c.id) === 'selection';
27931
+ return !isMobileHeader && !isSelector && jsx(Flex$1, Object.assign({
27932
+ direction: "column",
27933
+ justify: "center",
27934
+ css: {
27935
+ borderBottom: '1pt solid $bgBorder',
27936
+ padding: '10px 12px',
27937
+ minHeight: 52
27938
+ }
27939
+ }, {
27940
+ children: jsxs(Grid, Object.assign({
27941
+ columns: 6,
27942
+ flow: "row",
27943
+ css: {
27944
+ gridRowGap: '$spacing-04',
27945
+ gridColumnGap: '$spacing-04',
27946
+ alignItems: 'center'
27947
+ }
27948
+ }, {
27949
+ children: [jsx(GridItem, Object.assign({
27950
+ colSpan: 3
27951
+ }, {
27952
+ children: jsx(Heading, Object.assign({
27953
+ heading: "headerTable",
27954
+ color: "secondary"
27955
+ }, {
27956
+ children: typeof headerRender === 'string' ? jsxs(Fragment, {
27957
+ 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) ? jsx(Required$2, {
27958
+ children: "*"
27959
+ }, void 0) : '']
27960
+ }, void 0) : headerRender
27961
+ }), void 0)
27962
+ }), void 0), jsx(GridItem, Object.assign({
27963
+ colSpan: 3
27964
+ }, {
27965
+ children: jsx(Flex$1, Object.assign({
27966
+ justify: "end"
27967
+ }, {
27968
+ children: cell.render('Cell')
27969
+ }), void 0)
27970
+ }), void 0)]
27971
+ }), void 0)
27972
+ }), index);
27973
+ })
27974
+ }), void 0)
27975
+ }), void 0)
27976
+ }, void 0))]
27977
+ }, void 0);
27978
+ };
27979
+
27503
27980
  return jsx(TableContainer$2, Object.assign({
27504
27981
  css: props === null || props === void 0 ? void 0 : props.css
27505
27982
  }, {
@@ -27532,117 +28009,17 @@ function EditableTableMobile(props) {
27532
28009
  }, void 0), jsx(TableBody$2, Object.assign({}, getTableBodyProps(), {
27533
28010
  children: rows.map((row, index) => {
27534
28011
  prepareRow(row);
27535
- return jsxs(React__default.Fragment, {
27536
- children: [/*#__PURE__*/createElement$2(TableRow$2, Object.assign({}, row.getRowProps(), {
27537
- key: `row_mobile_${index}`
27538
- }), row.cells.map((cell, index) => {
27539
- var _a, _b;
27540
-
27541
- const isMobileHeader = (_a = cell === null || cell === void 0 ? void 0 : cell.column) === null || _a === void 0 ? void 0 : _a.isMobileHeader;
27542
- const isSelector = ((_b = cell === null || cell === void 0 ? void 0 : cell.column) === null || _b === void 0 ? void 0 : _b.id) === 'selection';
27543
- return (isMobileHeader || isSelector) && /*#__PURE__*/createElement$2(TableCell$2, Object.assign({}, cell.getCellProps({
27544
- style: {
27545
- minWidth: cell.column.minWidth,
27546
- width: isSelector ? 10 : cell.column.width,
27547
- maxWidth: isSelector ? 10 : cell.column.maxWidth
27548
- }
27549
- }), {
27550
- key: index
27551
- }), jsxs(Flex$1, Object.assign({
27552
- align: "center",
27553
- justify: "between",
27554
- css: {
27555
- cursor: 'pointer',
27556
- minHeight: 40
27557
- }
27558
- }, {
27559
- children: [jsx(Box, {
27560
- children: cell.render('Cell')
27561
- }, void 0), !isSelector && jsx(Flex$1, Object.assign({
27562
- justify: "center",
27563
- align: "center",
27564
- onClick: () => {
27565
- if (!Object.keys(state.expanded).includes(row.id)) {
27566
- toggleAllRowsExpanded(false);
27567
- }
27568
-
27569
- row.toggleRowExpanded(!row.isExpanded);
27570
- }
27571
- }, {
27572
- children: row.isExpanded ? jsx(ChevronUpOutline, {}, void 0) : jsx(ChevronDownOutline, {}, void 0)
27573
- }), void 0)]
27574
- }), void 0));
27575
- })), /*#__PURE__*/createElement$2(TableRowCollapse, Object.assign({}, row.getRowProps(), {
27576
- key: `row_mobile_collapse_${index}`,
27577
- css: {
27578
- backgroundColor: '$gray50'
27579
- }
27580
- }), showCheckbox && jsx(TableCell$2, {}, void 0), jsx(TableCellCollapse, {
27581
- children: jsx(Collapalse, Object.assign({
27582
- isOpen: row.isExpanded
27583
- }, {
27584
- children: jsx(Flex$1, Object.assign({
27585
- direction: "column",
27586
- css: {
27587
- borderTop: '1pt solid $bgBorder'
27588
- }
27589
- }, {
27590
- children: row.cells.filter(cell => {
27591
- var _a, _b, _c, _d;
27592
-
27593
- 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));
27594
- }).map((cell, index) => {
27595
- var _a, _b, _c, _d;
27596
-
27597
- const headerRender = (_a = cell === null || cell === void 0 ? void 0 : cell.column) === null || _a === void 0 ? void 0 : _a.Header;
27598
- const isMobileHeader = (_b = cell === null || cell === void 0 ? void 0 : cell.column) === null || _b === void 0 ? void 0 : _b.isMobileHeader;
27599
- const isSelector = ((_c = cell === null || cell === void 0 ? void 0 : cell.column) === null || _c === void 0 ? void 0 : _c.id) === 'selection';
27600
- return !isMobileHeader && !isSelector && jsx(Flex$1, Object.assign({
27601
- direction: "column",
27602
- justify: "center",
27603
- css: {
27604
- borderBottom: '1pt solid $bgBorder',
27605
- padding: '10px 12px',
27606
- minHeight: 52
27607
- }
27608
- }, {
27609
- children: jsxs(Grid, Object.assign({
27610
- columns: 6,
27611
- flow: "row",
27612
- css: {
27613
- gridRowGap: '$spacing-04',
27614
- gridColumnGap: '$spacing-04',
27615
- alignItems: 'center'
27616
- }
27617
- }, {
27618
- children: [jsx(GridItem, Object.assign({
27619
- colSpan: 3
27620
- }, {
27621
- children: jsx(Heading, Object.assign({
27622
- heading: "headerTable",
27623
- color: "secondary"
27624
- }, {
27625
- children: typeof headerRender === 'string' ? jsxs(Fragment, {
27626
- 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) ? jsx(Required$2, {
27627
- children: "*"
27628
- }, void 0) : '']
27629
- }, void 0) : headerRender
27630
- }), void 0)
27631
- }), void 0), jsx(GridItem, Object.assign({
27632
- colSpan: 3
27633
- }, {
27634
- children: jsx(Flex$1, Object.assign({
27635
- justify: "end"
27636
- }, {
27637
- children: cell.render('Cell')
27638
- }), void 0)
27639
- }), void 0)]
27640
- }), void 0)
27641
- }), index);
27642
- })
27643
- }), void 0)
27644
- }), void 0)
27645
- }, void 0))]
28012
+ const {
28013
+ customStyle
28014
+ } = getCustomRows(row);
28015
+ const {
28016
+ CustomRow,
28017
+ showInMobile
28018
+ } = getCustomRows(row, () => renderTableRow(row, index, customStyle));
28019
+ return jsx(React__default.Fragment, {
28020
+ children: CustomRow && showInMobile ? jsx(CustomRow, {
28021
+ style: customStyle
28022
+ }, void 0) : renderTableRow(row, index, customStyle)
27646
28023
  }, index);
27647
28024
  })
27648
28025
  }), void 0), rows.length < 1 && jsx(TableFoot$1, {
@@ -28044,6 +28421,67 @@ function EditableTable(props) {
28044
28421
  }
28045
28422
  }, [selectedRowIds, data, onSelectedChange, selectedIndex]);
28046
28423
  const isDesktop = useMediaQuery('(min-width: 767px)');
28424
+
28425
+ const getCustomRows = (row, renderRow) => {
28426
+ var _a;
28427
+
28428
+ let customStyle = {};
28429
+ let CustomRow;
28430
+
28431
+ if (customRows && customRows(row).length) {
28432
+ for (let i = 0; i < customRows(row).length; i++) {
28433
+ if (customRows(row)[i].predicate) {
28434
+ customStyle = (_a = customRows(row)[i]) === null || _a === void 0 ? void 0 : _a.css;
28435
+
28436
+ CustomRow = () => {
28437
+ var _a;
28438
+
28439
+ return (_a = customRows(row)[i]) === null || _a === void 0 ? void 0 : _a.Row(row.values, renderRow);
28440
+ };
28441
+ }
28442
+ }
28443
+ }
28444
+
28445
+ return {
28446
+ CustomRow,
28447
+ customStyle
28448
+ };
28449
+ };
28450
+
28451
+ const renderTableRow = (row, customStyle) => {
28452
+ return jsx(TableRow$1, Object.assign({
28453
+ css: customStyle
28454
+ }, row.getRowProps(), {
28455
+ children: row.cells.filter(cell => {
28456
+ var _a, _b, _c, _d, _e;
28457
+
28458
+ return !((_a = cell === null || cell === void 0 ? void 0 : cell.column) === null || _a === void 0 ? void 0 : _a.isSubRow) && (typeof ((_b = cell === null || cell === void 0 ? void 0 : cell.column) === null || _b === void 0 ? void 0 : _b.hidden) === 'boolean' ? !((_c = cell === null || cell === void 0 ? void 0 : cell.column) === null || _c === void 0 ? void 0 : _c.hidden) : !((_e = (_d = cell === null || cell === void 0 ? void 0 : cell.column) === null || _d === void 0 ? void 0 : _d.hidden) === null || _e === void 0 ? void 0 : _e.call(_d, cell)));
28459
+ }).map(cell => {
28460
+ var _a;
28461
+
28462
+ return !((_a = cell.column) === null || _a === void 0 ? void 0 : _a.isMobileOnly) && jsx(TableCell$1, Object.assign({}, cell.getCellProps({
28463
+ style: {
28464
+ minWidth: cell.column.minWidth,
28465
+ width: cell.column.width,
28466
+ maxWidth: cell.column.maxWidth
28467
+ }
28468
+ }), {
28469
+ css: {
28470
+ '@md': {
28471
+ height: rowHeight
28472
+ }
28473
+ }
28474
+ }, {
28475
+ children: jsx(TableCellContent$1, Object.assign({
28476
+ align: align
28477
+ }, {
28478
+ children: cell.render('Cell')
28479
+ }), void 0)
28480
+ }), void 0);
28481
+ })
28482
+ }), void 0);
28483
+ };
28484
+
28047
28485
  return isDesktop ? jsx(TableContainer$1, Object.assign({
28048
28486
  css: props === null || props === void 0 ? void 0 : props.css
28049
28487
  }, {
@@ -28071,62 +28509,19 @@ function EditableTable(props) {
28071
28509
  })
28072
28510
  }, void 0), jsx(TableBody$1, Object.assign({}, getTableBodyProps(), {
28073
28511
  children: rows.map((row, index) => {
28074
- var _a;
28075
-
28076
28512
  prepareRow(row);
28077
28513
  const subRowCells = row.cells.filter(cell => cell.column.isSubRow);
28078
28514
  const notNullHeaderColumns = visibleColumns.filter(column => typeof column.Header !== 'function' && column.Header !== null && !column.isSubRow);
28079
- let customStyle = {};
28080
- let CustomRow;
28081
-
28082
- if (customRows && customRows(row).length) {
28083
- for (let i = 0; i < customRows(row).length; i++) {
28084
- if (customRows(row)[i].predicate) {
28085
- customStyle = (_a = customRows(row)[i]) === null || _a === void 0 ? void 0 : _a.css;
28086
-
28087
- CustomRow = () => {
28088
- var _a;
28089
-
28090
- return (_a = customRows(row)[i]) === null || _a === void 0 ? void 0 : _a.Row(row.values);
28091
- };
28092
- }
28093
- }
28094
- }
28095
-
28515
+ const {
28516
+ customStyle
28517
+ } = getCustomRows(row);
28518
+ const {
28519
+ CustomRow
28520
+ } = getCustomRows(row, () => renderTableRow(row, customStyle));
28096
28521
  return jsxs(React__default.Fragment, {
28097
28522
  children: [CustomRow ? jsx(CustomRow, {
28098
28523
  style: customStyle
28099
- }, void 0) : jsx(TableRow$1, Object.assign({
28100
- css: customStyle
28101
- }, row.getRowProps(), {
28102
- children: row.cells.filter(cell => {
28103
- var _a, _b, _c, _d, _e;
28104
-
28105
- return !((_a = cell === null || cell === void 0 ? void 0 : cell.column) === null || _a === void 0 ? void 0 : _a.isSubRow) && (typeof ((_b = cell === null || cell === void 0 ? void 0 : cell.column) === null || _b === void 0 ? void 0 : _b.hidden) === 'boolean' ? !((_c = cell === null || cell === void 0 ? void 0 : cell.column) === null || _c === void 0 ? void 0 : _c.hidden) : !((_e = (_d = cell === null || cell === void 0 ? void 0 : cell.column) === null || _d === void 0 ? void 0 : _d.hidden) === null || _e === void 0 ? void 0 : _e.call(_d, cell)));
28106
- }).map(cell => {
28107
- var _a;
28108
-
28109
- return !((_a = cell.column) === null || _a === void 0 ? void 0 : _a.isMobileOnly) && jsx(TableCell$1, Object.assign({}, cell.getCellProps({
28110
- style: {
28111
- minWidth: cell.column.minWidth,
28112
- width: cell.column.width,
28113
- maxWidth: cell.column.maxWidth
28114
- }
28115
- }), {
28116
- css: {
28117
- '@md': {
28118
- height: rowHeight
28119
- }
28120
- }
28121
- }, {
28122
- children: jsx(TableCellContent$1, Object.assign({
28123
- align: align
28124
- }, {
28125
- children: cell.render('Cell')
28126
- }), void 0)
28127
- }), void 0);
28128
- })
28129
- }), void 0), subRowCells.map(cell => {
28524
+ }, void 0) : renderTableRow(row, customStyle), subRowCells.map(cell => {
28130
28525
  var _a;
28131
28526
 
28132
28527
  return jsx(TableRow$1, Object.assign({
@@ -28197,7 +28592,8 @@ function EditableTable(props) {
28197
28592
  css: props === null || props === void 0 ? void 0 : props.css,
28198
28593
  instance: instance,
28199
28594
  emptyDataMessage: emptyDataMessage,
28200
- showCheckbox: showCheckbox
28595
+ showCheckbox: showCheckbox,
28596
+ customRows: customRows
28201
28597
  }, void 0);
28202
28598
  }
28203
28599
 
@@ -32036,4 +32432,4 @@ const useToggle = initialValue => {
32036
32432
  return useReducer(toggleReducer, initialValue);
32037
32433
  };
32038
32434
 
32039
- export { ADVANCE_PICKER, Accordion, AccordionContent, AccordionItem, AccordionTrigger, AdvancedOption, AlertDialog, AlertDialogCancel, AlertDialogConfirm, AlertDialogContent, AlertDialogDescription, AlertDialogFunction, AlertDialogRoot, AlertDialogTitle, AlertDialogTrigger, Avatar, BOTTOM_LEFT_POSITION, BOTTOM_RIGHT_POSITION, Badge, Banner, BannerClose, BannerDescription, BannerLink, BannerTitle, Box, Breadcrumb, BreadcrumbItem, BreadcrumbLink, Button$3 as Button, ButtonDropdown, ButtonGroup$1 as ButtonGroup, ButtonGroupItem, ButtonPrimitive, Card, CardComponent, CardLineColor, CheckboxGroup, CheckboxTable, ColorPicker$1 as ColorPicker, Colors, ContentEditor, DateColumn, DatePicker, DecimalColumn, Device as DevicePreview, Dialog, DialogClose, DialogContent, DialogDescription, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Drawer, DrawerBody, DrawerClose, DrawerCloseButton, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuArrow, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuItem, DropdownMenuItemIndicator, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuTrigger, EditableTable, Flex$1 as Flex, FormGroup, FormHelper, FormLabel, Grid, GridItem, Heading, IconButton, IconContainer, Image, ImageDevicePreview, InputCheckbox, InputColorPicker, InputCombobox, InputCounter, InputCreatable, InputDatePicker, InputGroup, InputLeftAddon, InputLeftElement, InputMapPicker, InputNumber, InputOTP, InputPrefix, InputRadio, InputRadioGroup, InputResourceList, InputRightAddon, InputRightElement, InputSearchbox, InputSelect, InputSelectCheck, InputSelectTag, InputSuffix, InputSwitch, TagsInput as InputTags, InputText, InputTextArea, InputTimePicker, LAST_7_DAYS, LAST_MONTH, LAST_TWO_MONTHS, LAST_WEEK, LineChart, Link, LoadingBar, MajooProvider, MapPicker, MobileTable, ModalDialog, ModalDialogContent, ModalDialogFooter, ModalDialogTitle, ModalDialogTrigger, NativeTimePicker, NotificationBadge, OptionWrapper$2 as OptionWrapper, PageContainer, PageDialog, PageDialogContent, PageDialogFooter, PageDialogTitle, PageDialogTrigger, Pagination, Paper, PaperComponent, Paragraph, Popover, PopoverClose, PopoverContent, PopoverTrigger, PriceColumn, Progress$1 as Progress, ProgressIndicator, RANGE_PICKER, ResendOTP, RightSlot, rowExpanderColumn as RowExpanderColumn, rowMenuColumn as RowMenuColumn, rowSelectionColumn as RowSelectionColumn, SINGLE_PICKER, SelectBox, SelectContainer, SelectInputSearch, SelectItem, SelectOption, Separator$2 as Separator, Slider, StepWizard, StepWizardContext, StyledBox, StyledDropdown, StyledInput$1 as StyledInput, StyledSpan, StyledTitle$2 as StyledTitle, THIS_MONTH, THIS_WEEK, TODAY, TOP_LEFT_POSITION, TOP_RIGHT_POSITION, Table, TableBody$3 as TableBody, TableCell$3 as TableCell, TableColumn, TableContent$3 as TableContent, TableFoot$2 as TableFoot, TableFootCell$2 as TableFootCell, TableFootRow$2 as TableFootRow, TableHead$3 as TableHead, TableHeadCellContent, TableHeaderCellContainer, TableOfContent, TableOfContentPage, TableRow$3 as TableRow, Tabs$1 as Tabs, TabsContent$1 as TabsContent, TabsList$1 as TabsList, TabsTrigger$1 as TabsTrigger, Tag, TagStatus, Text$1 as Text, TextVariantsEnum, TimePicker, ToastContext, Tooltip$1 as Tooltip, UPDATE_PICKER, Upload, YESTERDAY, addOnCellStyle, advancePickerDate, advancePickerOptions, defaultFetchDataParams, pickerReducer, useListOption, useToggle };
32435
+ export { ADVANCE_PICKER, Accordion, AccordionContent, AccordionItem, AccordionTrigger, AdvancedOption, AlertDialog, AlertDialogCancel, AlertDialogConfirm, AlertDialogContent, AlertDialogDescription, AlertDialogFunction, AlertDialogRoot, AlertDialogTitle, AlertDialogTrigger, Avatar, BOTTOM_LEFT_POSITION, BOTTOM_RIGHT_POSITION, Badge, Banner, BannerClose, BannerDescription, BannerLink, BannerTitle, Box, Breadcrumb, BreadcrumbItem, BreadcrumbLink, Button$3 as Button, ButtonDropdown, ButtonGroup$1 as ButtonGroup, ButtonGroupItem, ButtonPrimitive, Card, CardComponent, CardLineColor, CheckboxGroup, CheckboxTable, ColorPicker$1 as ColorPicker, Colors, ContentEditor, ContextMenu, ContextMenuItem, ContextMenuSeparator, ContextMenuTrigger, DateColumn, DatePicker, DecimalColumn, Device as DevicePreview, Dialog, DialogClose, DialogContent, DialogDescription, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Drawer, DrawerBody, DrawerClose, DrawerCloseButton, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuArrow, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuItem, DropdownMenuItemIndicator, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuTrigger, EditableTable, Flex$1 as Flex, FormGroup, FormHelper, FormLabel, Grid, GridItem, Heading, IconButton, IconContainer, Image, ImageDevicePreview, InputCheckbox, InputColorPicker, InputCombobox, InputCounter, InputCreatable, InputDatePicker, InputGroup, InputLeftAddon, InputLeftElement, InputMapPicker, InputNumber, InputOTP, InputPrefix, InputRadio, InputRadioGroup, InputResourceList, InputRightAddon, InputRightElement, InputSearchbox, InputSelect, InputSelectCheck, InputSelectTag, InputSuffix, InputSwitch, TagsInput as InputTags, InputText, InputTextArea, InputTimePicker, LAST_7_DAYS, LAST_MONTH, LAST_TWO_MONTHS, LAST_WEEK, LineChart, Link, LoadingBar, MajooProvider, MapPicker, MobileTable, ModalDialog, ModalDialogContent, ModalDialogFooter, ModalDialogTitle, ModalDialogTrigger, NativeTimePicker, NotificationBadge, OptionWrapper$2 as OptionWrapper, PageContainer, PageDialog, PageDialogContent, PageDialogFooter, PageDialogTitle, PageDialogTrigger, Pagination, Paper, PaperComponent, Paragraph, Popover, PopoverClose, PopoverContent, PopoverTrigger, PriceColumn, Progress$1 as Progress, ProgressIndicator, RANGE_PICKER, ResendOTP, RightSlot, rowExpanderColumn as RowExpanderColumn, rowMenuColumn as RowMenuColumn, rowSelectionColumn as RowSelectionColumn, SINGLE_PICKER, SelectBox, SelectContainer, SelectInputSearch, SelectItem, SelectOption, Separator$2 as Separator, Slider, StepWizard, StepWizardContext, StyledBox, StyledDropdown, StyledInput$1 as StyledInput, StyledSpan, StyledTitle$2 as StyledTitle, THIS_MONTH, THIS_WEEK, TODAY, TOP_LEFT_POSITION, TOP_RIGHT_POSITION, Table, TableBody$3 as TableBody, TableCell$3 as TableCell, TableColumn, TableContent$3 as TableContent, TableFoot$2 as TableFoot, TableFootCell$2 as TableFootCell, TableFootRow$2 as TableFootRow, TableHead$3 as TableHead, TableHeadCellContent, TableHeaderCellContainer, TableOfContent, TableOfContentPage, TableRow$3 as TableRow, Tabs$1 as Tabs, TabsContent$1 as TabsContent, TabsList$1 as TabsList, TabsTrigger$1 as TabsTrigger, Tag, TagStatus, Text$1 as Text, TextVariantsEnum, TimePicker, ToastContext, Tooltip$1 as Tooltip, UPDATE_PICKER, Upload, YESTERDAY, addOnCellStyle, advancePickerDate, advancePickerOptions, defaultFetchDataParams, pickerReducer, useListOption, useToggle };