@adaptabletools/adaptable-cjs 22.0.0-canary.1 → 22.0.0-canary.2
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/index.css +3 -14
- package/index.css.map +1 -1
- package/package.json +1 -1
- package/src/AdaptableOptions/AdaptablePlugin.js +6 -1
- package/src/AdaptableOptions/ExportOptions.d.ts +1 -2
- package/src/AdaptableOptions/FilterOptions.d.ts +3 -0
- package/src/AdaptableState/Common/AdaptableColumn.d.ts +6 -0
- package/src/AdaptableState/Common/RowDataChangedInfo.d.ts +3 -0
- package/src/AdaptableState/InitialState.d.ts +1 -1
- package/src/AdaptableState/Selection/GridCell.d.ts +9 -0
- package/src/Api/Implementation/ActionColumnApiImpl.js +1 -0
- package/src/Api/Implementation/AdaptableApiImpl.js +52 -0
- package/src/Api/Implementation/AlertApiImpl.js +1 -0
- package/src/Api/Implementation/ApiBase.js +1 -0
- package/src/Api/Implementation/CalculatedColumnApiImpl.js +1 -0
- package/src/Api/Implementation/ChartingApiImpl.js +4 -0
- package/src/Api/Implementation/ColumnApiImpl.js +1 -0
- package/src/Api/Implementation/ColumnFilterApiImpl.js +1 -0
- package/src/Api/Implementation/CommentsApiImpl.js +1 -0
- package/src/Api/Implementation/CustomSortApiImpl.js +1 -0
- package/src/Api/Implementation/DashboardApiImpl.js +1 -0
- package/src/Api/Implementation/DataChangeHistoryApiImpl.js +12 -15
- package/src/Api/Implementation/DataImportApiImpl.js +1 -0
- package/src/Api/Implementation/DataSetApiImpl.js +1 -0
- package/src/Api/Implementation/EntitlementApiImpl.js +1 -0
- package/src/Api/Implementation/EventApiImpl.js +16 -14
- package/src/Api/Implementation/ExportApiImpl.js +1 -0
- package/src/Api/Implementation/ExpressionApiImpl.js +1 -0
- package/src/Api/Implementation/Fdc3ApiImpl.js +1 -0
- package/src/Api/Implementation/FilterApiImpl.js +3 -0
- package/src/Api/Implementation/FlashingCellApiImpl.js +1 -0
- package/src/Api/Implementation/FormatColumnApiImpl.js +1 -0
- package/src/Api/Implementation/FreeTextColumnApiImpl.js +1 -0
- package/src/Api/Implementation/GridApiImpl.js +1 -0
- package/src/Api/Implementation/GridFilterApiImpl.js +1 -0
- package/src/Api/Implementation/LayoutApiImpl.js +1 -0
- package/src/Api/Implementation/NamedQueryApiImpl.js +1 -0
- package/src/Api/Implementation/NoteApiImpl.js +1 -0
- package/src/Api/Implementation/PredicateApiImpl.js +1 -0
- package/src/Api/Implementation/RowFormApiImpl.js +1 -0
- package/src/Api/Implementation/StyledColumnApiImpl.js +1 -0
- package/src/Api/Implementation/SystemStatusApiImpl.js +2 -0
- package/src/Api/Implementation/TeamSharingApiImpl.js +1 -0
- package/src/Api/Implementation/ThemeApiImpl.js +1 -0
- package/src/Api/Implementation/UserInterfaceApiImpl.js +2 -1
- package/src/Redux/Store/AdaptableReduxLocalStorageEngine.js +6 -0
- package/src/Redux/Store/AdaptableStore.js +49 -43
- package/src/Strategy/AdaptableModuleBase.js +4 -0
- package/src/Strategy/AlertModule.js +1 -0
- package/src/Strategy/CalculatedColumnModule.js +1 -0
- package/src/Strategy/CellSummaryModule.js +1 -1
- package/src/Strategy/DataChangeHistoryModule.js +1 -0
- package/src/Strategy/FlashingCellModule.js +1 -0
- package/src/Strategy/FreeTextColumnModule.js +1 -0
- package/src/Strategy/LayoutModule.js +2 -1
- package/src/Strategy/PlusMinusModule.js +2 -0
- package/src/Strategy/ScheduleModule.js +1 -0
- package/src/Strategy/ShortcutModule.js +2 -0
- package/src/Strategy/TeamSharingModule.js +10 -10
- package/src/Utilities/Constants/DocumentationLinkConstants.d.ts +1 -1
- package/src/Utilities/Constants/DocumentationLinkConstants.js +1 -1
- package/src/Utilities/ExpressionFunctions/deepMap.js +31 -31
- package/src/Utilities/MenuItem.js +18 -0
- package/src/Utilities/Services/AggregatedScalarLiveValue.js +8 -0
- package/src/Utilities/Services/AlertService.js +6 -4
- package/src/Utilities/Services/AnnotationsService.js +3 -0
- package/src/Utilities/Services/CalculatedColumnExpressionService.js +2 -1
- package/src/Utilities/Services/ChartingService.js +1 -0
- package/src/Utilities/Services/DataService.js +10 -2
- package/src/Utilities/Services/Fdc3Service.js +5 -3
- package/src/Utilities/Services/FlashingCellService.js +5 -0
- package/src/Utilities/Services/LicenseService/index.js +1 -1
- package/src/Utilities/Services/MetamodelService.js +2 -2
- package/src/Utilities/Services/ModuleService.js +1 -0
- package/src/Utilities/Services/QueryLanguageService.js +6 -5
- package/src/Utilities/Services/RowFormService.js +1 -0
- package/src/Utilities/Services/RowSummaryService.js +10 -7
- package/src/Utilities/Services/TeamSharingService.js +3 -1
- package/src/Utilities/Services/ThemeService.js +11 -9
- package/src/Utilities/Services/ValidationService.js +1 -0
- package/src/Utilities/createAgStatusPanelComponent.js +3 -0
- package/src/View/BulkUpdate/BulkUpdateViewPanel.js +1 -0
- package/src/View/CalculatedColumn/CalculatedColumnSummary.js +8 -8
- package/src/View/CellSummary/CellSummaryViewPanel.js +1 -0
- package/src/View/Components/Buttons/ButtonBase/index.js +9 -9
- package/src/View/Components/Buttons/EntityListActionButtons.js +18 -18
- package/src/View/Components/ColumnFilter/components/FloatingFilterValues.js +1 -1
- package/src/View/Components/ExpressionWizard.js +5 -5
- package/src/View/Components/Panels/PanelDashboard/index.js +8 -8
- package/src/View/Components/Panels/PanelToolPanel/index.js +7 -7
- package/src/View/Components/ToolPanel/AdaptableToolPanel.js +2 -0
- package/src/View/CustomSort/CustomSortSummary.js +13 -13
- package/src/View/FormatColumn/FormatColumnSummary.js +13 -13
- package/src/View/FreeTextColumn/FreeTextColumnSummary.js +13 -13
- package/src/View/SmartEdit/SmartEditViewPanel.js +1 -0
- package/src/View/Theme/ThemePopup.js +13 -16
- package/src/agGrid/Adaptable.js +4 -0
- package/src/agGrid/AdaptableAgGrid.js +99 -33
- package/src/agGrid/AdaptableFilterHandler.js +4 -0
- package/src/agGrid/AdaptableLogger.d.ts +3 -0
- package/src/agGrid/AdaptableLogger.js +10 -0
- package/src/agGrid/AgGridAdapter.js +11 -1
- package/src/agGrid/AgGridColumnAdapter.js +2 -0
- package/src/agGrid/AgGridExportAdapter.js +10 -9
- package/src/agGrid/AgGridFilterAdapter.js +4 -0
- package/src/agGrid/AgGridFloatingFilterAdapter.js +3 -0
- package/src/agGrid/AgGridMenuAdapter.js +1 -0
- package/src/agGrid/AgGridModulesAdapter.js +2 -1
- package/src/agGrid/AgGridOptionsService.js +3 -0
- package/src/agGrid/AgGridThemeAdapter.js +2 -0
- package/src/agGrid/cellRenderers/ActionColumnRenderer.js +5 -0
- package/src/agGrid/cellRenderers/BadgeRenderer.js +2 -0
- package/src/agGrid/cellRenderers/PercentBarRenderer.js +1 -0
- package/src/agGrid/editors/AdaptableDateEditor/index.js +6 -3
- package/src/agGrid/editors/AdaptableNumberEditor/index.js +16 -12
- package/src/agGrid/editors/AdaptablePercentageEditor/index.js +17 -13
- package/src/agGrid/index.d.ts +6 -0
- package/src/agGrid/index.js +6 -0
- package/src/components/Datepicker/index.js +1 -1
- package/src/components/overlayBaseZIndex.js +1 -1
- package/src/components/utils/useContainerScrollObserver/index.js +17 -14
- package/src/devTools/index.js +54 -53
- package/src/env.js +2 -2
- package/src/layout-manager/src/LMEmitter.js +11 -11
- package/src/layout-manager/src/LMLogger.js +7 -0
- package/src/layout-manager/src/index.js +56 -51
- package/src/metamodel/adaptable.metamodel.d.ts +57 -0
- package/src/metamodel/adaptable.metamodel.js +1 -1
- package/src/migration/AdaptableUpgradeHelper.js +3 -0
- package/src/migration/VersionUpgrade.js +1 -0
- package/src/migration/VersionUpgrade17.js +1 -2
- package/src/parser/src/ExpressionEvaluationError.js +1 -0
- package/tsconfig.cjs.tsbuildinfo +1 -1
|
@@ -15,7 +15,7 @@ exports.QuantileAggregatedScalarQueryDocsLink = `${exports.HOST_URL_DOCS}/adapta
|
|
|
15
15
|
exports.PredicateDocsLink = `${exports.HOST_URL_DOCS}/adaptable-predicate`;
|
|
16
16
|
exports.PrimaryKeyDocsLink = `${exports.HOST_URL_DOCS}/getting-started-primary-key`;
|
|
17
17
|
exports.LicenseDocsLink = `${exports.HOST_URL_ROOT}/buy/buying-adaptable-licensing`;
|
|
18
|
-
exports.AdaptableOptionsDocsLink = `${exports.HOST_URL_DOCS}/reference-options
|
|
18
|
+
exports.AdaptableOptionsDocsLink = `${exports.HOST_URL_DOCS}/technical-reference-adaptable-options`;
|
|
19
19
|
exports.AgGridModulesDocsLink = `${exports.HOST_URL_DOCS}/dev-guide-aggrid-modules-overview`;
|
|
20
20
|
exports.AlertMessageDocsLink = `${exports.HOST_URL_DOCS}/handbook-alerting-message`;
|
|
21
21
|
exports.FormatColumnPlaceholderDocsLink = `${exports.HOST_URL_DOCS}/handbook-column-formatting-display-format-placeholder`;
|
|
@@ -4,6 +4,9 @@ exports.DeepMap = void 0;
|
|
|
4
4
|
exports.once = once;
|
|
5
5
|
const SORT_ASC_REVISION = (p1, p2) => sortAscending(p1.revision, p2.revision);
|
|
6
6
|
class DeepMap {
|
|
7
|
+
map = new Map();
|
|
8
|
+
length = 0;
|
|
9
|
+
revision = 0;
|
|
7
10
|
static clone(map) {
|
|
8
11
|
const clone = new DeepMap();
|
|
9
12
|
map.visit((pair, keys) => {
|
|
@@ -12,37 +15,6 @@ class DeepMap {
|
|
|
12
15
|
return clone;
|
|
13
16
|
}
|
|
14
17
|
constructor(initial) {
|
|
15
|
-
this.map = new Map();
|
|
16
|
-
this.length = 0;
|
|
17
|
-
this.revision = 0;
|
|
18
|
-
this.visit = (fn) => {
|
|
19
|
-
this.map.forEach((_, k) => this.visitKey(k, this.map, [], fn));
|
|
20
|
-
};
|
|
21
|
-
this.visitDepthFirst = (fn) => {
|
|
22
|
-
this.visitWithNext([], fn);
|
|
23
|
-
};
|
|
24
|
-
this.visitWithNext = (parentKeys, fn, currentMap = this.map) => {
|
|
25
|
-
if (!currentMap) {
|
|
26
|
-
return;
|
|
27
|
-
}
|
|
28
|
-
let i = 0;
|
|
29
|
-
currentMap.forEach((_, key) => {
|
|
30
|
-
const pair = currentMap.get(key);
|
|
31
|
-
if (!pair) {
|
|
32
|
-
return;
|
|
33
|
-
}
|
|
34
|
-
const { map } = pair;
|
|
35
|
-
const keys = [...parentKeys, key];
|
|
36
|
-
const next = map ? () => this.visitWithNext(keys, fn, map) : undefined;
|
|
37
|
-
if (pair.hasOwnProperty('value')) {
|
|
38
|
-
fn(pair.value, keys, i, next);
|
|
39
|
-
i++;
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
next?.();
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
};
|
|
46
18
|
if (initial) {
|
|
47
19
|
initial.forEach((entry) => {
|
|
48
20
|
const [keys, value] = entry;
|
|
@@ -226,6 +198,34 @@ class DeepMap {
|
|
|
226
198
|
// if it was called by fn, it won't be called again, as it's once-d
|
|
227
199
|
next();
|
|
228
200
|
}
|
|
201
|
+
visit = (fn) => {
|
|
202
|
+
this.map.forEach((_, k) => this.visitKey(k, this.map, [], fn));
|
|
203
|
+
};
|
|
204
|
+
visitDepthFirst = (fn) => {
|
|
205
|
+
this.visitWithNext([], fn);
|
|
206
|
+
};
|
|
207
|
+
visitWithNext = (parentKeys, fn, currentMap = this.map) => {
|
|
208
|
+
if (!currentMap) {
|
|
209
|
+
return;
|
|
210
|
+
}
|
|
211
|
+
let i = 0;
|
|
212
|
+
currentMap.forEach((_, key) => {
|
|
213
|
+
const pair = currentMap.get(key);
|
|
214
|
+
if (!pair) {
|
|
215
|
+
return;
|
|
216
|
+
}
|
|
217
|
+
const { map } = pair;
|
|
218
|
+
const keys = [...parentKeys, key];
|
|
219
|
+
const next = map ? () => this.visitWithNext(keys, fn, map) : undefined;
|
|
220
|
+
if (pair.hasOwnProperty('value')) {
|
|
221
|
+
fn(pair.value, keys, i, next);
|
|
222
|
+
i++;
|
|
223
|
+
}
|
|
224
|
+
else {
|
|
225
|
+
next?.();
|
|
226
|
+
}
|
|
227
|
+
});
|
|
228
|
+
};
|
|
229
229
|
getArray(fn) {
|
|
230
230
|
const result = [];
|
|
231
231
|
this.visit((pair, keys) => {
|
|
@@ -15,6 +15,12 @@ class MenuItemDoReduxAction {
|
|
|
15
15
|
};
|
|
16
16
|
this.reduxAction = reduxAction;
|
|
17
17
|
}
|
|
18
|
+
name;
|
|
19
|
+
reduxAction;
|
|
20
|
+
label;
|
|
21
|
+
category;
|
|
22
|
+
isVisible;
|
|
23
|
+
icon;
|
|
18
24
|
}
|
|
19
25
|
exports.MenuItemDoReduxAction = MenuItemDoReduxAction;
|
|
20
26
|
class MenuItemDoClickFunction {
|
|
@@ -28,6 +34,12 @@ class MenuItemDoClickFunction {
|
|
|
28
34
|
};
|
|
29
35
|
this.onClick = clickFunction;
|
|
30
36
|
}
|
|
37
|
+
name;
|
|
38
|
+
onClick;
|
|
39
|
+
label;
|
|
40
|
+
category;
|
|
41
|
+
isVisible;
|
|
42
|
+
icon;
|
|
31
43
|
}
|
|
32
44
|
exports.MenuItemDoClickFunction = MenuItemDoClickFunction;
|
|
33
45
|
// A menu item which shows a popup screen when it is clieked
|
|
@@ -42,5 +54,11 @@ class MenuItemShowPopup {
|
|
|
42
54
|
};
|
|
43
55
|
this.reduxAction = PopupRedux.PopupShowScreen(module, componentName, popupParams);
|
|
44
56
|
}
|
|
57
|
+
name;
|
|
58
|
+
reduxAction;
|
|
59
|
+
label;
|
|
60
|
+
category;
|
|
61
|
+
isVisible;
|
|
62
|
+
icon;
|
|
45
63
|
}
|
|
46
64
|
exports.MenuItemShowPopup = MenuItemShowPopup;
|
|
@@ -11,6 +11,14 @@ const logOnce = (message, loggingFn) => {
|
|
|
11
11
|
doOnceFlags[message] = true;
|
|
12
12
|
};
|
|
13
13
|
class AggregatedScalarLiveValue {
|
|
14
|
+
source;
|
|
15
|
+
requestingModule;
|
|
16
|
+
adaptableApi;
|
|
17
|
+
getRowNodes;
|
|
18
|
+
aggregationReducerName;
|
|
19
|
+
aggregatedScalarExpression;
|
|
20
|
+
expressionEvaluation;
|
|
21
|
+
aggregationResult;
|
|
14
22
|
constructor(source, requestingModule, adaptableApi, getRowNodes) {
|
|
15
23
|
this.source = source;
|
|
16
24
|
this.requestingModule = requestingModule;
|
|
@@ -7,12 +7,11 @@ const Emitter_1 = tslib_1.__importDefault(require("../Emitter"));
|
|
|
7
7
|
const rxjs_1 = require("rxjs");
|
|
8
8
|
const ModuleConstants_1 = require("../Constants/ModuleConstants");
|
|
9
9
|
class AlertService {
|
|
10
|
+
adaptableApi;
|
|
11
|
+
emitter;
|
|
12
|
+
reactiveAlertsMap = new Map();
|
|
10
13
|
constructor(adaptableApi) {
|
|
11
14
|
this.adaptableApi = adaptableApi;
|
|
12
|
-
this.reactiveAlertsMap = new Map();
|
|
13
|
-
this.onReactiveAlertTriggered = (callback) => {
|
|
14
|
-
return this.emitter.on('ReactiveAlertTriggered', callback);
|
|
15
|
-
};
|
|
16
15
|
this.emitter = new Emitter_1.default();
|
|
17
16
|
}
|
|
18
17
|
destroy() {
|
|
@@ -22,6 +21,9 @@ class AlertService {
|
|
|
22
21
|
this.reactiveAlertsMap.clear();
|
|
23
22
|
this.reactiveAlertsMap = null;
|
|
24
23
|
}
|
|
24
|
+
onReactiveAlertTriggered = (callback) => {
|
|
25
|
+
return this.emitter.on('ReactiveAlertTriggered', callback);
|
|
26
|
+
};
|
|
25
27
|
createReactiveAlert(alertDefinition) {
|
|
26
28
|
// if there is already a reactive alert for this definition, delete it (possible in case of editing definitions),
|
|
27
29
|
this.deleteReactiveAlert(alertDefinition);
|
|
@@ -9,6 +9,9 @@ const ArrayExtensions_1 = tslib_1.__importDefault(require("../Extensions/ArrayEx
|
|
|
9
9
|
* If there are active Notes or Comments it listens to Cell Selection and Mouse Enter events
|
|
10
10
|
*/
|
|
11
11
|
class AnnotationsService {
|
|
12
|
+
api;
|
|
13
|
+
adaptable;
|
|
14
|
+
isListeningToEvents;
|
|
12
15
|
constructor(api) {
|
|
13
16
|
this.api = api;
|
|
14
17
|
this.isListeningToEvents = false;
|
|
@@ -4,9 +4,10 @@ exports.CalculatedColumnExpressionService = void 0;
|
|
|
4
4
|
const ModuleConstants_1 = require("../Constants/ModuleConstants");
|
|
5
5
|
const AggregatedScalarLiveValue_1 = require("./AggregatedScalarLiveValue");
|
|
6
6
|
class CalculatedColumnExpressionService {
|
|
7
|
+
adaptableApi;
|
|
8
|
+
aggregatedScalarLiveValuesMap = new Map();
|
|
7
9
|
constructor(adaptableApi) {
|
|
8
10
|
this.adaptableApi = adaptableApi;
|
|
9
|
-
this.aggregatedScalarLiveValuesMap = new Map();
|
|
10
11
|
this.adaptableApi = adaptableApi;
|
|
11
12
|
}
|
|
12
13
|
listentoCellDataChange(cellDataChangedInfo) {
|
|
@@ -5,6 +5,7 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const InternalRedux = tslib_1.__importStar(require("../../Redux/ActionsReducers/InternalRedux"));
|
|
6
6
|
const ObjectFactory_1 = tslib_1.__importDefault(require("../ObjectFactory"));
|
|
7
7
|
class ChartingService {
|
|
8
|
+
api;
|
|
8
9
|
constructor(api) {
|
|
9
10
|
this.api = api;
|
|
10
11
|
}
|
|
@@ -8,10 +8,16 @@ const Helper_1 = tslib_1.__importDefault(require("../Helpers/Helper"));
|
|
|
8
8
|
// ~ 8 hours
|
|
9
9
|
const MAX_TIMEFRAME_SIZE = 86400000;
|
|
10
10
|
class DataService {
|
|
11
|
+
adaptable;
|
|
12
|
+
emitter;
|
|
13
|
+
cellDataChangeLogSubject$;
|
|
14
|
+
cellDataChangeLog$;
|
|
15
|
+
rowDataChangeLogSubject$;
|
|
16
|
+
rowDataChangeLog$;
|
|
17
|
+
undoChangeLog;
|
|
18
|
+
undoChangeTimers;
|
|
11
19
|
constructor(adaptable) {
|
|
12
20
|
this.adaptable = adaptable;
|
|
13
|
-
this.on = (eventName, callback) => this.emitter.on(eventName, callback);
|
|
14
|
-
this.emit = (eventName, data) => this.emitter.emit(eventName, data);
|
|
15
21
|
this.adaptable = adaptable;
|
|
16
22
|
this.emitter = new Emitter_1.default();
|
|
17
23
|
this.cellDataChangeLogSubject$ = new rxjs_1.Subject();
|
|
@@ -35,6 +41,8 @@ class DataService {
|
|
|
35
41
|
this.undoChangeTimers.clear();
|
|
36
42
|
this.undoChangeTimers = null;
|
|
37
43
|
}
|
|
44
|
+
on = (eventName, callback) => this.emitter.on(eventName, callback);
|
|
45
|
+
emit = (eventName, data) => this.emitter.emit(eventName, data);
|
|
38
46
|
CreateCellDataChangedEvent(cellDataChangedInfo) {
|
|
39
47
|
if (cellDataChangedInfo.newValue != cellDataChangedInfo.oldValue) {
|
|
40
48
|
this.emitter.emitSync('CellDataChanged', cellDataChangedInfo);
|
|
@@ -4,11 +4,13 @@ exports.Fdc3Service = void 0;
|
|
|
4
4
|
const Fdc3Context_1 = require("../../AdaptableState/Common/Fdc3Context");
|
|
5
5
|
const Fdc3Intent_1 = require("../../AdaptableState/Common/Fdc3Intent");
|
|
6
6
|
class Fdc3Service {
|
|
7
|
+
adaptableApi;
|
|
8
|
+
contextHandlerSubscriptions = [];
|
|
9
|
+
intentHandlerSubscriptions = [];
|
|
10
|
+
loggedAgentError = false;
|
|
11
|
+
uiControlsDefaultConfiguration;
|
|
7
12
|
constructor(adaptableApi) {
|
|
8
13
|
this.adaptableApi = adaptableApi;
|
|
9
|
-
this.contextHandlerSubscriptions = [];
|
|
10
|
-
this.intentHandlerSubscriptions = [];
|
|
11
|
-
this.loggedAgentError = false;
|
|
12
14
|
// 1. Subscribe to FDC3 events
|
|
13
15
|
const adaptableHandleIntentFn = this.getFdc3Options().intents?.handleIntent;
|
|
14
16
|
const listenForIntents = this.getFdc3Options().intents?.listensFor ?? [];
|
|
@@ -6,6 +6,11 @@ exports.FLASHING_CELL_ROW_KEY = '__ROW';
|
|
|
6
6
|
* This service manages Flashing Cells
|
|
7
7
|
*/
|
|
8
8
|
class FlashingCellService {
|
|
9
|
+
api;
|
|
10
|
+
// map of rowPrimaryKey -> ColIdOrRowId -> FlashingCellUuid
|
|
11
|
+
gridCellsCurrentlyFlashing;
|
|
12
|
+
// map of FlashingCellUuid -> FlashingCell
|
|
13
|
+
flashingCellsMapping;
|
|
9
14
|
constructor(api) {
|
|
10
15
|
this.api = api;
|
|
11
16
|
this.gridCellsCurrentlyFlashing = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.LicenseService=exports.LicenseValidityType=void 0;const e=require("tslib"),a=require("../../../Redux/ActionsReducers/InternalRedux"),t=require("../../../Redux/ActionsReducers/PopupRedux"),s=e.__importDefault(require("../../ObjectFactory")),i=e.__importDefault(require("lodash/clamp")),o=require("../../Constants/DocumentationLinkConstants"),n=require("../../license/decode"),r=require("./shouldLogThankYouMessage"),l="sales@adaptabletools.com",c=10,d=864e5;var p;!function(e){e.INVALID_LICENSE="INVALID_LICENSE",e.NO_LICENSE="NO_LICENSE",e.NON_PRODUCTION_VALID="NON_PRODUCTION_VALID",e.NON_PRODUCTION_EXPIRED_IN_SCOPE="NON_PRODUCTION_EXPIRED_IN_SCOPE",e.NON_PRODUCTION_EXPIRED_OUT_OF_SCOPE="NON_PRODUCTION_EXPIRED_OUT_OF_SCOPE",e.COMMERCIAL_VALID="COMMERCIAL_VALID",e.COMMERCIAL_EXPIRED_IN_SCOPE="COMMERCIAL_EXPIRED_IN_SCOPE",e.COMMERCIAL_EXPIRED_OUT_OF_SCOPE="COMMERCIAL_EXPIRED_OUT_OF_SCOPE"}(p||(exports.LicenseValidityType=p={}));const h=()=>"undefined"!=typeof window?window.location.origin:"",E=()=>{const e=h(),[a,t,s]=Array.from(/(https):\/\/\d+\-\d+\-\d+\-(sandpack\.codesandbox\.io)/g.exec(e)||[]);return"https"===t&&"sandpack.codesandbox.io"===s},_=()=>{const e=h(),[a,t,s]=Array.from(/(https):\/\/\S+(\.csb\.app)/g.exec(e)||[]);return"https"===t&&".csb.app"===s},I=()=>{const e=h(),[a,t,s]=Array.from(/(https):\/\/\S+(\.adaptabletools\.com)/g.exec(e)||[]);return"https"===t&&".adaptabletools.com"===s};class O{constructor(e,a,t){this.adaptable=e,this.licenseKey=a,this.packageDetails=t,this.adaptable=e,this.adaptable.api.eventApi.on("AdaptableReady",()=>{requestAnimationFrame(()=>{this.adaptable.isDestroyed||this.init()})})}init(){let e=null;if(this.licenseKey)try{e=(0,n.decode)(this.licenseKey)}catch(a){e=a}E()||_()||I()||this.handleLicenseValidation(e,this.getValidityType(e,this.packageDetails))}getValidityType(e,a){if(!e)return p.NO_LICENSE;if(e instanceof Error)return p.INVALID_LICENSE;const t=new Date(a.publishedAt),s=new Date(e.end),i=s<new Date,o=e.trial;let n=null;return n=i?s>t?o?p.NON_PRODUCTION_EXPIRED_IN_SCOPE:p.COMMERCIAL_EXPIRED_IN_SCOPE:o?p.NON_PRODUCTION_EXPIRED_OUT_OF_SCOPE:p.COMMERCIAL_EXPIRED_OUT_OF_SCOPE:o?p.NON_PRODUCTION_VALID:p.COMMERCIAL_VALID,n}handleLicenseValidation(e,a){const t=new Date;t.setHours(0,0,0,0);let s=0;e instanceof Error||!e?.end||(s=Math.floor((e?.end?.getTime()-t.getTime())/d),s=(0,i.default)(s,0,1/0));let p="",h="";!e||e instanceof Error||!e.appName||e.appName==n.GENERIC_APP_NAME||(p=e.appName,h=" for application [APP_NAME]");const E=(e,a=o.LicenseDocsLink,t=l,i=s,n=p)=>e.replace("[LINK]",a).replace("[EMAIL]",t).replace("[APP_NAME]",n).replace("[DAYS]",`${i}`);switch(a){case"NO_LICENSE":case"NON_PRODUCTION_EXPIRED_OUT_OF_SCOPE":this.adaptable.logger.consoleLogByMessageType(E("This instance of AdapTable does not have a license, and some functionality has therefore been removed. In order to use a fully-featured version of AdapTable, please contact [EMAIL]. You can learn more about the different AdapTable license options at [LINK]."),"Error"),this.showNotification("No AdapTable License found."),this.showWatermark("This instance of AdapTable does not have a license, and some functionality has therefore been removed."),this.disableStatePersistence();break;case"INVALID_LICENSE":this.adaptable.logger.consoleLogByMessageType(E("This instance of AdapTable seems to use a corrupted License, and some functionality has therefore been removed. In order to use a fully-featured version of AdapTable, please contact [EMAIL]. You can learn more about the different AdapTable license options at [LINK]."),"Error"),this.showNotification("Corrupted AdapTable License found."),this.showWatermark("This instance of AdapTable has a corrupted License, and some functionality has therefore been removed."),this.disableStatePersistence();break;case"NON_PRODUCTION_VALID":this.adaptable.logger.consoleLogByMessageType(E("This AdapTable trial license expires in [DAYS] days. Please contact [EMAIL] to upgrade to a commercial version of AdapTable. You can learn more about the different AdapTable license options at [LINK]."),"Info");break;case"NON_PRODUCTION_EXPIRED_IN_SCOPE":this.adaptable.logger.consoleLogByMessageType(E("This AdapTable trial license has now expired. Please contact [EMAIL] to upgrade to a commercial version of AdapTable. You can learn more about the different AdapTable license options at [LINK]."),"Warning"),this.showWatermark("AdapTable License has expired");break;case"COMMERCIAL_VALID":if(s<=c)this.adaptable.logger.consoleLogByMessageType(E(`This AdapTable license${h} expires in [DAYS] days. Please contact [EMAIL] to renew (giving you access to Support and Updates)`),"Info");else try{(0,r.shouldLogThankYouMessage)()&&this.adaptable.logger.consoleLogByMessageType(E(`Thank you for using a valid AdapTable license${h}. Your license will expire in [DAYS] days.`),"Info")}catch(e){}break;case"COMMERCIAL_EXPIRED_IN_SCOPE":this.adaptable.logger.consoleLogByMessageType(E(`This AdapTable license${h} has expired. Please contact [EMAIL] if you wish to renew (giving you access to Support and Updates)`),"Warning");break;case"COMMERCIAL_EXPIRED_OUT_OF_SCOPE":this.adaptable.logger.consoleLogByMessageType(E(`This AdapTable license${h} has expired. Adaptable version was published after the license expired. Please contact [EMAIL] if you wish to renew your license.`),"Error"),this.showNotification("Adaptable License has expired"),this.showWatermark("Adaptable License has expired")}}showNotification(e){this.adaptable.api.internalApi.dispatchReduxAction((0,t.PopupShowAlert)({alertType:"generic",header:"License Error",message:e,alertDefinition:s.default.CreateInternalAlertDefinitionForMessages("Error")}))}showWatermark(e){this.adaptable.api.internalApi.dispatchReduxAction((0,a.LicenseShowWatermark)(e))}disableStatePersistence(){this.adaptable.api.internalApi.dispatchReduxAction((0,a.LicenseDisablePersistence)())}destroy(){}}exports.LicenseService=O;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.LicenseService=exports.LicenseValidityType=void 0;const e=require("tslib"),a=require("../../../Redux/ActionsReducers/InternalRedux"),t=require("../../../Redux/ActionsReducers/PopupRedux"),s=e.__importDefault(require("../../ObjectFactory")),i=e.__importDefault(require("lodash/clamp")),o=require("../../Constants/DocumentationLinkConstants"),n=require("../../license/decode"),r=require("./shouldLogThankYouMessage"),l="sales@adaptabletools.com",c=10,d=864e5;var p;!function(e){e.INVALID_LICENSE="INVALID_LICENSE",e.NO_LICENSE="NO_LICENSE",e.NON_PRODUCTION_VALID="NON_PRODUCTION_VALID",e.NON_PRODUCTION_EXPIRED_IN_SCOPE="NON_PRODUCTION_EXPIRED_IN_SCOPE",e.NON_PRODUCTION_EXPIRED_OUT_OF_SCOPE="NON_PRODUCTION_EXPIRED_OUT_OF_SCOPE",e.COMMERCIAL_VALID="COMMERCIAL_VALID",e.COMMERCIAL_EXPIRED_IN_SCOPE="COMMERCIAL_EXPIRED_IN_SCOPE",e.COMMERCIAL_EXPIRED_OUT_OF_SCOPE="COMMERCIAL_EXPIRED_OUT_OF_SCOPE"}(p||(exports.LicenseValidityType=p={}));const h=()=>"undefined"!=typeof window?window.location.origin:"",E=()=>{const e=h(),[a,t,s]=Array.from(/(https):\/\/\d+\-\d+\-\d+\-(sandpack\.codesandbox\.io)/g.exec(e)||[]);return"https"===t&&"sandpack.codesandbox.io"===s},_=()=>{const e=h(),[a,t,s]=Array.from(/(https):\/\/\S+(\.csb\.app)/g.exec(e)||[]);return"https"===t&&".csb.app"===s},I=()=>{const e=h(),[a,t,s]=Array.from(/(https):\/\/\S+(\.adaptabletools\.com)/g.exec(e)||[]);return"https"===t&&".adaptabletools.com"===s};class O{adaptable;licenseKey;packageDetails;constructor(e,a,t){this.adaptable=e,this.licenseKey=a,this.packageDetails=t,this.adaptable=e,this.adaptable.api.eventApi.on("AdaptableReady",()=>{requestAnimationFrame(()=>{this.adaptable.isDestroyed||this.init()})})}init(){let e=null;if(this.licenseKey)try{e=(0,n.decode)(this.licenseKey)}catch(a){e=a}E()||_()||I()||this.handleLicenseValidation(e,this.getValidityType(e,this.packageDetails))}getValidityType(e,a){if(!e)return p.NO_LICENSE;if(e instanceof Error)return p.INVALID_LICENSE;const t=new Date(a.publishedAt),s=new Date(e.end),i=s<new Date,o=e.trial;let n=null;return n=i?s>t?o?p.NON_PRODUCTION_EXPIRED_IN_SCOPE:p.COMMERCIAL_EXPIRED_IN_SCOPE:o?p.NON_PRODUCTION_EXPIRED_OUT_OF_SCOPE:p.COMMERCIAL_EXPIRED_OUT_OF_SCOPE:o?p.NON_PRODUCTION_VALID:p.COMMERCIAL_VALID,n}handleLicenseValidation(e,a){const t=new Date;t.setHours(0,0,0,0);let s=0;e instanceof Error||!e?.end||(s=Math.floor((e?.end?.getTime()-t.getTime())/d),s=(0,i.default)(s,0,1/0));let p="",h="";!e||e instanceof Error||!e.appName||e.appName==n.GENERIC_APP_NAME||(p=e.appName,h=" for application [APP_NAME]");const E=(e,a=o.LicenseDocsLink,t=l,i=s,n=p)=>e.replace("[LINK]",a).replace("[EMAIL]",t).replace("[APP_NAME]",n).replace("[DAYS]",`${i}`);switch(a){case"NO_LICENSE":case"NON_PRODUCTION_EXPIRED_OUT_OF_SCOPE":this.adaptable.logger.consoleLogByMessageType(E("This instance of AdapTable does not have a license, and some functionality has therefore been removed. In order to use a fully-featured version of AdapTable, please contact [EMAIL]. You can learn more about the different AdapTable license options at [LINK]."),"Error"),this.showNotification("No AdapTable License found."),this.showWatermark("This instance of AdapTable does not have a license, and some functionality has therefore been removed."),this.disableStatePersistence();break;case"INVALID_LICENSE":this.adaptable.logger.consoleLogByMessageType(E("This instance of AdapTable seems to use a corrupted License, and some functionality has therefore been removed. In order to use a fully-featured version of AdapTable, please contact [EMAIL]. You can learn more about the different AdapTable license options at [LINK]."),"Error"),this.showNotification("Corrupted AdapTable License found."),this.showWatermark("This instance of AdapTable has a corrupted License, and some functionality has therefore been removed."),this.disableStatePersistence();break;case"NON_PRODUCTION_VALID":this.adaptable.logger.consoleLogByMessageType(E("This AdapTable trial license expires in [DAYS] days. Please contact [EMAIL] to upgrade to a commercial version of AdapTable. You can learn more about the different AdapTable license options at [LINK]."),"Info");break;case"NON_PRODUCTION_EXPIRED_IN_SCOPE":this.adaptable.logger.consoleLogByMessageType(E("This AdapTable trial license has now expired. Please contact [EMAIL] to upgrade to a commercial version of AdapTable. You can learn more about the different AdapTable license options at [LINK]."),"Warning"),this.showWatermark("AdapTable License has expired");break;case"COMMERCIAL_VALID":if(s<=c)this.adaptable.logger.consoleLogByMessageType(E(`This AdapTable license${h} expires in [DAYS] days. Please contact [EMAIL] to renew (giving you access to Support and Updates)`),"Info");else try{(0,r.shouldLogThankYouMessage)()&&this.adaptable.logger.consoleLogByMessageType(E(`Thank you for using a valid AdapTable license${h}. Your license will expire in [DAYS] days.`),"Info")}catch(e){}break;case"COMMERCIAL_EXPIRED_IN_SCOPE":this.adaptable.logger.consoleLogByMessageType(E(`This AdapTable license${h} has expired. Please contact [EMAIL] if you wish to renew (giving you access to Support and Updates)`),"Warning");break;case"COMMERCIAL_EXPIRED_OUT_OF_SCOPE":this.adaptable.logger.consoleLogByMessageType(E(`This AdapTable license${h} has expired. Adaptable version was published after the license expired. Please contact [EMAIL] if you wish to renew your license.`),"Error"),this.showNotification("Adaptable License has expired"),this.showWatermark("Adaptable License has expired")}}showNotification(e){this.adaptable.api.internalApi.dispatchReduxAction((0,t.PopupShowAlert)({alertType:"generic",header:"License Error",message:e,alertDefinition:s.default.CreateInternalAlertDefinitionForMessages("Error")}))}showWatermark(e){this.adaptable.api.internalApi.dispatchReduxAction((0,a.LicenseShowWatermark)(e))}disableStatePersistence(){this.adaptable.api.internalApi.dispatchReduxAction((0,a.LicenseDisablePersistence)())}destroy(){}}exports.LicenseService=O;
|
|
@@ -9,9 +9,9 @@ const AdaptableLogger_1 = require("../../agGrid/AdaptableLogger");
|
|
|
9
9
|
const DefaultAdaptableOptions_1 = require("../../AdaptableOptions/DefaultAdaptableOptions");
|
|
10
10
|
const supportedMetamodelTypes = ['s', 'n', 'b', 'a', 'f', 'R'];
|
|
11
11
|
class MetamodelService {
|
|
12
|
+
gridInfoOptions = new Map();
|
|
13
|
+
getAdaptableOptions = () => null;
|
|
12
14
|
constructor(getAdaptableOptions, validateOptions) {
|
|
13
|
-
this.gridInfoOptions = new Map();
|
|
14
|
-
this.getAdaptableOptions = () => null;
|
|
15
15
|
this.getAdaptableOptions = getAdaptableOptions;
|
|
16
16
|
this.gridInfoOptions = this.buildGridInfoOptions();
|
|
17
17
|
if (validateOptions) {
|
|
@@ -5,6 +5,7 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const Helper_1 = tslib_1.__importDefault(require("../Helpers/Helper"));
|
|
6
6
|
const DocumentationLinkConstants_1 = require("../Constants/DocumentationLinkConstants");
|
|
7
7
|
class ModuleService {
|
|
8
|
+
adaptableApi;
|
|
8
9
|
constructor(adaptableApi) {
|
|
9
10
|
this.adaptableApi = adaptableApi;
|
|
10
11
|
this.adaptableApi = adaptableApi;
|
|
@@ -13,13 +13,14 @@ const scalarExpressionFunctions_1 = require("../ExpressionFunctions/scalarExpres
|
|
|
13
13
|
const TypeExtensions_1 = require("../Extensions/TypeExtensions");
|
|
14
14
|
const AggregatedScalarLiveValue_1 = require("./AggregatedScalarLiveValue");
|
|
15
15
|
class QueryLanguageService {
|
|
16
|
+
adaptableApi;
|
|
17
|
+
cacheBooleanValidation = new Map();
|
|
18
|
+
cacheObservableValidation = new Map();
|
|
19
|
+
cacheAggregatedBooleanValidation = new Map();
|
|
20
|
+
cacheAggregatedScalarValidation = new Map();
|
|
21
|
+
cacheModuleSpecificExpressionFunctions = new Map();
|
|
16
22
|
constructor(adaptableApi) {
|
|
17
23
|
this.adaptableApi = adaptableApi;
|
|
18
|
-
this.cacheBooleanValidation = new Map();
|
|
19
|
-
this.cacheObservableValidation = new Map();
|
|
20
|
-
this.cacheAggregatedBooleanValidation = new Map();
|
|
21
|
-
this.cacheAggregatedScalarValidation = new Map();
|
|
22
|
-
this.cacheModuleSpecificExpressionFunctions = new Map();
|
|
23
24
|
}
|
|
24
25
|
evaluateBooleanExpression(expression, module, rowNode, evalContext) {
|
|
25
26
|
if (expression == undefined) {
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.RowFormService = void 0;
|
|
4
4
|
class RowFormService {
|
|
5
|
+
adaptableApi;
|
|
5
6
|
constructor(adaptableApi) {
|
|
6
7
|
this.adaptableApi = adaptableApi;
|
|
7
8
|
if (adaptableApi.optionsApi.getRowFormOptions().autoHandle) {
|
|
@@ -14,15 +14,12 @@ const isEqual_1 = tslib_1.__importDefault(require("lodash/isEqual"));
|
|
|
14
14
|
* The logic is extracted here to make it easier to follow
|
|
15
15
|
*/
|
|
16
16
|
class RowSummaryService {
|
|
17
|
+
api;
|
|
18
|
+
cachedCellSummary = new Map();
|
|
19
|
+
previousRowSummaries;
|
|
20
|
+
previousLayout;
|
|
17
21
|
constructor(api) {
|
|
18
22
|
this.api = api;
|
|
19
|
-
this.cachedCellSummary = new Map();
|
|
20
|
-
this._throttleAcumulatedColumnsThatChanged = new Set();
|
|
21
|
-
/**
|
|
22
|
-
*
|
|
23
|
-
* @param colId optional to evaluate only one column
|
|
24
|
-
*/
|
|
25
|
-
this._throttledEvaluateRowSummary = (0, throttle_1.default)(this.evaluateRowSummary, 300);
|
|
26
23
|
}
|
|
27
24
|
onAdaptableReady() {
|
|
28
25
|
this.rowSummariesSubscriptions();
|
|
@@ -70,12 +67,18 @@ class RowSummaryService {
|
|
|
70
67
|
this.throttledEvaluateRowSummary();
|
|
71
68
|
});
|
|
72
69
|
}
|
|
70
|
+
_throttleAcumulatedColumnsThatChanged = new Set();
|
|
73
71
|
throttledEvaluateRowSummary(reason) {
|
|
74
72
|
if (reason) {
|
|
75
73
|
reason.columnIds.forEach((col) => this._throttleAcumulatedColumnsThatChanged.add(col));
|
|
76
74
|
}
|
|
77
75
|
this._throttledEvaluateRowSummary(reason);
|
|
78
76
|
}
|
|
77
|
+
/**
|
|
78
|
+
*
|
|
79
|
+
* @param colId optional to evaluate only one column
|
|
80
|
+
*/
|
|
81
|
+
_throttledEvaluateRowSummary = (0, throttle_1.default)(this.evaluateRowSummary, 300);
|
|
79
82
|
evaluateRowSummary(reason) {
|
|
80
83
|
if (this._throttleAcumulatedColumnsThatChanged.size > 0) {
|
|
81
84
|
const columnIds = Array.from(this._throttleAcumulatedColumnsThatChanged.values());
|
|
@@ -5,9 +5,11 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const Uuid_1 = require("../../AdaptableState/Uuid");
|
|
6
6
|
const ObjectFactory_1 = tslib_1.__importDefault(require("../ObjectFactory"));
|
|
7
7
|
class TeamSharingService {
|
|
8
|
+
adaptableApi;
|
|
9
|
+
dismissedNotifications = [];
|
|
10
|
+
updateCheckTimerId;
|
|
8
11
|
constructor(adaptableApi) {
|
|
9
12
|
this.adaptableApi = adaptableApi;
|
|
10
|
-
this.dismissedNotifications = [];
|
|
11
13
|
const teamSharingOptions = adaptableApi.optionsApi.getTeamSharingOptions();
|
|
12
14
|
if (teamSharingOptions.updateInterval > 0) {
|
|
13
15
|
// convert minutes to millis
|
|
@@ -2,16 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ThemeService = void 0;
|
|
4
4
|
class ThemeService {
|
|
5
|
+
api;
|
|
6
|
+
unsubscribe = () => { };
|
|
7
|
+
styleSheetObject;
|
|
5
8
|
constructor(api) {
|
|
6
|
-
this.unsubscribe = () => { };
|
|
7
|
-
this.onThemeChanged = () => {
|
|
8
|
-
let currentTheme = this.api.themeApi.getCurrentThemeObject();
|
|
9
|
-
currentTheme = this.mapOsTheme(currentTheme);
|
|
10
|
-
this.applyNewThemeVariables(currentTheme);
|
|
11
|
-
// this needs to be called after variables are set
|
|
12
|
-
// as it may show the warning for a custom/runtime theme
|
|
13
|
-
this.showMissingThemeFiles(currentTheme);
|
|
14
|
-
};
|
|
15
9
|
this.api = api;
|
|
16
10
|
this.subscribe();
|
|
17
11
|
if (!this.styleSheetObject) {
|
|
@@ -36,6 +30,14 @@ class ThemeService {
|
|
|
36
30
|
prefferedColorSchemeUnsubscribe();
|
|
37
31
|
};
|
|
38
32
|
}
|
|
33
|
+
onThemeChanged = () => {
|
|
34
|
+
let currentTheme = this.api.themeApi.getCurrentThemeObject();
|
|
35
|
+
currentTheme = this.mapOsTheme(currentTheme);
|
|
36
|
+
this.applyNewThemeVariables(currentTheme);
|
|
37
|
+
// this needs to be called after variables are set
|
|
38
|
+
// as it may show the warning for a custom/runtime theme
|
|
39
|
+
this.showMissingThemeFiles(currentTheme);
|
|
40
|
+
};
|
|
39
41
|
applyNewThemeVariables(theme) {
|
|
40
42
|
const variables = theme.CSSVariables;
|
|
41
43
|
if (!variables || Object.keys(variables).length === 0) {
|
|
@@ -8,6 +8,7 @@ const ModuleConstants_1 = require("../Constants/ModuleConstants");
|
|
|
8
8
|
const GeneralConstants_1 = require("../Constants/GeneralConstants");
|
|
9
9
|
const AdaptableLogger_1 = require("../../agGrid/AdaptableLogger");
|
|
10
10
|
class ValidationService {
|
|
11
|
+
adaptableApi;
|
|
11
12
|
constructor(adaptableApi) {
|
|
12
13
|
this.adaptableApi = adaptableApi;
|
|
13
14
|
this.adaptableApi = adaptableApi;
|
|
@@ -17,6 +17,7 @@ const react_redux_1 = require("react-redux");
|
|
|
17
17
|
const Flex_1 = require("../../components/Flex");
|
|
18
18
|
const clsx_1 = tslib_1.__importDefault(require("clsx"));
|
|
19
19
|
class BulkUpdateViewPanelComponent extends React.Component {
|
|
20
|
+
cleanupEvent;
|
|
20
21
|
constructor(props) {
|
|
21
22
|
super(props);
|
|
22
23
|
this.state = {
|
|
@@ -13,14 +13,6 @@ const CalculatedColumnWizard_1 = require("./Wizard/CalculatedColumnWizard");
|
|
|
13
13
|
class CalculatedColumnSummaryComponent extends React.Component {
|
|
14
14
|
constructor(props) {
|
|
15
15
|
super(props);
|
|
16
|
-
this.onFinishWizard = (calculatedColumn) => {
|
|
17
|
-
this.props.onEdit(calculatedColumn);
|
|
18
|
-
this.setState({
|
|
19
|
-
editedAdaptableObject: null,
|
|
20
|
-
wizardStartIndex: 0,
|
|
21
|
-
wizardStatus: EditableConfigEntityState_1.WizardStatus.None,
|
|
22
|
-
});
|
|
23
|
-
};
|
|
24
16
|
this.state = UIHelper_1.UIHelper.getEmptyConfigState();
|
|
25
17
|
}
|
|
26
18
|
render() {
|
|
@@ -48,6 +40,14 @@ class CalculatedColumnSummaryComponent extends React.Component {
|
|
|
48
40
|
wizardStatus: EditableConfigEntityState_1.WizardStatus.None,
|
|
49
41
|
});
|
|
50
42
|
}
|
|
43
|
+
onFinishWizard = (calculatedColumn) => {
|
|
44
|
+
this.props.onEdit(calculatedColumn);
|
|
45
|
+
this.setState({
|
|
46
|
+
editedAdaptableObject: null,
|
|
47
|
+
wizardStartIndex: 0,
|
|
48
|
+
wizardStatus: EditableConfigEntityState_1.WizardStatus.None,
|
|
49
|
+
});
|
|
50
|
+
};
|
|
51
51
|
}
|
|
52
52
|
exports.CalculatedColumnSummaryComponent = CalculatedColumnSummaryComponent;
|
|
53
53
|
function mapStateToProps(state) {
|
|
@@ -14,6 +14,7 @@ const react_redux_1 = require("react-redux");
|
|
|
14
14
|
const Select_1 = require("../../components/Select");
|
|
15
15
|
const Flex_1 = require("../../components/Flex");
|
|
16
16
|
class CellSummaryViewPanelComponent extends React.Component {
|
|
17
|
+
cleanupEvent;
|
|
17
18
|
constructor(props) {
|
|
18
19
|
super(props);
|
|
19
20
|
}
|
|
@@ -11,6 +11,15 @@ const Glyphicon = ({ glyph, style }) => {
|
|
|
11
11
|
};
|
|
12
12
|
const baseClassName = 'ab-Button twa:text-current';
|
|
13
13
|
class ButtonBase extends React.Component {
|
|
14
|
+
static defaultProps = {
|
|
15
|
+
overrideDisableButton: false,
|
|
16
|
+
toolTipAndText: '',
|
|
17
|
+
glyph: '',
|
|
18
|
+
displayMode: 'Glyph+Text',
|
|
19
|
+
transformGlyph: false,
|
|
20
|
+
accessLevel: 'Full',
|
|
21
|
+
showDefaultStyle: false,
|
|
22
|
+
};
|
|
14
23
|
render() {
|
|
15
24
|
let isDisabled;
|
|
16
25
|
isDisabled = this.props.accessLevel == 'Hidden';
|
|
@@ -64,12 +73,3 @@ class ButtonBase extends React.Component {
|
|
|
64
73
|
}
|
|
65
74
|
}
|
|
66
75
|
exports.ButtonBase = ButtonBase;
|
|
67
|
-
ButtonBase.defaultProps = {
|
|
68
|
-
overrideDisableButton: false,
|
|
69
|
-
toolTipAndText: '',
|
|
70
|
-
glyph: '',
|
|
71
|
-
displayMode: 'Glyph+Text',
|
|
72
|
-
transformGlyph: false,
|
|
73
|
-
accessLevel: 'Full',
|
|
74
|
-
showDefaultStyle: false,
|
|
75
|
-
};
|
|
@@ -14,6 +14,24 @@ const stopPropagation = (e) => {
|
|
|
14
14
|
e.stopPropagation();
|
|
15
15
|
};
|
|
16
16
|
class EntityListActionButtons extends React.Component {
|
|
17
|
+
static defaultProps = {
|
|
18
|
+
// Adaptable: null,
|
|
19
|
+
suspendableObject: null,
|
|
20
|
+
showEdit: true,
|
|
21
|
+
showDelete: true,
|
|
22
|
+
showShare: false,
|
|
23
|
+
showSuspend: false,
|
|
24
|
+
overrideDisableEdit: false,
|
|
25
|
+
overrideDisableDelete: false,
|
|
26
|
+
overrideDisableClone: false,
|
|
27
|
+
overrideDisableShare: false,
|
|
28
|
+
confirmDeleteAction: null,
|
|
29
|
+
entityType: '',
|
|
30
|
+
accessLevel: 'Full',
|
|
31
|
+
editSize: 'xsmall',
|
|
32
|
+
deleteSize: 'xsmall',
|
|
33
|
+
shareSize: 'xsmall',
|
|
34
|
+
};
|
|
17
35
|
render() {
|
|
18
36
|
const { justifyContent } = this.props;
|
|
19
37
|
const justifyContentClassName = (0, clsx_1.default)({
|
|
@@ -30,21 +48,3 @@ class EntityListActionButtons extends React.Component {
|
|
|
30
48
|
}
|
|
31
49
|
}
|
|
32
50
|
exports.EntityListActionButtons = EntityListActionButtons;
|
|
33
|
-
EntityListActionButtons.defaultProps = {
|
|
34
|
-
// Adaptable: null,
|
|
35
|
-
suspendableObject: null,
|
|
36
|
-
showEdit: true,
|
|
37
|
-
showDelete: true,
|
|
38
|
-
showShare: false,
|
|
39
|
-
showSuspend: false,
|
|
40
|
-
overrideDisableEdit: false,
|
|
41
|
-
overrideDisableDelete: false,
|
|
42
|
-
overrideDisableClone: false,
|
|
43
|
-
overrideDisableShare: false,
|
|
44
|
-
confirmDeleteAction: null,
|
|
45
|
-
entityType: '',
|
|
46
|
-
accessLevel: 'Full',
|
|
47
|
-
editSize: 'xsmall',
|
|
48
|
-
deleteSize: 'xsmall',
|
|
49
|
-
shareSize: 'xsmall',
|
|
50
|
-
};
|
|
@@ -209,7 +209,7 @@ const FloatingFilterValues = (props) => {
|
|
|
209
209
|
...(props.value?.length
|
|
210
210
|
? {
|
|
211
211
|
valueContainer: {
|
|
212
|
-
fontWeight: 'var(--ab-cmp-
|
|
212
|
+
fontWeight: 'var(--ab-cmp-floatingfilter-selected-options-text__font-weight)',
|
|
213
213
|
},
|
|
214
214
|
}
|
|
215
215
|
: {}),
|
|
@@ -13,11 +13,6 @@ const Flex_1 = require("../../components/Flex");
|
|
|
13
13
|
class ExpressionWizard extends React.Component {
|
|
14
14
|
constructor(props) {
|
|
15
15
|
super(props);
|
|
16
|
-
this.handleCustomExpressionChange = (expression) => {
|
|
17
|
-
this.setState({
|
|
18
|
-
expression,
|
|
19
|
-
}, () => this.props.updateGoBackState());
|
|
20
|
-
};
|
|
21
16
|
this.state = {
|
|
22
17
|
// this is realy horrible but its only way to use the Expression Wizard for both Report (that has Query) and Format Column (that has Rule)
|
|
23
18
|
// once we move to the new Wizard we can remove this monstrosity
|
|
@@ -47,6 +42,11 @@ class ExpressionWizard extends React.Component {
|
|
|
47
42
|
.getQueryLanguageService()
|
|
48
43
|
.validateBoolean(this.state.expression, ModuleConstants_1.NamedQueryModuleId).isValid);
|
|
49
44
|
}
|
|
45
|
+
handleCustomExpressionChange = (expression) => {
|
|
46
|
+
this.setState({
|
|
47
|
+
expression,
|
|
48
|
+
}, () => this.props.updateGoBackState());
|
|
49
|
+
};
|
|
50
50
|
canNext() {
|
|
51
51
|
if (this.isValidExpression() == false) {
|
|
52
52
|
return false;
|
|
@@ -5,17 +5,17 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const React = tslib_1.__importStar(require("react"));
|
|
6
6
|
const Dashboard_1 = require("../../../../components/Dashboard");
|
|
7
7
|
class PanelDashboard extends React.Component {
|
|
8
|
+
static defaultProps = {
|
|
9
|
+
showConfigureActionButton: true,
|
|
10
|
+
showCloseActionButton: true,
|
|
11
|
+
headerText: 'Module',
|
|
12
|
+
onClose: null,
|
|
13
|
+
onConfigure: null,
|
|
14
|
+
accessLevel: 'Full',
|
|
15
|
+
};
|
|
8
16
|
render() {
|
|
9
17
|
const { headerText, showConfigureActionButton, showCloseActionButton, onConfigure, onClose, accessLevel, children, } = this.props;
|
|
10
18
|
return (React.createElement(Dashboard_1.DashboardToolbar, { title: headerText, onConfigure: onConfigure, showConfigure: showConfigureActionButton, showClose: showCloseActionButton, onClose: onClose, accessLevel: accessLevel }, children));
|
|
11
19
|
}
|
|
12
20
|
}
|
|
13
21
|
exports.PanelDashboard = PanelDashboard;
|
|
14
|
-
PanelDashboard.defaultProps = {
|
|
15
|
-
showConfigureActionButton: true,
|
|
16
|
-
showCloseActionButton: true,
|
|
17
|
-
headerText: 'Module',
|
|
18
|
-
onClose: null,
|
|
19
|
-
onConfigure: null,
|
|
20
|
-
accessLevel: 'Full',
|
|
21
|
-
};
|