@depup/react-virtualized 9.22.6-depup.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (254) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +34 -0
  3. package/changes.json +22 -0
  4. package/dist/commonjs/ArrowKeyStepper/ArrowKeyStepper.example.js +184 -0
  5. package/dist/commonjs/ArrowKeyStepper/ArrowKeyStepper.jest.js +338 -0
  6. package/dist/commonjs/ArrowKeyStepper/ArrowKeyStepper.js +204 -0
  7. package/dist/commonjs/ArrowKeyStepper/index.js +19 -0
  8. package/dist/commonjs/ArrowKeyStepper/types.js +5 -0
  9. package/dist/commonjs/AutoSizer/AutoSizer.example.js +104 -0
  10. package/dist/commonjs/AutoSizer/AutoSizer.jest.js +341 -0
  11. package/dist/commonjs/AutoSizer/AutoSizer.js +199 -0
  12. package/dist/commonjs/AutoSizer/AutoSizer.ssr.js +25 -0
  13. package/dist/commonjs/AutoSizer/index.js +19 -0
  14. package/dist/commonjs/CellMeasurer/CellMeasurer.DynamicHeightGrid.example.js +100 -0
  15. package/dist/commonjs/CellMeasurer/CellMeasurer.DynamicHeightList.example.js +99 -0
  16. package/dist/commonjs/CellMeasurer/CellMeasurer.DynamicHeightTableColumn.example.js +107 -0
  17. package/dist/commonjs/CellMeasurer/CellMeasurer.DynamicWidthGrid.example.js +102 -0
  18. package/dist/commonjs/CellMeasurer/CellMeasurer.DynamicWidthMultiGrid.example.js +107 -0
  19. package/dist/commonjs/CellMeasurer/CellMeasurer.example.js +129 -0
  20. package/dist/commonjs/CellMeasurer/CellMeasurer.jest.js +345 -0
  21. package/dist/commonjs/CellMeasurer/CellMeasurer.js +195 -0
  22. package/dist/commonjs/CellMeasurer/CellMeasurerCache.jest.js +298 -0
  23. package/dist/commonjs/CellMeasurer/CellMeasurerCache.js +202 -0
  24. package/dist/commonjs/CellMeasurer/index.js +22 -0
  25. package/dist/commonjs/CellMeasurer/types.js +14 -0
  26. package/dist/commonjs/Collection/Collection.example.js +231 -0
  27. package/dist/commonjs/Collection/Collection.jest.js +829 -0
  28. package/dist/commonjs/Collection/Collection.js +266 -0
  29. package/dist/commonjs/Collection/CollectionView.js +553 -0
  30. package/dist/commonjs/Collection/Section.jest.js +63 -0
  31. package/dist/commonjs/Collection/Section.js +57 -0
  32. package/dist/commonjs/Collection/SectionManager.jest.js +121 -0
  33. package/dist/commonjs/Collection/SectionManager.js +134 -0
  34. package/dist/commonjs/Collection/TestData.js +77 -0
  35. package/dist/commonjs/Collection/index.js +15 -0
  36. package/dist/commonjs/Collection/types.js +22 -0
  37. package/dist/commonjs/Collection/utils/calculateSizeAndPositionData.jest.js +34 -0
  38. package/dist/commonjs/Collection/utils/calculateSizeAndPositionData.js +38 -0
  39. package/dist/commonjs/ColumnSizer/ColumnSizer.example.js +159 -0
  40. package/dist/commonjs/ColumnSizer/ColumnSizer.jest.js +129 -0
  41. package/dist/commonjs/ColumnSizer/ColumnSizer.js +103 -0
  42. package/dist/commonjs/ColumnSizer/index.js +15 -0
  43. package/dist/commonjs/Grid/Grid.example.js +330 -0
  44. package/dist/commonjs/Grid/Grid.jest.js +2561 -0
  45. package/dist/commonjs/Grid/Grid.js +1432 -0
  46. package/dist/commonjs/Grid/Grid.ssr.js +62 -0
  47. package/dist/commonjs/Grid/accessibilityOverscanIndicesGetter.jest.js +92 -0
  48. package/dist/commonjs/Grid/accessibilityOverscanIndicesGetter.js +40 -0
  49. package/dist/commonjs/Grid/defaultCellRangeRenderer.js +139 -0
  50. package/dist/commonjs/Grid/defaultOverscanIndicesGetter.jest.js +92 -0
  51. package/dist/commonjs/Grid/defaultOverscanIndicesGetter.js +36 -0
  52. package/dist/commonjs/Grid/index.js +40 -0
  53. package/dist/commonjs/Grid/types.js +8 -0
  54. package/dist/commonjs/Grid/utils/CellSizeAndPositionManager.jest.js +375 -0
  55. package/dist/commonjs/Grid/utils/CellSizeAndPositionManager.js +296 -0
  56. package/dist/commonjs/Grid/utils/ScalingCellSizeAndPositionManager.jest.js +201 -0
  57. package/dist/commonjs/Grid/utils/ScalingCellSizeAndPositionManager.js +204 -0
  58. package/dist/commonjs/Grid/utils/calculateSizeAndPositionDataAndUpdateScrollOffset.jest.js +84 -0
  59. package/dist/commonjs/Grid/utils/calculateSizeAndPositionDataAndUpdateScrollOffset.js +59 -0
  60. package/dist/commonjs/Grid/utils/maxElementSize.js +22 -0
  61. package/dist/commonjs/Grid/utils/updateScrollIndexHelper.jest.js +180 -0
  62. package/dist/commonjs/Grid/utils/updateScrollIndexHelper.js +85 -0
  63. package/dist/commonjs/InfiniteLoader/InfiniteLoader.example.js +179 -0
  64. package/dist/commonjs/InfiniteLoader/InfiniteLoader.jest.js +571 -0
  65. package/dist/commonjs/InfiniteLoader/InfiniteLoader.js +274 -0
  66. package/dist/commonjs/InfiniteLoader/index.js +15 -0
  67. package/dist/commonjs/List/List.example.js +236 -0
  68. package/dist/commonjs/List/List.jest.js +517 -0
  69. package/dist/commonjs/List/List.js +318 -0
  70. package/dist/commonjs/List/index.js +19 -0
  71. package/dist/commonjs/List/types.js +6 -0
  72. package/dist/commonjs/Masonry/Masonry.example.js +287 -0
  73. package/dist/commonjs/Masonry/Masonry.jest.js +450 -0
  74. package/dist/commonjs/Masonry/Masonry.js +431 -0
  75. package/dist/commonjs/Masonry/PositionCache.js +88 -0
  76. package/dist/commonjs/Masonry/createCellPositioner.js +59 -0
  77. package/dist/commonjs/Masonry/index.js +22 -0
  78. package/dist/commonjs/MultiGrid/CellMeasurerCacheDecorator.js +106 -0
  79. package/dist/commonjs/MultiGrid/MultiGrid.example.js +131 -0
  80. package/dist/commonjs/MultiGrid/MultiGrid.jest.js +584 -0
  81. package/dist/commonjs/MultiGrid/MultiGrid.js +743 -0
  82. package/dist/commonjs/MultiGrid/index.js +15 -0
  83. package/dist/commonjs/ScrollSync/ScrollSync.example.js +257 -0
  84. package/dist/commonjs/ScrollSync/ScrollSync.jest.js +66 -0
  85. package/dist/commonjs/ScrollSync/ScrollSync.js +88 -0
  86. package/dist/commonjs/ScrollSync/index.js +15 -0
  87. package/dist/commonjs/Table/Column.jest.js +90 -0
  88. package/dist/commonjs/Table/Column.js +93 -0
  89. package/dist/commonjs/Table/SortDirection.js +19 -0
  90. package/dist/commonjs/Table/SortIndicator.js +40 -0
  91. package/dist/commonjs/Table/Table.example.js +325 -0
  92. package/dist/commonjs/Table/Table.jest.js +1257 -0
  93. package/dist/commonjs/Table/Table.js +742 -0
  94. package/dist/commonjs/Table/createMultiSort.jest.js +165 -0
  95. package/dist/commonjs/Table/createMultiSort.js +99 -0
  96. package/dist/commonjs/Table/defaultCellDataGetter.js +21 -0
  97. package/dist/commonjs/Table/defaultCellRenderer.js +19 -0
  98. package/dist/commonjs/Table/defaultHeaderRenderer.js +35 -0
  99. package/dist/commonjs/Table/defaultHeaderRowRenderer.js +21 -0
  100. package/dist/commonjs/Table/defaultRowRenderer.js +87 -0
  101. package/dist/commonjs/Table/index.js +78 -0
  102. package/dist/commonjs/Table/types.js +39 -0
  103. package/dist/commonjs/WindowScroller/WindowScroller.e2e.js +298 -0
  104. package/dist/commonjs/WindowScroller/WindowScroller.example.js +167 -0
  105. package/dist/commonjs/WindowScroller/WindowScroller.header-resize.e2e.js +359 -0
  106. package/dist/commonjs/WindowScroller/WindowScroller.jest.js +536 -0
  107. package/dist/commonjs/WindowScroller/WindowScroller.js +268 -0
  108. package/dist/commonjs/WindowScroller/WindowScroller.ssr.js +25 -0
  109. package/dist/commonjs/WindowScroller/index.js +23 -0
  110. package/dist/commonjs/WindowScroller/utils/dimensions.js +89 -0
  111. package/dist/commonjs/WindowScroller/utils/onScroll.js +70 -0
  112. package/dist/commonjs/index.js +180 -0
  113. package/dist/commonjs/jest-setup.js +7 -0
  114. package/dist/commonjs/utils/TestHelper.js +36 -0
  115. package/dist/commonjs/utils/animationFrame.js +29 -0
  116. package/dist/commonjs/utils/createCallbackMemoizer.jest.js +219 -0
  117. package/dist/commonjs/utils/createCallbackMemoizer.js +31 -0
  118. package/dist/commonjs/utils/getUpdatedOffsetForIndex.jest.js +68 -0
  119. package/dist/commonjs/utils/getUpdatedOffsetForIndex.js +38 -0
  120. package/dist/commonjs/utils/initCellMetadata.js +37 -0
  121. package/dist/commonjs/utils/requestAnimationTimeout.js +38 -0
  122. package/dist/commonjs/vendor/binarySearchBounds.js +200 -0
  123. package/dist/commonjs/vendor/detectElementResize.js +192 -0
  124. package/dist/commonjs/vendor/intervalTree.js +361 -0
  125. package/dist/es/ArrowKeyStepper/ArrowKeyStepper.example.js +176 -0
  126. package/dist/es/ArrowKeyStepper/ArrowKeyStepper.jest.js +332 -0
  127. package/dist/es/ArrowKeyStepper/ArrowKeyStepper.js +197 -0
  128. package/dist/es/ArrowKeyStepper/index.js +3 -0
  129. package/dist/es/ArrowKeyStepper/types.js +4 -0
  130. package/dist/es/AutoSizer/AutoSizer.example.js +96 -0
  131. package/dist/es/AutoSizer/AutoSizer.jest.js +335 -0
  132. package/dist/es/AutoSizer/AutoSizer.js +190 -0
  133. package/dist/es/AutoSizer/AutoSizer.js.flow +200 -0
  134. package/dist/es/AutoSizer/AutoSizer.ssr.js +19 -0
  135. package/dist/es/AutoSizer/index.js +2 -0
  136. package/dist/es/AutoSizer/index.js.flow +4 -0
  137. package/dist/es/CellMeasurer/CellMeasurer.DynamicHeightGrid.example.js +91 -0
  138. package/dist/es/CellMeasurer/CellMeasurer.DynamicHeightList.example.js +90 -0
  139. package/dist/es/CellMeasurer/CellMeasurer.DynamicHeightTableColumn.example.js +98 -0
  140. package/dist/es/CellMeasurer/CellMeasurer.DynamicWidthGrid.example.js +93 -0
  141. package/dist/es/CellMeasurer/CellMeasurer.DynamicWidthMultiGrid.example.js +98 -0
  142. package/dist/es/CellMeasurer/CellMeasurer.example.js +120 -0
  143. package/dist/es/CellMeasurer/CellMeasurer.jest.js +340 -0
  144. package/dist/es/CellMeasurer/CellMeasurer.js +187 -0
  145. package/dist/es/CellMeasurer/CellMeasurerCache.jest.js +293 -0
  146. package/dist/es/CellMeasurer/CellMeasurerCache.js +196 -0
  147. package/dist/es/CellMeasurer/index.js +4 -0
  148. package/dist/es/CellMeasurer/types.js +13 -0
  149. package/dist/es/Collection/Collection.example.js +223 -0
  150. package/dist/es/Collection/Collection.jest.js +824 -0
  151. package/dist/es/Collection/Collection.js +257 -0
  152. package/dist/es/Collection/CollectionView.js +544 -0
  153. package/dist/es/Collection/Section.jest.js +60 -0
  154. package/dist/es/Collection/Section.js +51 -0
  155. package/dist/es/Collection/SectionManager.jest.js +118 -0
  156. package/dist/es/Collection/SectionManager.js +128 -0
  157. package/dist/es/Collection/TestData.js +71 -0
  158. package/dist/es/Collection/index.js +3 -0
  159. package/dist/es/Collection/types.js +21 -0
  160. package/dist/es/Collection/utils/calculateSizeAndPositionData.jest.js +31 -0
  161. package/dist/es/Collection/utils/calculateSizeAndPositionData.js +31 -0
  162. package/dist/es/ColumnSizer/ColumnSizer.example.js +150 -0
  163. package/dist/es/ColumnSizer/ColumnSizer.jest.js +123 -0
  164. package/dist/es/ColumnSizer/ColumnSizer.js +95 -0
  165. package/dist/es/ColumnSizer/index.js +3 -0
  166. package/dist/es/Grid/Grid.example.js +321 -0
  167. package/dist/es/Grid/Grid.jest.js +2555 -0
  168. package/dist/es/Grid/Grid.js +1425 -0
  169. package/dist/es/Grid/Grid.ssr.js +57 -0
  170. package/dist/es/Grid/accessibilityOverscanIndicesGetter.jest.js +87 -0
  171. package/dist/es/Grid/accessibilityOverscanIndicesGetter.js +33 -0
  172. package/dist/es/Grid/defaultCellRangeRenderer.js +134 -0
  173. package/dist/es/Grid/defaultOverscanIndicesGetter.jest.js +87 -0
  174. package/dist/es/Grid/defaultOverscanIndicesGetter.js +29 -0
  175. package/dist/es/Grid/index.js +15 -0
  176. package/dist/es/Grid/types.js +96 -0
  177. package/dist/es/Grid/utils/CellSizeAndPositionManager.jest.js +372 -0
  178. package/dist/es/Grid/utils/CellSizeAndPositionManager.js +290 -0
  179. package/dist/es/Grid/utils/ScalingCellSizeAndPositionManager.jest.js +198 -0
  180. package/dist/es/Grid/utils/ScalingCellSizeAndPositionManager.js +198 -0
  181. package/dist/es/Grid/utils/calculateSizeAndPositionDataAndUpdateScrollOffset.jest.js +81 -0
  182. package/dist/es/Grid/utils/calculateSizeAndPositionDataAndUpdateScrollOffset.js +53 -0
  183. package/dist/es/Grid/utils/maxElementSize.js +16 -0
  184. package/dist/es/Grid/utils/updateScrollIndexHelper.jest.js +174 -0
  185. package/dist/es/Grid/utils/updateScrollIndexHelper.js +79 -0
  186. package/dist/es/InfiniteLoader/InfiniteLoader.example.js +170 -0
  187. package/dist/es/InfiniteLoader/InfiniteLoader.jest.js +565 -0
  188. package/dist/es/InfiniteLoader/InfiniteLoader.js +263 -0
  189. package/dist/es/InfiniteLoader/index.js +3 -0
  190. package/dist/es/List/List.example.js +227 -0
  191. package/dist/es/List/List.jest.js +511 -0
  192. package/dist/es/List/List.js +312 -0
  193. package/dist/es/List/index.js +3 -0
  194. package/dist/es/List/types.js +21 -0
  195. package/dist/es/Masonry/Masonry.example.js +278 -0
  196. package/dist/es/Masonry/Masonry.jest.js +444 -0
  197. package/dist/es/Masonry/Masonry.js +421 -0
  198. package/dist/es/Masonry/PositionCache.js +82 -0
  199. package/dist/es/Masonry/createCellPositioner.js +53 -0
  200. package/dist/es/Masonry/index.js +4 -0
  201. package/dist/es/MultiGrid/CellMeasurerCacheDecorator.js +100 -0
  202. package/dist/es/MultiGrid/MultiGrid.example.js +122 -0
  203. package/dist/es/MultiGrid/MultiGrid.jest.js +579 -0
  204. package/dist/es/MultiGrid/MultiGrid.js +733 -0
  205. package/dist/es/MultiGrid/index.js +3 -0
  206. package/dist/es/ScrollSync/ScrollSync.example.js +248 -0
  207. package/dist/es/ScrollSync/ScrollSync.jest.js +60 -0
  208. package/dist/es/ScrollSync/ScrollSync.js +80 -0
  209. package/dist/es/ScrollSync/index.js +3 -0
  210. package/dist/es/Table/Column.jest.js +84 -0
  211. package/dist/es/Table/Column.js +85 -0
  212. package/dist/es/Table/SortDirection.js +13 -0
  213. package/dist/es/Table/SortIndicator.js +31 -0
  214. package/dist/es/Table/Table.example.js +316 -0
  215. package/dist/es/Table/Table.jest.js +1251 -0
  216. package/dist/es/Table/Table.js +735 -0
  217. package/dist/es/Table/createMultiSort.jest.js +162 -0
  218. package/dist/es/Table/createMultiSort.js +93 -0
  219. package/dist/es/Table/defaultCellDataGetter.js +15 -0
  220. package/dist/es/Table/defaultCellRenderer.js +13 -0
  221. package/dist/es/Table/defaultHeaderRenderer.js +25 -0
  222. package/dist/es/Table/defaultHeaderRowRenderer.js +12 -0
  223. package/dist/es/Table/defaultRowRenderer.js +77 -0
  224. package/dist/es/Table/index.js +12 -0
  225. package/dist/es/Table/types.js +38 -0
  226. package/dist/es/WindowScroller/WindowScroller.e2e.js +295 -0
  227. package/dist/es/WindowScroller/WindowScroller.example.js +158 -0
  228. package/dist/es/WindowScroller/WindowScroller.header-resize.e2e.js +356 -0
  229. package/dist/es/WindowScroller/WindowScroller.jest.js +530 -0
  230. package/dist/es/WindowScroller/WindowScroller.js +259 -0
  231. package/dist/es/WindowScroller/WindowScroller.js.flow +277 -0
  232. package/dist/es/WindowScroller/WindowScroller.ssr.js +19 -0
  233. package/dist/es/WindowScroller/index.js +3 -0
  234. package/dist/es/WindowScroller/index.js.flow +6 -0
  235. package/dist/es/WindowScroller/utils/dimensions.js +81 -0
  236. package/dist/es/WindowScroller/utils/dimensions.js.flow +91 -0
  237. package/dist/es/WindowScroller/utils/onScroll.js +64 -0
  238. package/dist/es/WindowScroller/utils/onScroll.js.flow +94 -0
  239. package/dist/es/index.js +13 -0
  240. package/dist/es/jest-setup.js +5 -0
  241. package/dist/es/utils/TestHelper.js +30 -0
  242. package/dist/es/utils/animationFrame.js +23 -0
  243. package/dist/es/utils/createCallbackMemoizer.jest.js +216 -0
  244. package/dist/es/utils/createCallbackMemoizer.js +25 -0
  245. package/dist/es/utils/getUpdatedOffsetForIndex.jest.js +65 -0
  246. package/dist/es/utils/getUpdatedOffsetForIndex.js +32 -0
  247. package/dist/es/utils/initCellMetadata.js +31 -0
  248. package/dist/es/utils/requestAnimationTimeout.js +32 -0
  249. package/dist/es/vendor/binarySearchBounds.js +194 -0
  250. package/dist/es/vendor/detectElementResize.js +186 -0
  251. package/dist/es/vendor/intervalTree.js +354 -0
  252. package/dist/umd/react-virtualized.js +4638 -0
  253. package/package.json +188 -0
  254. package/styles.css +80 -0
@@ -0,0 +1,3 @@
1
+ import MultiGrid from './MultiGrid';
2
+ export default MultiGrid;
3
+ export { MultiGrid };
@@ -0,0 +1,248 @@
1
+ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
+ import _createClass from "@babel/runtime/helpers/createClass";
3
+ import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
4
+ import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
5
+ import _inherits from "@babel/runtime/helpers/inherits";
6
+ function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
7
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
8
+ import * as React from 'react';
9
+ import { ContentBox, ContentBoxHeader, ContentBoxParagraph } from '../demo/ContentBox';
10
+ import AutoSizer from '../AutoSizer';
11
+ import Grid from '../Grid';
12
+ import ScrollSync from './ScrollSync';
13
+ import clsx from 'clsx';
14
+ import styles from './ScrollSync.example.css';
15
+ import scrollbarSize from 'dom-helpers/scrollbarSize';
16
+ var LEFT_COLOR_FROM = hexToRgb('#471061');
17
+ var LEFT_COLOR_TO = hexToRgb('#BC3959');
18
+ var TOP_COLOR_FROM = hexToRgb('#000000');
19
+ var TOP_COLOR_TO = hexToRgb('#333333');
20
+ var GridExample = /*#__PURE__*/function (_React$PureComponent) {
21
+ function GridExample(props, context) {
22
+ var _this;
23
+ _classCallCheck(this, GridExample);
24
+ _this = _callSuper(this, GridExample, [props, context]);
25
+ _this.state = {
26
+ columnWidth: 75,
27
+ columnCount: 50,
28
+ height: 300,
29
+ overscanColumnCount: 0,
30
+ overscanRowCount: 5,
31
+ rowHeight: 40,
32
+ rowCount: 100
33
+ };
34
+ _this._renderBodyCell = _this._renderBodyCell.bind(_this);
35
+ _this._renderHeaderCell = _this._renderHeaderCell.bind(_this);
36
+ _this._renderLeftSideCell = _this._renderLeftSideCell.bind(_this);
37
+ return _this;
38
+ }
39
+ _inherits(GridExample, _React$PureComponent);
40
+ return _createClass(GridExample, [{
41
+ key: "render",
42
+ value: function render() {
43
+ var _this2 = this;
44
+ var _this$state = this.state,
45
+ columnCount = _this$state.columnCount,
46
+ columnWidth = _this$state.columnWidth,
47
+ height = _this$state.height,
48
+ overscanColumnCount = _this$state.overscanColumnCount,
49
+ overscanRowCount = _this$state.overscanRowCount,
50
+ rowHeight = _this$state.rowHeight,
51
+ rowCount = _this$state.rowCount;
52
+ return /*#__PURE__*/React.createElement(ContentBox, null, /*#__PURE__*/React.createElement(ContentBoxHeader, {
53
+ text: "ScrollSync",
54
+ sourceLink: "https://github.com/bvaughn/react-virtualized/blob/master/source/ScrollSync/ScrollSync.example.js",
55
+ docsLink: "https://github.com/bvaughn/react-virtualized/blob/master/docs/ScrollSync.md"
56
+ }), /*#__PURE__*/React.createElement(ContentBoxParagraph, null, "High order component that simplifies the process of synchronizing scrolling between two or more virtualized components."), /*#__PURE__*/React.createElement(ContentBoxParagraph, null, "This example shows two ", /*#__PURE__*/React.createElement("code", null, "Grid"), "s and one ", /*#__PURE__*/React.createElement("code", null, "List"), ' ', "configured to mimic a spreadsheet with a fixed header and first column. It also shows how a scroll callback can be used to control UI properties such as background color."), /*#__PURE__*/React.createElement(ScrollSync, null, function (_ref) {
57
+ var clientHeight = _ref.clientHeight,
58
+ clientWidth = _ref.clientWidth,
59
+ onScroll = _ref.onScroll,
60
+ scrollHeight = _ref.scrollHeight,
61
+ scrollLeft = _ref.scrollLeft,
62
+ scrollTop = _ref.scrollTop,
63
+ scrollWidth = _ref.scrollWidth;
64
+ var x = scrollLeft / (scrollWidth - clientWidth);
65
+ var y = scrollTop / (scrollHeight - clientHeight);
66
+ var leftBackgroundColor = mixColors(LEFT_COLOR_FROM, LEFT_COLOR_TO, y);
67
+ var leftColor = '#ffffff';
68
+ var topBackgroundColor = mixColors(TOP_COLOR_FROM, TOP_COLOR_TO, x);
69
+ var topColor = '#ffffff';
70
+ var middleBackgroundColor = mixColors(leftBackgroundColor, topBackgroundColor, 0.5);
71
+ var middleColor = '#ffffff';
72
+ return /*#__PURE__*/React.createElement("div", {
73
+ className: styles.GridRow
74
+ }, /*#__PURE__*/React.createElement("div", {
75
+ className: styles.LeftSideGridContainer,
76
+ style: {
77
+ position: 'absolute',
78
+ left: 0,
79
+ top: 0,
80
+ color: leftColor,
81
+ backgroundColor: "rgb(".concat(topBackgroundColor.r, ",").concat(topBackgroundColor.g, ",").concat(topBackgroundColor.b, ")")
82
+ }
83
+ }, /*#__PURE__*/React.createElement(Grid, {
84
+ cellRenderer: _this2._renderLeftHeaderCell,
85
+ className: styles.HeaderGrid,
86
+ width: columnWidth,
87
+ height: rowHeight,
88
+ rowHeight: rowHeight,
89
+ columnWidth: columnWidth,
90
+ rowCount: 1,
91
+ columnCount: 1
92
+ })), /*#__PURE__*/React.createElement("div", {
93
+ className: styles.LeftSideGridContainer,
94
+ style: {
95
+ position: 'absolute',
96
+ left: 0,
97
+ top: rowHeight,
98
+ color: leftColor,
99
+ backgroundColor: "rgb(".concat(leftBackgroundColor.r, ",").concat(leftBackgroundColor.g, ",").concat(leftBackgroundColor.b, ")")
100
+ }
101
+ }, /*#__PURE__*/React.createElement(Grid, {
102
+ overscanColumnCount: overscanColumnCount,
103
+ overscanRowCount: overscanRowCount,
104
+ cellRenderer: _this2._renderLeftSideCell,
105
+ columnWidth: columnWidth,
106
+ columnCount: 1,
107
+ className: styles.LeftSideGrid,
108
+ height: height - scrollbarSize(),
109
+ rowHeight: rowHeight,
110
+ rowCount: rowCount,
111
+ scrollTop: scrollTop,
112
+ width: columnWidth
113
+ })), /*#__PURE__*/React.createElement("div", {
114
+ className: styles.GridColumn
115
+ }, /*#__PURE__*/React.createElement(AutoSizer, {
116
+ disableHeight: true
117
+ }, function (_ref2) {
118
+ var width = _ref2.width;
119
+ return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
120
+ style: {
121
+ backgroundColor: "rgb(".concat(topBackgroundColor.r, ",").concat(topBackgroundColor.g, ",").concat(topBackgroundColor.b, ")"),
122
+ color: topColor,
123
+ height: rowHeight,
124
+ width: width - scrollbarSize()
125
+ }
126
+ }, /*#__PURE__*/React.createElement(Grid, {
127
+ className: styles.HeaderGrid,
128
+ columnWidth: columnWidth,
129
+ columnCount: columnCount,
130
+ height: rowHeight,
131
+ overscanColumnCount: overscanColumnCount,
132
+ cellRenderer: _this2._renderHeaderCell,
133
+ rowHeight: rowHeight,
134
+ rowCount: 1,
135
+ scrollLeft: scrollLeft,
136
+ width: width - scrollbarSize()
137
+ })), /*#__PURE__*/React.createElement("div", {
138
+ style: {
139
+ backgroundColor: "rgb(".concat(middleBackgroundColor.r, ",").concat(middleBackgroundColor.g, ",").concat(middleBackgroundColor.b, ")"),
140
+ color: middleColor,
141
+ height: height,
142
+ width: width
143
+ }
144
+ }, /*#__PURE__*/React.createElement(Grid, {
145
+ className: styles.BodyGrid,
146
+ columnWidth: columnWidth,
147
+ columnCount: columnCount,
148
+ height: height,
149
+ onScroll: onScroll,
150
+ overscanColumnCount: overscanColumnCount,
151
+ overscanRowCount: overscanRowCount,
152
+ cellRenderer: _this2._renderBodyCell,
153
+ rowHeight: rowHeight,
154
+ rowCount: rowCount,
155
+ width: width
156
+ })));
157
+ })));
158
+ }));
159
+ }
160
+ }, {
161
+ key: "_renderBodyCell",
162
+ value: function _renderBodyCell(_ref3) {
163
+ var columnIndex = _ref3.columnIndex,
164
+ key = _ref3.key,
165
+ rowIndex = _ref3.rowIndex,
166
+ style = _ref3.style;
167
+ if (columnIndex < 1) {
168
+ return;
169
+ }
170
+ return this._renderLeftSideCell({
171
+ columnIndex: columnIndex,
172
+ key: key,
173
+ rowIndex: rowIndex,
174
+ style: style
175
+ });
176
+ }
177
+ }, {
178
+ key: "_renderHeaderCell",
179
+ value: function _renderHeaderCell(_ref4) {
180
+ var columnIndex = _ref4.columnIndex,
181
+ key = _ref4.key,
182
+ rowIndex = _ref4.rowIndex,
183
+ style = _ref4.style;
184
+ if (columnIndex < 1) {
185
+ return;
186
+ }
187
+ return this._renderLeftHeaderCell({
188
+ columnIndex: columnIndex,
189
+ key: key,
190
+ rowIndex: rowIndex,
191
+ style: style
192
+ });
193
+ }
194
+ }, {
195
+ key: "_renderLeftHeaderCell",
196
+ value: function _renderLeftHeaderCell(_ref5) {
197
+ var columnIndex = _ref5.columnIndex,
198
+ key = _ref5.key,
199
+ style = _ref5.style;
200
+ return /*#__PURE__*/React.createElement("div", {
201
+ className: styles.headerCell,
202
+ key: key,
203
+ style: style
204
+ }, "C".concat(columnIndex));
205
+ }
206
+ }, {
207
+ key: "_renderLeftSideCell",
208
+ value: function _renderLeftSideCell(_ref6) {
209
+ var columnIndex = _ref6.columnIndex,
210
+ key = _ref6.key,
211
+ rowIndex = _ref6.rowIndex,
212
+ style = _ref6.style;
213
+ var rowClass = rowIndex % 2 === 0 ? columnIndex % 2 === 0 ? styles.evenRow : styles.oddRow : columnIndex % 2 !== 0 ? styles.evenRow : styles.oddRow;
214
+ var classNames = clsx(rowClass, styles.cell);
215
+ return /*#__PURE__*/React.createElement("div", {
216
+ className: classNames,
217
+ key: key,
218
+ style: style
219
+ }, "R".concat(rowIndex, ", C").concat(columnIndex));
220
+ }
221
+ }]);
222
+ }(React.PureComponent);
223
+ export { GridExample as default };
224
+ function hexToRgb(hex) {
225
+ var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
226
+ return result ? {
227
+ r: parseInt(result[1], 16),
228
+ g: parseInt(result[2], 16),
229
+ b: parseInt(result[3], 16)
230
+ } : null;
231
+ }
232
+
233
+ /**
234
+ * Ported from sass implementation in C
235
+ * https://github.com/sass/libsass/blob/0e6b4a2850092356aa3ece07c6b249f0221caced/functions.cpp#L209
236
+ */
237
+ function mixColors(color1, color2, amount) {
238
+ var weight1 = amount;
239
+ var weight2 = 1 - amount;
240
+ var r = Math.round(weight1 * color1.r + weight2 * color2.r);
241
+ var g = Math.round(weight1 * color1.g + weight2 * color2.g);
242
+ var b = Math.round(weight1 * color1.b + weight2 * color2.b);
243
+ return {
244
+ r: r,
245
+ g: g,
246
+ b: b
247
+ };
248
+ }
@@ -0,0 +1,60 @@
1
+ import * as React from 'react';
2
+ import { findDOMNode } from 'react-dom';
3
+ import { render } from '../TestUtils';
4
+ import ScrollSync from './ScrollSync';
5
+ function ChildComponent(_ref) {
6
+ var clientHeight = _ref.clientHeight,
7
+ clientWidth = _ref.clientWidth,
8
+ scrollHeight = _ref.scrollHeight,
9
+ scrollLeft = _ref.scrollLeft,
10
+ scrollTop = _ref.scrollTop,
11
+ scrollWidth = _ref.scrollWidth;
12
+ return /*#__PURE__*/React.createElement("div", null, "clientHeight:".concat(clientHeight), "clientWidth:".concat(clientWidth), "scrollHeight:".concat(scrollHeight), "scrollLeft:".concat(scrollLeft), "scrollTop:".concat(scrollTop), "scrollWidth:".concat(scrollWidth));
13
+ }
14
+ describe('ScrollSync', function () {
15
+ it('should pass through an initial value of 0 for :scrollLeft and :scrollTop', function () {
16
+ var component = render(/*#__PURE__*/React.createElement(ScrollSync, null, function (_ref2) {
17
+ var clientHeight = _ref2.clientHeight,
18
+ clientWidth = _ref2.clientWidth,
19
+ scrollHeight = _ref2.scrollHeight,
20
+ scrollLeft = _ref2.scrollLeft,
21
+ scrollTop = _ref2.scrollTop,
22
+ scrollWidth = _ref2.scrollWidth;
23
+ return /*#__PURE__*/React.createElement(ChildComponent, {
24
+ clientHeight: clientHeight,
25
+ clientWidth: clientWidth,
26
+ scrollHeight: scrollHeight,
27
+ scrollLeft: scrollLeft,
28
+ scrollTop: scrollTop,
29
+ scrollWidth: scrollWidth
30
+ });
31
+ }));
32
+ expect(findDOMNode(component).textContent).toContain('clientHeight:0');
33
+ expect(findDOMNode(component).textContent).toContain('clientWidth:0');
34
+ expect(findDOMNode(component).textContent).toContain('scrollHeight:0');
35
+ expect(findDOMNode(component).textContent).toContain('scrollLeft:0');
36
+ expect(findDOMNode(component).textContent).toContain('scrollTop:0');
37
+ expect(findDOMNode(component).textContent).toContain('scrollWidth:0');
38
+ });
39
+ it('should update :scrollLeft and :scrollTop when :onScroll is called', function () {
40
+ var onScroll;
41
+ var component = render(/*#__PURE__*/React.createElement(ScrollSync, null, function (params) {
42
+ onScroll = params.onScroll;
43
+ return /*#__PURE__*/React.createElement(ChildComponent, params);
44
+ }));
45
+ onScroll({
46
+ clientHeight: 400,
47
+ clientWidth: 200,
48
+ scrollHeight: 1000,
49
+ scrollLeft: 50,
50
+ scrollTop: 100,
51
+ scrollWidth: 500
52
+ });
53
+ expect(findDOMNode(component).textContent).toContain('clientHeight:400');
54
+ expect(findDOMNode(component).textContent).toContain('clientWidth:200');
55
+ expect(findDOMNode(component).textContent).toContain('scrollHeight:1000');
56
+ expect(findDOMNode(component).textContent).toContain('scrollLeft:50');
57
+ expect(findDOMNode(component).textContent).toContain('scrollTop:100');
58
+ expect(findDOMNode(component).textContent).toContain('scrollWidth:500');
59
+ });
60
+ });
@@ -0,0 +1,80 @@
1
+ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
+ import _createClass from "@babel/runtime/helpers/createClass";
3
+ import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
4
+ import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
5
+ import _inherits from "@babel/runtime/helpers/inherits";
6
+ function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
7
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
8
+ import PropTypes from 'prop-types';
9
+ import * as React from 'react';
10
+
11
+ /**
12
+ * HOC that simplifies the process of synchronizing scrolling between two or more virtualized components.
13
+ */
14
+ var ScrollSync = /*#__PURE__*/function (_React$PureComponent) {
15
+ function ScrollSync(props, context) {
16
+ var _this;
17
+ _classCallCheck(this, ScrollSync);
18
+ _this = _callSuper(this, ScrollSync, [props, context]);
19
+ _this.state = {
20
+ clientHeight: 0,
21
+ clientWidth: 0,
22
+ scrollHeight: 0,
23
+ scrollLeft: 0,
24
+ scrollTop: 0,
25
+ scrollWidth: 0
26
+ };
27
+ _this._onScroll = _this._onScroll.bind(_this);
28
+ return _this;
29
+ }
30
+ _inherits(ScrollSync, _React$PureComponent);
31
+ return _createClass(ScrollSync, [{
32
+ key: "render",
33
+ value: function render() {
34
+ var children = this.props.children;
35
+ var _this$state = this.state,
36
+ clientHeight = _this$state.clientHeight,
37
+ clientWidth = _this$state.clientWidth,
38
+ scrollHeight = _this$state.scrollHeight,
39
+ scrollLeft = _this$state.scrollLeft,
40
+ scrollTop = _this$state.scrollTop,
41
+ scrollWidth = _this$state.scrollWidth;
42
+ return children({
43
+ clientHeight: clientHeight,
44
+ clientWidth: clientWidth,
45
+ onScroll: this._onScroll,
46
+ scrollHeight: scrollHeight,
47
+ scrollLeft: scrollLeft,
48
+ scrollTop: scrollTop,
49
+ scrollWidth: scrollWidth
50
+ });
51
+ }
52
+ }, {
53
+ key: "_onScroll",
54
+ value: function _onScroll(_ref) {
55
+ var clientHeight = _ref.clientHeight,
56
+ clientWidth = _ref.clientWidth,
57
+ scrollHeight = _ref.scrollHeight,
58
+ scrollLeft = _ref.scrollLeft,
59
+ scrollTop = _ref.scrollTop,
60
+ scrollWidth = _ref.scrollWidth;
61
+ this.setState({
62
+ clientHeight: clientHeight,
63
+ clientWidth: clientWidth,
64
+ scrollHeight: scrollHeight,
65
+ scrollLeft: scrollLeft,
66
+ scrollTop: scrollTop,
67
+ scrollWidth: scrollWidth
68
+ });
69
+ }
70
+ }]);
71
+ }(React.PureComponent);
72
+ export { ScrollSync as default };
73
+ ScrollSync.propTypes = process.env.NODE_ENV !== "production" ? {
74
+ /**
75
+ * Function responsible for rendering 2 or more virtualized components.
76
+ * This function should implement the following signature:
77
+ * ({ onScroll, scrollLeft, scrollTop }) => PropTypes.element
78
+ */
79
+ children: PropTypes.func.isRequired
80
+ } : {};
@@ -0,0 +1,3 @@
1
+ import ScrollSync from './ScrollSync';
2
+ export default ScrollSync;
3
+ export { ScrollSync };
@@ -0,0 +1,84 @@
1
+ import * as React from 'react';
2
+ import Immutable from 'immutable';
3
+ import defaultCellDataGetter from './defaultCellDataGetter';
4
+ import defaultCellRenderer from './defaultCellRenderer';
5
+ import defaultHeaderRenderer from './defaultHeaderRenderer';
6
+ describe('Column', function () {
7
+ var rowData = Immutable.Map({
8
+ foo: 'Foo',
9
+ bar: 1
10
+ });
11
+ describe('defaultCellDataGetter', function () {
12
+ it('should return a value for specified attributes', function () {
13
+ expect(defaultCellDataGetter({
14
+ dataKey: 'foo',
15
+ rowData: rowData
16
+ })).toEqual('Foo');
17
+ expect(defaultCellDataGetter({
18
+ dataKey: 'bar',
19
+ rowData: rowData
20
+ })).toEqual(1);
21
+ });
22
+ it('should return undefined for missing attributes', function () {
23
+ expect(defaultCellDataGetter({
24
+ dataKey: 'baz',
25
+ rowData: rowData
26
+ })).toEqual(undefined);
27
+ });
28
+ });
29
+ describe('defaultCellRenderer', function () {
30
+ it('should render a value for specified attributes', function () {
31
+ expect(defaultCellRenderer({
32
+ cellData: 'Foo',
33
+ dataKey: 'foo',
34
+ rowData: rowData,
35
+ rowIndex: 0
36
+ })).toEqual('Foo');
37
+ expect(defaultCellRenderer({
38
+ cellData: 1,
39
+ dataKey: 'bar',
40
+ rowData: rowData,
41
+ rowIndex: 0
42
+ })).toEqual('1');
43
+ });
44
+ it('should render empty string for null or missing attributes', function () {
45
+ expect(defaultCellRenderer({
46
+ cellData: null,
47
+ dataKey: 'baz',
48
+ rowData: rowData,
49
+ rowIndex: 0
50
+ })).toEqual('');
51
+ expect(defaultCellRenderer({
52
+ cellData: undefined,
53
+ dataKey: 'baz',
54
+ rowData: rowData,
55
+ rowIndex: 0
56
+ })).toEqual('');
57
+ });
58
+ });
59
+ describe('defaultHeaderRenderer', function () {
60
+ it('should render a value for specified attributes', function () {
61
+ expect(defaultHeaderRenderer({
62
+ dataKey: 'foo',
63
+ label: 'squirrel'
64
+ })[0].props.children).toEqual('squirrel');
65
+ var label = /*#__PURE__*/React.createElement("div", {
66
+ className: "rabbit"
67
+ }, "Rabbit");
68
+ expect(defaultHeaderRenderer({
69
+ dataKey: 'bar',
70
+ label: label
71
+ })[0].props.children).toEqual(label);
72
+ });
73
+ it('should render empty string for null or missing attributes', function () {
74
+ expect(defaultHeaderRenderer({
75
+ dataKey: 'foo',
76
+ label: null
77
+ })[0].props.children).toBeNull();
78
+ expect(defaultHeaderRenderer({
79
+ dataKey: 'bar',
80
+ label: undefined
81
+ })[0].props.children).toBeUndefined();
82
+ });
83
+ });
84
+ });
@@ -0,0 +1,85 @@
1
+ import _createClass from "@babel/runtime/helpers/createClass";
2
+ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
+ import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
4
+ import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
5
+ import _inherits from "@babel/runtime/helpers/inherits";
6
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
7
+ function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
8
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
9
+ import PropTypes from 'prop-types';
10
+ import * as React from 'react';
11
+ import defaultHeaderRenderer from './defaultHeaderRenderer';
12
+ import defaultCellRenderer from './defaultCellRenderer';
13
+ import defaultCellDataGetter from './defaultCellDataGetter';
14
+ import SortDirection from './SortDirection';
15
+
16
+ /**
17
+ * Describes the header and cell contents of a table column.
18
+ */
19
+ var Column = /*#__PURE__*/function (_React$Component) {
20
+ function Column() {
21
+ _classCallCheck(this, Column);
22
+ return _callSuper(this, Column, arguments);
23
+ }
24
+ _inherits(Column, _React$Component);
25
+ return _createClass(Column);
26
+ }(React.Component);
27
+ _defineProperty(Column, "defaultProps", {
28
+ cellDataGetter: defaultCellDataGetter,
29
+ cellRenderer: defaultCellRenderer,
30
+ defaultSortDirection: SortDirection.ASC,
31
+ flexGrow: 0,
32
+ flexShrink: 1,
33
+ headerRenderer: defaultHeaderRenderer,
34
+ style: {}
35
+ });
36
+ export { Column as default };
37
+ Column.propTypes = process.env.NODE_ENV !== "production" ? {
38
+ /** Optional aria-label value to set on the column header */
39
+ 'aria-label': PropTypes.string,
40
+ /**
41
+ * Callback responsible for returning a cell's data, given its :dataKey
42
+ * ({ columnData: any, dataKey: string, rowData: any }): any
43
+ */
44
+ cellDataGetter: PropTypes.func,
45
+ /**
46
+ * Callback responsible for rendering a cell's contents.
47
+ * ({ cellData: any, columnData: any, dataKey: string, rowData: any, rowIndex: number }): node
48
+ */
49
+ cellRenderer: PropTypes.func,
50
+ /** Optional CSS class to apply to cell */
51
+ className: PropTypes.string,
52
+ /** Optional additional data passed to this column's :cellDataGetter */
53
+ columnData: PropTypes.object,
54
+ /** Uniquely identifies the row-data attribute corresponding to this cell */
55
+ dataKey: PropTypes.any.isRequired,
56
+ /** Optional direction to be used when clicked the first time */
57
+ defaultSortDirection: PropTypes.oneOf([SortDirection.ASC, SortDirection.DESC]),
58
+ /** If sort is enabled for the table at large, disable it for this column */
59
+ disableSort: PropTypes.bool,
60
+ /** Flex grow style; defaults to 0 */
61
+ flexGrow: PropTypes.number,
62
+ /** Flex shrink style; defaults to 1 */
63
+ flexShrink: PropTypes.number,
64
+ /** Optional CSS class to apply to this column's header */
65
+ headerClassName: PropTypes.string,
66
+ /**
67
+ * Optional callback responsible for rendering a column header contents.
68
+ * ({ columnData: object, dataKey: string, disableSort: boolean, label: node, sortBy: string, sortDirection: string }): PropTypes.node
69
+ */
70
+ headerRenderer: PropTypes.func.isRequired,
71
+ /** Optional inline style to apply to this column's header */
72
+ headerStyle: PropTypes.object,
73
+ /** Optional id to set on the column header */
74
+ id: PropTypes.string,
75
+ /** Header label for this column */
76
+ label: PropTypes.node,
77
+ /** Maximum width of column; this property will only be used if :flexGrow is > 0. */
78
+ maxWidth: PropTypes.number,
79
+ /** Minimum width of column. */
80
+ minWidth: PropTypes.number,
81
+ /** Optional inline style to apply to cell */
82
+ style: PropTypes.object,
83
+ /** Flex basis (width) for this column; This value can grow or shrink based on :flexGrow and :flexShrink properties. */
84
+ width: PropTypes.number.isRequired
85
+ } : {};
@@ -0,0 +1,13 @@
1
+ var SortDirection = {
2
+ /**
3
+ * Sort items in ascending order.
4
+ * This means arranging from the lowest value to the highest (e.g. a-z, 0-9).
5
+ */
6
+ ASC: 'ASC',
7
+ /**
8
+ * Sort items in descending order.
9
+ * This means arranging from the highest value to the lowest (e.g. z-a, 9-0).
10
+ */
11
+ DESC: 'DESC'
12
+ };
13
+ export default SortDirection;
@@ -0,0 +1,31 @@
1
+ import clsx from 'clsx';
2
+ import PropTypes from 'prop-types';
3
+ import * as React from 'react';
4
+ import SortDirection from './SortDirection';
5
+
6
+ /**
7
+ * Displayed beside a header to indicate that a Table is currently sorted by this column.
8
+ */
9
+ export default function SortIndicator(_ref) {
10
+ var sortDirection = _ref.sortDirection;
11
+ var classNames = clsx('ReactVirtualized__Table__sortableHeaderIcon', {
12
+ 'ReactVirtualized__Table__sortableHeaderIcon--ASC': sortDirection === SortDirection.ASC,
13
+ 'ReactVirtualized__Table__sortableHeaderIcon--DESC': sortDirection === SortDirection.DESC
14
+ });
15
+ return /*#__PURE__*/React.createElement("svg", {
16
+ className: classNames,
17
+ width: 18,
18
+ height: 18,
19
+ viewBox: "0 0 24 24"
20
+ }, sortDirection === SortDirection.ASC ? /*#__PURE__*/React.createElement("path", {
21
+ d: "M7 14l5-5 5 5z"
22
+ }) : /*#__PURE__*/React.createElement("path", {
23
+ d: "M7 10l5 5 5-5z"
24
+ }), /*#__PURE__*/React.createElement("path", {
25
+ d: "M0 0h24v24H0z",
26
+ fill: "none"
27
+ }));
28
+ }
29
+ SortIndicator.propTypes = process.env.NODE_ENV !== "production" ? {
30
+ sortDirection: PropTypes.oneOf([SortDirection.ASC, SortDirection.DESC])
31
+ } : {};