@procore/data-table 14.14.0 → 14.16.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 +23 -0
- package/dist/legacy/index.cjs +187 -106
- package/dist/legacy/index.d.cts +3 -0
- package/dist/legacy/index.d.ts +3 -0
- package/dist/legacy/index.js +188 -107
- package/dist/modern/index.cjs +185 -105
- package/dist/modern/index.d.cts +3 -0
- package/dist/modern/index.d.ts +3 -0
- package/dist/modern/index.js +186 -106
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,28 @@
|
|
|
1
1
|
# Change Log
|
|
2
2
|
|
|
3
|
+
## 14.16.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 6f2dd3480: Allow horizontal scrolling of column headers when the table is empty
|
|
8
|
+
- f8689d54c: fix Select All being triggered when 0 rows
|
|
9
|
+
|
|
10
|
+
### Patch Changes
|
|
11
|
+
|
|
12
|
+
- aeac00464: Fix issue with resetting ungrouped/grouped columns (UISP-215)[UISP-215 https://procoretech.atlassian.net/browse/UISP-215]
|
|
13
|
+
|
|
14
|
+
## 14.15.0
|
|
15
|
+
|
|
16
|
+
### Minor Changes
|
|
17
|
+
|
|
18
|
+
- 089d469e4: Fixed header consistency in PDF exports when showTableHeaderOnEveryPage is enabled.
|
|
19
|
+
- 1362252da: Fix: Adjust SelectCell component size and render ExternalLink icon when the cell is not editable.
|
|
20
|
+
- 3f7456b1f: Added support for rendering symbols either before or after values in the number cell component.
|
|
21
|
+
|
|
22
|
+
### Patch Changes
|
|
23
|
+
|
|
24
|
+
- 60721efab: Add displayAsPill property to determine to render PillCell
|
|
25
|
+
|
|
3
26
|
## 14.14.0
|
|
4
27
|
|
|
5
28
|
### Minor Changes
|
package/dist/legacy/index.cjs
CHANGED
|
@@ -9,6 +9,7 @@ var coreIcons = require('@procore/core-icons');
|
|
|
9
9
|
var classNames = require('classnames');
|
|
10
10
|
var dateFns = require('date-fns');
|
|
11
11
|
var labsFinancialsUtils = require('@procore/labs-financials-utils');
|
|
12
|
+
var format = require('@procore/labs-financials-utils/dist/format');
|
|
12
13
|
var ulid$1 = require('ulid');
|
|
13
14
|
var toastAlert = require('@procore/toast-alert');
|
|
14
15
|
var ReactDOM = require('react-dom');
|
|
@@ -1423,7 +1424,7 @@ ag-grid, ag-grid-angular, ag-grid-ng2, ag-grid-polymer, ag-grid-aurelia {
|
|
|
1423
1424
|
animation-iteration-count: infinite;
|
|
1424
1425
|
animation-name: ag-shake-left-to-right;
|
|
1425
1426
|
}
|
|
1426
|
-
@keyframes _ag-shake-left-to-
|
|
1427
|
+
@keyframes _ag-shake-left-to-right_1t4e8_369 {
|
|
1427
1428
|
from {
|
|
1428
1429
|
padding-left: 6px;
|
|
1429
1430
|
padding-right: 2px;
|
|
@@ -5424,7 +5425,7 @@ input[class^=ag-][type=button]:focus, button[class^=ag-]:focus {
|
|
|
5424
5425
|
animation-iteration-count: infinite;
|
|
5425
5426
|
animation-timing-function: linear;
|
|
5426
5427
|
}
|
|
5427
|
-
@keyframes
|
|
5428
|
+
@keyframes _spin_1t4e8_1 {
|
|
5428
5429
|
from {
|
|
5429
5430
|
transform: rotate(0deg);
|
|
5430
5431
|
}
|
|
@@ -7509,10 +7510,15 @@ input[class^=ag-][type=range]:disabled {
|
|
|
7509
7510
|
}
|
|
7510
7511
|
.ag-theme-alpine.ag-theme-alpine .ag-row--dt-active {
|
|
7511
7512
|
background-color: #e4ecfb;
|
|
7512
|
-
border-left: 4px solid #2066df;
|
|
7513
7513
|
}
|
|
7514
|
-
.ag-theme-alpine.ag-theme-alpine .ag-row--dt-active
|
|
7515
|
-
|
|
7514
|
+
.ag-theme-alpine.ag-theme-alpine .ag-row--dt-active::before {
|
|
7515
|
+
background-color: #2066df;
|
|
7516
|
+
content: "";
|
|
7517
|
+
width: 4px;
|
|
7518
|
+
height: 100%;
|
|
7519
|
+
position: absolute;
|
|
7520
|
+
top: 0;
|
|
7521
|
+
left: 0;
|
|
7516
7522
|
}
|
|
7517
7523
|
.ag-theme-alpine.ag-theme-alpine .ag-row--dt-overdue span {
|
|
7518
7524
|
color: #e61920;
|
|
@@ -7550,11 +7556,11 @@ input[class^=ag-][type=range]:disabled {
|
|
|
7550
7556
|
}
|
|
7551
7557
|
.ag-theme-alpine.ag-theme-alpine .ag-floating-bottom .ag-pinned-left-floating-bottom {
|
|
7552
7558
|
z-index: 1;
|
|
7553
|
-
box-shadow: 3px
|
|
7559
|
+
box-shadow: 3px -10px 12px 0.5px hsl(200, 8%, 90%);
|
|
7554
7560
|
border-right: 1px solid #d6dadc;
|
|
7555
7561
|
}
|
|
7556
7562
|
.ag-theme-alpine.ag-theme-alpine .ag-floating-bottom .ag-pinned-right-floating-bottom {
|
|
7557
|
-
box-shadow: -3px
|
|
7563
|
+
box-shadow: -3px -10px 12px 0.5px hsl(200, 8%, 90%);
|
|
7558
7564
|
border-left: 1px solid #d6dadc;
|
|
7559
7565
|
}
|
|
7560
7566
|
.ag-theme-alpine.ag-theme-alpine .ag-group-value {
|
|
@@ -7569,17 +7575,17 @@ input[class^=ag-][type=range]:disabled {
|
|
|
7569
7575
|
overflow: visible;
|
|
7570
7576
|
}
|
|
7571
7577
|
.ag-theme-alpine.ag-theme-alpine .ag-header .ag-pinned-left-header {
|
|
7572
|
-
box-shadow: 3px
|
|
7578
|
+
box-shadow: 3px -10px 12px 0.5px hsl(200, 8%, 90%);
|
|
7573
7579
|
}
|
|
7574
7580
|
.ag-theme-alpine.ag-theme-alpine .ag-pinned-left-cols-container {
|
|
7575
|
-
box-shadow: 3px
|
|
7581
|
+
box-shadow: 3px -10px 12px 0.5px hsl(200, 8%, 90%);
|
|
7576
7582
|
border-right: 1px solid #d6dadc;
|
|
7577
7583
|
}
|
|
7578
7584
|
.ag-theme-alpine.ag-theme-alpine .ag-header .ag-pinned-right-header {
|
|
7579
|
-
box-shadow: -3px
|
|
7585
|
+
box-shadow: -3px -10px 12px 0.5px hsl(200, 8%, 90%);
|
|
7580
7586
|
}
|
|
7581
7587
|
.ag-theme-alpine.ag-theme-alpine .ag-pinned-right-cols-container {
|
|
7582
|
-
box-shadow: -3px
|
|
7588
|
+
box-shadow: -3px -10px 12px 0.5px hsl(200, 8%, 90%);
|
|
7583
7589
|
border-left: 1px solid #d6dadc;
|
|
7584
7590
|
}
|
|
7585
7591
|
.ag-theme-alpine.ag-theme-alpine .ag-pinned-left-cols-container, .ag-theme-alpine.ag-theme-alpine .ag-pinned-right-cols-container {
|
|
@@ -7725,7 +7731,7 @@ input[class^=ag-][type=range]:disabled {
|
|
|
7725
7731
|
.ag-theme-alpine.ag-theme-alpine .ag-details-row-auto-height .ag-center-cols-viewport, .ag-theme-alpine.ag-theme-alpine .ag-layout-auto-height .ag-center-cols-viewport {
|
|
7726
7732
|
min-height: 0px;
|
|
7727
7733
|
}
|
|
7728
|
-
.ag-theme-alpine.ag-theme-alpine .ag-overlay {
|
|
7734
|
+
.ag-theme-alpine.ag-theme-alpine .ag-overlay button {
|
|
7729
7735
|
pointer-events: initial;
|
|
7730
7736
|
}
|
|
7731
7737
|
.ag-theme-alpine.ag-theme-alpine .ag-menu, .ag-theme-alpine.ag-theme-alpine .ag-menu-header {
|
|
@@ -7924,7 +7930,7 @@ input[class^=ag-][type=range]:disabled {
|
|
|
7924
7930
|
padding-left: 16px;
|
|
7925
7931
|
}
|
|
7926
7932
|
|
|
7927
|
-
div.
|
|
7933
|
+
div._contextPanel_1t4e8_7153 {
|
|
7928
7934
|
width: 400px;
|
|
7929
7935
|
transition: all ease 500ms;
|
|
7930
7936
|
flex: 0 0 auto;
|
|
@@ -7933,7 +7939,7 @@ div._contextPanel_1c24o_7148 {
|
|
|
7933
7939
|
border: 1px solid #d6dadc;
|
|
7934
7940
|
display: flex;
|
|
7935
7941
|
}
|
|
7936
|
-
div._contextPanel--
|
|
7942
|
+
div._contextPanel--hidden_1t4e8_7162 {
|
|
7937
7943
|
border: none;
|
|
7938
7944
|
overflow: hidden;
|
|
7939
7945
|
padding: 0px;
|
|
@@ -7941,50 +7947,50 @@ div._contextPanel--hidden_1c24o_7157 {
|
|
|
7941
7947
|
width: 0px;
|
|
7942
7948
|
}
|
|
7943
7949
|
|
|
7944
|
-
.
|
|
7950
|
+
._contextPanelWrapper_1t4e8_7170 {
|
|
7945
7951
|
position: relative;
|
|
7946
7952
|
flex-grow: 1;
|
|
7947
7953
|
}
|
|
7948
7954
|
|
|
7949
|
-
.
|
|
7955
|
+
._contextPanelBody_1t4e8_7175 {
|
|
7950
7956
|
width: clamp(380px, 400px, 100%);
|
|
7951
7957
|
}
|
|
7952
7958
|
|
|
7953
|
-
._contextPanel-
|
|
7959
|
+
._contextPanel-stickyHeader_1t4e8_7179 {
|
|
7954
7960
|
background-color: #ffffff;
|
|
7955
7961
|
position: sticky;
|
|
7956
7962
|
top: 0;
|
|
7957
7963
|
z-index: 5;
|
|
7958
7964
|
}
|
|
7959
7965
|
|
|
7960
|
-
._filters-
|
|
7966
|
+
._filters-list_1t4e8_7186 {
|
|
7961
7967
|
padding: 0;
|
|
7962
7968
|
margin: 0;
|
|
7963
7969
|
}
|
|
7964
|
-
._filters-
|
|
7970
|
+
._filters-list_1t4e8_7186 ol {
|
|
7965
7971
|
padding: 0;
|
|
7966
7972
|
margin: 0;
|
|
7967
7973
|
}
|
|
7968
7974
|
|
|
7969
|
-
._col-drag-column-
|
|
7975
|
+
._col-drag-column-icon_1t4e8_7195 {
|
|
7970
7976
|
color: #6a767c;
|
|
7971
7977
|
}
|
|
7972
7978
|
|
|
7973
|
-
._tabular-
|
|
7979
|
+
._tabular-nums_1t4e8_7199 {
|
|
7974
7980
|
font-variant-numeric: tabular-nums;
|
|
7975
7981
|
}`;
|
|
7976
7982
|
document.head.appendChild(document.createElement("style")).appendChild(document.createTextNode(css));
|
|
7977
7983
|
var styles_default = {
|
|
7978
|
-
"contextPanel": "
|
|
7979
|
-
"contextPanel--hidden": "_contextPanel--
|
|
7980
|
-
"contextPanelWrapper": "
|
|
7981
|
-
"contextPanelBody": "
|
|
7982
|
-
"contextPanel-stickyHeader": "_contextPanel-
|
|
7983
|
-
"filters-list": "_filters-
|
|
7984
|
-
"col-drag-column-icon": "_col-drag-column-
|
|
7985
|
-
"tabular-nums": "_tabular-
|
|
7986
|
-
"ag-shake-left-to-right": "_ag-shake-left-to-
|
|
7987
|
-
"spin": "
|
|
7984
|
+
"contextPanel": "_contextPanel_1t4e8_7153",
|
|
7985
|
+
"contextPanel--hidden": "_contextPanel--hidden_1t4e8_7162",
|
|
7986
|
+
"contextPanelWrapper": "_contextPanelWrapper_1t4e8_7170",
|
|
7987
|
+
"contextPanelBody": "_contextPanelBody_1t4e8_7175",
|
|
7988
|
+
"contextPanel-stickyHeader": "_contextPanel-stickyHeader_1t4e8_7179",
|
|
7989
|
+
"filters-list": "_filters-list_1t4e8_7186",
|
|
7990
|
+
"col-drag-column-icon": "_col-drag-column-icon_1t4e8_7195",
|
|
7991
|
+
"tabular-nums": "_tabular-nums_1t4e8_7199",
|
|
7992
|
+
"ag-shake-left-to-right": "_ag-shake-left-to-right_1t4e8_369",
|
|
7993
|
+
"spin": "_spin_1t4e8_1"
|
|
7988
7994
|
};
|
|
7989
7995
|
|
|
7990
7996
|
// src/utils/getCellValueTypographyProps.ts
|
|
@@ -8665,12 +8671,12 @@ var DateCellValue = ({
|
|
|
8665
8671
|
value
|
|
8666
8672
|
}) => {
|
|
8667
8673
|
var _a, _b;
|
|
8668
|
-
const { format } = coreReact.useDateTime();
|
|
8674
|
+
const { format: format2 } = coreReact.useDateTime();
|
|
8669
8675
|
if (isGroup || isEmptyValue(value)) {
|
|
8670
8676
|
return null;
|
|
8671
8677
|
}
|
|
8672
8678
|
const parsedValue = getDateObject(value);
|
|
8673
|
-
const internalValue = parsedValue ?
|
|
8679
|
+
const internalValue = parsedValue ? format2(
|
|
8674
8680
|
parsedValue,
|
|
8675
8681
|
((_a = columnDefinition.cellRendererParams) == null ? void 0 : _a.dateFormatType) || "numeric-date"
|
|
8676
8682
|
) : void 0;
|
|
@@ -8739,12 +8745,12 @@ var DateTimeCellValue = ({
|
|
|
8739
8745
|
value
|
|
8740
8746
|
}) => {
|
|
8741
8747
|
var _a, _b;
|
|
8742
|
-
const { format } = coreReact.useDateTime();
|
|
8748
|
+
const { format: format2 } = coreReact.useDateTime();
|
|
8743
8749
|
if (isGroup || isEmptyValue(value)) {
|
|
8744
8750
|
return null;
|
|
8745
8751
|
}
|
|
8746
8752
|
const parsedValue = getDateObject2(value);
|
|
8747
|
-
const internalValue = parsedValue ?
|
|
8753
|
+
const internalValue = parsedValue ? format2(
|
|
8748
8754
|
parsedValue,
|
|
8749
8755
|
((_a = columnDefinition.cellRendererParams) == null ? void 0 : _a.dateFormatType) || "abbr-weekday-abbr-date-at-time"
|
|
8750
8756
|
) : void 0;
|
|
@@ -16667,7 +16673,7 @@ var calculateOrdinal = (value) => {
|
|
|
16667
16673
|
}
|
|
16668
16674
|
return "th";
|
|
16669
16675
|
};
|
|
16670
|
-
function dateToFormattedString(date,
|
|
16676
|
+
function dateToFormattedString(date, format2 = "YYYY-MM-DD") {
|
|
16671
16677
|
const fullYear = padStartWidthZeros(date.getFullYear(), 4);
|
|
16672
16678
|
const months = [
|
|
16673
16679
|
"January",
|
|
@@ -16711,7 +16717,7 @@ function dateToFormattedString(date, format = "YYYY-MM-DD") {
|
|
|
16711
16717
|
d: () => `${date.getDay()}`
|
|
16712
16718
|
};
|
|
16713
16719
|
const regexp = new RegExp(Object.keys(replace).join("|"), "g");
|
|
16714
|
-
return
|
|
16720
|
+
return format2.replace(regexp, (match) => {
|
|
16715
16721
|
if (match in replace) {
|
|
16716
16722
|
return replace[match]();
|
|
16717
16723
|
}
|
|
@@ -21354,14 +21360,14 @@ var DateFilterModelFormatter = class extends SimpleFilterModelFormatter {
|
|
|
21354
21360
|
const isRange = type == SimpleFilter.IN_RANGE || numberOfInputs === 2;
|
|
21355
21361
|
const dateFrom = parseDateTimeFromString(condition.dateFrom);
|
|
21356
21362
|
const dateTo = parseDateTimeFromString(condition.dateTo);
|
|
21357
|
-
const
|
|
21363
|
+
const format2 = this.dateFilterParams.inRangeFloatingFilterDateFormat;
|
|
21358
21364
|
if (isRange) {
|
|
21359
|
-
const formattedFrom = dateFrom !== null ? dateToFormattedString(dateFrom,
|
|
21360
|
-
const formattedTo = dateTo !== null ? dateToFormattedString(dateTo,
|
|
21365
|
+
const formattedFrom = dateFrom !== null ? dateToFormattedString(dateFrom, format2) : "null";
|
|
21366
|
+
const formattedTo = dateTo !== null ? dateToFormattedString(dateTo, format2) : "null";
|
|
21361
21367
|
return `${formattedFrom}-${formattedTo}`;
|
|
21362
21368
|
}
|
|
21363
21369
|
if (dateFrom != null) {
|
|
21364
|
-
return dateToFormattedString(dateFrom,
|
|
21370
|
+
return dateToFormattedString(dateFrom, format2);
|
|
21365
21371
|
}
|
|
21366
21372
|
return `${type}`;
|
|
21367
21373
|
}
|
|
@@ -52984,7 +52990,27 @@ var InternalLinkCellRenderer = ({ columnDefinition, isGroup, data, rowHeight, va
|
|
|
52984
52990
|
if (isGroup) {
|
|
52985
52991
|
return /* @__PURE__ */ React76__default.default.createElement(coreReact.Typography, { ...typographyProps, className, weight: "semibold" }, value);
|
|
52986
52992
|
}
|
|
52993
|
+
const isExternalLink = columnDefinition.cellRendererParams.isExternalLink ?? false;
|
|
52987
52994
|
const URL = columnDefinition.cellRendererParams.getURL(value, data);
|
|
52995
|
+
if (isExternalLink && value && URL) {
|
|
52996
|
+
return /* @__PURE__ */ React76__default.default.createElement(
|
|
52997
|
+
coreReact.Typography,
|
|
52998
|
+
{
|
|
52999
|
+
...typographyProps,
|
|
53000
|
+
className,
|
|
53001
|
+
style: { display: "flex", alignItems: "center", gap: "5px" }
|
|
53002
|
+
},
|
|
53003
|
+
internalValue,
|
|
53004
|
+
/* @__PURE__ */ React76__default.default.createElement(
|
|
53005
|
+
coreIcons.ExternalLink,
|
|
53006
|
+
{
|
|
53007
|
+
cursor: "pointer",
|
|
53008
|
+
size: "sm",
|
|
53009
|
+
onClick: () => window.open(URL, "_blank")
|
|
53010
|
+
}
|
|
53011
|
+
)
|
|
53012
|
+
);
|
|
53013
|
+
}
|
|
52988
53014
|
return URL ? /* @__PURE__ */ React76__default.default.createElement(coreReact.Typography, { ...typographyProps, className }, /* @__PURE__ */ React76__default.default.createElement(coreReact.Link, { href: URL }, internalValue)) : /* @__PURE__ */ React76__default.default.createElement(coreReact.Typography, { ...typographyProps }, internalValue);
|
|
52989
53015
|
};
|
|
52990
53016
|
var LinkCellRenderer = withDataTableRenderer(
|
|
@@ -53013,9 +53039,10 @@ var InternalNumberCellRenderer = ({ columnDefinition, rowPinned, isGroup, value
|
|
|
53013
53039
|
}
|
|
53014
53040
|
return /* @__PURE__ */ React76__default.default.createElement(React76__default.default.Fragment, null);
|
|
53015
53041
|
}
|
|
53016
|
-
const internalValue =
|
|
53042
|
+
const internalValue = format.format(value, {
|
|
53017
53043
|
maxDecimalPrecision: 15,
|
|
53018
53044
|
minDecimalPrecision: 0,
|
|
53045
|
+
shouldUseGtk: true,
|
|
53019
53046
|
symbol: "",
|
|
53020
53047
|
...(_d = columnDefinition.cellRendererParams) == null ? void 0 : _d.formatConfig
|
|
53021
53048
|
});
|
|
@@ -53407,7 +53434,7 @@ var Renderer9 = ({
|
|
|
53407
53434
|
rowPinned
|
|
53408
53435
|
}) => {
|
|
53409
53436
|
var _a, _b, _c, _d;
|
|
53410
|
-
const { getColor } = columnDefinition.cellRendererParams;
|
|
53437
|
+
const { getColor, displayAsPill } = columnDefinition.cellRendererParams;
|
|
53411
53438
|
const I18n = coreReact.useI18nContext();
|
|
53412
53439
|
if (isEmptyValue(value)) {
|
|
53413
53440
|
if (isGroup) {
|
|
@@ -53433,7 +53460,7 @@ var Renderer9 = ({
|
|
|
53433
53460
|
const typographyProps = getCellValueTypographyProps(
|
|
53434
53461
|
(_d = columnDefinition.cellRendererParams) == null ? void 0 : _d.typographyProps
|
|
53435
53462
|
);
|
|
53436
|
-
if (isGroup || rowPinned && columnDefinition.aggFunc) {
|
|
53463
|
+
if ((isGroup || rowPinned && columnDefinition.aggFunc) && !displayAsPill) {
|
|
53437
53464
|
return /* @__PURE__ */ React76__default.default.createElement(coreReact.Typography, { ...typographyProps, weight: "semibold" }, label);
|
|
53438
53465
|
}
|
|
53439
53466
|
return /* @__PURE__ */ React76__default.default.createElement(coreReact.Pill, { color: getColor(value), className: cx10("pill-cell") }, label);
|
|
@@ -54872,8 +54899,8 @@ function transformToExcelStyles(excelDataFormats) {
|
|
|
54872
54899
|
if (excelDataFormats === void 0) {
|
|
54873
54900
|
return void 0;
|
|
54874
54901
|
}
|
|
54875
|
-
return excelDataFormats.map((
|
|
54876
|
-
const { id, ...rest } =
|
|
54902
|
+
return excelDataFormats.map((format2) => {
|
|
54903
|
+
const { id, ...rest } = format2;
|
|
54877
54904
|
return {
|
|
54878
54905
|
id: toExcelCellClass(id),
|
|
54879
54906
|
...rest
|
|
@@ -55914,7 +55941,7 @@ var DataTableCellRenderer = ({
|
|
|
55914
55941
|
value,
|
|
55915
55942
|
setValue
|
|
55916
55943
|
}) => {
|
|
55917
|
-
var _a, _b, _c;
|
|
55944
|
+
var _a, _b, _c, _d, _e, _f;
|
|
55918
55945
|
const { columnApi } = useInternalTableContext();
|
|
55919
55946
|
const columnDefinition = transformToColumnDefinition(colDef);
|
|
55920
55947
|
const validationOutput = ((_a = colDef.valueValidator) == null ? void 0 : _a.call(colDef, {
|
|
@@ -55949,6 +55976,8 @@ var DataTableCellRenderer = ({
|
|
|
55949
55976
|
value
|
|
55950
55977
|
};
|
|
55951
55978
|
const hasValue = value !== void 0 && value !== null && value !== "";
|
|
55979
|
+
const isSelectCellComponent = ((_c = (_b = columnDefinition.cellEditor) == null ? void 0 : _b.render) == null ? void 0 : _c.displayName) === "SelectCellEditor";
|
|
55980
|
+
const URL = isSelectCellComponent && ((_d = columnDefinition == null ? void 0 : columnDefinition.cellRendererParams) == null ? void 0 : _d.getURL) ? columnDefinition.cellRendererParams.getURL(value) : null;
|
|
55952
55981
|
const startEditing = React76.useCallback(
|
|
55953
55982
|
() => api.startEditingCell({
|
|
55954
55983
|
rowIndex: node.rowIndex,
|
|
@@ -55956,34 +55985,54 @@ var DataTableCellRenderer = ({
|
|
|
55956
55985
|
}),
|
|
55957
55986
|
[column2, node]
|
|
55958
55987
|
);
|
|
55959
|
-
return /* @__PURE__ */ React76__default.default.createElement(React76__default.default.Fragment, null, shouldDisplayRowCheckbox(columnApi, column2, node) && /* @__PURE__ */ React76__default.default.createElement(coreReact.Box, { paddingLeft: "sm" }, /* @__PURE__ */ React76__default.default.createElement(RowCheckbox, { api, data, node })),
|
|
55960
|
-
|
|
55961
|
-
{
|
|
55962
|
-
showArrow: editorType === "select",
|
|
55963
|
-
onClick: startEditing,
|
|
55964
|
-
onClear: ((_b = columnDefinition.cellEditorParams) == null ? void 0 : _b.clearable) && hasValue ? () => {
|
|
55965
|
-
setValue == null ? void 0 : setValue(null);
|
|
55966
|
-
} : void 0,
|
|
55967
|
-
showCalendar: editorType === "date",
|
|
55968
|
-
rightAligned: colDef.type === "rightAligned",
|
|
55969
|
-
hasValue,
|
|
55970
|
-
alwaysShowEditors: (_c = columnDefinition.cellEditorParams) == null ? void 0 : _c.alwaysShowPseudoEditors,
|
|
55971
|
-
...validationOutput
|
|
55972
|
-
},
|
|
55973
|
-
/* @__PURE__ */ React76__default.default.createElement(Component4, { ...componentParams })
|
|
55974
|
-
) : /* @__PURE__ */ React76__default.default.createElement(
|
|
55975
|
-
NonEditorWrapper,
|
|
55988
|
+
return /* @__PURE__ */ React76__default.default.createElement(React76__default.default.Fragment, null, shouldDisplayRowCheckbox(columnApi, column2, node) && /* @__PURE__ */ React76__default.default.createElement(coreReact.Box, { paddingLeft: "sm" }, /* @__PURE__ */ React76__default.default.createElement(RowCheckbox, { api, data, node })), /* @__PURE__ */ React76__default.default.createElement(
|
|
55989
|
+
coreReact.Flex,
|
|
55976
55990
|
{
|
|
55977
|
-
|
|
55978
|
-
|
|
55979
|
-
|
|
55980
|
-
|
|
55991
|
+
gap: "5px",
|
|
55992
|
+
alignItems: "center",
|
|
55993
|
+
justifyContent: "center",
|
|
55994
|
+
style: { width: "100%" }
|
|
55981
55995
|
},
|
|
55982
|
-
/* @__PURE__ */ React76__default.default.createElement(
|
|
55983
|
-
|
|
55996
|
+
columnDefinition.editable ? /* @__PURE__ */ React76__default.default.createElement(
|
|
55997
|
+
PseudoInlineEditorWrapper,
|
|
55998
|
+
{
|
|
55999
|
+
showArrow: editorType === "select",
|
|
56000
|
+
onClick: startEditing,
|
|
56001
|
+
onClear: ((_e = columnDefinition.cellEditorParams) == null ? void 0 : _e.clearable) && hasValue ? () => {
|
|
56002
|
+
setValue == null ? void 0 : setValue(null);
|
|
56003
|
+
} : void 0,
|
|
56004
|
+
showCalendar: editorType === "date",
|
|
56005
|
+
rightAligned: colDef.type === "rightAligned",
|
|
56006
|
+
hasValue,
|
|
56007
|
+
alwaysShowEditors: (_f = columnDefinition.cellEditorParams) == null ? void 0 : _f.alwaysShowPseudoEditors,
|
|
56008
|
+
...validationOutput
|
|
56009
|
+
},
|
|
56010
|
+
/* @__PURE__ */ React76__default.default.createElement(Component4, { ...componentParams })
|
|
56011
|
+
) : /* @__PURE__ */ React76__default.default.createElement(
|
|
56012
|
+
NonEditorWrapper,
|
|
56013
|
+
{
|
|
56014
|
+
rightAligned: colDef.type === "rightAligned",
|
|
56015
|
+
...validationOutput,
|
|
56016
|
+
rowPinned: Boolean(componentParams.rowPinned),
|
|
56017
|
+
isGroup: Boolean(componentParams.isGroup)
|
|
56018
|
+
},
|
|
56019
|
+
/* @__PURE__ */ React76__default.default.createElement(
|
|
56020
|
+
Component4,
|
|
56021
|
+
{
|
|
56022
|
+
...componentParams,
|
|
56023
|
+
tableRef: columnDefinition.cellRendererParams.tableRef
|
|
56024
|
+
}
|
|
56025
|
+
)
|
|
56026
|
+
),
|
|
56027
|
+
URL && /* @__PURE__ */ React76__default.default.createElement(
|
|
56028
|
+
coreIcons.ExternalLink,
|
|
55984
56029
|
{
|
|
55985
|
-
|
|
55986
|
-
|
|
56030
|
+
cursor: "pointer",
|
|
56031
|
+
size: "sm",
|
|
56032
|
+
onClick: (e) => {
|
|
56033
|
+
e.stopPropagation();
|
|
56034
|
+
window.open(URL, "_blank");
|
|
56035
|
+
}
|
|
55987
56036
|
}
|
|
55988
56037
|
)
|
|
55989
56038
|
));
|
|
@@ -56265,6 +56314,7 @@ var getMainMenuItems = (props, I18n) => {
|
|
|
56265
56314
|
}),
|
|
56266
56315
|
value: "rowUnGroup",
|
|
56267
56316
|
action() {
|
|
56317
|
+
props.columnApi.resetColumnState();
|
|
56268
56318
|
props.columnApi.removeRowGroupColumn(props.column);
|
|
56269
56319
|
}
|
|
56270
56320
|
};
|
|
@@ -56274,6 +56324,7 @@ var getMainMenuItems = (props, I18n) => {
|
|
|
56274
56324
|
}),
|
|
56275
56325
|
value: "rowGroup",
|
|
56276
56326
|
action() {
|
|
56327
|
+
props.columnApi.resetColumnState();
|
|
56277
56328
|
props.columnApi.addRowGroupColumn(props.column);
|
|
56278
56329
|
}
|
|
56279
56330
|
};
|
|
@@ -61563,14 +61614,14 @@ var protection_default = protection;
|
|
|
61563
61614
|
// ../../node_modules/@ag-grid-enterprise/excel-export/dist/esm/es6/excelExport/files/xml/styles/numberFormat.mjs
|
|
61564
61615
|
var numberFormat = {
|
|
61565
61616
|
getTemplate(styleProperties) {
|
|
61566
|
-
const { format } = styleProperties.numberFormat;
|
|
61617
|
+
const { format: format2 } = styleProperties.numberFormat;
|
|
61567
61618
|
return {
|
|
61568
61619
|
name: "NumberFormat",
|
|
61569
61620
|
properties: {
|
|
61570
61621
|
prefixedAttributes: [{
|
|
61571
61622
|
prefix: "ss:",
|
|
61572
61623
|
map: {
|
|
61573
|
-
Format:
|
|
61624
|
+
Format: format2
|
|
61574
61625
|
}
|
|
61575
61626
|
}]
|
|
61576
61627
|
}
|
|
@@ -63521,15 +63572,15 @@ var registerFill = (fill) => {
|
|
|
63521
63572
|
}
|
|
63522
63573
|
return pos;
|
|
63523
63574
|
};
|
|
63524
|
-
var registerNumberFmt = (
|
|
63525
|
-
|
|
63526
|
-
if (numberFormatMap[
|
|
63527
|
-
return numberFormatMap[
|
|
63575
|
+
var registerNumberFmt = (format2) => {
|
|
63576
|
+
format2 = _.utf8_encode(format2);
|
|
63577
|
+
if (numberFormatMap[format2]) {
|
|
63578
|
+
return numberFormatMap[format2];
|
|
63528
63579
|
}
|
|
63529
|
-
let pos = registeredNumberFmts.findIndex((currentFormat) => currentFormat.formatCode ===
|
|
63580
|
+
let pos = registeredNumberFmts.findIndex((currentFormat) => currentFormat.formatCode === format2);
|
|
63530
63581
|
if (pos === -1) {
|
|
63531
63582
|
pos = registeredNumberFmts.length + 164;
|
|
63532
|
-
registeredNumberFmts.push({ formatCode:
|
|
63583
|
+
registeredNumberFmts.push({ formatCode: format2, numFmtId: pos });
|
|
63533
63584
|
} else {
|
|
63534
63585
|
pos = registeredNumberFmts[pos].numFmtId;
|
|
63535
63586
|
}
|
|
@@ -80606,6 +80657,7 @@ function generateHTMLString({
|
|
|
80606
80657
|
clearTimeout(exportTimeoutId);
|
|
80607
80658
|
}
|
|
80608
80659
|
exportTimeoutId = setTimeout(() => {
|
|
80660
|
+
var _a2, _b2;
|
|
80609
80661
|
const exportedDocument = document.implementation.createHTMLDocument();
|
|
80610
80662
|
const printStylesElement = exportedDocument.createElement("style");
|
|
80611
80663
|
tableContainer.querySelectorAll(
|
|
@@ -80684,44 +80736,73 @@ function generateHTMLString({
|
|
|
80684
80736
|
if (exportedDocument.querySelector(".ag-header-container") && showTableHeaderOnEveryPage) {
|
|
80685
80737
|
const tableHeaderStylesElement = exportedDocument.createElement("style");
|
|
80686
80738
|
tableHeaderStylesElement.innerHTML = `
|
|
80739
|
+
/* Original header styles */
|
|
80687
80740
|
.ag-header-container {
|
|
80688
80741
|
height: ${TABLE_HEADER_HEIGHT}px;
|
|
80689
80742
|
background: ${coreReact.colors.gray96};
|
|
80690
80743
|
border-bottom: 1px solid #d6dadc;
|
|
80691
|
-
|
|
80744
|
+
}
|
|
80745
|
+
/* Cloned header styles */
|
|
80746
|
+
.paginated-header {
|
|
80747
|
+
height: ${TABLE_HEADER_HEIGHT}px;
|
|
80748
|
+
background: ${coreReact.colors.gray96};
|
|
80749
|
+
border-bottom: 1px solid #d6dadc;
|
|
80750
|
+
/* Ensure cloned headers start on a new page */
|
|
80751
|
+
page-break-before: always;
|
|
80692
80752
|
}
|
|
80693
80753
|
`;
|
|
80694
80754
|
exportedDocument.head.appendChild(tableHeaderStylesElement);
|
|
80695
|
-
const
|
|
80755
|
+
const tableHeaderElement = exportedDocument.querySelector(
|
|
80756
|
+
".ag-header-container"
|
|
80757
|
+
);
|
|
80758
|
+
if (!tableHeaderElement) {
|
|
80759
|
+
return reject(new Error("Table header container not found."));
|
|
80760
|
+
}
|
|
80761
|
+
const tableHeader = tableHeaderElement.cloneNode(true);
|
|
80762
|
+
tableHeader.classList.add("paginated-header");
|
|
80696
80763
|
const tableRowsContainer = exportedDocument.querySelector(
|
|
80697
80764
|
".ag-center-cols-container"
|
|
80698
80765
|
);
|
|
80699
|
-
|
|
80700
|
-
|
|
80701
|
-
|
|
80702
|
-
|
|
80703
|
-
|
|
80704
|
-
|
|
80705
|
-
|
|
80706
|
-
|
|
80707
|
-
|
|
80708
|
-
|
|
80766
|
+
if (!tableRowsContainer) {
|
|
80767
|
+
console.error("Table rows container not found.");
|
|
80768
|
+
return;
|
|
80769
|
+
}
|
|
80770
|
+
const allRows = Array.from(
|
|
80771
|
+
tableRowsContainer.children
|
|
80772
|
+
);
|
|
80773
|
+
tableRowsContainer.innerHTML = "";
|
|
80774
|
+
const maxPageContentHeight = pageHeight - (((_a2 = pageFormat.marginInPixels) == null ? void 0 : _a2.top) ?? DEFAULT_PAGE_MARGIN) - (((_b2 = pageFormat.marginInPixels) == null ? void 0 : _b2.bottom) ?? DEFAULT_PAGE_MARGIN) - TABLE_HEADER_HEIGHT;
|
|
80775
|
+
let currentPageContentHeight = 0;
|
|
80776
|
+
let rowsInCurrentPage = [];
|
|
80777
|
+
let isFirstPage = true;
|
|
80778
|
+
const appendPage = () => {
|
|
80779
|
+
if (rowsInCurrentPage.length > 0) {
|
|
80780
|
+
if (!isFirstPage) {
|
|
80781
|
+
tableRowsContainer.appendChild(tableHeader.cloneNode(true));
|
|
80782
|
+
} else {
|
|
80783
|
+
isFirstPage = false;
|
|
80709
80784
|
}
|
|
80710
|
-
|
|
80711
|
-
|
|
80712
|
-
const row2 = tableRowsContainer.children[index + currentPage - 1];
|
|
80713
|
-
const rowHeight = getScaledRowHeight(row2);
|
|
80714
|
-
if (pageContentHeight + rowHeight >= maxPageContentHeight) {
|
|
80715
|
-
tableRowsContainer.insertBefore(
|
|
80716
|
-
tableHeader.cloneNode(true),
|
|
80717
|
-
row2
|
|
80785
|
+
rowsInCurrentPage.forEach(
|
|
80786
|
+
(row2) => tableRowsContainer.appendChild(row2)
|
|
80718
80787
|
);
|
|
80719
|
-
|
|
80720
|
-
|
|
80721
|
-
} else {
|
|
80722
|
-
pageContentHeight += rowHeight;
|
|
80788
|
+
rowsInCurrentPage = [];
|
|
80789
|
+
currentPageContentHeight = 0;
|
|
80723
80790
|
}
|
|
80724
|
-
}
|
|
80791
|
+
};
|
|
80792
|
+
allRows.forEach((row2) => {
|
|
80793
|
+
let rowHeight = parseFloat(row2.style.height.replace("px", "")) || row2.offsetHeight;
|
|
80794
|
+
const scale = pageHeight / tableWidth;
|
|
80795
|
+
if (scale < 1) {
|
|
80796
|
+
rowHeight *= scale;
|
|
80797
|
+
}
|
|
80798
|
+
if (currentPageContentHeight + rowHeight > maxPageContentHeight) {
|
|
80799
|
+
appendPage();
|
|
80800
|
+
isFirstPage = false;
|
|
80801
|
+
}
|
|
80802
|
+
rowsInCurrentPage.push(row2);
|
|
80803
|
+
currentPageContentHeight += rowHeight;
|
|
80804
|
+
});
|
|
80805
|
+
appendPage();
|
|
80725
80806
|
}
|
|
80726
80807
|
resolve(exportedDocument.getElementsByTagName("html")[0].outerHTML);
|
|
80727
80808
|
}, 2e3);
|
|
@@ -82609,7 +82690,7 @@ var Table = (props) => {
|
|
|
82609
82690
|
groupDefaultExpanded: props.groupsAlwaysExpanded ? -1 : props.groupDefaultExpanded,
|
|
82610
82691
|
groupIncludeFooter: !onSSDR && props.groupIncludeFooter === void 0 ? true : props.groupIncludeFooter,
|
|
82611
82692
|
getGroupRowAgg: props.getGroupRowAgg ? getGroupRowAgg : void 0,
|
|
82612
|
-
groupSelectsChildren: props.groupSelectsChildren || !onSSDR,
|
|
82693
|
+
groupSelectsChildren: internalTableContext.totalRowCount > 0 && props.groupSelectsChildren || !onSSDR,
|
|
82613
82694
|
groupSelectsFiltered: true,
|
|
82614
82695
|
headerHeight: props.headerHeight,
|
|
82615
82696
|
icons: tableIcons,
|
package/dist/legacy/index.d.cts
CHANGED
|
@@ -303,6 +303,7 @@ declare const GroupCellRenderer: React$1.FC<any>;
|
|
|
303
303
|
interface LinkCellRendererParams<TValue> {
|
|
304
304
|
typographyProps?: TypographyProps;
|
|
305
305
|
getURL: (value: TValue, data: any) => string;
|
|
306
|
+
isExternalLink?: boolean;
|
|
306
307
|
}
|
|
307
308
|
type LinkCellColumnDefinition<TValue = any> = GranularRequired<ColumnDefinition<TValue, typeof LinkCellRenderer, LinkCellRendererParams<TValue>>, 'cellRendererParams'>;
|
|
308
309
|
interface LinkCellRendererProps<TValue = any> extends DataTableCellRendererProps<TValue, LinkCellColumnDefinition> {
|
|
@@ -385,6 +386,7 @@ declare const PercentCellEditor: React__default.ForwardRefExoticComponent<_ag_gr
|
|
|
385
386
|
interface PillCellRendererParams<TValue> {
|
|
386
387
|
getColor: (item: TValue) => PillColor;
|
|
387
388
|
typographyProps?: TypographyProps;
|
|
389
|
+
displayAsPill?: boolean;
|
|
388
390
|
}
|
|
389
391
|
type PillCellColumnDefinition<TValue = any, TFilterOption = any, TFilterValue = number | string> = GranularRequired<ColumnDefinition<TValue, typeof PillCellRenderer, PillCellRendererParams<TValue>, typeof PillSelectCellEditor, PillCellEditorParams<TValue>, TFilterOption, TFilterValue>, 'cellRendererParams'>;
|
|
390
392
|
interface PillCellRendererProps<TValue = any> extends DataTableCellRendererProps<TValue, PillCellColumnDefinition<TValue>> {
|
|
@@ -403,6 +405,7 @@ declare const PillSelectCellEditor: React__default.ForwardRefExoticComponent<_ag
|
|
|
403
405
|
|
|
404
406
|
type SelectCellColumnDefinition<TValue = any, TFilterOption = any, TFilterValue = number | string> = GranularRequired<ColumnDefinition<TValue, typeof SelectCellRenderer, {
|
|
405
407
|
typographyProps?: TypographyProps;
|
|
408
|
+
getURL?: (value: TValue) => string | null;
|
|
406
409
|
}, typeof SelectCellEditor, SelectCellEditorParams<TValue>, TFilterOption, TFilterValue, 'select', SelectBulkEditorParams>, 'cellEditor' | 'cellEditorParams'>;
|
|
407
410
|
interface SelectCellRendererProps<TValue = any> extends DataTableCellRendererProps<TValue, SelectCellColumnDefinition<TValue>> {
|
|
408
411
|
}
|
package/dist/legacy/index.d.ts
CHANGED
|
@@ -303,6 +303,7 @@ declare const GroupCellRenderer: React$1.FC<any>;
|
|
|
303
303
|
interface LinkCellRendererParams<TValue> {
|
|
304
304
|
typographyProps?: TypographyProps;
|
|
305
305
|
getURL: (value: TValue, data: any) => string;
|
|
306
|
+
isExternalLink?: boolean;
|
|
306
307
|
}
|
|
307
308
|
type LinkCellColumnDefinition<TValue = any> = GranularRequired<ColumnDefinition<TValue, typeof LinkCellRenderer, LinkCellRendererParams<TValue>>, 'cellRendererParams'>;
|
|
308
309
|
interface LinkCellRendererProps<TValue = any> extends DataTableCellRendererProps<TValue, LinkCellColumnDefinition> {
|
|
@@ -385,6 +386,7 @@ declare const PercentCellEditor: React__default.ForwardRefExoticComponent<_ag_gr
|
|
|
385
386
|
interface PillCellRendererParams<TValue> {
|
|
386
387
|
getColor: (item: TValue) => PillColor;
|
|
387
388
|
typographyProps?: TypographyProps;
|
|
389
|
+
displayAsPill?: boolean;
|
|
388
390
|
}
|
|
389
391
|
type PillCellColumnDefinition<TValue = any, TFilterOption = any, TFilterValue = number | string> = GranularRequired<ColumnDefinition<TValue, typeof PillCellRenderer, PillCellRendererParams<TValue>, typeof PillSelectCellEditor, PillCellEditorParams<TValue>, TFilterOption, TFilterValue>, 'cellRendererParams'>;
|
|
390
392
|
interface PillCellRendererProps<TValue = any> extends DataTableCellRendererProps<TValue, PillCellColumnDefinition<TValue>> {
|
|
@@ -403,6 +405,7 @@ declare const PillSelectCellEditor: React__default.ForwardRefExoticComponent<_ag
|
|
|
403
405
|
|
|
404
406
|
type SelectCellColumnDefinition<TValue = any, TFilterOption = any, TFilterValue = number | string> = GranularRequired<ColumnDefinition<TValue, typeof SelectCellRenderer, {
|
|
405
407
|
typographyProps?: TypographyProps;
|
|
408
|
+
getURL?: (value: TValue) => string | null;
|
|
406
409
|
}, typeof SelectCellEditor, SelectCellEditorParams<TValue>, TFilterOption, TFilterValue, 'select', SelectBulkEditorParams>, 'cellEditor' | 'cellEditorParams'>;
|
|
407
410
|
interface SelectCellRendererProps<TValue = any> extends DataTableCellRendererProps<TValue, SelectCellColumnDefinition<TValue>> {
|
|
408
411
|
}
|