@majoo-ui/react 1.41.0 → 1.41.1

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
@@ -13,6 +13,7 @@ import * as ProgressPrimitive from '@radix-ui/react-progress';
13
13
  import * as LabelPrimitive from '@radix-ui/react-label';
14
14
  import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
15
15
  import * as RadioGroupPrimitive from '@radix-ui/react-radio-group';
16
+ import NumberFormat from 'react-number-format';
16
17
  import * as SwitchPrimitive from '@radix-ui/react-switch';
17
18
  import Downshift, { useMultipleSelection, useCombobox } from 'downshift';
18
19
  import InfiniteScroll from 'react-infinite-scroller';
@@ -34,6 +35,7 @@ import * as AspectRatioPrimitive from '@radix-ui/react-aspect-ratio';
34
35
  import { EditableInput, ColorWrap, Saturation, Hue, Alpha, Swatch } from 'react-color/lib/components/common';
35
36
  import * as color from 'react-color/lib/helpers/color';
36
37
  import StepWizard$1 from 'react-step-wizard';
38
+ import ScrollSpy from 'react-ui-scrollspy';
37
39
 
38
40
  var _jsxFileName$17 = "/home/majoo-thariq/Majoonians/majoo-ui/packages/react/src/majoo-provider/ThemeProvider.js";
39
41
 
@@ -6039,6 +6041,151 @@ InputRightElement.propTypes = {
6039
6041
  };
6040
6042
  InputRightElement.name = 'InputRightElement';
6041
6043
 
6044
+ const InputNumber = styled(NumberFormat, {
6045
+ // Reset
6046
+ appearance: 'none',
6047
+ boxSizing: 'border-box',
6048
+ fontFamily: 'inherit',
6049
+ margin: '0',
6050
+ outline: 'none',
6051
+ width: '100%',
6052
+ WebkitTapHighlightColor: 'rgba(0,0,0,0)',
6053
+ '&::before': {
6054
+ boxSizing: 'border-box'
6055
+ },
6056
+ '&::after': {
6057
+ boxSizing: 'border-box'
6058
+ },
6059
+ // Custom
6060
+ background: 'none',
6061
+ color: '$textPrimary',
6062
+ fontVariantNumeric: 'tabular-nums',
6063
+ fontSize: '$short-content-regular',
6064
+ letterSpacing: '$short-content-regular',
6065
+ lineHeight: '$short-content-regular',
6066
+ fontWeight: '400',
6067
+ padding: '10px $spacing-05',
6068
+ border: '1px solid $gray300',
6069
+ borderRadius: '$lg',
6070
+ '&:focus': {
6071
+ border: '1px solid $colors$primary400'
6072
+ },
6073
+ '&:active': {
6074
+ border: '1px solid $colors$primary400'
6075
+ },
6076
+ '&:hover': {
6077
+ border: '1px solid $colors$primary600'
6078
+ },
6079
+ '&:disabled': {
6080
+ backgroundColor: '$formDisable',
6081
+ color: '$textDisable',
6082
+ cursor: 'not-allowed',
6083
+ '&::placeholder': {
6084
+ color: '$textDisable'
6085
+ },
6086
+ '&:hover': {
6087
+ border: '1px solid $colors$gray300'
6088
+ }
6089
+ },
6090
+ '&::placeholder': {
6091
+ color: '$textDisable'
6092
+ },
6093
+ compoundVariants: [{
6094
+ inputGroup: true,
6095
+ isInvalid: true,
6096
+ css: {
6097
+ border: 'none',
6098
+ '&:focus': {
6099
+ border: 'none'
6100
+ },
6101
+ '&:hover': {
6102
+ border: 'none'
6103
+ }
6104
+ }
6105
+ }],
6106
+ variants: {
6107
+ readOnly: {
6108
+ true: {
6109
+ backgroundColor: '$formDisable'
6110
+ }
6111
+ },
6112
+ inputGroup: {
6113
+ true: {
6114
+ border: 'none',
6115
+ borderRadius: '$lg',
6116
+ '&:focus': {
6117
+ border: 'none'
6118
+ },
6119
+ '&:active': {
6120
+ border: 'none'
6121
+ },
6122
+ '&:hover': {
6123
+ border: 'none'
6124
+ },
6125
+ '&:disabled': {
6126
+ backgroundColor: 'transparent',
6127
+ color: '$textDisable',
6128
+ cursor: 'default',
6129
+ '&::placeholder': {
6130
+ color: '$textDisable'
6131
+ },
6132
+ '&:hover': {
6133
+ border: '1px solid $colors$gray300'
6134
+ }
6135
+ }
6136
+ }
6137
+ },
6138
+ size: {
6139
+ sm: {
6140
+ height: 32
6141
+ },
6142
+ lg: {
6143
+ height: 40
6144
+ }
6145
+ },
6146
+ isInvalid: {
6147
+ true: {
6148
+ border: '1px solid $colors$red400',
6149
+ '&:focus': {
6150
+ border: '1px solid $colors$red400'
6151
+ },
6152
+ '&:hover': {
6153
+ border: '1px solid $colors$red400'
6154
+ }
6155
+ }
6156
+ },
6157
+ isPicker: {
6158
+ true: {
6159
+ fontSize: '$placeholder',
6160
+ letterSpacing: '$placeholder',
6161
+ lineHeight: '$placeholder',
6162
+ fontVariantNumeric: 'unset',
6163
+ caretColor: 'transparent',
6164
+ cursor: 'pointer',
6165
+ padding: '0'
6166
+ }
6167
+ }
6168
+ },
6169
+ defaultVariants: {
6170
+ size: 'lg'
6171
+ }
6172
+ });
6173
+ InputNumber.propTypes = {
6174
+ placeholder: PropTypes.string,
6175
+ value: PropTypes.string,
6176
+ size: PropTypes.oneOf(['sm', 'lg']),
6177
+ isInvalid: PropTypes.bool,
6178
+ readOnly: PropTypes.bool,
6179
+ disabled: PropTypes.bool
6180
+ };
6181
+ InputNumber.defaultProps = {
6182
+ size: 'lg',
6183
+ thousandSeparator: '.',
6184
+ decimalSeparator: ','
6185
+ };
6186
+ InputNumber.name = 'InputText';
6187
+ InputNumber.displayName = 'InputNumber';
6188
+
6042
6189
  const _excluded$l = ["className", "children", "onClick", "size", "icon", "isRemovable", "disabled", "type", "onRemove", "readOnly"];
6043
6190
  var _jsxFileName$K = "/home/majoo-thariq/Majoonians/majoo-ui/packages/react/src/components/tag/Tag.js";
6044
6191
  const TagWrapper$3 = styled('div', {
@@ -8865,12 +9012,14 @@ function InputResourceList({
8865
9012
  searchPlaceholder = 'Cari ...',
8866
9013
  counterFooterText = 'kategori dipilih',
8867
9014
  isLoading = false,
9015
+ disableUnchecked = false,
8868
9016
  value,
8869
9017
  fetchData,
8870
9018
  onQueryChange,
8871
9019
  css
8872
9020
  }) {
8873
9021
  const [checkedResources, setCheckedResources] = useState([]);
9022
+ const [tempCheckedRes, setTempCheckedRes] = useState(value);
8874
9023
  const [query, setQuery] = useState();
8875
9024
  const scrollerRef = useRef(null);
8876
9025
  useEffect(() => {
@@ -8884,6 +9033,7 @@ function InputResourceList({
8884
9033
  const renderCheckbox = (resource, index) => {
8885
9034
  var _a;
8886
9035
 
9036
+ const isDisabled = disableUnchecked && !tempCheckedRes.includes(resource);
8887
9037
  return jsx(InputCheckbox, {
8888
9038
  label: jsxs(Flex$1, Object.assign({
8889
9039
  gap: 3
@@ -8896,14 +9046,15 @@ function InputResourceList({
8896
9046
  type: "varian",
8897
9047
  size: "lg",
8898
9048
  css: {
8899
- color: disabled ? '$textDisable' : '$textGreen'
9049
+ color: disabled || isDisabled ? '$textDisable' : '$textGreen'
8900
9050
  }
8901
9051
  }, {
8902
9052
  children: variant
8903
9053
  }), index))]
8904
9054
  }), void 0),
8905
9055
  index: index,
8906
- value: resource.value
9056
+ value: resource.value,
9057
+ disabled: isDisabled
8907
9058
  }, `${resource.value}-${new Date().toISOString()}`);
8908
9059
  };
8909
9060
 
@@ -8965,11 +9116,15 @@ function InputResourceList({
8965
9116
  }), void 0), jsx(ConditionalWrapper, Object.assign({
8966
9117
  condition: !!fetchData && data.length > 0,
8967
9118
  wrapper: children => jsx(InfiniteScroll, Object.assign({
8968
- loadMore: _ => fetchData({
8969
- query
8970
- }),
9119
+ loadMore: _ => {
9120
+ if (!isLoading) {
9121
+ fetchData({
9122
+ query
9123
+ });
9124
+ }
9125
+ },
8971
9126
  hasMore: true,
8972
- threshold: 10,
9127
+ threshold: 5,
8973
9128
  useWindow: false
8974
9129
  }, {
8975
9130
  children: children
@@ -13806,12 +13961,7 @@ const TableContainer$1 = styled(Flex$1, {
13806
13961
  height: '100%',
13807
13962
  overflowY: 'auto',
13808
13963
  overflowX: 'hidden',
13809
- padding: '0 $spacing-05',
13810
- '-ms-overflow-style': 'none',
13811
- scrollbarWidth: 'none',
13812
- '&::-webkit-scrollbar': {
13813
- display: 'none'
13814
- }
13964
+ padding: '0 $spacing-05'
13815
13965
  });
13816
13966
  const TableHeadRow$1 = styled('tr', {
13817
13967
  borderBottom: '1pt solid $bgBorder',
@@ -13842,12 +13992,13 @@ const TableCell$1 = styled('td', {
13842
13992
  fontWeight: '400',
13843
13993
  color: '$textPrimary'
13844
13994
  });
13845
-
13846
- function MobileTable({
13995
+ const MobileTable = /*#__PURE__*/React__default.forwardRef(({
13847
13996
  instance,
13997
+ isInfiniteScroll,
13848
13998
  footer,
13999
+ infiniteScrollWrapper,
13849
14000
  css
13850
- }) {
14001
+ }, ref) => {
13851
14002
  const {
13852
14003
  getTableProps,
13853
14004
  getTableBodyProps,
@@ -13860,98 +14011,101 @@ function MobileTable({
13860
14011
  } = instance;
13861
14012
  return /*#__PURE__*/React__default.createElement(TableContainer$1, {
13862
14013
  css: css,
13863
- __self: this,
14014
+ ref: ref,
14015
+ __self: undefined,
13864
14016
  __source: {
13865
14017
  fileName: _jsxFileName$i,
13866
- lineNumber: 71,
14018
+ lineNumber: 74,
13867
14019
  columnNumber: 5
13868
14020
  }
13869
- }, /*#__PURE__*/React__default.createElement(TableContent, _extends({}, getTableProps(), {
13870
- __self: this,
14021
+ }, infiniteScrollWrapper( /*#__PURE__*/React__default.createElement(TableContent, _extends({}, getTableProps(), {
14022
+ __self: undefined,
13871
14023
  __source: {
13872
14024
  fileName: _jsxFileName$i,
13873
- lineNumber: 72,
13874
- columnNumber: 7
14025
+ lineNumber: 76,
14026
+ columnNumber: 9
13875
14027
  }
13876
14028
  }), /*#__PURE__*/React__default.createElement(TableHead, {
13877
- __self: this,
14029
+ __self: undefined,
13878
14030
  __source: {
13879
14031
  fileName: _jsxFileName$i,
13880
- lineNumber: 73,
13881
- columnNumber: 9
14032
+ lineNumber: 77,
14033
+ columnNumber: 11
13882
14034
  }
13883
14035
  }, headerGroups.map(headerGroup => /*#__PURE__*/React__default.createElement(TableHeadRow$1, _extends({}, headerGroup.getHeaderGroupProps(), {
13884
- __self: this,
14036
+ __self: undefined,
13885
14037
  __source: {
13886
14038
  fileName: _jsxFileName$i,
13887
- lineNumber: 75,
13888
- columnNumber: 13
14039
+ lineNumber: 79,
14040
+ columnNumber: 15
13889
14041
  }
13890
14042
  }), headerGroup.headers.map(column => {
13891
14043
  const headerRender = column.render('Header');
13892
- return /*#__PURE__*/React__default.createElement(TableHeadCell$1, _extends({}, column.getHeaderProps(column.getSortByToggleProps()), {
13893
- __self: this,
14044
+ return /*#__PURE__*/React__default.createElement(TableHeadCell$1, _extends({}, column.getHeaderProps(column.getSortByToggleProps && !column.unsortable ? column.getSortByToggleProps({
14045
+ title: 'Urutkan'
14046
+ }) : {}), {
14047
+ __self: undefined,
13894
14048
  __source: {
13895
14049
  fileName: _jsxFileName$i,
13896
- lineNumber: 79,
13897
- columnNumber: 19
14050
+ lineNumber: 83,
14051
+ columnNumber: 21
13898
14052
  }
13899
14053
  }), typeof headerRender === 'string' ? /*#__PURE__*/React__default.createElement(TableHeaderCellContainer, {
13900
- __self: this,
14054
+ __self: undefined,
13901
14055
  __source: {
13902
14056
  fileName: _jsxFileName$i,
13903
- lineNumber: 81,
13904
- columnNumber: 23
14057
+ lineNumber: 91,
14058
+ columnNumber: 25
13905
14059
  }
13906
14060
  }, /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(TableHeadCellContent, {
13907
14061
  heading: "headerTable",
13908
14062
  color: "secondary",
13909
- __self: this,
14063
+ __self: undefined,
13910
14064
  __source: {
13911
14065
  fileName: _jsxFileName$i,
13912
- lineNumber: 83,
13913
- columnNumber: 27
14066
+ lineNumber: 93,
14067
+ columnNumber: 29
13914
14068
  }
13915
14069
  }, headerRender.toUpperCase()), /*#__PURE__*/React__default.createElement(SortingOutline, {
13916
14070
  color: colors.iconSecondary,
13917
- __self: this,
14071
+ __self: undefined,
13918
14072
  __source: {
13919
14073
  fileName: _jsxFileName$i,
13920
- lineNumber: 86,
13921
- columnNumber: 27
14074
+ lineNumber: 96,
14075
+ columnNumber: 29
13922
14076
  }
13923
14077
  }))) : headerRender);
13924
14078
  })))), /*#__PURE__*/React__default.createElement(TableBody, _extends({}, getTableBodyProps(), {
13925
- __self: this,
14079
+ __self: undefined,
13926
14080
  __source: {
13927
14081
  fileName: _jsxFileName$i,
13928
- lineNumber: 98,
13929
- columnNumber: 9
14082
+ lineNumber: 108,
14083
+ columnNumber: 11
13930
14084
  }
13931
14085
  }), page.map(row => {
13932
14086
  prepareRow(row);
13933
14087
  return /*#__PURE__*/React__default.createElement(React__default.Fragment, {
13934
14088
  key: row.id,
13935
- __self: this,
14089
+ __self: undefined,
13936
14090
  __source: {
13937
14091
  fileName: _jsxFileName$i,
13938
- lineNumber: 102,
13939
- columnNumber: 15
14092
+ lineNumber: 112,
14093
+ columnNumber: 17
13940
14094
  }
13941
14095
  }, /*#__PURE__*/React__default.createElement(TableRow$1, _extends({}, row.getRowProps(), {
13942
- __self: this,
14096
+ __self: undefined,
13943
14097
  __source: {
13944
14098
  fileName: _jsxFileName$i,
13945
- lineNumber: 103,
13946
- columnNumber: 17
14099
+ lineNumber: 113,
14100
+ columnNumber: 19
13947
14101
  }
13948
14102
  }), row.cells.map(cell => {
13949
14103
  return /*#__PURE__*/React__default.createElement(TableCell$1, _extends({}, cell.getCellProps(addOnCellStyle(cell.column.id)), {
13950
- __self: this,
14104
+ __self: undefined,
13951
14105
  __source: {
13952
14106
  fileName: _jsxFileName$i,
13953
- lineNumber: 106,
13954
- columnNumber: 23
14107
+ lineNumber: 116,
14108
+ columnNumber: 25
13955
14109
  }
13956
14110
  }), cell.column.accessor ? /*#__PURE__*/React__default.createElement(Flex$1, {
13957
14111
  justify: "between",
@@ -13966,49 +14120,49 @@ function MobileTable({
13966
14120
  css: {
13967
14121
  cursor: 'pointer'
13968
14122
  },
13969
- __self: this,
14123
+ __self: undefined,
13970
14124
  __source: {
13971
14125
  fileName: _jsxFileName$i,
13972
- lineNumber: 108,
13973
- columnNumber: 27
14126
+ lineNumber: 118,
14127
+ columnNumber: 29
13974
14128
  }
13975
14129
  }, cell.render('Cell'), row.isExpanded ? /*#__PURE__*/React__default.createElement(ChevronUpOutline, {
13976
- __self: this,
14130
+ __self: undefined,
13977
14131
  __source: {
13978
14132
  fileName: _jsxFileName$i,
13979
- lineNumber: 122,
13980
- columnNumber: 47
14133
+ lineNumber: 132,
14134
+ columnNumber: 49
13981
14135
  }
13982
14136
  }) : /*#__PURE__*/React__default.createElement(ChevronDownOutline, {
13983
- __self: this,
14137
+ __self: undefined,
13984
14138
  __source: {
13985
14139
  fileName: _jsxFileName$i,
13986
- lineNumber: 122,
13987
- columnNumber: 70
14140
+ lineNumber: 132,
14141
+ columnNumber: 72
13988
14142
  }
13989
14143
  })) : cell.render('Cell'));
13990
14144
  })), row.isExpanded ? /*#__PURE__*/React__default.createElement(TableRow$1, {
13991
- __self: this,
14145
+ __self: undefined,
13992
14146
  __source: {
13993
14147
  fileName: _jsxFileName$i,
13994
- lineNumber: 132,
13995
- columnNumber: 19
14148
+ lineNumber: 142,
14149
+ columnNumber: 21
13996
14150
  }
13997
14151
  }, /*#__PURE__*/React__default.createElement(TableCell$1, {
13998
14152
  colSpan: visibleColumns.length,
13999
- __self: this,
14153
+ __self: undefined,
14000
14154
  __source: {
14001
14155
  fileName: _jsxFileName$i,
14002
- lineNumber: 133,
14003
- columnNumber: 21
14156
+ lineNumber: 143,
14157
+ columnNumber: 23
14004
14158
  }
14005
14159
  }, /*#__PURE__*/React__default.createElement(Flex$1, {
14006
14160
  direction: "column",
14007
- __self: this,
14161
+ __self: undefined,
14008
14162
  __source: {
14009
14163
  fileName: _jsxFileName$i,
14010
- lineNumber: 134,
14011
- columnNumber: 23
14164
+ lineNumber: 144,
14165
+ columnNumber: 25
14012
14166
  }
14013
14167
  }, row.allCells.filter(cell => !cell.column.isMobileHeader && (cell.column.accessor || cell.column.id === 'menu')).map(cell => cell.column.accessor ? /*#__PURE__*/React__default.createElement(Flex$1, {
14014
14168
  key: `${cell.column.id}-${row.id}`,
@@ -14019,20 +14173,20 @@ function MobileTable({
14019
14173
  padding: '$spacing-03 $spacing-05',
14020
14174
  borderBottom: '1pt solid $bgBorder'
14021
14175
  },
14022
- __self: this,
14176
+ __self: undefined,
14023
14177
  __source: {
14024
14178
  fileName: _jsxFileName$i,
14025
- lineNumber: 141,
14026
- columnNumber: 31
14179
+ lineNumber: 151,
14180
+ columnNumber: 33
14027
14181
  }
14028
14182
  }, /*#__PURE__*/React__default.createElement(Heading, {
14029
14183
  heading: "headerTable",
14030
14184
  color: "secondary",
14031
- __self: this,
14185
+ __self: undefined,
14032
14186
  __source: {
14033
14187
  fileName: _jsxFileName$i,
14034
- lineNumber: 151,
14035
- columnNumber: 33
14188
+ lineNumber: 161,
14189
+ columnNumber: 35
14036
14190
  }
14037
14191
  }, cell.column.Header.toUpperCase()), cell.render('Cell')) : /*#__PURE__*/React__default.createElement(Flex$1, {
14038
14192
  key: `${cell.column.id}-${row.id}`,
@@ -14041,37 +14195,37 @@ function MobileTable({
14041
14195
  height: '40px',
14042
14196
  alignSelf: 'flex-end'
14043
14197
  },
14044
- __self: this,
14198
+ __self: undefined,
14045
14199
  __source: {
14046
14200
  fileName: _jsxFileName$i,
14047
- lineNumber: 157,
14048
- columnNumber: 31
14201
+ lineNumber: 167,
14202
+ columnNumber: 33
14049
14203
  }
14050
14204
  }, cell.render('Cell')))))) : null);
14051
- })), /*#__PURE__*/React__default.createElement(TableFoot, {
14052
- __self: this,
14205
+ })), !isInfiniteScroll && /*#__PURE__*/React__default.createElement(TableFoot, {
14206
+ __self: undefined,
14053
14207
  __source: {
14054
14208
  fileName: _jsxFileName$i,
14055
- lineNumber: 177,
14056
- columnNumber: 9
14209
+ lineNumber: 188,
14210
+ columnNumber: 13
14057
14211
  }
14058
14212
  }, /*#__PURE__*/React__default.createElement(TableFootRow, {
14059
- __self: this,
14213
+ __self: undefined,
14060
14214
  __source: {
14061
14215
  fileName: _jsxFileName$i,
14062
- lineNumber: 178,
14063
- columnNumber: 11
14216
+ lineNumber: 189,
14217
+ columnNumber: 15
14064
14218
  }
14065
14219
  }, /*#__PURE__*/React__default.createElement(TableFootCell, {
14066
14220
  colSpan: "100%",
14067
- __self: this,
14221
+ __self: undefined,
14068
14222
  __source: {
14069
14223
  fileName: _jsxFileName$i,
14070
- lineNumber: 179,
14071
- columnNumber: 13
14224
+ lineNumber: 190,
14225
+ columnNumber: 17
14072
14226
  }
14073
- }, footer)))));
14074
- }
14227
+ }, footer))))));
14228
+ });
14075
14229
 
14076
14230
  var _jsxFileName$h = "/home/majoo-thariq/Majoonians/majoo-ui/packages/react/src/components/table/Table.js";
14077
14231
  const TableContainer = styled('div', {
@@ -14278,9 +14432,12 @@ function Table({
14278
14432
  emptyDataMessage,
14279
14433
  isLoading,
14280
14434
  css,
14281
- onSelectedChange
14435
+ onSelectedChange,
14436
+ isInfiniteScroll,
14437
+ hasMoreItems,
14438
+ rowLimit
14282
14439
  }) {
14283
- const [limit, setLimit] = useState(10);
14440
+ const [limit, setLimit] = useState(rowLimit);
14284
14441
  const instance = useTable({
14285
14442
  columns,
14286
14443
  data,
@@ -14312,8 +14469,7 @@ function Table({
14312
14469
  pageSize,
14313
14470
  sortBy,
14314
14471
  selectedRowIds
14315
- },
14316
- selectedFlatRows
14472
+ }
14317
14473
  } = instance;
14318
14474
 
14319
14475
  const doFetchData = (pageIndex, pageSize, sortAccessor = sortBy.length > 0 ? sortBy[0].id : undefined, sortDirection = sortBy.length > 0 ? sortBy[0].desc ? 'DESC' : 'ASC' : undefined) => {
@@ -14326,6 +14482,7 @@ function Table({
14326
14482
  if (fetchData) fetchData(fetchParams);
14327
14483
  };
14328
14484
 
14485
+ const scrollerRef = useRef(null);
14329
14486
  const isMobile = useMediaQuery('(max-width: 1024px)');
14330
14487
 
14331
14488
  const renderFooter = () => /*#__PURE__*/React__default.createElement(Pagination, {
@@ -14353,11 +14510,35 @@ function Table({
14353
14510
  __self: this,
14354
14511
  __source: {
14355
14512
  fileName: _jsxFileName$h,
14356
- lineNumber: 284,
14513
+ lineNumber: 289,
14357
14514
  columnNumber: 5
14358
14515
  }
14359
14516
  });
14360
14517
 
14518
+ const renderInfiniteScrollWrapper = children => /*#__PURE__*/React__default.createElement(ConditionalWrapper, {
14519
+ condition: isInfiniteScroll && data.length > 0,
14520
+ wrapper: children => /*#__PURE__*/React__default.createElement(InfiniteScroll, {
14521
+ loadMore: _ => {
14522
+ if (!isLoading) doFetchData(controlledPageIndex + 1, rowLimit);
14523
+ },
14524
+ hasMore: hasMoreItems,
14525
+ threshold: 5,
14526
+ useWindow: false,
14527
+ __self: this,
14528
+ __source: {
14529
+ fileName: _jsxFileName$h,
14530
+ lineNumber: 316,
14531
+ columnNumber: 9
14532
+ }
14533
+ }, children),
14534
+ __self: this,
14535
+ __source: {
14536
+ fileName: _jsxFileName$h,
14537
+ lineNumber: 313,
14538
+ columnNumber: 5
14539
+ }
14540
+ }, children);
14541
+
14361
14542
  useEffect(() => {
14362
14543
  if (isMobile) {
14363
14544
  allColumns.map(column => {
@@ -14378,41 +14559,90 @@ function Table({
14378
14559
  gotoPage(controlledPageIndex);
14379
14560
  }, [controlledPageIndex]);
14380
14561
  useEffect(() => {
14381
- if (data && data.length > 0) doFetchData(0, pageSize);
14562
+ if (data && data.length > 0) doFetchData(0, isInfiniteScroll ? rowLimit : pageSize);
14382
14563
  }, [sortBy]);
14383
14564
  useEffect(() => {
14384
14565
  if (data && data.length > 0 && selectedRowIds && onSelectedChange) onSelectedChange(selectedRowIds ? Object.keys(selectedRowIds) : []);
14385
14566
  }, [selectedRowIds]);
14386
- return !isMobile ? /*#__PURE__*/React__default.createElement(TableContainer, {
14387
- css: css,
14567
+ useEffect(() => {
14568
+ if (isInfiniteScroll && data.length <= rowLimit) {
14569
+ var _scrollerRef$current;
14570
+
14571
+ (_scrollerRef$current = scrollerRef.current) === null || _scrollerRef$current === void 0 ? void 0 : _scrollerRef$current.scrollTo({
14572
+ top: 0
14573
+ });
14574
+ }
14575
+ }, [data]);
14576
+ return /*#__PURE__*/React__default.createElement(Box$1, {
14577
+ css: {
14578
+ position: 'relative',
14579
+ width: `${css.width || '100%'}`,
14580
+ height: 'fit-content'
14581
+ },
14388
14582
  __self: this,
14389
14583
  __source: {
14390
14584
  fileName: _jsxFileName$h,
14391
- lineNumber: 337,
14585
+ lineNumber: 370,
14392
14586
  columnNumber: 5
14393
14587
  }
14394
- }, /*#__PURE__*/React__default.createElement(TableContent, _extends({}, getTableProps(), {
14588
+ }, isLoading && /*#__PURE__*/React__default.createElement(Flex$1, {
14589
+ justify: "center",
14590
+ align: "center",
14591
+ css: {
14592
+ zIndex: 10,
14593
+ position: 'absolute',
14594
+ inset: 0,
14595
+ top: isMobile ? 40 : 64,
14596
+ width: '100%',
14597
+ height: `calc(100% - ${isInfiniteScroll ? 0 : '72px'})`,
14598
+ backgroundColor: '$bgWhite',
14599
+ opacity: 0.8
14600
+ },
14395
14601
  __self: this,
14396
14602
  __source: {
14397
14603
  fileName: _jsxFileName$h,
14398
- lineNumber: 338,
14399
- columnNumber: 7
14604
+ lineNumber: 372,
14605
+ columnNumber: 9
14400
14606
  }
14401
- }), /*#__PURE__*/React__default.createElement(TableHead, {
14607
+ }, /*#__PURE__*/React__default.createElement(Text$1, {
14608
+ variant: "caption",
14402
14609
  __self: this,
14403
14610
  __source: {
14404
14611
  fileName: _jsxFileName$h,
14405
- lineNumber: 339,
14612
+ lineNumber: 386,
14613
+ columnNumber: 11
14614
+ }
14615
+ }, "Loading .... ")), !isMobile ? /*#__PURE__*/React__default.createElement(TableContainer, {
14616
+ css: css,
14617
+ ref: scrollerRef,
14618
+ __self: this,
14619
+ __source: {
14620
+ fileName: _jsxFileName$h,
14621
+ lineNumber: 390,
14406
14622
  columnNumber: 9
14407
14623
  }
14624
+ }, renderInfiniteScrollWrapper( /*#__PURE__*/React__default.createElement(TableContent, _extends({}, getTableProps(), {
14625
+ __self: this,
14626
+ __source: {
14627
+ fileName: _jsxFileName$h,
14628
+ lineNumber: 392,
14629
+ columnNumber: 13
14630
+ }
14631
+ }), /*#__PURE__*/React__default.createElement(TableHead, {
14632
+ __self: this,
14633
+ __source: {
14634
+ fileName: _jsxFileName$h,
14635
+ lineNumber: 393,
14636
+ columnNumber: 15
14637
+ }
14408
14638
  }, headerGroups.map(headerGroup => {
14409
14639
  const visibleHeaders = headerGroup.headers.filter(column => !column.isSubRow);
14410
14640
  return /*#__PURE__*/React__default.createElement(TableHeadRow, _extends({}, headerGroup.getHeaderGroupProps(), {
14411
14641
  __self: this,
14412
14642
  __source: {
14413
14643
  fileName: _jsxFileName$h,
14414
- lineNumber: 343,
14415
- columnNumber: 15
14644
+ lineNumber: 397,
14645
+ columnNumber: 21
14416
14646
  }
14417
14647
  }), visibleHeaders.map((column, index) => {
14418
14648
  const headerRender = column.render('Header');
@@ -14428,8 +14658,8 @@ function Table({
14428
14658
  __self: this,
14429
14659
  __source: {
14430
14660
  fileName: _jsxFileName$h,
14431
- lineNumber: 347,
14432
- columnNumber: 21
14661
+ lineNumber: 401,
14662
+ columnNumber: 27
14433
14663
  }
14434
14664
  }), typeof headerRender === 'string' ? /*#__PURE__*/React__default.createElement(TableHeaderCellContainer // css={{
14435
14665
  // padding:
@@ -14445,16 +14675,16 @@ function Table({
14445
14675
  __self: this,
14446
14676
  __source: {
14447
14677
  fileName: _jsxFileName$h,
14448
- lineNumber: 363,
14449
- columnNumber: 25
14678
+ lineNumber: 417,
14679
+ columnNumber: 31
14450
14680
  }
14451
14681
  }, /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(TableHeadCellContent, {
14452
14682
  heading: "headerTable",
14453
14683
  __self: this,
14454
14684
  __source: {
14455
14685
  fileName: _jsxFileName$h,
14456
- lineNumber: 376,
14457
- columnNumber: 29
14686
+ lineNumber: 430,
14687
+ columnNumber: 35
14458
14688
  }
14459
14689
  }, headerRender.toUpperCase()))) : headerRender);
14460
14690
  }));
@@ -14462,8 +14692,8 @@ function Table({
14462
14692
  __self: this,
14463
14693
  __source: {
14464
14694
  fileName: _jsxFileName$h,
14465
- lineNumber: 392,
14466
- columnNumber: 9
14695
+ lineNumber: 446,
14696
+ columnNumber: 15
14467
14697
  }
14468
14698
  }), page.map((row, i) => {
14469
14699
  var _row$cells$filter;
@@ -14477,17 +14707,19 @@ function Table({
14477
14707
  __self: this,
14478
14708
  __source: {
14479
14709
  fileName: _jsxFileName$h,
14480
- lineNumber: 401,
14481
- columnNumber: 15
14710
+ lineNumber: 456,
14711
+ columnNumber: 21
14482
14712
  }
14483
14713
  }, /*#__PURE__*/React__default.createElement(TableRow, _extends({}, row.getRowProps(), {
14484
14714
  __self: this,
14485
14715
  __source: {
14486
14716
  fileName: _jsxFileName$h,
14487
- lineNumber: 402,
14488
- columnNumber: 17
14717
+ lineNumber: 457,
14718
+ columnNumber: 23
14489
14719
  }
14490
- }), row.cells.filter(cell => !cell.column.isSubRow).map((cell, index) => /*#__PURE__*/React__default.createElement(TableCell, _extends({}, cell.getCellProps(addOnCellStyle(cell.column.id)), {
14720
+ }), row.cells.filter(cell => !cell.column.isSubRow).map((cell, index) => /*#__PURE__*/React__default.createElement(TableCell, _extends({
14721
+ key: cell.column.id
14722
+ }, cell.getCellProps(addOnCellStyle(cell.column.id)), {
14491
14723
  css: {
14492
14724
  // padding: cell.column.accessor && index > 0 ? '0 8px' : '0 20px',
14493
14725
  padding: cell.column.accessor ? '0 8px' : '0 20px'
@@ -14495,8 +14727,8 @@ function Table({
14495
14727
  __self: this,
14496
14728
  __source: {
14497
14729
  fileName: _jsxFileName$h,
14498
- lineNumber: 406,
14499
- columnNumber: 23
14730
+ lineNumber: 461,
14731
+ columnNumber: 29
14500
14732
  }
14501
14733
  }), cell.render('Cell')))), row.isExpanded ? subRowCells.map(cell => /*#__PURE__*/React__default.createElement(TableRow, {
14502
14734
  key: cell.column.id,
@@ -14504,24 +14736,24 @@ function Table({
14504
14736
  __self: this,
14505
14737
  __source: {
14506
14738
  fileName: _jsxFileName$h,
14507
- lineNumber: 419,
14508
- columnNumber: 21
14739
+ lineNumber: 475,
14740
+ columnNumber: 27
14509
14741
  }
14510
14742
  }, leftAddOnCells.map((_, index) => /*#__PURE__*/React__default.createElement("td", {
14511
14743
  key: index,
14512
14744
  __self: this,
14513
14745
  __source: {
14514
14746
  fileName: _jsxFileName$h,
14515
- lineNumber: 421,
14516
- columnNumber: 25
14747
+ lineNumber: 477,
14748
+ columnNumber: 31
14517
14749
  }
14518
14750
  })), /*#__PURE__*/React__default.createElement(React__default.Fragment, {
14519
14751
  key: cell.column.id,
14520
14752
  __self: this,
14521
14753
  __source: {
14522
14754
  fileName: _jsxFileName$h,
14523
- lineNumber: 423,
14524
- columnNumber: 23
14755
+ lineNumber: 479,
14756
+ columnNumber: 29
14525
14757
  }
14526
14758
  }, /*#__PURE__*/React__default.createElement(TableCell, {
14527
14759
  subCell: true,
@@ -14534,16 +14766,16 @@ function Table({
14534
14766
  __self: this,
14535
14767
  __source: {
14536
14768
  fileName: _jsxFileName$h,
14537
- lineNumber: 424,
14538
- columnNumber: 25
14769
+ lineNumber: 480,
14770
+ columnNumber: 31
14539
14771
  }
14540
14772
  }, /*#__PURE__*/React__default.createElement(Paragraph, {
14541
14773
  paragraph: "shortContentBold",
14542
14774
  __self: this,
14543
14775
  __source: {
14544
14776
  fileName: _jsxFileName$h,
14545
- lineNumber: 433,
14546
- columnNumber: 27
14777
+ lineNumber: 489,
14778
+ columnNumber: 33
14547
14779
  }
14548
14780
  }, cell.column.Header)), /*#__PURE__*/React__default.createElement(TableCell, {
14549
14781
  subCell: true,
@@ -14555,39 +14787,39 @@ function Table({
14555
14787
  __self: this,
14556
14788
  __source: {
14557
14789
  fileName: _jsxFileName$h,
14558
- lineNumber: 435,
14559
- columnNumber: 25
14790
+ lineNumber: 491,
14791
+ columnNumber: 31
14560
14792
  }
14561
14793
  }, /*#__PURE__*/React__default.createElement(Paragraph, {
14562
14794
  paragraph: "shortContentRegular",
14563
14795
  __self: this,
14564
14796
  __source: {
14565
14797
  fileName: _jsxFileName$h,
14566
- lineNumber: 443,
14567
- columnNumber: 27
14798
+ lineNumber: 499,
14799
+ columnNumber: 33
14568
14800
  }
14569
14801
  }, cell.render('Cell')))))) : null);
14570
- })), /*#__PURE__*/React__default.createElement(TableFoot, {
14802
+ })), !isInfiniteScroll && /*#__PURE__*/React__default.createElement(TableFoot, {
14571
14803
  __self: this,
14572
14804
  __source: {
14573
14805
  fileName: _jsxFileName$h,
14574
- lineNumber: 453,
14575
- columnNumber: 9
14806
+ lineNumber: 510,
14807
+ columnNumber: 17
14576
14808
  }
14577
14809
  }, /*#__PURE__*/React__default.createElement(TableFootRow, {
14578
14810
  __self: this,
14579
14811
  __source: {
14580
14812
  fileName: _jsxFileName$h,
14581
- lineNumber: 454,
14582
- columnNumber: 11
14813
+ lineNumber: 511,
14814
+ columnNumber: 19
14583
14815
  }
14584
14816
  }, /*#__PURE__*/React__default.createElement(TableFootCell, {
14585
14817
  colSpan: "100%",
14586
14818
  __self: this,
14587
14819
  __source: {
14588
14820
  fileName: _jsxFileName$h,
14589
- lineNumber: 455,
14590
- columnNumber: 13
14821
+ lineNumber: 512,
14822
+ columnNumber: 21
14591
14823
  }
14592
14824
  }, totalData > 0 || isLoading ? renderFooter() : /*#__PURE__*/React__default.createElement(Flex$1, {
14593
14825
  css: {
@@ -14598,8 +14830,8 @@ function Table({
14598
14830
  __self: this,
14599
14831
  __source: {
14600
14832
  fileName: _jsxFileName$h,
14601
- lineNumber: 459,
14602
- columnNumber: 17
14833
+ lineNumber: 516,
14834
+ columnNumber: 25
14603
14835
  }
14604
14836
  }, /*#__PURE__*/React__default.createElement(Paragraph, {
14605
14837
  heading: "shortContentRegular",
@@ -14607,20 +14839,23 @@ function Table({
14607
14839
  __self: this,
14608
14840
  __source: {
14609
14841
  fileName: _jsxFileName$h,
14610
- lineNumber: 466,
14611
- columnNumber: 19
14842
+ lineNumber: 523,
14843
+ columnNumber: 27
14612
14844
  }
14613
- }, emptyDataMessage || 'Tidak ada data'))))))) : /*#__PURE__*/React__default.createElement(MobileTable, {
14845
+ }, emptyDataMessage || 'Tidak ada data')))))))) : /*#__PURE__*/React__default.createElement(MobileTable, {
14846
+ ref: scrollerRef,
14614
14847
  instance: instance,
14848
+ isInfiniteScroll: isInfiniteScroll,
14615
14849
  footer: renderFooter(),
14850
+ infiniteScrollWrapper: renderInfiniteScrollWrapper,
14616
14851
  css: css,
14617
14852
  __self: this,
14618
14853
  __source: {
14619
14854
  fileName: _jsxFileName$h,
14620
- lineNumber: 477,
14621
- columnNumber: 5
14855
+ lineNumber: 536,
14856
+ columnNumber: 9
14622
14857
  }
14623
- });
14858
+ }));
14624
14859
  }
14625
14860
 
14626
14861
  Table.propTypes = {
@@ -14634,12 +14869,17 @@ Table.propTypes = {
14634
14869
  css: PropTypes.object,
14635
14870
  onSelectedChange: PropTypes.func,
14636
14871
  hideDataInfo: PropTypes.bool,
14637
- emptyDataMessage: PropTypes.string
14872
+ emptyDataMessage: PropTypes.string,
14873
+ isInfiniteScroll: PropTypes.bool,
14874
+ hasMoreItems: PropTypes.bool,
14875
+ rowLimit: PropTypes.number
14638
14876
  };
14639
14877
  Table.defaultProps = {
14640
14878
  keyId: 'id',
14641
14879
  pageIndex: 0,
14642
- hideDataInfo: false
14880
+ hideDataInfo: false,
14881
+ hasMoreItems: true,
14882
+ rowLimit: 10
14643
14883
  };
14644
14884
  Table.displayName = 'Table';
14645
14885
 
@@ -15460,7 +15700,7 @@ const rowExpanderColumn = {
15460
15700
 
15461
15701
  var _jsxFileName$e = "/home/majoo-thariq/Majoonians/majoo-ui/packages/react/src/components/table/components/columns/RowMenuColumn.js";
15462
15702
 
15463
- const rowMenuColumn = options => ({
15703
+ const rowMenuColumn = (options, icon) => ({
15464
15704
  id: 'menu',
15465
15705
  Header: () => null,
15466
15706
  Cell: props => {
@@ -15473,7 +15713,7 @@ const rowMenuColumn = options => ({
15473
15713
  __self: undefined,
15474
15714
  __source: {
15475
15715
  fileName: _jsxFileName$e,
15476
- lineNumber: 15,
15716
+ lineNumber: 27,
15477
15717
  columnNumber: 9
15478
15718
  }
15479
15719
  }, /*#__PURE__*/React__default.createElement(DropdownMenuTrigger, {
@@ -15481,7 +15721,7 @@ const rowMenuColumn = options => ({
15481
15721
  __self: undefined,
15482
15722
  __source: {
15483
15723
  fileName: _jsxFileName$e,
15484
- lineNumber: 16,
15724
+ lineNumber: 28,
15485
15725
  columnNumber: 11
15486
15726
  }
15487
15727
  }, /*#__PURE__*/React__default.createElement(Box$1, {
@@ -15494,7 +15734,7 @@ const rowMenuColumn = options => ({
15494
15734
  __self: undefined,
15495
15735
  __source: {
15496
15736
  fileName: _jsxFileName$e,
15497
- lineNumber: 17,
15737
+ lineNumber: 29,
15498
15738
  columnNumber: 13
15499
15739
  }
15500
15740
  }, /*#__PURE__*/React__default.createElement(IconButton, {
@@ -15502,15 +15742,15 @@ const rowMenuColumn = options => ({
15502
15742
  __self: undefined,
15503
15743
  __source: {
15504
15744
  fileName: _jsxFileName$e,
15505
- lineNumber: 18,
15745
+ lineNumber: 30,
15506
15746
  columnNumber: 15
15507
15747
  }
15508
- }, /*#__PURE__*/React__default.createElement(EllipsisHorizontalOutline, {
15748
+ }, icon || /*#__PURE__*/React__default.createElement(EllipsisHorizontalOutline, {
15509
15749
  __self: undefined,
15510
15750
  __source: {
15511
15751
  fileName: _jsxFileName$e,
15512
- lineNumber: 19,
15513
- columnNumber: 17
15752
+ lineNumber: 30,
15753
+ columnNumber: 70
15514
15754
  }
15515
15755
  })))), /*#__PURE__*/React__default.createElement(DropdownMenuContent, {
15516
15756
  onInteractOutside: () => setOpenDrop(false),
@@ -15530,7 +15770,7 @@ const rowMenuColumn = options => ({
15530
15770
  __self: undefined,
15531
15771
  __source: {
15532
15772
  fileName: _jsxFileName$e,
15533
- lineNumber: 23,
15773
+ lineNumber: 33,
15534
15774
  columnNumber: 11
15535
15775
  }
15536
15776
  }, options.map(option => /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(DropdownMenuItem, {
@@ -15542,7 +15782,7 @@ const rowMenuColumn = options => ({
15542
15782
  __self: undefined,
15543
15783
  __source: {
15544
15784
  fileName: _jsxFileName$e,
15545
- lineNumber: 41,
15785
+ lineNumber: 51,
15546
15786
  columnNumber: 17
15547
15787
  }
15548
15788
  }, option.title), /*#__PURE__*/React__default.createElement(DropdownMenuSeparator, {
@@ -15553,7 +15793,7 @@ const rowMenuColumn = options => ({
15553
15793
  __self: undefined,
15554
15794
  __source: {
15555
15795
  fileName: _jsxFileName$e,
15556
- lineNumber: 46,
15796
+ lineNumber: 60,
15557
15797
  columnNumber: 17
15558
15798
  }
15559
15799
  }))))), /*#__PURE__*/React__default.createElement(ModalDialog, {
@@ -15565,7 +15805,7 @@ const rowMenuColumn = options => ({
15565
15805
  __self: undefined,
15566
15806
  __source: {
15567
15807
  fileName: _jsxFileName$e,
15568
- lineNumber: 51,
15808
+ lineNumber: 65,
15569
15809
  columnNumber: 9
15570
15810
  }
15571
15811
  }, /*#__PURE__*/React__default.createElement(ModalDialogTrigger, {
@@ -15573,7 +15813,7 @@ const rowMenuColumn = options => ({
15573
15813
  __self: undefined,
15574
15814
  __source: {
15575
15815
  fileName: _jsxFileName$e,
15576
- lineNumber: 58,
15816
+ lineNumber: 66,
15577
15817
  columnNumber: 11
15578
15818
  }
15579
15819
  }, /*#__PURE__*/React__default.createElement(Box$1, {
@@ -15586,28 +15826,28 @@ const rowMenuColumn = options => ({
15586
15826
  __self: undefined,
15587
15827
  __source: {
15588
15828
  fileName: _jsxFileName$e,
15589
- lineNumber: 59,
15829
+ lineNumber: 67,
15590
15830
  columnNumber: 13
15591
15831
  }
15592
15832
  }, /*#__PURE__*/React__default.createElement(IconButton, {
15593
15833
  __self: undefined,
15594
15834
  __source: {
15595
15835
  fileName: _jsxFileName$e,
15596
- lineNumber: 60,
15836
+ lineNumber: 68,
15597
15837
  columnNumber: 15
15598
15838
  }
15599
- }, /*#__PURE__*/React__default.createElement(EllipsisHorizontalOutline, {
15839
+ }, icon || /*#__PURE__*/React__default.createElement(EllipsisHorizontalOutline, {
15600
15840
  __self: undefined,
15601
15841
  __source: {
15602
15842
  fileName: _jsxFileName$e,
15603
- lineNumber: 61,
15604
- columnNumber: 17
15843
+ lineNumber: 68,
15844
+ columnNumber: 36
15605
15845
  }
15606
15846
  })))), /*#__PURE__*/React__default.createElement(ModalDialogTitle, {
15607
15847
  __self: undefined,
15608
15848
  __source: {
15609
15849
  fileName: _jsxFileName$e,
15610
- lineNumber: 65,
15850
+ lineNumber: 71,
15611
15851
  columnNumber: 11
15612
15852
  }
15613
15853
  }, "Aksi"), /*#__PURE__*/React__default.createElement(ModalDialogContent, {
@@ -15617,7 +15857,7 @@ const rowMenuColumn = options => ({
15617
15857
  __self: undefined,
15618
15858
  __source: {
15619
15859
  fileName: _jsxFileName$e,
15620
- lineNumber: 66,
15860
+ lineNumber: 72,
15621
15861
  columnNumber: 11
15622
15862
  }
15623
15863
  }, /*#__PURE__*/React__default.createElement(Box$1, {
@@ -15632,7 +15872,7 @@ const rowMenuColumn = options => ({
15632
15872
  __self: undefined,
15633
15873
  __source: {
15634
15874
  fileName: _jsxFileName$e,
15635
- lineNumber: 67,
15875
+ lineNumber: 73,
15636
15876
  columnNumber: 13
15637
15877
  }
15638
15878
  }, options.map(option => /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(Box$1, {
@@ -15646,7 +15886,7 @@ const rowMenuColumn = options => ({
15646
15886
  __self: undefined,
15647
15887
  __source: {
15648
15888
  fileName: _jsxFileName$e,
15649
- lineNumber: 70,
15889
+ lineNumber: 76,
15650
15890
  columnNumber: 19
15651
15891
  }
15652
15892
  }, /*#__PURE__*/React__default.createElement(Paragraph, {
@@ -15655,7 +15895,7 @@ const rowMenuColumn = options => ({
15655
15895
  __self: undefined,
15656
15896
  __source: {
15657
15897
  fileName: _jsxFileName$e,
15658
- lineNumber: 71,
15898
+ lineNumber: 85,
15659
15899
  columnNumber: 21
15660
15900
  }
15661
15901
  }, option.title)), /*#__PURE__*/React__default.createElement(Separator$2, {
@@ -15663,7 +15903,7 @@ const rowMenuColumn = options => ({
15663
15903
  __self: undefined,
15664
15904
  __source: {
15665
15905
  fileName: _jsxFileName$e,
15666
- lineNumber: 73,
15906
+ lineNumber: 89,
15667
15907
  columnNumber: 19
15668
15908
  }
15669
15909
  })))))));
@@ -15793,7 +16033,7 @@ const PageDialog = _ref => {
15793
16033
  }
15794
16034
  }, /*#__PURE__*/React__default.createElement(Box$1, {
15795
16035
  css: {
15796
- backgroundColor: isMobile ? '$white' : '$gray150',
16036
+ backgroundColor: isMobile ? '$white' : '$gray50',
15797
16037
  height: '100%',
15798
16038
  display: 'flex',
15799
16039
  flexDirection: 'column'
@@ -18663,8 +18903,8 @@ const Upload = ({
18663
18903
  height
18664
18904
  }) => {
18665
18905
  const isFile = listType === 'file';
18666
- const hiddenFileInput = React__default.useRef(null);
18667
- const [indexReplace, setIndexReplace] = useState(null);
18906
+ const hiddenFileInput = useRef(null);
18907
+ const indexReplace = useRef(null);
18668
18908
  const [errorMessage, setErrorMessage] = useState(null);
18669
18909
  const defaultSize = 200;
18670
18910
  const ContainerUpload = styled('div', {
@@ -18690,6 +18930,11 @@ const Upload = ({
18690
18930
  background: '$bgFailed'
18691
18931
  }
18692
18932
  }
18933
+ },
18934
+ hidden: {
18935
+ true: {
18936
+ display: 'none !important'
18937
+ }
18693
18938
  }
18694
18939
  }
18695
18940
  });
@@ -18723,26 +18968,25 @@ const Upload = ({
18723
18968
  for (let i = 0; i < e.target.files.length; i++) {
18724
18969
  var _onChange, _onChange$then;
18725
18970
 
18726
- if (max && arrFile.length >= max) {
18971
+ if (max && arrFile.length >= max && indexReplace.current === null) {
18727
18972
  break;
18728
18973
  }
18729
18974
 
18730
18975
  let newFile = e.target.files[i];
18731
18976
  newFile.url = URL.createObjectURL(newFile);
18732
-
18733
- if (indexReplace !== null) {
18734
- arrFile[indexReplace] = newFile;
18735
- setIndexReplace(null);
18736
- } else {
18737
- arrFile.push(newFile);
18738
- }
18739
-
18740
18977
  (_onChange = onChange({
18741
18978
  fileList: arrFile,
18742
18979
  file: newFile,
18743
- indexReplace,
18744
- isReplace: indexReplace !== null
18980
+ indexReplace: indexReplace.current,
18981
+ isReplace: indexReplace.current !== null
18745
18982
  })) === null || _onChange === void 0 ? void 0 : (_onChange$then = _onChange.then(() => setErrorMessage(null))) === null || _onChange$then === void 0 ? void 0 : _onChange$then.catch(error => setErrorMessage(error.message));
18983
+
18984
+ if (indexReplace.current !== null) {
18985
+ arrFile[indexReplace.current] = newFile;
18986
+ indexReplace.current = null;
18987
+ } else {
18988
+ arrFile.push(newFile);
18989
+ }
18746
18990
  }
18747
18991
  }
18748
18992
  }
@@ -18768,7 +19012,7 @@ const Upload = ({
18768
19012
  }
18769
19013
 
18770
19014
  function handleReplace(index) {
18771
- setIndexReplace(index);
19015
+ indexReplace.current = index;
18772
19016
  handleClick();
18773
19017
  }
18774
19018
 
@@ -18788,7 +19032,7 @@ const Upload = ({
18788
19032
  __self: this,
18789
19033
  __source: {
18790
19034
  fileName: _jsxFileName$8,
18791
- lineNumber: 235,
19035
+ lineNumber: 240,
18792
19036
  columnNumber: 7
18793
19037
  }
18794
19038
  }, /*#__PURE__*/React__default.createElement(ButtonText, {
@@ -18797,7 +19041,7 @@ const Upload = ({
18797
19041
  __self: this,
18798
19042
  __source: {
18799
19043
  fileName: _jsxFileName$8,
18800
- lineNumber: 236,
19044
+ lineNumber: 241,
18801
19045
  columnNumber: 9
18802
19046
  }
18803
19047
  }, replaceLabel && replaceLabel.length > 0 ? replaceLabel : `Ubah ${isFile ? 'Berkas' : 'Gambar'}`));
@@ -18810,7 +19054,7 @@ const Upload = ({
18810
19054
  __self: undefined,
18811
19055
  __source: {
18812
19056
  fileName: _jsxFileName$8,
18813
- lineNumber: 246,
19057
+ lineNumber: 251,
18814
19058
  columnNumber: 9
18815
19059
  }
18816
19060
  }, /*#__PURE__*/React__default.createElement(Box$1, {
@@ -18820,7 +19064,7 @@ const Upload = ({
18820
19064
  __self: undefined,
18821
19065
  __source: {
18822
19066
  fileName: _jsxFileName$8,
18823
- lineNumber: 247,
19067
+ lineNumber: 252,
18824
19068
  columnNumber: 11
18825
19069
  }
18826
19070
  }, /*#__PURE__*/React__default.createElement(IconStateFull, {
@@ -18829,7 +19073,7 @@ const Upload = ({
18829
19073
  __self: undefined,
18830
19074
  __source: {
18831
19075
  fileName: _jsxFileName$8,
18832
- lineNumber: 248,
19076
+ lineNumber: 253,
18833
19077
  columnNumber: 13
18834
19078
  }
18835
19079
  }), /*#__PURE__*/React__default.createElement(Box$1, {
@@ -18842,7 +19086,7 @@ const Upload = ({
18842
19086
  __self: undefined,
18843
19087
  __source: {
18844
19088
  fileName: _jsxFileName$8,
18845
- lineNumber: 249,
19089
+ lineNumber: 254,
18846
19090
  columnNumber: 13
18847
19091
  }
18848
19092
  }, /*#__PURE__*/React__default.createElement(IconStateFull, {
@@ -18851,7 +19095,7 @@ const Upload = ({
18851
19095
  __self: undefined,
18852
19096
  __source: {
18853
19097
  fileName: _jsxFileName$8,
18854
- lineNumber: 257,
19098
+ lineNumber: 262,
18855
19099
  columnNumber: 15
18856
19100
  }
18857
19101
  })), /*#__PURE__*/React__default.createElement(Image, {
@@ -18859,7 +19103,7 @@ const Upload = ({
18859
19103
  __self: undefined,
18860
19104
  __source: {
18861
19105
  fileName: _jsxFileName$8,
18862
- lineNumber: 259,
19106
+ lineNumber: 264,
18863
19107
  columnNumber: 13
18864
19108
  }
18865
19109
  })), renderButtonReplace(index));
@@ -18873,7 +19117,7 @@ const Upload = ({
18873
19117
  __self: undefined,
18874
19118
  __source: {
18875
19119
  fileName: _jsxFileName$8,
18876
- lineNumber: 270,
19120
+ lineNumber: 275,
18877
19121
  columnNumber: 9
18878
19122
  }
18879
19123
  }, /*#__PURE__*/React__default.createElement(Box$1, {
@@ -18883,7 +19127,7 @@ const Upload = ({
18883
19127
  __self: undefined,
18884
19128
  __source: {
18885
19129
  fileName: _jsxFileName$8,
18886
- lineNumber: 271,
19130
+ lineNumber: 276,
18887
19131
  columnNumber: 11
18888
19132
  }
18889
19133
  }, /*#__PURE__*/React__default.createElement(IconStateFull, {
@@ -18892,7 +19136,7 @@ const Upload = ({
18892
19136
  __self: undefined,
18893
19137
  __source: {
18894
19138
  fileName: _jsxFileName$8,
18895
- lineNumber: 272,
19139
+ lineNumber: 277,
18896
19140
  columnNumber: 13
18897
19141
  }
18898
19142
  }), /*#__PURE__*/React__default.createElement(Box$1, {
@@ -18905,7 +19149,7 @@ const Upload = ({
18905
19149
  __self: undefined,
18906
19150
  __source: {
18907
19151
  fileName: _jsxFileName$8,
18908
- lineNumber: 273,
19152
+ lineNumber: 278,
18909
19153
  columnNumber: 13
18910
19154
  }
18911
19155
  }, /*#__PURE__*/React__default.createElement(Flex$1, {
@@ -18915,7 +19159,7 @@ const Upload = ({
18915
19159
  __self: undefined,
18916
19160
  __source: {
18917
19161
  fileName: _jsxFileName$8,
18918
- lineNumber: 281,
19162
+ lineNumber: 286,
18919
19163
  columnNumber: 15
18920
19164
  }
18921
19165
  }, /*#__PURE__*/React__default.createElement(CheckIcon, {
@@ -18923,7 +19167,7 @@ const Upload = ({
18923
19167
  __self: undefined,
18924
19168
  __source: {
18925
19169
  fileName: _jsxFileName$8,
18926
- lineNumber: 282,
19170
+ lineNumber: 287,
18927
19171
  columnNumber: 17
18928
19172
  }
18929
19173
  }), /*#__PURE__*/React__default.createElement(Text, {
@@ -18937,14 +19181,14 @@ const Upload = ({
18937
19181
  __self: undefined,
18938
19182
  __source: {
18939
19183
  fileName: _jsxFileName$8,
18940
- lineNumber: 283,
19184
+ lineNumber: 288,
18941
19185
  columnNumber: 17
18942
19186
  }
18943
19187
  }, item.name))), /*#__PURE__*/React__default.createElement(Blank, {
18944
19188
  __self: undefined,
18945
19189
  __source: {
18946
19190
  fileName: _jsxFileName$8,
18947
- lineNumber: 296,
19191
+ lineNumber: 301,
18948
19192
  columnNumber: 13
18949
19193
  }
18950
19194
  })), renderButtonReplace(index));
@@ -18956,16 +19200,17 @@ const Upload = ({
18956
19200
  __self: this,
18957
19201
  __source: {
18958
19202
  fileName: _jsxFileName$8,
18959
- lineNumber: 306,
19203
+ lineNumber: 311,
18960
19204
  columnNumber: 7
18961
19205
  }
18962
19206
  }, /*#__PURE__*/React__default.createElement(ContainerUpload, {
19207
+ hidden: max ? fileList.length >= max ? true : false : false,
18963
19208
  showError: errorMessage !== null,
18964
19209
  onClick: handleClick,
18965
19210
  __self: this,
18966
19211
  __source: {
18967
19212
  fileName: _jsxFileName$8,
18968
- lineNumber: 307,
19213
+ lineNumber: 312,
18969
19214
  columnNumber: 9
18970
19215
  }
18971
19216
  }, /*#__PURE__*/React__default.createElement(Input, {
@@ -18976,49 +19221,49 @@ const Upload = ({
18976
19221
  __self: this,
18977
19222
  __source: {
18978
19223
  fileName: _jsxFileName$8,
18979
- lineNumber: 308,
19224
+ lineNumber: 317,
18980
19225
  columnNumber: 11
18981
19226
  }
18982
19227
  }), /*#__PURE__*/React__default.createElement(Children, {
18983
19228
  __self: this,
18984
19229
  __source: {
18985
19230
  fileName: _jsxFileName$8,
18986
- lineNumber: 309,
19231
+ lineNumber: 318,
18987
19232
  columnNumber: 11
18988
19233
  }
18989
19234
  }, children != null ? children : /*#__PURE__*/React__default.createElement(React__default.Fragment, {
18990
19235
  __self: this,
18991
19236
  __source: {
18992
19237
  fileName: _jsxFileName$8,
18993
- lineNumber: 311,
19238
+ lineNumber: 320,
18994
19239
  columnNumber: 15
18995
19240
  }
18996
19241
  }, /*#__PURE__*/React__default.createElement(IconCard, {
18997
19242
  __self: this,
18998
19243
  __source: {
18999
19244
  fileName: _jsxFileName$8,
19000
- lineNumber: 312,
19245
+ lineNumber: 321,
19001
19246
  columnNumber: 17
19002
19247
  }
19003
19248
  }, /*#__PURE__*/React__default.createElement(UploadOutline, {
19004
19249
  __self: this,
19005
19250
  __source: {
19006
19251
  fileName: _jsxFileName$8,
19007
- lineNumber: 313,
19252
+ lineNumber: 322,
19008
19253
  columnNumber: 19
19009
19254
  }
19010
19255
  })), /*#__PURE__*/React__default.createElement(Text, {
19011
19256
  __self: this,
19012
19257
  __source: {
19013
19258
  fileName: _jsxFileName$8,
19014
- lineNumber: 315,
19259
+ lineNumber: 324,
19015
19260
  columnNumber: 17
19016
19261
  }
19017
19262
  }, `Pilih atau letakkan ${isFile ? 'berkas' : 'gambar'} anda disini`)))), errorMessage && /*#__PURE__*/React__default.createElement(ErrorMessage, {
19018
19263
  __self: this,
19019
19264
  __source: {
19020
19265
  fileName: _jsxFileName$8,
19021
- lineNumber: 320,
19266
+ lineNumber: 329,
19022
19267
  columnNumber: 26
19023
19268
  }
19024
19269
  }, errorMessage));
@@ -19034,10 +19279,10 @@ const Upload = ({
19034
19279
  __self: undefined,
19035
19280
  __source: {
19036
19281
  fileName: _jsxFileName$8,
19037
- lineNumber: 326,
19282
+ lineNumber: 335,
19038
19283
  columnNumber: 5
19039
19284
  }
19040
- }, !isFile && renderPicture(), isFile && renderFile(), max ? fileList.length >= max ? null : renderUpload() : renderUpload());
19285
+ }, !isFile && renderPicture(), isFile && renderFile(), renderUpload());
19041
19286
  };
19042
19287
 
19043
19288
  Upload.defaultProps = {
@@ -22441,51 +22686,6 @@ const StepWizard = props => {
22441
22686
  }), void 0);
22442
22687
  };
22443
22688
 
22444
- const useTableOfContent = (rootMargin, isMobile) => {
22445
- const [activeId, setActiveId] = useState();
22446
- const headingElementsRef = useRef({});
22447
- useEffect(() => {
22448
- const margin = Object.assign({
22449
- top: '0px',
22450
- right: '0px',
22451
- bottom: '-200px',
22452
- left: '0px'
22453
- }, rootMargin);
22454
-
22455
- const callback = headings => {
22456
- headingElementsRef.current = headings.reduce((map, headingElement) => {
22457
- map[headingElement.target.id] = headingElement;
22458
- return map;
22459
- }, headingElementsRef.current);
22460
- const visibleHeadings = [];
22461
- Object.keys(headingElementsRef.current).forEach(key => {
22462
- const headingElement = headingElementsRef.current[key];
22463
- if (headingElement.isIntersecting) visibleHeadings.push(headingElement);
22464
- });
22465
-
22466
- const getIndexFromId = id => headingElements.findIndex(heading => heading.id === id);
22467
-
22468
- if (visibleHeadings.length === 1) {
22469
- setActiveId(visibleHeadings[0].target.id);
22470
- } else if (visibleHeadings.length > 1) {
22471
- const sortedVisibleHeadings = visibleHeadings.sort((a, b) => getIndexFromId(a.target.id) > getIndexFromId(b.target.id));
22472
- setActiveId(sortedVisibleHeadings[0].target.id);
22473
- }
22474
- };
22475
-
22476
- const observer = new IntersectionObserver(callback, {
22477
- rootMargin: `${margin.top} ${margin.right} ${margin.bottom} ${margin.left}`
22478
- });
22479
- const headingElements = Array.from(document.querySelectorAll('h2, h3, section'));
22480
- headingElements.forEach(element => {
22481
- observer.observe(element);
22482
- element.style.scrollMarginTop = `${Math.abs(parseInt(margin.top)) + 20}px`;
22483
- });
22484
- return () => observer.disconnect();
22485
- }, [setActiveId, rootMargin, isMobile]);
22486
- return [activeId];
22487
- };
22488
-
22489
22689
  var _jsxFileName$2 = "/home/majoo-thariq/Majoonians/majoo-ui/packages/react/src/components/tableOfContent/transition.js";
22490
22690
 
22491
22691
  function Collapse({
@@ -22534,6 +22734,9 @@ Collapse.defaultProps = {
22534
22734
  var _jsxFileName$1 = "/home/majoo-thariq/Majoonians/majoo-ui/packages/react/src/components/tableOfContent/TableOfContent.js";
22535
22735
  const DesktopContainer = styled(Flex$1, {
22536
22736
  display: 'none',
22737
+ '& .active-scroll-spy': {
22738
+ borderLeft: '4px solid #04c99e !important'
22739
+ },
22537
22740
  '@md': {
22538
22741
  display: 'unset'
22539
22742
  }
@@ -22542,9 +22745,12 @@ const MobileContainer = styled(Flex$1, {
22542
22745
  backgroundColor: '$white',
22543
22746
  border: '1px solid #EEF0F0',
22544
22747
  borderRadius: 8,
22545
- padding: '6.5px 8px',
22748
+ padding: '8px 8px',
22546
22749
  width: '100%',
22547
22750
  transition: '0.4s max-height',
22751
+ '& .active-scroll-spy': {
22752
+ borderLeft: '4px solid #04c99e !important'
22753
+ },
22548
22754
  '@md': {
22549
22755
  display: 'none'
22550
22756
  }
@@ -22557,24 +22763,24 @@ const ListWrap = styled('ul', {
22557
22763
  });
22558
22764
  const List = styled('li', {
22559
22765
  '&:not(:last-child)': {
22560
- marginBottom: 16
22766
+ marginBottom: 20
22561
22767
  }
22562
22768
  });
22563
22769
  const Title = styled('a', {
22564
22770
  fontWeight: '600',
22565
22771
  fontSize: '$short-content-bold',
22566
- color: '$textDisable',
22567
- padding: '4px 0px',
22772
+ color: '$textDisable !important',
22568
22773
  paddingRight: 2,
22569
22774
  transitionDuration: '0.1s',
22570
22775
  userSelect: 'none',
22776
+ textDecoration: 'none !important',
22777
+ '&:hover': {
22778
+ color: '$gray300 !important'
22779
+ },
22571
22780
  variants: {
22572
22781
  active: {
22573
22782
  true: {
22574
- color: '$textGreen'
22575
- },
22576
- false: {
22577
- color: '$textDisable'
22783
+ color: '$textGreen !important'
22578
22784
  }
22579
22785
  }
22580
22786
  }
@@ -22582,17 +22788,12 @@ const Title = styled('a', {
22582
22788
  const Separator = styled('div', {
22583
22789
  width: 4,
22584
22790
  borderRadius: 2,
22585
- backgroundColor: '$gray150',
22586
- transitionDuration: '0.1s',
22791
+ backgroundColor: '$gray150 !important',
22792
+ transitionDuration: '0.2s',
22587
22793
  variants: {
22588
- active: {
22589
- true: {
22590
- backgroundColor: '$bgGreen',
22591
- marginLeft: -4
22592
- },
22794
+ isCollapse: {
22593
22795
  false: {
22594
- backgroundColor: 'transparent',
22595
- marginLeft: -4
22796
+ backgroundColor: '$primary500 !important'
22596
22797
  }
22597
22798
  }
22598
22799
  }
@@ -22601,7 +22802,8 @@ const Separator = styled('div', {
22601
22802
  function Content({
22602
22803
  content,
22603
22804
  activeId,
22604
- isCollapse
22805
+ isCollapse,
22806
+ isDialog
22605
22807
  }) {
22606
22808
  var _getDatasets;
22607
22809
 
@@ -22630,21 +22832,25 @@ function Content({
22630
22832
  __self: this,
22631
22833
  __source: {
22632
22834
  fileName: _jsxFileName$1,
22633
- lineNumber: 96,
22835
+ lineNumber: 93,
22634
22836
  columnNumber: 5
22635
22837
  }
22636
22838
  }, /*#__PURE__*/React__default.createElement(Separator, {
22839
+ isCollapse: isCollapse,
22637
22840
  __self: this,
22638
22841
  __source: {
22639
22842
  fileName: _jsxFileName$1,
22640
- lineNumber: 97,
22843
+ lineNumber: 94,
22641
22844
  columnNumber: 7
22642
22845
  }
22643
22846
  }), /*#__PURE__*/React__default.createElement(ListWrap, {
22847
+ css: {
22848
+ position: 'relative'
22849
+ },
22644
22850
  __self: this,
22645
22851
  __source: {
22646
22852
  fileName: _jsxFileName$1,
22647
- lineNumber: 98,
22853
+ lineNumber: 95,
22648
22854
  columnNumber: 7
22649
22855
  }
22650
22856
  }, (_getDatasets = getDatasets(content, activeId, isCollapse)) === null || _getDatasets === void 0 ? void 0 : _getDatasets.map((item, index) => {
@@ -22653,54 +22859,79 @@ function Content({
22653
22859
  __self: this,
22654
22860
  __source: {
22655
22861
  fileName: _jsxFileName$1,
22656
- lineNumber: 101,
22862
+ lineNumber: 98,
22657
22863
  columnNumber: 13
22658
22864
  }
22659
22865
  }, /*#__PURE__*/React__default.createElement(Flex$1, {
22660
22866
  direction: "row",
22661
22867
  gap: 5,
22868
+ align: "center",
22869
+ css: {
22870
+ minHeight: 25
22871
+ },
22662
22872
  __self: this,
22663
22873
  __source: {
22664
22874
  fileName: _jsxFileName$1,
22665
- lineNumber: 102,
22875
+ lineNumber: 99,
22666
22876
  columnNumber: 15
22667
22877
  }
22668
- }, /*#__PURE__*/React__default.createElement(Separator, {
22878
+ }, /*#__PURE__*/React__default.createElement(Title, {
22669
22879
  active: (item === null || item === void 0 ? void 0 : item.id) === activeId,
22880
+ href: `#${item === null || item === void 0 ? void 0 : item.id}`,
22881
+ onClick: e => {
22882
+ e.preventDefault();
22883
+ const target = window.document.getElementById(e.currentTarget.href.split('#')[1]);
22884
+
22885
+ if (target) {
22886
+ var headerOffset = 20;
22887
+ var elementPosition = target.getBoundingClientRect().top;
22888
+ var offsetPosition = elementPosition - headerOffset;
22889
+
22890
+ if (!isDialog) {
22891
+ window.scrollBy({
22892
+ top: offsetPosition,
22893
+ behavior: 'smooth'
22894
+ });
22895
+ } else {
22896
+ target.scrollIntoView({
22897
+ behavior: 'smooth',
22898
+ block: 'start'
22899
+ });
22900
+ }
22901
+ }
22902
+ },
22670
22903
  __self: this,
22671
22904
  __source: {
22672
22905
  fileName: _jsxFileName$1,
22673
- lineNumber: 103,
22906
+ lineNumber: 100,
22674
22907
  columnNumber: 17
22675
22908
  }
22676
- }), /*#__PURE__*/React__default.createElement(Title, {
22677
- active: (item === null || item === void 0 ? void 0 : item.id) === activeId,
22678
- href: `#${item === null || item === void 0 ? void 0 : item.id}`,
22679
- onClick: e => {
22680
- var _document$querySelect;
22681
-
22682
- e.preventDefault();
22683
- (_document$querySelect = document.querySelector(`#${item === null || item === void 0 ? void 0 : item.id}`)) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.scrollIntoView({
22684
- behavior: 'smooth'
22685
- });
22909
+ }, /*#__PURE__*/React__default.createElement(Box$1, {
22910
+ css: {
22911
+ marginLeft: '-4px !important',
22912
+ borderLeftWidth: '4px !important',
22913
+ borderLeftStyle: 'solid !important',
22914
+ borderLeftColor: 'transparent !important',
22915
+ paddingLeft: '16px !important'
22686
22916
  },
22917
+ "data-to-scrollspy-id": item === null || item === void 0 ? void 0 : item.id,
22687
22918
  __self: this,
22688
22919
  __source: {
22689
22920
  fileName: _jsxFileName$1,
22690
- lineNumber: 104,
22691
- columnNumber: 17
22921
+ lineNumber: 121,
22922
+ columnNumber: 19
22692
22923
  }
22693
- }, item === null || item === void 0 ? void 0 : item.title), item === null || item === void 0 ? void 0 : item.icon));
22924
+ }, item === null || item === void 0 ? void 0 : item.title)), item === null || item === void 0 ? void 0 : item.icon));
22694
22925
  })));
22695
22926
  }
22696
22927
 
22697
22928
  function TableOfContent({
22698
22929
  content,
22699
- rootMargin,
22700
22930
  css,
22701
- isMobile
22931
+ isMobile,
22932
+ isDialog,
22933
+ activeId
22702
22934
  }) {
22703
- const [activeId] = useTableOfContent(rootMargin, isMobile);
22704
22935
  const [mobileCollapse, setMobileCollapse] = useState(false);
22705
22936
 
22706
22937
  function toggleCollapse() {
@@ -22710,22 +22941,24 @@ function TableOfContent({
22710
22941
  return isMobile ? /*#__PURE__*/React__default.createElement(MobileContainer, {
22711
22942
  direction: "row",
22712
22943
  justify: "between",
22944
+ align: "center",
22713
22945
  css: css,
22714
22946
  onClick: toggleCollapse,
22715
22947
  __self: this,
22716
22948
  __source: {
22717
22949
  fileName: _jsxFileName$1,
22718
- lineNumber: 135,
22950
+ lineNumber: 152,
22719
22951
  columnNumber: 5
22720
22952
  }
22721
22953
  }, /*#__PURE__*/React__default.createElement(Content, {
22954
+ activeId: activeId,
22722
22955
  isCollapse: mobileCollapse,
22956
+ isDialog: isDialog,
22723
22957
  content: content,
22724
- activeId: activeId,
22725
22958
  __self: this,
22726
22959
  __source: {
22727
22960
  fileName: _jsxFileName$1,
22728
- lineNumber: 136,
22961
+ lineNumber: 153,
22729
22962
  columnNumber: 7
22730
22963
  }
22731
22964
  }), /*#__PURE__*/React__default.createElement(ChevronDownOutline, {
@@ -22735,7 +22968,7 @@ function TableOfContent({
22735
22968
  __self: this,
22736
22969
  __source: {
22737
22970
  fileName: _jsxFileName$1,
22738
- lineNumber: 137,
22971
+ lineNumber: 154,
22739
22972
  columnNumber: 7
22740
22973
  }
22741
22974
  })) : /*#__PURE__*/React__default.createElement(DesktopContainer, {
@@ -22744,28 +22977,33 @@ function TableOfContent({
22744
22977
  __self: this,
22745
22978
  __source: {
22746
22979
  fileName: _jsxFileName$1,
22747
- lineNumber: 140,
22980
+ lineNumber: 157,
22748
22981
  columnNumber: 5
22749
22982
  }
22750
22983
  }, /*#__PURE__*/React__default.createElement(Content, {
22751
22984
  isCollapse: true,
22985
+ isDialog: isDialog,
22752
22986
  content: content,
22753
- activeId: activeId,
22754
22987
  __self: this,
22755
22988
  __source: {
22756
22989
  fileName: _jsxFileName$1,
22757
- lineNumber: 141,
22990
+ lineNumber: 158,
22758
22991
  columnNumber: 7
22759
22992
  }
22760
22993
  }));
22761
22994
  }
22995
+
22996
+ const Page = styled(ScrollSpy);
22997
+ Page.displayName = 'TableOfContent.Page';
22998
+ TableOfContent.Page = Page;
22762
22999
  TableOfContent.defaultProps = {
22763
23000
  isMobile: false
22764
23001
  };
22765
23002
  TableOfContent.propTypes = {
22766
23003
  content: PropTypes.array,
22767
23004
  isMobile: PropTypes.bool,
22768
- rootMarin: PropTypes.object
23005
+ isDialog: PropTypes.bool,
23006
+ activeId: PropTypes.string
22769
23007
  };
22770
23008
 
22771
23009
  var _jsxFileName = "/home/majoo-thariq/Majoonians/majoo-ui/packages/react/src/colors/Colors.js";
@@ -22877,4 +23115,4 @@ const Colors = props => {
22877
23115
  }, i.hex))));
22878
23116
  };
22879
23117
 
22880
- 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$1 as Box, Breadcrumb, BreadcrumbItem, BreadcrumbLink, Button$2 as Button, ButtonDropdown, ButtonGroup$1 as ButtonGroup, ButtonGroupItem, ButtonPrimitive, Card, CardComponent, CardLineColor, CheckboxGroup, ColorPicker$1 as ColorPicker, Colors, 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, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuTrigger, DropdownMenuTriggerItem, Flex$1 as Flex, FormGroup, FormHelper, FormLabel, Grid, GridItem, Heading, IconButton, Image, ImageDevicePreview, InputCheckbox, InputColorPicker, InputCreatable, InputDatePicker, InputGroup, InputLeftAddon, InputLeftElement, InputPrefix, InputRadio, InputRadioGroup, InputResourceList, InputRightAddon, InputRightElement, InputSearchbox, Select$1 as InputSelect, InputSelectTag, InputSuffix, InputSwitch, TagsInput as InputTags, InputText, InputTextArea, Link, MajooProvider, MobileTable, ModalDialog, ModalDialogContent, ModalDialogFooter, ModalDialogTitle, ModalDialogTrigger, NativeTimePicker, NotificationBadge, PageContainer, PageDialog, PageDialogContent, PageDialogFooter, PageDialogTitle, PageDialogTrigger, Pagination, Paper, PaperComponent, Paragraph, Popover, PopoverClose, PopoverContent, PopoverTrigger, PriceColumn, Progress, RANGE_PICKER, RightSlot, rowExpanderColumn as RowExpanderColumn, rowMenuColumn as RowMenuColumn, rowSelectionColumn as RowSelectionColumn, SINGLE_PICKER, Separator$2 as Separator, Slider, StepWizard, StepWizardContext, StyledBox, StyledDropdown, StyledSpan, StyledTitle$2 as StyledTitle, TOP_LEFT_POSITION, TOP_RIGHT_POSITION, Table, TableBody, TableContent, TableFoot, TableFootCell, TableFootRow, TableHead, TableHeadCellContent, TableHeaderCellContainer, TableOfContent, Tabs$1 as Tabs, TabsContent$1 as TabsContent, TabsList$1 as TabsList, TabsTrigger$1 as TabsTrigger, Tag, TagStatus, Text$1 as Text, TimePicker, ToastContext, Tooltip, Upload, addOnCellStyle, defaultFetchDataParams, useTableOfContent };
23118
+ 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$1 as Box, Breadcrumb, BreadcrumbItem, BreadcrumbLink, Button$2 as Button, ButtonDropdown, ButtonGroup$1 as ButtonGroup, ButtonGroupItem, ButtonPrimitive, Card, CardComponent, CardLineColor, CheckboxGroup, ColorPicker$1 as ColorPicker, Colors, 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, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuTrigger, DropdownMenuTriggerItem, Flex$1 as Flex, FormGroup, FormHelper, FormLabel, Grid, GridItem, Heading, IconButton, Image, ImageDevicePreview, InputCheckbox, InputColorPicker, InputCreatable, InputDatePicker, InputGroup, InputLeftAddon, InputLeftElement, InputNumber, InputPrefix, InputRadio, InputRadioGroup, InputResourceList, InputRightAddon, InputRightElement, InputSearchbox, Select$1 as InputSelect, InputSelectTag, InputSuffix, InputSwitch, TagsInput as InputTags, InputText, InputTextArea, Link, MajooProvider, MobileTable, ModalDialog, ModalDialogContent, ModalDialogFooter, ModalDialogTitle, ModalDialogTrigger, NativeTimePicker, NotificationBadge, PageContainer, PageDialog, PageDialogContent, PageDialogFooter, PageDialogTitle, PageDialogTrigger, Pagination, Paper, PaperComponent, Paragraph, Popover, PopoverClose, PopoverContent, PopoverTrigger, PriceColumn, Progress, RANGE_PICKER, RightSlot, rowExpanderColumn as RowExpanderColumn, rowMenuColumn as RowMenuColumn, rowSelectionColumn as RowSelectionColumn, SINGLE_PICKER, Separator$2 as Separator, Slider, StepWizard, StepWizardContext, StyledBox, StyledDropdown, StyledSpan, StyledTitle$2 as StyledTitle, TOP_LEFT_POSITION, TOP_RIGHT_POSITION, Table, TableBody, TableContent, TableFoot, TableFootCell, TableFootRow, TableHead, TableHeadCellContent, TableHeaderCellContainer, TableOfContent, Tabs$1 as Tabs, TabsContent$1 as TabsContent, TabsList$1 as TabsList, TabsTrigger$1 as TabsTrigger, Tag, TagStatus, Text$1 as Text, TimePicker, ToastContext, Tooltip, Upload, addOnCellStyle, defaultFetchDataParams };