@elliemae/ds-data-table 2.4.3-rc.8 → 2.4.4-rc.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 (38) hide show
  1. package/cjs/addons/Columns/ColumnExpand/ColumnExpand.js +27 -13
  2. package/cjs/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js +1 -1
  3. package/cjs/addons/Editables/DateEditableCell/DateEditableCell.js +1 -1
  4. package/cjs/addons/Editables/TextEditableCell/TextEditableCell.js +1 -1
  5. package/cjs/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +8 -6
  6. package/cjs/addons/Filters/Components/SelectFilter/MultiSelectFilter.js +1 -1
  7. package/cjs/addons/Filters/Components/SelectFilter/SingleSelectFilter.js +1 -1
  8. package/cjs/exported-related/FilterPopover.js +29 -27
  9. package/cjs/exported-related/RowRenderer/DefaultRowContentRenderer.js +9 -2
  10. package/cjs/exported-related/RowRenderer/useRowRendererHandlers.js +25 -7
  11. package/cjs/parts/Cells/Cell.js +3 -2
  12. package/cjs/parts/FilterBar/FiltersBar.js +7 -7
  13. package/cjs/parts/Filters/index.js +1 -1
  14. package/cjs/parts/Headers/HeaderCellGroup.js +3 -2
  15. package/cjs/parts/Headers/HeaderResizer.js +1 -1
  16. package/cjs/parts/Row.js +17 -1
  17. package/cjs/parts/RowVariants/index.js +1 -1
  18. package/cjs/styled.js +16 -21
  19. package/esm/addons/Columns/ColumnExpand/ColumnExpand.js +28 -14
  20. package/esm/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js +1 -1
  21. package/esm/addons/Editables/DateEditableCell/DateEditableCell.js +1 -1
  22. package/esm/addons/Editables/TextEditableCell/TextEditableCell.js +1 -1
  23. package/esm/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +8 -6
  24. package/esm/addons/Filters/Components/SelectFilter/MultiSelectFilter.js +1 -1
  25. package/esm/addons/Filters/Components/SelectFilter/SingleSelectFilter.js +1 -1
  26. package/esm/exported-related/FilterPopover.js +30 -28
  27. package/esm/exported-related/RowRenderer/DefaultRowContentRenderer.js +10 -3
  28. package/esm/exported-related/RowRenderer/useRowRendererHandlers.js +25 -7
  29. package/esm/parts/Cells/Cell.js +3 -2
  30. package/esm/parts/FilterBar/FiltersBar.js +7 -7
  31. package/esm/parts/Filters/index.js +1 -1
  32. package/esm/parts/Headers/HeaderCellGroup.js +3 -2
  33. package/esm/parts/Headers/HeaderResizer.js +1 -1
  34. package/esm/parts/Row.js +17 -1
  35. package/esm/parts/RowVariants/index.js +1 -1
  36. package/esm/styled.js +16 -21
  37. package/package.json +19 -19
  38. package/types/types/props.d.ts +1 -0
package/esm/parts/Row.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import _jsx from '@babel/runtime/helpers/esm/jsx';
2
2
  import { useContext } from 'react';
3
3
  import { connect } from 'react-redux';
4
+ import { styled } from '@elliemae/ds-system';
4
5
  import DataTableContext from '../DataTableContext.js';
5
6
  import 'core-js/modules/esnext.async-iterator.for-each.js';
6
7
  import 'core-js/modules/esnext.iterator.constructor.js';
@@ -21,6 +22,15 @@ const setItemRefs = (measureRef, draggableRef, ref) => {
21
22
  setMultipleRefs(...refsToSet)(ref);
22
23
  };
23
24
 
25
+ const StyledRow = styled('div')`
26
+ cursor: ${_ref => {
27
+ let {
28
+ disabled
29
+ } = _ref;
30
+ return disabled ? 'not-allowed' : 'normal';
31
+ }};
32
+ `;
33
+
24
34
  const RowComp = props => {
25
35
  const {
26
36
  row,
@@ -31,11 +41,17 @@ const RowComp = props => {
31
41
  selectedRowId
32
42
  } = props;
33
43
  const ctx = useContext(DataTableContext);
44
+ const {
45
+ tableProps: {
46
+ disabledRows
47
+ }
48
+ } = ctx;
34
49
  const {
35
50
  draggableProps
36
51
  } = useContext(SortableItemContext);
37
52
  const draggableRef = draggableProps && draggableProps.setNodeRef;
38
- return /*#__PURE__*/jsx("div", {
53
+ return /*#__PURE__*/jsx(StyledRow, {
54
+ disabled: disabledRows[row.uid],
39
55
  style: !isDragOverlay ? itemWrapperStyle : {},
40
56
  ref: ref => setItemRefs(measureRef, draggableRef, ref),
41
57
  children: /*#__PURE__*/_jsx(RowVariantMapItem, {
@@ -12,9 +12,9 @@ import '@elliemae/ds-popperjs';
12
12
  import 'styled-components';
13
13
  import '../../redux/reducers/index.js';
14
14
  import '../../configs/constants.js';
15
- import { jsx } from 'react/jsx-runtime';
16
15
  import '../../styled.js';
17
16
  import '../../DataTableContext.js';
17
+ import { jsx } from 'react/jsx-runtime';
18
18
  import '@elliemae/ds-icons';
19
19
  import '@elliemae/ds-utilities';
20
20
  import 'core-js/modules/esnext.async-iterator.reduce.js';
package/esm/styled.js CHANGED
@@ -148,13 +148,7 @@ const StyledHeaderRightIconsWrapper = /*#__PURE__*/styled.div.withConfig({
148
148
  })(["height:100%;display:flex;align-items:center;max-height:24px;"]);
149
149
  const StyledResizer = /*#__PURE__*/styled.div.withConfig({
150
150
  componentId: "sc-38sgfo-10"
151
- })(["display:inline-block;background:", ";width:4px;height:100%;position:absolute;right:0;top:0;z-index:1;touch-action:none;cursor:col-resize;"], _ref7 => {
152
- let {
153
- isResizing,
154
- theme
155
- } = _ref7;
156
- return isResizing ? theme.colors.brand[600] : theme.colors.brand[400];
157
- }); // CELL ***********************************************************************/
151
+ })(["display:inline-block;background:transparent;width:4px;height:100%;position:absolute;right:0;top:0;z-index:1;touch-action:none;cursor:col-resize;"]); // CELL ***********************************************************************/
158
152
 
159
153
  const StyledActionCell = /*#__PURE__*/styled.div.withConfig({
160
154
  componentId: "sc-38sgfo-11"
@@ -170,10 +164,10 @@ const StyledPencilIcon = /*#__PURE__*/styled(EditPencil).withConfig({
170
164
  })([""]);
171
165
  const StyledEditableContainer = /*#__PURE__*/styled(Grid).withConfig({
172
166
  componentId: "sc-38sgfo-15"
173
- })(["width:100%;height:100%;align-items:center;& ", "{display:", ";}&:hover{", "{display:block;}}&:focus{", " ", "{display:block;}}outline:none;"], StyledPencilIcon, _ref8 => {
167
+ })(["width:100%;height:100%;align-items:center;& ", "{display:", ";}&:hover{", "{display:block;}}&:focus{", " ", "{display:block;}}outline:none;"], StyledPencilIcon, _ref7 => {
174
168
  let {
175
169
  shouldDisplayEditIcon
176
- } = _ref8;
170
+ } = _ref7;
177
171
  return shouldDisplayEditIcon ? 'block' : 'none';
178
172
  }, StyledPencilIcon, styledFocusCss, StyledPencilIcon); // ROW ************************************************************************/
179
173
 
@@ -182,15 +176,15 @@ const StyledFullsizeGrid = /*#__PURE__*/styled(Grid).withConfig({
182
176
  })(["position:relative;z-index:", ";min-height:", ";height:", ";"], ZIndexDataTable.ROW, props => props.minHeight || '36px', props => props.height || 'auto');
183
177
  const GroupHeaderContainer = /*#__PURE__*/styled(Grid).withConfig({
184
178
  componentId: "sc-38sgfo-17"
185
- })(["position:relative;background-color:", ";align-items:center;padding:0 ", ";border-top:1px solid ", ";grid-template-columns:min-content 1fr;"], _ref9 => {
179
+ })(["position:relative;background-color:", ";align-items:center;padding:0 ", ";border-top:1px solid ", ";grid-template-columns:min-content 1fr;"], _ref8 => {
186
180
  let {
187
181
  theme
188
- } = _ref9;
182
+ } = _ref8;
189
183
  return theme.colors.brand[200];
190
- }, props => props.padding, _ref10 => {
184
+ }, props => props.padding, _ref9 => {
191
185
  let {
192
186
  theme
193
- } = _ref10;
187
+ } = _ref9;
194
188
  return theme.colors.brand[300];
195
189
  });
196
190
  const GroupHeaderTitle = /*#__PURE__*/styled.span.withConfig({
@@ -202,28 +196,29 @@ const StyledCellContainer = /*#__PURE__*/styled(Grid).withConfig({
202
196
  cols: props.cols,
203
197
  colsLayoutStyle: props.colLayoutStyle,
204
198
  isExpandable: props.isExpandable
205
- }), _ref11 => {
199
+ }), _ref10 => {
206
200
  let {
207
201
  backgroundColor,
208
202
  isDragging,
209
203
  theme
210
- } = _ref11;
204
+ } = _ref10;
211
205
  return isDragging ? theme.colors.neutral[100] : backgroundColor || 'white';
212
- }, props => props.isDragOverlay ? '' : styledFocusCss(props), _ref12 => {
206
+ }, props => props.isDragOverlay ? '' : styledFocusCss(props), _ref11 => {
213
207
  let {
214
208
  isDropIndicatorPositionInside,
215
209
  theme
216
- } = _ref12;
210
+ } = _ref11;
217
211
  if (!isDropIndicatorPositionInside) return '';
218
212
  return styledFocusCss({
219
213
  theme
220
214
  });
221
- }, _ref13 => {
215
+ }, _ref12 => {
222
216
  let {
223
217
  shouldDisplayHover,
224
- theme
225
- } = _ref13;
226
- return shouldDisplayHover ? `:hover {
218
+ theme,
219
+ disabled
220
+ } = _ref12;
221
+ return shouldDisplayHover && !disabled ? `:hover {
227
222
  background-color: ${theme.colors.brand[200]};
228
223
  }` : '';
229
224
  }, props => props.isDragOverlay ? 'rgba(0,0,0,0.5)' : 'transparent', props => props.isDragging ? 0.8 : 1, props => !props.selected ? '' : `
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliemae/ds-data-table",
3
- "version": "2.4.3-rc.8",
3
+ "version": "2.4.4-rc.0",
4
4
  "license": "MIT",
5
5
  "description": "ICE MT - Dimsum - Data Table",
6
6
  "module": "./esm/index.js",
@@ -570,24 +570,24 @@
570
570
  "dependencies": {
571
571
  "@dnd-kit/core": "~4.0.1",
572
572
  "@dnd-kit/sortable": "~5.0.0",
573
- "@elliemae/ds-button": "2.4.3-rc.8",
574
- "@elliemae/ds-circular-progress-indicator": "2.4.3-rc.8",
575
- "@elliemae/ds-controlled-form": "2.4.3-rc.8",
576
- "@elliemae/ds-drag-and-drop": "2.4.3-rc.8",
577
- "@elliemae/ds-dropdownmenu": "2.4.3-rc.8",
578
- "@elliemae/ds-form": "2.4.3-rc.8",
579
- "@elliemae/ds-form-layout-blocks": "2.4.3-rc.8",
580
- "@elliemae/ds-grid": "2.4.3-rc.8",
581
- "@elliemae/ds-icons": "2.4.3-rc.8",
582
- "@elliemae/ds-indeterminate-progress-indicator": "2.4.3-rc.8",
583
- "@elliemae/ds-pagination": "2.4.3-rc.8",
584
- "@elliemae/ds-pills": "2.4.3-rc.8",
585
- "@elliemae/ds-popperjs": "2.4.3-rc.8",
586
- "@elliemae/ds-props-helpers": "2.4.3-rc.8",
587
- "@elliemae/ds-system": "2.4.3-rc.8",
588
- "@elliemae/ds-toolbar": "2.4.3-rc.8",
589
- "@elliemae/ds-truncated-tooltip-text": "2.4.3-rc.8",
590
- "@elliemae/ds-utilities": "2.4.3-rc.8",
573
+ "@elliemae/ds-button": "2.4.4-rc.0",
574
+ "@elliemae/ds-circular-progress-indicator": "2.4.4-rc.0",
575
+ "@elliemae/ds-controlled-form": "2.4.4-rc.0",
576
+ "@elliemae/ds-drag-and-drop": "2.4.4-rc.0",
577
+ "@elliemae/ds-dropdownmenu": "2.4.4-rc.0",
578
+ "@elliemae/ds-form": "2.4.4-rc.0",
579
+ "@elliemae/ds-form-layout-blocks": "2.4.4-rc.0",
580
+ "@elliemae/ds-grid": "2.4.4-rc.0",
581
+ "@elliemae/ds-icons": "2.4.4-rc.0",
582
+ "@elliemae/ds-indeterminate-progress-indicator": "2.4.4-rc.0",
583
+ "@elliemae/ds-pagination": "2.4.4-rc.0",
584
+ "@elliemae/ds-pills": "2.4.4-rc.0",
585
+ "@elliemae/ds-popperjs": "2.4.4-rc.0",
586
+ "@elliemae/ds-props-helpers": "2.4.4-rc.0",
587
+ "@elliemae/ds-system": "2.4.4-rc.0",
588
+ "@elliemae/ds-toolbar": "2.4.4-rc.0",
589
+ "@elliemae/ds-truncated-tooltip-text": "2.4.4-rc.0",
590
+ "@elliemae/ds-utilities": "2.4.4-rc.0",
591
591
  "@reduxjs/toolkit": "~1.6.2",
592
592
  "csstype": "~3.0.9",
593
593
  "moment": "~2.29.1",
@@ -14,6 +14,7 @@ export declare type TypescriptColumn = {
14
14
  accessor?: string;
15
15
  filter?: string;
16
16
  filterOptions?: FilterOptionT[] | (() => FilterOptionT[]);
17
+ filterMinWidth?: number | string;
17
18
  Filter?: React.ComponentType<FilterProps>;
18
19
  Cell?: React.ComponentType<any>;
19
20
  editable?: string | TypescriptGenericFunc;