@economic/taco 1.1.4 → 1.1.5-alpha.102

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (160) hide show
  1. package/README.md +82 -82
  2. package/dist/components/Icon/components/LogOut.d.ts +3 -0
  3. package/dist/components/Icon/components/Menu.d.ts +3 -0
  4. package/dist/components/Icon/components/Numbers.d.ts +3 -0
  5. package/dist/components/Icon/components/Profile.d.ts +3 -0
  6. package/dist/components/Icon/components/index.d.ts +1 -1
  7. package/dist/components/Input/Input.d.ts +1 -1
  8. package/dist/components/Menu/Menu.d.ts +2 -2
  9. package/dist/components/Menu/components/Item.d.ts +1 -1
  10. package/dist/components/Menu/components/Link.d.ts +1 -1
  11. package/dist/components/Tour/Tour.d.ts +2 -0
  12. package/dist/esm/components/Banner/util.js +1 -1
  13. package/dist/esm/components/Banner/util.js.map +1 -1
  14. package/dist/esm/components/Button/util.js +18 -23
  15. package/dist/esm/components/Button/util.js.map +1 -1
  16. package/dist/esm/components/Card/Card.js +3 -0
  17. package/dist/esm/components/Card/Card.js.map +1 -1
  18. package/dist/esm/components/Combobox/Combobox.js +1 -0
  19. package/dist/esm/components/Combobox/Combobox.js.map +1 -1
  20. package/dist/esm/components/Combobox/useCombobox.js +67 -87
  21. package/dist/esm/components/Combobox/useCombobox.js.map +1 -1
  22. package/dist/esm/components/Datepicker/useDatepicker.js +27 -34
  23. package/dist/esm/components/Datepicker/useDatepicker.js.map +1 -1
  24. package/dist/esm/components/Dialog/Context.js +4 -4
  25. package/dist/esm/components/Dialog/Context.js.map +1 -1
  26. package/dist/esm/components/Dialog/components/Content.js +39 -44
  27. package/dist/esm/components/Dialog/components/Content.js.map +1 -1
  28. package/dist/esm/components/Dialog/components/Drawer.js +3 -3
  29. package/dist/esm/components/Dialog/components/Drawer.js.map +1 -1
  30. package/dist/esm/components/Dialog/components/Extra.js +2 -2
  31. package/dist/esm/components/Dialog/components/Extra.js.map +1 -1
  32. package/dist/esm/components/Dialog/components/Trigger.js +3 -3
  33. package/dist/esm/components/Dialog/components/Trigger.js.map +1 -1
  34. package/dist/esm/components/Hanger/Hanger.js +1 -1
  35. package/dist/esm/components/Hanger/Hanger.js.map +1 -1
  36. package/dist/esm/components/Icon/components/LogOut.js +20 -0
  37. package/dist/esm/components/Icon/components/LogOut.js.map +1 -0
  38. package/dist/esm/components/Icon/components/Menu.js +18 -0
  39. package/dist/esm/components/Icon/components/Menu.js.map +1 -0
  40. package/dist/esm/components/Icon/components/Numbers.js +18 -0
  41. package/dist/esm/components/Icon/components/Numbers.js.map +1 -0
  42. package/dist/esm/components/Icon/components/Profile.js +20 -0
  43. package/dist/esm/components/Icon/components/Profile.js.map +1 -0
  44. package/dist/esm/components/Icon/components/index.js +12 -4
  45. package/dist/esm/components/Icon/components/index.js.map +1 -1
  46. package/dist/esm/components/Input/util.js +2 -2
  47. package/dist/esm/components/Input/util.js.map +1 -1
  48. package/dist/esm/components/Listbox/ScrollableList.js +64 -83
  49. package/dist/esm/components/Listbox/ScrollableList.js.map +1 -1
  50. package/dist/esm/components/Listbox/useListbox.js +51 -60
  51. package/dist/esm/components/Listbox/useListbox.js.map +1 -1
  52. package/dist/esm/components/Listbox/useMultiListbox.js +64 -91
  53. package/dist/esm/components/Listbox/useMultiListbox.js.map +1 -1
  54. package/dist/esm/components/Listbox/useTypeahead.js +10 -9
  55. package/dist/esm/components/Listbox/useTypeahead.js.map +1 -1
  56. package/dist/esm/components/Listbox/util.js +48 -85
  57. package/dist/esm/components/Listbox/util.js.map +1 -1
  58. package/dist/esm/components/Menu/Context.js +2 -2
  59. package/dist/esm/components/Menu/Context.js.map +1 -1
  60. package/dist/esm/components/Menu/components/Checkbox.js +9 -10
  61. package/dist/esm/components/Menu/components/Checkbox.js.map +1 -1
  62. package/dist/esm/components/Menu/components/Content.js +9 -11
  63. package/dist/esm/components/Menu/components/Content.js.map +1 -1
  64. package/dist/esm/components/Menu/components/Header.js +3 -3
  65. package/dist/esm/components/Menu/components/Header.js.map +1 -1
  66. package/dist/esm/components/Menu/components/Item.js +30 -31
  67. package/dist/esm/components/Menu/components/Item.js.map +1 -1
  68. package/dist/esm/components/Menu/components/Link.js +10 -11
  69. package/dist/esm/components/Menu/components/Link.js.map +1 -1
  70. package/dist/esm/components/Menu/components/RadioGroup.js +17 -19
  71. package/dist/esm/components/Menu/components/RadioGroup.js.map +1 -1
  72. package/dist/esm/components/Menu/components/Separator.js +1 -1
  73. package/dist/esm/components/Menu/components/Separator.js.map +1 -1
  74. package/dist/esm/components/Menu/components/Trigger.js +4 -4
  75. package/dist/esm/components/Menu/components/Trigger.js.map +1 -1
  76. package/dist/esm/components/Pagination/PageNumbers.js +23 -28
  77. package/dist/esm/components/Pagination/PageNumbers.js.map +1 -1
  78. package/dist/esm/components/Pagination/usePagination.js +7 -21
  79. package/dist/esm/components/Pagination/usePagination.js.map +1 -1
  80. package/dist/esm/components/Pagination/usePaginationShortcuts.js +9 -9
  81. package/dist/esm/components/Pagination/usePaginationShortcuts.js.map +1 -1
  82. package/dist/esm/components/Popover/Popover.js +1 -1
  83. package/dist/esm/components/Popover/Popover.js.map +1 -1
  84. package/dist/esm/components/Popover/Primitives.js +7 -8
  85. package/dist/esm/components/Popover/Primitives.js.map +1 -1
  86. package/dist/esm/components/SearchInput/SearchInput.js +4 -1
  87. package/dist/esm/components/SearchInput/SearchInput.js.map +1 -1
  88. package/dist/esm/components/Select/useSelect.js +63 -81
  89. package/dist/esm/components/Select/useSelect.js.map +1 -1
  90. package/dist/esm/components/Table/components/BaseTable.js +23 -30
  91. package/dist/esm/components/Table/components/BaseTable.js.map +1 -1
  92. package/dist/esm/components/Table/components/PaginatedTable.js +3 -7
  93. package/dist/esm/components/Table/components/PaginatedTable.js.map +1 -1
  94. package/dist/esm/components/Table/components/Table.js +18 -25
  95. package/dist/esm/components/Table/components/Table.js.map +1 -1
  96. package/dist/esm/components/Table/components/WindowedTable.js +89 -109
  97. package/dist/esm/components/Table/components/WindowedTable.js.map +1 -1
  98. package/dist/esm/components/Table/hooks/plugins/useRowActions.js +122 -146
  99. package/dist/esm/components/Table/hooks/plugins/useRowActions.js.map +1 -1
  100. package/dist/esm/components/Table/hooks/plugins/useRowDraggable.js +57 -61
  101. package/dist/esm/components/Table/hooks/plugins/useRowDraggable.js.map +1 -1
  102. package/dist/esm/components/Table/hooks/plugins/useRowEditing.js +39 -36
  103. package/dist/esm/components/Table/hooks/plugins/useRowEditing.js.map +1 -1
  104. package/dist/esm/components/Table/hooks/plugins/useRowSelect.js +79 -89
  105. package/dist/esm/components/Table/hooks/plugins/useRowSelect.js.map +1 -1
  106. package/dist/esm/components/Table/hooks/useRowCreation.js +29 -64
  107. package/dist/esm/components/Table/hooks/useRowCreation.js.map +1 -1
  108. package/dist/esm/components/Table/hooks/useTable.js +119 -141
  109. package/dist/esm/components/Table/hooks/useTable.js.map +1 -1
  110. package/dist/esm/components/Table/hooks/useTableKeyboardNavigation.js +13 -16
  111. package/dist/esm/components/Table/hooks/useTableKeyboardNavigation.js.map +1 -1
  112. package/dist/esm/components/Table/util/renderColumn.js +10 -10
  113. package/dist/esm/components/Table/util/renderColumn.js.map +1 -1
  114. package/dist/esm/components/Table/util/renderRow.js +37 -46
  115. package/dist/esm/components/Table/util/renderRow.js.map +1 -1
  116. package/dist/esm/components/Table/util/rowIndexPath.js +14 -16
  117. package/dist/esm/components/Table/util/rowIndexPath.js.map +1 -1
  118. package/dist/esm/components/Table/util/sortTypes.js +23 -31
  119. package/dist/esm/components/Table/util/sortTypes.js.map +1 -1
  120. package/dist/esm/components/Table/util.js +29 -41
  121. package/dist/esm/components/Table/util.js.map +1 -1
  122. package/dist/esm/components/Toast/Toast.js +21 -22
  123. package/dist/esm/components/Toast/Toast.js.map +1 -1
  124. package/dist/esm/components/Toast/util.js +2 -2
  125. package/dist/esm/components/Toast/util.js.map +1 -1
  126. package/dist/esm/components/Tour/Tour.js +3 -1
  127. package/dist/esm/components/Tour/Tour.js.map +1 -1
  128. package/dist/esm/index.css +661 -661
  129. package/dist/esm/index.js +4 -1
  130. package/dist/esm/index.js.map +1 -1
  131. package/dist/esm/primitives/Button.js +9 -13
  132. package/dist/esm/primitives/Button.js.map +1 -1
  133. package/dist/esm/utils/date.js.map +1 -1
  134. package/dist/esm/utils/hooks/useBoundingClientRectListener.js.map +1 -1
  135. package/dist/esm/utils/hooks/useDraggable.js +16 -17
  136. package/dist/esm/utils/hooks/useDraggable.js.map +1 -1
  137. package/dist/esm/utils/hooks/useDropTarget.js.map +1 -1
  138. package/dist/esm/utils/hooks/useListKeyboardNavigation.js.map +1 -1
  139. package/dist/esm/utils/hooks/useListScrollTo.js.map +1 -1
  140. package/dist/esm/utils/hooks/useOnClickOutside.js.map +1 -1
  141. package/dist/esm/utils/hooks/useProxiedRef.js.map +1 -1
  142. package/dist/esm/utils/hooks/useTimer.js +9 -17
  143. package/dist/esm/utils/hooks/useTimer.js.map +1 -1
  144. package/dist/esm/utils/input.js +7 -11
  145. package/dist/esm/utils/input.js.map +1 -1
  146. package/dist/esm/utils/mergeRefs.js +1 -1
  147. package/dist/esm/utils/mergeRefs.js.map +1 -1
  148. package/dist/esm/utils/taillwind.js +2 -2
  149. package/dist/esm/utils/taillwind.js.map +1 -1
  150. package/dist/index.css +661 -661
  151. package/dist/index.d.ts +4 -1
  152. package/dist/taco.cjs.development.js +1566 -1823
  153. package/dist/taco.cjs.development.js.map +1 -1
  154. package/dist/taco.cjs.production.min.js +1 -1
  155. package/dist/taco.cjs.production.min.js.map +1 -1
  156. package/dist/utils/mergeRefs.d.ts +1 -1
  157. package/package.json +6 -7
  158. package/plugins/tailwindcss-aria-attributes.js +73 -73
  159. package/tailwind.config.js +9 -0
  160. package/types.json +2612 -7006
@@ -1,14 +1,14 @@
1
- import { extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
1
  import React__default from 'react';
3
2
  import cn from 'classnames';
4
3
  import { Icon } from '../../Icon/Icon.js';
5
4
 
6
- var Column = function Column(_ref) {
7
- var cell = _ref.cell;
8
-
9
- var props = _extends({}, cell.getHeaderProps(), cell.getSortByToggleProps && cell.getSortByToggleProps({
10
- title: undefined
11
- }), {
5
+ const Column = ({
6
+ cell
7
+ }) => {
8
+ const props = { ...cell.getHeaderProps(),
9
+ ...(cell.getSortByToggleProps && cell.getSortByToggleProps({
10
+ title: undefined
11
+ })),
12
12
  className: cn('yt-table__cell flex flex-1 truncate p-2 align-middle text-grey-darkest hover:text-black', cell.className, {
13
13
  'yt-table__cell__group': !!cell.columns,
14
14
  'cursor-pointer': !cell.disableSorting,
@@ -16,10 +16,10 @@ var Column = function Column(_ref) {
16
16
  'justify-end text-right': cell.align === 'right',
17
17
  'justify-center text-center': cell.align === 'center' || !cell.align
18
18
  }),
19
- style: _extends({}, cell.style, {
19
+ style: { ...cell.style,
20
20
  flex: cell.flex
21
- })
22
- });
21
+ }
22
+ };
23
23
 
24
24
  if (cell.isSorted) {
25
25
  props['aria-sort'] = cell.isSortedDesc ? 'descending' : 'ascending';
@@ -1 +1 @@
1
- {"version":3,"file":"renderColumn.js","sources":["../../../../../src/components/Table/util/renderColumn.tsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\nimport { Icon } from '../../Icon/Icon';\n\nexport const Column = ({ cell }: any): any => {\n const props = {\n ...cell.getHeaderProps(),\n ...(cell.getSortByToggleProps && cell.getSortByToggleProps({ title: undefined })),\n className: cn('yt-table__cell flex flex-1 truncate p-2 align-middle text-grey-darkest hover:text-black', cell.className, {\n 'yt-table__cell__group': !!cell.columns,\n 'cursor-pointer': !cell.disableSorting,\n 'justify-start text-left': cell.align === 'left',\n 'justify-end text-right': cell.align === 'right',\n 'justify-center text-center': cell.align === 'center' || !cell.align,\n }),\n style: { ...cell.style, flex: cell.flex },\n };\n\n if (cell.isSorted) {\n props['aria-sort'] = cell.isSortedDesc ? 'descending' : 'ascending';\n }\n\n return (\n <div {...props} key={cell.id} data-taco=\"table-column\">\n <span className=\"truncate\">{cell.render('Header')}</span>\n {cell.isSorted ? (\n <Icon name={cell.isSortedDesc ? 'chevron-down-solid' : 'chevron-up-solid'} className=\"-mt-0.5\" />\n ) : null}\n </div>\n );\n};\n"],"names":["Column","cell","props","getHeaderProps","getSortByToggleProps","title","undefined","className","cn","columns","disableSorting","align","style","flex","isSorted","isSortedDesc","React","key","id","render","Icon","name"],"mappings":";;;;;IAIaA,MAAM,GAAG,SAATA,MAAS;MAAGC,YAAAA;;EACrB,IAAMC,KAAK,gBACJD,IAAI,CAACE,cAAL,EADI,EAEHF,IAAI,CAACG,oBAAL,IAA6BH,IAAI,CAACG,oBAAL,CAA0B;IAAEC,KAAK,EAAEC;GAAnC,CAF1B;IAGPC,SAAS,EAAEC,EAAE,CAAC,yFAAD,EAA4FP,IAAI,CAACM,SAAjG,EAA4G;MACrH,yBAAyB,CAAC,CAACN,IAAI,CAACQ,OADqF;MAErH,kBAAkB,CAACR,IAAI,CAACS,cAF6F;MAGrH,2BAA2BT,IAAI,CAACU,KAAL,KAAe,MAH2E;MAIrH,0BAA0BV,IAAI,CAACU,KAAL,KAAe,OAJ4E;MAKrH,8BAA8BV,IAAI,CAACU,KAAL,KAAe,QAAf,IAA2B,CAACV,IAAI,CAACU;KALtD,CAHN;IAUPC,KAAK,eAAOX,IAAI,CAACW,KAAZ;MAAmBC,IAAI,EAAEZ,IAAI,CAACY;;IAVvC;;EAaA,IAAIZ,IAAI,CAACa,QAAT,EAAmB;IACfZ,KAAK,CAAC,WAAD,CAAL,GAAqBD,IAAI,CAACc,YAAL,GAAoB,YAApB,GAAmC,WAAxD;;;EAGJ,OACIC,4BAAA,MAAA,oBAASd;IAAOe,GAAG,EAAEhB,IAAI,CAACiB;iBAAc;IAAxC,EACIF,4BAAA,OAAA;IAAMT,SAAS,EAAC;GAAhB,EAA4BN,IAAI,CAACkB,MAAL,CAAY,QAAZ,CAA5B,CADJ,EAEKlB,IAAI,CAACa,QAAL,GACGE,4BAAA,CAACI,IAAD;IAAMC,IAAI,EAAEpB,IAAI,CAACc,YAAL,GAAoB,oBAApB,GAA2C;IAAoBR,SAAS,EAAC;GAArF,CADH,GAEG,IAJR,CADJ;AAQH;;;;"}
1
+ {"version":3,"file":"renderColumn.js","sources":["../../../../../src/components/Table/util/renderColumn.tsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\nimport { Icon } from '../../Icon/Icon';\n\nexport const Column = ({ cell }: any): any => {\n const props = {\n ...cell.getHeaderProps(),\n ...(cell.getSortByToggleProps && cell.getSortByToggleProps({ title: undefined })),\n className: cn('yt-table__cell flex flex-1 truncate p-2 align-middle text-grey-darkest hover:text-black', cell.className, {\n 'yt-table__cell__group': !!cell.columns,\n 'cursor-pointer': !cell.disableSorting,\n 'justify-start text-left': cell.align === 'left',\n 'justify-end text-right': cell.align === 'right',\n 'justify-center text-center': cell.align === 'center' || !cell.align,\n }),\n style: { ...cell.style, flex: cell.flex },\n };\n\n if (cell.isSorted) {\n props['aria-sort'] = cell.isSortedDesc ? 'descending' : 'ascending';\n }\n\n return (\n <div {...props} key={cell.id} data-taco=\"table-column\">\n <span className=\"truncate\">{cell.render('Header')}</span>\n {cell.isSorted ? (\n <Icon name={cell.isSortedDesc ? 'chevron-down-solid' : 'chevron-up-solid'} className=\"-mt-0.5\" />\n ) : null}\n </div>\n );\n};\n"],"names":["Column","cell","props","getHeaderProps","getSortByToggleProps","title","undefined","className","cn","columns","disableSorting","align","style","flex","isSorted","isSortedDesc","React","key","id","render","Icon","name"],"mappings":";;;;MAIaA,MAAM,GAAG,CAAC;EAAEC;AAAF,CAAD;EAClB,MAAMC,KAAK,GAAG,EACV,GAAGD,IAAI,CAACE,cAAL,EADO;IAEV,IAAIF,IAAI,CAACG,oBAAL,IAA6BH,IAAI,CAACG,oBAAL,CAA0B;MAAEC,KAAK,EAAEC;KAAnC,CAAjC,CAFU;IAGVC,SAAS,EAAEC,EAAE,CAAC,yFAAD,EAA4FP,IAAI,CAACM,SAAjG,EAA4G;MACrH,yBAAyB,CAAC,CAACN,IAAI,CAACQ,OADqF;MAErH,kBAAkB,CAACR,IAAI,CAACS,cAF6F;MAGrH,2BAA2BT,IAAI,CAACU,KAAL,KAAe,MAH2E;MAIrH,0BAA0BV,IAAI,CAACU,KAAL,KAAe,OAJ4E;MAKrH,8BAA8BV,IAAI,CAACU,KAAL,KAAe,QAAf,IAA2B,CAACV,IAAI,CAACU;KALtD,CAHH;IAUVC,KAAK,EAAE,EAAE,GAAGX,IAAI,CAACW,KAAV;MAAiBC,IAAI,EAAEZ,IAAI,CAACY;;GAVvC;;EAaA,IAAIZ,IAAI,CAACa,QAAT,EAAmB;IACfZ,KAAK,CAAC,WAAD,CAAL,GAAqBD,IAAI,CAACc,YAAL,GAAoB,YAApB,GAAmC,WAAxD;;;EAGJ,OACIC,4BAAA,MAAA,oBAASd;IAAOe,GAAG,EAAEhB,IAAI,CAACiB;iBAAc;IAAxC,EACIF,4BAAA,OAAA;IAAMT,SAAS,EAAC;GAAhB,EAA4BN,IAAI,CAACkB,MAAL,CAAY,QAAZ,CAA5B,CADJ,EAEKlB,IAAI,CAACa,QAAL,GACGE,4BAAA,CAACI,IAAD;IAAMC,IAAI,EAAEpB,IAAI,CAACc,YAAL,GAAoB,oBAApB,GAA2C;IAAoBR,SAAS,EAAC;GAArF,CADH,GAEG,IAJR,CADJ;AAQH;;;;"}
@@ -1,78 +1,73 @@
1
- import { objectWithoutPropertiesLoose as _objectWithoutPropertiesLoose, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
1
  import React__default from 'react';
3
2
  import cn from 'classnames';
4
3
  import { sanitizeRowProps } from '../util.js';
5
4
  import { FocusScope } from '@react-aria/focus';
6
5
 
7
- var _excluded = ["row", "index", "instance", "headerGroups"];
8
-
9
- var renderCell = function renderCell(cell, row) {
10
- var props = _extends({}, cell.getCellProps(), {
6
+ const renderCell = (cell, row) => {
7
+ const props = { ...cell.getCellProps(),
11
8
  className: cn('yt-table__cell flex-1 truncate p-2 align-middle', cell.column.className, {
12
9
  'justify-start text-left': cell.column.align === 'left',
13
10
  'justify-end text-right': cell.column.align === 'right',
14
11
  'text-center': !cell.column.align
15
12
  }),
16
- style: _extends({}, cell.column.style, {
13
+ style: { ...cell.column.style,
17
14
  flex: typeof cell.column.flex === 'function' ? cell.column.flex(row) : cell.column.flex
18
- })
19
- });
20
-
15
+ }
16
+ };
21
17
  return React__default.createElement("div", Object.assign({}, props, {
22
18
  role: "gridcell",
23
19
  "data-taco": "table-cell"
24
20
  }), cell.render('Cell') || null);
25
21
  };
26
22
 
27
- var Row = /*#__PURE__*/React__default.forwardRef(function TableRow(_ref, ref) {
28
- var row = _ref.row,
29
- index = _ref.index,
30
- instance = _ref.instance,
31
- rowProps = _objectWithoutPropertiesLoose(_ref, _excluded);
32
-
33
- var activeIndex = rowProps.activeIndex,
34
- onRowClick = rowProps.onRowClick,
35
- rowClassName = rowProps.rowClassName,
36
- rowExpansionRenderer = rowProps.rowExpansionRenderer,
37
- rowHeight = rowProps.rowHeight,
38
- setActiveIndex = rowProps.setActiveIndex,
39
- style = rowProps.style,
40
- inlineEditingUniqueId = rowProps.inlineEditingUniqueId;
41
- var sanitizedRow = sanitizeRowProps(row, rowExpansionRenderer);
42
-
43
- var props = _extends({}, row.getRowProps(), {
44
- style: _extends({}, style, {
45
- minHeight: rowHeight ? rowHeight + "px" : undefined,
46
- paddingLeft: row.depth ? row.depth * 2 + "rem" : undefined
47
- }),
23
+ const Row = /*#__PURE__*/React__default.forwardRef(function TableRow({
24
+ row,
25
+ index,
26
+ instance,
27
+ headerGroups,
28
+ ...rowProps
29
+ }, ref) {
30
+ const {
31
+ activeIndex,
32
+ onRowClick,
33
+ rowClassName,
34
+ rowExpansionRenderer,
35
+ rowHeight,
36
+ setActiveIndex,
37
+ style,
38
+ inlineEditingUniqueId
39
+ } = rowProps;
40
+ const sanitizedRow = sanitizeRowProps(row, rowExpansionRenderer);
41
+ const props = { ...row.getRowProps(),
42
+ style: { ...style,
43
+ minHeight: rowHeight ? `${rowHeight}px` : undefined,
44
+ paddingLeft: row.depth ? `${row.depth * 2}rem` : undefined
45
+ },
48
46
  className: cn('yt-table__row border-grey-light flex border-b min-h-[2.5rem] hover:bg-grey-light', {
49
47
  'yt-table__row--active bg-grey-light hover:bg-grey-light': activeIndex === index,
50
48
  'yt-table__row--clickable': !!onRowClick,
51
49
  'yt-table__row--dragging': !!row.isDragging,
52
50
  'yt-table__row--editing': !!row.isEditing
53
51
  }, typeof rowClassName === 'function' ? rowClassName(sanitizedRow) : rowClassName),
54
- onClick: onRowClick ? function (event) {
52
+ onClick: onRowClick ? event => {
55
53
  if (event.target === event.currentTarget || event.target.classList.contains('yt-table__cell')) {
56
54
  event.preventDefault();
57
55
  event.persist();
58
56
  setActiveIndex(index);
59
57
  onRowClick(sanitizedRow);
60
58
  }
61
- } : function () {
59
+ } : () => {
62
60
  setActiveIndex(index);
63
61
  }
64
- });
65
-
66
- var cells = row.cells;
62
+ };
63
+ let cells = row.cells;
67
64
 
68
65
  if (row.depth > 0) {
69
- cells = row.cells.filter(function (cell) {
70
- return !cell.column.hiddenOnSubRows;
71
- });
66
+ cells = row.cells.filter(cell => !cell.column.hiddenOnSubRows);
72
67
  }
73
68
 
74
- var expandedRow = rowExpansionRenderer && row.isExpanded && React__default.createElement("div", null, rowExpansionRenderer(sanitizedRow, instance));
75
- var rowContent = React__default.useMemo(function () {
69
+ const expandedRow = rowExpansionRenderer && row.isExpanded && React__default.createElement("div", null, rowExpansionRenderer(sanitizedRow, instance));
70
+ const rowContent = React__default.useMemo(() => {
76
71
  return React__default.createElement(React__default.Fragment, null, React__default.createElement(FocusScope, {
77
72
  key: row.original._createKey,
78
73
  contain: true,
@@ -89,9 +84,7 @@ var Row = /*#__PURE__*/React__default.forwardRef(function TableRow(_ref, ref) {
89
84
  type: "hidden",
90
85
  name: "_inlineEditingUniqueId",
91
86
  value: row.original[inlineEditingUniqueId]
92
- }), cells.map(function (cell) {
93
- return renderCell(cell, sanitizedRow);
94
- }))), expandedRow);
87
+ }), cells.map(cell => renderCell(cell, sanitizedRow)))), expandedRow);
95
88
  }, [row.original._createKey]);
96
89
 
97
90
  if (row.isEditing) {
@@ -101,9 +94,7 @@ var Row = /*#__PURE__*/React__default.forwardRef(function TableRow(_ref, ref) {
101
94
  return React__default.createElement(React__default.Fragment, null, React__default.createElement("div", Object.assign({}, props, {
102
95
  role: "row",
103
96
  ref: ref
104
- }), cells.map(function (cell) {
105
- return renderCell(cell, sanitizedRow);
106
- })), expandedRow);
97
+ }), cells.map(cell => renderCell(cell, sanitizedRow))), expandedRow);
107
98
  });
108
99
 
109
100
  export { Row };
@@ -1 +1 @@
1
- {"version":3,"file":"renderRow.js","sources":["../../../../../src/components/Table/util/renderRow.tsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\nimport { FocusScope } from '@react-aria/focus';\nimport { InternalTableCell, TableRow } from '../types';\nimport { sanitizeRowProps } from '../util';\n\nconst renderCell = (cell: InternalTableCell, row: TableRow<any>): JSX.Element => {\n const props = {\n ...cell.getCellProps(),\n className: cn('yt-table__cell flex-1 truncate p-2 align-middle', cell.column.className, {\n 'justify-start text-left': cell.column.align === 'left',\n 'justify-end text-right': cell.column.align === 'right',\n 'text-center': !cell.column.align,\n }),\n style: {\n ...cell.column.style,\n flex: typeof cell.column.flex === 'function' ? cell.column.flex(row) : cell.column.flex,\n },\n };\n return (\n <div {...props} role=\"gridcell\" data-taco=\"table-cell\">\n {cell.render('Cell') || null}\n </div>\n );\n};\n\nexport const Row = React.forwardRef(function TableRow({ row, index, instance, headerGroups, ...rowProps }: any, ref: any) {\n const {\n activeIndex,\n onRowClick,\n rowClassName,\n rowExpansionRenderer,\n rowHeight,\n setActiveIndex,\n style,\n inlineEditingUniqueId,\n } = rowProps;\n const sanitizedRow = sanitizeRowProps(row, rowExpansionRenderer);\n\n const props = {\n ...row.getRowProps(),\n style: {\n ...style,\n minHeight: rowHeight ? `${rowHeight}px` : undefined,\n paddingLeft: row.depth ? `${row.depth * 2}rem` : undefined,\n },\n className: cn(\n 'yt-table__row border-grey-light flex border-b min-h-[2.5rem] hover:bg-grey-light',\n {\n 'yt-table__row--active bg-grey-light hover:bg-grey-light': activeIndex === index,\n 'yt-table__row--clickable': !!onRowClick,\n 'yt-table__row--dragging': !!row.isDragging,\n 'yt-table__row--editing': !!row.isEditing,\n },\n typeof rowClassName === 'function' ? rowClassName(sanitizedRow) : rowClassName\n ),\n onClick: onRowClick\n ? (event: React.MouseEvent<HTMLElement>) => {\n if (\n event.target === event.currentTarget ||\n (event.target as HTMLElement).classList.contains('yt-table__cell')\n ) {\n event.preventDefault();\n event.persist();\n setActiveIndex(index);\n onRowClick(sanitizedRow);\n }\n }\n : () => {\n setActiveIndex(index);\n },\n };\n\n let cells = row.cells;\n\n if (row.depth > 0) {\n cells = row.cells.filter((cell: any) => !cell.column.hiddenOnSubRows);\n }\n\n const expandedRow = rowExpansionRenderer && row.isExpanded && <div>{rowExpansionRenderer(sanitizedRow, instance)}</div>;\n const rowContent = React.useMemo(() => {\n return (\n <>\n <FocusScope key={row.original._createKey} contain restoreFocus autoFocus>\n <div {...props} role=\"row\" ref={ref}>\n <input type=\"hidden\" name=\"_rowIndexPath\" value={row.id} />\n <input type=\"hidden\" name=\"_inlineEditingUniqueId\" value={row.original[inlineEditingUniqueId]} />\n {cells.map((cell: InternalTableCell) => renderCell(cell, sanitizedRow))}\n </div>\n </FocusScope>\n {expandedRow}\n </>\n );\n }, [row.original._createKey]);\n\n if (row.isEditing) {\n return rowContent;\n }\n\n return (\n <>\n <div {...props} role=\"row\" ref={ref}>\n {cells.map((cell: InternalTableCell) => renderCell(cell, sanitizedRow))}\n </div>\n {expandedRow}\n </>\n );\n});\n"],"names":["renderCell","cell","row","props","getCellProps","className","cn","column","align","style","flex","React","role","render","Row","forwardRef","TableRow","ref","index","instance","rowProps","activeIndex","onRowClick","rowClassName","rowExpansionRenderer","rowHeight","setActiveIndex","inlineEditingUniqueId","sanitizedRow","sanitizeRowProps","getRowProps","minHeight","undefined","paddingLeft","depth","isDragging","isEditing","onClick","event","target","currentTarget","classList","contains","preventDefault","persist","cells","filter","hiddenOnSubRows","expandedRow","isExpanded","rowContent","useMemo","FocusScope","key","original","_createKey","contain","restoreFocus","autoFocus","type","name","value","id","map"],"mappings":"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"}
1
+ {"version":3,"file":"renderRow.js","sources":["../../../../../src/components/Table/util/renderRow.tsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\nimport { FocusScope } from '@react-aria/focus';\nimport { InternalTableCell, TableRow } from '../types';\nimport { sanitizeRowProps } from '../util';\n\nconst renderCell = (cell: InternalTableCell, row: TableRow<any>): JSX.Element => {\n const props = {\n ...cell.getCellProps(),\n className: cn('yt-table__cell flex-1 truncate p-2 align-middle', cell.column.className, {\n 'justify-start text-left': cell.column.align === 'left',\n 'justify-end text-right': cell.column.align === 'right',\n 'text-center': !cell.column.align,\n }),\n style: {\n ...cell.column.style,\n flex: typeof cell.column.flex === 'function' ? cell.column.flex(row) : cell.column.flex,\n },\n };\n return (\n <div {...props} role=\"gridcell\" data-taco=\"table-cell\">\n {cell.render('Cell') || null}\n </div>\n );\n};\n\nexport const Row = React.forwardRef(function TableRow({ row, index, instance, headerGroups, ...rowProps }: any, ref: any) {\n const {\n activeIndex,\n onRowClick,\n rowClassName,\n rowExpansionRenderer,\n rowHeight,\n setActiveIndex,\n style,\n inlineEditingUniqueId,\n } = rowProps;\n const sanitizedRow = sanitizeRowProps(row, rowExpansionRenderer);\n\n const props = {\n ...row.getRowProps(),\n style: {\n ...style,\n minHeight: rowHeight ? `${rowHeight}px` : undefined,\n paddingLeft: row.depth ? `${row.depth * 2}rem` : undefined,\n },\n className: cn(\n 'yt-table__row border-grey-light flex border-b min-h-[2.5rem] hover:bg-grey-light',\n {\n 'yt-table__row--active bg-grey-light hover:bg-grey-light': activeIndex === index,\n 'yt-table__row--clickable': !!onRowClick,\n 'yt-table__row--dragging': !!row.isDragging,\n 'yt-table__row--editing': !!row.isEditing,\n },\n typeof rowClassName === 'function' ? rowClassName(sanitizedRow) : rowClassName\n ),\n onClick: onRowClick\n ? (event: React.MouseEvent<HTMLElement>) => {\n if (\n event.target === event.currentTarget ||\n (event.target as HTMLElement).classList.contains('yt-table__cell')\n ) {\n event.preventDefault();\n event.persist();\n setActiveIndex(index);\n onRowClick(sanitizedRow);\n }\n }\n : () => {\n setActiveIndex(index);\n },\n };\n\n let cells = row.cells;\n\n if (row.depth > 0) {\n cells = row.cells.filter((cell: any) => !cell.column.hiddenOnSubRows);\n }\n\n const expandedRow = rowExpansionRenderer && row.isExpanded && <div>{rowExpansionRenderer(sanitizedRow, instance)}</div>;\n const rowContent = React.useMemo(() => {\n return (\n <>\n <FocusScope key={row.original._createKey} contain restoreFocus autoFocus>\n <div {...props} role=\"row\" ref={ref}>\n <input type=\"hidden\" name=\"_rowIndexPath\" value={row.id} />\n <input type=\"hidden\" name=\"_inlineEditingUniqueId\" value={row.original[inlineEditingUniqueId]} />\n {cells.map((cell: InternalTableCell) => renderCell(cell, sanitizedRow))}\n </div>\n </FocusScope>\n {expandedRow}\n </>\n );\n }, [row.original._createKey]);\n\n if (row.isEditing) {\n return rowContent;\n }\n\n return (\n <>\n <div {...props} role=\"row\" ref={ref}>\n {cells.map((cell: InternalTableCell) => renderCell(cell, sanitizedRow))}\n </div>\n {expandedRow}\n </>\n );\n});\n"],"names":["renderCell","cell","row","props","getCellProps","className","cn","column","align","style","flex","React","role","render","Row","forwardRef","TableRow","index","instance","headerGroups","rowProps","ref","activeIndex","onRowClick","rowClassName","rowExpansionRenderer","rowHeight","setActiveIndex","inlineEditingUniqueId","sanitizedRow","sanitizeRowProps","getRowProps","minHeight","undefined","paddingLeft","depth","isDragging","isEditing","onClick","event","target","currentTarget","classList","contains","preventDefault","persist","cells","filter","hiddenOnSubRows","expandedRow","isExpanded","rowContent","useMemo","FocusScope","key","original","_createKey","contain","restoreFocus","autoFocus","type","name","value","id","map"],"mappings":";;;;;AAMA,MAAMA,UAAU,GAAG,CAACC,IAAD,EAA0BC,GAA1B;EACf,MAAMC,KAAK,GAAG,EACV,GAAGF,IAAI,CAACG,YAAL,EADO;IAEVC,SAAS,EAAEC,EAAE,CAAC,iDAAD,EAAoDL,IAAI,CAACM,MAAL,CAAYF,SAAhE,EAA2E;MACpF,2BAA2BJ,IAAI,CAACM,MAAL,CAAYC,KAAZ,KAAsB,MADmC;MAEpF,0BAA0BP,IAAI,CAACM,MAAL,CAAYC,KAAZ,KAAsB,OAFoC;MAGpF,eAAe,CAACP,IAAI,CAACM,MAAL,CAAYC;KAHnB,CAFH;IAOVC,KAAK,EAAE,EACH,GAAGR,IAAI,CAACM,MAAL,CAAYE,KADZ;MAEHC,IAAI,EAAE,OAAOT,IAAI,CAACM,MAAL,CAAYG,IAAnB,KAA4B,UAA5B,GAAyCT,IAAI,CAACM,MAAL,CAAYG,IAAZ,CAAiBR,GAAjB,CAAzC,GAAiED,IAAI,CAACM,MAAL,CAAYG;;GAT3F;EAYA,OACIC,4BAAA,MAAA,oBAASR;IAAOS,IAAI,EAAC;iBAAqB;IAA1C,EACKX,IAAI,CAACY,MAAL,CAAY,MAAZ,KAAuB,IAD5B,CADJ;AAKH,CAlBD;;MAoBaC,GAAG,gBAAGH,cAAK,CAACI,UAAN,CAAiB,SAASC,QAAT,CAAkB;EAAEd,GAAF;EAAOe,KAAP;EAAcC,QAAd;EAAwBC,YAAxB;EAAsC,GAAGC;AAAzC,CAAlB,EAA4EC,GAA5E;EAChC,MAAM;IACFC,WADE;IAEFC,UAFE;IAGFC,YAHE;IAIFC,oBAJE;IAKFC,SALE;IAMFC,cANE;IAOFlB,KAPE;IAQFmB;MACAR,QATJ;EAUA,MAAMS,YAAY,GAAGC,gBAAgB,CAAC5B,GAAD,EAAMuB,oBAAN,CAArC;EAEA,MAAMtB,KAAK,GAAG,EACV,GAAGD,GAAG,CAAC6B,WAAJ,EADO;IAEVtB,KAAK,EAAE,EACH,GAAGA,KADA;MAEHuB,SAAS,EAAEN,SAAS,MAAMA,aAAN,GAAsBO,SAFvC;MAGHC,WAAW,EAAEhC,GAAG,CAACiC,KAAJ,MAAejC,GAAG,CAACiC,KAAJ,GAAY,MAA3B,GAAoCF;KAL3C;IAOV5B,SAAS,EAAEC,EAAE,CACT,kFADS,EAET;MACI,2DAA2DgB,WAAW,KAAKL,KAD/E;MAEI,4BAA4B,CAAC,CAACM,UAFlC;MAGI,2BAA2B,CAAC,CAACrB,GAAG,CAACkC,UAHrC;MAII,0BAA0B,CAAC,CAAClC,GAAG,CAACmC;KAN3B,EAQT,OAAOb,YAAP,KAAwB,UAAxB,GAAqCA,YAAY,CAACK,YAAD,CAAjD,GAAkEL,YARzD,CAPH;IAiBVc,OAAO,EAAEf,UAAU,GACZgB,KAAD;MACI,IACIA,KAAK,CAACC,MAAN,KAAiBD,KAAK,CAACE,aAAvB,IACCF,KAAK,CAACC,MAAN,CAA6BE,SAA7B,CAAuCC,QAAvC,CAAgD,gBAAhD,CAFL,EAGE;QACEJ,KAAK,CAACK,cAAN;QACAL,KAAK,CAACM,OAAN;QACAlB,cAAc,CAACV,KAAD,CAAd;QACAM,UAAU,CAACM,YAAD,CAAV;;KATK,GAYb;MACIF,cAAc,CAACV,KAAD,CAAd;;GA9Bd;EAkCA,IAAI6B,KAAK,GAAG5C,GAAG,CAAC4C,KAAhB;;EAEA,IAAI5C,GAAG,CAACiC,KAAJ,GAAY,CAAhB,EAAmB;IACfW,KAAK,GAAG5C,GAAG,CAAC4C,KAAJ,CAAUC,MAAV,CAAkB9C,IAAD,IAAe,CAACA,IAAI,CAACM,MAAL,CAAYyC,eAA7C,CAAR;;;EAGJ,MAAMC,WAAW,GAAGxB,oBAAoB,IAAIvB,GAAG,CAACgD,UAA5B,IAA0CvC,4BAAA,MAAA,MAAA,EAAMc,oBAAoB,CAACI,YAAD,EAAeX,QAAf,CAA1B,CAA9D;EACA,MAAMiC,UAAU,GAAGxC,cAAK,CAACyC,OAAN,CAAc;IAC7B,OACIzC,4BAAA,wBAAA,MAAA,EACIA,4BAAA,CAAC0C,UAAD;MAAYC,GAAG,EAAEpD,GAAG,CAACqD,QAAJ,CAAaC;MAAYC,OAAO;MAACC,YAAY;MAACC,SAAS;KAAxE,EACIhD,4BAAA,MAAA,oBAASR;MAAOS,IAAI,EAAC;MAAMS,GAAG,EAAEA;MAAhC,EACIV,4BAAA,QAAA;MAAOiD,IAAI,EAAC;MAASC,IAAI,EAAC;MAAgBC,KAAK,EAAE5D,GAAG,CAAC6D;KAArD,CADJ,EAEIpD,4BAAA,QAAA;MAAOiD,IAAI,EAAC;MAASC,IAAI,EAAC;MAAyBC,KAAK,EAAE5D,GAAG,CAACqD,QAAJ,CAAa3B,qBAAb;KAA1D,CAFJ,EAGKkB,KAAK,CAACkB,GAAN,CAAW/D,IAAD,IAA6BD,UAAU,CAACC,IAAD,EAAO4B,YAAP,CAAjD,CAHL,CADJ,CADJ,EAQKoB,WARL,CADJ;GADe,EAahB,CAAC/C,GAAG,CAACqD,QAAJ,CAAaC,UAAd,CAbgB,CAAnB;;EAeA,IAAItD,GAAG,CAACmC,SAAR,EAAmB;IACf,OAAOc,UAAP;;;EAGJ,OACIxC,4BAAA,wBAAA,MAAA,EACIA,4BAAA,MAAA,oBAASR;IAAOS,IAAI,EAAC;IAAMS,GAAG,EAAEA;IAAhC,EACKyB,KAAK,CAACkB,GAAN,CAAW/D,IAAD,IAA6BD,UAAU,CAACC,IAAD,EAAO4B,YAAP,CAAjD,CADL,CADJ,EAIKoB,WAJL,CADJ;AAQH,CAjFkB;;;;"}
@@ -1,21 +1,21 @@
1
1
  import set from 'lodash-es/set';
2
2
 
3
- var convertRowIndexPathToNumberArray = function convertRowIndexPathToNumberArray(rowIndexPath) {
3
+ const convertRowIndexPathToNumberArray = rowIndexPath => {
4
4
  var _rowIndexPath$split$m;
5
5
 
6
6
  return (_rowIndexPath$split$m = rowIndexPath === null || rowIndexPath === void 0 ? void 0 : rowIndexPath.split('.').map(Number)) !== null && _rowIndexPath$split$m !== void 0 ? _rowIndexPath$split$m : [];
7
7
  };
8
- var getByRowIndexPath = function getByRowIndexPath(data, rowIndexPath) {
8
+ const getByRowIndexPath = (data, rowIndexPath) => {
9
9
  if (!rowIndexPath) {
10
10
  return undefined;
11
11
  }
12
12
 
13
- var currenTRow = [].concat(data);
14
- var indexes = convertRowIndexPathToNumberArray(String(rowIndexPath));
13
+ const currenTRow = [...data];
14
+ const indexes = convertRowIndexPathToNumberArray(String(rowIndexPath));
15
15
 
16
16
  if (indexes.length) {
17
- var startIndex = indexes.shift();
18
- return indexes.reduce(function (value, index) {
17
+ const startIndex = indexes.shift();
18
+ return indexes.reduce((value, index) => {
19
19
  var _value$subRows;
20
20
 
21
21
  return value === null || value === void 0 ? void 0 : (_value$subRows = value.subRows) === null || _value$subRows === void 0 ? void 0 : _value$subRows[index];
@@ -24,15 +24,13 @@ var getByRowIndexPath = function getByRowIndexPath(data, rowIndexPath) {
24
24
 
25
25
  return undefined;
26
26
  };
27
- var setByRowIndexPath = function setByRowIndexPath(data, rowIndexPath, values) {
28
- var nexTRow = [].concat(data);
29
- var rowIndexes = convertRowIndexPathToNumberArray(rowIndexPath);
30
- var rootIndex = rowIndexes.shift();
27
+ const setByRowIndexPath = (data, rowIndexPath, values) => {
28
+ const nexTRow = [...data];
29
+ const rowIndexes = convertRowIndexPathToNumberArray(rowIndexPath);
30
+ const rootIndex = rowIndexes.shift();
31
31
 
32
32
  if (rowIndexes.length) {
33
- var path = rowIndexes.map(function (index) {
34
- return "subRows[" + index + "]";
35
- }).join('.');
33
+ const path = rowIndexes.map(index => `subRows[${index}]`).join('.');
36
34
  set(nexTRow[rootIndex], path, values);
37
35
  } else {
38
36
  nexTRow[rootIndex] = values;
@@ -40,11 +38,11 @@ var setByRowIndexPath = function setByRowIndexPath(data, rowIndexPath, values) {
40
38
 
41
39
  return nexTRow;
42
40
  };
43
- var getParentRowIndexPath = function getParentRowIndexPath(rowIndexPath) {
44
- var parentIndexPath;
41
+ const getParentRowIndexPath = rowIndexPath => {
42
+ let parentIndexPath;
45
43
 
46
44
  if (rowIndexPath) {
47
- var rowIndexes = convertRowIndexPathToNumberArray(rowIndexPath);
45
+ const rowIndexes = convertRowIndexPathToNumberArray(rowIndexPath);
48
46
  rowIndexes.pop();
49
47
 
50
48
  if (rowIndexes.length) {
@@ -1 +1 @@
1
- {"version":3,"file":"rowIndexPath.js","sources":["../../../../../src/components/Table/util/rowIndexPath.ts"],"sourcesContent":["import set from 'lodash/set';\nimport { Row, RowIndexPath } from '../types';\n\nexport const convertRowIndexPathToNumberArray = (rowIndexPath: RowIndexPath): number[] =>\n rowIndexPath?.split('.').map(Number) ?? [];\n\nexport const getByRowIndexPath = <TRow>(data: Row<TRow>[], rowIndexPath: RowIndexPath): Row<TRow> | undefined => {\n if (!rowIndexPath) {\n return undefined;\n }\n\n const currenTRow = [...data];\n const indexes = convertRowIndexPathToNumberArray(String(rowIndexPath));\n\n if (indexes.length) {\n const startIndex = indexes.shift() as number;\n return indexes.reduce((value, index) => value?.subRows?.[index], currenTRow[startIndex]);\n }\n\n return undefined;\n};\n\nexport const setByRowIndexPath = <TRow>(data: Row<TRow>[], rowIndexPath: RowIndexPath, values: any): Row<TRow>[] => {\n const nexTRow = [...data];\n\n const rowIndexes = convertRowIndexPathToNumberArray(rowIndexPath);\n const rootIndex = rowIndexes.shift() as number;\n\n if (rowIndexes.length) {\n const path = rowIndexes.map(index => `subRows[${index}]`).join('.');\n set(nexTRow[rootIndex], path, values);\n } else {\n nexTRow[rootIndex] = values;\n }\n\n return nexTRow;\n};\n\nexport const getParentRowIndexPath = (rowIndexPath: RowIndexPath): RowIndexPath => {\n let parentIndexPath;\n\n if (rowIndexPath) {\n const rowIndexes = convertRowIndexPathToNumberArray(rowIndexPath);\n rowIndexes.pop();\n\n if (rowIndexes.length) {\n parentIndexPath = rowIndexes.join('.');\n }\n }\n\n return parentIndexPath;\n};\n"],"names":["convertRowIndexPathToNumberArray","rowIndexPath","split","map","Number","getByRowIndexPath","data","undefined","currenTRow","indexes","String","length","startIndex","shift","reduce","value","index","subRows","setByRowIndexPath","values","nexTRow","rowIndexes","rootIndex","path","join","set","getParentRowIndexPath","parentIndexPath","pop"],"mappings":";;IAGaA,gCAAgC,GAAG,SAAnCA,gCAAmC,CAACC,YAAD;EAAA;;EAAA,gCAC5CA,YAD4C,aAC5CA,YAD4C,uBAC5CA,YAAY,CAAEC,KAAd,CAAoB,GAApB,EAAyBC,GAAzB,CAA6BC,MAA7B,CAD4C,yEACJ,EADI;AAAA;IAGnCC,iBAAiB,GAAG,SAApBA,iBAAoB,CAAOC,IAAP,EAA0BL,YAA1B;EAC7B,IAAI,CAACA,YAAL,EAAmB;IACf,OAAOM,SAAP;;;EAGJ,IAAMC,UAAU,aAAOF,IAAP,CAAhB;EACA,IAAMG,OAAO,GAAGT,gCAAgC,CAACU,MAAM,CAACT,YAAD,CAAP,CAAhD;;EAEA,IAAIQ,OAAO,CAACE,MAAZ,EAAoB;IAChB,IAAMC,UAAU,GAAGH,OAAO,CAACI,KAAR,EAAnB;IACA,OAAOJ,OAAO,CAACK,MAAR,CAAe,UAACC,KAAD,EAAQC,KAAR;MAAA;;MAAA,OAAkBD,KAAlB,aAAkBA,KAAlB,yCAAkBA,KAAK,CAAEE,OAAzB,mDAAkB,eAAiBD,KAAjB,CAAlB;KAAf,EAA0DR,UAAU,CAACI,UAAD,CAApE,CAAP;;;EAGJ,OAAOL,SAAP;AACH;IAEYW,iBAAiB,GAAG,SAApBA,iBAAoB,CAAOZ,IAAP,EAA0BL,YAA1B,EAAsDkB,MAAtD;EAC7B,IAAMC,OAAO,aAAOd,IAAP,CAAb;EAEA,IAAMe,UAAU,GAAGrB,gCAAgC,CAACC,YAAD,CAAnD;EACA,IAAMqB,SAAS,GAAGD,UAAU,CAACR,KAAX,EAAlB;;EAEA,IAAIQ,UAAU,CAACV,MAAf,EAAuB;IACnB,IAAMY,IAAI,GAAGF,UAAU,CAAClB,GAAX,CAAe,UAAAa,KAAK;MAAA,oBAAeA,KAAf;KAApB,EAA6CQ,IAA7C,CAAkD,GAAlD,CAAb;IACAC,GAAG,CAACL,OAAO,CAACE,SAAD,CAAR,EAAqBC,IAArB,EAA2BJ,MAA3B,CAAH;GAFJ,MAGO;IACHC,OAAO,CAACE,SAAD,CAAP,GAAqBH,MAArB;;;EAGJ,OAAOC,OAAP;AACH;IAEYM,qBAAqB,GAAG,SAAxBA,qBAAwB,CAACzB,YAAD;EACjC,IAAI0B,eAAJ;;EAEA,IAAI1B,YAAJ,EAAkB;IACd,IAAMoB,UAAU,GAAGrB,gCAAgC,CAACC,YAAD,CAAnD;IACAoB,UAAU,CAACO,GAAX;;IAEA,IAAIP,UAAU,CAACV,MAAf,EAAuB;MACnBgB,eAAe,GAAGN,UAAU,CAACG,IAAX,CAAgB,GAAhB,CAAlB;;;;EAIR,OAAOG,eAAP;AACH;;;;"}
1
+ {"version":3,"file":"rowIndexPath.js","sources":["../../../../../src/components/Table/util/rowIndexPath.ts"],"sourcesContent":["import set from 'lodash/set';\r\nimport { Row, RowIndexPath } from '../types';\r\n\r\nexport const convertRowIndexPathToNumberArray = (rowIndexPath: RowIndexPath): number[] =>\r\n rowIndexPath?.split('.').map(Number) ?? [];\r\n\r\nexport const getByRowIndexPath = <TRow>(data: Row<TRow>[], rowIndexPath: RowIndexPath): Row<TRow> | undefined => {\r\n if (!rowIndexPath) {\r\n return undefined;\r\n }\r\n\r\n const currenTRow = [...data];\r\n const indexes = convertRowIndexPathToNumberArray(String(rowIndexPath));\r\n\r\n if (indexes.length) {\r\n const startIndex = indexes.shift() as number;\r\n return indexes.reduce((value, index) => value?.subRows?.[index], currenTRow[startIndex]);\r\n }\r\n\r\n return undefined;\r\n};\r\n\r\nexport const setByRowIndexPath = <TRow>(data: Row<TRow>[], rowIndexPath: RowIndexPath, values: any): Row<TRow>[] => {\r\n const nexTRow = [...data];\r\n\r\n const rowIndexes = convertRowIndexPathToNumberArray(rowIndexPath);\r\n const rootIndex = rowIndexes.shift() as number;\r\n\r\n if (rowIndexes.length) {\r\n const path = rowIndexes.map(index => `subRows[${index}]`).join('.');\r\n set(nexTRow[rootIndex], path, values);\r\n } else {\r\n nexTRow[rootIndex] = values;\r\n }\r\n\r\n return nexTRow;\r\n};\r\n\r\nexport const getParentRowIndexPath = (rowIndexPath: RowIndexPath): RowIndexPath => {\r\n let parentIndexPath;\r\n\r\n if (rowIndexPath) {\r\n const rowIndexes = convertRowIndexPathToNumberArray(rowIndexPath);\r\n rowIndexes.pop();\r\n\r\n if (rowIndexes.length) {\r\n parentIndexPath = rowIndexes.join('.');\r\n }\r\n }\r\n\r\n return parentIndexPath;\r\n};\r\n"],"names":["convertRowIndexPathToNumberArray","rowIndexPath","split","map","Number","getByRowIndexPath","data","undefined","currenTRow","indexes","String","length","startIndex","shift","reduce","value","index","subRows","setByRowIndexPath","values","nexTRow","rowIndexes","rootIndex","path","join","set","getParentRowIndexPath","parentIndexPath","pop"],"mappings":";;MAGaA,gCAAgC,GAAIC,YAAD;EAAA;;EAAA,gCAC5CA,YAD4C,aAC5CA,YAD4C,uBAC5CA,YAAY,CAAEC,KAAd,CAAoB,GAApB,EAAyBC,GAAzB,CAA6BC,MAA7B,CAD4C,yEACJ,EADI;AAAA;MAGnCC,iBAAiB,GAAG,CAAOC,IAAP,EAA0BL,YAA1B;EAC7B,IAAI,CAACA,YAAL,EAAmB;IACf,OAAOM,SAAP;;;EAGJ,MAAMC,UAAU,GAAG,CAAC,GAAGF,IAAJ,CAAnB;EACA,MAAMG,OAAO,GAAGT,gCAAgC,CAACU,MAAM,CAACT,YAAD,CAAP,CAAhD;;EAEA,IAAIQ,OAAO,CAACE,MAAZ,EAAoB;IAChB,MAAMC,UAAU,GAAGH,OAAO,CAACI,KAAR,EAAnB;IACA,OAAOJ,OAAO,CAACK,MAAR,CAAe,CAACC,KAAD,EAAQC,KAAR;MAAA;;MAAA,OAAkBD,KAAlB,aAAkBA,KAAlB,yCAAkBA,KAAK,CAAEE,OAAzB,mDAAkB,eAAiBD,KAAjB,CAAlB;KAAf,EAA0DR,UAAU,CAACI,UAAD,CAApE,CAAP;;;EAGJ,OAAOL,SAAP;AACH;MAEYW,iBAAiB,GAAG,CAAOZ,IAAP,EAA0BL,YAA1B,EAAsDkB,MAAtD;EAC7B,MAAMC,OAAO,GAAG,CAAC,GAAGd,IAAJ,CAAhB;EAEA,MAAMe,UAAU,GAAGrB,gCAAgC,CAACC,YAAD,CAAnD;EACA,MAAMqB,SAAS,GAAGD,UAAU,CAACR,KAAX,EAAlB;;EAEA,IAAIQ,UAAU,CAACV,MAAf,EAAuB;IACnB,MAAMY,IAAI,GAAGF,UAAU,CAAClB,GAAX,CAAea,KAAK,eAAeA,QAAnC,EAA6CQ,IAA7C,CAAkD,GAAlD,CAAb;IACAC,GAAG,CAACL,OAAO,CAACE,SAAD,CAAR,EAAqBC,IAArB,EAA2BJ,MAA3B,CAAH;GAFJ,MAGO;IACHC,OAAO,CAACE,SAAD,CAAP,GAAqBH,MAArB;;;EAGJ,OAAOC,OAAP;AACH;MAEYM,qBAAqB,GAAIzB,YAAD;EACjC,IAAI0B,eAAJ;;EAEA,IAAI1B,YAAJ,EAAkB;IACd,MAAMoB,UAAU,GAAGrB,gCAAgC,CAACC,YAAD,CAAnD;IACAoB,UAAU,CAACO,GAAX;;IAEA,IAAIP,UAAU,CAACV,MAAf,EAAuB;MACnBgB,eAAe,GAAGN,UAAU,CAACG,IAAX,CAAgB,GAAhB,CAAlB;;;;EAIR,OAAOG,eAAP;AACH;;;;"}
@@ -1,17 +1,9 @@
1
- var getTime = function getTime(value) {
2
- var parsedValue = typeof value === 'string' ? new Date(value) : value;
1
+ const getTime = value => {
2
+ const parsedValue = typeof value === 'string' ? new Date(value) : value;
3
3
  return parsedValue !== null && parsedValue !== void 0 && parsedValue.getTime ? parsedValue.getTime() : undefined;
4
4
  };
5
5
 
6
- var getNumber = function getNumber(amount, decimalSeparator) {
7
- if (amount === void 0) {
8
- amount = '';
9
- }
10
-
11
- if (decimalSeparator === void 0) {
12
- decimalSeparator = ',';
13
- }
14
-
6
+ const getNumber = (amount = '', decimalSeparator = ',') => {
15
7
  if (typeof amount === 'number') {
16
8
  return amount;
17
9
  }
@@ -20,7 +12,7 @@ var getNumber = function getNumber(amount, decimalSeparator) {
20
12
  return undefined;
21
13
  }
22
14
 
23
- var value;
15
+ let value;
24
16
 
25
17
  if (decimalSeparator === ',') {
26
18
  // replace digit seperator then replace decimal separator
@@ -33,7 +25,7 @@ var getNumber = function getNumber(amount, decimalSeparator) {
33
25
  return Number.isNaN(value) ? undefined : value;
34
26
  };
35
27
 
36
- var getString = function getString(value) {
28
+ const getString = value => {
37
29
  if (value) {
38
30
  return String(value).toLowerCase();
39
31
  }
@@ -41,7 +33,7 @@ var getString = function getString(value) {
41
33
  return undefined;
42
34
  };
43
35
 
44
- var guess = function guess(value) {
36
+ const guess = value => {
45
37
  if (typeof value === 'boolean') {
46
38
  return !!value;
47
39
  }
@@ -49,7 +41,7 @@ var guess = function guess(value) {
49
41
  return isNaN(value) ? getString(value) : Number(value);
50
42
  };
51
43
 
52
- var compareBasic = function compareBasic(a, b) {
44
+ const compareBasic = (a, b) => {
53
45
  // places undefined values first in ascending order instead of descending
54
46
  if (a !== undefined && b === undefined) {
55
47
  return 1;
@@ -58,30 +50,30 @@ var compareBasic = function compareBasic(a, b) {
58
50
  return a === b ? 0 : a > b ? 1 : -1;
59
51
  };
60
52
 
61
- var sortTypes = {
62
- datetime: function datetime(rowA, rowB, columnId) {
63
- var a = getTime(rowA.values[columnId]);
64
- var b = getTime(rowB.values[columnId]);
53
+ const sortTypes = {
54
+ datetime: (rowA, rowB, columnId) => {
55
+ const a = getTime(rowA.values[columnId]);
56
+ const b = getTime(rowB.values[columnId]);
65
57
  return compareBasic(a, b);
66
58
  },
67
- string: function string(rowA, rowB, columnId) {
68
- var a = getString(rowA.values[columnId]);
69
- var b = getString(rowB.values[columnId]);
59
+ string: (rowA, rowB, columnId) => {
60
+ const a = getString(rowA.values[columnId]);
61
+ const b = getString(rowB.values[columnId]);
70
62
  return compareBasic(a, b);
71
63
  },
72
- number: function number(rowA, rowB, columnId) {
73
- var a = getNumber(rowA.values[columnId]);
74
- var b = getNumber(rowB.values[columnId]);
64
+ number: (rowA, rowB, columnId) => {
65
+ const a = getNumber(rowA.values[columnId]);
66
+ const b = getNumber(rowB.values[columnId]);
75
67
  return compareBasic(a, b);
76
68
  },
77
- "boolean": function boolean(rowA, rowB, columnId) {
78
- var a = !!rowA.values[columnId];
79
- var b = !!rowB.values[columnId];
69
+ boolean: (rowA, rowB, columnId) => {
70
+ const a = !!rowA.values[columnId];
71
+ const b = !!rowB.values[columnId];
80
72
  return compareBasic(a, b);
81
73
  },
82
- auto: function auto(rowA, rowB, columnId) {
83
- var a = guess(rowA.values[columnId]);
84
- var b = guess(rowB.values[columnId]);
74
+ auto: (rowA, rowB, columnId) => {
75
+ const a = guess(rowA.values[columnId]);
76
+ const b = guess(rowB.values[columnId]);
85
77
  return compareBasic(a, b);
86
78
  }
87
79
  };
@@ -1 +1 @@
1
- {"version":3,"file":"sortTypes.js","sources":["../../../../../src/components/Table/util/sortTypes.ts"],"sourcesContent":["import { SortTypes, TableRow } from '../types';\n\nconst getTime = (value: any): number | undefined => {\n const parsedValue: Date = typeof value === 'string' ? new Date(value) : value;\n return parsedValue?.getTime ? parsedValue.getTime() : undefined;\n};\n\nconst getNumber = (amount = '', decimalSeparator = ','): number | undefined => {\n if (typeof amount === 'number') {\n return amount;\n }\n\n if (amount === null || !amount.length) {\n return undefined;\n }\n\n let value;\n\n if (decimalSeparator === ',') {\n // replace digit seperator then replace decimal separator\n value = Number(amount.replace(/\\./g, '').replace(',', '.'));\n } else {\n // replace digit seperator\n value = Number(amount.replace(/,/g, ''));\n }\n\n return Number.isNaN(value) ? undefined : value;\n};\n\nconst getString = (value: any): string | undefined => {\n if (value) {\n return String(value).toLowerCase();\n }\n\n return undefined;\n};\n\nconst guess = (value: any): any => {\n if (typeof value === 'boolean') {\n return !!value;\n }\n\n return isNaN(value) ? getString(value) : Number(value);\n};\n\nconst compareBasic = (a: any, b: any) => {\n // places undefined values first in ascending order instead of descending\n if (a !== undefined && b === undefined) {\n return 1;\n }\n\n return a === b ? 0 : a > b ? 1 : -1;\n};\n\ntype SortHandler<T> = (rowA: TableRow<T>, rowB: TableRow<T>, columnId: string) => 0 | 1 | -1;\n\nexport const sortTypes: Record<SortTypes, SortHandler<any>> = {\n datetime: (rowA, rowB, columnId) => {\n const a = getTime(rowA.values[columnId]);\n const b = getTime(rowB.values[columnId]);\n return compareBasic(a, b);\n },\n string: (rowA, rowB, columnId) => {\n const a = getString(rowA.values[columnId]);\n const b = getString(rowB.values[columnId]);\n return compareBasic(a, b);\n },\n number: (rowA, rowB, columnId) => {\n const a = getNumber(rowA.values[columnId]);\n const b = getNumber(rowB.values[columnId]);\n return compareBasic(a, b);\n },\n boolean: (rowA, rowB, columnId) => {\n const a = !!rowA.values[columnId];\n const b = !!rowB.values[columnId];\n return compareBasic(a, b);\n },\n auto: (rowA, rowB, columnId) => {\n const a = guess(rowA.values[columnId]);\n const b = guess(rowB.values[columnId]);\n return compareBasic(a, b);\n },\n};\n"],"names":["getTime","value","parsedValue","Date","undefined","getNumber","amount","decimalSeparator","length","Number","replace","isNaN","getString","String","toLowerCase","guess","compareBasic","a","b","sortTypes","datetime","rowA","rowB","columnId","values","string","number","auto"],"mappings":"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"}
1
+ {"version":3,"file":"sortTypes.js","sources":["../../../../../src/components/Table/util/sortTypes.ts"],"sourcesContent":["import { SortTypes, TableRow } from '../types';\r\n\r\nconst getTime = (value: any): number | undefined => {\r\n const parsedValue: Date = typeof value === 'string' ? new Date(value) : value;\r\n return parsedValue?.getTime ? parsedValue.getTime() : undefined;\r\n};\r\n\r\nconst getNumber = (amount = '', decimalSeparator = ','): number | undefined => {\r\n if (typeof amount === 'number') {\r\n return amount;\r\n }\r\n\r\n if (amount === null || !amount.length) {\r\n return undefined;\r\n }\r\n\r\n let value;\r\n\r\n if (decimalSeparator === ',') {\r\n // replace digit seperator then replace decimal separator\r\n value = Number(amount.replace(/\\./g, '').replace(',', '.'));\r\n } else {\r\n // replace digit seperator\r\n value = Number(amount.replace(/,/g, ''));\r\n }\r\n\r\n return Number.isNaN(value) ? undefined : value;\r\n};\r\n\r\nconst getString = (value: any): string | undefined => {\r\n if (value) {\r\n return String(value).toLowerCase();\r\n }\r\n\r\n return undefined;\r\n};\r\n\r\nconst guess = (value: any): any => {\r\n if (typeof value === 'boolean') {\r\n return !!value;\r\n }\r\n\r\n return isNaN(value) ? getString(value) : Number(value);\r\n};\r\n\r\nconst compareBasic = (a: any, b: any) => {\r\n // places undefined values first in ascending order instead of descending\r\n if (a !== undefined && b === undefined) {\r\n return 1;\r\n }\r\n\r\n return a === b ? 0 : a > b ? 1 : -1;\r\n};\r\n\r\ntype SortHandler<T> = (rowA: TableRow<T>, rowB: TableRow<T>, columnId: string) => 0 | 1 | -1;\r\n\r\nexport const sortTypes: Record<SortTypes, SortHandler<any>> = {\r\n datetime: (rowA, rowB, columnId) => {\r\n const a = getTime(rowA.values[columnId]);\r\n const b = getTime(rowB.values[columnId]);\r\n return compareBasic(a, b);\r\n },\r\n string: (rowA, rowB, columnId) => {\r\n const a = getString(rowA.values[columnId]);\r\n const b = getString(rowB.values[columnId]);\r\n return compareBasic(a, b);\r\n },\r\n number: (rowA, rowB, columnId) => {\r\n const a = getNumber(rowA.values[columnId]);\r\n const b = getNumber(rowB.values[columnId]);\r\n return compareBasic(a, b);\r\n },\r\n boolean: (rowA, rowB, columnId) => {\r\n const a = !!rowA.values[columnId];\r\n const b = !!rowB.values[columnId];\r\n return compareBasic(a, b);\r\n },\r\n auto: (rowA, rowB, columnId) => {\r\n const a = guess(rowA.values[columnId]);\r\n const b = guess(rowB.values[columnId]);\r\n return compareBasic(a, b);\r\n },\r\n};\r\n"],"names":["getTime","value","parsedValue","Date","undefined","getNumber","amount","decimalSeparator","length","Number","replace","isNaN","getString","String","toLowerCase","guess","compareBasic","a","b","sortTypes","datetime","rowA","rowB","columnId","values","string","number","boolean","auto"],"mappings":"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"}
@@ -1,11 +1,9 @@
1
- import { objectWithoutPropertiesLoose as _objectWithoutPropertiesLoose, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
2
1
  import React__default from 'react';
3
2
 
4
- var _excluded = ["children"];
5
- var sanitizeRowProps = function sanitizeRowProps(row, rowExpansionRenderer) {
3
+ const sanitizeRowProps = (row, rowExpansionRenderer) => {
6
4
  var _row$subRows;
7
5
 
8
- var props = {
6
+ const props = {
9
7
  index: row.index,
10
8
  indexPath: row.id,
11
9
  values: row.original
@@ -15,15 +13,11 @@ var sanitizeRowProps = function sanitizeRowProps(row, rowExpansionRenderer) {
15
13
  props.isExpanded = !!row.isExpanded;
16
14
  props.depth = row.depth;
17
15
 
18
- props.toggleRowExpanded = function () {
19
- return row.toggleRowExpanded(!props.isExpanded);
20
- };
16
+ props.toggleRowExpanded = () => row.toggleRowExpanded(!props.isExpanded);
21
17
  } else if (rowExpansionRenderer) {
22
18
  props.isExpanded = !!row.isExpanded;
23
19
 
24
- props.toggleRowExpanded = function () {
25
- return row.toggleRowExpanded(!props.isExpanded);
26
- };
20
+ props.toggleRowExpanded = () => row.toggleRowExpanded(!props.isExpanded);
27
21
  }
28
22
 
29
23
  if (row.toggleRowEditing) {
@@ -33,40 +27,36 @@ var sanitizeRowProps = function sanitizeRowProps(row, rowExpansionRenderer) {
33
27
 
34
28
  return props;
35
29
  };
36
- var getColumnsFromChildren = function getColumnsFromChildren(children, rowExpansionRenderer) {
37
- var sortRules = [];
38
- var columns = React__default.Children.toArray(children).filter(function (child) {
39
- return !!child && !child.props.hidden;
40
- }) // skip falsey or hidden columns
41
- .map(function (_ref) {
42
- var _ref$props = _ref.props,
43
- groupChildren = _ref$props.children,
44
- props = _objectWithoutPropertiesLoose(_ref$props, _excluded);
45
-
46
- var column = _extends({}, props);
47
-
30
+ const getColumnsFromChildren = (children, rowExpansionRenderer) => {
31
+ const sortRules = [];
32
+ const columns = React__default.Children.toArray(children).filter(child => !!child && !child.props.hidden) // skip falsey or hidden columns
33
+ .map(({
34
+ props: {
35
+ children: groupChildren,
36
+ ...props
37
+ }
38
+ }) => {
39
+ const column = { ...props
40
+ };
48
41
  column.sortType = column.sortType || 'auto';
49
42
  column.disableSortBy = column.disableSorting; // this is a Table.Group - TODO: Find a better way to determine the child type
50
43
 
51
44
  if (props.title && groupChildren) {
52
45
  column.Header = props.title;
53
-
54
- var _getColumnsFromChildr = getColumnsFromChildren(groupChildren, rowExpansionRenderer),
55
- groupColumns = _getColumnsFromChildr.columns,
56
- groupSortRules = _getColumnsFromChildr.sortRules;
57
-
46
+ const {
47
+ columns: groupColumns,
48
+ sortRules: groupSortRules
49
+ } = getColumnsFromChildren(groupChildren, rowExpansionRenderer);
58
50
  column.columns = groupColumns;
59
- groupSortRules.forEach(function (sort) {
60
- return sortRules.push(sort);
61
- });
51
+ groupSortRules.forEach(sort => sortRules.push(sort));
62
52
  } else {
63
53
  column.accessor = props.accessor;
64
54
  column.Header = props.headRenderer || '';
65
55
 
66
- column.Cell = function (columnProps) {
56
+ column.Cell = columnProps => {
67
57
  var _props$cellRenderer, _cell$value;
68
58
 
69
- var cell = {
59
+ const cell = {
70
60
  accessor: columnProps.cell.column.id,
71
61
  row: sanitizeRowProps(columnProps.cell.row, rowExpansionRenderer),
72
62
  value: columnProps.cell.value
@@ -94,17 +84,15 @@ var getColumnsFromChildren = function getColumnsFromChildren(children, rowExpans
94
84
  return column;
95
85
  });
96
86
  return {
97
- columns: columns,
98
- sortRules: sortRules
87
+ columns,
88
+ sortRules
99
89
  };
100
90
  };
101
- var getInternalSortRules = function getInternalSortRules(sortRules) {
102
- return sortRules === null || sortRules === void 0 ? void 0 : sortRules.map(function (rule) {
103
- return {
104
- id: rule.accessor,
105
- desc: rule.desc
106
- };
107
- });
91
+ const getInternalSortRules = sortRules => {
92
+ return sortRules === null || sortRules === void 0 ? void 0 : sortRules.map(rule => ({
93
+ id: rule.accessor,
94
+ desc: rule.desc
95
+ }));
108
96
  };
109
97
 
110
98
  export { getColumnsFromChildren, getInternalSortRules, sanitizeRowProps };
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sources":["../../../../src/components/Table/util.ts"],"sourcesContent":["import React from 'react';\nimport { TableRow, TableCell, TableChildren, InternalTableRow, InternalTableColumn, SortRule } from './types';\nimport { SortingRule } from 'react-table';\n\nexport const sanitizeRowProps = (row: InternalTableRow, rowExpansionRenderer: any): TableRow<any> => {\n const props: TableRow<any> = {\n index: row.index,\n indexPath: row.id,\n values: row.original,\n };\n\n if (row.subRows?.length > 0) {\n props.isExpanded = !!row.isExpanded;\n props.depth = row.depth;\n props.toggleRowExpanded = () => row.toggleRowExpanded(!props.isExpanded);\n } else if (rowExpansionRenderer) {\n props.isExpanded = !!row.isExpanded;\n props.toggleRowExpanded = () => row.toggleRowExpanded(!props.isExpanded);\n }\n\n if (row.toggleRowEditing) {\n props.isEditing = !!row.isEditing;\n props.toggleRowEditing = row.toggleRowEditing;\n }\n\n return props;\n};\n\nexport const getColumnsFromChildren = (children: TableChildren<any>, rowExpansionRenderer: any) => {\n const sortRules: SortingRule<any>[] = [];\n\n const columns = React.Children.toArray(children)\n .filter((child: any) => !!child && !child.props.hidden) // skip falsey or hidden columns\n .map(({ props: { children: groupChildren, ...props } }: any) => {\n const column: InternalTableColumn & { disableSortBy: boolean | undefined } = { ...props };\n\n column.sortType = column.sortType || 'auto';\n column.disableSortBy = column.disableSorting;\n\n // this is a Table.Group - TODO: Find a better way to determine the child type\n if (props.title && groupChildren) {\n column.Header = props.title;\n\n const { columns: groupColumns, sortRules: groupSortRules } = getColumnsFromChildren(\n groupChildren,\n rowExpansionRenderer\n );\n column.columns = groupColumns;\n groupSortRules.forEach(sort => sortRules.push(sort));\n } else {\n column.accessor = props.accessor;\n column.Header = props.headRenderer || '';\n column.Cell = (columnProps: any) => {\n const cell: TableCell<any> = {\n accessor: columnProps.cell.column.id,\n row: sanitizeRowProps(columnProps.cell.row, rowExpansionRenderer),\n value: columnProps.cell.value,\n };\n\n if (cell.row.isEditing && typeof props.editRenderer === 'function') {\n return props.editRenderer(cell);\n }\n\n return typeof props.cellRenderer === 'function' ? props.cellRenderer(cell) ?? null : cell.value ?? null;\n };\n\n // custom props\n column.align = props.align;\n column.flex = props.flex;\n\n if (props.sort && !props.disableSorting) {\n sortRules.push({\n id: props.accessor,\n desc: props.sort === 'desc',\n });\n }\n }\n\n return column;\n });\n\n return { columns, sortRules };\n};\n\nexport const getInternalSortRules = <T>(sortRules: SortRule<T>[] | undefined): SortingRule<T>[] | undefined => {\n return sortRules?.map<SortingRule<T>>(rule => ({ id: rule.accessor, desc: rule.desc }));\n};\n"],"names":["sanitizeRowProps","row","rowExpansionRenderer","props","index","indexPath","id","values","original","subRows","length","isExpanded","depth","toggleRowExpanded","toggleRowEditing","isEditing","getColumnsFromChildren","children","sortRules","columns","React","Children","toArray","filter","child","hidden","map","groupChildren","column","sortType","disableSortBy","disableSorting","title","Header","groupColumns","groupSortRules","forEach","sort","push","accessor","headRenderer","Cell","columnProps","cell","value","editRenderer","cellRenderer","align","flex","desc","getInternalSortRules","rule"],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sources":["../../../../src/components/Table/util.ts"],"sourcesContent":["import React from 'react';\r\nimport { TableRow, TableCell, TableChildren, InternalTableRow, InternalTableColumn, SortRule } from './types';\r\nimport { SortingRule } from 'react-table';\r\n\r\nexport const sanitizeRowProps = (row: InternalTableRow, rowExpansionRenderer: any): TableRow<any> => {\r\n const props: TableRow<any> = {\r\n index: row.index,\r\n indexPath: row.id,\r\n values: row.original,\r\n };\r\n\r\n if (row.subRows?.length > 0) {\r\n props.isExpanded = !!row.isExpanded;\r\n props.depth = row.depth;\r\n props.toggleRowExpanded = () => row.toggleRowExpanded(!props.isExpanded);\r\n } else if (rowExpansionRenderer) {\r\n props.isExpanded = !!row.isExpanded;\r\n props.toggleRowExpanded = () => row.toggleRowExpanded(!props.isExpanded);\r\n }\r\n\r\n if (row.toggleRowEditing) {\r\n props.isEditing = !!row.isEditing;\r\n props.toggleRowEditing = row.toggleRowEditing;\r\n }\r\n\r\n return props;\r\n};\r\n\r\nexport const getColumnsFromChildren = (children: TableChildren<any>, rowExpansionRenderer: any) => {\r\n const sortRules: SortingRule<any>[] = [];\r\n\r\n const columns = React.Children.toArray(children)\r\n .filter((child: any) => !!child && !child.props.hidden) // skip falsey or hidden columns\r\n .map(({ props: { children: groupChildren, ...props } }: any) => {\r\n const column: InternalTableColumn & { disableSortBy: boolean | undefined } = { ...props };\r\n\r\n column.sortType = column.sortType || 'auto';\r\n column.disableSortBy = column.disableSorting;\r\n\r\n // this is a Table.Group - TODO: Find a better way to determine the child type\r\n if (props.title && groupChildren) {\r\n column.Header = props.title;\r\n\r\n const { columns: groupColumns, sortRules: groupSortRules } = getColumnsFromChildren(\r\n groupChildren,\r\n rowExpansionRenderer\r\n );\r\n column.columns = groupColumns;\r\n groupSortRules.forEach(sort => sortRules.push(sort));\r\n } else {\r\n column.accessor = props.accessor;\r\n column.Header = props.headRenderer || '';\r\n column.Cell = (columnProps: any) => {\r\n const cell: TableCell<any> = {\r\n accessor: columnProps.cell.column.id,\r\n row: sanitizeRowProps(columnProps.cell.row, rowExpansionRenderer),\r\n value: columnProps.cell.value,\r\n };\r\n\r\n if (cell.row.isEditing && typeof props.editRenderer === 'function') {\r\n return props.editRenderer(cell);\r\n }\r\n\r\n return typeof props.cellRenderer === 'function' ? props.cellRenderer(cell) ?? null : cell.value ?? null;\r\n };\r\n\r\n // custom props\r\n column.align = props.align;\r\n column.flex = props.flex;\r\n\r\n if (props.sort && !props.disableSorting) {\r\n sortRules.push({\r\n id: props.accessor,\r\n desc: props.sort === 'desc',\r\n });\r\n }\r\n }\r\n\r\n return column;\r\n });\r\n\r\n return { columns, sortRules };\r\n};\r\n\r\nexport const getInternalSortRules = <T>(sortRules: SortRule<T>[] | undefined): SortingRule<T>[] | undefined => {\r\n return sortRules?.map<SortingRule<T>>(rule => ({ id: rule.accessor, desc: rule.desc }));\r\n};\r\n"],"names":["sanitizeRowProps","row","rowExpansionRenderer","props","index","indexPath","id","values","original","subRows","length","isExpanded","depth","toggleRowExpanded","toggleRowEditing","isEditing","getColumnsFromChildren","children","sortRules","columns","React","Children","toArray","filter","child","hidden","map","groupChildren","column","sortType","disableSortBy","disableSorting","title","Header","groupColumns","groupSortRules","forEach","sort","push","accessor","headRenderer","Cell","columnProps","cell","value","editRenderer","cellRenderer","align","flex","desc","getInternalSortRules","rule"],"mappings":"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"}