@ekz/blueprintjs 0.1.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 (184) hide show
  1. package/LICENSE +21 -0
  2. package/lib/cjs/common/classes.d.ts +28 -0
  3. package/lib/cjs/common/classes.js +34 -0
  4. package/lib/cjs/common/classes.js.map +1 -0
  5. package/lib/cjs/common/index.d.ts +3 -0
  6. package/lib/cjs/common/index.js +9 -0
  7. package/lib/cjs/common/index.js.map +1 -0
  8. package/lib/cjs/components/pagination/index.d.ts +1 -0
  9. package/lib/cjs/components/pagination/index.js +5 -0
  10. package/lib/cjs/components/pagination/index.js.map +1 -0
  11. package/lib/cjs/components/pagination/pagination.d.ts +46 -0
  12. package/lib/cjs/components/pagination/pagination.js +57 -0
  13. package/lib/cjs/components/pagination/pagination.js.map +1 -0
  14. package/lib/cjs/components/table/columnFilter.d.ts +7 -0
  15. package/lib/cjs/components/table/columnFilter.js +22 -0
  16. package/lib/cjs/components/table/columnFilter.js.map +1 -0
  17. package/lib/cjs/components/table/columnHelpers.d.ts +340 -0
  18. package/lib/cjs/components/table/columnHelpers.js +42 -0
  19. package/lib/cjs/components/table/columnHelpers.js.map +1 -0
  20. package/lib/cjs/components/table/headerGroup.d.ts +8 -0
  21. package/lib/cjs/components/table/headerGroup.js +49 -0
  22. package/lib/cjs/components/table/headerGroup.js.map +1 -0
  23. package/lib/cjs/components/table/index.d.ts +9 -0
  24. package/lib/cjs/components/table/index.js +20 -0
  25. package/lib/cjs/components/table/index.js.map +1 -0
  26. package/lib/cjs/components/table/reactTableBase.d.ts +2 -0
  27. package/lib/cjs/components/table/reactTableBase.js +8 -0
  28. package/lib/cjs/components/table/reactTableBase.js.map +1 -0
  29. package/lib/cjs/components/table/table.d.ts +123 -0
  30. package/lib/cjs/components/table/table.js +243 -0
  31. package/lib/cjs/components/table/table.js.map +1 -0
  32. package/lib/cjs/components/table/tableMessages.d.ts +6 -0
  33. package/lib/cjs/components/table/tableMessages.js +11 -0
  34. package/lib/cjs/components/table/tableMessages.js.map +1 -0
  35. package/lib/cjs/components/table/theme.d.ts +4 -0
  36. package/lib/cjs/components/table/theme.js +9 -0
  37. package/lib/cjs/components/table/theme.js.map +1 -0
  38. package/lib/cjs/components/table/useAutoColumnSizer.d.ts +7 -0
  39. package/lib/cjs/components/table/useAutoColumnSizer.js +52 -0
  40. package/lib/cjs/components/table/useAutoColumnSizer.js.map +1 -0
  41. package/lib/cjs/components/table/useAutoHeight.d.ts +4 -0
  42. package/lib/cjs/components/table/useAutoHeight.js +70 -0
  43. package/lib/cjs/components/table/useAutoHeight.js.map +1 -0
  44. package/lib/cjs/components/table/useGroupedHeaderColumnSizer.d.ts +2 -0
  45. package/lib/cjs/components/table/useGroupedHeaderColumnSizer.js +57 -0
  46. package/lib/cjs/components/table/useGroupedHeaderColumnSizer.js.map +1 -0
  47. package/lib/cjs/components/table/useTable.d.ts +122 -0
  48. package/lib/cjs/components/table/useTable.js +31 -0
  49. package/lib/cjs/components/table/useTable.js.map +1 -0
  50. package/lib/cjs/components/table/useTableExport.d.ts +6 -0
  51. package/lib/cjs/components/table/useTableExport.js +41 -0
  52. package/lib/cjs/components/table/useTableExport.js.map +1 -0
  53. package/lib/cjs/components/table/useTableState.d.ts +3 -0
  54. package/lib/cjs/components/table/useTableState.js +14 -0
  55. package/lib/cjs/components/table/useTableState.js.map +1 -0
  56. package/lib/cjs/components/table/utils.d.ts +1 -0
  57. package/lib/cjs/components/table/utils.js +8 -0
  58. package/lib/cjs/components/table/utils.js.map +1 -0
  59. package/lib/cjs/index.d.ts +3 -0
  60. package/lib/cjs/index.js +7 -0
  61. package/lib/cjs/index.js.map +1 -0
  62. package/lib/css/blueprintjs.css +345 -0
  63. package/lib/css/blueprintjs.css.map +1 -0
  64. package/lib/esm/common/classes.d.ts +28 -0
  65. package/lib/esm/common/classes.js +31 -0
  66. package/lib/esm/common/classes.js.map +1 -0
  67. package/lib/esm/common/index.d.ts +3 -0
  68. package/lib/esm/common/index.js +4 -0
  69. package/lib/esm/common/index.js.map +1 -0
  70. package/lib/esm/components/pagination/index.d.ts +1 -0
  71. package/lib/esm/components/pagination/index.js +2 -0
  72. package/lib/esm/components/pagination/index.js.map +1 -0
  73. package/lib/esm/components/pagination/pagination.d.ts +46 -0
  74. package/lib/esm/components/pagination/pagination.js +53 -0
  75. package/lib/esm/components/pagination/pagination.js.map +1 -0
  76. package/lib/esm/components/table/columnFilter.d.ts +7 -0
  77. package/lib/esm/components/table/columnFilter.js +17 -0
  78. package/lib/esm/components/table/columnFilter.js.map +1 -0
  79. package/lib/esm/components/table/columnHelpers.d.ts +340 -0
  80. package/lib/esm/components/table/columnHelpers.js +37 -0
  81. package/lib/esm/components/table/columnHelpers.js.map +1 -0
  82. package/lib/esm/components/table/headerGroup.d.ts +8 -0
  83. package/lib/esm/components/table/headerGroup.js +44 -0
  84. package/lib/esm/components/table/headerGroup.js.map +1 -0
  85. package/lib/esm/components/table/index.d.ts +9 -0
  86. package/lib/esm/components/table/index.js +10 -0
  87. package/lib/esm/components/table/index.js.map +1 -0
  88. package/lib/esm/components/table/reactTableBase.d.ts +2 -0
  89. package/lib/esm/components/table/reactTableBase.js +3 -0
  90. package/lib/esm/components/table/reactTableBase.js.map +1 -0
  91. package/lib/esm/components/table/table.d.ts +123 -0
  92. package/lib/esm/components/table/table.js +239 -0
  93. package/lib/esm/components/table/table.js.map +1 -0
  94. package/lib/esm/components/table/tableMessages.d.ts +6 -0
  95. package/lib/esm/components/table/tableMessages.js +6 -0
  96. package/lib/esm/components/table/tableMessages.js.map +1 -0
  97. package/lib/esm/components/table/theme.d.ts +4 -0
  98. package/lib/esm/components/table/theme.js +6 -0
  99. package/lib/esm/components/table/theme.js.map +1 -0
  100. package/lib/esm/components/table/useAutoColumnSizer.d.ts +7 -0
  101. package/lib/esm/components/table/useAutoColumnSizer.js +47 -0
  102. package/lib/esm/components/table/useAutoColumnSizer.js.map +1 -0
  103. package/lib/esm/components/table/useAutoHeight.d.ts +4 -0
  104. package/lib/esm/components/table/useAutoHeight.js +66 -0
  105. package/lib/esm/components/table/useAutoHeight.js.map +1 -0
  106. package/lib/esm/components/table/useGroupedHeaderColumnSizer.d.ts +2 -0
  107. package/lib/esm/components/table/useGroupedHeaderColumnSizer.js +53 -0
  108. package/lib/esm/components/table/useGroupedHeaderColumnSizer.js.map +1 -0
  109. package/lib/esm/components/table/useTable.d.ts +122 -0
  110. package/lib/esm/components/table/useTable.js +28 -0
  111. package/lib/esm/components/table/useTable.js.map +1 -0
  112. package/lib/esm/components/table/useTableExport.d.ts +6 -0
  113. package/lib/esm/components/table/useTableExport.js +37 -0
  114. package/lib/esm/components/table/useTableExport.js.map +1 -0
  115. package/lib/esm/components/table/useTableState.d.ts +3 -0
  116. package/lib/esm/components/table/useTableState.js +11 -0
  117. package/lib/esm/components/table/useTableState.js.map +1 -0
  118. package/lib/esm/components/table/utils.d.ts +1 -0
  119. package/lib/esm/components/table/utils.js +5 -0
  120. package/lib/esm/components/table/utils.js.map +1 -0
  121. package/lib/esm/index.d.ts +3 -0
  122. package/lib/esm/index.js +4 -0
  123. package/lib/esm/index.js.map +1 -0
  124. package/lib/esnext/common/classes.d.ts +28 -0
  125. package/lib/esnext/common/classes.js +31 -0
  126. package/lib/esnext/common/classes.js.map +1 -0
  127. package/lib/esnext/common/index.d.ts +3 -0
  128. package/lib/esnext/common/index.js +4 -0
  129. package/lib/esnext/common/index.js.map +1 -0
  130. package/lib/esnext/components/pagination/index.d.ts +1 -0
  131. package/lib/esnext/components/pagination/index.js +2 -0
  132. package/lib/esnext/components/pagination/index.js.map +1 -0
  133. package/lib/esnext/components/pagination/pagination.d.ts +46 -0
  134. package/lib/esnext/components/pagination/pagination.js +53 -0
  135. package/lib/esnext/components/pagination/pagination.js.map +1 -0
  136. package/lib/esnext/components/table/columnFilter.d.ts +7 -0
  137. package/lib/esnext/components/table/columnFilter.js +17 -0
  138. package/lib/esnext/components/table/columnFilter.js.map +1 -0
  139. package/lib/esnext/components/table/columnHelpers.d.ts +340 -0
  140. package/lib/esnext/components/table/columnHelpers.js +37 -0
  141. package/lib/esnext/components/table/columnHelpers.js.map +1 -0
  142. package/lib/esnext/components/table/headerGroup.d.ts +8 -0
  143. package/lib/esnext/components/table/headerGroup.js +44 -0
  144. package/lib/esnext/components/table/headerGroup.js.map +1 -0
  145. package/lib/esnext/components/table/index.d.ts +9 -0
  146. package/lib/esnext/components/table/index.js +10 -0
  147. package/lib/esnext/components/table/index.js.map +1 -0
  148. package/lib/esnext/components/table/reactTableBase.d.ts +2 -0
  149. package/lib/esnext/components/table/reactTableBase.js +3 -0
  150. package/lib/esnext/components/table/reactTableBase.js.map +1 -0
  151. package/lib/esnext/components/table/table.d.ts +123 -0
  152. package/lib/esnext/components/table/table.js +239 -0
  153. package/lib/esnext/components/table/table.js.map +1 -0
  154. package/lib/esnext/components/table/tableMessages.d.ts +6 -0
  155. package/lib/esnext/components/table/tableMessages.js +6 -0
  156. package/lib/esnext/components/table/tableMessages.js.map +1 -0
  157. package/lib/esnext/components/table/theme.d.ts +4 -0
  158. package/lib/esnext/components/table/theme.js +6 -0
  159. package/lib/esnext/components/table/theme.js.map +1 -0
  160. package/lib/esnext/components/table/useAutoColumnSizer.d.ts +7 -0
  161. package/lib/esnext/components/table/useAutoColumnSizer.js +47 -0
  162. package/lib/esnext/components/table/useAutoColumnSizer.js.map +1 -0
  163. package/lib/esnext/components/table/useAutoHeight.d.ts +4 -0
  164. package/lib/esnext/components/table/useAutoHeight.js +66 -0
  165. package/lib/esnext/components/table/useAutoHeight.js.map +1 -0
  166. package/lib/esnext/components/table/useGroupedHeaderColumnSizer.d.ts +2 -0
  167. package/lib/esnext/components/table/useGroupedHeaderColumnSizer.js +53 -0
  168. package/lib/esnext/components/table/useGroupedHeaderColumnSizer.js.map +1 -0
  169. package/lib/esnext/components/table/useTable.d.ts +122 -0
  170. package/lib/esnext/components/table/useTable.js +28 -0
  171. package/lib/esnext/components/table/useTable.js.map +1 -0
  172. package/lib/esnext/components/table/useTableExport.d.ts +6 -0
  173. package/lib/esnext/components/table/useTableExport.js +37 -0
  174. package/lib/esnext/components/table/useTableExport.js.map +1 -0
  175. package/lib/esnext/components/table/useTableState.d.ts +3 -0
  176. package/lib/esnext/components/table/useTableState.js +11 -0
  177. package/lib/esnext/components/table/useTableState.js.map +1 -0
  178. package/lib/esnext/components/table/utils.d.ts +1 -0
  179. package/lib/esnext/components/table/utils.js +5 -0
  180. package/lib/esnext/components/table/utils.js.map +1 -0
  181. package/lib/esnext/index.d.ts +3 -0
  182. package/lib/esnext/index.js +4 -0
  183. package/lib/esnext/index.js.map +1 -0
  184. package/package.json +61 -0
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SELECTION_ID = void 0;
4
+ exports.createColumnHelper = createColumnHelper;
5
+ const tslib_1 = require("tslib");
6
+ const core_1 = require("@blueprintjs/core");
7
+ const icons_1 = require("@blueprintjs/icons");
8
+ const react_1 = tslib_1.__importDefault(require("react"));
9
+ const common_1 = require("../../common");
10
+ const reactTableBase_1 = require("./reactTableBase");
11
+ exports.SELECTION_ID = '_selection';
12
+ function createColumnHelper() {
13
+ const base = (0, reactTableBase_1.createColumnHelper)();
14
+ return {
15
+ ...base,
16
+ expansion(accessor, column) {
17
+ return base.accessor(accessor, {
18
+ ...column,
19
+ cell: (props) => (react_1.default.createElement("span", { className: common_1.Classes.REACT_TABLE_ROW_EXPANDER_WRAPPER, style: { paddingLeft: props.row.depth * 25 } },
20
+ props.row.getCanExpand() ? (react_1.default.createElement("span", { className: common_1.Classes.REACT_TABLE_ROW_EXPANDER, onClick: props.row.getToggleExpandedHandler(), "data-skip-row-click": true }, props.row.getIsExpanded() ? (react_1.default.createElement(icons_1.CaretDown, { size: 18, color: core_1.Colors.BLUE1 })) : (react_1.default.createElement(icons_1.CaretRight, { size: 18, color: core_1.Colors.BLUE1 })))) : column.alwaysIncludeDepthPadding ? (react_1.default.createElement("span", { style: { paddingLeft: 25 } })) : null,
21
+ react_1.default.createElement("span", null, typeof column.cell === 'string'
22
+ ? column.cell
23
+ : typeof column.cell === 'function'
24
+ ? column.cell(props)
25
+ : props.renderValue())))
26
+ }); // eslint-disable-line @typescript-eslint/no-explicit-any
27
+ },
28
+ selection(column) {
29
+ return {
30
+ ...column,
31
+ cell: ({ row }) => (react_1.default.createElement(core_1.Checkbox, { className: common_1.Classes.REACT_TABLE_SELECTION, checked: row.getIsSelected(), disabled: !row.getCanSelect(), indeterminate: row.getIsSomeSelected(), onChange: row.getToggleSelectedHandler() })),
32
+ enableResizing: false,
33
+ enableSorting: false,
34
+ header: ({ table }) => (react_1.default.createElement(core_1.Checkbox, { className: common_1.Classes.REACT_TABLE_SELECTION, checked: table.getIsAllRowsSelected(), disabled: table.options.enableRowSelection === false, indeterminate: table.getIsSomeRowsSelected(), onChange: table.getToggleAllRowsSelectedHandler() })),
35
+ id: exports.SELECTION_ID,
36
+ size: 20,
37
+ skipRowClick: true
38
+ };
39
+ }
40
+ };
41
+ }
42
+ //# sourceMappingURL=columnHelpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"columnHelpers.js","sourceRoot":"","sources":["../../../../src/main/web/components/table/columnHelpers.tsx"],"names":[],"mappings":";;;AAqbA,gDAiEC;;AAtfD,4CAAqD;AACrD,8CAA2D;AAC3D,0DAA0B;AAE1B,yCAAuC;AACvC,qDAiB0B;AAwOb,QAAA,YAAY,GAAG,YAAY,CAAC;AAuLzC,SAAgB,kBAAkB;IAC9B,MAAM,IAAI,GAAG,IAAA,mCAAsB,GAAS,CAAC;IAC7C,OAAO;QACH,GAAG,IAAI;QACP,SAAS,CAAC,QAAQ,EAAE,MAAM;YACtB,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;gBAC3B,GAAG,MAAM;gBACT,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CACb,wCACI,SAAS,EAAE,gBAAO,CAAC,gCAAgC,EACnD,KAAK,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,EAAE;oBAC3C,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CACxB,wCACI,SAAS,EAAE,gBAAO,CAAC,wBAAwB,EAC3C,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,wBAAwB,EAAE,yBACxB,IAAI,IACxB,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CACzB,8BAAC,iBAAS,IAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,aAAM,CAAC,KAAK,GAAI,CAC/C,CAAC,CAAC,CAAC,CACA,8BAAC,kBAAU,IAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,aAAM,CAAC,KAAK,GAAI,CAChD,CACE,CACV,CAAC,CAAC,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC,CAAC,CACnC,wCAAM,KAAK,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,GAAI,CACvC,CAAC,CAAC,CAAC,IAAI;oBACR,4CACK,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ;wBAC5B,CAAC,CAAC,MAAM,CAAC,IAAI;wBACb,CAAC,CAAC,OAAO,MAAM,CAAC,IAAI,KAAK,UAAU;4BACjC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;4BACpB,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CACxB,CACJ,CACV;aAC4B,CAAC,CAAC,CAAC,yDAAyD;QACjG,CAAC;QACD,SAAS,CAAC,MAAM;YACZ,OAAO;gBACH,GAAG,MAAM;gBACT,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACf,8BAAC,eAAQ,IACL,SAAS,EAAE,gBAAO,CAAC,qBAAqB,EACxC,OAAO,EAAE,GAAG,CAAC,aAAa,EAAE,EAC5B,QAAQ,EAAE,CAAC,GAAG,CAAC,YAAY,EAAE,EAC7B,aAAa,EAAE,GAAG,CAAC,iBAAiB,EAAE,EACtC,QAAQ,EAAE,GAAG,CAAC,wBAAwB,EAAE,GAC1C,CACL;gBACD,cAAc,EAAE,KAAK;gBACrB,aAAa,EAAE,KAAK;gBACpB,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CACnB,8BAAC,eAAQ,IACL,SAAS,EAAE,gBAAO,CAAC,qBAAqB,EACxC,OAAO,EAAE,KAAK,CAAC,oBAAoB,EAAE,EACrC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,kBAAkB,KAAK,KAAK,EACpD,aAAa,EAAE,KAAK,CAAC,qBAAqB,EAAE,EAC5C,QAAQ,EAAE,KAAK,CAAC,+BAA+B,EAAE,GACnD,CACL;gBACD,EAAE,EAAE,oBAAY;gBAChB,IAAI,EAAE,EAAE;gBACR,YAAY,EAAE,IAAI;aACrB,CAAC;QACN,CAAC;KACJ,CAAC;AACN,CAAC"}
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { type HeaderGroup, type Table } from './reactTableBase';
3
+ interface HeaderGroupProps<TData = unknown> {
4
+ table: Table<TData>;
5
+ headerGroup: HeaderGroup<TData>;
6
+ }
7
+ export declare const HeaderGroupWrapper: React.FC<HeaderGroupProps>;
8
+ export {};
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HeaderGroupWrapper = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const icons_1 = require("@blueprintjs/icons");
6
+ const react_1 = tslib_1.__importDefault(require("react"));
7
+ const common_1 = require("../../common");
8
+ const columnFilter_1 = require("./columnFilter");
9
+ const reactTableBase_1 = require("./reactTableBase");
10
+ const LEAF_MIN_TOTAL_WIDTH_PX = 41; // expected total leaf width incl. padding + border
11
+ const COLUMN_BORDER_PX = 1;
12
+ const stopPropagation = (e) => e.stopPropagation();
13
+ const getHeaderMinWidth = (header) => {
14
+ if (header.isPlaceholder)
15
+ return 0;
16
+ if (header.subHeaders != null && header.subHeaders.length > 0) {
17
+ const childrenMin = header.subHeaders.reduce((sum, subHeader) => sum + getHeaderMinWidth(subHeader), 0);
18
+ return childrenMin + COLUMN_BORDER_PX;
19
+ }
20
+ return header.column.columnDef.minSize ?? LEAF_MIN_TOTAL_WIDTH_PX;
21
+ };
22
+ const HeaderGroupWrapper = function HeaderGroup(props) {
23
+ return (react_1.default.createElement("div", { className: common_1.Classes.REACT_TABLE_ROW }, props.headerGroup.headers.map((header) => header.isPlaceholder ? (react_1.default.createElement("div", { key: header.id, className: common_1.Classes.REACT_TABLE_HEAD_CELL, style: { width: `calc(var(--header-${header?.id}-size) * 1px)` } })) : (react_1.default.createElement("div", { key: header.id, className: common_1.Classes.REACT_TABLE_HEAD_CELL, "data-sortable": header.column.getCanSort(), "data-has-filter": header.column.getCanFilter(), style: {
24
+ display: 'grid',
25
+ gridTemplateRows: header.column.getCanFilter() ? 'auto auto' : 'auto',
26
+ justifyContent: header.subHeaders && header.subHeaders.length > 0
27
+ ? 'center'
28
+ : undefined,
29
+ minWidth: `${getHeaderMinWidth(header)}px`,
30
+ rowGap: 4,
31
+ textAlign: header.subHeaders && header.subHeaders.length > 0
32
+ ? 'center'
33
+ : 'left',
34
+ width: `calc(var(--header-${header?.id}-size) * 1px)`
35
+ }, onClick: header.column.getToggleSortingHandler() },
36
+ react_1.default.createElement("div", { className: common_1.Classes.REACT_TABLE_HEAD_CELL_CONTENT, style: { display: 'flex', gap: 4 } },
37
+ react_1.default.createElement("span", { className: common_1.Classes.REACT_TABLE_HEAD_CELL_CONTENT_LABEL, "data-ellipsize": "false" }, (0, reactTableBase_1.flexRender)(header.column.columnDef.header, header.getContext())),
38
+ header.column.getCanSort() && (react_1.default.createElement("span", { className: common_1.Classes.REACT_TABLE_SORTING }, {
39
+ asc: react_1.default.createElement(icons_1.SortAsc, { size: 16 }),
40
+ desc: react_1.default.createElement(icons_1.SortDesc, { size: 16 })
41
+ }[header.column.getIsSorted()] ?? null))),
42
+ header.column.getCanResize() && (react_1.default.createElement("div", { onDoubleClick: () => header.column.resetSize(), onClick: stopPropagation, onMouseDown: header.getResizeHandler(), onTouchStart: header.getResizeHandler(), className: common_1.Classes.REACT_TABLE_RESIZER, "data-resizing": header.column.getIsResizing() })),
43
+ header.column.getCanFilter() && (react_1.default.createElement("div", { className: common_1.Classes.REACT_TABLE_HEAD_FILTER, "data-can-resize": header.column.getCanResize(), onClick: stopPropagation, style: {
44
+ width: `calc(var(--header-${header.id}-size) * 1px - 20px)`
45
+ } },
46
+ react_1.default.createElement(columnFilter_1.ColumnFilter, { table: props.table, column: header.column }))))))));
47
+ };
48
+ exports.HeaderGroupWrapper = HeaderGroupWrapper;
49
+ //# sourceMappingURL=headerGroup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headerGroup.js","sourceRoot":"","sources":["../../../../src/main/web/components/table/headerGroup.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export * from './reactTableBase';
2
+ export { type Table as TableAPI } from './reactTableBase';
3
+ export { TableTheme } from './theme';
4
+ export { Table, type TableProps, type TypedTable } from './table';
5
+ export { createColumnHelper, type ColumnHelper, type SelectionColumnDef, type IdIdentifier, type IdentifiedColumnDef, type DisplayColumnDef, type GroupColumnDef, type GroupColumnDefBase, type ColumnDefTemplate, type CellContext, type HeaderContext, type ColumnFilterProps, type ColumnUtilityProps } from './columnHelpers';
6
+ export { useTable, type UseTableOptions } from './useTable';
7
+ export { useTableExport, type TableExport } from './useTableExport';
8
+ export * from './useTableState';
9
+ export { TableMessagesContext, useTableMessages, type TableMessages } from './tableMessages';
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useTableMessages = exports.TableMessagesContext = exports.useTableExport = exports.useTable = exports.createColumnHelper = exports.Table = exports.TableTheme = void 0;
4
+ const tslib_1 = require("tslib");
5
+ tslib_1.__exportStar(require("./reactTableBase"), exports);
6
+ var theme_1 = require("./theme");
7
+ Object.defineProperty(exports, "TableTheme", { enumerable: true, get: function () { return theme_1.TableTheme; } });
8
+ var table_1 = require("./table");
9
+ Object.defineProperty(exports, "Table", { enumerable: true, get: function () { return table_1.Table; } });
10
+ var columnHelpers_1 = require("./columnHelpers");
11
+ Object.defineProperty(exports, "createColumnHelper", { enumerable: true, get: function () { return columnHelpers_1.createColumnHelper; } });
12
+ var useTable_1 = require("./useTable");
13
+ Object.defineProperty(exports, "useTable", { enumerable: true, get: function () { return useTable_1.useTable; } });
14
+ var useTableExport_1 = require("./useTableExport");
15
+ Object.defineProperty(exports, "useTableExport", { enumerable: true, get: function () { return useTableExport_1.useTableExport; } });
16
+ tslib_1.__exportStar(require("./useTableState"), exports);
17
+ var tableMessages_1 = require("./tableMessages");
18
+ Object.defineProperty(exports, "TableMessagesContext", { enumerable: true, get: function () { return tableMessages_1.TableMessagesContext; } });
19
+ Object.defineProperty(exports, "useTableMessages", { enumerable: true, get: function () { return tableMessages_1.useTableMessages; } });
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/main/web/components/table/index.ts"],"names":[],"mappings":";;;;AAAA,2DAAiC;AAEjC,iCAAqC;AAA5B,mGAAA,UAAU,OAAA;AACnB,iCAAkE;AAAzD,8FAAA,KAAK,OAAA;AACd,iDAcyB;AAbrB,mHAAA,kBAAkB,OAAA;AActB,uCAA4D;AAAnD,oGAAA,QAAQ,OAAA;AACjB,mDAAoE;AAA3D,gHAAA,cAAc,OAAA;AACvB,0DAAgC;AAChC,iDAA6F;AAApF,qHAAA,oBAAoB,OAAA;AAAE,iHAAA,gBAAgB,OAAA"}
@@ -0,0 +1,2 @@
1
+ export * from '@tanstack/table-core';
2
+ export { flexRender, type Header } from '@tanstack/react-table';
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.flexRender = void 0;
4
+ const tslib_1 = require("tslib");
5
+ tslib_1.__exportStar(require("@tanstack/table-core"), exports);
6
+ var react_table_1 = require("@tanstack/react-table");
7
+ Object.defineProperty(exports, "flexRender", { enumerable: true, get: function () { return react_table_1.flexRender; } });
8
+ //# sourceMappingURL=reactTableBase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reactTableBase.js","sourceRoot":"","sources":["../../../../src/main/web/components/table/reactTableBase.ts"],"names":[],"mappings":";;;;AAAA,+DAAqC;AACrC,qDAAgE;AAAvD,yGAAA,UAAU,OAAA"}
@@ -0,0 +1,123 @@
1
+ import { type Elevation, type MaybeElement, type Props } from '@blueprintjs/core';
2
+ import { type IconName } from '@blueprintjs/icons';
3
+ import * as React from 'react';
4
+ import { type Table as TableAPI } from './reactTableBase';
5
+ import { TableTheme } from './theme';
6
+ export interface TypedTable extends React.FC<TableProps> {
7
+ ofType<T>(): React.FC<TableProps<T>>;
8
+ }
9
+ export interface TableProps<T = unknown> extends Props {
10
+ /**
11
+ * The table instance created using `useTable`. See the type `UseTableOptions`, as `data` and `columns` are provided to the hook.
12
+ */
13
+ table: TableAPI<T>;
14
+ /**
15
+ * Set to adjust the table theme.
16
+ *
17
+ * @default TableTheme.Standard
18
+ */
19
+ theme?: TableTheme;
20
+ /**
21
+ * Controls the intensity of the drop shadow beneath the table: the higher
22
+ * the elevation, the higher the drop shadow. Only valid for `TableTheme.Standard`.
23
+ * Set to `-1` to disable border and drop shadow.
24
+ *
25
+ * @default 2
26
+ */
27
+ elevation?: Elevation | -1;
28
+ /**
29
+ * Set to `false` to hide the table header.
30
+ *
31
+ * @default true
32
+ */
33
+ displayHeader?: boolean;
34
+ /**
35
+ * Set to `false` to hide the table pagination.
36
+ *
37
+ * @default true
38
+ */
39
+ displayPagination?: boolean;
40
+ /**
41
+ * Optional icon for the empty table non-ideal state.
42
+ *
43
+ * @default Icons.Table
44
+ */
45
+ noResultsIcon?: IconName | MaybeElement;
46
+ /**
47
+ * Optional title text for the empty table non-ideal state.
48
+ *
49
+ * @default "No results available"
50
+ */
51
+ noResultsTitle?: React.ReactNode;
52
+ /**
53
+ * Optional description for the empty table non-ideal state.
54
+ */
55
+ noResultsDescription?: React.ReactChild;
56
+ /**
57
+ * Optional action for the empty table non-ideal state.
58
+ */
59
+ noResultsActions?: React.JSX.Element;
60
+ /**
61
+ * Optional element to display in the left area of the top toolbar.
62
+ */
63
+ leftToolbar?: React.ReactNode;
64
+ /**
65
+ * Optional element to display in the right area of the top toolbar, to the left of the global filter, if enabled.
66
+ */
67
+ rightToolbar?: React.ReactNode;
68
+ /**
69
+ * Set a tuple with `[minPageSize, maxPageSize]` to automatically set page size based on the parent height.
70
+ */
71
+ autoHeight?: [minPageSize: number, maxPageSize: number];
72
+ /**
73
+ * Set the parent height property with the value to be used for auto-height calculation.
74
+ * If not provided, it will use the height of the parent element.
75
+ */
76
+ autoHeightParentHeight?: number;
77
+ /**
78
+ * The maximum number of pixels that the auto-height should use for the table parent.
79
+ * When not set, it can grow unbounded up to the maximum page size.
80
+ */
81
+ autoHeightMaxHeight?: number;
82
+ /**
83
+ * When `autoHeight` is set and this value is not provided, it is automatically calculated. Set a value to disable automatic
84
+ * calculation of average row height.
85
+ */
86
+ autoHeightAverageRowHeight?: number;
87
+ /**
88
+ * When set to true, every change to row or cell height will be tracked. Only useful of the height can be altered dynamically.
89
+ *
90
+ * @default false
91
+ */
92
+ autoHeightObserveRows?: boolean;
93
+ /**
94
+ * Set to `false` to remove ellipsis of values that do not fit cell width.
95
+ * Property is only in effect for the `TableTheme.Segment`.
96
+ *
97
+ * @default true
98
+ */
99
+ ellipsize?: boolean;
100
+ /**
101
+ * Enables manual control of the table's page size.
102
+ * When `true`, a page-size control is rendered in the pagination footer.
103
+ *
104
+ * @default true
105
+ */
106
+ manualPageSizeVisible?: boolean;
107
+ /**
108
+ * Optional list of page-size options displayed in the Select.
109
+ *
110
+ * If omitted, the default list will be used:
111
+ * `[10, 30, 50, 100]`
112
+ *
113
+ * When `autoHeight` is enabled on the table, an additional
114
+ * `"Auto"` option is prepended that disables manual page size.
115
+ *
116
+ * PERFORMANCE NOTE:
117
+ * This array should be memoized to prevent
118
+ * unnecessary recalculations and to ensure stable references in React.
119
+ */
120
+ manualPageSizeOptions?: number[];
121
+ }
122
+ declare const Table: TypedTable;
123
+ export { Table };
@@ -0,0 +1,243 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Table = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const core_1 = require("@blueprintjs/core");
6
+ const icons_1 = require("@blueprintjs/icons");
7
+ const select_1 = require("@blueprintjs/select");
8
+ const react_utils_1 = require("@ekz/react-utils");
9
+ const classnames_1 = tslib_1.__importDefault(require("classnames"));
10
+ const React = tslib_1.__importStar(require("react"));
11
+ const common_1 = require("../../common");
12
+ const pagination_1 = require("../pagination");
13
+ const headerGroup_1 = require("./headerGroup");
14
+ const reactTableBase_1 = require("./reactTableBase");
15
+ const tableMessages_1 = require("./tableMessages");
16
+ const theme_1 = require("./theme");
17
+ const useAutoColumnSizer_1 = require("./useAutoColumnSizer");
18
+ const useAutoHeight_1 = require("./useAutoHeight");
19
+ const useGroupedHeaderColumnSizer_1 = require("./useGroupedHeaderColumnSizer");
20
+ const DEFAULT_PAGE_SIZE_OPTIONS = [10, 30, 50, 100];
21
+ const Table = Object.assign(
22
+ // eslint-disable-next-line react/display-name
23
+ (props) => {
24
+ const { displayHeader = true, displayPagination = true, elevation = 2, ellipsize = true, theme = theme_1.TableTheme.Standard, manualPageSizeVisible, manualPageSizeOptions } = props;
25
+ const table = props.table;
26
+ const tableState = table.getState();
27
+ const metadata = table.options.meta;
28
+ const tableMessages = (0, tableMessages_1.useTableMessages)();
29
+ const columnSizeVars = React.useMemo(() => {
30
+ const headers = table.getFlatHeaders();
31
+ return headers.reduce((result, header) => {
32
+ result[`--header-${header.id}-size`] = header.getSize();
33
+ result[`--col-${header.column.id}-size`] = header.column.getSize();
34
+ return result;
35
+ }, {});
36
+ // eslint-disable-next-line react-hooks/exhaustive-deps
37
+ }, [tableState.columnSizing, tableState.columnSizingInfo]);
38
+ const setGlobalFilter = table.setGlobalFilter;
39
+ const handleGlobalFilterChange = React.useCallback((event) => setGlobalFilter(event.currentTarget.value), [setGlobalFilter]);
40
+ const clearGlobalFilter = React.useCallback(() => setGlobalFilter(''), [setGlobalFilter]);
41
+ const displayTopToolbar = (props.leftToolbar != null && props.leftToolbar !== false) ||
42
+ (props.rightToolbar != null && props.rightToolbar !== false) ||
43
+ metadata.enableGlobalFilter;
44
+ const [ref, setRef] = React.useState(null);
45
+ const bodyRef = React.useRef(null);
46
+ const nonIdealStateRef = React.useRef(null);
47
+ const autoHeightProp = props.autoHeight;
48
+ const manualPageSizeEnabled = manualPageSizeVisible ?? true;
49
+ const finalPageSizeOptions = React.useMemo(() => {
50
+ if (!manualPageSizeEnabled)
51
+ return null;
52
+ return manualPageSizeOptions ?? DEFAULT_PAGE_SIZE_OPTIONS;
53
+ }, [manualPageSizeEnabled, manualPageSizeOptions]);
54
+ const [manualPageSizeValue, setManualPageSizeValue] = React.useState(null);
55
+ const pageSizeSelectItems = React.useMemo(() => {
56
+ if (!finalPageSizeOptions)
57
+ return null;
58
+ const items = finalPageSizeOptions.map((n) => ({
59
+ label: String(n),
60
+ value: n
61
+ }));
62
+ if (autoHeightProp) {
63
+ return [{ value: null, label: 'Auto' }, ...items];
64
+ }
65
+ return items;
66
+ }, [finalPageSizeOptions, autoHeightProp]);
67
+ const selectedPageSizeItem = React.useMemo(() => {
68
+ if (!pageSizeSelectItems)
69
+ return undefined;
70
+ return pageSizeSelectItems.find((opt) => opt.value === manualPageSizeValue);
71
+ }, [pageSizeSelectItems, manualPageSizeValue]);
72
+ const isAutoHeightEnabled = autoHeightProp !== undefined;
73
+ const autoHeightValue = manualPageSizeValue == null ? autoHeightProp : undefined;
74
+ const handleResize = (0, useAutoHeight_1.useAutoHeight)(autoHeightValue, props.autoHeightParentHeight, props.autoHeightMaxHeight, props.autoHeightAverageRowHeight, props.autoHeightObserveRows, props.theme, table, ref, bodyRef, nonIdealStateRef);
75
+ const { recalculate: recalcColumnSizing } = (0, useAutoColumnSizer_1.useAutoColumnSizer)(ref, table, props.theme);
76
+ const groupedHeaderColumnSizeVars = (0, useGroupedHeaderColumnSizer_1.useGroupedHeaderColumnSizer)(table, tableState);
77
+ const lastObservedWidthRef = React.useRef(null);
78
+ const resizeRafIdRef = React.useRef(null);
79
+ // Clear any pending rAF on unmount to avoid calling setState after dispose
80
+ React.useEffect(() => () => {
81
+ if (resizeRafIdRef.current != null) {
82
+ cancelAnimationFrame(resizeRafIdRef.current);
83
+ }
84
+ }, []);
85
+ const handleColumnsResize = React.useCallback((entries) => {
86
+ const rawWidth = entries[0]?.contentRect?.width;
87
+ if (rawWidth == null)
88
+ return;
89
+ const width = Math.round(rawWidth);
90
+ const prev = lastObservedWidthRef.current;
91
+ if (prev == null || Math.abs(prev - width) >= 2) {
92
+ lastObservedWidthRef.current = width;
93
+ if (resizeRafIdRef.current != null) {
94
+ cancelAnimationFrame(resizeRafIdRef.current);
95
+ }
96
+ resizeRafIdRef.current = requestAnimationFrame(() => {
97
+ recalcColumnSizing();
98
+ resizeRafIdRef.current = null;
99
+ });
100
+ }
101
+ if (isAutoHeightEnabled) {
102
+ handleResize(entries);
103
+ }
104
+ }, [isAutoHeightEnabled, handleResize, recalcColumnSizing]);
105
+ const loadingIndicator = metadata.loadingIndicator != null ? (metadata.loadingIndicator) : (React.createElement(core_1.Spinner, { intent: core_1.Intent.PRIMARY, size: 40 }));
106
+ const targetRef = React.useRef(ref);
107
+ React.useEffect(() => {
108
+ targetRef.current = ref;
109
+ }, [ref]);
110
+ (0, react_utils_1.useDebouncedEffect)(500, () => {
111
+ if (manualPageSizeValue != null && manualPageSizeValue > 0) {
112
+ table.setPageSize(manualPageSizeValue);
113
+ }
114
+ }, [manualPageSizeValue, table]);
115
+ const handleSelectPageSize = React.useCallback((item) => {
116
+ if (item.value === null) {
117
+ setManualPageSizeValue(null); // Auto
118
+ }
119
+ else {
120
+ setManualPageSizeValue(item.value);
121
+ }
122
+ }, []);
123
+ const renderPageSizeOption = React.useCallback((item, { handleClick, modifiers }) => {
124
+ if (!modifiers.matchesPredicate) {
125
+ return null;
126
+ }
127
+ return (React.createElement(core_1.MenuItem, { key: item.value, text: item.label, active: modifiers.active, disabled: modifiers.disabled, onClick: handleClick }));
128
+ }, []);
129
+ const prevTablePageSizeRef = React.useRef(tableState.pagination.pageSize);
130
+ React.useEffect(() => {
131
+ prevTablePageSizeRef.current = tableState.pagination.pageSize;
132
+ }, [tableState.pagination.pageSize]);
133
+ React.useEffect(() => {
134
+ const tablePageSize = tableState.pagination.pageSize;
135
+ const prev = prevTablePageSizeRef.current;
136
+ const shouldSync = manualPageSizeEnabled &&
137
+ prev !== tablePageSize &&
138
+ !(autoHeightProp && manualPageSizeValue == null) &&
139
+ manualPageSizeValue !== tablePageSize;
140
+ if (prev !== tablePageSize) {
141
+ prevTablePageSizeRef.current = tablePageSize;
142
+ }
143
+ if (shouldSync) {
144
+ setManualPageSizeValue(tablePageSize);
145
+ }
146
+ }, [
147
+ manualPageSizeEnabled,
148
+ autoHeightProp,
149
+ manualPageSizeValue,
150
+ tableState.pagination.pageSize
151
+ ]);
152
+ React.useEffect(() => {
153
+ const shouldAutoSelect = manualPageSizeEnabled && !autoHeightProp && manualPageSizeValue == null;
154
+ if (!shouldAutoSelect)
155
+ return;
156
+ const firstNumericOption = pageSizeSelectItems?.find((o) => o.value != null);
157
+ if (firstNumericOption) {
158
+ setManualPageSizeValue(firstNumericOption.value);
159
+ }
160
+ }, [manualPageSizeEnabled, autoHeightProp, manualPageSizeValue, pageSizeSelectItems]);
161
+ return (React.createElement(core_1.ResizeSensor, { targetRef: targetRef, observeParents: true, onResize: handleColumnsResize },
162
+ React.createElement("div", { ref: setRef, className: (0, classnames_1.default)(common_1.Classes.REACT_TABLE, props.className, {
163
+ [core_1.Classes.elevationClass(elevation)]: elevation >= 0 && theme === theme_1.TableTheme.Standard
164
+ }), "data-theme": theme ?? theme_1.TableTheme.Standard },
165
+ displayTopToolbar && (React.createElement("div", { className: common_1.Classes.REACT_TABLE_TOP_TOOLBAR },
166
+ React.createElement("div", { className: common_1.Classes.REACT_TABLE_TOP_TOOLBAR_LEFT }, props.leftToolbar),
167
+ React.createElement("div", { className: common_1.Classes.REACT_TABLE_TOP_TOOLBAR_RIGHT },
168
+ props.rightToolbar,
169
+ metadata.enableGlobalFilter && (React.createElement(core_1.InputGroup, { className: common_1.Classes.REACT_TABLE_GLOBAL_FILTER, leftIcon: React.createElement(icons_1.Search, null), rightElement: tableState.globalFilter != null &&
170
+ tableState.globalFilter.length > 0 ? (React.createElement(core_1.Button, { icon: React.createElement(icons_1.Cross, null), onClick: clearGlobalFilter, minimal: true })) : (React.createElement(React.Fragment, null)), value: tableState.globalFilter ?? '', onChange: handleGlobalFilterChange }))))),
171
+ React.createElement("div", { className: common_1.Classes.REACT_TABLE_CONTENT, "data-top-toolbar": displayTopToolbar, "data-loading": metadata.isLoading, style: { ...columnSizeVars, ...groupedHeaderColumnSizeVars } },
172
+ metadata.isLoading && (React.createElement("div", { className: common_1.Classes.REACT_TABLE_LOADING }, loadingIndicator)),
173
+ displayHeader && (React.createElement("div", { className: common_1.Classes.REACT_TABLE_HEAD }, table.getHeaderGroups().map((headerGroup) => (React.createElement(headerGroup_1.HeaderGroupWrapper, { key: headerGroup.id, headerGroup: headerGroup, table: table }))))),
174
+ table.getRowCount() === 0 ? (React.createElement("div", { ref: nonIdealStateRef, className: common_1.Classes.REACT_TABLE_EMPTY, "data-loading": metadata.isLoading }, metadata.isLoading ? null : (React.createElement(core_1.NonIdealState, { icon: props.noResultsIcon ?? React.createElement(icons_1.Th, { size: 64 }), title: props.noResultsTitle ??
175
+ tableMessages.noResultsTitle ??
176
+ 'No results available', description: props.noResultsDescription, action: props.noResultsActions })))) : tableState.columnSizingInfo.isResizingColumn ? (React.createElement(MemoizedTableBodyForResize, { table: table, ellipsize: ellipsize, metadata: metadata })) : (React.createElement(TableBody, { ref: bodyRef, table: table, ellipsize: ellipsize, metadata: metadata }))),
177
+ displayPagination && (manualPageSizeEnabled || table.getPageCount() > 1) && (React.createElement("div", { className: common_1.Classes.REACT_TABLE_PAGINATION },
178
+ manualPageSizeEnabled && pageSizeSelectItems != null && (React.createElement("div", { style: { flexShrink: 1, flexGrow: 1 } },
179
+ React.createElement("div", { style: { display: 'flex', alignItems: 'center', gap: 8 } },
180
+ React.createElement("span", { style: { whiteSpace: 'nowrap' } }, "Rows per page:"),
181
+ React.createElement(select_1.Select, { items: pageSizeSelectItems, itemRenderer: renderPageSizeOption, onItemSelect: handleSelectPageSize, filterable: false },
182
+ React.createElement(core_1.Button, { minimal: true, outlined: true, rightIcon: "caret-down", text: selectedPageSizeItem?.label ??
183
+ (manualPageSizeValue === null
184
+ ? 'Auto'
185
+ : String(manualPageSizeValue)) }))))),
186
+ React.createElement("div", { style: {
187
+ display: 'flex',
188
+ justifyContent: 'flex-end',
189
+ flexShrink: 1,
190
+ flexGrow: 1,
191
+ alignSelf: 'flex-end'
192
+ } },
193
+ React.createElement(pagination_1.Pagination, { centerPagesDisplayed: 3, selectedPage: table.getState().pagination.pageIndex, onPageChange: table.setPageIndex, pageCount: table.getPageCount(), previousMessage: null, nextMessage: null })))))));
194
+ }, {
195
+ displayName: `${common_1.DISPLAYNAME_PREFIX}.Table`,
196
+ ofType: function ofType() {
197
+ return Table;
198
+ }
199
+ });
200
+ exports.Table = Table;
201
+ const TableBody = React.forwardRef(function TableBody(props, ref) {
202
+ const onRowClick = props.metadata.onRowClick;
203
+ return (React.createElement("div", { ref: ref, className: common_1.Classes.REACT_TABLE_BODY }, props.table.getRowModel().rows.map((row) => {
204
+ const shouldRenderSubComponent = props.metadata.getSubComponentExpanded != null
205
+ ? props.metadata.getSubComponentExpanded(row.original, row.index)
206
+ : row.getIsExpanded();
207
+ const subComponent = shouldRenderSubComponent &&
208
+ props.metadata.getSubComponent &&
209
+ props.metadata.getSubComponent(row.original, row.index);
210
+ const clickable = onRowClick != null && props.metadata.getRowClickable != null
211
+ ? props.metadata.getRowClickable(row.original, row.index)
212
+ : onRowClick != null;
213
+ const className = props.metadata.getRowClassName != null &&
214
+ props.metadata.getRowClassName(row.original, row.index);
215
+ const onClick = clickable && onRowClick != null
216
+ ? (event) => {
217
+ let target = event.target;
218
+ while ((target instanceof HTMLElement || target instanceof SVGElement) &&
219
+ target.parentElement instanceof Element &&
220
+ !target.classList.contains(common_1.Classes.REACT_TABLE_CELL) &&
221
+ !target.dataset.skipRowClick) {
222
+ target = target.parentElement;
223
+ }
224
+ if (!('dataset' in target) || !target.dataset.skipRowClick) {
225
+ onRowClick(row.original, row, event);
226
+ }
227
+ }
228
+ : undefined;
229
+ return (React.createElement(React.Fragment, { key: row.id },
230
+ React.createElement("div", { className: (0, classnames_1.default)(common_1.Classes.REACT_TABLE_ROW, className), "data-depth": row.depth, "data-clickable": clickable, onClick: onClick }, row.getVisibleCells().map((cell) => {
231
+ const definition = cell.column.columnDef;
232
+ const customClassName = definition.getClassName != null
233
+ ? definition.getClassName(cell.getContext())
234
+ : null;
235
+ return (React.createElement("div", { key: cell.id, className: (0, classnames_1.default)(common_1.Classes.REACT_TABLE_CELL, customClassName, 'grouped'), "data-ellipsize": props.ellipsize, "data-skip-row-click": definition.skipRowClick, style: {
236
+ width: `calc(var(--col-${cell.column.id}-size) * 1px)`
237
+ } }, (0, reactTableBase_1.flexRender)(cell.column.columnDef.cell, cell.getContext())));
238
+ })),
239
+ subComponent != null && subComponent !== false && (React.createElement("div", { className: common_1.Classes.REACT_TABLE_ROW_SUB_COMPONENT }, subComponent))));
240
+ })));
241
+ });
242
+ const MemoizedTableBodyForResize = React.memo(TableBody, (prev, next) => prev.table.options.data === next.table.options.data);
243
+ //# sourceMappingURL=table.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table.js","sourceRoot":"","sources":["../../../../src/main/web/components/table/table.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import * as React from 'react';
2
+ export type TableMessages = {
3
+ noResultsTitle?: React.ReactNode;
4
+ };
5
+ export declare const TableMessagesContext: React.Context<TableMessages>;
6
+ export declare function useTableMessages(): TableMessages;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TableMessagesContext = void 0;
4
+ exports.useTableMessages = useTableMessages;
5
+ const tslib_1 = require("tslib");
6
+ const React = tslib_1.__importStar(require("react"));
7
+ exports.TableMessagesContext = React.createContext({});
8
+ function useTableMessages() {
9
+ return React.useContext(exports.TableMessagesContext);
10
+ }
11
+ //# sourceMappingURL=tableMessages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tableMessages.js","sourceRoot":"","sources":["../../../../src/main/web/components/table/tableMessages.tsx"],"names":[],"mappings":";;;AAQA,4CAEC;;AAVD,qDAA+B;AAMlB,QAAA,oBAAoB,GAAG,KAAK,CAAC,aAAa,CAAgB,EAAE,CAAC,CAAC;AAE3E,SAAgB,gBAAgB;IAC5B,OAAO,KAAK,CAAC,UAAU,CAAC,4BAAoB,CAAC,CAAC;AAClD,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare enum TableTheme {
2
+ Standard = "standard",
3
+ Segment = "segment"
4
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TableTheme = void 0;
4
+ var TableTheme;
5
+ (function (TableTheme) {
6
+ TableTheme["Standard"] = "standard";
7
+ TableTheme["Segment"] = "segment";
8
+ })(TableTheme || (exports.TableTheme = TableTheme = {}));
9
+ //# sourceMappingURL=theme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.js","sourceRoot":"","sources":["../../../../src/main/web/components/table/theme.ts"],"names":[],"mappings":";;;AAAA,IAAY,UAGX;AAHD,WAAY,UAAU;IAClB,mCAAqB,CAAA;IACrB,iCAAmB,CAAA;AACvB,CAAC,EAHW,UAAU,0BAAV,UAAU,QAGrB"}
@@ -0,0 +1,7 @@
1
+ import type { Table } from './reactTableBase';
2
+ import { TableTheme } from './theme';
3
+ export declare const CELL_PADDING = 20;
4
+ export declare const CELL_BORDER = 1;
5
+ export declare function useAutoColumnSizer(ref: HTMLDivElement | null, table: Table<unknown>, theme: TableTheme | undefined): {
6
+ recalculate: () => void;
7
+ };