@adaptabletools/adaptable-cjs 21.0.9 → 21.0.11
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/package.json +1 -1
- package/src/AdaptableState/Common/AdaptablePredicate.js +14 -10
- package/src/Utilities/Extensions/StringExtensions.js +2 -2
- package/src/View/Components/FilterForm/ListBoxFilterForm.js +1 -2
- package/src/agGrid/AdaptableAgGrid.js +4 -1
- package/src/agGrid/AgGridColumnAdapter.js +1 -1
- package/src/components/OverlayTrigger/index.js +6 -2
- package/src/env.js +2 -2
- package/src/layout-manager/src/index.js +2 -0
- package/src/layout-manager/src/isLayoutEqual.js +1 -0
- package/tsconfig.cjs.tsbuildinfo +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adaptabletools/adaptable-cjs",
|
|
3
|
-
"version": "21.0.
|
|
3
|
+
"version": "21.0.11",
|
|
4
4
|
"description": "Powerful data-agnostic HTML5 AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"web-components",
|
|
@@ -36,11 +36,13 @@ exports.SystemPredicateDefs = [
|
|
|
36
36
|
if (!predicateInput) {
|
|
37
37
|
return;
|
|
38
38
|
}
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
39
|
+
// make sure that the input Predicate is included in the 'In' Predicate
|
|
40
|
+
if (adaptableApi.columnScopeApi.scopeIsAll(predicateInput.columnScope) ||
|
|
41
|
+
adaptableApi.columnScopeApi.isScopeInScope(predicateInput.columnScope,
|
|
42
|
+
// 'In' ColumnScope
|
|
43
|
+
{
|
|
44
|
+
DataTypes: ['text', 'number', 'date', 'textArray', 'numberArray'],
|
|
45
|
+
})) {
|
|
44
46
|
return predicateInput;
|
|
45
47
|
}
|
|
46
48
|
})
|
|
@@ -117,11 +119,13 @@ exports.SystemPredicateDefs = [
|
|
|
117
119
|
if (!predicateInput) {
|
|
118
120
|
return;
|
|
119
121
|
}
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
122
|
+
// make sure that the input Predicate is included in the 'NotIn' Predicate
|
|
123
|
+
if (adaptableApi.columnScopeApi.scopeIsAll(predicateInput.columnScope) ||
|
|
124
|
+
adaptableApi.columnScopeApi.isScopeInScope(predicateInput.columnScope,
|
|
125
|
+
// 'NotIn' ColumnScope
|
|
126
|
+
{
|
|
127
|
+
DataTypes: ['text', 'number', 'date', 'textArray', 'numberArray'],
|
|
128
|
+
})) {
|
|
125
129
|
return predicateInput;
|
|
126
130
|
}
|
|
127
131
|
})
|
|
@@ -12,7 +12,7 @@ function IsNotNull(stringToCheck) {
|
|
|
12
12
|
}
|
|
13
13
|
exports.IsNotNull = IsNotNull;
|
|
14
14
|
function IsEmpty(stringToCheck) {
|
|
15
|
-
return stringToCheck
|
|
15
|
+
return stringToCheck === '';
|
|
16
16
|
}
|
|
17
17
|
exports.IsEmpty = IsEmpty;
|
|
18
18
|
function IsNotEmpty(stringToCheck) {
|
|
@@ -28,7 +28,7 @@ function IsNotNullOrEmpty(stringToCheck) {
|
|
|
28
28
|
}
|
|
29
29
|
exports.IsNotNullOrEmpty = IsNotNullOrEmpty;
|
|
30
30
|
function IsNullOrEmptyOrWhiteSpace(stringToCheck) {
|
|
31
|
-
return IsNullOrEmpty(stringToCheck) || IsEmpty(stringToCheck
|
|
31
|
+
return IsNullOrEmpty(stringToCheck) || IsEmpty(stringToCheck?.trim());
|
|
32
32
|
}
|
|
33
33
|
exports.IsNullOrEmptyOrWhiteSpace = IsNullOrEmptyOrWhiteSpace;
|
|
34
34
|
function IsNotNullOrEmptyOrWhiteSpace(stringToCheck) {
|
|
@@ -19,8 +19,7 @@ const ColumnValuesSelect = (props) => {
|
|
|
19
19
|
if (!isActive && distinctValue.value && distinctValue.value instanceof Date) {
|
|
20
20
|
isActive = selectedColumnValues.some((dateStr) => (0, date_fns_1.isEqual)((0, DateHelper_1.parseDateValue)(dateStr), (0, DateHelper_1.parseDateValue)(distinctValue.value)));
|
|
21
21
|
}
|
|
22
|
-
|
|
23
|
-
if (StringExtensions_1.StringExtensions.IsNullOrEmpty(columnLabel)) {
|
|
22
|
+
if (StringExtensions_1.StringExtensions.IsNullOrEmpty(distinctValue.value)) {
|
|
24
23
|
return false;
|
|
25
24
|
}
|
|
26
25
|
if (isActive) {
|
|
@@ -2467,7 +2467,10 @@ You need to define at least one Layout!`);
|
|
|
2467
2467
|
const value = gridCell.rawValue;
|
|
2468
2468
|
// we want to filter out empty values
|
|
2469
2469
|
if (value === '' || value === null || value === undefined) {
|
|
2470
|
-
|
|
2470
|
+
// 2025-10-31: we want to allow empty values to be included
|
|
2471
|
+
// after all - they are not displayed by default
|
|
2472
|
+
// but will be accessible in the customInFilterValues callback
|
|
2473
|
+
// return;
|
|
2471
2474
|
}
|
|
2472
2475
|
gridCells.push(gridCell);
|
|
2473
2476
|
}
|
|
@@ -581,7 +581,7 @@ class AgGridColumnAdapter {
|
|
|
581
581
|
if (this.adaptableApi.gridApi.isTreeDataGrid()) {
|
|
582
582
|
this.setColDefProperty(col, 'filter', (original_filter) => {
|
|
583
583
|
const autoGroupColumnDef = this.agGridApi.getGridOption('autoGroupColumnDef');
|
|
584
|
-
if (autoGroupColumnDef
|
|
584
|
+
if (autoGroupColumnDef?.filter != undefined) {
|
|
585
585
|
// we plan to provide a TreeListColumnFilter
|
|
586
586
|
// until then, it's the user's responsibility to explicitly set the filter in the provided `autoGroupColumnDef`
|
|
587
587
|
return original_filter;
|
|
@@ -18,6 +18,7 @@ const UIHelper_1 = require("../../View/UIHelper");
|
|
|
18
18
|
const InfiniteTable_1 = require("../InfiniteTable");
|
|
19
19
|
const AdaptableContext_1 = require("../../View/AdaptableContext");
|
|
20
20
|
const overlayBaseZIndex_1 = require("../overlayBaseZIndex");
|
|
21
|
+
const DATA_NAME_OVERLAY_TRIGGER = 'OverlayTrigger';
|
|
21
22
|
const getConstrainElement = (target, constrainTo) => {
|
|
22
23
|
let el = null;
|
|
23
24
|
if (typeof constrainTo === 'string') {
|
|
@@ -65,6 +66,7 @@ const defaultProps = {
|
|
|
65
66
|
};
|
|
66
67
|
const OverlayTrigger = React.forwardRef((givenProps, ref) => {
|
|
67
68
|
const props = { ...defaultProps, ...givenProps };
|
|
69
|
+
(0, exports.ensurePortalElement)();
|
|
68
70
|
const adaptable = (0, AdaptableContext_1.useAdaptable)();
|
|
69
71
|
let { visible: _, showTriangle, showEvent, hideEvent, render, targetOffset, preventPortalEventPropagation = false, anchor, hideDelay = 0, opacityTransitionDuration, onVisibleChange, alignPosition = [
|
|
70
72
|
// overlay - target
|
|
@@ -113,7 +115,6 @@ const OverlayTrigger = React.forwardRef((givenProps, ref) => {
|
|
|
113
115
|
doSetVisible(true);
|
|
114
116
|
}, 50), []);
|
|
115
117
|
const prevVisible = (0, usePrevious_1.default)(visible, false);
|
|
116
|
-
(0, exports.ensurePortalElement)();
|
|
117
118
|
const onShow = React.useCallback((event) => {
|
|
118
119
|
const target = targetRef.current;
|
|
119
120
|
if (event && preventPortalEventPropagation && !(0, contains_1.default)(target, event.target)) {
|
|
@@ -148,6 +149,9 @@ const OverlayTrigger = React.forwardRef((givenProps, ref) => {
|
|
|
148
149
|
}, [ref]);
|
|
149
150
|
(0, react_1.useEffect)(() => {
|
|
150
151
|
let target = domRef.current.previousSibling;
|
|
152
|
+
while (target && target.dataset.name === DATA_NAME_OVERLAY_TRIGGER) {
|
|
153
|
+
target = target.previousSibling;
|
|
154
|
+
}
|
|
151
155
|
if (targetProp) {
|
|
152
156
|
target = targetProp(target);
|
|
153
157
|
}
|
|
@@ -218,7 +222,7 @@ const OverlayTrigger = React.forwardRef((givenProps, ref) => {
|
|
|
218
222
|
const agGridClassName = (0, useAgGridClassName_1.default)([visible]);
|
|
219
223
|
return (React.createElement(React.Fragment, null,
|
|
220
224
|
React.Children.only(props.children),
|
|
221
|
-
React.createElement("div", { "data-name":
|
|
225
|
+
React.createElement("div", { "data-name": DATA_NAME_OVERLAY_TRIGGER, "data-visible": visible, ref: domRef, style: {
|
|
222
226
|
visibility: 'hidden',
|
|
223
227
|
flex: 'none',
|
|
224
228
|
width: 0,
|
package/src/env.js
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.default = {
|
|
4
4
|
NEXT_PUBLIC_INFINITE_TABLE_LICENSE_KEY: "StartDate=2021-06-29|EndDate=2030-01-01|Owner=Adaptable|Type=distribution|TS=1624971462479|C=137829811,1004007071,2756196225,1839832928,3994409405,636616862" || '',
|
|
5
|
-
PUBLISH_TIMESTAMP:
|
|
6
|
-
VERSION: "21.0.
|
|
5
|
+
PUBLISH_TIMESTAMP: 1761929207492 || Date.now(),
|
|
6
|
+
VERSION: "21.0.11" || '--current-version--',
|
|
7
7
|
};
|
|
@@ -381,6 +381,7 @@ class LayoutManager extends LMEmitter_1.LMEmitter {
|
|
|
381
381
|
Ignore_RowSummaries: layout.Ignore_RowSummaries,
|
|
382
382
|
Ignore_IsReadOnly: layout.Ignore_IsReadOnly,
|
|
383
383
|
Ignore_Tags: layout.Ignore_Tags,
|
|
384
|
+
Ignore_Metadata: layout.Ignore_Metadata,
|
|
384
385
|
Ignore_Source: layout.Ignore_Source,
|
|
385
386
|
Ignore_AdaptableVersion: layout.Ignore_AdaptableVersion,
|
|
386
387
|
Ignore_Uuid: layout.Ignore_Uuid,
|
|
@@ -709,6 +710,7 @@ class LayoutManager extends LMEmitter_1.LMEmitter {
|
|
|
709
710
|
Ignore_RowSummaries: this.currentLayout?.Ignore_RowSummaries,
|
|
710
711
|
Ignore_IsReadOnly: this.currentLayout?.Ignore_IsReadOnly,
|
|
711
712
|
Ignore_Tags: this.currentLayout?.Ignore_Tags,
|
|
713
|
+
Ignore_Metadata: this.currentLayout?.Ignore_Metadata,
|
|
712
714
|
Ignore_Source: this.currentLayout?.Ignore_Source,
|
|
713
715
|
Ignore_AdaptableVersion: this.currentLayout?.Ignore_AdaptableVersion,
|
|
714
716
|
Ignore_Uuid: this.currentLayout?.Ignore_Uuid,
|