@procore/data-table 14.24.0 → 14.25.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 +11 -0
- package/dist/legacy/index.cjs +173 -137
- package/dist/legacy/index.js +170 -133
- package/dist/modern/index.cjs +173 -137
- package/dist/modern/index.js +170 -133
- package/package.json +3 -3
package/dist/legacy/index.js
CHANGED
|
@@ -7,6 +7,7 @@ import { Error as Error$1, Grip, Pencil, Building, ExternalLink, Clear, Calendar
|
|
|
7
7
|
import classNames from 'classnames';
|
|
8
8
|
import { isDate, parseISO, isSameDay, formatISO, isBefore } from 'date-fns';
|
|
9
9
|
import { formatNumber, formatCurrency, formatPercentage } from '@procore/labs-financials-utils';
|
|
10
|
+
import styled4, { css as css$1 } from 'styled-components';
|
|
10
11
|
import { format } from '@procore/labs-financials-utils/dist/format';
|
|
11
12
|
import { detectPrng, factory } from 'ulid';
|
|
12
13
|
import { useToastAlertContext, ToastAlertProvider } from '@procore/toast-alert';
|
|
@@ -14,10 +15,9 @@ import ReactDOM, { createPortal } from 'react-dom';
|
|
|
14
15
|
import { renderToString, renderToStaticMarkup } from 'react-dom/server';
|
|
15
16
|
import { storage } from '@procore/web-sdk-storage';
|
|
16
17
|
import _isEqual from 'lodash.isequal';
|
|
17
|
-
import
|
|
18
|
+
import { useResizeDetector } from 'react-resize-detector';
|
|
18
19
|
import { DateTimeSelectField } from '@procore/labs-datetime-select';
|
|
19
20
|
import Decimal from 'decimal.js';
|
|
20
|
-
import styled3, { css as css$1 } from 'styled-components';
|
|
21
21
|
import { getDatePlaceholder } from '@procore/globalization-toolkit';
|
|
22
22
|
import { GroupBySelect } from '@procore/labs-group-by-select';
|
|
23
23
|
|
|
@@ -8675,6 +8675,9 @@ function getDateObject(date) {
|
|
|
8675
8675
|
}
|
|
8676
8676
|
return date;
|
|
8677
8677
|
}
|
|
8678
|
+
var StyledDateSelect = styled4(DateSelect)`
|
|
8679
|
+
background-color: #ffffff;
|
|
8680
|
+
`;
|
|
8678
8681
|
var DateCellValue = ({
|
|
8679
8682
|
columnDefinition,
|
|
8680
8683
|
isGroup,
|
|
@@ -8725,7 +8728,7 @@ var Editor2 = React77.forwardRef(
|
|
|
8725
8728
|
timeZone: (_a = columnDefinition.cellEditorParams) == null ? void 0 : _a.timeZone
|
|
8726
8729
|
},
|
|
8727
8730
|
/* @__PURE__ */ React77.createElement(
|
|
8728
|
-
|
|
8731
|
+
StyledDateSelect,
|
|
8729
8732
|
{
|
|
8730
8733
|
afterHide,
|
|
8731
8734
|
className: cx4("input-cell"),
|
|
@@ -56571,7 +56574,6 @@ var getMainMenuItems = (props, I18n) => {
|
|
|
56571
56574
|
}),
|
|
56572
56575
|
value: "rowUnGroup",
|
|
56573
56576
|
action() {
|
|
56574
|
-
props.columnApi.resetColumnState();
|
|
56575
56577
|
props.columnApi.removeRowGroupColumn(props.column);
|
|
56576
56578
|
}
|
|
56577
56579
|
};
|
|
@@ -56581,7 +56583,6 @@ var getMainMenuItems = (props, I18n) => {
|
|
|
56581
56583
|
}),
|
|
56582
56584
|
value: "rowGroup",
|
|
56583
56585
|
action() {
|
|
56584
|
-
props.columnApi.resetColumnState();
|
|
56585
56586
|
props.columnApi.addRowGroupColumn(props.column);
|
|
56586
56587
|
}
|
|
56587
56588
|
};
|
|
@@ -56839,8 +56840,18 @@ var GenericHeaderRenderer = (props) => {
|
|
|
56839
56840
|
const onSSDR = Boolean(onServerSideDataRequest);
|
|
56840
56841
|
const [sortOrder, setSortOrder] = React77.useState(props.column.getSort());
|
|
56841
56842
|
const [isFirstColumn2, setIsFirstColumn] = React77.useState(false);
|
|
56843
|
+
const [isRowGroupActive, setIsRowGroupActive] = React77.useState(
|
|
56844
|
+
() => props.column.isRowGroupActive()
|
|
56845
|
+
);
|
|
56842
56846
|
const defaultMenuOptions = getMainMenuItems(
|
|
56843
|
-
{
|
|
56847
|
+
{
|
|
56848
|
+
...props,
|
|
56849
|
+
menuConfig: {
|
|
56850
|
+
...props.menuConfig,
|
|
56851
|
+
isRowGroupActive
|
|
56852
|
+
},
|
|
56853
|
+
onTableConfigChange
|
|
56854
|
+
},
|
|
56844
56855
|
I18n
|
|
56845
56856
|
);
|
|
56846
56857
|
const headerCellRef = useRef(null);
|
|
@@ -56854,6 +56865,18 @@ var GenericHeaderRenderer = (props) => {
|
|
|
56854
56865
|
}) : !!headerCheckboxSelection;
|
|
56855
56866
|
const checkbox = useRef(null);
|
|
56856
56867
|
const colId = props.column.getId();
|
|
56868
|
+
React77.useEffect(() => {
|
|
56869
|
+
const onRowGroupChanged = () => {
|
|
56870
|
+
setIsRowGroupActive(props.column.isRowGroupActive());
|
|
56871
|
+
};
|
|
56872
|
+
props.column.addEventListener("columnRowGroupChanged", onRowGroupChanged);
|
|
56873
|
+
return () => {
|
|
56874
|
+
props.column.removeEventListener(
|
|
56875
|
+
"columnRowGroupChanged",
|
|
56876
|
+
onRowGroupChanged
|
|
56877
|
+
);
|
|
56878
|
+
};
|
|
56879
|
+
}, []);
|
|
56857
56880
|
React77.useEffect(() => {
|
|
56858
56881
|
function calculatePosition() {
|
|
56859
56882
|
const columns = props.columnApi.getColumnState();
|
|
@@ -105162,6 +105185,19 @@ function getRootRowNode(rowNode) {
|
|
|
105162
105185
|
return rowNode.level > 0 && rowNode.parent ? getRootRowNode(rowNode.parent) : rowNode;
|
|
105163
105186
|
}
|
|
105164
105187
|
|
|
105188
|
+
// src/utils/mergeRefs.ts
|
|
105189
|
+
function mergeRefs(...refs) {
|
|
105190
|
+
return (value) => {
|
|
105191
|
+
refs.forEach((ref) => {
|
|
105192
|
+
if (typeof ref === "function") {
|
|
105193
|
+
ref(value);
|
|
105194
|
+
} else if (ref != null) {
|
|
105195
|
+
ref.current = value;
|
|
105196
|
+
}
|
|
105197
|
+
});
|
|
105198
|
+
};
|
|
105199
|
+
}
|
|
105200
|
+
|
|
105165
105201
|
// src/utils/setSiblingGroupsRowSelection.ts
|
|
105166
105202
|
function setSiblingGroupsRowSelection(groupIndex, gridApi) {
|
|
105167
105203
|
gridApi == null ? void 0 : gridApi.forEachNode((node) => {
|
|
@@ -109790,6 +109826,15 @@ var Table = (props) => {
|
|
|
109790
109826
|
["onGridReady"],
|
|
109791
109827
|
props.UNSAFE_internalAGGridOverrides ?? {}
|
|
109792
109828
|
);
|
|
109829
|
+
const { ref: resizeRef } = useResizeDetector({
|
|
109830
|
+
onResize: onContainerResize,
|
|
109831
|
+
refreshMode: "debounce",
|
|
109832
|
+
refreshRate: 400
|
|
109833
|
+
});
|
|
109834
|
+
const combinedRef = React77.useCallback(
|
|
109835
|
+
mergeRefs(wrapperRef, resizeRef),
|
|
109836
|
+
[wrapperRef, resizeRef]
|
|
109837
|
+
);
|
|
109793
109838
|
return /* @__PURE__ */ React77.createElement(
|
|
109794
109839
|
Spinner,
|
|
109795
109840
|
{
|
|
@@ -109804,133 +109849,125 @@ var Table = (props) => {
|
|
|
109804
109849
|
}
|
|
109805
109850
|
},
|
|
109806
109851
|
/* @__PURE__ */ React77.createElement(
|
|
109807
|
-
|
|
109852
|
+
"div",
|
|
109808
109853
|
{
|
|
109809
|
-
|
|
109810
|
-
|
|
109811
|
-
|
|
109812
|
-
|
|
109813
|
-
/* @__PURE__ */ React77.createElement(
|
|
109814
|
-
"div",
|
|
109815
|
-
{
|
|
109816
|
-
style: {
|
|
109817
|
-
flex: 1,
|
|
109818
|
-
width: "100%",
|
|
109819
|
-
maxHeight: props.maxHeight && tableHeight < props.maxHeight ? void 0 : props.maxHeight
|
|
109820
|
-
},
|
|
109821
|
-
className: cx19("ag-theme-alpine", {
|
|
109822
|
-
"ag-suppress-column-virtualization": suppressColumnVirtualisation
|
|
109823
|
-
}),
|
|
109824
|
-
ref: wrapperRef,
|
|
109825
|
-
"data-qa": loadingStatus.loading ? "loading" : "loaded"
|
|
109854
|
+
style: {
|
|
109855
|
+
flex: 1,
|
|
109856
|
+
width: "100%",
|
|
109857
|
+
maxHeight: props.maxHeight && tableHeight < props.maxHeight ? void 0 : props.maxHeight
|
|
109826
109858
|
},
|
|
109827
|
-
|
|
109859
|
+
className: cx19("ag-theme-alpine", {
|
|
109860
|
+
"ag-suppress-column-virtualization": suppressColumnVirtualisation
|
|
109861
|
+
}),
|
|
109862
|
+
ref: combinedRef,
|
|
109863
|
+
"data-qa": loadingStatus.loading ? "loading" : "loaded"
|
|
109864
|
+
},
|
|
109865
|
+
/* @__PURE__ */ React77.createElement("style", null, `:root {
|
|
109828
109866
|
--viewport-width: ${viewportWidth}px;
|
|
109829
109867
|
--rowActions-width: ${rowActionsWidth.current}px;
|
|
109830
109868
|
}`),
|
|
109831
|
-
|
|
109832
|
-
|
|
109833
|
-
|
|
109834
|
-
|
|
109835
|
-
|
|
109836
|
-
|
|
109837
|
-
|
|
109838
|
-
|
|
109839
|
-
|
|
109840
|
-
|
|
109841
|
-
|
|
109842
|
-
|
|
109843
|
-
|
|
109844
|
-
|
|
109845
|
-
|
|
109846
|
-
|
|
109847
|
-
|
|
109848
|
-
|
|
109849
|
-
|
|
109850
|
-
|
|
109851
|
-
|
|
109852
|
-
|
|
109853
|
-
|
|
109854
|
-
|
|
109855
|
-
|
|
109856
|
-
|
|
109857
|
-
|
|
109858
|
-
|
|
109859
|
-
|
|
109860
|
-
|
|
109861
|
-
|
|
109862
|
-
|
|
109863
|
-
|
|
109864
|
-
|
|
109865
|
-
|
|
109866
|
-
|
|
109867
|
-
|
|
109868
|
-
|
|
109869
|
-
|
|
109870
|
-
|
|
109871
|
-
|
|
109872
|
-
|
|
109873
|
-
|
|
109874
|
-
|
|
109875
|
-
|
|
109876
|
-
|
|
109877
|
-
|
|
109878
|
-
|
|
109879
|
-
|
|
109880
|
-
|
|
109881
|
-
|
|
109882
|
-
|
|
109883
|
-
|
|
109884
|
-
|
|
109885
|
-
|
|
109886
|
-
|
|
109887
|
-
|
|
109888
|
-
|
|
109889
|
-
|
|
109890
|
-
|
|
109891
|
-
|
|
109892
|
-
|
|
109893
|
-
|
|
109894
|
-
|
|
109895
|
-
|
|
109896
|
-
|
|
109897
|
-
|
|
109898
|
-
|
|
109899
|
-
|
|
109900
|
-
|
|
109901
|
-
|
|
109902
|
-
|
|
109903
|
-
|
|
109904
|
-
|
|
109905
|
-
|
|
109906
|
-
|
|
109907
|
-
|
|
109908
|
-
|
|
109909
|
-
|
|
109910
|
-
|
|
109911
|
-
|
|
109912
|
-
|
|
109913
|
-
|
|
109914
|
-
|
|
109915
|
-
|
|
109916
|
-
|
|
109917
|
-
|
|
109918
|
-
|
|
109919
|
-
|
|
109920
|
-
|
|
109921
|
-
|
|
109922
|
-
|
|
109923
|
-
|
|
109924
|
-
|
|
109925
|
-
|
|
109926
|
-
|
|
109927
|
-
|
|
109928
|
-
|
|
109929
|
-
|
|
109930
|
-
|
|
109931
|
-
|
|
109932
|
-
|
|
109933
|
-
)
|
|
109869
|
+
/* @__PURE__ */ React77.createElement(
|
|
109870
|
+
AgGridReact,
|
|
109871
|
+
{
|
|
109872
|
+
aggFuncs: aggregationFunctions_exports,
|
|
109873
|
+
alwaysAggregateAtRootLevel: !onSSDR,
|
|
109874
|
+
autoGroupColumnDef: decoratedAutoGroupColDef,
|
|
109875
|
+
cacheBlockSize: props.paginationPageSize || defaultPaginationPageSize,
|
|
109876
|
+
isGroupOpenByDefault: isClientSideGroupOpenByDefault,
|
|
109877
|
+
isServerSideGroupOpenByDefault,
|
|
109878
|
+
defaultColDef,
|
|
109879
|
+
enableGroupEdit: internalTableContext.enableGroupEditAndValidation,
|
|
109880
|
+
enableCellTextSelection: internalTableContext.enableCellTextSelection,
|
|
109881
|
+
enableCellEditingOnBackspace: true,
|
|
109882
|
+
excelStyles: transformToExcelStyles(props.excelDataTypeFormats),
|
|
109883
|
+
components: frameworkComponents.base,
|
|
109884
|
+
fullWidthCellRenderer: FullWidthCellRenderer(
|
|
109885
|
+
props.fullWidthCellRenderer
|
|
109886
|
+
),
|
|
109887
|
+
getRowHeight: getMainTableRowHeight,
|
|
109888
|
+
getRowId: internalTableContext.getRowId,
|
|
109889
|
+
getRowStyle,
|
|
109890
|
+
groupAllowUnbalanced: true,
|
|
109891
|
+
groupDefaultExpanded: props.groupsAlwaysExpanded ? -1 : props.groupDefaultExpanded,
|
|
109892
|
+
groupIncludeFooter: !onSSDR && props.groupIncludeFooter === void 0 ? true : props.groupIncludeFooter,
|
|
109893
|
+
getGroupRowAgg: props.getGroupRowAgg ? getGroupRowAgg : void 0,
|
|
109894
|
+
groupSelectsChildren: internalTableContext.totalRowCount > 0 && props.groupSelectsChildren || !onSSDR,
|
|
109895
|
+
groupSelectsFiltered: true,
|
|
109896
|
+
headerHeight: props.headerHeight,
|
|
109897
|
+
icons: tableIcons,
|
|
109898
|
+
isFullWidthRow: (props2) => {
|
|
109899
|
+
const node = props2.rowNode;
|
|
109900
|
+
return isFullWidthRow(node);
|
|
109901
|
+
},
|
|
109902
|
+
initialGroupOrderComparator: props.initialGroupOrderComparator ? (params) => props.initialGroupOrderComparator(
|
|
109903
|
+
serializeNode(params.nodeA),
|
|
109904
|
+
serializeNode(params.nodeB)
|
|
109905
|
+
) : void 0,
|
|
109906
|
+
isRowSelectable,
|
|
109907
|
+
loadingOverlayComponent: "loadingOverlayRenderer",
|
|
109908
|
+
loadingOverlayComponentParams: {
|
|
109909
|
+
loading: true
|
|
109910
|
+
},
|
|
109911
|
+
maintainColumnOrder: props.maintainColumnOrder,
|
|
109912
|
+
modules: [
|
|
109913
|
+
...props.modules,
|
|
109914
|
+
MasterDetailModule,
|
|
109915
|
+
MenuModule,
|
|
109916
|
+
RowGroupingModule,
|
|
109917
|
+
SetFilterModule,
|
|
109918
|
+
CsvExportModule,
|
|
109919
|
+
ExcelExportModule,
|
|
109920
|
+
SparklinesModule
|
|
109921
|
+
],
|
|
109922
|
+
noRowsOverlayComponent: "emptyStateRenderer",
|
|
109923
|
+
noRowsOverlayComponentParams: {
|
|
109924
|
+
emptyStateRenderer: props.emptyStateRenderer
|
|
109925
|
+
},
|
|
109926
|
+
onCellValueChanged: internalOnCellValueChanged,
|
|
109927
|
+
onColumnGroupOpened,
|
|
109928
|
+
onColumnMoved,
|
|
109929
|
+
onColumnPinned,
|
|
109930
|
+
onColumnResized,
|
|
109931
|
+
onColumnRowGroupChanged,
|
|
109932
|
+
onDisplayedColumnsChanged,
|
|
109933
|
+
onDragStopped,
|
|
109934
|
+
onGridReady,
|
|
109935
|
+
onColumnEverythingChanged: props.onColumnEverythingChanged,
|
|
109936
|
+
onModelUpdated,
|
|
109937
|
+
onCellFocused: props.onCellFocused,
|
|
109938
|
+
onRowDragEnd,
|
|
109939
|
+
onRowDragMove,
|
|
109940
|
+
onRowGroupOpened: internalRowGroupOpened,
|
|
109941
|
+
onRowSelected: internalOnRowSelected,
|
|
109942
|
+
onSortChanged: onSortEventChanged,
|
|
109943
|
+
onFilterChanged,
|
|
109944
|
+
onFirstDataRendered: props.onFirstDataRendered,
|
|
109945
|
+
paginateChildRows: props.paginateChildRows,
|
|
109946
|
+
pagination: props.pagination,
|
|
109947
|
+
paginationPageSize: props.paginationPageSize || defaultPaginationPageSize,
|
|
109948
|
+
popupParent: props.popupParent,
|
|
109949
|
+
pinnedBottomRowData: props.pinnedBottomRowData,
|
|
109950
|
+
rowBuffer: props.rowBuffer,
|
|
109951
|
+
rowClassRules,
|
|
109952
|
+
rowDragManaged: onSSDR ? false : props.rowDragManaged ?? true,
|
|
109953
|
+
rowModelType: onSSDR ? "serverSide" : void 0,
|
|
109954
|
+
rowSelection: "multiple",
|
|
109955
|
+
...serverSideInfiniteScroll,
|
|
109956
|
+
suppressClickEdit: true,
|
|
109957
|
+
suppressAggFuncInHeader: true,
|
|
109958
|
+
suppressColumnMoveAnimation: true,
|
|
109959
|
+
suppressColumnVirtualisation,
|
|
109960
|
+
suppressContextMenu: true,
|
|
109961
|
+
suppressFieldDotNotation: props.suppressFieldDotNotation,
|
|
109962
|
+
suppressGroupRowsSticky: !props.stickyExpandedGroupRows,
|
|
109963
|
+
suppressPropertyNamesCheck: true,
|
|
109964
|
+
suppressRowClickSelection: props.suppressRowClickSelection || tableRowSelectionEnabled,
|
|
109965
|
+
suppressPaginationPanel: true,
|
|
109966
|
+
tabToNextCell: props.tabToNextCell,
|
|
109967
|
+
...clientSideRowData,
|
|
109968
|
+
...detailRowConfigProps,
|
|
109969
|
+
...overrideProps
|
|
109970
|
+
}
|
|
109934
109971
|
)
|
|
109935
109972
|
),
|
|
109936
109973
|
props.pagination && gridApi && /* @__PURE__ */ React77.createElement(
|
|
@@ -110078,7 +110115,7 @@ var FILTERS_GROUP_EXPANDABLE_AREA_VERTICAL_MARGIN = spacing.md;
|
|
|
110078
110115
|
var FILTERS_GROUP_ITEM_HEIGHT = 60;
|
|
110079
110116
|
var ITEMS_IN_FILTERS_GROUP = 5;
|
|
110080
110117
|
var FILTERS_GROUP_EXPANDABLE_AREA_HEIGHT = (FILTERS_GROUP_ITEM_HEIGHT + spacing.xl) * ITEMS_IN_FILTERS_GROUP + BORDER_WIDTH;
|
|
110081
|
-
var StyledPanelSection =
|
|
110118
|
+
var StyledPanelSection = styled4(Panel.Section)`
|
|
110082
110119
|
// Filters Group container styles
|
|
110083
110120
|
&.filters-list-group-section {
|
|
110084
110121
|
padding-bottom: ${FILTERS_GROUP_VERTICAL_MARGIN}px;
|
|
@@ -110372,7 +110409,7 @@ var ConfigPanelButton = () => {
|
|
|
110372
110409
|
var QuickFilterLabel = React77.forwardRef(({ enabled, ...props }, ref) => {
|
|
110373
110410
|
return /* @__PURE__ */ React77.createElement(StyledQuickFilterLabel, { $enabled: enabled }, /* @__PURE__ */ React77.createElement(SelectButton, { ref, ...props }));
|
|
110374
110411
|
});
|
|
110375
|
-
var StyledQuickFilterLabel =
|
|
110412
|
+
var StyledQuickFilterLabel = styled4.div`
|
|
110376
110413
|
${StyledSelectButton} {
|
|
110377
110414
|
width: auto;
|
|
110378
110415
|
max-width: 380px;
|
|
@@ -111004,7 +111041,7 @@ var LocationQuickFilterRenderer = ({
|
|
|
111004
111041
|
);
|
|
111005
111042
|
};
|
|
111006
111043
|
var LocationQuickFilterRenderer_default = LocationQuickFilterRenderer;
|
|
111007
|
-
var StyledFilterPresetPopoverContent =
|
|
111044
|
+
var StyledFilterPresetPopoverContent = styled4(Popover.Content)`
|
|
111008
111045
|
padding: ${spacing.sm}px ${spacing.lg}px;
|
|
111009
111046
|
`;
|
|
111010
111047
|
var getValueLabel = (isValueEmpty, value, placeholder, filterName) => {
|
|
@@ -111088,7 +111125,7 @@ var getSuperSelectFilterPreset = (columnDefinition) => {
|
|
|
111088
111125
|
selectionStyle: "highlight"
|
|
111089
111126
|
};
|
|
111090
111127
|
};
|
|
111091
|
-
var StyledSuperSelectWrapper =
|
|
111128
|
+
var StyledSuperSelectWrapper = styled4.div`
|
|
111092
111129
|
${UNSAFE_StyledSuperSelectTrigger} {
|
|
111093
111130
|
width: auto;
|
|
111094
111131
|
}
|
|
@@ -111559,7 +111596,7 @@ var FilterIcon = () => {
|
|
|
111559
111596
|
)
|
|
111560
111597
|
);
|
|
111561
111598
|
};
|
|
111562
|
-
var StyledFilterTokenWrapper =
|
|
111599
|
+
var StyledFilterTokenWrapper = styled4.div`
|
|
111563
111600
|
${UNSAFE_StyledFilterTokenLabel} {
|
|
111564
111601
|
font-weight: ${typographyWeights.semibold};
|
|
111565
111602
|
}
|