@servicetitan/table 22.1.0 → 22.1.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (203) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/dist/demo/index.d.ts +4 -0
  3. package/dist/demo/index.d.ts.map +1 -0
  4. package/dist/demo/index.js +4 -0
  5. package/dist/demo/index.js.map +1 -0
  6. package/dist/demo/master-detail/detail-table.d.ts +4 -0
  7. package/dist/demo/master-detail/detail-table.d.ts.map +1 -0
  8. package/dist/demo/master-detail/detail-table.js +28 -0
  9. package/dist/demo/master-detail/detail-table.js.map +1 -0
  10. package/dist/demo/master-detail/detail-table.store.d.ts +14 -0
  11. package/dist/demo/master-detail/detail-table.store.d.ts.map +1 -0
  12. package/dist/demo/master-detail/detail-table.store.js +104 -0
  13. package/dist/demo/master-detail/detail-table.store.js.map +1 -0
  14. package/dist/demo/master-detail/index.d.ts +2 -0
  15. package/dist/demo/master-detail/index.d.ts.map +1 -0
  16. package/dist/demo/master-detail/index.js +2 -0
  17. package/dist/demo/master-detail/index.js.map +1 -0
  18. package/dist/demo/master-detail/master-table.store.d.ts +14 -0
  19. package/dist/demo/master-detail/master-table.store.d.ts.map +1 -0
  20. package/dist/demo/master-detail/master-table.store.js +103 -0
  21. package/dist/demo/master-detail/master-table.store.js.map +1 -0
  22. package/dist/demo/master-detail/product-detail.d.ts +8 -0
  23. package/dist/demo/master-detail/product-detail.d.ts.map +1 -0
  24. package/dist/demo/master-detail/product-detail.js +2 -0
  25. package/dist/demo/master-detail/product-detail.js.map +1 -0
  26. package/dist/demo/master-detail/product-details.d.ts +3 -0
  27. package/dist/demo/master-detail/product-details.d.ts.map +1 -0
  28. package/dist/demo/master-detail/product-details.js +55 -0
  29. package/dist/demo/master-detail/product-details.js.map +1 -0
  30. package/dist/demo/master-detail/product.d.ts +26 -0
  31. package/dist/demo/master-detail/product.d.ts.map +1 -0
  32. package/dist/demo/master-detail/product.js +16 -0
  33. package/dist/demo/master-detail/product.js.map +1 -0
  34. package/dist/demo/master-detail/products.d.ts +3 -0
  35. package/dist/demo/master-detail/products.d.ts.map +1 -0
  36. package/dist/demo/master-detail/products.js +117 -0
  37. package/dist/demo/master-detail/products.js.map +1 -0
  38. package/dist/demo/master-detail/table-master-detail.d.ts +3 -0
  39. package/dist/demo/master-detail/table-master-detail.d.ts.map +1 -0
  40. package/dist/demo/master-detail/table-master-detail.js +24 -0
  41. package/dist/demo/master-detail/table-master-detail.js.map +1 -0
  42. package/dist/demo/overview/actions-cell.d.ts +5 -0
  43. package/dist/demo/overview/actions-cell.d.ts.map +1 -0
  44. package/dist/demo/overview/actions-cell.js +38 -0
  45. package/dist/demo/overview/actions-cell.js.map +1 -0
  46. package/dist/demo/overview/index.d.ts +2 -0
  47. package/dist/demo/overview/index.d.ts.map +1 -0
  48. package/dist/demo/overview/index.js +2 -0
  49. package/dist/demo/overview/index.js.map +1 -0
  50. package/dist/demo/overview/product.d.ts +27 -0
  51. package/dist/demo/overview/product.d.ts.map +1 -0
  52. package/dist/demo/overview/product.js +16 -0
  53. package/dist/demo/overview/product.js.map +1 -0
  54. package/dist/demo/overview/products.d.ts +3 -0
  55. package/dist/demo/overview/products.d.ts.map +1 -0
  56. package/dist/demo/overview/products.js +127 -0
  57. package/dist/demo/overview/products.js.map +1 -0
  58. package/dist/demo/overview/table.d.ts +6 -0
  59. package/dist/demo/overview/table.d.ts.map +1 -0
  60. package/dist/demo/overview/table.js +44 -0
  61. package/dist/demo/overview/table.js.map +1 -0
  62. package/dist/demo/overview/table.store.d.ts +15 -0
  63. package/dist/demo/overview/table.store.d.ts.map +1 -0
  64. package/dist/demo/overview/table.store.js +92 -0
  65. package/dist/demo/overview/table.store.js.map +1 -0
  66. package/dist/demo/state-caching/beverages.d.ts +3 -0
  67. package/dist/demo/state-caching/beverages.d.ts.map +1 -0
  68. package/dist/demo/state-caching/beverages.js +48 -0
  69. package/dist/demo/state-caching/beverages.js.map +1 -0
  70. package/dist/demo/state-caching/index.d.ts +2 -0
  71. package/dist/demo/state-caching/index.d.ts.map +1 -0
  72. package/dist/demo/state-caching/index.js +2 -0
  73. package/dist/demo/state-caching/index.js.map +1 -0
  74. package/dist/demo/state-caching/product.d.ts +6 -0
  75. package/dist/demo/state-caching/product.d.ts.map +1 -0
  76. package/dist/demo/state-caching/product.js +2 -0
  77. package/dist/demo/state-caching/product.js.map +1 -0
  78. package/dist/demo/state-caching/products.d.ts +3 -0
  79. package/dist/demo/state-caching/products.d.ts.map +1 -0
  80. package/dist/demo/state-caching/products.js +53 -0
  81. package/dist/demo/state-caching/products.js.map +1 -0
  82. package/dist/demo/state-caching/state-caching-table.d.ts +3 -0
  83. package/dist/demo/state-caching/state-caching-table.d.ts.map +1 -0
  84. package/dist/demo/state-caching/state-caching-table.js +14 -0
  85. package/dist/demo/state-caching/state-caching-table.js.map +1 -0
  86. package/dist/demo/state-caching/state-caching-table.store.d.ts +13 -0
  87. package/dist/demo/state-caching/state-caching-table.store.d.ts.map +1 -0
  88. package/dist/demo/state-caching/state-caching-table.store.js +70 -0
  89. package/dist/demo/state-caching/state-caching-table.store.js.map +1 -0
  90. package/dist/editable-cell/boolean-editable-cell.d.ts +3 -0
  91. package/dist/editable-cell/boolean-editable-cell.d.ts.map +1 -0
  92. package/dist/editable-cell/boolean-editable-cell.js +14 -0
  93. package/dist/editable-cell/boolean-editable-cell.js.map +1 -0
  94. package/dist/editable-cell/date-editable-cell.d.ts +3 -0
  95. package/dist/editable-cell/date-editable-cell.d.ts.map +1 -0
  96. package/dist/editable-cell/date-editable-cell.js +14 -0
  97. package/dist/editable-cell/date-editable-cell.js.map +1 -0
  98. package/dist/editable-cell/get-action-cell.d.ts +13 -0
  99. package/dist/editable-cell/get-action-cell.d.ts.map +1 -0
  100. package/dist/editable-cell/get-action-cell.js +18 -0
  101. package/dist/editable-cell/get-action-cell.js.map +1 -0
  102. package/dist/editable-cell/get-editable-cell.d.ts +13 -0
  103. package/dist/editable-cell/get-editable-cell.d.ts.map +1 -0
  104. package/dist/editable-cell/get-editable-cell.js +18 -0
  105. package/dist/editable-cell/get-editable-cell.js.map +1 -0
  106. package/dist/editable-cell/get-select-editable-cell.d.ts +10 -0
  107. package/dist/editable-cell/get-select-editable-cell.d.ts.map +1 -0
  108. package/dist/editable-cell/get-select-editable-cell.js +19 -0
  109. package/dist/editable-cell/get-select-editable-cell.js.map +1 -0
  110. package/dist/editable-cell/index.d.ts +8 -0
  111. package/dist/editable-cell/index.d.ts.map +1 -0
  112. package/dist/editable-cell/index.js +8 -0
  113. package/dist/editable-cell/index.js.map +1 -0
  114. package/dist/editable-cell/numeric-editable-cell.d.ts +3 -0
  115. package/dist/editable-cell/numeric-editable-cell.d.ts.map +1 -0
  116. package/dist/editable-cell/numeric-editable-cell.js +15 -0
  117. package/dist/editable-cell/numeric-editable-cell.js.map +1 -0
  118. package/dist/editable-cell/text-editable-cell.d.ts +9 -0
  119. package/dist/editable-cell/text-editable-cell.d.ts.map +1 -0
  120. package/dist/editable-cell/text-editable-cell.js +20 -0
  121. package/dist/editable-cell/text-editable-cell.js.map +1 -0
  122. package/dist/export/export.d.ts +10 -0
  123. package/dist/export/export.d.ts.map +1 -0
  124. package/dist/export/export.js +6 -0
  125. package/dist/export/export.js.map +1 -0
  126. package/dist/export/index.d.ts +2 -0
  127. package/dist/export/index.d.ts.map +1 -0
  128. package/dist/export/index.js +2 -0
  129. package/dist/export/index.js.map +1 -0
  130. package/dist/filters/column-menu-filters.d.ts +5 -0
  131. package/dist/filters/column-menu-filters.d.ts.map +1 -0
  132. package/dist/filters/column-menu-filters.js +9 -0
  133. package/dist/filters/column-menu-filters.js.map +1 -0
  134. package/dist/filters/datetime-filter/datetime-filter.d.ts +3 -0
  135. package/dist/filters/datetime-filter/datetime-filter.d.ts.map +1 -0
  136. package/dist/filters/datetime-filter/datetime-filter.js +71 -0
  137. package/dist/filters/datetime-filter/datetime-filter.js.map +1 -0
  138. package/dist/filters/field-values-filter.d.ts +6 -0
  139. package/dist/filters/field-values-filter.d.ts.map +1 -0
  140. package/dist/filters/field-values-filter.js +155 -0
  141. package/dist/filters/field-values-filter.js.map +1 -0
  142. package/dist/filters/index.d.ts +9 -0
  143. package/dist/filters/index.d.ts.map +1 -0
  144. package/dist/filters/index.js +9 -0
  145. package/dist/filters/index.js.map +1 -0
  146. package/dist/filters/multiselect-filter.d.ts +5 -0
  147. package/dist/filters/multiselect-filter.d.ts.map +1 -0
  148. package/dist/filters/multiselect-filter.js +107 -0
  149. package/dist/filters/multiselect-filter.js.map +1 -0
  150. package/dist/filters/numeric-filter-extended/numeric-extended-operators.d.ts +6 -0
  151. package/dist/filters/numeric-filter-extended/numeric-extended-operators.d.ts.map +1 -0
  152. package/dist/filters/numeric-filter-extended/numeric-extended-operators.js +6 -0
  153. package/dist/filters/numeric-filter-extended/numeric-extended-operators.js.map +1 -0
  154. package/dist/filters/numeric-filter-extended/numeric-filter-extended.d.ts +3 -0
  155. package/dist/filters/numeric-filter-extended/numeric-filter-extended.d.ts.map +1 -0
  156. package/dist/filters/numeric-filter-extended/numeric-filter-extended.js +27 -0
  157. package/dist/filters/numeric-filter-extended/numeric-filter-extended.js.map +1 -0
  158. package/dist/filters/range-filter/range-filter.d.ts +6 -0
  159. package/dist/filters/range-filter/range-filter.d.ts.map +1 -0
  160. package/dist/filters/range-filter/range-filter.js +117 -0
  161. package/dist/filters/range-filter/range-filter.js.map +1 -0
  162. package/dist/filters/standard-filter-with-multiselect/filter-cell-ext.d.ts +21 -0
  163. package/dist/filters/standard-filter-with-multiselect/filter-cell-ext.d.ts.map +1 -0
  164. package/dist/filters/standard-filter-with-multiselect/filter-cell-ext.js +82 -0
  165. package/dist/filters/standard-filter-with-multiselect/filter-cell-ext.js.map +1 -0
  166. package/dist/filters/standard-filter-with-multiselect/multiselect-operators.d.ts +6 -0
  167. package/dist/filters/standard-filter-with-multiselect/multiselect-operators.d.ts.map +1 -0
  168. package/dist/filters/standard-filter-with-multiselect/multiselect-operators.js +6 -0
  169. package/dist/filters/standard-filter-with-multiselect/multiselect-operators.js.map +1 -0
  170. package/dist/filters/standard-filter-with-multiselect/standard-filter-with-multiselect.d.ts +26 -0
  171. package/dist/filters/standard-filter-with-multiselect/standard-filter-with-multiselect.d.ts.map +1 -0
  172. package/dist/filters/standard-filter-with-multiselect/standard-filter-with-multiselect.js +69 -0
  173. package/dist/filters/standard-filter-with-multiselect/standard-filter-with-multiselect.js.map +1 -0
  174. package/dist/filters/standard-filter-with-multiselect/table-column-menu-filter-ext.d.ts +6 -0
  175. package/dist/filters/standard-filter-with-multiselect/table-column-menu-filter-ext.d.ts.map +1 -0
  176. package/dist/filters/standard-filter-with-multiselect/table-column-menu-filter-ext.js +30 -0
  177. package/dist/filters/standard-filter-with-multiselect/table-column-menu-filter-ext.js.map +1 -0
  178. package/dist/filters/time-filter/time-filter.d.ts +3 -0
  179. package/dist/filters/time-filter/time-filter.d.ts.map +1 -0
  180. package/dist/filters/time-filter/time-filter.js +71 -0
  181. package/dist/filters/time-filter/time-filter.js.map +1 -0
  182. package/dist/index.d.ts +10 -0
  183. package/dist/index.d.ts.map +1 -0
  184. package/dist/index.js +9 -0
  185. package/dist/index.js.map +1 -0
  186. package/dist/select-cell/index.d.ts +2 -0
  187. package/dist/select-cell/index.d.ts.map +1 -0
  188. package/dist/select-cell/index.js +2 -0
  189. package/dist/select-cell/index.js.map +1 -0
  190. package/dist/select-cell/select-cell.d.ts +25 -0
  191. package/dist/select-cell/select-cell.d.ts.map +1 -0
  192. package/dist/select-cell/select-cell.js +35 -0
  193. package/dist/select-cell/select-cell.js.map +1 -0
  194. package/dist/table-state.d.ts +161 -0
  195. package/dist/table-state.d.ts.map +1 -0
  196. package/dist/table-state.js +1106 -0
  197. package/dist/table-state.js.map +1 -0
  198. package/dist/table.d.ts +40 -0
  199. package/dist/table.d.ts.map +1 -0
  200. package/dist/table.js +231 -0
  201. package/dist/table.js.map +1 -0
  202. package/package.json +6 -6
  203. package/src/select-cell/select-cell.tsx +16 -44
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table-state.js","sourceRoot":"","sources":["../src/table-state.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import { Component, ReactNode, ReactElement, ComponentType } from 'react';
2
+ import { TableProps as AnvilTableProps, TableRowProps, TableColumnProps as AnvilTableColumnProps, TableCellProps as AnvilTableCellProps, TableHeaderSelectionChangeEvent, TableSelectionChangeEvent, TablePagerSettings } from '@servicetitan/design-system';
3
+ import { IdType } from '@servicetitan/data-query';
4
+ import { TableState } from './table-state';
5
+ import { SelectionControlType } from './select-cell/select-cell';
6
+ export interface TableCellProps<T = never, TId extends IdType = any, P = never, PId extends IdType = never> extends AnvilTableCellProps {
7
+ tableState?: TableState<T, TId, P, PId>;
8
+ }
9
+ interface TableColumnProps<T = never, TId extends IdType = any, P = never, PId extends IdType = never> extends AnvilTableColumnProps {
10
+ cell?: ComponentType<TableCellProps<T, TId, P, PId>>;
11
+ children?: ReactElement<TableColumnProps<T, TId, P, PId>>[];
12
+ }
13
+ declare type ExcludedTableProps = 'data' | 'editField' | 'filter' | 'onFilterChange' | 'group' | 'onGroupChange' | 'onExpandChange' | 'expandField' | 'sort' | 'onSortChange' | 'onHeaderSelectionChange' | 'onSelectionChange' | 'selectedField' | 'pageable' | 'pageSize' | 'skip' | 'onPageChange' | 'total' | 'selectable' | 'pager';
14
+ export interface TableProps<T, TId extends IdType = any, P = never, PId extends IdType = never> extends Omit<AnvilTableProps, ExcludedTableProps> {
15
+ selectable?: boolean;
16
+ exportable?: boolean;
17
+ hideSelectAll?: boolean;
18
+ exportFileName?: string;
19
+ tableState: TableState<T, TId, P, PId>;
20
+ selectionControl?: SelectionControlType;
21
+ pager?: TablePagerSettings;
22
+ }
23
+ export declare class Table<T, TId extends IdType = any, P = never, PId extends IdType = never> extends Component<TableProps<T, TId, P, PId>> {
24
+ private tableState;
25
+ private ref;
26
+ private lastSelection?;
27
+ private selectColumnCell;
28
+ private selectHeaderCell;
29
+ private withCellTableState;
30
+ rowRender: (row: ReactElement, rowProps: TableRowProps) => ReactNode;
31
+ applyToColumns(children: ReactNode, transformer: (column: ReactElement<TableColumnProps<T, TId, P, PId>>) => ReactElement<TableColumnProps<T, TId, P, PId>>): ReactNode;
32
+ handleHeaderSelectionChange: (ev: TableHeaderSelectionChangeEvent) => void;
33
+ handleSelectionChange: (ev: TableSelectionChangeEvent) => void;
34
+ scrollToBottom: () => void;
35
+ render(): JSX.Element;
36
+ private getPageable;
37
+ private table;
38
+ }
39
+ export {};
40
+ //# sourceMappingURL=table.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../src/table.tsx"],"names":[],"mappings":"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"}
package/dist/table.js ADDED
@@ -0,0 +1,231 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __rest = (this && this.__rest) || function (s, e) {
8
+ var t = {};
9
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
10
+ t[p] = s[p];
11
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
12
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
13
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
14
+ t[p[i]] = s[p[i]];
15
+ }
16
+ return t;
17
+ };
18
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
19
+ import { isValidElement, Component, createRef, cloneElement, Children, Fragment, } from 'react';
20
+ import { Announcement, Table as AnvilTable, TableColumn, } from '@servicetitan/design-system';
21
+ import { operators as kendoOperators } from '@progress/kendo-react-grid/dist/npm/filterCommon';
22
+ import { GridPDFExport as TablePDFExport } from '@progress/kendo-react-pdf';
23
+ import { ExcelExport } from '@progress/kendo-react-excel-export';
24
+ import { observer } from 'mobx-react';
25
+ import { AsyncDataSource } from '@servicetitan/data-query';
26
+ import { SelectColumnCell, SelectHeaderCell, } from './select-cell/select-cell';
27
+ import memoizeOne from 'memoize-one';
28
+ import classNames from 'classnames';
29
+ import * as Styles from './table.module.css';
30
+ const { text: textOperators } = kendoOperators, operators = __rest(kendoOperators, ["text"]);
31
+ operators.text = [
32
+ ...textOperators.filter(o => o.operator !== 'isnull' && o.operator !== 'isnotnull'),
33
+ ];
34
+ function isColumnElement(element) {
35
+ if (!isValidElement(element)) {
36
+ return false;
37
+ }
38
+ const elementType = element.type;
39
+ return elementType === TableColumn || elementType.originalType === TableColumn;
40
+ }
41
+ let Table = class Table extends Component {
42
+ constructor() {
43
+ super(...arguments);
44
+ Object.defineProperty(this, "tableState", {
45
+ enumerable: true,
46
+ configurable: true,
47
+ writable: true,
48
+ value: this.props.tableState
49
+ });
50
+ Object.defineProperty(this, "ref", {
51
+ enumerable: true,
52
+ configurable: true,
53
+ writable: true,
54
+ value: createRef()
55
+ });
56
+ Object.defineProperty(this, "lastSelection", {
57
+ enumerable: true,
58
+ configurable: true,
59
+ writable: true,
60
+ value: void 0
61
+ });
62
+ Object.defineProperty(this, "selectColumnCell", {
63
+ enumerable: true,
64
+ configurable: true,
65
+ writable: true,
66
+ value: observer((props) => (_jsx(SelectColumnCell, Object.assign({}, props, { isRowSelectable: this.tableState.isRowSelectable(props.dataItem), control: this.props.selectionControl }))))
67
+ });
68
+ Object.defineProperty(this, "selectHeaderCell", {
69
+ enumerable: true,
70
+ configurable: true,
71
+ writable: true,
72
+ value: observer((props) => {
73
+ if (this.props.hideSelectAll || this.tableState.selectionLimit !== Infinity) {
74
+ return null;
75
+ }
76
+ return (_jsx(SelectHeaderCell, Object.assign({}, props, { isSomeRowsSelected: this.props.scrollable !== 'virtual'
77
+ ? this.tableState.isSomePageRowsSelected
78
+ : this.tableState.isSomeRowsSelected, control: this.props.selectionControl })));
79
+ })
80
+ });
81
+ // TODO: rid of "memoizeOne" after migration on React.FC
82
+ Object.defineProperty(this, "withCellTableState", {
83
+ enumerable: true,
84
+ configurable: true,
85
+ writable: true,
86
+ value: memoizeOne((children) => this.applyToColumns(children, column => {
87
+ const { cell: Cell } = column.props;
88
+ return cloneElement(column, {
89
+ cell: Cell &&
90
+ ((props) => (_jsx(Cell, Object.assign({}, props, { tableState: this.tableState })))),
91
+ });
92
+ }))
93
+ });
94
+ Object.defineProperty(this, "rowRender", {
95
+ enumerable: true,
96
+ configurable: true,
97
+ writable: true,
98
+ value: (row, rowProps) => {
99
+ const overrides = {};
100
+ if (this.props.selectable &&
101
+ rowProps.rowType === 'data' &&
102
+ !this.tableState.isRowSelectable(rowProps.dataItem)) {
103
+ overrides.className = classNames(row.props.className, Styles.disabled);
104
+ }
105
+ const result = Object.keys(overrides).length ? cloneElement(row, overrides) : row;
106
+ return this.props.rowRender ? this.props.rowRender(result, rowProps) : result;
107
+ }
108
+ });
109
+ Object.defineProperty(this, "handleHeaderSelectionChange", {
110
+ enumerable: true,
111
+ configurable: true,
112
+ writable: true,
113
+ value: (ev) => {
114
+ const checked = ev.syntheticEvent.currentTarget.checked;
115
+ if (this.props.scrollable !== 'virtual') {
116
+ if (checked) {
117
+ this.tableState.selectPage();
118
+ }
119
+ else {
120
+ this.tableState.deselectPage();
121
+ }
122
+ }
123
+ else {
124
+ if (checked) {
125
+ this.tableState.selectAll();
126
+ }
127
+ else {
128
+ this.tableState.deselectAll();
129
+ }
130
+ }
131
+ }
132
+ });
133
+ Object.defineProperty(this, "handleSelectionChange", {
134
+ enumerable: true,
135
+ configurable: true,
136
+ writable: true,
137
+ value: (ev) => {
138
+ var _a, _b, _c, _d;
139
+ if (!ev.dataItem) {
140
+ return;
141
+ }
142
+ if (ev.nativeEvent.shiftKey && this.lastSelection) {
143
+ const rows = this.tableState
144
+ .getRowsBetween(this.lastSelection, ev.dataItem)
145
+ .filter(row => this.tableState.isRowSelectable(row));
146
+ const isAsc = ((_b = (_a = this.tableState.dataSource) === null || _a === void 0 ? void 0 : _a.idSelector) === null || _b === void 0 ? void 0 : _b.call(_a, this.lastSelection)) ===
147
+ ((_d = (_c = this.tableState.dataSource) === null || _c === void 0 ? void 0 : _c.idSelector) === null || _d === void 0 ? void 0 : _d.call(_c, rows[0]));
148
+ const selection = !ev.dataItem.selected;
149
+ if (selection) {
150
+ const toBeSelected = [];
151
+ for (const row of isAsc ? rows : rows.reverse()) {
152
+ if (this.tableState.selectedCount + toBeSelected.length >=
153
+ this.tableState.selectionLimit) {
154
+ break;
155
+ }
156
+ if (row.selected) {
157
+ continue;
158
+ }
159
+ toBeSelected.push(row);
160
+ }
161
+ this.tableState.setRowsSelection(toBeSelected, selection);
162
+ }
163
+ else {
164
+ this.tableState.setRowsSelection(rows, selection);
165
+ }
166
+ }
167
+ else {
168
+ this.tableState.toggleRowSelection(ev.dataItem);
169
+ }
170
+ this.lastSelection = ev.dataItem;
171
+ }
172
+ });
173
+ Object.defineProperty(this, "scrollToBottom", {
174
+ enumerable: true,
175
+ configurable: true,
176
+ writable: true,
177
+ value: () => {
178
+ if (this.ref.current) {
179
+ const container = this.ref.current.getElementsByClassName('k-grid-content')[0];
180
+ container.scrollTop = container.scrollHeight - container.clientHeight * 2;
181
+ container.scroll({ top: container.scrollHeight, behavior: 'smooth' });
182
+ }
183
+ }
184
+ });
185
+ Object.defineProperty(this, "table", {
186
+ enumerable: true,
187
+ configurable: true,
188
+ writable: true,
189
+ value: () => {
190
+ const _a = this.props, { className, filterOperators, selectable, pager } = _a, props = __rest(_a, ["className", "filterOperators", "selectable", "pager"]);
191
+ return (_jsxs(AnvilTable, Object.assign({ ref: this.ref }, props, { data: [...this.tableState.data], rowRender: this.rowRender, editField: "inEdit", filter: this.tableState.filter, filterOperators: filterOperators !== null && filterOperators !== void 0 ? filterOperators : operators, onFilterChange: this.tableState.handleFilterChange, group: [...this.tableState.group], onGroupChange: this.tableState.handleGroupChange, onExpandChange: this.tableState.handleExpandChange, expandField: "expanded", sort: [...this.tableState.sort], onSortChange: this.tableState.handleSortChange, onHeaderSelectionChange: this.handleHeaderSelectionChange, onSelectionChange: this.handleSelectionChange, selectedField: "selected", pageable: this.getPageable(), pageSize: this.tableState.pageSize, skip: this.tableState.skip, onPageChange: this.tableState.handlePageChange, total: this.tableState.filteredCount, className: classNames(Styles.table, className), selectable: { enabled: selectable, mode: 'multiple' } }, { children: [selectable && (_jsx(TableColumn, { locked: true, field: "selected", width: "50px", filterable: false, resizable: false, headerSelectionValue: props.scrollable !== 'virtual'
192
+ ? this.tableState.isAllPageRowsSelected
193
+ : this.tableState.isAllRowsSelected, headerCell: this.selectHeaderCell, cell: this.selectColumnCell, headerClassName: "lh-1-i ta-center-i", className: classNames(Styles.unselectable, 'lh-1-i', 'ta-center-i') })), this.withCellTableState(props.children)] })));
194
+ }
195
+ });
196
+ }
197
+ applyToColumns(children, transformer) {
198
+ return Children.map(children, child => {
199
+ if (!isColumnElement(child)) {
200
+ return child;
201
+ }
202
+ return child.props.children
203
+ ? cloneElement(transformer(child), {
204
+ children: this.applyToColumns(child.props.children, transformer),
205
+ })
206
+ : transformer(child);
207
+ });
208
+ }
209
+ render() {
210
+ if (this.tableState.dataSource instanceof AsyncDataSource &&
211
+ this.props.scrollable === 'virtual' &&
212
+ this.props.selectable) {
213
+ return (_jsx(Announcement, { status: "critical", title: "AsyncDataSource doesn't support virtual scroll with selection." }));
214
+ }
215
+ const table = this.table();
216
+ return (_jsxs(Fragment, { children: [table, this.props.exportable && (_jsxs(Fragment, { children: [_jsxs(TablePDFExport, Object.assign({ ref: this.tableState.setTablePdfExportRef, fileName: sanitizeExportFileName(this.props.exportFileName) }, { children: [this.props.children, table] })), _jsx(ExcelExport, Object.assign({ ref: this.tableState.setTableExcelExportRef, fileName: sanitizeExportFileName(this.props.exportFileName) }, { children: this.props.children }))] }))] }));
217
+ }
218
+ getPageable() {
219
+ var _a;
220
+ if (this.props.scrollable === 'virtual' || !this.tableState.pageSize) {
221
+ return false;
222
+ }
223
+ return (_a = this.props.pager) !== null && _a !== void 0 ? _a : true;
224
+ }
225
+ };
226
+ Table = __decorate([
227
+ observer
228
+ ], Table);
229
+ export { Table };
230
+ const sanitizeExportFileName = memoizeOne((fileName) => fileName === null || fileName === void 0 ? void 0 : fileName.replace(/\.+/g, '_'));
231
+ //# sourceMappingURL=table.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table.js","sourceRoot":"","sources":["../src/table.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,OAAO,EACH,cAAc,EACd,SAAS,EACT,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,QAAQ,GAKX,MAAM,OAAO,CAAC;AACf,OAAO,EACH,YAAY,EACZ,KAAK,IAAI,UAAU,EAGnB,WAAW,GAOd,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,SAAS,IAAI,cAAc,EAAE,MAAM,kDAAkD,CAAC;AAC/F,OAAO,EAAE,aAAa,IAAI,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,eAAe,EAAU,MAAM,0BAA0B,CAAC;AAEnE,OAAO,EAEH,gBAAgB,EAChB,gBAAgB,GACnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,UAAU,MAAM,aAAa,CAAC;AAErC,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAE7C,MAAM,EAAE,IAAI,EAAE,aAAa,KAAmB,cAAc,EAA5B,SAAS,UAAK,cAAc,EAAtD,QAAqC,CAAiB,CAAC;AAC7D,SAAS,CAAC,IAAI,GAAG;IACb,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,KAAK,WAAW,CAAC;CACtF,CAAC;AAEF,SAAS,eAAe,CAKtB,OAAkB;IAChB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;QAC1B,OAAO,KAAK,CAAC;KAChB;IAED,MAAM,WAAW,GAAI,OAAwB,CAAC,IAAI,CAAC;IAEnD,OAAO,WAAW,KAAK,WAAW,IAAK,WAAmB,CAAC,YAAY,KAAK,WAAW,CAAC;AAC5F,CAAC;AAuDD,IAAa,KAAK,GAAlB,MAAa,KAKX,SAAQ,SAAqC;IAL/C;;QAMI;;;;mBAAqB,IAAI,CAAC,KAAK,CAAC,UAAU;WAAC;QAE3C;;;;mBAAc,SAAS,EAAe;WAAC;QAEvC;;;;;WAAsC;QAEtC;;;;mBAAoD,QAAQ,CAAC,CAAC,KAA0B,EAAE,EAAE,CAAC,CACzF,KAAC,gBAAgB,oBACT,KAAK,IACT,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,EAChE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,gBAAgB,IACtC,CACL,CAAC;WAAC;QAEH;;;;mBAAqD,QAAQ,CAAC,CAAC,KAA2B,EAAE,EAAE;gBAC1F,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,KAAK,QAAQ,EAAE;oBACzE,OAAO,IAAI,CAAC;iBACf;gBAED,OAAO,CACH,KAAC,gBAAgB,oBACT,KAAK,IACT,kBAAkB,EACd,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS;wBAC/B,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,sBAAsB;wBACxC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAE5C,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,gBAAgB,IACtC,CACL,CAAC;YACN,CAAC,CAAC;WAAC;QAEH,wDAAwD;QACxD;;;;mBAA6B,UAAU,CAAC,CAAC,QAAmB,EAAE,EAAE,CAC5D,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE;gBACnC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;gBAEpC,OAAO,YAAY,CAAC,MAAM,EAAE;oBACxB,IAAI,EACA,IAAI;wBACJ,CAAC,CAAC,KAAqC,EAAE,EAAE,CAAC,CACxC,KAAC,IAAI,oBAAK,KAAK,IAAE,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,CACnD,CAAC;iBACT,CAAC,CAAC;YACP,CAAC,CAAC,CACL;WAAC;QAEF;;;;mBAAY,CAAC,GAAiB,EAAE,QAAuB,EAAE,EAAE;gBACvD,MAAM,SAAS,GAAqB,EAAE,CAAC;gBAEvC,IACI,IAAI,CAAC,KAAK,CAAC,UAAU;oBACrB,QAAQ,CAAC,OAAO,KAAK,MAAM;oBAC3B,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,EACrD;oBACE,SAAS,CAAC,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;iBAC1E;gBAED,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAElF,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAClF,CAAC;WAAC;QAwBF;;;;mBAA8B,CAAC,EAAmC,EAAE,EAAE;gBAClE,MAAM,OAAO,GAAG,EAAE,CAAC,cAAc,CAAC,aAAa,CAAC,OAAO,CAAC;gBAExD,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE;oBACrC,IAAI,OAAO,EAAE;wBACT,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;qBAChC;yBAAM;wBACH,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;qBAClC;iBACJ;qBAAM;oBACH,IAAI,OAAO,EAAE;wBACT,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;qBAC/B;yBAAM;wBACH,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;qBACjC;iBACJ;YACL,CAAC;WAAC;QAEF;;;;mBAAwB,CAAC,EAA6B,EAAE,EAAE;;gBACtD,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE;oBACd,OAAO;iBACV;gBACD,IAAI,EAAE,CAAC,WAAW,CAAC,QAAQ,IAAI,IAAI,CAAC,aAAa,EAAE;oBAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU;yBACvB,cAAc,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC,QAAQ,CAAC;yBAC/C,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;oBACzD,MAAM,KAAK,GACP,CAAA,MAAA,MAAA,IAAI,CAAC,UAAU,CAAC,UAAU,0CAAE,UAAU,mDAAG,IAAI,CAAC,aAAa,CAAC;yBAC5D,MAAA,MAAA,IAAI,CAAC,UAAU,CAAC,UAAU,0CAAE,UAAU,mDAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA,CAAC;oBACtD,MAAM,SAAS,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAExC,IAAI,SAAS,EAAE;wBACX,MAAM,YAAY,GAAoB,EAAE,CAAC;wBACzC,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE;4BAC7C,IACI,IAAI,CAAC,UAAU,CAAC,aAAa,GAAG,YAAY,CAAC,MAAM;gCACnD,IAAI,CAAC,UAAU,CAAC,cAAc,EAChC;gCACE,MAAM;6BACT;4BAED,IAAI,GAAG,CAAC,QAAQ,EAAE;gCACd,SAAS;6BACZ;4BAED,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;yBAC1B;wBAED,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;qBAC7D;yBAAM;wBACH,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;qBACrD;iBACJ;qBAAM;oBACH,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;iBACnD;gBAED,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC,QAAQ,CAAC;YACrC,CAAC;WAAC;QAEF;;;;mBAAiB,GAAG,EAAE;gBAClB,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;oBAClB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,sBAAsB,CACrD,gBAAgB,CACnB,CAAC,CAAC,CAAmB,CAAC;oBACvB,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC,YAAY,GAAG,SAAS,CAAC,YAAY,GAAG,CAAC,CAAC;oBAC1E,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;iBACzE;YACL,CAAC;WAAC;QAiDF;;;;mBAAgB,GAAG,EAAE;gBACjB,MAAM,KAA8D,IAAI,CAAC,KAAK,EAAxE,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,KAAK,OAAyB,EAApB,KAAK,cAAzD,uDAA2D,CAAa,CAAC;gBAE/E,OAAO,CACH,MAAC,UAAU,kBACP,GAAG,EAAE,IAAI,CAAC,GAAG,IACT,KAAK,IACT,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAC/B,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,SAAS,EAAC,QAAQ,EAClB,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,EAC9B,eAAe,EAAE,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,SAAS,EAC7C,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAClD,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAA6B,EAC7D,aAAa,EAAE,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAChD,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAClD,WAAW,EAAC,UAAU,EACtB,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAC/B,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAC9C,uBAAuB,EAAE,IAAI,CAAC,2BAA2B,EACzD,iBAAiB,EAAE,IAAI,CAAC,qBAAqB,EAC7C,aAAa,EAAC,UAAU,EACxB,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,EAC5B,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,EAClC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,EAC1B,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAC9C,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,aAAa,EACpC,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,EAC9C,UAAU,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,iBAEpD,UAAU,IAAI,CACX,KAAC,WAAW,IACR,MAAM,QACN,KAAK,EAAC,UAAU,EAChB,KAAK,EAAC,MAAM,EACZ,UAAU,EAAE,KAAK,EACjB,SAAS,EAAE,KAAK,EAChB,oBAAoB,EAChB,KAAK,CAAC,UAAU,KAAK,SAAS;gCAC1B,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB;gCACvC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAE3C,UAAU,EAAE,IAAI,CAAC,gBAAgB,EACjC,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAC3B,eAAe,EAAC,oBAAoB,EACpC,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,EAAE,aAAa,CAAC,GACrE,CACL,EACA,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC,KAC/B,CAChB,CAAC;YACN,CAAC;WAAC;IACN,CAAC;IA9LG,cAAc,CACV,QAAmB,EACnB,WAEmD;QAEnD,OAAO,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE;YAClC,IAAI,CAAC,eAAe,CAAiB,KAAK,CAAC,EAAE;gBACzC,OAAO,KAAK,CAAC;aAChB;YAED,OAAO,KAAK,CAAC,KAAK,CAAC,QAAQ;gBACvB,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE;oBAC7B,QAAQ,EAAE,IAAI,CAAC,cAAc,CACzB,KAAK,CAAC,KAAK,CAAC,QAAQ,EACpB,WAAW,CACiB;iBACnC,CAAC;gBACJ,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACP,CAAC;IAuED,MAAM;QACF,IACI,IAAI,CAAC,UAAU,CAAC,UAAU,YAAY,eAAe;YACrD,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS;YACnC,IAAI,CAAC,KAAK,CAAC,UAAU,EACvB;YACE,OAAO,CACH,KAAC,YAAY,IACT,MAAM,EAAC,UAAU,EACjB,KAAK,EAAC,gEAAgE,GACxE,CACL,CAAC;SACL;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QAC3B,OAAO,CACH,MAAC,QAAQ,eACJ,KAAK,EACL,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CACtB,MAAC,QAAQ,eACL,MAAC,cAAc,kBACX,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,oBAAoB,EACzC,QAAQ,EAAE,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,iBAE1D,IAAI,CAAC,KAAK,CAAC,QAAQ,EACnB,KAAK,KACO,EACjB,KAAC,WAAW,kBACR,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,sBAAsB,EAC3C,QAAQ,EAAE,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,gBAE1D,IAAI,CAAC,KAAK,CAAC,QAAQ,IACV,IACP,CACd,IACM,CACd,CAAC;IACN,CAAC;IAEO,WAAW;;QACf,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;YAClE,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,MAAA,IAAI,CAAC,KAAK,CAAC,KAAK,mCAAI,IAAI,CAAC;IACpC,CAAC;CAsDJ,CAAA;AAnQY,KAAK;IADjB,QAAQ;GACI,KAAK,CAmQjB;SAnQY,KAAK;AAqQlB,MAAM,sBAAsB,GAAG,UAAU,CAAC,CAAC,QAA4B,EAAE,EAAE,CACvE,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CACjC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@servicetitan/table",
3
- "version": "22.1.0",
3
+ "version": "22.1.3",
4
4
  "description": "",
5
5
  "homepage": "https://docs.st.dev/docs/frontend/table",
6
6
  "repository": {
@@ -36,9 +36,9 @@
36
36
  "memoize-one": "~6.0.0"
37
37
  },
38
38
  "devDependencies": {
39
- "@servicetitan/data-query": "^22.1.0",
39
+ "@servicetitan/data-query": "^22.1.3",
40
40
  "@servicetitan/design-system": "~11.8.0",
41
- "@servicetitan/form": "^22.1.0",
41
+ "@servicetitan/form": "^22.1.3",
42
42
  "@servicetitan/react-ioc": "^21.6.0",
43
43
  "@servicetitan/suppress-warnings": "^21.6.0",
44
44
  "@types/accounting": "~0.4.2",
@@ -52,9 +52,9 @@
52
52
  "react": "~17.0.2"
53
53
  },
54
54
  "peerDependencies": {
55
- "@servicetitan/data-query": "^22.1.0",
55
+ "@servicetitan/data-query": "^22.1.3",
56
56
  "@servicetitan/design-system": "~11.8.0",
57
- "@servicetitan/form": "^22.1.0",
57
+ "@servicetitan/form": "^22.1.3",
58
58
  "@servicetitan/react-ioc": "^20.0.0",
59
59
  "@servicetitan/suppress-warnings": "^20.0.0",
60
60
  "accounting": "~0.4.1",
@@ -71,5 +71,5 @@
71
71
  "cli": {
72
72
  "webpack": false
73
73
  },
74
- "gitHead": "334ce0dc18294927da0751130f290c203c64d266"
74
+ "gitHead": "fedb27aae8e53d7e6da888025b8b15981a63b23d"
75
75
  }
@@ -1,11 +1,10 @@
1
- import { ComponentType, SyntheticEvent, FC, useCallback } from 'react';
1
+ import { ComponentType, SyntheticEvent, FC } from 'react';
2
2
  import {
3
3
  TableCellProps,
4
4
  TableHeaderCellProps,
5
5
  Checkbox,
6
6
  CheckboxProps,
7
7
  } from '@servicetitan/design-system';
8
- import classNames from 'classnames';
9
8
  import * as Styles from './select-cell.module.css';
10
9
 
11
10
  export type SelectionControlType = ComponentType<CheckboxProps<never>>;
@@ -33,60 +32,33 @@ export const SelectCell: FC<SelectCellProps> = ({
33
32
  control: Control = Checkbox,
34
33
  ...props
35
34
  }: SelectCellProps) => {
36
- const onChange = useCallback(
37
- (_0: never, _1: boolean, event: SyntheticEvent<HTMLInputElement>) => {
38
- if (!selectionChange) {
39
- return;
40
- }
41
- selectionChange({ syntheticEvent: event });
42
- },
43
- [selectionChange]
44
- );
35
+ const onChange = (_0: never, _1: boolean, event: SyntheticEvent<HTMLInputElement>) => {
36
+ if (!selectionChange) {
37
+ return;
38
+ }
39
+ selectionChange({ syntheticEvent: event });
40
+ };
45
41
 
46
42
  return <Control className={Styles.checkbox} onChange={onChange} {...props} />;
47
43
  };
48
44
 
49
- export const SelectColumnCell: FC<SelectColumnCellProps> = ({
50
- style,
51
- rowType,
52
- dataItem,
53
- control,
54
- isRowSelectable,
55
- selectionChange,
56
- className,
57
- }: SelectColumnCellProps) => {
58
- const onSelectionChange = useCallback(
59
- (event: SyntheticEvent<HTMLTableCellElement>) => {
60
- if (isRowSelectable && selectionChange) {
61
- selectionChange({ syntheticEvent: event });
62
- }
63
- },
64
- [selectionChange, isRowSelectable]
65
- );
66
-
67
- if (rowType === 'groupHeader') {
45
+ export const SelectColumnCell: FC<SelectColumnCellProps> = (props: SelectColumnCellProps) => {
46
+ if (props.rowType === 'groupHeader') {
68
47
  return null;
69
48
  }
70
49
 
71
- if (rowType === 'groupFooter') {
50
+ if (props.rowType === 'groupFooter') {
72
51
  return <td />;
73
52
  }
74
53
 
75
54
  return (
76
- <td
77
- style={style}
78
- className={classNames(
79
- isRowSelectable && selectionChange && 'cursor-pointer',
80
- className
81
- )}
82
- onClick={onSelectionChange}
83
- >
55
+ <td style={props.style} className={props.className}>
84
56
  <SelectCell
85
- checked={dataItem.selected}
86
- disabled={!isRowSelectable}
87
- selectionChange={selectionChange}
88
- indeterminate={dataItem.indeterminate}
89
- control={control}
57
+ checked={props.dataItem.selected}
58
+ disabled={!props.isRowSelectable}
59
+ selectionChange={props.selectionChange}
60
+ indeterminate={props.dataItem.indeterminate}
61
+ control={props.control}
90
62
  />
91
63
  </td>
92
64
  );