@procore/data-table 14.22.0 → 14.23.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # Change Log
2
2
 
3
+ ## 14.23.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 69c83222d0: register sparklines module
8
+
9
+ ### Patch Changes
10
+
11
+ - 7dcbd97966: Fix issue with hide/show column persisting from context menu
12
+
13
+ ## 14.22.1
14
+
15
+ ### Patch Changes
16
+
17
+ - b045b8186e: Prevent de-sync of row selection ref from table api when rowSelectionEnabled is changed
18
+
3
19
  ## 14.22.0
4
20
 
5
21
  ### Minor Changes
@@ -14,6 +14,7 @@ var ulid$1 = require('ulid');
14
14
  var toastAlert = require('@procore/toast-alert');
15
15
  var ReactDOM = require('react-dom');
16
16
  var server = require('react-dom/server');
17
+ var sparklines = require('@ag-grid-enterprise/sparklines');
17
18
  var webSdkStorage = require('@procore/web-sdk-storage');
18
19
  var _isEqual = require('lodash.isequal');
19
20
  var ReactResizeDetector = require('react-resize-detector');
@@ -56505,6 +56506,7 @@ var getMainMenuItems = (props, I18n) => {
56505
56506
  value: "hideColumn",
56506
56507
  action() {
56507
56508
  props.columnApi.setColumnVisible(props.column, false);
56509
+ props.onTableConfigChange();
56508
56510
  }
56509
56511
  });
56510
56512
  }
@@ -56783,12 +56785,16 @@ var GenericHeaderRenderer = (props) => {
56783
56785
  columnApi,
56784
56786
  tableRef,
56785
56787
  onServerSideDataRequest,
56786
- showExpandCollapseAllToggle
56788
+ showExpandCollapseAllToggle,
56789
+ onTableConfigChange
56787
56790
  } = useInternalTableContext();
56788
56791
  const onSSDR = Boolean(onServerSideDataRequest);
56789
56792
  const [sortOrder, setSortOrder] = React77__default.default.useState(props.column.getSort());
56790
56793
  const [isFirstColumn2, setIsFirstColumn] = React77__default.default.useState(false);
56791
- const defaultMenuOptions = getMainMenuItems(props, I18n);
56794
+ const defaultMenuOptions = getMainMenuItems(
56795
+ { ...props, onTableConfigChange },
56796
+ I18n
56797
+ );
56792
56798
  const headerCellRef = React77.useRef(null);
56793
56799
  const headerCheckboxSelection = colDef.headerCheckboxSelection;
56794
56800
  const headerCheckboxSelectionEnabled = typeof headerCheckboxSelection === "function" ? headerCheckboxSelection({
@@ -82985,7 +82991,7 @@ var Table = (props) => {
82985
82991
  }, [isRowSelectable]);
82986
82992
  React77__default.default.useEffect(() => {
82987
82993
  rowSelectionRef.current = {
82988
- affectedRows: {},
82994
+ affectedRows: (rowSelectionRef == null ? void 0 : rowSelectionRef.current.affectedRows) ?? {},
82989
82995
  enabled: props.rowSelectionEnabled,
82990
82996
  getRowId: internalTableContext.getRowId,
82991
82997
  siblingGroupsRowDisabled: props.siblingGroupsRowSelectionDisabled
@@ -83084,7 +83090,8 @@ var Table = (props) => {
83084
83090
  RowGroupingModule,
83085
83091
  SetFilterModule,
83086
83092
  CsvExportModule,
83087
- ExcelExportModule
83093
+ ExcelExportModule,
83094
+ sparklines.SparklinesModule
83088
83095
  ],
83089
83096
  noRowsOverlayComponent: "emptyStateRenderer",
83090
83097
  noRowsOverlayComponentParams: {
@@ -475,7 +475,7 @@ interface ColumnDefinition<TValue = any, TRenderer = React.FC<ICellRendererParam
475
475
  cellCSVFormatter?: (value: TValue) => string;
476
476
  cellExcelFormatter?: (value: TValue) => string;
477
477
  cellExcelDataType?: string;
478
- cellRenderer?: TRenderer;
478
+ cellRenderer?: TRenderer | 'agSparklineCellRenderer';
479
479
  cellRendererParams?: TRendererParams;
480
480
  cellRendererSelector?: (params?: ICellRendererParams) => {
481
481
  component: TRenderer;
@@ -475,7 +475,7 @@ interface ColumnDefinition<TValue = any, TRenderer = React.FC<ICellRendererParam
475
475
  cellCSVFormatter?: (value: TValue) => string;
476
476
  cellExcelFormatter?: (value: TValue) => string;
477
477
  cellExcelDataType?: string;
478
- cellRenderer?: TRenderer;
478
+ cellRenderer?: TRenderer | 'agSparklineCellRenderer';
479
479
  cellRendererParams?: TRendererParams;
480
480
  cellRendererSelector?: (params?: ICellRendererParams) => {
481
481
  component: TRenderer;
@@ -12,6 +12,7 @@ import { detectPrng, factory } from 'ulid';
12
12
  import { useToastAlertContext, ToastAlertProvider } from '@procore/toast-alert';
13
13
  import ReactDOM, { createPortal } from 'react-dom';
14
14
  import { renderToString, renderToStaticMarkup } from 'react-dom/server';
15
+ import { SparklinesModule } from '@ag-grid-enterprise/sparklines';
15
16
  import { storage } from '@procore/web-sdk-storage';
16
17
  import _isEqual from 'lodash.isequal';
17
18
  import ReactResizeDetector from 'react-resize-detector';
@@ -56491,6 +56492,7 @@ var getMainMenuItems = (props, I18n) => {
56491
56492
  value: "hideColumn",
56492
56493
  action() {
56493
56494
  props.columnApi.setColumnVisible(props.column, false);
56495
+ props.onTableConfigChange();
56494
56496
  }
56495
56497
  });
56496
56498
  }
@@ -56769,12 +56771,16 @@ var GenericHeaderRenderer = (props) => {
56769
56771
  columnApi,
56770
56772
  tableRef,
56771
56773
  onServerSideDataRequest,
56772
- showExpandCollapseAllToggle
56774
+ showExpandCollapseAllToggle,
56775
+ onTableConfigChange
56773
56776
  } = useInternalTableContext();
56774
56777
  const onSSDR = Boolean(onServerSideDataRequest);
56775
56778
  const [sortOrder, setSortOrder] = React77.useState(props.column.getSort());
56776
56779
  const [isFirstColumn2, setIsFirstColumn] = React77.useState(false);
56777
- const defaultMenuOptions = getMainMenuItems(props, I18n);
56780
+ const defaultMenuOptions = getMainMenuItems(
56781
+ { ...props, onTableConfigChange },
56782
+ I18n
56783
+ );
56778
56784
  const headerCellRef = useRef(null);
56779
56785
  const headerCheckboxSelection = colDef.headerCheckboxSelection;
56780
56786
  const headerCheckboxSelectionEnabled = typeof headerCheckboxSelection === "function" ? headerCheckboxSelection({
@@ -82971,7 +82977,7 @@ var Table = (props) => {
82971
82977
  }, [isRowSelectable]);
82972
82978
  React77.useEffect(() => {
82973
82979
  rowSelectionRef.current = {
82974
- affectedRows: {},
82980
+ affectedRows: (rowSelectionRef == null ? void 0 : rowSelectionRef.current.affectedRows) ?? {},
82975
82981
  enabled: props.rowSelectionEnabled,
82976
82982
  getRowId: internalTableContext.getRowId,
82977
82983
  siblingGroupsRowDisabled: props.siblingGroupsRowSelectionDisabled
@@ -83070,7 +83076,8 @@ var Table = (props) => {
83070
83076
  RowGroupingModule,
83071
83077
  SetFilterModule,
83072
83078
  CsvExportModule,
83073
- ExcelExportModule
83079
+ ExcelExportModule,
83080
+ SparklinesModule
83074
83081
  ],
83075
83082
  noRowsOverlayComponent: "emptyStateRenderer",
83076
83083
  noRowsOverlayComponentParams: {
@@ -14,6 +14,7 @@ var ulid$1 = require('ulid');
14
14
  var toastAlert = require('@procore/toast-alert');
15
15
  var ReactDOM = require('react-dom');
16
16
  var server = require('react-dom/server');
17
+ var sparklines = require('@ag-grid-enterprise/sparklines');
17
18
  var webSdkStorage = require('@procore/web-sdk-storage');
18
19
  var _isEqual = require('lodash.isequal');
19
20
  var ReactResizeDetector = require('react-resize-detector');
@@ -56411,6 +56412,7 @@ var getMainMenuItems = (props, I18n) => {
56411
56412
  value: "hideColumn",
56412
56413
  action() {
56413
56414
  props.columnApi.setColumnVisible(props.column, false);
56415
+ props.onTableConfigChange();
56414
56416
  }
56415
56417
  });
56416
56418
  }
@@ -56687,12 +56689,16 @@ var GenericHeaderRenderer = (props) => {
56687
56689
  columnApi,
56688
56690
  tableRef,
56689
56691
  onServerSideDataRequest,
56690
- showExpandCollapseAllToggle
56692
+ showExpandCollapseAllToggle,
56693
+ onTableConfigChange
56691
56694
  } = useInternalTableContext();
56692
56695
  const onSSDR = Boolean(onServerSideDataRequest);
56693
56696
  const [sortOrder, setSortOrder] = React77__default.default.useState(props.column.getSort());
56694
56697
  const [isFirstColumn2, setIsFirstColumn] = React77__default.default.useState(false);
56695
- const defaultMenuOptions = getMainMenuItems(props, I18n);
56698
+ const defaultMenuOptions = getMainMenuItems(
56699
+ { ...props, onTableConfigChange },
56700
+ I18n
56701
+ );
56696
56702
  const headerCellRef = React77.useRef(null);
56697
56703
  const headerCheckboxSelection = colDef.headerCheckboxSelection;
56698
56704
  const headerCheckboxSelectionEnabled = typeof headerCheckboxSelection === "function" ? headerCheckboxSelection({
@@ -82773,7 +82779,7 @@ var Table = (props) => {
82773
82779
  }, [isRowSelectable]);
82774
82780
  React77__default.default.useEffect(() => {
82775
82781
  rowSelectionRef.current = {
82776
- affectedRows: {},
82782
+ affectedRows: rowSelectionRef?.current.affectedRows ?? {},
82777
82783
  enabled: props.rowSelectionEnabled,
82778
82784
  getRowId: internalTableContext.getRowId,
82779
82785
  siblingGroupsRowDisabled: props.siblingGroupsRowSelectionDisabled
@@ -82872,7 +82878,8 @@ var Table = (props) => {
82872
82878
  RowGroupingModule,
82873
82879
  SetFilterModule,
82874
82880
  CsvExportModule,
82875
- ExcelExportModule
82881
+ ExcelExportModule,
82882
+ sparklines.SparklinesModule
82876
82883
  ],
82877
82884
  noRowsOverlayComponent: "emptyStateRenderer",
82878
82885
  noRowsOverlayComponentParams: {
@@ -475,7 +475,7 @@ interface ColumnDefinition<TValue = any, TRenderer = React.FC<ICellRendererParam
475
475
  cellCSVFormatter?: (value: TValue) => string;
476
476
  cellExcelFormatter?: (value: TValue) => string;
477
477
  cellExcelDataType?: string;
478
- cellRenderer?: TRenderer;
478
+ cellRenderer?: TRenderer | 'agSparklineCellRenderer';
479
479
  cellRendererParams?: TRendererParams;
480
480
  cellRendererSelector?: (params?: ICellRendererParams) => {
481
481
  component: TRenderer;
@@ -475,7 +475,7 @@ interface ColumnDefinition<TValue = any, TRenderer = React.FC<ICellRendererParam
475
475
  cellCSVFormatter?: (value: TValue) => string;
476
476
  cellExcelFormatter?: (value: TValue) => string;
477
477
  cellExcelDataType?: string;
478
- cellRenderer?: TRenderer;
478
+ cellRenderer?: TRenderer | 'agSparklineCellRenderer';
479
479
  cellRendererParams?: TRendererParams;
480
480
  cellRendererSelector?: (params?: ICellRendererParams) => {
481
481
  component: TRenderer;
@@ -12,6 +12,7 @@ import { detectPrng, factory } from 'ulid';
12
12
  import { useToastAlertContext, ToastAlertProvider } from '@procore/toast-alert';
13
13
  import ReactDOM, { createPortal } from 'react-dom';
14
14
  import { renderToString, renderToStaticMarkup } from 'react-dom/server';
15
+ import { SparklinesModule } from '@ag-grid-enterprise/sparklines';
15
16
  import { storage } from '@procore/web-sdk-storage';
16
17
  import _isEqual from 'lodash.isequal';
17
18
  import ReactResizeDetector from 'react-resize-detector';
@@ -56397,6 +56398,7 @@ var getMainMenuItems = (props, I18n) => {
56397
56398
  value: "hideColumn",
56398
56399
  action() {
56399
56400
  props.columnApi.setColumnVisible(props.column, false);
56401
+ props.onTableConfigChange();
56400
56402
  }
56401
56403
  });
56402
56404
  }
@@ -56673,12 +56675,16 @@ var GenericHeaderRenderer = (props) => {
56673
56675
  columnApi,
56674
56676
  tableRef,
56675
56677
  onServerSideDataRequest,
56676
- showExpandCollapseAllToggle
56678
+ showExpandCollapseAllToggle,
56679
+ onTableConfigChange
56677
56680
  } = useInternalTableContext();
56678
56681
  const onSSDR = Boolean(onServerSideDataRequest);
56679
56682
  const [sortOrder, setSortOrder] = React77.useState(props.column.getSort());
56680
56683
  const [isFirstColumn2, setIsFirstColumn] = React77.useState(false);
56681
- const defaultMenuOptions = getMainMenuItems(props, I18n);
56684
+ const defaultMenuOptions = getMainMenuItems(
56685
+ { ...props, onTableConfigChange },
56686
+ I18n
56687
+ );
56682
56688
  const headerCellRef = useRef(null);
56683
56689
  const headerCheckboxSelection = colDef.headerCheckboxSelection;
56684
56690
  const headerCheckboxSelectionEnabled = typeof headerCheckboxSelection === "function" ? headerCheckboxSelection({
@@ -82759,7 +82765,7 @@ var Table = (props) => {
82759
82765
  }, [isRowSelectable]);
82760
82766
  React77.useEffect(() => {
82761
82767
  rowSelectionRef.current = {
82762
- affectedRows: {},
82768
+ affectedRows: rowSelectionRef?.current.affectedRows ?? {},
82763
82769
  enabled: props.rowSelectionEnabled,
82764
82770
  getRowId: internalTableContext.getRowId,
82765
82771
  siblingGroupsRowDisabled: props.siblingGroupsRowSelectionDisabled
@@ -82858,7 +82864,8 @@ var Table = (props) => {
82858
82864
  RowGroupingModule,
82859
82865
  SetFilterModule,
82860
82866
  CsvExportModule,
82861
- ExcelExportModule
82867
+ ExcelExportModule,
82868
+ SparklinesModule
82862
82869
  ],
82863
82870
  noRowsOverlayComponent: "emptyStateRenderer",
82864
82871
  noRowsOverlayComponentParams: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@procore/data-table",
3
- "version": "14.22.0",
3
+ "version": "14.23.0",
4
4
  "description": "Complex data grid built on top of ag-grid, with DST components and styles.",
5
5
  "type": "module",
6
6
  "main": "dist/legacy/index.cjs",
@@ -79,6 +79,7 @@
79
79
  "styled-components": ">= 5.1.1 < 6"
80
80
  },
81
81
  "dependencies": {
82
+ "@ag-grid-enterprise/sparklines": "30.1.0",
82
83
  "@procore/labs-datetime-select": "0.1.1",
83
84
  "@procore/labs-group-by-select": "4.0.0",
84
85
  "@procore/toast-alert": "5.1.0",
@@ -111,7 +112,7 @@
111
112
  "@procore/core-css": "10.17.0",
112
113
  "@procore/core-icons": "12.2.0",
113
114
  "@procore/core-prettier": "10.2.0",
114
- "@procore/core-react": "12.16.1",
115
+ "@procore/core-react": "12.17.0",
115
116
  "@procore/eslint-config": "10.0.0",
116
117
  "@procore/globalization-toolkit": "3.1.0",
117
118
  "@procore/labs-financials-utils": "3.0.1",