@adaptabletools/adaptable 18.1.15-canary.0 → 19.0.0-canary.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/package.json +1 -1
- package/src/Api/Implementation/LayoutApiImpl.d.ts +2 -0
- package/src/Api/Implementation/LayoutApiImpl.js +61 -0
- package/src/Api/LayoutApi.d.ts +7 -0
- package/src/PredefinedConfig/Common/ExtendedLayoutInfo.d.ts +12 -0
- package/src/PredefinedConfig/Common/ExtendedLayoutInfo.js +1 -0
- package/src/agGrid/AdaptableAgGrid.d.ts +1 -0
- package/src/agGrid/AdaptableAgGrid.js +16 -5
- package/src/env.js +2 -2
- package/src/metamodel/adaptable.metamodel.d.ts +5 -0
- package/src/metamodel/adaptable.metamodel.js +1 -1
- package/src/types.d.ts +1 -0
- package/tsconfig.esm.tsbuildinfo +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adaptabletools/adaptable",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "19.0.0-canary.0",
|
|
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",
|
|
@@ -6,6 +6,7 @@ import { ColumnSort } from '../../PredefinedConfig/Common/ColumnSort';
|
|
|
6
6
|
import { ModuleParams } from '../../View/Components/SharedProps/ModuleViewPopupProps';
|
|
7
7
|
import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
|
|
8
8
|
import { LayoutInternalApi } from '../Internal/LayoutInternalApi';
|
|
9
|
+
import { ExtendedLayoutInfo } from '../../PredefinedConfig/Common/ExtendedLayoutInfo';
|
|
9
10
|
export declare class LayoutApiImpl extends ApiBase implements LayoutApi {
|
|
10
11
|
internalApi: LayoutInternalApi;
|
|
11
12
|
constructor(adaptable: IAdaptable);
|
|
@@ -22,6 +23,7 @@ export declare class LayoutApiImpl extends ApiBase implements LayoutApi {
|
|
|
22
23
|
getCurrentLayoutColumnSort(columnId: string): ColumnSort['SortOrder'] | null;
|
|
23
24
|
getCurrentLayoutName(): string;
|
|
24
25
|
getLayoutByName(layoutName: string): Layout | null;
|
|
26
|
+
getExtendedLayoutByName(layoutName: string): ExtendedLayoutInfo | undefined;
|
|
25
27
|
getLayouts(): Layout[];
|
|
26
28
|
getLayoutById(id: Layout['Uuid']): Layout;
|
|
27
29
|
saveCurrentLayout(): void;
|
|
@@ -74,6 +74,67 @@ export class LayoutApiImpl extends ApiBase {
|
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
|
+
getExtendedLayoutByName(layoutName) {
|
|
78
|
+
const layout = this.getLayoutByName(layoutName);
|
|
79
|
+
if (!layout) {
|
|
80
|
+
return undefined;
|
|
81
|
+
}
|
|
82
|
+
const config = {
|
|
83
|
+
includeLayoutNotAssociatedObjects: true,
|
|
84
|
+
associatedWithLayout: layoutName,
|
|
85
|
+
};
|
|
86
|
+
// cannot see a better way than to go through this module by module...
|
|
87
|
+
let extensions = [];
|
|
88
|
+
this.getAlertApi()
|
|
89
|
+
.getAlertDefinitions(config)
|
|
90
|
+
.forEach((obj) => {
|
|
91
|
+
extensions.push({ Module: 'Alert', Object: obj });
|
|
92
|
+
});
|
|
93
|
+
this.getCustomSortApi()
|
|
94
|
+
.getCustomSorts(config)
|
|
95
|
+
.forEach((obj) => {
|
|
96
|
+
extensions.push({ Module: 'CustomSort', Object: obj });
|
|
97
|
+
});
|
|
98
|
+
this.getFlashingCellApi()
|
|
99
|
+
.getFlashingCellDefinitions(config)
|
|
100
|
+
.forEach((obj) => {
|
|
101
|
+
extensions.push({ Module: 'FlashingCell', Object: obj });
|
|
102
|
+
});
|
|
103
|
+
this.getFormatColumnApi()
|
|
104
|
+
.getFormatColumns(config)
|
|
105
|
+
.forEach((obj) => {
|
|
106
|
+
extensions.push({ Module: 'FormatColumn', Object: obj });
|
|
107
|
+
});
|
|
108
|
+
this.getPlusMinusApi()
|
|
109
|
+
.getAllPlusMinus(config)
|
|
110
|
+
.forEach((obj) => {
|
|
111
|
+
extensions.push({ Module: 'PlusMinus', Object: obj });
|
|
112
|
+
});
|
|
113
|
+
this.getScheduleApi()
|
|
114
|
+
.getReminderSchedules(config)
|
|
115
|
+
.forEach((obj) => {
|
|
116
|
+
extensions.push({ Module: 'Schedule', Object: obj });
|
|
117
|
+
});
|
|
118
|
+
this.getScheduleApi()
|
|
119
|
+
.getReportSchedules(config)
|
|
120
|
+
.forEach((obj) => {
|
|
121
|
+
extensions.push({ Module: 'Schedule', Object: obj });
|
|
122
|
+
});
|
|
123
|
+
this.getShortcutApi()
|
|
124
|
+
.getShortcuts(config)
|
|
125
|
+
.forEach((obj) => {
|
|
126
|
+
extensions.push({ Module: 'Shortcut', Object: obj });
|
|
127
|
+
});
|
|
128
|
+
this.getStyledColumnApi()
|
|
129
|
+
.getStyledColumns(config)
|
|
130
|
+
.forEach((obj) => {
|
|
131
|
+
extensions.push({ Module: 'StyledColumn', Object: obj });
|
|
132
|
+
});
|
|
133
|
+
return {
|
|
134
|
+
Layout: layout,
|
|
135
|
+
Extensions: extensions,
|
|
136
|
+
};
|
|
137
|
+
}
|
|
77
138
|
getLayouts() {
|
|
78
139
|
var _a;
|
|
79
140
|
return (_a = this.getAdaptableState().Layout.Layouts) !== null && _a !== void 0 ? _a : [];
|
package/src/Api/LayoutApi.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { AdaptableColumn, ColumnSort } from '../../types';
|
|
2
|
+
import { ExtendedLayoutInfo } from '../PredefinedConfig/Common/ExtendedLayoutInfo';
|
|
2
3
|
import { LayoutState, Layout } from '../PredefinedConfig/LayoutState';
|
|
3
4
|
/**
|
|
4
5
|
* Provides run-time access to the Layout Module and associated state
|
|
@@ -56,6 +57,12 @@ export interface LayoutApi {
|
|
|
56
57
|
* @returns layout
|
|
57
58
|
*/
|
|
58
59
|
getLayoutByName(layoutName: string): Layout | null;
|
|
60
|
+
/**
|
|
61
|
+
* Retrieves Layout with the given name
|
|
62
|
+
* @param layoutName Layout to retrieve
|
|
63
|
+
* @returns layout
|
|
64
|
+
*/
|
|
65
|
+
getExtendedLayoutByName(layoutName: string): ExtendedLayoutInfo | undefined;
|
|
59
66
|
/**
|
|
60
67
|
* Retrieves all Layouts in Adaptable State
|
|
61
68
|
* @returns layouts
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { AdaptableModule, AdaptableObject, Layout } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Defines an Extended Layout - provides a Layout and all objects that refer to it
|
|
4
|
+
*/
|
|
5
|
+
export interface ExtendedLayoutInfo {
|
|
6
|
+
Layout: Layout;
|
|
7
|
+
Extensions: LayoutExtension[];
|
|
8
|
+
}
|
|
9
|
+
export interface LayoutExtension {
|
|
10
|
+
Module: AdaptableModule;
|
|
11
|
+
Object: AdaptableObject;
|
|
12
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -42,6 +42,7 @@ interface AdaptableInitInternalConfig<TData = any> {
|
|
|
42
42
|
export declare class AdaptableAgGrid implements IAdaptable {
|
|
43
43
|
logger: AdaptableLogger;
|
|
44
44
|
private _id;
|
|
45
|
+
private _agGridId;
|
|
45
46
|
lifecycleState: AdaptableLifecycleState;
|
|
46
47
|
variant: AdaptableVariant;
|
|
47
48
|
private emitter;
|
|
@@ -99,10 +99,15 @@ const GridOptionsService_updateGridOptions = GridOptionsService.prototype.update
|
|
|
99
99
|
const EventService_Prototype = EventService.prototype;
|
|
100
100
|
const EventService_wireBeans = EventService_Prototype.wireBeans;
|
|
101
101
|
// AG GRID obfuscates its internals, this is (currently) the best way to get hold of its internal services
|
|
102
|
-
|
|
102
|
+
const DANGER_AG_GRID_BEANS_MAP = {};
|
|
103
103
|
EventService_Prototype.wireBeans = function (beans) {
|
|
104
|
+
var _a;
|
|
104
105
|
EventService_wireBeans.apply(this, arguments);
|
|
105
|
-
|
|
106
|
+
const gridId = (_a = beans === null || beans === void 0 ? void 0 : beans.context) === null || _a === void 0 ? void 0 : _a.getGridId();
|
|
107
|
+
if (!gridId) {
|
|
108
|
+
console.error('CRITICAL: No gridId found in beans, this should never happen!');
|
|
109
|
+
}
|
|
110
|
+
DANGER_AG_GRID_BEANS_MAP[gridId] = beans;
|
|
106
111
|
};
|
|
107
112
|
LocalEventService_Prototype.dispatchEvent = function (event) {
|
|
108
113
|
LocalEventService_dispatchEvent.apply(this, arguments);
|
|
@@ -579,7 +584,9 @@ export class AdaptableAgGrid {
|
|
|
579
584
|
* `gridId`
|
|
580
585
|
*/
|
|
581
586
|
this.agGridOptionsService.setGridOptionsProperty(gridOptions, 'gridId', (original_gridId) => {
|
|
582
|
-
|
|
587
|
+
const agGridId = original_gridId || this.adaptableOptions.adaptableId;
|
|
588
|
+
this._agGridId = agGridId;
|
|
589
|
+
return agGridId;
|
|
583
590
|
});
|
|
584
591
|
/**
|
|
585
592
|
* `getRowId`
|
|
@@ -3025,7 +3032,7 @@ export class AdaptableAgGrid {
|
|
|
3025
3032
|
}
|
|
3026
3033
|
}
|
|
3027
3034
|
}
|
|
3028
|
-
|
|
3035
|
+
DANGER_AG_GRID_BEANS_MAP[this._agGridId] = null;
|
|
3029
3036
|
if ((config === null || config === void 0 ? void 0 : config.destroyApi) === true) {
|
|
3030
3037
|
(_b = this.agGridAdapter.getAgGridApi()) === null || _b === void 0 ? void 0 : _b.destroy();
|
|
3031
3038
|
}
|
|
@@ -4046,6 +4053,10 @@ export class AdaptableAgGrid {
|
|
|
4046
4053
|
};
|
|
4047
4054
|
}
|
|
4048
4055
|
DANGER_getPrivateAgGridBeans() {
|
|
4049
|
-
|
|
4056
|
+
const beans = DANGER_AG_GRID_BEANS_MAP[this._agGridId];
|
|
4057
|
+
if (!beans) {
|
|
4058
|
+
this.logger.consoleError('Could not get hold of AgGridBeans! This is a critical error and will prevent Adaptable from working correctly.');
|
|
4059
|
+
}
|
|
4060
|
+
return beans;
|
|
4050
4061
|
}
|
|
4051
4062
|
}
|
package/src/env.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export default {
|
|
2
2
|
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" || '',
|
|
3
|
-
PUBLISH_TIMESTAMP:
|
|
4
|
-
VERSION: "
|
|
3
|
+
PUBLISH_TIMESTAMP: 1724333931127 || Date.now(),
|
|
4
|
+
VERSION: "19.0.0-canary.0" || '--current-version--',
|
|
5
5
|
};
|
|
@@ -3251,6 +3251,11 @@ export declare const ADAPTABLE_METAMODEL: {
|
|
|
3251
3251
|
noCode?: undefined;
|
|
3252
3252
|
})[];
|
|
3253
3253
|
};
|
|
3254
|
+
ExtendedLayoutInfo: {
|
|
3255
|
+
name: string;
|
|
3256
|
+
kind: string;
|
|
3257
|
+
desc: string;
|
|
3258
|
+
};
|
|
3254
3259
|
ExternalChartingContext: {
|
|
3255
3260
|
name: string;
|
|
3256
3261
|
kind: string;
|