@economic/taco 1.40.3 → 2.0.0-alpha.173

Sign up to get free protection for your applications and to get access to all the features.
Files changed (435) hide show
  1. package/dist/components/Icon/components/HeightTall.d.ts +3 -0
  2. package/dist/components/Icon/components/index.d.ts +1 -1
  3. package/dist/components/IconButton/IconButton.d.ts +3 -3
  4. package/dist/components/Input/Input.d.ts +1 -1
  5. package/dist/components/Menu/Menu.d.ts +2 -0
  6. package/dist/components/Menu/components/Item.d.ts +6 -1
  7. package/dist/components/Menu/components/Link.d.ts +1 -1
  8. package/dist/components/Menu/components/SubMenu.d.ts +8 -0
  9. package/dist/components/Navigation2/components/Link.d.ts +1 -1
  10. package/dist/components/Popover/Popover.d.ts +3 -0
  11. package/dist/components/Provider/Localization.d.ts +55 -20
  12. package/dist/components/RadioGroup/util.d.ts +1 -0
  13. package/dist/components/SearchInput/SearchInput.d.ts +2 -0
  14. package/dist/components/SearchInput2/SearchInput2.d.ts +23 -0
  15. package/dist/components/Select2/components/Option.d.ts +1 -1
  16. package/dist/components/Select2/components/Search.d.ts +1 -1
  17. package/dist/components/Table3/Table3.d.ts +11 -0
  18. package/dist/components/Table3/components/columns/cell/Cell.d.ts +6 -0
  19. package/dist/components/Table3/components/columns/cell/DisplayCell.d.ts +22 -0
  20. package/dist/components/Table3/components/columns/cell/EditingCell.d.ts +7 -0
  21. package/dist/components/Table3/components/columns/footer/Footer.d.ts +14 -0
  22. package/dist/components/Table3/components/columns/footer/Summary.d.ts +7 -0
  23. package/dist/components/Table3/components/columns/header/Goto.d.ts +6 -0
  24. package/dist/components/Table3/components/columns/header/Header.d.ts +27 -0
  25. package/dist/components/Table3/components/columns/header/Menu.d.ts +16 -0
  26. package/dist/components/Table3/components/columns/header/Resizer.d.ts +7 -0
  27. package/dist/components/Table3/components/columns/header/SortIndicator.d.ts +12 -0
  28. package/dist/components/Table3/components/columns/internal/Actions.d.ts +4 -0
  29. package/dist/components/Table3/components/columns/internal/Drag.d.ts +4 -0
  30. package/dist/components/Table3/components/columns/internal/EditingActions.d.ts +8 -0
  31. package/dist/components/Table3/components/columns/internal/Expansion.d.ts +4 -0
  32. package/dist/components/Table3/components/columns/internal/Selection.d.ts +4 -0
  33. package/dist/components/Table3/components/columns/styles.d.ts +4 -0
  34. package/dist/components/Table3/components/rows/ExpandedRow.d.ts +8 -0
  35. package/dist/components/Table3/components/rows/Row.d.ts +21 -0
  36. package/dist/components/Table3/components/rows/RowContext.d.ts +9 -0
  37. package/dist/components/Table3/components/rows/SkeletonRow.d.ts +10 -0
  38. package/dist/components/Table3/components/rows/styles.d.ts +6 -0
  39. package/dist/components/{Table2/components/ColumnSettingsButton.d.ts → Table3/components/toolbar/ColumnSettings.d.ts} +1 -1
  40. package/dist/components/Table3/components/toolbar/EditButton.d.ts +7 -0
  41. package/dist/components/Table3/components/toolbar/Filter/filters/Filters.d.ts +7 -0
  42. package/dist/components/Table3/components/toolbar/Filter/filters/components/Comparator.d.ts +11 -0
  43. package/dist/components/Table3/components/toolbar/Filter/filters/components/Filter.d.ts +13 -0
  44. package/dist/components/Table3/components/toolbar/Filter/filters/components/FilterColumn.d.ts +8 -0
  45. package/dist/components/Table3/components/toolbar/Filter/filters/components/FilterComparator.d.ts +7 -0
  46. package/dist/components/Table3/components/toolbar/Filter/filters/components/FilterValue.d.ts +10 -0
  47. package/dist/components/Table3/components/toolbar/Filter/filters/components/Placeholder.d.ts +11 -0
  48. package/dist/components/Table3/components/toolbar/FontSize.d.ts +7 -0
  49. package/dist/components/Table3/components/toolbar/PrintButton/PrintButton.d.ts +8 -0
  50. package/dist/components/Table3/components/toolbar/PrintButton/PrintIFrame.d.ts +8 -0
  51. package/dist/components/Table3/components/toolbar/PrintButton/hooks/useParentStylesheets.d.ts +1 -0
  52. package/dist/components/Table3/components/toolbar/RowHeight.d.ts +7 -0
  53. package/dist/components/Table3/components/toolbar/Search.d.ts +8 -0
  54. package/dist/components/Table3/components/toolbar/Toolbar.d.ts +12 -0
  55. package/dist/components/Table3/hooks/features/useColumnFreezing.d.ts +12 -0
  56. package/dist/components/Table3/hooks/features/useColumnOrdering.d.ts +6 -0
  57. package/dist/components/Table3/hooks/features/useCurrentRow.d.ts +9 -0
  58. package/dist/components/Table3/hooks/features/useEditing.d.ts +31 -0
  59. package/dist/components/Table3/hooks/features/useFontSize.d.ts +7 -0
  60. package/dist/components/Table3/hooks/features/usePauseHoverState.d.ts +6 -0
  61. package/dist/components/Table3/hooks/features/usePrinting.d.ts +5 -0
  62. package/dist/components/Table3/hooks/features/useRowClick.d.ts +7 -0
  63. package/dist/components/Table3/hooks/features/useRowDrag.d.ts +6 -0
  64. package/dist/components/Table3/hooks/features/useRowDrop.d.ts +5 -0
  65. package/dist/components/Table3/hooks/features/useRowGoto.d.ts +5 -0
  66. package/dist/components/Table3/hooks/features/useRowHeight.d.ts +7 -0
  67. package/dist/components/Table3/hooks/features/useRowSelection.d.ts +6 -0
  68. package/dist/components/Table3/hooks/features/useSearch.d.ts +16 -0
  69. package/dist/components/Table3/hooks/listeners/useCurrentRowListener.d.ts +2 -0
  70. package/dist/components/Table3/hooks/listeners/useEditingStateListener.d.ts +2 -0
  71. package/dist/components/Table3/hooks/listeners/useFilteringStateListener.d.ts +3 -0
  72. package/dist/components/Table3/hooks/listeners/useRowSelectionListener.d.ts +3 -0
  73. package/dist/components/Table3/hooks/listeners/useSearchStateListener.d.ts +3 -0
  74. package/dist/components/Table3/hooks/listeners/useServerLoadingListener.d.ts +3 -0
  75. package/dist/components/Table3/hooks/listeners/useSettingsStateListener.d.ts +3 -0
  76. package/dist/components/Table3/hooks/listeners/useShortcutsListener.d.ts +3 -0
  77. package/dist/components/Table3/hooks/listeners/useSortingStateListener.d.ts +3 -0
  78. package/dist/components/Table3/hooks/useConvertChildrenToColumns.d.ts +9 -0
  79. package/dist/components/Table3/hooks/useCssGrid.d.ts +5 -0
  80. package/dist/components/Table3/hooks/useCssVars.d.ts +6 -0
  81. package/dist/components/Table3/hooks/useTable.d.ts +63 -0
  82. package/dist/components/Table3/hooks/useTableData.d.ts +23 -0
  83. package/dist/components/Table3/hooks/useTablePreset.d.ts +2 -0
  84. package/dist/components/Table3/hooks/useTableRefInstanceSetup.d.ts +4 -0
  85. package/dist/components/Table3/strategies/index.d.ts +4 -0
  86. package/dist/components/Table3/strategies/virtualised.d.ts +4 -0
  87. package/dist/components/Table3/types.d.ts +311 -0
  88. package/dist/components/Table3/util/columns.d.ts +7 -0
  89. package/dist/components/{Table2/components/column/utils.d.ts → Table3/util/editing.d.ts} +2 -1
  90. package/dist/components/Table3/util/filtering.d.ts +3 -0
  91. package/dist/components/Tabs/Tabs.d.ts +2 -0
  92. package/dist/components/Tag/Tag.d.ts +1 -1
  93. package/dist/esm/index.css +130 -2
  94. package/dist/esm/node_modules/babel-plugin-transform-async-to-promises/helpers.mjs.js +2 -2
  95. package/dist/esm/node_modules/babel-plugin-transform-async-to-promises/helpers.mjs.js.map +1 -1
  96. package/dist/esm/packages/taco/src/components/Alert/Alert.js +1 -0
  97. package/dist/esm/packages/taco/src/components/Alert/Alert.js.map +1 -1
  98. package/dist/esm/packages/taco/src/components/Checkbox/Checkbox.js +3 -1
  99. package/dist/esm/packages/taco/src/components/Checkbox/Checkbox.js.map +1 -1
  100. package/dist/esm/packages/taco/src/components/Datepicker/useDatepicker.js +4 -1
  101. package/dist/esm/packages/taco/src/components/Datepicker/useDatepicker.js.map +1 -1
  102. package/dist/esm/packages/taco/src/components/Drawer/components/Content.js +1 -1
  103. package/dist/esm/packages/taco/src/components/Icon/components/FontSize.js +19 -0
  104. package/dist/esm/packages/taco/src/components/Icon/components/FontSize.js.map +1 -0
  105. package/dist/esm/packages/taco/src/components/Icon/components/{DensitySpacious.js → HeightExtraTall.js} +4 -4
  106. package/dist/esm/packages/taco/src/components/Icon/components/{DensitySpacious.js.map → HeightExtraTall.js.map} +1 -1
  107. package/dist/esm/packages/taco/src/components/Icon/components/{DensityNormal.js → HeightMedium.js} +4 -4
  108. package/dist/esm/packages/taco/src/components/Icon/components/HeightMedium.js.map +1 -0
  109. package/dist/esm/packages/taco/src/components/Icon/components/{DensityCompact.js → HeightShort.js} +4 -4
  110. package/dist/esm/packages/taco/src/components/Icon/components/HeightShort.js.map +1 -0
  111. package/dist/esm/packages/taco/src/components/Icon/components/{DensityComfortable.js → HeightTall.js} +4 -4
  112. package/dist/esm/packages/taco/src/components/Icon/components/HeightTall.js.map +1 -0
  113. package/dist/esm/packages/taco/src/components/Icon/components/index.js +10 -8
  114. package/dist/esm/packages/taco/src/components/Icon/components/index.js.map +1 -1
  115. package/dist/esm/packages/taco/src/components/IconButton/IconButton.js.map +1 -1
  116. package/dist/esm/packages/taco/src/components/Input/Input.js +1 -1
  117. package/dist/esm/packages/taco/src/components/Input/Input.js.map +1 -1
  118. package/dist/esm/packages/taco/src/components/Menu/Menu.js +2 -0
  119. package/dist/esm/packages/taco/src/components/Menu/Menu.js.map +1 -1
  120. package/dist/esm/packages/taco/src/components/Menu/components/Item.js +20 -2
  121. package/dist/esm/packages/taco/src/components/Menu/components/Item.js.map +1 -1
  122. package/dist/esm/packages/taco/src/components/Menu/components/SubMenu.js +22 -0
  123. package/dist/esm/packages/taco/src/components/Menu/components/SubMenu.js.map +1 -0
  124. package/dist/esm/packages/taco/src/components/Popover/Popover.js +11 -3
  125. package/dist/esm/packages/taco/src/components/Popover/Popover.js.map +1 -1
  126. package/dist/esm/packages/taco/src/components/Provider/Localization.js +56 -21
  127. package/dist/esm/packages/taco/src/components/Provider/Localization.js.map +1 -1
  128. package/dist/esm/packages/taco/src/components/RadioGroup/RadioGroup.js +2 -7
  129. package/dist/esm/packages/taco/src/components/RadioGroup/RadioGroup.js.map +1 -1
  130. package/dist/esm/packages/taco/src/components/RadioGroup/util.js +14 -0
  131. package/dist/esm/packages/taco/src/components/RadioGroup/util.js.map +1 -0
  132. package/dist/esm/packages/taco/src/components/SearchInput/SearchInput.js +4 -0
  133. package/dist/esm/packages/taco/src/components/SearchInput/SearchInput.js.map +1 -1
  134. package/dist/esm/packages/taco/src/components/SearchInput2/SearchInput2.js +196 -0
  135. package/dist/esm/packages/taco/src/components/SearchInput2/SearchInput2.js.map +1 -0
  136. package/dist/esm/packages/taco/src/components/Shortcut/Shortcut.js +3 -1
  137. package/dist/esm/packages/taco/src/components/Shortcut/Shortcut.js.map +1 -1
  138. package/dist/esm/packages/taco/src/components/Switch/Switch.js +3 -1
  139. package/dist/esm/packages/taco/src/components/Switch/Switch.js.map +1 -1
  140. package/dist/esm/packages/taco/src/components/Table3/Table3.js +145 -0
  141. package/dist/esm/packages/taco/src/components/Table3/Table3.js.map +1 -0
  142. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/Cell.js +27 -0
  143. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/Cell.js.map +1 -0
  144. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/DisplayCell.js +128 -0
  145. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/DisplayCell.js.map +1 -0
  146. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/EditingCell.js +283 -0
  147. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/EditingCell.js.map +1 -0
  148. package/dist/esm/packages/taco/src/components/{Table2/components/column → Table3/components/columns/cell}/Indicator.js +14 -13
  149. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/Indicator.js.map +1 -0
  150. package/dist/esm/packages/taco/src/components/Table3/components/columns/footer/Footer.js +50 -0
  151. package/dist/esm/packages/taco/src/components/Table3/components/columns/footer/Footer.js.map +1 -0
  152. package/dist/esm/packages/taco/src/components/Table3/components/columns/footer/Summary.js +30 -0
  153. package/dist/esm/packages/taco/src/components/Table3/components/columns/footer/Summary.js.map +1 -0
  154. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Goto.js +27 -0
  155. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Goto.js.map +1 -0
  156. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Header.js +134 -0
  157. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Header.js.map +1 -0
  158. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Menu.js +156 -0
  159. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Menu.js.map +1 -0
  160. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Resizer.js +42 -0
  161. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Resizer.js.map +1 -0
  162. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/SortIndicator.js +38 -0
  163. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/SortIndicator.js.map +1 -0
  164. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Actions.js +108 -0
  165. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Actions.js.map +1 -0
  166. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Drag.js +86 -0
  167. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Drag.js.map +1 -0
  168. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/EditingActions.js +124 -0
  169. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/EditingActions.js.map +1 -0
  170. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Expansion.js +103 -0
  171. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Expansion.js.map +1 -0
  172. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Selection.js +121 -0
  173. package/dist/esm/packages/taco/src/components/Table3/components/columns/internal/Selection.js.map +1 -0
  174. package/dist/esm/packages/taco/src/components/Table3/components/columns/styles.js +17 -0
  175. package/dist/esm/packages/taco/src/components/Table3/components/columns/styles.js.map +1 -0
  176. package/dist/esm/packages/taco/src/components/Table3/components/rows/ExpandedRow.js +27 -0
  177. package/dist/esm/packages/taco/src/components/Table3/components/rows/ExpandedRow.js.map +1 -0
  178. package/dist/esm/packages/taco/src/components/Table3/components/rows/Row.js +255 -0
  179. package/dist/esm/packages/taco/src/components/Table3/components/rows/Row.js.map +1 -0
  180. package/dist/esm/packages/taco/src/components/Table3/components/rows/RowContext.js +13 -0
  181. package/dist/esm/packages/taco/src/components/Table3/components/rows/RowContext.js.map +1 -0
  182. package/dist/esm/packages/taco/src/components/Table3/components/rows/SkeletonRow.js +43 -0
  183. package/dist/esm/packages/taco/src/components/Table3/components/rows/SkeletonRow.js.map +1 -0
  184. package/dist/esm/packages/taco/src/components/Table3/components/rows/styles.js +9 -0
  185. package/dist/esm/packages/taco/src/components/Table3/components/rows/styles.js.map +1 -0
  186. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/ColumnSettings.js +105 -0
  187. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/ColumnSettings.js.map +1 -0
  188. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/EditButton.js +45 -0
  189. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/EditButton.js.map +1 -0
  190. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/Filters.js +148 -0
  191. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/Filters.js.map +1 -0
  192. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/Filter.js +107 -0
  193. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/Filter.js.map +1 -0
  194. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/FilterColumn.js +28 -0
  195. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/FilterColumn.js.map +1 -0
  196. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/FilterComparator.js +60 -0
  197. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/FilterComparator.js.map +1 -0
  198. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/FilterValue.js +89 -0
  199. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/FilterValue.js.map +1 -0
  200. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/Placeholder.js +45 -0
  201. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/components/Placeholder.js.map +1 -0
  202. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/FontSize.js +25 -0
  203. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/FontSize.js.map +1 -0
  204. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/PrintButton.js +99 -0
  205. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/PrintButton.js.map +1 -0
  206. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/PrintIFrame.js +223 -0
  207. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/PrintIFrame.js.map +1 -0
  208. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/hooks/useParentStylesheets.js +88 -0
  209. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/PrintButton/hooks/useParentStylesheets.js.map +1 -0
  210. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/RowHeight.js +26 -0
  211. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/RowHeight.js.map +1 -0
  212. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Search.js +137 -0
  213. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Search.js.map +1 -0
  214. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Toolbar.js +85 -0
  215. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Toolbar.js.map +1 -0
  216. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useColumnFreezing.js +87 -0
  217. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useColumnFreezing.js.map +1 -0
  218. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useColumnOrdering.js +45 -0
  219. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useColumnOrdering.js.map +1 -0
  220. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useCurrentRow.js +52 -0
  221. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useCurrentRow.js.map +1 -0
  222. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useEditing.js +197 -0
  223. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useEditing.js.map +1 -0
  224. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useFontSize.js +13 -0
  225. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useFontSize.js.map +1 -0
  226. package/dist/esm/packages/taco/src/components/Table3/hooks/features/usePauseHoverState.js +19 -0
  227. package/dist/esm/packages/taco/src/components/Table3/hooks/features/usePauseHoverState.js.map +1 -0
  228. package/dist/esm/packages/taco/src/components/Table3/hooks/features/usePrinting.js +9 -0
  229. package/dist/esm/packages/taco/src/components/Table3/hooks/features/usePrinting.js.map +1 -0
  230. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowClick.js +25 -0
  231. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowClick.js.map +1 -0
  232. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowDrag.js +13 -0
  233. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowDrag.js.map +1 -0
  234. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowDrop.js +9 -0
  235. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowDrop.js.map +1 -0
  236. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowGoto.js +9 -0
  237. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowGoto.js.map +1 -0
  238. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowHeight.js +27 -0
  239. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowHeight.js.map +1 -0
  240. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowSelection.js +29 -0
  241. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useRowSelection.js.map +1 -0
  242. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useSearch.js +27 -0
  243. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useSearch.js.map +1 -0
  244. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useCurrentRowListener.js +14 -0
  245. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useCurrentRowListener.js.map +1 -0
  246. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useEditingStateListener.js +24 -0
  247. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useEditingStateListener.js.map +1 -0
  248. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useFilteringStateListener.js +19 -0
  249. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useFilteringStateListener.js.map +1 -0
  250. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useRowSelectionListener.js +19 -0
  251. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useRowSelectionListener.js.map +1 -0
  252. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useSearchStateListener.js +51 -0
  253. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useSearchStateListener.js.map +1 -0
  254. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useServerLoadingListener.js +16 -0
  255. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useServerLoadingListener.js.map +1 -0
  256. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useSettingsStateListener.js +26 -0
  257. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useSettingsStateListener.js.map +1 -0
  258. package/dist/esm/packages/taco/src/components/{Table2/hooks/useTableShortcuts.js → Table3/hooks/listeners/useShortcutsListener.js} +9 -6
  259. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useShortcutsListener.js.map +1 -0
  260. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useSortingStateListener.js +17 -0
  261. package/dist/esm/packages/taco/src/components/Table3/hooks/listeners/useSortingStateListener.js.map +1 -0
  262. package/dist/esm/packages/taco/src/components/Table3/hooks/useConvertChildrenToColumns.js +116 -0
  263. package/dist/esm/packages/taco/src/components/Table3/hooks/useConvertChildrenToColumns.js.map +1 -0
  264. package/dist/esm/packages/taco/src/components/Table3/hooks/useCssGrid.js +56 -0
  265. package/dist/esm/packages/taco/src/components/Table3/hooks/useCssGrid.js.map +1 -0
  266. package/dist/esm/packages/taco/src/components/Table3/hooks/useCssVars.js +61 -0
  267. package/dist/esm/packages/taco/src/components/Table3/hooks/useCssVars.js.map +1 -0
  268. package/dist/esm/packages/taco/src/components/Table3/hooks/useTable.js +154 -0
  269. package/dist/esm/packages/taco/src/components/Table3/hooks/useTable.js.map +1 -0
  270. package/dist/esm/packages/taco/src/components/Table3/hooks/useTableData.js +128 -0
  271. package/dist/esm/packages/taco/src/components/Table3/hooks/useTableData.js.map +1 -0
  272. package/dist/esm/packages/taco/src/components/Table3/hooks/useTablePreset.js +98 -0
  273. package/dist/esm/packages/taco/src/components/Table3/hooks/useTablePreset.js.map +1 -0
  274. package/dist/esm/packages/taco/src/components/Table3/hooks/useTableRefInstanceSetup.js +19 -0
  275. package/dist/esm/packages/taco/src/components/Table3/hooks/useTableRefInstanceSetup.js.map +1 -0
  276. package/dist/esm/packages/taco/src/components/Table3/strategies/index.js +8 -0
  277. package/dist/esm/packages/taco/src/components/Table3/strategies/index.js.map +1 -0
  278. package/dist/esm/packages/taco/src/components/Table3/strategies/virtualised.js +113 -0
  279. package/dist/esm/packages/taco/src/components/Table3/strategies/virtualised.js.map +1 -0
  280. package/dist/esm/packages/taco/src/components/Table3/types.js +18 -0
  281. package/dist/esm/packages/taco/src/components/Table3/types.js.map +1 -0
  282. package/dist/esm/packages/taco/src/components/Table3/util/columns.js +39 -0
  283. package/dist/esm/packages/taco/src/components/Table3/util/columns.js.map +1 -0
  284. package/dist/esm/packages/taco/src/components/{Table2/components/column/utils.js → Table3/util/editing.js} +7 -5
  285. package/dist/esm/packages/taco/src/components/Table3/util/editing.js.map +1 -0
  286. package/dist/esm/packages/taco/src/components/{Table2/utilities/filterFn.js → Table3/util/filtering.js} +19 -17
  287. package/dist/esm/packages/taco/src/components/Table3/util/filtering.js.map +1 -0
  288. package/dist/esm/packages/taco/src/components/Tabs/Tabs.js +9 -1
  289. package/dist/esm/packages/taco/src/components/Tabs/Tabs.js.map +1 -1
  290. package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js +10 -5
  291. package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js.map +1 -1
  292. package/dist/esm/packages/taco/src/hooks/useLazyEffect.js +16 -0
  293. package/dist/esm/packages/taco/src/hooks/useLazyEffect.js.map +1 -0
  294. package/dist/esm/packages/taco/src/index.js +6 -3
  295. package/dist/esm/packages/taco/src/index.js.map +1 -1
  296. package/dist/esm/packages/taco/src/primitives/Button.js +6 -17
  297. package/dist/esm/packages/taco/src/primitives/Button.js.map +1 -1
  298. package/dist/esm/packages/taco/src/utils/dom.js +1 -2
  299. package/dist/esm/packages/taco/src/utils/dom.js.map +1 -1
  300. package/dist/esm/packages/taco/src/utils/input.js +14 -1
  301. package/dist/esm/packages/taco/src/utils/input.js.map +1 -1
  302. package/dist/hooks/useGlobalKeyDown.d.ts +1 -1
  303. package/dist/hooks/useLazyEffect.d.ts +2 -0
  304. package/dist/index.css +130 -2
  305. package/dist/index.d.ts +3 -1
  306. package/dist/taco.cjs.development.js +4654 -3365
  307. package/dist/taco.cjs.development.js.map +1 -1
  308. package/dist/taco.cjs.production.min.js +1 -1
  309. package/dist/taco.cjs.production.min.js.map +1 -1
  310. package/dist/utils/input.d.ts +1 -0
  311. package/package.json +8 -10
  312. package/tailwind.config.js +0 -1
  313. package/types.json +1874 -1408
  314. package/dist/components/Table2/Table2.d.ts +0 -130
  315. package/dist/components/Table2/components/BatchActionsMenu.d.ts +0 -10
  316. package/dist/components/Table2/components/EditModeButton.d.ts +0 -8
  317. package/dist/components/Table2/components/RowDensityButton.d.ts +0 -7
  318. package/dist/components/Table2/components/Search.d.ts +0 -3
  319. package/dist/components/Table2/components/ShortcutsGuideButton.d.ts +0 -7
  320. package/dist/components/Table2/components/column/Base.d.ts +0 -14
  321. package/dist/components/Table2/components/column/Cell.d.ts +0 -15
  322. package/dist/components/Table2/components/column/Footer.d.ts +0 -9
  323. package/dist/components/Table2/components/column/Header.d.ts +0 -11
  324. package/dist/components/Table2/components/column/ValidationError.d.ts +0 -5
  325. package/dist/components/Table2/components/filters/FiltersButton.d.ts +0 -7
  326. package/dist/components/Table2/components/filters/components/Column.d.ts +0 -11
  327. package/dist/components/Table2/components/filters/components/ColumnFilter.d.ts +0 -10
  328. package/dist/components/Table2/components/filters/components/Comparator.d.ts +0 -11
  329. package/dist/components/Table2/components/filters/components/EmptyFilter.d.ts +0 -13
  330. package/dist/components/Table2/components/filters/components/InferredControl.d.ts +0 -10
  331. package/dist/components/Table2/components/row/Context.d.ts +0 -24
  332. package/dist/components/Table2/components/row/ExpandedRow.d.ts +0 -6
  333. package/dist/components/Table2/components/row/Row.d.ts +0 -2
  334. package/dist/components/Table2/hooks/listeners/useActiveCellStateListener.d.ts +0 -3
  335. package/dist/components/Table2/hooks/listeners/useActiveRowStateListener.d.ts +0 -3
  336. package/dist/components/Table2/hooks/listeners/useColumnOffsetStateListener.d.ts +0 -3
  337. package/dist/components/Table2/hooks/listeners/useFilterStateListener.d.ts +0 -3
  338. package/dist/components/Table2/hooks/listeners/useRowSelectionListener.d.ts +0 -3
  339. package/dist/components/Table2/hooks/listeners/useSettingsStateListener.d.ts +0 -3
  340. package/dist/components/Table2/hooks/useActiveCell.d.ts +0 -26
  341. package/dist/components/Table2/hooks/useActiveRow.d.ts +0 -10
  342. package/dist/components/Table2/hooks/useColumnDefinitions.d.ts +0 -37
  343. package/dist/components/Table2/hooks/useEditMode.d.ts +0 -28
  344. package/dist/components/Table2/hooks/useGridTemplate.d.ts +0 -2
  345. package/dist/components/Table2/hooks/useTable.d.ts +0 -46
  346. package/dist/components/Table2/hooks/useTableShortcuts.d.ts +0 -2
  347. package/dist/components/Table2/hooks/useVirtualiser.d.ts +0 -23
  348. package/dist/components/Table2/types.d.ts +0 -148
  349. package/dist/components/Table2/utilities/cell.d.ts +0 -14
  350. package/dist/components/Table2/utilities/columns.d.ts +0 -16
  351. package/dist/components/Table2/utilities/filterFn.d.ts +0 -3
  352. package/dist/esm/packages/taco/src/components/Icon/components/DensityComfortable.js.map +0 -1
  353. package/dist/esm/packages/taco/src/components/Icon/components/DensityCompact.js.map +0 -1
  354. package/dist/esm/packages/taco/src/components/Icon/components/DensityNormal.js.map +0 -1
  355. package/dist/esm/packages/taco/src/components/Table2/Table2.js +0 -422
  356. package/dist/esm/packages/taco/src/components/Table2/Table2.js.map +0 -1
  357. package/dist/esm/packages/taco/src/components/Table2/components/BatchActionsMenu.js +0 -83
  358. package/dist/esm/packages/taco/src/components/Table2/components/BatchActionsMenu.js.map +0 -1
  359. package/dist/esm/packages/taco/src/components/Table2/components/ColumnSettingsButton.js +0 -116
  360. package/dist/esm/packages/taco/src/components/Table2/components/ColumnSettingsButton.js.map +0 -1
  361. package/dist/esm/packages/taco/src/components/Table2/components/EditModeButton.js +0 -81
  362. package/dist/esm/packages/taco/src/components/Table2/components/EditModeButton.js.map +0 -1
  363. package/dist/esm/packages/taco/src/components/Table2/components/RowDensityButton.js +0 -35
  364. package/dist/esm/packages/taco/src/components/Table2/components/RowDensityButton.js.map +0 -1
  365. package/dist/esm/packages/taco/src/components/Table2/components/Search.js +0 -62
  366. package/dist/esm/packages/taco/src/components/Table2/components/Search.js.map +0 -1
  367. package/dist/esm/packages/taco/src/components/Table2/components/column/Base.js +0 -32
  368. package/dist/esm/packages/taco/src/components/Table2/components/column/Base.js.map +0 -1
  369. package/dist/esm/packages/taco/src/components/Table2/components/column/Cell.js +0 -600
  370. package/dist/esm/packages/taco/src/components/Table2/components/column/Cell.js.map +0 -1
  371. package/dist/esm/packages/taco/src/components/Table2/components/column/Footer.js +0 -32
  372. package/dist/esm/packages/taco/src/components/Table2/components/column/Footer.js.map +0 -1
  373. package/dist/esm/packages/taco/src/components/Table2/components/column/Header.js +0 -243
  374. package/dist/esm/packages/taco/src/components/Table2/components/column/Header.js.map +0 -1
  375. package/dist/esm/packages/taco/src/components/Table2/components/column/Indicator.js.map +0 -1
  376. package/dist/esm/packages/taco/src/components/Table2/components/column/ValidationError.js +0 -30
  377. package/dist/esm/packages/taco/src/components/Table2/components/column/ValidationError.js.map +0 -1
  378. package/dist/esm/packages/taco/src/components/Table2/components/column/utils.js.map +0 -1
  379. package/dist/esm/packages/taco/src/components/Table2/components/filters/FiltersButton.js +0 -155
  380. package/dist/esm/packages/taco/src/components/Table2/components/filters/FiltersButton.js.map +0 -1
  381. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/Column.js +0 -31
  382. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/Column.js.map +0 -1
  383. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/ColumnFilter.js +0 -129
  384. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/ColumnFilter.js.map +0 -1
  385. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/Comparator.js +0 -68
  386. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/Comparator.js.map +0 -1
  387. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/EmptyFilter.js +0 -63
  388. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/EmptyFilter.js.map +0 -1
  389. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/InferredControl.js +0 -99
  390. package/dist/esm/packages/taco/src/components/Table2/components/filters/components/InferredControl.js.map +0 -1
  391. package/dist/esm/packages/taco/src/components/Table2/components/row/Context.js +0 -58
  392. package/dist/esm/packages/taco/src/components/Table2/components/row/Context.js.map +0 -1
  393. package/dist/esm/packages/taco/src/components/Table2/components/row/ExpandedRow.js +0 -36
  394. package/dist/esm/packages/taco/src/components/Table2/components/row/ExpandedRow.js.map +0 -1
  395. package/dist/esm/packages/taco/src/components/Table2/components/row/Row.js +0 -43
  396. package/dist/esm/packages/taco/src/components/Table2/components/row/Row.js.map +0 -1
  397. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useActiveRowStateListener.js +0 -19
  398. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useActiveRowStateListener.js.map +0 -1
  399. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useColumnOffsetStateListener.js +0 -28
  400. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useColumnOffsetStateListener.js.map +0 -1
  401. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useFilterStateListener.js +0 -12
  402. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useFilterStateListener.js.map +0 -1
  403. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useRowSelectionListener.js +0 -18
  404. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useRowSelectionListener.js.map +0 -1
  405. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useSettingsStateListener.js +0 -25
  406. package/dist/esm/packages/taco/src/components/Table2/hooks/listeners/useSettingsStateListener.js.map +0 -1
  407. package/dist/esm/packages/taco/src/components/Table2/hooks/useActiveRow.js +0 -33
  408. package/dist/esm/packages/taco/src/components/Table2/hooks/useActiveRow.js.map +0 -1
  409. package/dist/esm/packages/taco/src/components/Table2/hooks/useColumnDefinitions.js +0 -122
  410. package/dist/esm/packages/taco/src/components/Table2/hooks/useColumnDefinitions.js.map +0 -1
  411. package/dist/esm/packages/taco/src/components/Table2/hooks/useEditMode.js +0 -112
  412. package/dist/esm/packages/taco/src/components/Table2/hooks/useEditMode.js.map +0 -1
  413. package/dist/esm/packages/taco/src/components/Table2/hooks/useGridTemplate.js +0 -34
  414. package/dist/esm/packages/taco/src/components/Table2/hooks/useGridTemplate.js.map +0 -1
  415. package/dist/esm/packages/taco/src/components/Table2/hooks/useTable.js +0 -222
  416. package/dist/esm/packages/taco/src/components/Table2/hooks/useTable.js.map +0 -1
  417. package/dist/esm/packages/taco/src/components/Table2/hooks/useTableShortcuts.js.map +0 -1
  418. package/dist/esm/packages/taco/src/components/Table2/hooks/useVirtualiser.js +0 -48
  419. package/dist/esm/packages/taco/src/components/Table2/hooks/useVirtualiser.js.map +0 -1
  420. package/dist/esm/packages/taco/src/components/Table2/types.js +0 -18
  421. package/dist/esm/packages/taco/src/components/Table2/types.js.map +0 -1
  422. package/dist/esm/packages/taco/src/components/Table2/utilities/cell.js +0 -41
  423. package/dist/esm/packages/taco/src/components/Table2/utilities/cell.js.map +0 -1
  424. package/dist/esm/packages/taco/src/components/Table2/utilities/columns.js +0 -387
  425. package/dist/esm/packages/taco/src/components/Table2/utilities/columns.js.map +0 -1
  426. package/dist/esm/packages/taco/src/components/Table2/utilities/filterFn.js.map +0 -1
  427. package/dist/esm/packages/taco/src/components/Truncate/Truncate.js +0 -32
  428. package/dist/esm/packages/taco/src/components/Truncate/Truncate.js.map +0 -1
  429. package/dist/esm/packages/taco/src/utils/hooks/useTruncated.js +0 -20
  430. package/dist/esm/packages/taco/src/utils/hooks/useTruncated.js.map +0 -1
  431. /package/dist/components/Icon/components/{DensityComfortable.d.ts → FontSize.d.ts} +0 -0
  432. /package/dist/components/Icon/components/{DensityCompact.d.ts → HeightExtraTall.d.ts} +0 -0
  433. /package/dist/components/Icon/components/{DensityNormal.d.ts → HeightMedium.d.ts} +0 -0
  434. /package/dist/components/Icon/components/{DensitySpacious.d.ts → HeightShort.d.ts} +0 -0
  435. /package/dist/components/{Table2/components/column → Table3/components/columns/cell}/Indicator.d.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Search.js","sources":["../../../../../../../../../src/components/Table3/components/toolbar/Search.tsx"],"sourcesContent":["import React from 'react';\nimport { Table as RTable, TableMeta } from '@tanstack/react-table';\nimport { useLocalization } from '../../../Provider/Localization';\nimport { Switch } from '../../../Switch/Switch';\nimport { globalFilterFn } from '../../util/filtering';\nimport { isDate } from 'date-fns';\nimport { format } from '../../../../utils/date';\nimport { SearchInput2 } from '../../../SearchInput2/SearchInput2';\n\ntype SearchProps<TType = unknown> = {\n scrollToIndex: any;\n table: RTable<TType>;\n};\n\nexport function Search<TType = unknown>(props: SearchProps<TType>) {\n const { scrollToIndex, table } = props;\n const { texts } = useLocalization();\n const ref = React.useRef<HTMLInputElement>(null);\n const tableMeta = table.options.meta as TableMeta<TType>;\n\n const scrollTo = (rowIndex: number) => scrollToIndex(rowIndex, { align: 'center' });\n\n // update the indexes if the row length changes (e.g. when filtering)\n React.useEffect(() => {\n const firstRowIndex = resetHighlightedColumnIndexes(tableMeta.search.isHighlightingEnabled, ref.current?.value, table);\n\n if (firstRowIndex) {\n scrollTo(firstRowIndex);\n }\n }, [\n table.getRowModel().rows.length,\n JSON.stringify(table.getState().sorting),\n JSON.stringify(table.getState().columnVisibility),\n ]);\n\n const handleSearch = (query: any) => {\n const value = String(query ?? '');\n tableMeta.search.setQuery(value);\n\n if (tableMeta.search.excludeUnmatchedResults) {\n if (value?.length) {\n table.setGlobalFilter(value);\n } else {\n table.resetGlobalFilter();\n }\n } else if (tableMeta.search.loadAll) {\n // don't pass the search query because filters when loading all, we need all - not filtered data\n tableMeta.search.loadAll(table.getState().sorting, table.getState().columnFilters, undefined);\n }\n\n const firstRowIndex = resetHighlightedColumnIndexes(tableMeta.search.isHighlightingEnabled, value, table);\n\n if (firstRowIndex) {\n scrollTo(firstRowIndex);\n }\n };\n\n const handleToggleExcludeUnmatchedResults = (enabled: boolean) => {\n tableMeta.search.toggleExcludeUnmatchedResults(enabled);\n\n if (enabled) {\n if (tableMeta.search.query) {\n table.setGlobalFilter(tableMeta.search.query);\n } else {\n table.resetGlobalFilter();\n }\n } else {\n table.resetGlobalFilter();\n }\n\n requestAnimationFrame(() => ref.current?.focus());\n };\n\n const handleNextResult = () => {\n if (!tableMeta.search.highlightedColumnIndexes.length) {\n return;\n }\n\n const nextIndex =\n tableMeta.search.currentHighlightColumnIndex === undefined ||\n tableMeta.search.currentHighlightColumnIndex === tableMeta.search.highlightedColumnIndexes.length - 1\n ? 0\n : tableMeta.search.currentHighlightColumnIndex + 1;\n\n tableMeta.search.setCurrentHighlightColumnIndex(nextIndex);\n // we scroll to the row here, the cell scrolls itself into view\n scrollTo(tableMeta.search.highlightedColumnIndexes[nextIndex][0]);\n };\n\n const handlePreviousResult = () => {\n if (!tableMeta.search.highlightedColumnIndexes.length) {\n return;\n }\n\n const nextIndex =\n tableMeta.search.currentHighlightColumnIndex === undefined\n ? 0\n : tableMeta.search.currentHighlightColumnIndex === 0\n ? tableMeta.search.highlightedColumnIndexes.length - 1\n : tableMeta.search.currentHighlightColumnIndex - 1;\n\n tableMeta.search.setCurrentHighlightColumnIndex(nextIndex);\n // we scroll to the row here, the cell scrolls itself into view\n scrollTo(tableMeta.search.highlightedColumnIndexes[nextIndex][0]);\n };\n\n const settings = (\n <Switch\n label={texts.table3.search.excludeUnmatchedResults}\n checked={tableMeta.search.excludeUnmatchedResults}\n onChange={handleToggleExcludeUnmatchedResults}\n />\n );\n\n return (\n <>\n <SearchInput2\n findCurrent={\n tableMeta.search.currentHighlightColumnIndex !== undefined\n ? tableMeta.search.currentHighlightColumnIndex + 1\n : null\n }\n findTotal={tableMeta.search.highlightedColumnIndexes ? tableMeta.search.highlightedColumnIndexes.length : null}\n onClickFindPrevious={handlePreviousResult}\n onClickFindNext={handleNextResult}\n onSearch={handleSearch}\n placeholder={texts.table3.search.placeholder}\n settingsContent={settings}\n ref={ref}\n shortcut={{ key: 'f', meta: true, shift: false }}\n value={tableMeta.search.query}\n />\n </>\n );\n}\n\nfunction resetHighlightedColumnIndexes<TType = unknown>(enabled: boolean, value: string | undefined, table: RTable<TType>) {\n const tableMeta = table.options.meta as TableMeta<TType>;\n let firstRowIndex: undefined | number;\n\n if (enabled && value) {\n const rowIndexes: number[] = [];\n const indexes: number[][] = [];\n const columns = table.getVisibleLeafColumns();\n\n table.getRowModel().rows.forEach((row, rowIndex) => {\n columns.forEach((column, columnIndex) => {\n try {\n if (\n column.columnDef.meta?.enableSearch &&\n row.original !== undefined &&\n globalFilterFn(\n isDate(row.original[column.id])\n ? format(row.original[column.id]) ?? ''\n : String(row.original[column.id]),\n value\n )\n ) {\n indexes.push([rowIndex, columnIndex]);\n }\n } catch (e) {\n //\n }\n });\n\n if (indexes.length) {\n rowIndexes.push(rowIndex);\n }\n });\n\n tableMeta.search.setHighlightedColumnIndexes(indexes);\n\n if (indexes.length) {\n firstRowIndex = indexes[0][0];\n tableMeta.search.setCurrentHighlightColumnIndex(0);\n } else {\n tableMeta.search.setCurrentHighlightColumnIndex(undefined);\n }\n } else {\n tableMeta.search.setHighlightedColumnIndexes([]);\n tableMeta.search.setCurrentHighlightColumnIndex(undefined);\n }\n\n return firstRowIndex;\n}\n"],"names":["Search","props","scrollToIndex","table","texts","useLocalization","ref","React","useRef","tableMeta","options","meta","scrollTo","rowIndex","align","useEffect","firstRowIndex","resetHighlightedColumnIndexes","search","isHighlightingEnabled","current","value","getRowModel","rows","length","JSON","stringify","getState","sorting","columnVisibility","handleSearch","query","String","setQuery","excludeUnmatchedResults","setGlobalFilter","resetGlobalFilter","loadAll","columnFilters","undefined","handleToggleExcludeUnmatchedResults","enabled","toggleExcludeUnmatchedResults","requestAnimationFrame","focus","handleNextResult","highlightedColumnIndexes","nextIndex","currentHighlightColumnIndex","setCurrentHighlightColumnIndex","handlePreviousResult","settings","Switch","label","table3","checked","onChange","SearchInput2","findCurrent","findTotal","onClickFindPrevious","onClickFindNext","onSearch","placeholder","settingsContent","shortcut","key","shift","indexes","columns","getVisibleLeafColumns","forEach","row","column","columnIndex","columnDef","enableSearch","original","globalFilterFn","isDate","id","format","push","e","setHighlightedColumnIndexes"],"mappings":"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"}
@@ -0,0 +1,85 @@
1
+ import React__default from 'react';
2
+ import { IconButton } from '../../../IconButton/IconButton.js';
3
+ import { useLocalization } from '../../../Provider/Localization.js';
4
+ import { Group } from '../../../Group/Group.js';
5
+ import { Menu } from '../../../Menu/Menu.js';
6
+ import { RowHeight } from './RowHeight.js';
7
+ import { Search } from './Search.js';
8
+ import { Filters } from './Filter/filters/Filters.js';
9
+ import { ColumnSettings } from './ColumnSettings.js';
10
+ import { EditButton } from './EditButton.js';
11
+ import { PrintButton } from './PrintButton/PrintButton.js';
12
+ import { FontSize } from './FontSize.js';
13
+
14
+ function Toolbar(props) {
15
+ const {
16
+ left,
17
+ right,
18
+ scrollToIndex,
19
+ table,
20
+ tableProps,
21
+ total
22
+ } = props;
23
+ const {
24
+ texts
25
+ } = useLocalization();
26
+ if (!isToolbarVisible(props)) {
27
+ return null;
28
+ }
29
+ const tableMeta = table.options.meta;
30
+ return /*#__PURE__*/React__default.createElement("div", {
31
+ className: "mb-4 flex flex-shrink flex-grow-0 gap-2",
32
+ "data-taco": "table3-toolbar"
33
+ }, left, /*#__PURE__*/React__default.createElement(Group, {
34
+ className: "ml-auto flex-shrink-0 print:hidden"
35
+ }, tableMeta.editing.isEnabled ? /*#__PURE__*/React__default.createElement(EditButton, {
36
+ table: table
37
+ }) : null, table.options.enableColumnFilters ? /*#__PURE__*/React__default.createElement(Filters, {
38
+ table: table,
39
+ total: total
40
+ }) : null, table.options.enableHiding || tableMeta.columnOrdering.isEnabled ? /*#__PURE__*/React__default.createElement(ColumnSettings, {
41
+ table: table
42
+ }) : null, tableMeta.printing.isEnabled ? /*#__PURE__*/React__default.createElement(PrintButton, {
43
+ table: table,
44
+ tableProps: tableProps
45
+ }) : null, right, isMoreVisible(props) ? /*#__PURE__*/React__default.createElement(IconButton, {
46
+ icon: "more",
47
+ menu: menuProps => /*#__PURE__*/React__default.createElement(Menu, Object.assign({}, menuProps), /*#__PURE__*/React__default.createElement(Menu.Content, {
48
+ align: "end"
49
+ }, tableMeta.rowHeight.isEnabled ? /*#__PURE__*/React__default.createElement(Menu.Item, {
50
+ icon: `height-${tableMeta.rowHeight.height}`,
51
+ subMenu: () => /*#__PURE__*/React__default.createElement(RowHeight, {
52
+ table: table
53
+ })
54
+ }, texts.table3.rowHeight.tooltip) : null, tableMeta.fontSize.isEnabled ? /*#__PURE__*/React__default.createElement(Menu.Item, {
55
+ icon: "font-size",
56
+ subMenu: () => /*#__PURE__*/React__default.createElement(FontSize, {
57
+ table: table
58
+ })
59
+ }, texts.table3.fontSize.tooltip) : null))
60
+ }) : null, tableMeta.search.isEnabled ? /*#__PURE__*/React__default.createElement(Search, {
61
+ scrollToIndex: scrollToIndex,
62
+ table: table
63
+ }) : null));
64
+ }
65
+ function isMoreVisible(props) {
66
+ const {
67
+ table
68
+ } = props;
69
+ const tableMeta = table.options.meta;
70
+ return tableMeta.fontSize.isEnabled || tableMeta.rowHeight.isEnabled;
71
+ }
72
+ function isToolbarVisible(props) {
73
+ const {
74
+ left,
75
+ right,
76
+ table
77
+ } = props;
78
+ const tableMeta = table.options.meta;
79
+ const enableSettingsButton = table.options.enableHiding || tableMeta.columnOrdering.isEnabled;
80
+ const hasInternalToolbar = enableSettingsButton || tableMeta.editing.isEnabled || tableMeta.printing.isEnabled || table.options.enableColumnFilters || tableMeta.fontSize.isEnabled || tableMeta.rowHeight.isEnabled || tableMeta.search.isEnabled;
81
+ return hasInternalToolbar || !!left || !!right;
82
+ }
83
+
84
+ export { Toolbar };
85
+ //# sourceMappingURL=Toolbar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toolbar.js","sources":["../../../../../../../../../src/components/Table3/components/toolbar/Toolbar.tsx"],"sourcesContent":["import React from 'react';\nimport { Table as RTable, TableMeta } from '@tanstack/react-table';\nimport { RowHeight } from './RowHeight';\nimport { Search } from './Search';\nimport { Group } from '../../../Group/Group';\nimport { Filters } from './Filter/filters/Filters';\nimport { ColumnSettings } from './ColumnSettings';\nimport { EditButton } from './EditButton';\nimport { PrintButton } from './PrintButton/PrintButton';\nimport { Table3Props } from '../../types';\nimport { IconButton } from '../../../IconButton/IconButton';\nimport { Menu } from '../../../Menu/Menu';\nimport { useLocalization } from '../../../Provider/Localization';\nimport { IconName } from '../../../Icon/Icon';\nimport { FontSize } from './FontSize';\n\nexport type ToolbarProps<TType = unknown> = {\n left?: JSX.Element;\n right?: JSX.Element;\n scrollToIndex: any;\n table: RTable<TType>;\n tableProps: Table3Props<TType>;\n total: number;\n};\nexport function Toolbar<TType = unknown>(props: ToolbarProps<TType>) {\n const { left, right, scrollToIndex, table, tableProps, total } = props;\n const { texts } = useLocalization();\n\n if (!isToolbarVisible(props)) {\n return null;\n }\n\n const tableMeta = table.options.meta as TableMeta<TType>;\n\n return (\n <div className=\"mb-4 flex flex-shrink flex-grow-0 gap-2\" data-taco=\"table3-toolbar\">\n {left}\n <Group className=\"ml-auto flex-shrink-0 print:hidden\">\n {tableMeta.editing.isEnabled ? <EditButton table={table} /> : null}\n {table.options.enableColumnFilters ? <Filters table={table} total={total} /> : null}\n {table.options.enableHiding || tableMeta.columnOrdering.isEnabled ? <ColumnSettings table={table} /> : null}\n {tableMeta.printing.isEnabled ? <PrintButton table={table} tableProps={tableProps} /> : null}\n {right}\n {isMoreVisible(props) ? (\n <IconButton\n icon=\"more\"\n menu={menuProps => (\n <Menu {...menuProps}>\n <Menu.Content align=\"end\">\n {tableMeta.rowHeight.isEnabled ? (\n <Menu.Item\n icon={`height-${tableMeta.rowHeight.height}` as IconName}\n subMenu={() => <RowHeight table={table} />}>\n {texts.table3.rowHeight.tooltip}\n </Menu.Item>\n ) : null}\n {tableMeta.fontSize.isEnabled ? (\n <Menu.Item icon=\"font-size\" subMenu={() => <FontSize table={table} />}>\n {texts.table3.fontSize.tooltip}\n </Menu.Item>\n ) : null}\n </Menu.Content>\n </Menu>\n )}\n />\n ) : null}\n {tableMeta.search.isEnabled ? <Search scrollToIndex={scrollToIndex} table={table} /> : null}\n </Group>\n </div>\n );\n}\n\nfunction isMoreVisible<TType = unknown>(props: ToolbarProps<TType>) {\n const { table } = props;\n const tableMeta = table.options.meta as TableMeta<TType>;\n\n return tableMeta.fontSize.isEnabled || tableMeta.rowHeight.isEnabled;\n}\n\nfunction isToolbarVisible<TType = unknown>(props: ToolbarProps<TType>) {\n const { left, right, table } = props;\n const tableMeta = table.options.meta as TableMeta<TType>;\n\n const enableSettingsButton = table.options.enableHiding || tableMeta.columnOrdering.isEnabled;\n const hasInternalToolbar =\n enableSettingsButton ||\n tableMeta.editing.isEnabled ||\n tableMeta.printing.isEnabled ||\n table.options.enableColumnFilters ||\n tableMeta.fontSize.isEnabled ||\n tableMeta.rowHeight.isEnabled ||\n tableMeta.search.isEnabled;\n\n return hasInternalToolbar || !!left || !!right;\n}\n"],"names":["Toolbar","props","left","right","scrollToIndex","table","tableProps","total","texts","useLocalization","isToolbarVisible","tableMeta","options","meta","React","className","Group","editing","isEnabled","EditButton","enableColumnFilters","Filters","enableHiding","columnOrdering","ColumnSettings","printing","PrintButton","isMoreVisible","IconButton","icon","menu","menuProps","Menu","Content","align","rowHeight","Item","height","subMenu","RowHeight","table3","tooltip","fontSize","FontSize","search","Search","enableSettingsButton","hasInternalToolbar"],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ import React__default from 'react';
2
+ import { isInternalColumn } from '../../util/columns.js';
3
+
4
+ function getDefaultFrozenIndex(options, defaultFrozenIndex = -1) {
5
+ let index = defaultFrozenIndex;
6
+ if (options.enableRowDrag) {
7
+ index++;
8
+ }
9
+ if (options.enableRowSelection) {
10
+ index++;
11
+ }
12
+ if (options.enableRowExpansion) {
13
+ index++;
14
+ }
15
+ return index >= 0 ? index : undefined;
16
+ }
17
+ /*
18
+ Because of the desired behaviour of column freezing we use custom state and just an index.
19
+ If a frozen column is, for example, hidden, then the desired behaviour is that the next available column gets frozen.
20
+ If this behaviour were different we would just use the native column pinning functionality
21
+ */
22
+ function useColumnFreezing(defaultFrozenIndex, options) {
23
+ const [frozenColumnIndex, _setFrozenColumnIndex] = React__default.useState(getDefaultFrozenIndex(options, defaultFrozenIndex));
24
+ const [horizontallyScrolled, setHorizontallyScrolled] = React__default.useState(false);
25
+ const onScroll = event => {
26
+ if (event.currentTarget.scrollLeft > 0 && !horizontallyScrolled) {
27
+ setHorizontallyScrolled(true);
28
+ } else if (event.currentTarget.scrollLeft === 0 && horizontallyScrolled) {
29
+ setHorizontallyScrolled(false);
30
+ }
31
+ };
32
+ const setFrozenColumnIndex = index => {
33
+ _setFrozenColumnIndex(index !== null && index !== void 0 ? index : getDefaultFrozenIndex(options));
34
+ };
35
+ return {
36
+ isEnabled: options.enableColumnFreezing,
37
+ frozenColumnIndex,
38
+ setFrozenColumnIndex,
39
+ horizontallyScrolled,
40
+ handleScroll: onScroll
41
+ };
42
+ }
43
+ function useColumnFreezingStyle(tableId, table) {
44
+ const {
45
+ columnOrder,
46
+ columnSizing,
47
+ columnSizingInfo,
48
+ columnVisibility
49
+ } = table.getState();
50
+ const tableMeta = table.options.meta;
51
+ const style = React__default.useMemo(() => {
52
+ if (tableMeta.columnFreezing.isEnabled && tableMeta.columnFreezing.frozenColumnIndex !== undefined) {
53
+ const visibleFrozenColumns = table.getVisibleLeafColumns().slice(0, tableMeta.columnFreezing.frozenColumnIndex + 1).map(column => column.id);
54
+ // if all frozen columns haven't had their size set yet, then abort
55
+ if (visibleFrozenColumns.every(id => columnSizing[id] === undefined)) {
56
+ return undefined;
57
+ }
58
+ const offsets = {};
59
+ visibleFrozenColumns.reduce((offset, columnId) => {
60
+ offsets[columnId] = offset;
61
+ return offset + columnSizing[columnId];
62
+ }, 0);
63
+ const styles = [Object.values(offsets).map((offset, index) => `#${tableId} [role="row"] > :nth-child(${index + 1}) { left: ${offset}px }`).join('\n'), `#${tableId} [role="row"] > :not(:nth-child(n+${tableMeta.columnFreezing.frozenColumnIndex + 2})) {
64
+ position: sticky;
65
+ z-index: 20;
66
+ }`, `#${tableId}[data-horizontally-scrolled="true"] [role="row"] > :nth-child(${tableMeta.columnFreezing.frozenColumnIndex + 1}) {
67
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), 6px 0px 6px rgb(0 0 0/8%), 1px 0px 0px #DDDDDD;
68
+ }`];
69
+ const columnId = visibleFrozenColumns[tableMeta.columnFreezing.frozenColumnIndex];
70
+ // frozenColumnIndex could not be in the visible frozen column so it is important to check if columnId
71
+ // exists before checking if it is internal.
72
+ //
73
+ // only add a border to the edge column if it isn't an internal column
74
+ if (columnId && !isInternalColumn(columnId)) {
75
+ styles.push(`#${tableId}[data-horizontally-scrolled="false"] [role="row"] > :nth-child(${tableMeta.columnFreezing.frozenColumnIndex + 1}) {
76
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), 1px 0px 0px #DDDDDD;
77
+ }`);
78
+ }
79
+ return styles.join('\n');
80
+ }
81
+ return undefined;
82
+ }, [columnOrder, columnSizing, columnSizingInfo, columnVisibility, tableMeta.columnFreezing.isEnabled, tableMeta.columnFreezing.frozenColumnIndex]);
83
+ return style;
84
+ }
85
+
86
+ export { getDefaultFrozenIndex, useColumnFreezing, useColumnFreezingStyle };
87
+ //# sourceMappingURL=useColumnFreezing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useColumnFreezing.js","sources":["../../../../../../../../../src/components/Table3/hooks/features/useColumnFreezing.ts"],"sourcesContent":["import { Table, TableMeta } from '@tanstack/react-table';\nimport React from 'react';\nimport { Table3Options } from '../../types';\nimport { isInternalColumn } from '../../util/columns';\n\nexport function getDefaultFrozenIndex(options: Table3Options, defaultFrozenIndex = -1) {\n let index = defaultFrozenIndex;\n\n if (options.enableRowDrag) {\n index++;\n }\n\n if (options.enableRowSelection) {\n index++;\n }\n\n if (options.enableRowExpansion) {\n index++;\n }\n\n return index >= 0 ? index : undefined;\n}\n\n/*\nBecause of the desired behaviour of column freezing we use custom state and just an index.\nIf a frozen column is, for example, hidden, then the desired behaviour is that the next available column gets frozen.\nIf this behaviour were different we would just use the native column pinning functionality\n*/\nexport function useColumnFreezing(defaultFrozenIndex: number | undefined, options: Table3Options) {\n const [frozenColumnIndex, _setFrozenColumnIndex] = React.useState<number | undefined>(\n getDefaultFrozenIndex(options, defaultFrozenIndex)\n );\n\n const [horizontallyScrolled, setHorizontallyScrolled] = React.useState(false);\n\n const onScroll = (event: React.MouseEvent<HTMLDivElement>) => {\n if (event.currentTarget.scrollLeft > 0 && !horizontallyScrolled) {\n setHorizontallyScrolled(true);\n } else if (event.currentTarget.scrollLeft === 0 && horizontallyScrolled) {\n setHorizontallyScrolled(false);\n }\n };\n\n const setFrozenColumnIndex = (index: number | undefined) => {\n _setFrozenColumnIndex(index ?? getDefaultFrozenIndex(options));\n };\n\n return {\n isEnabled: options.enableColumnFreezing,\n frozenColumnIndex,\n setFrozenColumnIndex,\n horizontallyScrolled,\n handleScroll: onScroll,\n };\n}\n\nexport function useColumnFreezingStyle<TType = unknown>(tableId: string, table: Table<TType>) {\n const { columnOrder, columnSizing, columnSizingInfo, columnVisibility } = table.getState();\n const tableMeta = table.options.meta as TableMeta<TType>;\n\n const style = React.useMemo(() => {\n if (tableMeta.columnFreezing.isEnabled && tableMeta.columnFreezing.frozenColumnIndex !== undefined) {\n const visibleFrozenColumns = table\n .getVisibleLeafColumns()\n .slice(0, tableMeta.columnFreezing.frozenColumnIndex + 1)\n .map(column => column.id);\n\n // if all frozen columns haven't had their size set yet, then abort\n if (visibleFrozenColumns.every(id => columnSizing[id] === undefined)) {\n return undefined;\n }\n\n const offsets = {};\n\n visibleFrozenColumns.reduce((offset, columnId) => {\n offsets[columnId] = offset;\n return offset + columnSizing[columnId];\n }, 0);\n\n const styles = [\n Object.values(offsets)\n .map((offset, index) => `#${tableId} [role=\"row\"] > :nth-child(${index + 1}) { left: ${offset}px }`)\n .join('\\n'),\n `#${tableId} [role=\"row\"] > :not(:nth-child(n+${tableMeta.columnFreezing.frozenColumnIndex + 2})) {\n position: sticky;\n z-index: 20; \n }`,\n `#${tableId}[data-horizontally-scrolled=\"true\"] [role=\"row\"] > :nth-child(${\n tableMeta.columnFreezing.frozenColumnIndex + 1\n }) {\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), 6px 0px 6px rgb(0 0 0/8%), 1px 0px 0px #DDDDDD;\n }`,\n ];\n\n const columnId = visibleFrozenColumns[tableMeta.columnFreezing.frozenColumnIndex];\n\n // frozenColumnIndex could not be in the visible frozen column so it is important to check if columnId\n // exists before checking if it is internal.\n //\n // only add a border to the edge column if it isn't an internal column\n if (columnId && !isInternalColumn(columnId)) {\n styles.push(`#${tableId}[data-horizontally-scrolled=\"false\"] [role=\"row\"] > :nth-child(${\n tableMeta.columnFreezing.frozenColumnIndex + 1\n }) {\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), 1px 0px 0px #DDDDDD;\n }`);\n }\n\n return styles.join('\\n');\n }\n\n return undefined;\n }, [\n columnOrder,\n columnSizing,\n columnSizingInfo,\n columnVisibility,\n tableMeta.columnFreezing.isEnabled,\n tableMeta.columnFreezing.frozenColumnIndex,\n ]);\n\n return style;\n}\n"],"names":["getDefaultFrozenIndex","options","defaultFrozenIndex","index","enableRowDrag","enableRowSelection","enableRowExpansion","undefined","useColumnFreezing","frozenColumnIndex","_setFrozenColumnIndex","React","useState","horizontallyScrolled","setHorizontallyScrolled","onScroll","event","currentTarget","scrollLeft","setFrozenColumnIndex","isEnabled","enableColumnFreezing","handleScroll","useColumnFreezingStyle","tableId","table","columnOrder","columnSizing","columnSizingInfo","columnVisibility","getState","tableMeta","meta","style","useMemo","columnFreezing","visibleFrozenColumns","getVisibleLeafColumns","slice","map","column","id","every","offsets","reduce","offset","columnId","styles","Object","values","join","isInternalColumn","push"],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ import { COLUMN_ID } from '../../components/columns/internal/Actions.js';
2
+ import { COLUMN_ID as COLUMN_ID$1 } from '../../components/columns/internal/EditingActions.js';
3
+
4
+ function useColumnOrdering(options) {
5
+ return {
6
+ isEnabled: options.enableColumnOrdering
7
+ };
8
+ }
9
+ function ensureOrdering(columns, settingsOrder) {
10
+ // internal column come with a defined order
11
+ const internalColumns = columns.filter(column => {
12
+ var _column$id;
13
+ return ((_column$id = column.id) === null || _column$id === void 0 ? void 0 : _column$id.startsWith('__')) && column.id !== COLUMN_ID && column.id !== COLUMN_ID$1;
14
+ }).map(column => column.id);
15
+ // columns with ordering disabled should be moved to the front
16
+ const orderingDisabled = [];
17
+ const orderingEnabled = [];
18
+ let orderedColumns = columns;
19
+ // if settings is defined, make sure the columns that are actual children are sorted by it
20
+ if (Array.isArray(settingsOrder)) {
21
+ orderedColumns = columns.slice().sort(
22
+ // the magic >>> 0 here ensures that columns that aren't found in settings, but are children, are pushed to the end
23
+ (a, b) => (settingsOrder.indexOf(a.id) >>> 0) - (settingsOrder.indexOf(b.id) >>> 0));
24
+ }
25
+ orderedColumns.forEach(column => {
26
+ var _column$id2, _column$meta;
27
+ if ((_column$id2 = column.id) !== null && _column$id2 !== void 0 && _column$id2.startsWith('__')) {
28
+ return;
29
+ }
30
+ if ((_column$meta = column.meta) !== null && _column$meta !== void 0 && _column$meta.enableOrdering) {
31
+ orderingEnabled.push(column.id);
32
+ } else {
33
+ orderingDisabled.push(column.id);
34
+ }
35
+ });
36
+ const order = [...internalColumns, ...orderingDisabled, ...orderingEnabled];
37
+ // actions should always be last, enforce that
38
+ if (columns.findIndex(column => column.id === COLUMN_ID || column.id === COLUMN_ID$1) > -1) {
39
+ order.push(COLUMN_ID);
40
+ }
41
+ return order;
42
+ }
43
+
44
+ export { ensureOrdering, useColumnOrdering };
45
+ //# sourceMappingURL=useColumnOrdering.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useColumnOrdering.js","sources":["../../../../../../../../../src/components/Table3/hooks/features/useColumnOrdering.ts"],"sourcesContent":["import { ColumnDef } from '@tanstack/react-table';\nimport { Table3Options } from '../../types';\nimport { COLUMN_ID as ACTIONS_COLUMN_ID } from '../../components/columns/internal/Actions';\nimport { COLUMN_ID as EDITING_ACTIONS_COLUMN_ID } from '../../components/columns/internal/EditingActions';\n\nexport function useColumnOrdering(options: Table3Options) {\n return {\n isEnabled: options.enableColumnOrdering,\n };\n}\nexport function ensureOrdering<TType = unknown>(columns: ColumnDef<TType>[], settingsOrder: string[] | undefined): string[] {\n // internal column come with a defined order\n const internalColumns = columns\n .filter(\n column => column.id?.startsWith('__') && column.id !== ACTIONS_COLUMN_ID && column.id !== EDITING_ACTIONS_COLUMN_ID\n )\n .map(column => column.id) as string[];\n\n // columns with ordering disabled should be moved to the front\n const orderingDisabled: string[] = [];\n const orderingEnabled: string[] = [];\n\n let orderedColumns = columns;\n\n // if settings is defined, make sure the columns that are actual children are sorted by it\n if (Array.isArray(settingsOrder)) {\n orderedColumns = columns.slice().sort(\n // the magic >>> 0 here ensures that columns that aren't found in settings, but are children, are pushed to the end\n (a, b) => (settingsOrder.indexOf(a.id as string) >>> 0) - (settingsOrder.indexOf(b.id as string) >>> 0)\n );\n }\n\n orderedColumns.forEach(column => {\n if (column.id?.startsWith('__')) {\n return;\n }\n\n if (column.meta?.enableOrdering) {\n orderingEnabled.push(column.id as string);\n } else {\n orderingDisabled.push(column.id as string);\n }\n });\n\n const order = [...internalColumns, ...orderingDisabled, ...orderingEnabled];\n\n // actions should always be last, enforce that\n if (columns.findIndex(column => column.id === ACTIONS_COLUMN_ID || column.id === EDITING_ACTIONS_COLUMN_ID) > -1) {\n order.push(ACTIONS_COLUMN_ID);\n }\n\n return order;\n}\n"],"names":["useColumnOrdering","options","isEnabled","enableColumnOrdering","ensureOrdering","columns","settingsOrder","internalColumns","filter","column","id","startsWith","ACTIONS_COLUMN_ID","EDITING_ACTIONS_COLUMN_ID","map","orderingDisabled","orderingEnabled","orderedColumns","Array","isArray","slice","sort","a","b","indexOf","forEach","meta","enableOrdering","push","order","findIndex"],"mappings":";;;SAKgBA,iBAAiB,CAACC,OAAsB;EACpD,OAAO;IACHC,SAAS,EAAED,OAAO,CAACE;GACtB;AACL;SACgBC,cAAc,CAAkBC,OAA2B,EAAEC,aAAmC;;EAE5G,MAAMC,eAAe,GAAGF,OAAO,CAC1BG,MAAM,CACHC,MAAM;IAAA;IAAA,OAAI,eAAAA,MAAM,CAACC,EAAE,+CAAT,WAAWC,UAAU,CAAC,IAAI,CAAC,KAAIF,MAAM,CAACC,EAAE,KAAKE,SAAiB,IAAIH,MAAM,CAACC,EAAE,KAAKG,WAAyB;IACtH,CACAC,GAAG,CAACL,MAAM,IAAIA,MAAM,CAACC,EAAE,CAAa;;EAGzC,MAAMK,gBAAgB,GAAa,EAAE;EACrC,MAAMC,eAAe,GAAa,EAAE;EAEpC,IAAIC,cAAc,GAAGZ,OAAO;;EAG5B,IAAIa,KAAK,CAACC,OAAO,CAACb,aAAa,CAAC,EAAE;IAC9BW,cAAc,GAAGZ,OAAO,CAACe,KAAK,EAAE,CAACC,IAAI;;IAEjC,CAACC,CAAC,EAAEC,CAAC,KAAK,CAACjB,aAAa,CAACkB,OAAO,CAACF,CAAC,CAACZ,EAAY,CAAC,KAAK,CAAC,KAAKJ,aAAa,CAACkB,OAAO,CAACD,CAAC,CAACb,EAAY,CAAC,KAAK,CAAC,CAAC,CAC1G;;EAGLO,cAAc,CAACQ,OAAO,CAAChB,MAAM;;IACzB,mBAAIA,MAAM,CAACC,EAAE,wCAAT,YAAWC,UAAU,CAAC,IAAI,CAAC,EAAE;MAC7B;;IAGJ,oBAAIF,MAAM,CAACiB,IAAI,yCAAX,aAAaC,cAAc,EAAE;MAC7BX,eAAe,CAACY,IAAI,CAACnB,MAAM,CAACC,EAAY,CAAC;KAC5C,MAAM;MACHK,gBAAgB,CAACa,IAAI,CAACnB,MAAM,CAACC,EAAY,CAAC;;GAEjD,CAAC;EAEF,MAAMmB,KAAK,GAAG,CAAC,GAAGtB,eAAe,EAAE,GAAGQ,gBAAgB,EAAE,GAAGC,eAAe,CAAC;;EAG3E,IAAIX,OAAO,CAACyB,SAAS,CAACrB,MAAM,IAAIA,MAAM,CAACC,EAAE,KAAKE,SAAiB,IAAIH,MAAM,CAACC,EAAE,KAAKG,WAAyB,CAAC,GAAG,CAAC,CAAC,EAAE;IAC9GgB,KAAK,CAACD,IAAI,CAAChB,SAAiB,CAAC;;EAGjC,OAAOiB,KAAK;AAChB;;;;"}
@@ -0,0 +1,52 @@
1
+ import React__default from 'react';
2
+
3
+ function useCurrentRow(defaultCurrentRowIndex = 0) {
4
+ const [currentRowIndex, setCurrentRowIndex] = React__default.useState(defaultCurrentRowIndex);
5
+ const move = (direction, length, scrollToIndex) => setCurrentRowIndex(currentIndex => {
6
+ const nextIndex = currentIndex !== undefined ? getNextIndex(direction, currentIndex, length) : 0;
7
+ scrollToIndex(direction === -1 ? nextIndex : nextIndex + 3);
8
+ return nextIndex;
9
+ });
10
+ const moveUp = (length, callback) => move(-1, length, callback);
11
+ const moveDown = (length, callback) => move(1, length, callback);
12
+ const onKeyDown = React__default.useCallback((event, length, scrollToIndex) => {
13
+ if (event.isDefaultPrevented() || event.isPropagationStopped()) {
14
+ return;
15
+ }
16
+ if (event.key === 'ArrowUp') {
17
+ event.preventDefault();
18
+ if (event.ctrlKey || event.metaKey) {
19
+ const newIndex = 0;
20
+ setCurrentRowIndex(newIndex);
21
+ scrollToIndex(newIndex);
22
+ } else {
23
+ moveUp(length, scrollToIndex);
24
+ }
25
+ return;
26
+ } else if (event.key === 'ArrowDown') {
27
+ event.preventDefault();
28
+ if (event.ctrlKey || event.metaKey) {
29
+ const newIndex = length - 1;
30
+ setCurrentRowIndex(newIndex);
31
+ scrollToIndex(newIndex);
32
+ } else {
33
+ moveDown(length, scrollToIndex);
34
+ }
35
+ return;
36
+ }
37
+ }, []);
38
+ return {
39
+ currentRowIndex,
40
+ setCurrentRowIndex,
41
+ handleKeyDown: onKeyDown
42
+ };
43
+ }
44
+ const getNextIndex = (direction, currentIndex, length) => {
45
+ if (direction === -1) {
46
+ return currentIndex - 1 > 0 ? currentIndex - 1 : 0;
47
+ }
48
+ return currentIndex + 1 < length ? currentIndex + 1 : currentIndex;
49
+ };
50
+
51
+ export { useCurrentRow };
52
+ //# sourceMappingURL=useCurrentRow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCurrentRow.js","sources":["../../../../../../../../../src/components/Table3/hooks/features/useCurrentRow.ts"],"sourcesContent":["import React from 'react';\nimport { TableStrategy } from '../../types';\n\ntype CurrentRowHandlerCallback = TableStrategy['scrollToIndex'];\n\nexport function useCurrentRow(defaultCurrentRowIndex: number | undefined = 0) {\n const [currentRowIndex, setCurrentRowIndex] = React.useState<number>(defaultCurrentRowIndex);\n\n const move = (direction: -1 | 1, length: number, scrollToIndex: CurrentRowHandlerCallback) =>\n setCurrentRowIndex(currentIndex => {\n const nextIndex = currentIndex !== undefined ? getNextIndex(direction, currentIndex, length) : 0;\n scrollToIndex(direction === -1 ? nextIndex : nextIndex + 3);\n return nextIndex;\n });\n const moveUp = (length: number, callback: CurrentRowHandlerCallback) => move(-1, length, callback);\n const moveDown = (length: number, callback: CurrentRowHandlerCallback) => move(1, length, callback);\n\n const onKeyDown = React.useCallback(\n (event: React.KeyboardEvent, length: number, scrollToIndex: CurrentRowHandlerCallback) => {\n if (event.isDefaultPrevented() || event.isPropagationStopped()) {\n return;\n }\n\n if (event.key === 'ArrowUp') {\n event.preventDefault();\n\n if (event.ctrlKey || event.metaKey) {\n const newIndex = 0;\n setCurrentRowIndex(newIndex);\n scrollToIndex(newIndex);\n } else {\n moveUp(length, scrollToIndex);\n }\n\n return;\n } else if (event.key === 'ArrowDown') {\n event.preventDefault();\n\n if (event.ctrlKey || event.metaKey) {\n const newIndex = length - 1;\n setCurrentRowIndex(newIndex);\n scrollToIndex(newIndex);\n } else {\n moveDown(length, scrollToIndex);\n }\n\n return;\n }\n },\n []\n );\n\n return {\n currentRowIndex,\n setCurrentRowIndex,\n handleKeyDown: onKeyDown,\n };\n}\n\nconst getNextIndex = (direction: -1 | 1, currentIndex: number, length: number) => {\n if (direction === -1) {\n return currentIndex - 1 > 0 ? currentIndex - 1 : 0;\n }\n\n return currentIndex + 1 < length ? currentIndex + 1 : currentIndex;\n};\n"],"names":["useCurrentRow","defaultCurrentRowIndex","currentRowIndex","setCurrentRowIndex","React","useState","move","direction","length","scrollToIndex","currentIndex","nextIndex","undefined","getNextIndex","moveUp","callback","moveDown","onKeyDown","useCallback","event","isDefaultPrevented","isPropagationStopped","key","preventDefault","ctrlKey","metaKey","newIndex","handleKeyDown"],"mappings":";;SAKgBA,aAAa,CAACC,yBAA6C,CAAC;EACxE,MAAM,CAACC,eAAe,EAAEC,kBAAkB,CAAC,GAAGC,cAAK,CAACC,QAAQ,CAASJ,sBAAsB,CAAC;EAE5F,MAAMK,IAAI,GAAG,CAACC,SAAiB,EAAEC,MAAc,EAAEC,aAAwC,KACrFN,kBAAkB,CAACO,YAAY;IAC3B,MAAMC,SAAS,GAAGD,YAAY,KAAKE,SAAS,GAAGC,YAAY,CAACN,SAAS,EAAEG,YAAY,EAAEF,MAAM,CAAC,GAAG,CAAC;IAChGC,aAAa,CAACF,SAAS,KAAK,CAAC,CAAC,GAAGI,SAAS,GAAGA,SAAS,GAAG,CAAC,CAAC;IAC3D,OAAOA,SAAS;GACnB,CAAC;EACN,MAAMG,MAAM,GAAG,CAACN,MAAc,EAAEO,QAAmC,KAAKT,IAAI,CAAC,CAAC,CAAC,EAAEE,MAAM,EAAEO,QAAQ,CAAC;EAClG,MAAMC,QAAQ,GAAG,CAACR,MAAc,EAAEO,QAAmC,KAAKT,IAAI,CAAC,CAAC,EAAEE,MAAM,EAAEO,QAAQ,CAAC;EAEnG,MAAME,SAAS,GAAGb,cAAK,CAACc,WAAW,CAC/B,CAACC,KAA0B,EAAEX,MAAc,EAAEC,aAAwC;IACjF,IAAIU,KAAK,CAACC,kBAAkB,EAAE,IAAID,KAAK,CAACE,oBAAoB,EAAE,EAAE;MAC5D;;IAGJ,IAAIF,KAAK,CAACG,GAAG,KAAK,SAAS,EAAE;MACzBH,KAAK,CAACI,cAAc,EAAE;MAEtB,IAAIJ,KAAK,CAACK,OAAO,IAAIL,KAAK,CAACM,OAAO,EAAE;QAChC,MAAMC,QAAQ,GAAG,CAAC;QAClBvB,kBAAkB,CAACuB,QAAQ,CAAC;QAC5BjB,aAAa,CAACiB,QAAQ,CAAC;OAC1B,MAAM;QACHZ,MAAM,CAACN,MAAM,EAAEC,aAAa,CAAC;;MAGjC;KACH,MAAM,IAAIU,KAAK,CAACG,GAAG,KAAK,WAAW,EAAE;MAClCH,KAAK,CAACI,cAAc,EAAE;MAEtB,IAAIJ,KAAK,CAACK,OAAO,IAAIL,KAAK,CAACM,OAAO,EAAE;QAChC,MAAMC,QAAQ,GAAGlB,MAAM,GAAG,CAAC;QAC3BL,kBAAkB,CAACuB,QAAQ,CAAC;QAC5BjB,aAAa,CAACiB,QAAQ,CAAC;OAC1B,MAAM;QACHV,QAAQ,CAACR,MAAM,EAAEC,aAAa,CAAC;;MAGnC;;GAEP,EACD,EAAE,CACL;EAED,OAAO;IACHP,eAAe;IACfC,kBAAkB;IAClBwB,aAAa,EAAEV;GAClB;AACL;AAEA,MAAMJ,YAAY,GAAG,CAACN,SAAiB,EAAEG,YAAoB,EAAEF,MAAc;EACzE,IAAID,SAAS,KAAK,CAAC,CAAC,EAAE;IAClB,OAAOG,YAAY,GAAG,CAAC,GAAG,CAAC,GAAGA,YAAY,GAAG,CAAC,GAAG,CAAC;;EAGtD,OAAOA,YAAY,GAAG,CAAC,GAAGF,MAAM,GAAGE,YAAY,GAAG,CAAC,GAAGA,YAAY;AACtE,CAAC;;;;"}
@@ -0,0 +1,197 @@
1
+ import React__default from 'react';
2
+ import _ from 'lodash-es';
3
+
4
+ var SavingStateValue;
5
+ (function (SavingStateValue) {
6
+ SavingStateValue["Saving"] = "saving";
7
+ SavingStateValue["Saved"] = "saved";
8
+ SavingStateValue["Error"] = "error";
9
+ })(SavingStateValue || (SavingStateValue = {}));
10
+ function useEditing(isEnabled, onSave) {
11
+ // used to switch the table into editing mode
12
+ const [isEditing, setIsEditing] = React__default.useState(false);
13
+ // Saving indicator need to show saving state per row, saving state can have at lkeast two states 'saving', 'saved',
14
+ // 'saved' should remain for a few seconds to show tick icon after row has been saved.
15
+ const [savingStates, setSavingStates] = React__default.useState(null);
16
+ // sets of row changes pending save, either they have not saved yet or they have errors
17
+ const [changes, setChanges] = React__default.useState(null);
18
+ const [detailModeEditing, setDetailModeEditing] = React__default.useState(false);
19
+ function getCellValue(cell) {
20
+ var _changes$cell$row$id;
21
+ return changes ? (_changes$cell$row$id = changes[cell.row.id]) === null || _changes$cell$row$id === void 0 ? void 0 : _changes$cell$row$id[cell.column.id] : undefined;
22
+ }
23
+ // Saves editing cell value into editing state.
24
+ function setCellValue(cell, value) {
25
+ setChanges(currentChanges => {
26
+ const nextChanges = {
27
+ ...currentChanges
28
+ };
29
+ if (nextChanges[cell.row.id]) {
30
+ nextChanges[cell.row.id][cell.column.id] = value;
31
+ // we should probably delete the cell if it has just reverted back to its original value
32
+ } else {
33
+ nextChanges[cell.row.id] = {
34
+ ...cell.row.original,
35
+ [cell.column.id]: value
36
+ };
37
+ }
38
+ return nextChanges;
39
+ });
40
+ }
41
+ // Removes changes from editing state by row id
42
+ function resetChange(rowId) {
43
+ let currentChanges = changes ? {
44
+ ...changes
45
+ } : {};
46
+ if (currentChanges) {
47
+ delete currentChanges[rowId];
48
+ }
49
+ const changeset = Object.keys(currentChanges);
50
+ if (changeset.length === 0) {
51
+ currentChanges = null;
52
+ }
53
+ setChanges(currentChanges);
54
+ }
55
+ const handleKeyDown = (event, tableRef) => {
56
+ if (event.ctrlKey || event.metaKey) {
57
+ if (event.key === 'e') {
58
+ if (isEditing) {
59
+ var _tableRef$current;
60
+ setIsEditing(false);
61
+ (_tableRef$current = tableRef.current) === null || _tableRef$current === void 0 ? void 0 : _tableRef$current.focus();
62
+ } else {
63
+ setIsEditing(true);
64
+ }
65
+ }
66
+ if (event.key === 's') {
67
+ // Prevent default browser save
68
+ event.preventDefault();
69
+ saveChangesIfNeeded();
70
+ }
71
+ }
72
+ };
73
+ const handleBlur = event => {
74
+ if (event.target === event.currentTarget) {
75
+ saveChangesIfNeeded();
76
+ }
77
+ };
78
+ // Creates initial saving states from changes object
79
+ const addSavingStates = () => {
80
+ const changeset = Object.keys(changes || {});
81
+ const additionalSavingStates = _.reduce(changeset, (result, value) => {
82
+ return {
83
+ ...result,
84
+ [value]: {
85
+ state: SavingStateValue.Saving
86
+ }
87
+ };
88
+ }, {});
89
+ setSavingStates({
90
+ ...savingStates,
91
+ ...additionalSavingStates
92
+ });
93
+ };
94
+ // Repoves edititng state by row is. Used in delayed saving indicator.
95
+ const removeSavingState = rowId => {
96
+ const newSavingStates = {
97
+ ...savingStates
98
+ };
99
+ delete newSavingStates[rowId];
100
+ setSavingStates(newSavingStates);
101
+ };
102
+ // Checks if we have changes, then saves them
103
+ const saveChangesIfNeeded = function () {
104
+ try {
105
+ if (!changes) {
106
+ return Promise.resolve();
107
+ }
108
+ const changeset = Object.keys(changes);
109
+ const _temp = function () {
110
+ if (onSave && changeset.length) {
111
+ addSavingStates();
112
+ return Promise.resolve(Promise.allSettled(changeset.map(rowId => onSave(changes[rowId])))).then(function (responses) {
113
+ setChanges(currentChanges => {
114
+ const nextChanges = {
115
+ ...currentChanges
116
+ };
117
+ responses.forEach((response, index) => {
118
+ const rowId = changeset[index];
119
+ if (response.status === 'fulfilled') {
120
+ delete nextChanges[rowId];
121
+ }
122
+ });
123
+ return nextChanges;
124
+ });
125
+ setSavingStates(savingStates => {
126
+ const nextSavingStates = savingStates ? {
127
+ ...savingStates
128
+ } : {};
129
+ responses.forEach((response, index) => {
130
+ const rowId = changeset[index];
131
+ if (response.status === 'fulfilled') {
132
+ nextSavingStates[rowId] = {
133
+ state: SavingStateValue.Saved
134
+ };
135
+ } else {
136
+ // add the error when validation is added
137
+ nextSavingStates[rowId] = {
138
+ state: SavingStateValue.Error
139
+ };
140
+ }
141
+ });
142
+ return nextSavingStates;
143
+ });
144
+ });
145
+ }
146
+ }();
147
+ return Promise.resolve(_temp && _temp.then ? _temp.then(function () {}) : void 0);
148
+ } catch (e) {
149
+ return Promise.reject(e);
150
+ }
151
+ };
152
+ const [rowMoveReason, setRowMoveReason] = React__default.useState({});
153
+ const removeRowMoveReason = columnId => {
154
+ setRowMoveReason(prevState => {
155
+ const newState = {
156
+ ...prevState
157
+ };
158
+ delete newState[columnId];
159
+ return newState;
160
+ });
161
+ };
162
+ const showWarning = React__default.useCallback(event => {
163
+ if (isEditing && changes && Object.keys(changes).length > 0) {
164
+ event.returnValue = true;
165
+ return true;
166
+ }
167
+ return false;
168
+ }, [isEditing, changes]);
169
+ React__default.useEffect(() => {
170
+ window.addEventListener('beforeunload', showWarning);
171
+ return () => {
172
+ window.removeEventListener('beforeunload', showWarning);
173
+ };
174
+ }, [showWarning]);
175
+ return {
176
+ isEnabled,
177
+ isEditing,
178
+ toggleEditing: setIsEditing,
179
+ changes,
180
+ getCellValue,
181
+ setCellValue,
182
+ saveChangesIfNeeded,
183
+ detailModeEditing,
184
+ setDetailModeEditing,
185
+ rowMoveReason,
186
+ setRowMoveReason,
187
+ removeRowMoveReason,
188
+ handleKeyDown,
189
+ handleBlur,
190
+ resetChange,
191
+ savingStates,
192
+ removeSavingState
193
+ };
194
+ }
195
+
196
+ export { SavingStateValue, useEditing };
197
+ //# sourceMappingURL=useEditing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useEditing.js","sources":["../../../../../../../../../src/components/Table3/hooks/features/useEditing.tsx"],"sourcesContent":["import React from 'react';\nimport _ from 'lodash';\nimport { Cell as RTCell } from '@tanstack/react-table';\nimport { Table3Ref } from '../../types';\nimport { IndicatorReason } from '../../components/columns/cell/Indicator';\n\nexport enum SavingStateValue {\n Saving = 'saving',\n Saved = 'saved',\n Error = 'error',\n}\n\nexport type SavingState = {\n state: SavingStateValue;\n};\n\nexport function useEditing<TType = unknown>(isEnabled: boolean, onSave?: (row: TType) => void) {\n // used to switch the table into editing mode\n const [isEditing, setIsEditing] = React.useState(false);\n // Saving indicator need to show saving state per row, saving state can have at lkeast two states 'saving', 'saved',\n // 'saved' should remain for a few seconds to show tick icon after row has been saved.\n const [savingStates, setSavingStates] = React.useState<Record<string, SavingState> | null>(null);\n\n // sets of row changes pending save, either they have not saved yet or they have errors\n const [changes, setChanges] = React.useState<Record<string, TType> | null>(null);\n\n const [detailModeEditing, setDetailModeEditing] = React.useState(false);\n\n function getCellValue<T extends TType>(cell: RTCell<T, unknown>) {\n return changes ? changes[cell.row.id]?.[cell.column.id] : undefined;\n }\n\n // Saves editing cell value into editing state.\n function setCellValue<T extends TType>(cell: RTCell<T, unknown>, value: unknown) {\n setChanges(currentChanges => {\n const nextChanges = { ...currentChanges };\n\n if (nextChanges[cell.row.id]) {\n nextChanges[cell.row.id][cell.column.id] = value;\n // we should probably delete the cell if it has just reverted back to its original value\n } else {\n nextChanges[cell.row.id] = { ...cell.row.original, [cell.column.id]: value };\n }\n\n return nextChanges;\n });\n }\n\n // Removes changes from editing state by row id\n function resetChange(rowId: string) {\n let currentChanges: Record<string, TType> | null = changes ? { ...changes } : {};\n if (currentChanges) {\n delete currentChanges[rowId];\n }\n const changeset = Object.keys(currentChanges);\n if (changeset.length === 0) {\n currentChanges = null;\n }\n\n setChanges(currentChanges);\n }\n\n const handleKeyDown = (event, tableRef: React.RefObject<Table3Ref>) => {\n if (event.ctrlKey || event.metaKey) {\n if (event.key === 'e') {\n if (isEditing) {\n setIsEditing(false);\n tableRef.current?.focus();\n } else {\n setIsEditing(true);\n }\n }\n if (event.key === 's') {\n // Prevent default browser save\n event.preventDefault();\n saveChangesIfNeeded();\n }\n }\n };\n\n const handleBlur = (event: React.FocusEvent) => {\n if (event.target === event.currentTarget) {\n saveChangesIfNeeded();\n }\n };\n\n // Creates initial saving states from changes object\n const addSavingStates = () => {\n const changeset = Object.keys(changes || {});\n const additionalSavingStates = _.reduce(\n changeset,\n (result, value) => {\n return { ...result, [value]: { state: SavingStateValue.Saving } };\n },\n {}\n );\n setSavingStates({ ...savingStates, ...additionalSavingStates });\n };\n\n // Repoves edititng state by row is. Used in delayed saving indicator.\n const removeSavingState = (rowId: string) => {\n const newSavingStates = { ...savingStates };\n delete newSavingStates[rowId];\n setSavingStates(newSavingStates);\n };\n\n // Checks if we have changes, then saves them\n const saveChangesIfNeeded = async () => {\n if (!changes) {\n return;\n }\n\n const changeset = Object.keys(changes);\n if (onSave && changeset.length) {\n addSavingStates();\n\n const responses = await Promise.allSettled(changeset.map(rowId => onSave(changes[rowId])));\n\n setChanges(currentChanges => {\n const nextChanges = { ...currentChanges };\n\n responses.forEach((response, index) => {\n const rowId = changeset[index];\n\n if (response.status === 'fulfilled') {\n delete nextChanges[rowId];\n }\n });\n\n return nextChanges;\n });\n\n setSavingStates(savingStates => {\n const nextSavingStates = savingStates ? { ...savingStates } : {};\n responses.forEach((response, index) => {\n const rowId = changeset[index];\n\n if (response.status === 'fulfilled') {\n nextSavingStates[rowId] = { state: SavingStateValue.Saved };\n } else {\n // add the error when validation is added\n nextSavingStates[rowId] = { state: SavingStateValue.Error };\n }\n });\n return nextSavingStates;\n });\n }\n };\n\n const [rowMoveReason, setRowMoveReason] = React.useState<Record<string, IndicatorReason | null>>({});\n\n const removeRowMoveReason = (columnId: string) => {\n setRowMoveReason(prevState => {\n const newState = { ...prevState };\n delete newState[columnId];\n\n return newState;\n });\n };\n\n const showWarning = React.useCallback(\n event => {\n if (isEditing && changes && Object.keys(changes).length > 0) {\n event.returnValue = true;\n return true;\n }\n\n return false;\n },\n [isEditing, changes]\n );\n\n React.useEffect(() => {\n window.addEventListener('beforeunload', showWarning);\n\n return () => {\n window.removeEventListener('beforeunload', showWarning);\n };\n }, [showWarning]);\n\n return {\n isEnabled,\n isEditing,\n toggleEditing: setIsEditing,\n changes,\n getCellValue,\n setCellValue,\n saveChangesIfNeeded,\n detailModeEditing,\n setDetailModeEditing,\n rowMoveReason,\n setRowMoveReason,\n removeRowMoveReason,\n handleKeyDown,\n handleBlur,\n resetChange,\n savingStates,\n removeSavingState,\n };\n}\n"],"names":["SavingStateValue","useEditing","isEnabled","onSave","isEditing","setIsEditing","React","useState","savingStates","setSavingStates","changes","setChanges","detailModeEditing","setDetailModeEditing","getCellValue","cell","row","id","column","undefined","setCellValue","value","currentChanges","nextChanges","original","resetChange","rowId","changeset","Object","keys","length","handleKeyDown","event","tableRef","ctrlKey","metaKey","key","current","focus","preventDefault","saveChangesIfNeeded","handleBlur","target","currentTarget","addSavingStates","additionalSavingStates","_","reduce","result","state","Saving","removeSavingState","newSavingStates","Promise","allSettled","map","responses","forEach","response","index","status","nextSavingStates","Saved","Error","rowMoveReason","setRowMoveReason","removeRowMoveReason","columnId","prevState","newState","showWarning","useCallback","returnValue","useEffect","window","addEventListener","removeEventListener","toggleEditing"],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import React__default from 'react';
2
+
3
+ function useFontSize(isEnabled, defaultFontSize = 'medium') {
4
+ const [size, setSize] = React__default.useState(defaultFontSize);
5
+ return {
6
+ isEnabled,
7
+ size,
8
+ setSize: isEnabled ? setSize : () => undefined
9
+ };
10
+ }
11
+
12
+ export { useFontSize };
13
+ //# sourceMappingURL=useFontSize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFontSize.js","sources":["../../../../../../../../../src/components/Table3/hooks/features/useFontSize.ts"],"sourcesContent":["import React from 'react';\nimport { Table3FontSize } from '../../types';\n\nexport function useFontSize(isEnabled: boolean, defaultFontSize: Table3FontSize = 'medium') {\n const [size, setSize] = React.useState<Table3FontSize>(defaultFontSize);\n\n return {\n isEnabled,\n size,\n setSize: isEnabled ? setSize : () => undefined,\n };\n}\n"],"names":["useFontSize","isEnabled","defaultFontSize","size","setSize","React","useState","undefined"],"mappings":";;SAGgBA,WAAW,CAACC,SAAkB,EAAEC,kBAAkC,QAAQ;EACtF,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAGC,cAAK,CAACC,QAAQ,CAAiBJ,eAAe,CAAC;EAEvE,OAAO;IACHD,SAAS;IACTE,IAAI;IACJC,OAAO,EAAEH,SAAS,GAAGG,OAAO,GAAG,MAAMG;GACxC;AACL;;;;"}
@@ -0,0 +1,19 @@
1
+ import React__default from 'react';
2
+ import { useIsHoverStatePaused } from '../../../../hooks/useIsHoverStatePaused.js';
3
+
4
+ function usePauseHoverState() {
5
+ const [isHoverStatePaused, setHoverStatePaused] = useIsHoverStatePaused();
6
+ const onKeyDown = React__default.useCallback(event => {
7
+ if (event.key === 'ArrowUp' || event.key === 'ArrowDown') {
8
+ setHoverStatePaused(true);
9
+ }
10
+ }, []);
11
+ return {
12
+ isPaused: isHoverStatePaused,
13
+ pause: setHoverStatePaused,
14
+ handleKeyDown: onKeyDown
15
+ };
16
+ }
17
+
18
+ export { usePauseHoverState };
19
+ //# sourceMappingURL=usePauseHoverState.js.map