wuic-framework-lib 1.5.0 → 1.7.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/fesm2022/{wuic-framework-lib-chart-list.component-0J1ghIrS.mjs → wuic-framework-lib-chart-list.component-Bl424n7x.mjs} +50 -38
- package/fesm2022/{wuic-framework-lib-code-editor.component-C21mvjyr.mjs → wuic-framework-lib-code-editor.component-N6HMl2mf.mjs} +174 -274
- package/fesm2022/{wuic-framework-lib-designer.component-x10ZzUEy.mjs → wuic-framework-lib-designer.component-Bd2fwl6H.mjs} +499 -581
- package/fesm2022/{wuic-framework-lib-first-run-wizard.component-BuSxs_CM.mjs → wuic-framework-lib-first-run-wizard.component-NN6cWVHL.mjs} +22 -24
- package/fesm2022/{wuic-framework-lib-framework-docs.component-xTGLbEnp.mjs → wuic-framework-lib-framework-docs.component-B867JAYe.mjs} +2912 -294
- package/fesm2022/{wuic-framework-lib-pivot-builder.component-BkFFjPm4.mjs → wuic-framework-lib-pivot-builder.component-DWukH0L-.mjs} +580 -68
- package/fesm2022/{wuic-framework-lib-prompt-dialog-fallback-host.component-Bi-TrJB6.mjs → wuic-framework-lib-prompt-dialog-fallback-host.component-DWO1Rcgv.mjs} +2 -2
- package/fesm2022/wuic-framework-lib-report-designer.component-QcrU81m6.mjs +380 -0
- package/fesm2022/wuic-framework-lib-report-scaffold-dialog.component-U-zdOoRV.mjs +431 -0
- package/fesm2022/{wuic-framework-lib-report-viewer.component-BR-BfI2r.mjs → wuic-framework-lib-report-viewer.component-B4LhA3SL.mjs} +8 -13
- package/fesm2022/{wuic-framework-lib-scene3d-designer.component-BQzFxSXP.mjs → wuic-framework-lib-scene3d-designer.component-DjOfzKLo.mjs} +323 -88
- package/fesm2022/{wuic-framework-lib-scene3d-light-baker-gpu-0LjqhSNn.mjs → wuic-framework-lib-scene3d-light-baker-gpu-C96T9uIW.mjs} +2 -2
- package/fesm2022/{wuic-framework-lib-scene3d-shader-effect-CQLWkuh1.mjs → wuic-framework-lib-scene3d-shader-effect-DjHyCAFK.mjs} +612 -32
- package/fesm2022/{wuic-framework-lib-scene3d-viewer.component-imoV3HOs.mjs → wuic-framework-lib-scene3d-viewer.component-Dboz1fjl.mjs} +149 -18
- package/fesm2022/{wuic-framework-lib-scheduler-list.component-xzlTEkoq.mjs → wuic-framework-lib-scheduler-list.component--wY21R3o.mjs} +169 -53
- package/fesm2022/{wuic-framework-lib-spreadsheet-list-sf.component-CrS6fOGj.mjs → wuic-framework-lib-spreadsheet-list-sf.component-Ek30J8v-.mjs} +149 -108
- package/fesm2022/{wuic-framework-lib-stimulsoft-license.service-BIyxB4pO.mjs → wuic-framework-lib-stimulsoft-license.service-CsNNSFYs.mjs} +3 -3
- package/fesm2022/wuic-framework-lib-timeline-list.component-aqCH4P0G.mjs +805 -0
- package/fesm2022/{wuic-framework-lib-workflow-designer.component-5xtQ7-6z.mjs → wuic-framework-lib-workflow-designer.component-DMM8BeXm.mjs} +180 -150
- package/fesm2022/{wuic-framework-lib-wuic-framework-lib-3TZ-j-yL.mjs → wuic-framework-lib-wuic-framework-lib-dfLTqam5.mjs} +6761 -2347
- package/fesm2022/wuic-framework-lib.mjs +1 -1
- package/package.json +4 -2
- package/styles/_wuic-tokens.scss +82 -0
- package/styles/styles.scss +160 -0
- package/types/wuic-framework-lib.d.ts +4264 -2691
- package/fesm2022/wuic-framework-lib-report-designer.component-ZvB46-LV.mjs +0 -194
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { EventEmitter, ViewChild, Output, Input, Component } from '@angular/core';
|
|
3
3
|
import { BehaviorSubject } from 'rxjs';
|
|
4
|
-
import { W as WtoolboxService,
|
|
5
|
-
import * as
|
|
4
|
+
import { W as WtoolboxService, m as WuicClientException, n as WuicErrorCodes, G as GlobalHandler, M as MetadataProviderService, T as TranslationManagerService, U as UserInfoService, A as ArchetypeConfiguratorComponent } from './wuic-framework-lib-wuic-framework-lib-dfLTqam5.mjs';
|
|
5
|
+
import * as i4 from 'primeng/chart';
|
|
6
6
|
import { ChartModule } from 'primeng/chart';
|
|
7
|
-
import * as
|
|
7
|
+
import * as i8 from '@ngx-translate/core';
|
|
8
8
|
import { TranslateModule } from '@ngx-translate/core';
|
|
9
9
|
import * as i1 from '@angular/platform-browser';
|
|
10
10
|
import * as i1$1 from '@angular/router';
|
|
@@ -308,8 +308,8 @@ class ChartListComponent {
|
|
|
308
308
|
this.themeObserver?.disconnect();
|
|
309
309
|
this.chartResizeObserver?.disconnect();
|
|
310
310
|
this.detachLayoutListeners();
|
|
311
|
-
if (
|
|
312
|
-
|
|
311
|
+
if (globalThis.window !== undefined && this.pendingChartResizeHandle) {
|
|
312
|
+
globalThis.cancelAnimationFrame(this.pendingChartResizeHandle);
|
|
313
313
|
this.pendingChartResizeHandle = undefined;
|
|
314
314
|
}
|
|
315
315
|
this.clearPendingChartMeasureTimeouts();
|
|
@@ -441,7 +441,7 @@ class ChartListComponent {
|
|
|
441
441
|
* con `chartDrillDown` no-op che logga il click per debug — senza crash.
|
|
442
442
|
*/
|
|
443
443
|
resolveDrillDownUtility() {
|
|
444
|
-
const fromHost =
|
|
444
|
+
const fromHost = globalThis?.utility;
|
|
445
445
|
if (fromHost && typeof fromHost === 'object')
|
|
446
446
|
return fromHost;
|
|
447
447
|
return {
|
|
@@ -834,13 +834,15 @@ class ChartListComponent {
|
|
|
834
834
|
extraProps.archetypes = extraProps.archetypes || {};
|
|
835
835
|
const existingChart = extraProps.archetypes.chart || {};
|
|
836
836
|
const existingDataOptions = existingChart.dataOptions || {};
|
|
837
|
-
extraProps.archetypes.chart =
|
|
837
|
+
extraProps.archetypes.chart = {
|
|
838
|
+
...existingChart,
|
|
838
839
|
type: this.selectedChartType,
|
|
839
840
|
options: this.buildWidgetChartOptions(),
|
|
840
|
-
dataOptions:
|
|
841
|
+
dataOptions: {
|
|
842
|
+
...existingDataOptions,
|
|
841
843
|
cutOffCount: this.cutoffValue
|
|
842
|
-
}
|
|
843
|
-
}
|
|
844
|
+
}
|
|
845
|
+
};
|
|
844
846
|
this.metaInfo.tableMetadata.extraProps = extraProps;
|
|
845
847
|
this.metaInfo.tableMetadata.md_props_bag = JSON.stringify(extraProps);
|
|
846
848
|
}
|
|
@@ -864,22 +866,25 @@ class ChartListComponent {
|
|
|
864
866
|
extraProps.archetypes = extraProps.archetypes || {};
|
|
865
867
|
const existingChart = extraProps.archetypes.chart || {};
|
|
866
868
|
const existingDataOptions = existingChart.dataOptions || {};
|
|
867
|
-
extraProps.archetypes.chart =
|
|
869
|
+
extraProps.archetypes.chart = {
|
|
870
|
+
...existingChart,
|
|
868
871
|
type: this.selectedChartType,
|
|
869
872
|
options: this.buildWidgetChartOptions(),
|
|
870
|
-
dataOptions:
|
|
873
|
+
dataOptions: {
|
|
874
|
+
...existingDataOptions,
|
|
871
875
|
cutOffCount: this.cutoffValue
|
|
872
|
-
}
|
|
873
|
-
}
|
|
876
|
+
}
|
|
877
|
+
};
|
|
874
878
|
const mdPropsBag = JSON.stringify(extraProps);
|
|
875
879
|
const currentTableMetadata = await this.loadCurrentTableMetadataRecord(userId);
|
|
876
880
|
if (!currentTableMetadata) {
|
|
877
881
|
return;
|
|
878
882
|
}
|
|
879
|
-
const entity =
|
|
883
|
+
const entity = {
|
|
884
|
+
...currentTableMetadata,
|
|
880
885
|
md_props_bag: mdPropsBag,
|
|
881
886
|
__original: currentTableMetadata
|
|
882
|
-
}
|
|
887
|
+
};
|
|
883
888
|
await WtoolboxService.http.post(MetadataProviderService.updateUri, {
|
|
884
889
|
route: MetadataProviderService.metaTableRoute,
|
|
885
890
|
user_id: userId,
|
|
@@ -910,8 +915,8 @@ class ChartListComponent {
|
|
|
910
915
|
propsFromBag = {};
|
|
911
916
|
}
|
|
912
917
|
const current = this.metaInfo?.tableMetadata?.extraProps || {};
|
|
913
|
-
const merged =
|
|
914
|
-
merged.archetypes =
|
|
918
|
+
const merged = { ...propsFromBag, ...current };
|
|
919
|
+
merged.archetypes = { ...propsFromBag?.archetypes, ...current?.archetypes };
|
|
915
920
|
return merged;
|
|
916
921
|
}
|
|
917
922
|
/**
|
|
@@ -967,7 +972,7 @@ class ChartListComponent {
|
|
|
967
972
|
const extraProps = this.ensureMergedExtraProps();
|
|
968
973
|
extraProps.archetypes = extraProps.archetypes || {};
|
|
969
974
|
const existingChart = extraProps.archetypes.chart || {};
|
|
970
|
-
extraProps.archetypes.chart =
|
|
975
|
+
extraProps.archetypes.chart = { ...existingChart, ...nextConfig };
|
|
971
976
|
this.metaInfo.tableMetadata.extraProps = extraProps;
|
|
972
977
|
this.metaInfo.tableMetadata.md_props_bag = JSON.stringify(extraProps);
|
|
973
978
|
this.syncChartConfigFromPropsBag();
|
|
@@ -1038,12 +1043,19 @@ class ChartListComponent {
|
|
|
1038
1043
|
}
|
|
1039
1044
|
catch (err) {
|
|
1040
1045
|
try {
|
|
1041
|
-
err.__wuicHandled = true;
|
|
1046
|
+
(err).__wuicHandled = true;
|
|
1042
1047
|
}
|
|
1043
1048
|
catch { /* primitive throw */ }
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1049
|
+
let innerMessage;
|
|
1050
|
+
if (err instanceof Error) {
|
|
1051
|
+
innerMessage = err.message;
|
|
1052
|
+
}
|
|
1053
|
+
else if (err && typeof err === 'object' && typeof err.message === 'string') {
|
|
1054
|
+
innerMessage = err.message;
|
|
1055
|
+
}
|
|
1056
|
+
else {
|
|
1057
|
+
innerMessage = String(err);
|
|
1058
|
+
}
|
|
1047
1059
|
const exc = new WuicClientException(WuicErrorCodes.archetypeInitFailed('chart'), {
|
|
1048
1060
|
archetype: 'chart',
|
|
1049
1061
|
phase: 'parseData',
|
|
@@ -1080,7 +1092,7 @@ class ChartListComponent {
|
|
|
1080
1092
|
datasets: []
|
|
1081
1093
|
};
|
|
1082
1094
|
let data = Array.isArray(result[dataOptions.dataProperty]) ? result[dataOptions.dataProperty] : [];
|
|
1083
|
-
const groupRows = data.filter((d) => d
|
|
1095
|
+
const groupRows = data.filter((d) => d?.__group_header === 1);
|
|
1084
1096
|
const chartRows = groupRows.length ? groupRows : data;
|
|
1085
1097
|
const sortField = dataOptions.datasets?.[0]?.dataField;
|
|
1086
1098
|
let orderedRows = [...chartRows];
|
|
@@ -1187,13 +1199,13 @@ class ChartListComponent {
|
|
|
1187
1199
|
* Pianifica un resize canvas nel prossimo frame annullando richieste pendenti.
|
|
1188
1200
|
*/
|
|
1189
1201
|
scheduleChartResize() {
|
|
1190
|
-
if (
|
|
1202
|
+
if (globalThis.window === undefined) {
|
|
1191
1203
|
return;
|
|
1192
1204
|
}
|
|
1193
1205
|
if (this.pendingChartResizeHandle) {
|
|
1194
|
-
|
|
1206
|
+
globalThis.cancelAnimationFrame(this.pendingChartResizeHandle);
|
|
1195
1207
|
}
|
|
1196
|
-
this.pendingChartResizeHandle =
|
|
1208
|
+
this.pendingChartResizeHandle = globalThis.requestAnimationFrame(() => {
|
|
1197
1209
|
this.pendingChartResizeHandle = undefined;
|
|
1198
1210
|
this.chartRef?.chart?.resize();
|
|
1199
1211
|
});
|
|
@@ -1203,7 +1215,7 @@ class ChartListComponent {
|
|
|
1203
1215
|
* adattandosi allo spazio reale disponibile.
|
|
1204
1216
|
*/
|
|
1205
1217
|
updateChartHostHeight() {
|
|
1206
|
-
if (
|
|
1218
|
+
if (globalThis.window === undefined || !this.chartHostRef?.nativeElement) {
|
|
1207
1219
|
return false;
|
|
1208
1220
|
}
|
|
1209
1221
|
const chartHost = this.chartHostRef.nativeElement;
|
|
@@ -1237,7 +1249,7 @@ class ChartListComponent {
|
|
|
1237
1249
|
let constrainAncestor = chartHost.parentElement;
|
|
1238
1250
|
while (constrainAncestor && constrainAncestor !== layoutContainer) {
|
|
1239
1251
|
const isDashboardCell = constrainAncestor.tagName === 'TD'
|
|
1240
|
-
|| (constrainAncestor.className
|
|
1252
|
+
|| (constrainAncestor.className?.includes('CRM_HOME_CELL'));
|
|
1241
1253
|
if (isDashboardCell) {
|
|
1242
1254
|
const ancRect = constrainAncestor.getBoundingClientRect();
|
|
1243
1255
|
const cappedHeight = Math.floor(ancRect.bottom - hostTop - this.chartBottomPadding);
|
|
@@ -1267,7 +1279,7 @@ class ChartListComponent {
|
|
|
1267
1279
|
getLayoutScrollableContainer(startElement) {
|
|
1268
1280
|
let node = startElement.parentElement;
|
|
1269
1281
|
while (node) {
|
|
1270
|
-
const style =
|
|
1282
|
+
const style = globalThis.getComputedStyle(node);
|
|
1271
1283
|
const overflowY = style.overflowY || '';
|
|
1272
1284
|
if ((overflowY.includes('auto') || overflowY.includes('scroll') || overflowY.includes('overlay')) && node.clientHeight > 0) {
|
|
1273
1285
|
return node;
|
|
@@ -1280,13 +1292,13 @@ class ChartListComponent {
|
|
|
1280
1292
|
* Esegue un resize immediato e ulteriori pass differiti per gestire transizioni/layout asincroni.
|
|
1281
1293
|
*/
|
|
1282
1294
|
scheduleChartResizePasses() {
|
|
1283
|
-
if (
|
|
1295
|
+
if (globalThis.window === undefined) {
|
|
1284
1296
|
return;
|
|
1285
1297
|
}
|
|
1286
1298
|
this.clearPendingChartMeasureTimeouts();
|
|
1287
1299
|
this.measureAndResizeChart(true);
|
|
1288
1300
|
this.chartResizePassDelaysMs.forEach((delay) => {
|
|
1289
|
-
const handle =
|
|
1301
|
+
const handle = globalThis.setTimeout(() => {
|
|
1290
1302
|
this.measureAndResizeChart();
|
|
1291
1303
|
}, delay);
|
|
1292
1304
|
this.pendingChartMeasureTimeouts.push(handle);
|
|
@@ -1296,10 +1308,10 @@ class ChartListComponent {
|
|
|
1296
1308
|
* Annulla tutti i timeout di misura chart ancora pendenti.
|
|
1297
1309
|
*/
|
|
1298
1310
|
clearPendingChartMeasureTimeouts() {
|
|
1299
|
-
if (
|
|
1311
|
+
if (globalThis.window === undefined) {
|
|
1300
1312
|
return;
|
|
1301
1313
|
}
|
|
1302
|
-
this.pendingChartMeasureTimeouts.forEach((timeoutId) =>
|
|
1314
|
+
this.pendingChartMeasureTimeouts.forEach((timeoutId) => globalThis.clearTimeout(timeoutId));
|
|
1303
1315
|
this.pendingChartMeasureTimeouts = [];
|
|
1304
1316
|
}
|
|
1305
1317
|
/**
|
|
@@ -1323,7 +1335,7 @@ class ChartListComponent {
|
|
|
1323
1335
|
*/
|
|
1324
1336
|
parentResizeObserver;
|
|
1325
1337
|
attachLayoutListeners() {
|
|
1326
|
-
if (
|
|
1338
|
+
if (globalThis.window === undefined) {
|
|
1327
1339
|
return;
|
|
1328
1340
|
}
|
|
1329
1341
|
window.addEventListener('resize', this.onWindowResize);
|
|
@@ -1336,7 +1348,7 @@ class ChartListComponent {
|
|
|
1336
1348
|
* Rimuove i listener globali registrati da `attachLayoutListeners`.
|
|
1337
1349
|
*/
|
|
1338
1350
|
detachLayoutListeners() {
|
|
1339
|
-
if (
|
|
1351
|
+
if (globalThis.window === undefined) {
|
|
1340
1352
|
return;
|
|
1341
1353
|
}
|
|
1342
1354
|
window.removeEventListener('resize', this.onWindowResize);
|
|
@@ -1345,7 +1357,7 @@ class ChartListComponent {
|
|
|
1345
1357
|
this.parentResizeObserver = undefined;
|
|
1346
1358
|
}
|
|
1347
1359
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ChartListComponent, deps: [{ token: i1.Title }, { token: i0.ChangeDetectorRef }, { token: i1$1.ActivatedRoute }, { token: TranslationManagerService }, { token: UserInfoService }], target: i0.ɵɵFactoryTarget.Component });
|
|
1348
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: ChartListComponent, isStandalone: true, selector: "wuic-chart-list", inputs: { hardcodedRoute: "hardcodedRoute", parentRecord: "parentRecord", parentMetaInfo: "parentMetaInfo", datasource: "datasource", hardcodedDatasource: "hardcodedDatasource", hideToolbar: "hideToolbar" }, outputs: { onChartDataSelect: "onChartDataSelect", onChartDrillDown: "onChartDrillDown", onChartDataBound: "onChartDataBound" }, viewQueries: [{ propertyName: "chartRef", first: true, predicate: ["chartRef"], descendants: true }, { propertyName: "chartHostRef", first: true, predicate: ["chartHostRef"], descendants: true }], ngImport: i0, template: "@if (chartOptions) {\n <div class=\"chart-list-root\">\n @if (!hideToolbar) {\n <div class=\"chart-list-toolbar\">\n @if (isAdmin) {\n <button class=\"p-element p-button p-component\" (click)=\"openConfigPopup()\">{{'chart.settings' | translate}}</button>\n }\n <button class=\"p-element p-button p-component\" (click)=\"exportChart()\">{{'chart.export' | translate}}</button>\n @if (isAdmin) {\n <button class=\"p-element p-button p-component\" (click)=\"saveChartMetadataPropsBag()\">{{ 'metadata.save_table' | translate }}</button>\n }\n </div>\n }\n\n <div class=\"chart-list-chart-host\" #chartHostRef [style.height.px]=\"chartHostHeightPx\" [style.max-height.px]=\"chartHostHeightPx\">\n <p-chart #chartRef [type]=\"chartOptions.type\" [data]=\"data\" [options]=\"chartOptions\" width=\"100%\"\n height=\"100%\" [responsive]=\"true\" (onDataSelect)=\"drillDown($event)\" />\n </div>\n </div>\n\n <wuic-archetype-configurator\n [visible]=\"showConfigPopup\"\n (visibleChange)=\"showConfigPopup = $event\"\n [archetype]=\"'chart'\"\n [metaInfo]=\"metaInfo\"\n [value]=\"getChartConfigValue()\"\n (applyConfig)=\"onArchetypeConfigApply($event)\">\n </wuic-archetype-configurator>\n}\n", styles: [":host{display:block;height:100%;min-height:0;overflow:hidden}.chart-list-root{display:flex;flex-direction:column;height:100%;width:100%;min-height:0;overflow:hidden}.chart-list-cutoff{flex:0 0 auto;padding:.5rem 0}.chart-list-toolbar{flex:0 0 auto;padding:.5rem 0;display:flex;gap:.5rem;flex-wrap:wrap}.chart-list-config{flex:0 0 auto;padding:.5rem 0}.chart-list-modal-backdrop{position:fixed;inset:0;background:#0006;z-index:1200;display:flex;align-items:center;justify-content:center;padding:1rem}.chart-list-modal{width:min(900px,100%);max-height:85vh;overflow:auto;background:#fff;color:#111827;border-radius:8px;box-shadow:0 10px 32px #00000040;padding:1rem}.chart-list-modal-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.chart-list-modal-header h4{margin:0}.chart-list-config-row{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.5rem}.chart-list-inline{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.chart-list-inline label{display:inline-flex;align-items:center;gap:.35rem}.chart-list-type-select,.chart-list-inline select,.chart-list-input,.chart-list-input-sm{background:#fff;color:#111827;border:1px solid #d1d5db;border-radius:6px;padding:.35rem .45rem}.chart-list-config-label{font-weight:600;font-size:.9rem}.chart-list-type-select,.chart-list-input,.chart-list-input-sm{width:100%;box-sizing:border-box}.chart-list-input-sm{width:8rem}:host-context(.theme-dark) .chart-list-modal-backdrop{background:#000000a6}:host-context(.theme-dark) .chart-list-modal{background:#111827;color:#e5e7eb;box-shadow:0 10px 32px #0000008c}:host-context(.theme-dark) .chart-list-config-label,:host-context(.theme-dark) .chart-list-inline label{color:#e5e7eb}:host-context(.theme-dark) .chart-list-type-select,:host-context(.theme-dark) .chart-list-inline select,:host-context(.theme-dark) .chart-list-input,:host-context(.theme-dark) .chart-list-input-sm{background:#0f172a;color:#e5e7eb;border-color:#374151}:host-context(.theme-dark) .chart-list-type-select:focus,:host-context(.theme-dark) .chart-list-inline select:focus,:host-context(.theme-dark) .chart-list-input:focus,:host-context(.theme-dark) .chart-list-input-sm:focus{outline:1px solid #60a5fa;outline-offset:0}.chart-list-cutoff-label{display:block;font-weight:600}.chart-list-cutoff-slider{width:100%}.chart-list-chart-host{flex:1 1 auto;min-height:0;overflow:hidden}.chart-list-chart-host p-chart{display:block;height:100%}\n"], dependencies: [{ kind: "ngmodule", type: ChartModule }, { kind: "component", type:
|
|
1360
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: ChartListComponent, isStandalone: true, selector: "wuic-chart-list", inputs: { hardcodedRoute: "hardcodedRoute", parentRecord: "parentRecord", parentMetaInfo: "parentMetaInfo", datasource: "datasource", hardcodedDatasource: "hardcodedDatasource", hideToolbar: "hideToolbar" }, outputs: { onChartDataSelect: "onChartDataSelect", onChartDrillDown: "onChartDrillDown", onChartDataBound: "onChartDataBound" }, viewQueries: [{ propertyName: "chartRef", first: true, predicate: ["chartRef"], descendants: true }, { propertyName: "chartHostRef", first: true, predicate: ["chartHostRef"], descendants: true }], ngImport: i0, template: "@if (chartOptions) {\n <div class=\"chart-list-root\">\n @if (!hideToolbar) {\n <div class=\"chart-list-toolbar\">\n @if (isAdmin) {\n <button class=\"p-element p-button p-component\" (click)=\"openConfigPopup()\">{{'chart.settings' | translate}}</button>\n }\n <button class=\"p-element p-button p-component\" (click)=\"exportChart()\">{{'chart.export' | translate}}</button>\n @if (isAdmin) {\n <button class=\"p-element p-button p-component\" (click)=\"saveChartMetadataPropsBag()\">{{ 'metadata.save_table' | translate }}</button>\n }\n </div>\n }\n\n <div class=\"chart-list-chart-host\" #chartHostRef [style.height.px]=\"chartHostHeightPx\" [style.max-height.px]=\"chartHostHeightPx\">\n <p-chart #chartRef [type]=\"chartOptions.type\" [data]=\"data\" [options]=\"chartOptions\" width=\"100%\"\n height=\"100%\" [responsive]=\"true\" (onDataSelect)=\"drillDown($event)\" />\n </div>\n </div>\n\n <wuic-archetype-configurator\n [visible]=\"showConfigPopup\"\n (visibleChange)=\"showConfigPopup = $event\"\n [archetype]=\"'chart'\"\n [metaInfo]=\"metaInfo\"\n [value]=\"getChartConfigValue()\"\n (applyConfig)=\"onArchetypeConfigApply($event)\">\n </wuic-archetype-configurator>\n}\n", styles: [":host{display:block;height:100%;min-height:0;overflow:hidden}.chart-list-root{display:flex;flex-direction:column;height:100%;width:100%;min-height:0;overflow:hidden}.chart-list-cutoff{flex:0 0 auto;padding:.5rem 0}.chart-list-toolbar{flex:0 0 auto;padding:.5rem 0;display:flex;gap:.5rem;flex-wrap:wrap}.chart-list-config{flex:0 0 auto;padding:.5rem 0}.chart-list-modal-backdrop{position:fixed;inset:0;background:#0006;z-index:1200;display:flex;align-items:center;justify-content:center;padding:1rem}.chart-list-modal{width:min(900px,100%);max-height:85vh;overflow:auto;background:#fff;color:#111827;border-radius:8px;box-shadow:0 10px 32px #00000040;padding:1rem}.chart-list-modal-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.chart-list-modal-header h4{margin:0}.chart-list-config-row{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.5rem}.chart-list-inline{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.chart-list-inline label{display:inline-flex;align-items:center;gap:.35rem}.chart-list-type-select,.chart-list-inline select,.chart-list-input,.chart-list-input-sm{background:#fff;color:#111827;border:1px solid #d1d5db;border-radius:6px;padding:.35rem .45rem}.chart-list-config-label{font-weight:600;font-size:.9rem}.chart-list-type-select,.chart-list-input,.chart-list-input-sm{width:100%;box-sizing:border-box}.chart-list-input-sm{width:8rem}:host-context(.theme-dark) .chart-list-modal-backdrop{background:#000000a6}:host-context(.theme-dark) .chart-list-modal{background:#111827;color:#e5e7eb;box-shadow:0 10px 32px #0000008c}:host-context(.theme-dark) .chart-list-config-label,:host-context(.theme-dark) .chart-list-inline label{color:#e5e7eb}:host-context(.theme-dark) .chart-list-type-select,:host-context(.theme-dark) .chart-list-inline select,:host-context(.theme-dark) .chart-list-input,:host-context(.theme-dark) .chart-list-input-sm{background:#0f172a;color:#e5e7eb;border-color:#374151}:host-context(.theme-dark) .chart-list-type-select:focus,:host-context(.theme-dark) .chart-list-inline select:focus,:host-context(.theme-dark) .chart-list-input:focus,:host-context(.theme-dark) .chart-list-input-sm:focus{outline:1px solid #60a5fa;outline-offset:0}.chart-list-cutoff-label{display:block;font-weight:600}.chart-list-cutoff-slider{width:100%}.chart-list-chart-host{flex:1 1 auto;min-height:0;overflow:hidden}.chart-list-chart-host p-chart{display:block;height:100%}\n"], dependencies: [{ kind: "ngmodule", type: ChartModule }, { kind: "component", type: i4.UIChart, selector: "p-chart", inputs: ["type", "plugins", "width", "height", "responsive", "ariaLabel", "ariaLabelledBy", "data", "options"], outputs: ["onDataSelect"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "component", type: ArchetypeConfiguratorComponent, selector: "wuic-archetype-configurator", inputs: ["visible", "archetype", "metaInfo", "value"], outputs: ["visibleChange", "applyConfig"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] });
|
|
1349
1361
|
}
|
|
1350
1362
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ChartListComponent, decorators: [{
|
|
1351
1363
|
type: Component,
|
|
@@ -1377,4 +1389,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
1377
1389
|
}] } });
|
|
1378
1390
|
|
|
1379
1391
|
export { ChartListComponent };
|
|
1380
|
-
//# sourceMappingURL=wuic-framework-lib-chart-list.component-
|
|
1392
|
+
//# sourceMappingURL=wuic-framework-lib-chart-list.component-Bl424n7x.mjs.map
|