@ic3/reporting-api 8.4.0-alpha.2 → 8.4.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/dist/ApiUtils.js +2 -2
- package/dist/ApiUtils.js.map +1 -1
- package/dist/ITypes.d.ts +10 -0
- package/dist/IcEvent.d.ts +13 -0
- package/dist/IcEvent.js +11 -1
- package/dist/IcEvent.js.map +1 -1
- package/dist/PublicAmchartsData.d.ts +2 -2
- package/dist/PublicAmchartsData.js +3 -6
- package/dist/PublicAmchartsData.js.map +1 -1
- package/dist/PublicContext.d.ts +18 -16
- package/dist/PublicContext.js.map +1 -1
- package/dist/PublicTemplate.d.ts +13 -3
- package/dist/PublicTemplate.js.map +1 -1
- package/dist/PublicTemplateForm.d.ts +1 -1
- package/dist/PublicTemplateForm.js +1 -1
- package/dist/PublicTemplateForm.js.map +1 -1
- package/dist/PublicTheme.d.ts +29 -3
- package/dist/PublicTheme.js.map +1 -1
- package/dist/PublicTidyColumn.d.ts +17 -1
- package/dist/PublicTidyColumn.js.map +1 -1
- package/dist/PublicTidyTable.d.ts +7 -1
- package/dist/PublicTidyTableInteractions.d.ts +0 -4
- package/dist/theme/ThemeBaseTable.d.ts +10 -0
- package/dist/theme/ThemeDatePicker.d.ts +25 -14
- package/dist/theme/ThemeDatePicker.js +13 -1
- package/dist/theme/ThemeDatePicker.js.map +1 -1
- package/dist/theme/ThemeFilterAutocomplete.d.ts +1 -2
- package/dist/theme/ThemeFilterPanel.d.ts +1 -0
- package/dist/theme/ThemeFilterPanel.js +1 -0
- package/dist/theme/ThemeFilterPanel.js.map +1 -1
- package/dist/theme/ThemeFilterSlider.d.ts +1 -0
- package/dist/theme/ThemeFilterSlider.js +1 -0
- package/dist/theme/ThemeFilterSlider.js.map +1 -1
- package/dist/theme/ThemeFilterTree.d.ts +9 -3
- package/dist/theme/ThemeFilterTree.js +12 -1
- package/dist/theme/ThemeFilterTree.js.map +1 -1
- package/dist/theme/ThemeLazyTreeClasses.d.ts +12 -0
- package/dist/theme/ThemeLazyTreeClasses.js +12 -0
- package/dist/theme/ThemeLazyTreeClasses.js.map +1 -1
- package/dist/theme/ThemeListCounter.d.ts +2 -0
- package/dist/theme/ThemeListCounter.js +2 -0
- package/dist/theme/ThemeListCounter.js.map +1 -1
- package/dist/theme/ThemeWidgetBox.d.ts +1 -0
- package/dist/theme/ThemeWidgetBox.js +1 -0
- package/dist/theme/ThemeWidgetBox.js.map +1 -1
- package/package.json +5 -5
package/dist/ApiUtils.js
CHANGED
|
@@ -8,7 +8,7 @@ const ReportingVersion_1 = __importDefault(require("./ReportingVersion"));
|
|
|
8
8
|
class ApiUtils {
|
|
9
9
|
static makePlugin(definition) {
|
|
10
10
|
return () => {
|
|
11
|
-
return Object.assign({ apiVersion: new ReportingVersion_1.default("8.4.0
|
|
11
|
+
return Object.assign({ apiVersion: new ReportingVersion_1.default("8.4.0" || "-", "Wed, 19 Apr 2023 07:38:04 GMT" || "-") }, definition);
|
|
12
12
|
};
|
|
13
13
|
}
|
|
14
14
|
/**
|
|
@@ -23,7 +23,7 @@ class ApiUtils {
|
|
|
23
23
|
}, reactComponent: false, withDrilldownPivotTableLikeAs: false });
|
|
24
24
|
}
|
|
25
25
|
static resolveAmCharts4WidgetTemplateDefinition(definition, wrapped) {
|
|
26
|
-
return Object.assign(Object.assign(Object.assign({}, wrapped), definition), { resolveDefinition: undefined, jsCode: wrapped.jsCode });
|
|
26
|
+
return Object.assign(Object.assign(Object.assign({}, wrapped), definition /* since Typescript 5.0.2 */), { resolveDefinition: undefined, jsCode: wrapped.jsCode });
|
|
27
27
|
}
|
|
28
28
|
/**
|
|
29
29
|
* A utility function creating a wrapper widget template definition for existing AmCharts 4 widgets.
|
package/dist/ApiUtils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApiUtils.js","sourceRoot":"","sources":["../src/ApiUtils.ts"],"names":[],"mappings":";;;;;;AAEA,0EAAkD;AAiDlD,MAAa,QAAQ;IAOV,MAAM,CAAC,UAAU,CAAC,UAA6B;QAElD,OAAO,GAA+B,EAAE;YAEpC,uBAEI,UAAU,EAAE,IAAI,0BAAgB,CAC5B,
|
|
1
|
+
{"version":3,"file":"ApiUtils.js","sourceRoot":"","sources":["../src/ApiUtils.ts"],"names":[],"mappings":";;;;;;AAEA,0EAAkD;AAiDlD,MAAa,QAAQ;IAOV,MAAM,CAAC,UAAU,CAAC,UAA6B;QAElD,OAAO,GAA+B,EAAE;YAEpC,uBAEI,UAAU,EAAE,IAAI,0BAAgB,CAC5B,OAAO,IAAI,GAAG,EACd,+BAA+B,IAAI,GAAG,CACzC,IAEE,UAAU,EAEhB;QAEL,CAAC,CAAA;IACL,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,oCAAoC,CAAkC,UAAsE;QAEtJ,uCAEO,UAAU,KAEb,MAAM,EAAE,CAAC,OAA6B,EAAE,SAAyB,EAAE,EAAE;gBACjE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;YAC1D,CAAC,EAED,cAAc,EAAE,KAAK,EAErB,6BAA6B,EAAE,KAAK,IAEvC;IAEL,CAAC;IAEM,MAAM,CAAC,wCAAwC,CAAkC,UAAoD,EAAE,OAA6C;QAEvL,OAAO,8CAEA,OAAO,GACP,UAAiB,CAAC,4BAA4B,KAEjD,iBAAiB,EAAE,SAAS,EAC5B,MAAM,EAAE,OAAO,CAAC,MAAM,GAEmB,CAAA;IAEjD,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,4CAA4C,CAAmC,KAAyC;QAElI,OAAO;YAEH,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,uBAAuB,EAAE,KAAK,CAAC,uBAAuB;YAEtD,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE;gBAEjB,qDAEO,OAAO,CAAC,gBAAgB,GAExB,KAAK,CAAC,KAAK,CAAC,+BAA+B;oBAE9C;;;;;uBAKG;oBACH,iBAAiB,EAAE,UAAU,QAAQ;wBAEjC,MAAM,eAAe,GAAG,QAAQ,CAAC,wCAAwC,CAAC,IAAI,EAAE,QAAS,CAAC,CAAC;wBAE3F,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;4BAEnC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,iCAE/B,eAAe;gCAElB,8DAA8D;gCAE9D,gBAAgB,EAAE,UAAU,CAAC,OAAO,CAAC,oBAAoB,CAAC,eAAe,CAAC,gBAAgB,CAAC,EAC3F,gBAAgB,EAAE,UAAU,CAAC,OAAO,CAAC,gBAAgB,IAEvD,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;wBACjC,CAAC,CAAC,CAAC;oBAEP,CAAC,IACJ;YACL,CAAC;SAEwC,CAAC;IAElD,CAAC;;AA/GL,4BAiHC;AA/GG;;GAEG;AACoB,uBAAc,GAAG,OAAO,CAAC"}
|
package/dist/ITypes.d.ts
CHANGED
|
@@ -29,3 +29,13 @@ export declare enum QueryType {
|
|
|
29
29
|
EMBEDDED = "embedded",
|
|
30
30
|
HTTP_CSV = "HTTP_CSV"
|
|
31
31
|
}
|
|
32
|
+
export interface IWidgetBoxIconsDefinition {
|
|
33
|
+
disableQueryRunning?: boolean;
|
|
34
|
+
disableQueryFilter?: boolean;
|
|
35
|
+
disableQueryCellOnError?: boolean;
|
|
36
|
+
disableQueryMaxRowsReached?: boolean;
|
|
37
|
+
disableDrilldown?: boolean;
|
|
38
|
+
disableHelp?: boolean;
|
|
39
|
+
disableInteractionSwitch?: boolean;
|
|
40
|
+
}
|
|
41
|
+
export type IUserMenuOptions = 'editGadget' | 'editWidget' | 'deleteWidget' | 'deleteGadget' | 'convertGadgetToWidget' | 'addEventToAllQueries' | 'migrateWidget' | 'maximize' | 'clearSorting' | 'showData' | 'resetQuery' | 'clearState' | 'clearSelection' | 'toInitialSelectionOnEditing' | 'toInitialSelection' | 'export_xls' | 'export_png' | 'export_svg';
|
package/dist/IcEvent.d.ts
CHANGED
|
@@ -39,3 +39,16 @@ export interface TidyActionEvent extends PublicIcEvent {
|
|
|
39
39
|
readonly type: IcEventType.TIDY_ACTION;
|
|
40
40
|
readonly tidyIdxHint: number;
|
|
41
41
|
}
|
|
42
|
+
export declare enum WidgetNotificationType {
|
|
43
|
+
doAllEvents = "ic3doAllEvents",
|
|
44
|
+
doExportToExcel = "ic3exportToExcel",
|
|
45
|
+
doExportToPNG = "ic3exportToPNG",
|
|
46
|
+
doExportToSVG = "ic3exportToSVG",
|
|
47
|
+
toInitialSelection = "ic3toInitialSelection",
|
|
48
|
+
clearSelection = "ic3clearSelection",
|
|
49
|
+
doTemplateUserMenuAction = "ic3doTemplateUserMenuAction"
|
|
50
|
+
}
|
|
51
|
+
export type WidgetNotificationHandler = {
|
|
52
|
+
type: WidgetNotificationType;
|
|
53
|
+
handler: (type: WidgetNotificationType, event: PublicIcEvent) => void;
|
|
54
|
+
};
|
package/dist/IcEvent.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.IcEventType = exports.emptySet = void 0;
|
|
3
|
+
exports.WidgetNotificationType = exports.IcEventType = exports.emptySet = void 0;
|
|
4
4
|
exports.emptySet = "∅";
|
|
5
5
|
var IcEventType;
|
|
6
6
|
(function (IcEventType) {
|
|
@@ -9,4 +9,14 @@ var IcEventType;
|
|
|
9
9
|
IcEventType[IcEventType["TIDY_ACTION"] = 2] = "TIDY_ACTION";
|
|
10
10
|
IcEventType[IcEventType["API"] = 3] = "API";
|
|
11
11
|
})(IcEventType = exports.IcEventType || (exports.IcEventType = {}));
|
|
12
|
+
var WidgetNotificationType;
|
|
13
|
+
(function (WidgetNotificationType) {
|
|
14
|
+
WidgetNotificationType["doAllEvents"] = "ic3doAllEvents";
|
|
15
|
+
WidgetNotificationType["doExportToExcel"] = "ic3exportToExcel";
|
|
16
|
+
WidgetNotificationType["doExportToPNG"] = "ic3exportToPNG";
|
|
17
|
+
WidgetNotificationType["doExportToSVG"] = "ic3exportToSVG";
|
|
18
|
+
WidgetNotificationType["toInitialSelection"] = "ic3toInitialSelection";
|
|
19
|
+
WidgetNotificationType["clearSelection"] = "ic3clearSelection";
|
|
20
|
+
WidgetNotificationType["doTemplateUserMenuAction"] = "ic3doTemplateUserMenuAction";
|
|
21
|
+
})(WidgetNotificationType = exports.WidgetNotificationType || (exports.WidgetNotificationType = {}));
|
|
12
22
|
//# sourceMappingURL=IcEvent.js.map
|
package/dist/IcEvent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IcEvent.js","sourceRoot":"","sources":["../src/IcEvent.ts"],"names":[],"mappings":";;;AAAa,QAAA,QAAQ,GAAG,GAAG,CAAA;AAE3B,IAAY,WAKX;AALD,WAAY,WAAW;IACnB,iEAAc,CAAA;IACd,uDAAS,CAAA;IACT,2DAAW,CAAA;IACX,2CAAG,CAAA;AACP,CAAC,EALW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAKtB"}
|
|
1
|
+
{"version":3,"file":"IcEvent.js","sourceRoot":"","sources":["../src/IcEvent.ts"],"names":[],"mappings":";;;AAAa,QAAA,QAAQ,GAAG,GAAG,CAAA;AAE3B,IAAY,WAKX;AALD,WAAY,WAAW;IACnB,iEAAc,CAAA;IACd,uDAAS,CAAA;IACT,2DAAW,CAAA;IACX,2CAAG,CAAA;AACP,CAAC,EALW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAKtB;AA+CD,IAAY,sBAaX;AAbD,WAAY,sBAAsB;IAE9B,wDAA8B,CAAA;IAE9B,8DAAoC,CAAA;IACpC,0DAAgC,CAAA;IAChC,0DAAgC,CAAA;IAEhC,sEAA4C,CAAA;IAE5C,8DAAoC,CAAA;IAEpC,kFAAwD,CAAA;AAC5D,CAAC,EAbW,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAajC"}
|
|
@@ -11,7 +11,7 @@ export interface ISeriesValues {
|
|
|
11
11
|
type: ISeriesValuesType;
|
|
12
12
|
values: ITidyNumericColumn;
|
|
13
13
|
colors?: ITidyColorColumn;
|
|
14
|
-
|
|
14
|
+
parentValueColIdx?: number;
|
|
15
15
|
}
|
|
16
16
|
/**
|
|
17
17
|
* Used for managing amcharts data in the Amcharts plugin. This class controls both the creation of the charts
|
|
@@ -24,7 +24,7 @@ export declare class PublicAmchartsData {
|
|
|
24
24
|
private readonly onGroup;
|
|
25
25
|
private readonly table;
|
|
26
26
|
constructor(table: ITidyTable, onValues: ISeriesValues[], onAxis: ITidyColumn, onGroup?: ITidyColumn, onLevel?: ITidyColumn);
|
|
27
|
-
static getSeriesId(
|
|
27
|
+
static getSeriesId(groupKey: string, valueColIdx: number): string;
|
|
28
28
|
/**
|
|
29
29
|
* Get the data for the chart.
|
|
30
30
|
*/
|
|
@@ -21,11 +21,8 @@ class PublicAmchartsData {
|
|
|
21
21
|
this.onLevel = onLevel;
|
|
22
22
|
this.table = table;
|
|
23
23
|
}
|
|
24
|
-
static getSeriesId(
|
|
25
|
-
|
|
26
|
-
return group.getAmcharts4GroupKey(rowIdx) + "." + String(seriesId);
|
|
27
|
-
}
|
|
28
|
-
return PublicTidyTableTypes_1.IAmcharts4DataKey.NULL + "." + String(seriesId);
|
|
24
|
+
static getSeriesId(groupKey, valueColIdx) {
|
|
25
|
+
return groupKey + "." + String(valueColIdx);
|
|
29
26
|
}
|
|
30
27
|
/**
|
|
31
28
|
* Get the data for the chart.
|
|
@@ -65,7 +62,7 @@ class PublicAmchartsData {
|
|
|
65
62
|
if (seriesControl.typeFilter != null && !seriesControl.typeFilter(onValue.type)) {
|
|
66
63
|
return;
|
|
67
64
|
}
|
|
68
|
-
const seriesKey = groupKey
|
|
65
|
+
const seriesKey = PublicAmchartsData.getSeriesId(groupKey, idx);
|
|
69
66
|
let item = itemControl.get(seriesKey);
|
|
70
67
|
if (item == null) {
|
|
71
68
|
const newItem = seriesControl.create(seriesKey, groupKey, seriesKey + "v", seriesKey + "c", onValue);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublicAmchartsData.js","sourceRoot":"","sources":["../src/PublicAmchartsData.ts"],"names":[],"mappings":";;;AAEA,iEAA2G;AAE3G,IAAY,iBAKX;AALD,WAAY,iBAAiB;IACzB,yDAAI,CAAA;IACJ,6DAAM,CAAA;IACN,2DAAK,CAAA;IACL,mEAAS,CAAA;AACb,CAAC,EALW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAK5B;AAcD;;;GAGG;AACH,MAAa,kBAAkB;IAQ3B,YAAY,KAAiB,EAAE,QAAyB,EAAE,MAAmB,EAAE,OAAqB,EACxF,OAAqB;QAC7B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,QAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"PublicAmchartsData.js","sourceRoot":"","sources":["../src/PublicAmchartsData.ts"],"names":[],"mappings":"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"}
|
package/dist/PublicContext.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ import { IPublicWidgetTemplateDefinition } from "./PublicTemplate";
|
|
|
9
9
|
import { ITidyMath } from "./PublicTidyMath";
|
|
10
10
|
import { ILogger } from "./Logger";
|
|
11
11
|
import { AppNotification } from "./INotification";
|
|
12
|
+
import { WidgetNotificationHandler } from "./IcEvent";
|
|
12
13
|
export declare enum WidgetRenderLayoutStatus {
|
|
13
14
|
RENDERING = "RENDERING",
|
|
14
15
|
RENDERED = "RENDERED"
|
|
@@ -53,7 +54,7 @@ export interface IPublicContext {
|
|
|
53
54
|
info: string;
|
|
54
55
|
description?: string;
|
|
55
56
|
};
|
|
56
|
-
localizeFormField(pluginId: string, widgetTemplateId: string, name: string, ...args: any[]): [string, string | undefined];
|
|
57
|
+
localizeFormField(pluginId: string, widgetTemplateId: string, name: string, ...args: any[]): [string, string | undefined, string | undefined];
|
|
57
58
|
/**
|
|
58
59
|
* A bunch of mathematical functions related to the tidy table.
|
|
59
60
|
*/
|
|
@@ -139,14 +140,6 @@ export interface IWidgetPublicContext extends IPublicContext {
|
|
|
139
140
|
*/
|
|
140
141
|
formatPercent(value: number | string | undefined | null, locale?: string): string;
|
|
141
142
|
wrapWithTooltip(tooltip: string | undefined, wrappedElement: React.ReactElement): React.ReactElement;
|
|
142
|
-
/**
|
|
143
|
-
* Allows to setup a template specific callback on userMenuAction (e.g. setZoom in GoogleMaps action)
|
|
144
|
-
*
|
|
145
|
-
* if the callback returns an object, the object should contains a record with new values for the
|
|
146
|
-
* template form fields, FormFieldDef (i.e. {zoom:14} to set the zoom to 14). If in editing mode,
|
|
147
|
-
* the edited options in the widget editor panel will be updated.
|
|
148
|
-
*/
|
|
149
|
-
onUserMenuAction(callback: (userMenuAction: string, event: any) => Record<string, any> | undefined): void;
|
|
150
143
|
onWidgetRenderStatusChange(status: WidgetRenderLayoutStatus): void;
|
|
151
144
|
/**
|
|
152
145
|
* Event methods that do not depend on a Table
|
|
@@ -181,13 +174,6 @@ export interface IWidgetPublicContext extends IPublicContext {
|
|
|
181
174
|
* Note it's NOT the initial value but value if undefined
|
|
182
175
|
*/
|
|
183
176
|
useReduxOwnPropsState<T>(fieldName: string, valueIfUndefined?: T): [T, (newValue: T | undefined) => void];
|
|
184
|
-
/**
|
|
185
|
-
* doExport callback is called on each exportToExcel from the userMenu of the widget
|
|
186
|
-
*
|
|
187
|
-
* if the callback returns a tidyTable, this table will be exported
|
|
188
|
-
* if undefined is returned no further action
|
|
189
|
-
*/
|
|
190
|
-
onExportToExcel(doExport: (fileName: string | undefined) => ITidyTable | undefined): void;
|
|
191
177
|
/**
|
|
192
178
|
* React -> useSelector on widgetOwnProps[fieldName]
|
|
193
179
|
*/
|
|
@@ -242,6 +228,22 @@ export interface IWidgetPublicContext extends IPublicContext {
|
|
|
242
228
|
* Clear the warnings in the widget.
|
|
243
229
|
*/
|
|
244
230
|
widgetClearWarnings(): void;
|
|
231
|
+
/**
|
|
232
|
+
* Notification
|
|
233
|
+
*
|
|
234
|
+
* like a listener on the components, for React the implementation uses a useEffect, it should
|
|
235
|
+
* NOT be called conditionally.
|
|
236
|
+
*/
|
|
237
|
+
useNotification(notifications: WidgetNotificationHandler | WidgetNotificationHandler[], deps: ReadonlyArray<unknown> | undefined): void;
|
|
238
|
+
useUserMenu(handler: (userMenu: string) => any | void, deps: ReadonlyArray<unknown> | undefined): void;
|
|
239
|
+
/**
|
|
240
|
+
* doExport callback is called on each exportToExcel from the userMenu of the widget
|
|
241
|
+
*
|
|
242
|
+
* if the callback returns a tidyTable, this table will be exported
|
|
243
|
+
* if undefined is returned no further action
|
|
244
|
+
*/
|
|
245
|
+
onExportToExcel(doExport: (fileName: string | undefined) => ITidyTable | undefined): void;
|
|
246
|
+
useUserMenuWidth(): number | undefined;
|
|
245
247
|
}
|
|
246
248
|
export interface IWidgetEditorPublicContext {
|
|
247
249
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublicContext.js","sourceRoot":"","sources":["../src/PublicContext.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"PublicContext.js","sourceRoot":"","sources":["../src/PublicContext.ts"],"names":[],"mappings":";;;AAYA,IAAY,wBAGX;AAHD,WAAY,wBAAwB;IAChC,mDAAuB,CAAA;IACvB,iDAAqB,CAAA;AACzB,CAAC,EAHW,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QAGnC;AAED,IAAY,qBAGX;AAHD,WAAY,qBAAqB;IAC7B,uEAAO,CAAA;IACP,mEAAK,CAAA;AACT,CAAC,EAHW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAGhC;AAED,IAAY,mBAAkC;AAA9C,WAAY,mBAAmB;IAAG,6DAAI,CAAA;IAAE,+DAAK,CAAA;AAAA,CAAC,EAAlC,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAAe"}
|
package/dist/PublicTemplate.d.ts
CHANGED
|
@@ -139,17 +139,27 @@ export interface IPublicJsChartTemplate<T extends FormFieldObject> {
|
|
|
139
139
|
renderOnResizeJS?: (data: IWidgetTemplateTidyData, options: T, header: string, info: IWidgetLayoutInfo) => void;
|
|
140
140
|
dispose: () => void;
|
|
141
141
|
}
|
|
142
|
+
export interface IPublicWidgetReactProps<OPTIONS> {
|
|
143
|
+
wContext: IWidgetPublicContext;
|
|
144
|
+
data: IWidgetTemplateTidyData;
|
|
145
|
+
options: OPTIONS;
|
|
146
|
+
widgetHeader: string;
|
|
147
|
+
}
|
|
142
148
|
/**
|
|
143
|
-
*
|
|
149
|
+
*
|
|
144
150
|
*
|
|
145
151
|
* @see IPublicReactChartTemplate
|
|
146
152
|
* @see FormFieldObject
|
|
147
153
|
*/
|
|
148
154
|
export interface IPublicWidgetReactTemplateDefinition<OPTIONS extends FormFieldObject> extends IPublicCommonWidgetTemplateDefinition<OPTIONS> {
|
|
149
155
|
/**
|
|
150
|
-
*
|
|
156
|
+
* Deprecated: use reactEl instead.
|
|
157
|
+
*/
|
|
158
|
+
jsCode?: (context: IWidgetPublicContext) => IPublicReactChartTemplate<OPTIONS>;
|
|
159
|
+
/**
|
|
160
|
+
* The React Hook component (function with props as parameter)
|
|
151
161
|
*/
|
|
152
|
-
|
|
162
|
+
reactEl?: React.FunctionComponent<IPublicWidgetReactProps<OPTIONS>>;
|
|
153
163
|
reactComponent: true;
|
|
154
164
|
/**
|
|
155
165
|
* Only the widget template meta information is required when starting the application.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublicTemplate.js","sourceRoot":"","sources":["../src/PublicTemplate.ts"],"names":[],"mappings":";;;AAyDA,IAAY,4CAIX;AAJD,WAAY,4CAA4C;IACpD,qEAAqB,CAAA;IACrB,yEAAyB,CAAA;IACzB,2EAA2B,CAAA;AAC/B,CAAC,EAJW,4CAA4C,GAA5C,oDAA4C,KAA5C,oDAA4C,QAIvD;
|
|
1
|
+
{"version":3,"file":"PublicTemplate.js","sourceRoot":"","sources":["../src/PublicTemplate.ts"],"names":[],"mappings":";;;AAyDA,IAAY,4CAIX;AAJD,WAAY,4CAA4C;IACpD,qEAAqB,CAAA;IACrB,yEAAyB,CAAA;IACzB,2EAA2B,CAAA;AAC/B,CAAC,EAJW,4CAA4C,GAA5C,oDAA4C,KAA5C,oDAA4C,QAIvD;AAsdD;;;;GAIG;AACH,IAAY,4BAKX;AALD,WAAY,4BAA4B;IACpC,+CAAe,CAAA;IACf,iDAAiB,CAAA;IACjB,2CAAW,CAAA;IACX,6CAAa,CAAA;AACjB,CAAC,EALW,4BAA4B,GAA5B,oCAA4B,KAA5B,oCAA4B,QAKvC;AA6BD;;GAEG;AACH,IAAY,wBAMX;AAND,WAAY,wBAAwB;IAChC,mDAAuB,CAAA;IAEvB,gBAAgB;IAChB,0DAA8B,CAAA;IAC9B,iEAAqC,CAAA;AACzC,CAAC,EANW,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QAMnC"}
|
|
@@ -101,7 +101,7 @@ export type FormFields<T extends FormFieldObject> = {
|
|
|
101
101
|
}) & (Required<T>[key] extends FormFieldObject ? Omit<IFormEmbeddedFieldDef<Required<T>[key]>, 'fieldPath'> : Required<T>[key] extends IPaletteDef ? Omit<IFormPaletteEditorFieldDef, 'fieldPath'> : Required<T>[key] extends IColorDef ? Omit<IFormColorEditorFieldDef, 'fieldPath'> : Required<T>[key] extends TidyTableColumnSelector[] ? Omit<IFormColumnChooserMultipleFieldDef, 'fieldPath'> : Required<T>[key] extends TidyTableColumnSelector ? Omit<IFormColumnChooserSingleFieldDef, 'fieldPath'> : Required<T>[key] extends IFormEventMappingArrayFieldDefType ? Omit<IFormEventMappingArrayFieldDef, 'fieldPath'> : Required<T>[key] extends IFormEventArrayFieldDefType ? Omit<IFormEventArrayFieldDef, 'fieldPath'> : Required<T>[key] extends IFormSearchAndReplaceArrayFieldDefType ? Omit<IFormSearchAndReplaceArrayFieldDef, 'fieldPath'> : Required<T>[key] extends Hook<any> ? Omit<IFormHookFieldDef<any>, 'fieldPath'> : Required<T>[key] extends boolean ? Omit<IFormBooleanFieldDef, 'fieldPath'> : Required<T>[key] extends number ? Omit<IFormNumberFieldDef, 'fieldPath'> : Required<T>[key] extends number ? Omit<IFormMaskFieldDef, 'fieldPath'> : Required<T>[key] extends string ? Omit<IFormOptionFieldSingleDef, 'fieldPath'> | Omit<IFormStringFieldDef, 'fieldPath'> | Omit<IFormFormatterPickerFieldDef, 'fieldPath'> | Omit<IFormWidgetVariantFieldDef, 'fieldPath'> | Omit<IFormTidyTableTextExprFieldDef, 'fieldPath'> | Omit<IFormTidyTableTextRowExprFieldDef, 'fieldPath'> | Omit<IFormTidyTableHtmlRowExprFieldDef, 'fieldPath'> | Omit<IFormTidyTableHtmlExprFieldDef, 'fieldPath'> | Omit<IFormTidyTableNumericExprFieldDef, 'fieldPath'> | Omit<IFormTidyTableNumericRowExprFieldDef, 'fieldPath'> | Omit<IFormTidyTableColorRowExprFieldDef, 'fieldPath'> | Omit<IFormTidyTableStringRowExprFieldDef, 'fieldPath'> | Omit<IFormTidyTableScaleRowExprFieldDef, 'fieldPath'> | Omit<IFormJsFieldDef, 'fieldPath'> | Omit<IFormJsonFieldDef, 'fieldPath'> | Omit<IFormMarkdownFieldDef, 'fieldPath'> | Omit<IFormOptionFieldReportPathDef, 'fieldPath'> : Required<T>[key] extends string[] ? Omit<IFormOptionFieldMultipleDef, 'fieldPath'> | Omit<IFormGroupsFieldDef, 'fieldPath'> : never);
|
|
102
102
|
};
|
|
103
103
|
export declare enum IFormFieldGroupTypes {
|
|
104
|
-
Selection = "
|
|
104
|
+
Selection = "groupSelection",
|
|
105
105
|
FilterGeneralOption = "filterGeneralOptionsGroup",
|
|
106
106
|
FilterItem = "filterItemGroup"
|
|
107
107
|
}
|
|
@@ -7,7 +7,7 @@ function formFieldIsSelection(field) {
|
|
|
7
7
|
exports.formFieldIsSelection = formFieldIsSelection;
|
|
8
8
|
var IFormFieldGroupTypes;
|
|
9
9
|
(function (IFormFieldGroupTypes) {
|
|
10
|
-
IFormFieldGroupTypes["Selection"] = "
|
|
10
|
+
IFormFieldGroupTypes["Selection"] = "groupSelection";
|
|
11
11
|
IFormFieldGroupTypes["FilterGeneralOption"] = "filterGeneralOptionsGroup";
|
|
12
12
|
IFormFieldGroupTypes["FilterItem"] = "filterItemGroup";
|
|
13
13
|
})(IFormFieldGroupTypes = exports.IFormFieldGroupTypes || (exports.IFormFieldGroupTypes = {}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublicTemplateForm.js","sourceRoot":"","sources":["../src/PublicTemplateForm.ts"],"names":[],"mappings":";;;AAkBA,SAAgB,oBAAoB,CAAC,KAAyB;IAC1D,OAAO,KAAK,CAAC,KAAK,KAAK,oBAAoB,CAAC,SAAS,CAAC;AAC1D,CAAC;AAFD,oDAEC;AAwJD,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC5B
|
|
1
|
+
{"version":3,"file":"PublicTemplateForm.js","sourceRoot":"","sources":["../src/PublicTemplateForm.ts"],"names":[],"mappings":";;;AAkBA,SAAgB,oBAAoB,CAAC,KAAyB;IAC1D,OAAO,KAAK,CAAC,KAAK,KAAK,oBAAoB,CAAC,SAAS,CAAC;AAC1D,CAAC;AAFD,oDAEC;AAwJD,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC5B,oDAA4B,CAAA;IAC5B,yEAAiD,CAAA;IACjD,sDAA8B,CAAA;AAClC,CAAC,EAJW,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAI/B;AAoLD,SAAgB,eAAe,CAAC,IAAmB;IAC/C,OAAO,IAAI,KAAK,mBAAmB;WAC5B,IAAI,KAAK,sBAAsB;WAC/B,IAAI,KAAK,mBAAmB;WAC5B,IAAI,KAAK,sBAAsB;WAC/B,IAAI,KAAK,sBAAsB;WAC/B,IAAI,KAAK,yBAAyB;WAClC,IAAI,KAAK,wBAAwB;WACjC,IAAI,KAAK,uBAAuB;WAChC,IAAI,KAAK,uBAAuB,CAClC;AACT,CAAC;AAXD,0CAWC;AAED,SAAgB,oBAAoB,CAAC,IAAmB;IACpD,OAAO,IAAI,KAAK,mBAAmB;WAC5B,IAAI,KAAK,mBAAmB;WAC5B,IAAI,KAAK,sBAAsB,CACjC;AACT,CAAC;AALD,oDAKC;AAED,SAAgB,kBAAkB,CAAC,IAAmB;IAClD,OAAO,IAAI,KAAK,sBAAsB;WAC/B,IAAI,KAAK,sBAAsB;WAC/B,IAAI,KAAK,yBAAyB;WAClC,IAAI,KAAK,wBAAwB;WACjC,IAAI,KAAK,uBAAuB;WAChC,IAAI,KAAK,uBAAuB,CAClC;AACT,CAAC;AARD,gDAQC;AAED,SAAgB,mBAAmB,CAAC,IAAmB;IACnD,OAAO,IAAI,KAAK,mBAAmB;WAC5B,IAAI,KAAK,sBAAsB,CACjC;AACT,CAAC;AAJD,kDAIC;AAED,SAAgB,uBAAuB,CAAC,IAAmB;IACvD,OAAO,IAAI,KAAK,mBAAmB;WAC5B,IAAI,KAAK,sBAAsB,CACjC;AACT,CAAC;AAJD,0DAIC;AAED,SAAgB,sBAAsB,CAAC,IAAmB;IACtD,OAAO,IAAI,KAAK,sBAAsB;WAC/B,IAAI,KAAK,yBAAyB,CACpC;AACT,CAAC;AAJD,wDAIC;AAED,SAAgB,oBAAoB,CAAC,IAAmB;IACpD,OAAO,IAAI,KAAK,uBAAuB,CAClC;AACT,CAAC;AAHD,oDAGC;AAED;;;GAGG;AACH,IAAY,yBAKX;AALD,WAAY,yBAAyB;IACjC,sDAAyB,CAAA;IACzB,sDAAyB,CAAA;IACzB,gEAAmC,CAAA;IACnC,gEAAmC,CAAA;AACvC,CAAC,EALW,yBAAyB,GAAzB,iCAAyB,KAAzB,iCAAyB,QAKpC;AAED;;GAEG;AACH,IAAY,mBAEX;AAFD,WAAY,mBAAmB;IAC3B,8CAAuB,CAAA;AAC3B,CAAC,EAFW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAE9B"}
|
package/dist/PublicTheme.d.ts
CHANGED
|
@@ -27,7 +27,7 @@ import { Components } from "@mui/material/styles/components";
|
|
|
27
27
|
import { FilterPanelClassesKey, FilterPanelProps } from "./theme/ThemeFilterPanel";
|
|
28
28
|
import { FilterCheckboxProps, FilterCheckboxRadioClassKey } from "./theme/ThemeFilterCheckboxRadio";
|
|
29
29
|
import { ReportAppLeftPanelClassKey } from "./theme/ThemeReportAppLeftPanel";
|
|
30
|
-
import { FilterTreeClassKey, FilterTreeProps } from "./theme/ThemeFilterTree";
|
|
30
|
+
import { FilterTreeClassKey, FilterTreePopOverClassKey, FilterTreePopOverProps, FilterTreeProps } from "./theme/ThemeFilterTree";
|
|
31
31
|
import { DatePickerClassKey, FilterDatePickerProps } from "./theme/ThemeDatePicker";
|
|
32
32
|
import { FilterAutocompleteClassesKey, FilterAutocompleteProps } from "./theme/ThemeFilterAutocomplete";
|
|
33
33
|
import { AppMenuIconClassKey, AppMenuIconProps } from "./theme/ThemeAppMenuIcon";
|
|
@@ -39,6 +39,7 @@ import { PrintButtonClassKey, StyledPrintButtonDivProps } from "./theme/ThemePri
|
|
|
39
39
|
import { CodeMirrorClassesKey } from "./theme/ThemeCodeMirror";
|
|
40
40
|
import { WidgetTemplateChartOptions } from "./PublicTemplates";
|
|
41
41
|
import { WidgetFilteredByClassesKey } from "./theme/ThemeWidgetFilteredBy";
|
|
42
|
+
import { IUserMenuOptions, IWidgetBoxIconsDefinition } from "./ITypes";
|
|
42
43
|
export type Ic3ChartVariants = {
|
|
43
44
|
[Name in keyof WidgetTemplateChartOptions]?: Array<{
|
|
44
45
|
props: {
|
|
@@ -346,6 +347,10 @@ export interface ic3Theme {
|
|
|
346
347
|
radioUnselected: React.ReactNode | undefined;
|
|
347
348
|
radioSelected: React.ReactNode | undefined;
|
|
348
349
|
};
|
|
350
|
+
palette: {
|
|
351
|
+
darken: (color: string, factor: number) => string;
|
|
352
|
+
lighten: (color: string, factor: number) => string;
|
|
353
|
+
};
|
|
349
354
|
table: Record<TableRowHeightOptions, {
|
|
350
355
|
rowHeight: number;
|
|
351
356
|
headerRowHeight: number;
|
|
@@ -359,8 +364,11 @@ export interface ic3Theme {
|
|
|
359
364
|
};
|
|
360
365
|
userMenu: {
|
|
361
366
|
disableUserMenuEdition: boolean;
|
|
362
|
-
userMenuFilter?: (options:
|
|
367
|
+
userMenuFilter?: (options: IUserMenuOptions[], templateDef?: IPublicWidgetTemplateDefinition<any>) => IUserMenuOptions[];
|
|
363
368
|
};
|
|
369
|
+
widgetIcons?: {
|
|
370
|
+
disableWidgetIconsEdition?: boolean;
|
|
371
|
+
} & IWidgetBoxIconsDefinition;
|
|
364
372
|
widgetBox: {
|
|
365
373
|
contentOffset: {
|
|
366
374
|
top: number;
|
|
@@ -472,10 +480,22 @@ export interface ic3ThemeOptions {
|
|
|
472
480
|
googleMap?: {
|
|
473
481
|
options?: google.maps.MapOptions;
|
|
474
482
|
};
|
|
483
|
+
/**
|
|
484
|
+
* Change the settings for the user menu for some or all widgets.
|
|
485
|
+
*/
|
|
475
486
|
userMenu?: {
|
|
487
|
+
/**
|
|
488
|
+
* Set to true to make the user menu option readonly (non-editable) for all widgets.
|
|
489
|
+
*/
|
|
476
490
|
disableUserMenuEdition?: boolean;
|
|
477
|
-
|
|
491
|
+
/**
|
|
492
|
+
* Filter the items in the user menu. Return an empty array to disable and not show the user menu.
|
|
493
|
+
*/
|
|
494
|
+
userMenuFilter?: (options: IUserMenuOptions[], templateDef?: IPublicWidgetTemplateDefinition<any>) => IUserMenuOptions[];
|
|
478
495
|
};
|
|
496
|
+
widgetIcons?: {
|
|
497
|
+
disableWidgetIconsEdition?: boolean;
|
|
498
|
+
} & IWidgetBoxIconsDefinition;
|
|
479
499
|
widgetBox?: {
|
|
480
500
|
contentOffset: {
|
|
481
501
|
top: number;
|
|
@@ -601,6 +621,10 @@ interface ic3BaseComponents {
|
|
|
601
621
|
styleOverrides?: ComponentsOverrides["FilterTree"];
|
|
602
622
|
variants?: ComponentsVariants["FilterTree"];
|
|
603
623
|
};
|
|
624
|
+
FilterTreePopOver?: {
|
|
625
|
+
styleOverrides?: ComponentsOverrides["FilterTreePopOver"];
|
|
626
|
+
variants?: ComponentsVariants["FilterTreePopOver"];
|
|
627
|
+
};
|
|
604
628
|
FilterDatePicker?: {
|
|
605
629
|
styleOverrides?: ComponentsOverrides["FilterDatePicker"];
|
|
606
630
|
variants?: ComponentsVariants["FilterDatePicker"];
|
|
@@ -768,6 +792,7 @@ declare module '@mui/material/styles/overrides' {
|
|
|
768
792
|
FilterSlider: FilterSliderClassKey;
|
|
769
793
|
ListCounter: ListCounterClassKey;
|
|
770
794
|
FilterTree: FilterTreeClassKey;
|
|
795
|
+
FilterTreePopOver: FilterTreePopOverClassKey;
|
|
771
796
|
FilterDatePicker: DatePickerClassKey;
|
|
772
797
|
FilterAutocomplete: FilterAutocompleteClassesKey;
|
|
773
798
|
HtmlBox: HtmlBoxClassKey;
|
|
@@ -796,6 +821,7 @@ declare module '@mui/material/styles/props' {
|
|
|
796
821
|
FilterSlider: FilterSliderProps;
|
|
797
822
|
ListCounter: ListCounterProps;
|
|
798
823
|
FilterTree: FilterTreeProps;
|
|
824
|
+
FilterTreePopOver: FilterTreePopOverProps;
|
|
799
825
|
FilterDatePicker: FilterDatePickerProps;
|
|
800
826
|
FilterAutocomplete: FilterAutocompleteProps;
|
|
801
827
|
HtmlBox: StyledHtmlBoxProps;
|
package/dist/PublicTheme.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublicTheme.js","sourceRoot":"","sources":["../src/PublicTheme.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"PublicTheme.js","sourceRoot":"","sources":["../src/PublicTheme.ts"],"names":[],"mappings":";;;AA4VA,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC7B,8CAAqB,CAAA;IACrB,4CAAmB,CAAA;IACnB,wCAAe,CAAA;AACnB,CAAC,EAJW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAIhC"}
|
|
@@ -400,7 +400,7 @@ export interface ITidyBaseColumn<T> extends ITidyBaseColumnReadonly<T> {
|
|
|
400
400
|
getAxisInfo(): IMdxAxisSeriesInfo | undefined;
|
|
401
401
|
/**
|
|
402
402
|
* Get the MDX axis coordinate, if available.
|
|
403
|
-
* @see
|
|
403
|
+
* @see AxisCoordinate
|
|
404
404
|
*/
|
|
405
405
|
getAxisCoordinate(): AxisCoordinate | undefined;
|
|
406
406
|
/**
|
|
@@ -626,6 +626,22 @@ export interface ITidyBaseColumn<T> extends ITidyBaseColumnReadonly<T> {
|
|
|
626
626
|
* Returns the group key at the row index for use with table.toAmcharts4Data.
|
|
627
627
|
*/
|
|
628
628
|
getAmcharts4GroupKey(rowIdx: number): string;
|
|
629
|
+
/**
|
|
630
|
+
* Mark the column as a total column. Total columns have a different styling and css-class in tables and pivot
|
|
631
|
+
* tables.
|
|
632
|
+
* @param isTotal new value. Set to true to mark this column as a total. Use false to remove the mark.
|
|
633
|
+
* @see isTotalColumn
|
|
634
|
+
*/
|
|
635
|
+
setIsTotalColumn(isTotal: boolean): void;
|
|
636
|
+
/**
|
|
637
|
+
* Returns true if and only if the column contains total values.
|
|
638
|
+
* @see setTotalColumn
|
|
639
|
+
*/
|
|
640
|
+
getIsTotalColumn(): boolean;
|
|
641
|
+
/**
|
|
642
|
+
* return true if the column was created from an MDX axis (i.e. [Geo].[Countries] on 0 )
|
|
643
|
+
*/
|
|
644
|
+
isMdxAxis(): boolean;
|
|
629
645
|
}
|
|
630
646
|
export interface PublicTidyColumnCellDecorationRenderedOptions {
|
|
631
647
|
cellWidth?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublicTidyColumn.js","sourceRoot":"","sources":["../src/PublicTidyColumn.ts"],"names":[],"mappings":";;;AAmDA;;GAEG;AACH,IAAY,0BAsFX;AAtFD,WAAY,0BAA0B;IAElC;;OAEG;IACH,oDAAsB,CAAA;IAEtB;;OAEG;IACH,sEAAwC,CAAA;IAExC;;OAEG;IACH,mEAAqC,CAAA;IAErC;;OAEG;IACH,mEAAqC,CAAA;IAErC;;;OAGG;IACH,yEAA2C,CAAA;IAE3C;;OAEG;IACH,oDAAsB,CAAA;IAEtB;;;;OAIG;IACH,yEAA2C,CAAA;IAE3C;;;;OAIG;IACH,+EAAiD,CAAA;IAEjD;;OAEG;IACH,qDAAuB,CAAA;IAEvB;;OAEG;IACH,uDAAyB,CAAA;IAEzB;;OAEG;IACH,6DAA+B,CAAA;IAE/B;;OAEG;IACH,uDAAyB,CAAA;IAEzB;;OAEG;IACH,iDAAmB,CAAA;IAEnB;;OAEG;IACH,gDAAkB,CAAA;IAElB;;OAEG;IACH,iDAAmB,CAAA;IAEnB;;OAEG;IACH,mDAAqB,CAAA;AACzB,CAAC,EAtFW,0BAA0B,GAA1B,kCAA0B,KAA1B,kCAA0B,QAsFrC;AAEY,QAAA,6BAA6B,GAAG,IAAI,GAAG,CAAS;IAEzD,0BAA0B,CAAC,qBAAqB;IAChD,0BAA0B,CAAC,UAAU;IAErC,0BAA0B,CAAC,mBAAmB;IAE9C,0BAA0B,CAAC,mBAAmB;IAC9C,0BAA0B,CAAC,SAAS;IAEpC,0BAA0B,CAAC,OAAO;IAClC,0BAA0B,CAAC,OAAO;CAErC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"PublicTidyColumn.js","sourceRoot":"","sources":["../src/PublicTidyColumn.ts"],"names":[],"mappings":";;;AAmDA;;GAEG;AACH,IAAY,0BAsFX;AAtFD,WAAY,0BAA0B;IAElC;;OAEG;IACH,oDAAsB,CAAA;IAEtB;;OAEG;IACH,sEAAwC,CAAA;IAExC;;OAEG;IACH,mEAAqC,CAAA;IAErC;;OAEG;IACH,mEAAqC,CAAA;IAErC;;;OAGG;IACH,yEAA2C,CAAA;IAE3C;;OAEG;IACH,oDAAsB,CAAA;IAEtB;;;;OAIG;IACH,yEAA2C,CAAA;IAE3C;;;;OAIG;IACH,+EAAiD,CAAA;IAEjD;;OAEG;IACH,qDAAuB,CAAA;IAEvB;;OAEG;IACH,uDAAyB,CAAA;IAEzB;;OAEG;IACH,6DAA+B,CAAA;IAE/B;;OAEG;IACH,uDAAyB,CAAA;IAEzB;;OAEG;IACH,iDAAmB,CAAA;IAEnB;;OAEG;IACH,gDAAkB,CAAA;IAElB;;OAEG;IACH,iDAAmB,CAAA;IAEnB;;OAEG;IACH,mDAAqB,CAAA;AACzB,CAAC,EAtFW,0BAA0B,GAA1B,kCAA0B,KAA1B,kCAA0B,QAsFrC;AAEY,QAAA,6BAA6B,GAAG,IAAI,GAAG,CAAS;IAEzD,0BAA0B,CAAC,qBAAqB;IAChD,0BAA0B,CAAC,UAAU;IAErC,0BAA0B,CAAC,mBAAmB;IAE9C,0BAA0B,CAAC,mBAAmB;IAC9C,0BAA0B,CAAC,SAAS;IAEpC,0BAA0B,CAAC,OAAO;IAClC,0BAA0B,CAAC,OAAO;CAErC,CAAC,CAAC;AAyvBU,QAAA,4BAA4B,GAA8B;IAEnE,EAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAC;IACjC,EAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAC;IACpC,EAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAC;IACrC,EAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAC;IAC/B,EAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAC;IAC/B,EAAC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAC;IACzC,EAAC,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,mBAAmB,EAAC;IAC3D,EAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAC;IAEnC,EAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAC;IAErD,EAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAC;IAE1C,EAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAC;IACrD,EAAC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAC;IAC3D,EAAC,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,IAAI,EAAC;IACjE,EAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAC;IAEnD,EAAC,OAAO,EAAE,sBAAsB,EAAE,MAAM,EAAE,aAAa,EAAE,mBAAmB,EAAE,IAAI,EAAC;CAEtF,CAAC"}
|
|
@@ -304,8 +304,9 @@ export interface ITidyTable {
|
|
|
304
304
|
* the resulting data object are given by '<group_id>.' preceding the values.
|
|
305
305
|
* @param level this column expands the axis so that widgets can plot level-like charts using guides. This expansion
|
|
306
306
|
* follows the patters axis-label[level-label].
|
|
307
|
+
* @param hideNulls column, do not include records where all rows in group evaluate to NULL.
|
|
307
308
|
*/
|
|
308
|
-
toAmcharts4Data<F extends string>(category: ITidyColumn, value: Record<F, ITidyColumn | undefined>, group?: ITidyColumn | ITidyColumn[], level?: ITidyColumn): IAmCharts4Data[];
|
|
309
|
+
toAmcharts4Data<F extends string>(category: ITidyColumn, value: Record<F, ITidyColumn | undefined>, group?: ITidyColumn | ITidyColumn[], level?: ITidyColumn, hideNulls?: ITidyColumn): IAmCharts4Data[];
|
|
309
310
|
/**
|
|
310
311
|
* Creates a data object for the Amcharts treemap
|
|
311
312
|
* @param level0 names for the parent nodes
|
|
@@ -477,6 +478,11 @@ export interface ITidyTable {
|
|
|
477
478
|
*/
|
|
478
479
|
toHistogramBucketColumn(context: IPublicContext, valueCol: ITidyBaseColumnReadonly<number | null>, options: TidyHistogramOptions): ITidyColumn;
|
|
479
480
|
addTotalRows(totals: Map<number, ITotalRowValues[]>): void;
|
|
481
|
+
/**
|
|
482
|
+
* Mark these rows as total rows in the table.
|
|
483
|
+
* @param totalRows
|
|
484
|
+
*/
|
|
485
|
+
setTotalRows(totalRows: (rowIdx: number) => boolean): void;
|
|
480
486
|
/**
|
|
481
487
|
* Get a column by its role as defined in the mdxBuilderSettings.
|
|
482
488
|
* @param role name of the axis-role
|
|
@@ -196,10 +196,6 @@ export interface ITidyTableInteractionEvent {
|
|
|
196
196
|
* returns true if the actionName in bound to a channel
|
|
197
197
|
*/
|
|
198
198
|
firesEvent(actionName: string): boolean;
|
|
199
|
-
/**
|
|
200
|
-
* register a callback that will be called each time an event is send to the channel bound to the actionName
|
|
201
|
-
*/
|
|
202
|
-
onNotification(actionName: string, callback: (event: any) => void): void;
|
|
203
199
|
}
|
|
204
200
|
export interface ITidyTableInteraction extends ITidyTableInteractionSelection, ITidyTableInteractionEvent, ITidyTableDrilldown {
|
|
205
201
|
/**
|
|
@@ -6,6 +6,10 @@ export declare enum TableColumnSizing {
|
|
|
6
6
|
USER_RESIZABLE = "USER_RESIZABLE"
|
|
7
7
|
}
|
|
8
8
|
export interface BaseTableChartOptions extends FormFieldObject {
|
|
9
|
+
/**
|
|
10
|
+
* If active, the color defined in the Tidy Table are applied to the table
|
|
11
|
+
*/
|
|
12
|
+
applyHeaderColorDecoration?: boolean;
|
|
9
13
|
/**
|
|
10
14
|
* Row Height.
|
|
11
15
|
*/
|
|
@@ -55,6 +59,12 @@ export interface BaseTableChartOptions extends FormFieldObject {
|
|
|
55
59
|
* A list of boolean values: 'true', 'false'. The last value repeats itself.
|
|
56
60
|
*/
|
|
57
61
|
columnPinned: string;
|
|
62
|
+
/**
|
|
63
|
+
* Visible (CSV).
|
|
64
|
+
*
|
|
65
|
+
* A list of boolean values: 'true', 'false'. The last value repeats itself.
|
|
66
|
+
*/
|
|
67
|
+
columnVisible: string;
|
|
58
68
|
/**
|
|
59
69
|
* Columns Header Menu.
|
|
60
70
|
*
|
|
@@ -5,8 +5,19 @@ export declare class DatePickerClasses {
|
|
|
5
5
|
* Style applied to the root element.
|
|
6
6
|
*/
|
|
7
7
|
static readonly root = "ic3DatePicker-root";
|
|
8
|
+
static readonly rowDirection = "ic3DatePicker-row-direction";
|
|
9
|
+
static readonly columnDirection = "ic3DatePicker-column-direction";
|
|
10
|
+
/**
|
|
11
|
+
* + Mui DatePicker and/or DateRangePicker classes
|
|
12
|
+
*/
|
|
13
|
+
static readonly fieldSeparator = "ic3DatePicker-fieldSeparator";
|
|
8
14
|
}
|
|
9
15
|
export declare type DatePickerClassKey = keyof DatePickerClasses;
|
|
16
|
+
export declare enum DatePickerRangeDirection {
|
|
17
|
+
auto = "AUTO",
|
|
18
|
+
horizontal = "HORIZONTAL",
|
|
19
|
+
vertical = "VERTICAL"
|
|
20
|
+
}
|
|
10
21
|
/**
|
|
11
22
|
* Date Picker Options (fields of the "Chart" tab in the widget editor).
|
|
12
23
|
*
|
|
@@ -19,15 +30,15 @@ export declare type DatePickerClassKey = keyof DatePickerClasses;
|
|
|
19
30
|
*/
|
|
20
31
|
export interface DatePickerChartOptions extends FormFieldObject {
|
|
21
32
|
/**
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
* Display this text when the datepicker is empty.
|
|
33
|
+
* The label content (i.e Date)
|
|
25
34
|
*/
|
|
26
|
-
|
|
35
|
+
label?: string;
|
|
27
36
|
/**
|
|
28
|
-
* Text
|
|
37
|
+
* Helper Text.
|
|
38
|
+
*
|
|
39
|
+
* A text below the date picker to help the user when entering the date
|
|
29
40
|
*/
|
|
30
|
-
|
|
41
|
+
dateHelperText?: string;
|
|
31
42
|
/**
|
|
32
43
|
* Input Date Format.
|
|
33
44
|
*
|
|
@@ -88,15 +99,9 @@ export interface DatePickerChartOptions extends FormFieldObject {
|
|
|
88
99
|
*/
|
|
89
100
|
initialEndDate?: string;
|
|
90
101
|
/**
|
|
91
|
-
*
|
|
92
|
-
*
|
|
93
|
-
* Placeholder value for the end of the range. The widget shows this when the end of the range is empty.
|
|
94
|
-
*/
|
|
95
|
-
helperEndText?: string;
|
|
96
|
-
/**
|
|
97
|
-
* Text to show when the second date picker is empty.
|
|
102
|
+
* The label content for the end date
|
|
98
103
|
*/
|
|
99
|
-
|
|
104
|
+
endLabel?: string;
|
|
100
105
|
/**
|
|
101
106
|
* Range Picker: Center Text.
|
|
102
107
|
*
|
|
@@ -117,6 +122,12 @@ export interface DatePickerChartOptions extends FormFieldObject {
|
|
|
117
122
|
* `startCaption`, `endUName`, `endCaption` (note the back ticks).
|
|
118
123
|
*/
|
|
119
124
|
rangeToUniqueName: string;
|
|
125
|
+
/**
|
|
126
|
+
* The direction of the Picker, horizontal/vertical/auto
|
|
127
|
+
*
|
|
128
|
+
* "auto" will choose the direction depending on the ration width/height > 0.9
|
|
129
|
+
*/
|
|
130
|
+
rangeDirection: DatePickerRangeDirection;
|
|
120
131
|
/**
|
|
121
132
|
* Dates.
|
|
122
133
|
*
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DatePickerClasses = void 0;
|
|
3
|
+
exports.DatePickerRangeDirection = exports.DatePickerClasses = void 0;
|
|
4
4
|
// TOM : needs clarification
|
|
5
5
|
class DatePickerClasses {
|
|
6
6
|
}
|
|
@@ -9,4 +9,16 @@ exports.DatePickerClasses = DatePickerClasses;
|
|
|
9
9
|
* Style applied to the root element.
|
|
10
10
|
*/
|
|
11
11
|
DatePickerClasses.root = "ic3DatePicker-root";
|
|
12
|
+
DatePickerClasses.rowDirection = "ic3DatePicker-row-direction";
|
|
13
|
+
DatePickerClasses.columnDirection = "ic3DatePicker-column-direction";
|
|
14
|
+
/**
|
|
15
|
+
* + Mui DatePicker and/or DateRangePicker classes
|
|
16
|
+
*/
|
|
17
|
+
DatePickerClasses.fieldSeparator = "ic3DatePicker-fieldSeparator";
|
|
18
|
+
var DatePickerRangeDirection;
|
|
19
|
+
(function (DatePickerRangeDirection) {
|
|
20
|
+
DatePickerRangeDirection["auto"] = "AUTO";
|
|
21
|
+
DatePickerRangeDirection["horizontal"] = "HORIZONTAL";
|
|
22
|
+
DatePickerRangeDirection["vertical"] = "VERTICAL";
|
|
23
|
+
})(DatePickerRangeDirection = exports.DatePickerRangeDirection || (exports.DatePickerRangeDirection = {}));
|
|
12
24
|
//# sourceMappingURL=ThemeDatePicker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeDatePicker.js","sourceRoot":"","sources":["../../src/theme/ThemeDatePicker.ts"],"names":[],"mappings":";;;AAGA,4BAA4B;AAC5B,MAAa,iBAAiB;;AAA9B,
|
|
1
|
+
{"version":3,"file":"ThemeDatePicker.js","sourceRoot":"","sources":["../../src/theme/ThemeDatePicker.ts"],"names":[],"mappings":";;;AAGA,4BAA4B;AAC5B,MAAa,iBAAiB;;AAA9B,8CAgBC;AAdG;;GAEG;AACa,sBAAI,GAAG,oBAAoB,CAAC;AAG5B,8BAAY,GAAG,6BAA6B,CAAC;AAE7C,iCAAe,GAAG,gCAAgC,CAAC;AAEnE;;GAEG;AACa,gCAAc,GAAG,8BAA8B,CAAC;AAKpE,IAAY,wBAIX;AAJD,WAAY,wBAAwB;IAChC,yCAAa,CAAA;IACb,qDAAyB,CAAA;IACzB,iDAAqB,CAAA;AACzB,CAAC,EAJW,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QAInC"}
|
|
@@ -25,8 +25,7 @@ export interface FilterAutocompleteChartOptions extends FilterTidyTableChartOpti
|
|
|
25
25
|
*
|
|
26
26
|
* Allows for selecting a set of preset options. Note that a variant is possibly overriding defined options.
|
|
27
27
|
*/
|
|
28
|
-
variant?:
|
|
29
|
-
inputVariant: "standard" | "filled" | "outlined";
|
|
28
|
+
variant?: "fixedHeight" | "standard" | "filled" | "outlined";
|
|
30
29
|
/**
|
|
31
30
|
* Size.
|
|
32
31
|
*
|
|
@@ -58,6 +58,7 @@ export declare class FilterPanelClasses {
|
|
|
58
58
|
* Classname for the TextField component
|
|
59
59
|
*/
|
|
60
60
|
static readonly inputField = "ic3FilterPanel-filterInputfield";
|
|
61
|
+
static readonly dateTimePicker = "ic3FilterPanel-dateTimePicker";
|
|
61
62
|
/**
|
|
62
63
|
* A div with the displayed values for the value selector in preview mode
|
|
63
64
|
*/
|
|
@@ -62,6 +62,7 @@ FilterPanelClasses.filterItemRemoveButton = "ic3FilterPanel-ItemRemoveButton";
|
|
|
62
62
|
* Classname for the TextField component
|
|
63
63
|
*/
|
|
64
64
|
FilterPanelClasses.inputField = "ic3FilterPanel-filterInputfield";
|
|
65
|
+
FilterPanelClasses.dateTimePicker = "ic3FilterPanel-dateTimePicker";
|
|
65
66
|
/**
|
|
66
67
|
* A div with the displayed values for the value selector in preview mode
|
|
67
68
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeFilterPanel.js","sourceRoot":"","sources":["../../src/theme/ThemeFilterPanel.ts"],"names":[],"mappings":";;;AAEA,MAAa,kBAAkB;;AAA/B,
|
|
1
|
+
{"version":3,"file":"ThemeFilterPanel.js","sourceRoot":"","sources":["../../src/theme/ThemeFilterPanel.ts"],"names":[],"mappings":";;;AAEA,MAAa,kBAAkB;;AAA/B,gDA4FC;AA3FG;;GAEG;AACa,0BAAO,GAAG,qBAAqB,CAAC;AAEhD;;GAEG;AACa,6BAAU,GAAG,wBAAwB,CAAC;AAEtD;;GAEG;AACa,4BAAS,GAAG,uBAAuB,CAAC;AAEpD;;GAEG;AACa,2BAAQ,GAAG,sBAAsB,CAAC;AAElD;;GAEG;AACa,+BAAY,GAAG,2BAA2B,CAAC;AAE3D;;GAEG;AACa,mCAAgB,GAAG,+BAA+B,CAAC;AAEnE;;GAEG;AACa,qCAAkB,GAAG,mCAAmC,CAAC;AAEzE;;GAEG;AACa,2CAAwB,GAAG,yCAAyC,CAAC;AAErF;;GAEG;AACa,iCAAc,GAAG,6BAA6B,CAAC;AAE/D;;GAEG;AACa,6BAAU,GAAG,wBAAwB,CAAC;AAEtD;;GAEG;AACa,mCAAgB,GAAG,0BAA0B,CAAC;AAE9D;;GAEG;AACa,gCAAa,GAAG,2BAA2B,CAAC;AAE5D;;GAEG;AACa,sCAAmB,GAAG,iCAAiC,CAAC;AAExD,wCAAqB,GAAG,gCAAgC,CAAC;AAEzD,yCAAsB,GAAG,iCAAiC,CAAC;AAE3E;;GAEG;AACa,6BAAU,GAAG,iCAAiC,CAAC;AAE/C,iCAAc,GAAG,+BAA+B,CAAC;AAEjE;;GAEG;AACa,0CAAuB,GAAG,6BAA6B,CAAC;AAExE;;GAEG;AACa,4BAAS,GAAG,0BAA0B,CAAC;AAEvD;;GAEG;AACa,oCAAiB,GAAG,kCAAkC,CAAC"}
|
|
@@ -20,6 +20,7 @@ export declare class FilterSliderClasses {
|
|
|
20
20
|
* Slot for Selection Label (below the slider)
|
|
21
21
|
*/
|
|
22
22
|
static readonly selectionLabel = "ic3FilterSlider-SelectionLabel";
|
|
23
|
+
static readonly emptySelection = "ic3FilterSlider-EmptySelection";
|
|
23
24
|
/**
|
|
24
25
|
* root modifiers for horizontal or vertical slider
|
|
25
26
|
*/
|
|
@@ -25,6 +25,7 @@ FilterSliderClasses.muiSlider = "";
|
|
|
25
25
|
* Slot for Selection Label (below the slider)
|
|
26
26
|
*/
|
|
27
27
|
FilterSliderClasses.selectionLabel = "ic3FilterSlider-SelectionLabel";
|
|
28
|
+
FilterSliderClasses.emptySelection = "ic3FilterSlider-EmptySelection";
|
|
28
29
|
/**
|
|
29
30
|
* root modifiers for horizontal or vertical slider
|
|
30
31
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeFilterSlider.js","sourceRoot":"","sources":["../../src/theme/ThemeFilterSlider.ts"],"names":[],"mappings":";;;AAEA,4BAA4B;AAC5B,MAAa,mBAAmB;;AAAhC,
|
|
1
|
+
{"version":3,"file":"ThemeFilterSlider.js","sourceRoot":"","sources":["../../src/theme/ThemeFilterSlider.ts"],"names":[],"mappings":";;;AAEA,4BAA4B;AAC5B,MAAa,mBAAmB;;AAAhC,kDAmCC;AAjCG;;GAEG;AACa,wBAAI,GAAG,sBAAsB,CAAC;AAE9C;;GAEG;AACa,0BAAM,GAAG,wBAAwB,CAAC;AAElD;;GAEG;AACa,2BAAO,GAAG,yBAAyB,CAAA;AAEnD;;GAEG;AACa,6BAAS,GAAG,EAAE,CAAC;AAE/B;;GAEG;AACa,kCAAc,GAAG,gCAAgC,CAAC;AAClD,kCAAc,GAAG,gCAAgC,CAAC;AAElE;;GAEG;AACa,8BAAU,GAAG,4BAA4B,CAAC;AAC1C,4BAAQ,GAAG,0BAA0B,CAAC;AAO1D,IAAY,yBAMX;AAND,WAAY,yBAAyB;IAEjC,4CAAe,CAAA;IACf,kDAAqB,CAAA;IACrB,wEAA2C,CAAA;IAC3C,0CAAa,CAAA;AACjB,CAAC,EANW,yBAAyB,GAAzB,iCAAyB,KAAzB,iCAAyB,QAMpC"}
|
|
@@ -9,13 +9,16 @@ export declare class FilterTreeClasses extends LazyTreeClasses {
|
|
|
9
9
|
/**
|
|
10
10
|
* Style applied to the tree item without control icons
|
|
11
11
|
*/
|
|
12
|
-
static simpleItemLabel
|
|
12
|
+
static readonly simpleItemLabel = "ic3TreeFilter-simpleItemLabel";
|
|
13
13
|
/**
|
|
14
14
|
* Style applied to the tree item witht control icons
|
|
15
15
|
*/
|
|
16
|
-
static itemLabelWithIcons
|
|
16
|
+
static readonly itemLabelWithIcons = "ic3TreeFilter-itemLabelWithIcons";
|
|
17
|
+
}
|
|
18
|
+
export declare class FilterTreePopOverClasses {
|
|
17
19
|
}
|
|
18
20
|
export declare type FilterTreeClassKey = keyof FilterTreeClasses;
|
|
21
|
+
export declare type FilterTreePopOverClassKey = keyof FilterTreePopOverClasses;
|
|
19
22
|
export type FilterFireEventMode = TreeFireEventMode.ALL_SELECTED | TreeFireEventMode.COMPACT_ON_PARENT;
|
|
20
23
|
/**
|
|
21
24
|
* Filter Tree Options (fields of the "Chart" tab in the widget editor).
|
|
@@ -85,7 +88,7 @@ export interface FilterTreeChartOptions extends FilterTidyTableChartOptions {
|
|
|
85
88
|
/**
|
|
86
89
|
* Variant.
|
|
87
90
|
*/
|
|
88
|
-
autoCompleteVariant
|
|
91
|
+
autoCompleteVariant?: string;
|
|
89
92
|
/**
|
|
90
93
|
* Size (Dropdown/Autocomplete).
|
|
91
94
|
*
|
|
@@ -104,3 +107,6 @@ export interface FilterTreeProps {
|
|
|
104
107
|
variant?: string;
|
|
105
108
|
size: 'small' | 'medium';
|
|
106
109
|
}
|
|
110
|
+
export interface FilterTreePopOverProps {
|
|
111
|
+
variant?: string;
|
|
112
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FilterTreeClasses = void 0;
|
|
3
|
+
exports.FilterTreePopOverClasses = exports.FilterTreeClasses = void 0;
|
|
4
4
|
const ThemeLazyTreeClasses_1 = require("./ThemeLazyTreeClasses");
|
|
5
5
|
class FilterTreeClasses extends ThemeLazyTreeClasses_1.LazyTreeClasses {
|
|
6
6
|
}
|
|
@@ -9,4 +9,15 @@ exports.FilterTreeClasses = FilterTreeClasses;
|
|
|
9
9
|
* Style applied to the root element.
|
|
10
10
|
*/
|
|
11
11
|
FilterTreeClasses.root = "ic3TreeFilter-root";
|
|
12
|
+
/**
|
|
13
|
+
* Style applied to the tree item without control icons
|
|
14
|
+
*/
|
|
15
|
+
FilterTreeClasses.simpleItemLabel = "ic3TreeFilter-simpleItemLabel";
|
|
16
|
+
/**
|
|
17
|
+
* Style applied to the tree item witht control icons
|
|
18
|
+
*/
|
|
19
|
+
FilterTreeClasses.itemLabelWithIcons = "ic3TreeFilter-itemLabelWithIcons";
|
|
20
|
+
class FilterTreePopOverClasses {
|
|
21
|
+
}
|
|
22
|
+
exports.FilterTreePopOverClasses = FilterTreePopOverClasses;
|
|
12
23
|
//# sourceMappingURL=ThemeFilterTree.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeFilterTree.js","sourceRoot":"","sources":["../../src/theme/ThemeFilterTree.ts"],"names":[],"mappings":";;;AAEA,iEAAuD;AAEvD,MAAa,iBAAkB,SAAQ,sCAAe;;AAAtD,8CAsBC;AApBG;;GAEG;AACa,sBAAI,GAAG,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"ThemeFilterTree.js","sourceRoot":"","sources":["../../src/theme/ThemeFilterTree.ts"],"names":[],"mappings":";;;AAEA,iEAAuD;AAEvD,MAAa,iBAAkB,SAAQ,sCAAe;;AAAtD,8CAsBC;AApBG;;GAEG;AACa,sBAAI,GAAG,oBAAoB,CAAC;AAE5C;;GAEG;AACa,iCAAe,GAAG,+BAA+B,CAAC;AAElE;;GAEG;AACa,oCAAkB,GAAG,kCAAkC,CAAC;AAS5E,MAAa,wBAAwB;CAEpC;AAFD,4DAEC"}
|
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
export declare class LazyTreeClasses {
|
|
2
|
+
/**
|
|
3
|
+
* Style applied to the root element.
|
|
4
|
+
*/
|
|
5
|
+
static readonly lazyRoot = "ic3LazyTreeView-root";
|
|
2
6
|
/** Styles applied to the search toolbar element */
|
|
3
7
|
static readonly toolbar = "ic3LazyTreeView-toolbar";
|
|
4
8
|
/** Styles applied to the search search input element */
|
|
@@ -11,6 +15,14 @@ export declare class LazyTreeClasses {
|
|
|
11
15
|
static readonly buttonFilterSelectedOff = "ic3LazyTreeView-toolbar-buttonOff";
|
|
12
16
|
/** Styles applied to the TreeRoot element */
|
|
13
17
|
static readonly treeRoot = "ic3LazyTreeView-treeRoot";
|
|
18
|
+
/**
|
|
19
|
+
* Item classes
|
|
20
|
+
*/
|
|
21
|
+
static readonly itemRoot = "ic3LazyTreeView-itemRoot";
|
|
22
|
+
static readonly itemContainer = "ic3LazyTreeView-itemContainer";
|
|
23
|
+
static readonly leftDiv = "ic3LazyTreeView-itemLeftDiv";
|
|
24
|
+
static readonly itemLabelContainer = "ic3LazyTreeView-itemLabelContainer";
|
|
25
|
+
static readonly itemIcon = "ic3LazyTreeView-itemIcon";
|
|
14
26
|
}
|
|
15
27
|
export declare type LazyTreeClassesClassKey = keyof LazyTreeClasses;
|
|
16
28
|
export interface LazyTreeProps {
|
|
@@ -4,6 +4,10 @@ exports.LazyTreeClasses = void 0;
|
|
|
4
4
|
class LazyTreeClasses {
|
|
5
5
|
}
|
|
6
6
|
exports.LazyTreeClasses = LazyTreeClasses;
|
|
7
|
+
/**
|
|
8
|
+
* Style applied to the root element.
|
|
9
|
+
*/
|
|
10
|
+
LazyTreeClasses.lazyRoot = 'ic3LazyTreeView-root';
|
|
7
11
|
/** Styles applied to the search toolbar element */
|
|
8
12
|
LazyTreeClasses.toolbar = 'ic3LazyTreeView-toolbar';
|
|
9
13
|
/** Styles applied to the search search input element */
|
|
@@ -16,4 +20,12 @@ LazyTreeClasses.buttonFilterSelectedOn = 'ic3LazyTreeView-toolbar-buttonOn';
|
|
|
16
20
|
LazyTreeClasses.buttonFilterSelectedOff = 'ic3LazyTreeView-toolbar-buttonOff';
|
|
17
21
|
/** Styles applied to the TreeRoot element */
|
|
18
22
|
LazyTreeClasses.treeRoot = 'ic3LazyTreeView-treeRoot';
|
|
23
|
+
/**
|
|
24
|
+
* Item classes
|
|
25
|
+
*/
|
|
26
|
+
LazyTreeClasses.itemRoot = 'ic3LazyTreeView-itemRoot';
|
|
27
|
+
LazyTreeClasses.itemContainer = 'ic3LazyTreeView-itemContainer';
|
|
28
|
+
LazyTreeClasses.leftDiv = 'ic3LazyTreeView-itemLeftDiv';
|
|
29
|
+
LazyTreeClasses.itemLabelContainer = 'ic3LazyTreeView-itemLabelContainer';
|
|
30
|
+
LazyTreeClasses.itemIcon = 'ic3LazyTreeView-itemIcon';
|
|
19
31
|
//# sourceMappingURL=ThemeLazyTreeClasses.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeLazyTreeClasses.js","sourceRoot":"","sources":["../../src/theme/ThemeLazyTreeClasses.ts"],"names":[],"mappings":";;;AAAA,MAAa,eAAe;;AAA5B,
|
|
1
|
+
{"version":3,"file":"ThemeLazyTreeClasses.js","sourceRoot":"","sources":["../../src/theme/ThemeLazyTreeClasses.ts"],"names":[],"mappings":";;;AAAA,MAAa,eAAe;;AAA5B,0CAqCC;AAnCG;;GAEG;AACa,wBAAQ,GAAG,sBAAsB,CAAC;AAElD,mDAAmD;AACnC,uBAAO,GAAG,yBAAyB,CAAC;AAEpD,wDAAwD;AACxC,qBAAK,GAAG,+BAA+B,CAAC;AAExD,sDAAsD;AACtC,sBAAM,GAAG,gCAAgC,CAAC;AAE1D,sDAAsD;AACtC,sCAAsB,GAAG,kCAAkC,CAAC;AAE5E,uDAAuD;AACvC,uCAAuB,GAAG,mCAAmC,CAAC;AAE9E,6CAA6C;AAC7B,wBAAQ,GAAG,0BAA0B,CAAC;AAEtD;;GAEG;AACa,wBAAQ,GAAG,0BAA0B,CAAC;AAEtC,6BAAa,GAAG,+BAA+B,CAAC;AAEhD,uBAAO,GAAG,6BAA6B,CAAC;AAExC,kCAAkB,GAAG,oCAAoC,CAAC;AAE1D,wBAAQ,GAAG,0BAA0B,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
export declare class ListCounterClasses {
|
|
2
2
|
static readonly counter = "ic3Counter";
|
|
3
3
|
static readonly label = "ic3ListCounter-Label";
|
|
4
|
+
static readonly labelSmallSize = "ic3ListCounter-Label-SizeMin";
|
|
5
|
+
static readonly labelMediumSize = "ic3ListCounter-Label-SizeMedium";
|
|
4
6
|
}
|
|
5
7
|
export declare type ListCounterClassKey = keyof ListCounterClasses;
|
|
6
8
|
export interface ListCounterProps {
|
|
@@ -6,4 +6,6 @@ class ListCounterClasses {
|
|
|
6
6
|
exports.ListCounterClasses = ListCounterClasses;
|
|
7
7
|
ListCounterClasses.counter = "ic3Counter";
|
|
8
8
|
ListCounterClasses.label = "ic3ListCounter-Label";
|
|
9
|
+
ListCounterClasses.labelSmallSize = "ic3ListCounter-Label-SizeMin";
|
|
10
|
+
ListCounterClasses.labelMediumSize = "ic3ListCounter-Label-SizeMedium";
|
|
9
11
|
//# sourceMappingURL=ThemeListCounter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeListCounter.js","sourceRoot":"","sources":["../../src/theme/ThemeListCounter.ts"],"names":[],"mappings":";;;AACA,MAAa,kBAAkB;;AAA/B,
|
|
1
|
+
{"version":3,"file":"ThemeListCounter.js","sourceRoot":"","sources":["../../src/theme/ThemeListCounter.ts"],"names":[],"mappings":";;;AACA,MAAa,kBAAkB;;AAA/B,gDASC;AAPmB,0BAAO,GAAG,YAAY,CAAC;AAEvB,wBAAK,GAAG,sBAAsB,CAAC;AAE/B,iCAAc,GAAG,8BAA8B,CAAC;AAChD,kCAAe,GAAG,iCAAiC,CAAC"}
|
|
@@ -71,6 +71,7 @@ export declare class WidgetBoxClasses {
|
|
|
71
71
|
* attribute for the root div containing the widgetId
|
|
72
72
|
*/
|
|
73
73
|
static readonly widgetIdAttribute: string;
|
|
74
|
+
static readonly nsIdAttribute: string;
|
|
74
75
|
}
|
|
75
76
|
export declare type WidgetBoxClassKey = keyof WidgetBoxClasses;
|
|
76
77
|
export declare enum WidgetBoxTooltipType {
|
|
@@ -76,6 +76,7 @@ WidgetBoxClasses.userMenuClosed = "ic3WidgetBox-userMenuClosed";
|
|
|
76
76
|
* attribute for the root div containing the widgetId
|
|
77
77
|
*/
|
|
78
78
|
WidgetBoxClasses.widgetIdAttribute = "data-widget-id";
|
|
79
|
+
WidgetBoxClasses.nsIdAttribute = "data-ns-id";
|
|
79
80
|
var WidgetBoxTooltipType;
|
|
80
81
|
(function (WidgetBoxTooltipType) {
|
|
81
82
|
WidgetBoxTooltipType["dialog"] = "dialog";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeWidgetBox.js","sourceRoot":"","sources":["../../src/theme/ThemeWidgetBox.ts"],"names":[],"mappings":";;;AAAA,MAAa,gBAAgB;;AAA7B,
|
|
1
|
+
{"version":3,"file":"ThemeWidgetBox.js","sourceRoot":"","sources":["../../src/theme/ThemeWidgetBox.ts"],"names":[],"mappings":";;;AAAA,MAAa,gBAAgB;;AAA7B,4CA8FC;AA5FG;;GAEG;AACa,qBAAI,GAAW,cAAc,CAAC;AAG9C;;GAEG;AACa,yBAAQ,GAAW,uBAAuB,CAAC;AAE3D;;GAEG;AACa,yBAAQ,GAAW,uBAAuB,CAAC;AAE3D;;GAEG;AACa,qBAAI,GAAW,mBAAmB,CAAC;AAEnD;;GAEG;AACa,6BAAY,GAAW,2BAA2B,CAAC;AAEnE;;GAEG;AACa,0BAAS,GAAW,wBAAwB,CAAC;AAE7D;;GAEG;AACa,kCAAiB,GAAW,iCAAiC,CAAC;AAE9E;;GAEG;AACa,qCAAoB,GAAW,oCAAoC,CAAC;AAEpF;;GAEG;AACa,wBAAO,GAAW,sBAAsB,CAAC;AAEzD;;GAEG;AACa,4BAAW,GAAW,2BAA2B,CAAC;AAElE;;GAEG;AACa,yBAAQ,GAAW,uBAAuB,CAAC;AAE3D;;GAEG;AACa,uBAAM,GAAW,qBAAqB,CAAC;AAEvD;;GAEG;AACa,4BAAW,GAAW,0BAA0B,CAAC;AAEjE;;GAEG;AACa,2BAAU,GAAW,yBAAyB,CAAC;AAE/D;;GAEG;AACa,8BAAa,GAAW,4BAA4B,CAAC;AAErE;;GAEG;AACa,6BAAY,GAAW,2BAA2B,CAAC;AAEnE;;GAEG;AACa,+BAAc,GAAW,6BAA6B,CAAC;AAEvE;;GAEG;AACa,kCAAiB,GAAW,gBAAgB,CAAC;AAE7C,8BAAa,GAAW,YAAY,CAAC;AAKzD,IAAY,oBAGX;AAHD,WAAY,oBAAoB;IAC5B,yCAAiB,CAAA;IACjB,2CAAmB,CAAA;AACvB,CAAC,EAHW,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAG/B;AAED,IAAY,uBAIX;AAJD,WAAY,uBAAuB;IAC/B,8CAAmB,CAAA;IACnB,kDAAuB,CAAA;IACvB,sEAA2C,CAAA;AAC/C,CAAC,EAJW,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QAIlC;AAED,IAAY,yBAGX;AAHD,WAAY,yBAAyB;IACjC,4EAA+C,CAAA;IAC/C,8EAAiD,CAAA;AACrD,CAAC,EAHW,yBAAyB,GAAzB,iCAAyB,KAAzB,iCAAyB,QAGpC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ic3/reporting-api",
|
|
3
|
-
"version": "8.4.0
|
|
3
|
+
"version": "8.4.0",
|
|
4
4
|
"description": "icCube dashboards API",
|
|
5
5
|
"homepage": "https://github.com/ic3-software/ic3-reporting-api",
|
|
6
6
|
"repository": "https://github.com/ic3-software/ic3-reporting-api",
|
|
@@ -11,15 +11,15 @@
|
|
|
11
11
|
"access": "public"
|
|
12
12
|
},
|
|
13
13
|
"dependencies": {
|
|
14
|
-
"@mui/material": "5.
|
|
15
|
-
"@mui/system": "5.
|
|
14
|
+
"@mui/material": "5.12.0",
|
|
15
|
+
"@mui/system": "5.12.0",
|
|
16
16
|
"@emotion/react": "11.10.6",
|
|
17
17
|
"@emotion/styled": "11.10.6",
|
|
18
18
|
"@types/markerclustererplus": "2.1.33",
|
|
19
|
-
"@types/react": "18.0.
|
|
19
|
+
"@types/react": "18.0.33"
|
|
20
20
|
},
|
|
21
21
|
"devDependencies": {
|
|
22
|
-
"@types/node": "18.15.
|
|
22
|
+
"@types/node": "18.15.11",
|
|
23
23
|
"del-cli": "5.0.0",
|
|
24
24
|
"typescript": "4.9.5"
|
|
25
25
|
},
|