@esfaenza/es-charts 13.1.3 → 13.1.4

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.
@@ -24,6 +24,7 @@ export * from './lib/models/data/classes/base/KeyValue';
24
24
  export * from './lib/models/data/classes/base/KeyValueColor';
25
25
  export * from './lib/models/data/classes/base/LineSerie';
26
26
  export * from './lib/components/chart-pager/chart-pager.component';
27
+ export * from './lib/components/base/base-chart.component';
27
28
  export * from './lib/components/specializations/es-chart.component';
28
29
  export * from './lib/components/specializations/es-area-chart.component';
29
30
  export * from './lib/components/specializations/es-line-chart.component';
@@ -34,4 +35,4 @@ export * from './lib/components/specializations/es-vertical-stacked-chart.compon
34
35
  export * from './lib/models/core/classes/ChartThemes';
35
36
  export * from './lib/models/data/classes/PagedChartData';
36
37
  export * from './lib/es-charts.module';
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2VzLWNoYXJ0cy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLHlEQUF5RCxDQUFDO0FBQ3hFLGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLHNFQUFzRSxDQUFDO0FBQ3JGLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGVzLWNoYXJ0c1xyXG4gKi9cclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FkYXB0ZXJzL2NsYXNzZXMvQmFzZUFkYXB0ZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hZGFwdGVycy9jbGFzc2VzL0lCYXNlQWRhcHRlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9kYXRhL2NsYXNzZXMvTGluZUNoYXJ0RGF0YSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9kYXRhL2NsYXNzZXMvUGllQ2hhcnREYXRhJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2RhdGEvY2xhc3Nlcy9BcmVhQ2hhcnREYXRhJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2RhdGEvY2xhc3Nlcy9WZXJ0aWNhbDJEQ2hhcnREYXRhJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2RhdGEvY2xhc3Nlcy9WZXJ0aWNhbENoYXJ0RGF0YSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9kYXRhL2NsYXNzZXMvVmVydGljYWxTdGFja2VkQ2hhcnREYXRhJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NldHRpbmdzL2NsYXNzZXMvQXJlYUNoYXJ0U2V0dGluZ3MnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvc2V0dGluZ3MvY2xhc3Nlcy9MaW5lQ2hhcnRTZXR0aW5ncyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9zZXR0aW5ncy9jbGFzc2VzL1BpZUNoYXJ0U2V0dGluZ3MnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvc2V0dGluZ3MvY2xhc3Nlcy9WZXJ0aWNhbDJEQ2hhcnRTZXR0aW5ncyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9zZXR0aW5ncy9jbGFzc2VzL1ZlcnRpY2FsQ2hhcnRTZXR0aW5ncyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9zZXR0aW5ncy9jbGFzc2VzL1ZlcnRpY2FsU3RhY2tlZENoYXJ0U2V0dGluZ3MnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvc2V0dGluZ3MvY2xhc3Nlcy9iYXNlL0Jhc2VTZXR0aW5ncyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9zZXR0aW5ncy9jbGFzc2VzL2Jhc2UvQmFzZUludGVydmFsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NldHRpbmdzL2NsYXNzZXMvYmFzZS9MZWdlbmRQYWQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZGF0YS9jbGFzc2VzL2Jhc2UvTGltaXQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZGF0YS9jbGFzc2VzL2Jhc2UvRGF0ZVZhbHVlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2RhdGEvY2xhc3Nlcy9iYXNlL0tleVZhbHVlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2RhdGEvY2xhc3Nlcy9iYXNlL0tleVZhbHVlQ29sb3InO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZGF0YS9jbGFzc2VzL2Jhc2UvTGluZVNlcmllJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jaGFydC1wYWdlci9jaGFydC1wYWdlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NwZWNpYWxpemF0aW9ucy9lcy1jaGFydC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NwZWNpYWxpemF0aW9ucy9lcy1hcmVhLWNoYXJ0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvc3BlY2lhbGl6YXRpb25zL2VzLWxpbmUtY2hhcnQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9zcGVjaWFsaXphdGlvbnMvZXMtcGllLWNoYXJ0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvc3BlY2lhbGl6YXRpb25zL2VzLXZlcnRpY2FsLTJkLWNoYXJ0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvc3BlY2lhbGl6YXRpb25zL2VzLXZlcnRpY2FsLWNoYXJ0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvc3BlY2lhbGl6YXRpb25zL2VzLXZlcnRpY2FsLXN0YWNrZWQtY2hhcnQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2NvcmUvY2xhc3Nlcy9DaGFydFRoZW1lcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9kYXRhL2NsYXNzZXMvUGFnZWRDaGFydERhdGEnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9lcy1jaGFydHMubW9kdWxlJzsiXX0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2VzLWNoYXJ0cy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYyxpRUFBaUUsQ0FBQztBQUNoRixjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsc0VBQXNFLENBQUM7QUFDckYsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgZXMtY2hhcnRzXHJcbiAqL1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYWRhcHRlcnMvY2xhc3Nlcy9CYXNlQWRhcHRlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FkYXB0ZXJzL2NsYXNzZXMvSUJhc2VBZGFwdGVyJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2RhdGEvY2xhc3Nlcy9MaW5lQ2hhcnREYXRhJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2RhdGEvY2xhc3Nlcy9QaWVDaGFydERhdGEnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZGF0YS9jbGFzc2VzL0FyZWFDaGFydERhdGEnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZGF0YS9jbGFzc2VzL1ZlcnRpY2FsMkRDaGFydERhdGEnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZGF0YS9jbGFzc2VzL1ZlcnRpY2FsQ2hhcnREYXRhJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2RhdGEvY2xhc3Nlcy9WZXJ0aWNhbFN0YWNrZWRDaGFydERhdGEnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvc2V0dGluZ3MvY2xhc3Nlcy9BcmVhQ2hhcnRTZXR0aW5ncyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9zZXR0aW5ncy9jbGFzc2VzL0xpbmVDaGFydFNldHRpbmdzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NldHRpbmdzL2NsYXNzZXMvUGllQ2hhcnRTZXR0aW5ncyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9zZXR0aW5ncy9jbGFzc2VzL1ZlcnRpY2FsMkRDaGFydFNldHRpbmdzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NldHRpbmdzL2NsYXNzZXMvVmVydGljYWxDaGFydFNldHRpbmdzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NldHRpbmdzL2NsYXNzZXMvVmVydGljYWxTdGFja2VkQ2hhcnRTZXR0aW5ncyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9zZXR0aW5ncy9jbGFzc2VzL2Jhc2UvQmFzZVNldHRpbmdzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NldHRpbmdzL2NsYXNzZXMvYmFzZS9CYXNlSW50ZXJ2YWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvc2V0dGluZ3MvY2xhc3Nlcy9iYXNlL0xlZ2VuZFBhZCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9kYXRhL2NsYXNzZXMvYmFzZS9MaW1pdCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9kYXRhL2NsYXNzZXMvYmFzZS9EYXRlVmFsdWUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZGF0YS9jbGFzc2VzL2Jhc2UvS2V5VmFsdWUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZGF0YS9jbGFzc2VzL2Jhc2UvS2V5VmFsdWVDb2xvcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9kYXRhL2NsYXNzZXMvYmFzZS9MaW5lU2VyaWUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NoYXJ0LXBhZ2VyL2NoYXJ0LXBhZ2VyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmFzZS9iYXNlLWNoYXJ0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvc3BlY2lhbGl6YXRpb25zL2VzLWNoYXJ0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvc3BlY2lhbGl6YXRpb25zL2VzLWFyZWEtY2hhcnQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9zcGVjaWFsaXphdGlvbnMvZXMtbGluZS1jaGFydC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NwZWNpYWxpemF0aW9ucy9lcy1waWUtY2hhcnQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9zcGVjaWFsaXphdGlvbnMvZXMtdmVydGljYWwtMmQtY2hhcnQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9zcGVjaWFsaXphdGlvbnMvZXMtdmVydGljYWwtY2hhcnQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9zcGVjaWFsaXphdGlvbnMvZXMtdmVydGljYWwtc3RhY2tlZC1jaGFydC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvY29yZS9jbGFzc2VzL0NoYXJ0VGhlbWVzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2RhdGEvY2xhc3Nlcy9QYWdlZENoYXJ0RGF0YSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VzLWNoYXJ0cy5tb2R1bGUnOyJdfQ==
@@ -799,6 +799,11 @@ class BaseChartComponent {
799
799
  * Evento lanciato al termine del caricamento di una nuova pagina del grafico
800
800
  */
801
801
  this.onLoadEnd = new EventEmitter();
802
+ /**
803
+ * Evento lanciato al termine della creazione del grafico referenziando l'istanza nativa del grafico creato in modo da poter effettuare modifiche
804
+ * post inizializzazione lato applicativo
805
+ */
806
+ this.chartLoaded = new EventEmitter();
802
807
  /**
803
808
  * Serve a decidere se sarà presente l'interfaccia di paginazione
804
809
  */
@@ -887,7 +892,7 @@ class BaseChartComponent {
887
892
  this.Chart = this.ChartService.ChartInstance;
888
893
  if (!this.Chart)
889
894
  this.log("Chart " + this.name + ": Could not create graph");
890
- return this.Charter.applyLocale(this.Chart, this.Locale).then(() => this.initDone = true);
895
+ return this.Charter.applyLocale(this.Chart, this.Locale).then(() => { this.initDone = true; this.chartLoaded.emit(this); });
891
896
  })
892
897
  ]);
893
898
  }
@@ -986,6 +991,13 @@ class BaseChartComponent {
986
991
  });
987
992
  this.Dispatcher.register(this.name, () => { return this.loadChart(); });
988
993
  }
994
+ /**
995
+ * Permette di aggiungere un blocco di dati in maniera "live" ad un grafico
996
+ */
997
+ addData(chartData) {
998
+ this.ChartService.refreshData(chartData);
999
+ }
1000
+ ;
989
1001
  /**
990
1002
  * Funzione che si occupa di caricare i temi necessari per il grafico in oggetto. Prima applica il tema, poi, se serve, applica le animazioni
991
1003
  */
@@ -1015,7 +1027,7 @@ class BaseChartComponent {
1015
1027
  }
1016
1028
  }
1017
1029
  BaseChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaseChartComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
1018
- BaseChartComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BaseChartComponent, inputs: { XTitle: "XTitle", YTitle: "YTitle", Settings: "Settings", Legend: "Legend", LegendPosition: "LegendPosition", Timeline: "Timeline", name: "name", Animations: "Animations", Theme: "Theme", Locale: "Locale", HideSeriesOnLabelClick: "HideSeriesOnLabelClick", MinGridDistance: "MinGridDistance", AdaptLabelSizeAndOrientation: "AdaptLabelSizeAndOrientation", LegendPadding: "LegendPadding", DataDtos: "DataDtos", DataDtoStartIndex: "DataDtoStartIndex", DataRetrieve: "DataRetrieve", BrowseDelayMs: "BrowseDelayMs" }, outputs: { onSelectionChanged: "onSelectionChanged", onSeriesClicked: "onSeriesClicked", onLoadStart: "onLoadStart", onLoadEnd: "onLoadEnd" }, queries: [{ propertyName: "header_tr", first: true, predicate: ["header"], descendants: true }, { propertyName: "loading_template", first: true, predicate: ["loading"], descendants: true }], usesOnChanges: true, ngImport: i0 });
1030
+ BaseChartComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BaseChartComponent, inputs: { XTitle: "XTitle", YTitle: "YTitle", Settings: "Settings", Legend: "Legend", LegendPosition: "LegendPosition", Timeline: "Timeline", name: "name", Animations: "Animations", Theme: "Theme", Locale: "Locale", HideSeriesOnLabelClick: "HideSeriesOnLabelClick", MinGridDistance: "MinGridDistance", AdaptLabelSizeAndOrientation: "AdaptLabelSizeAndOrientation", LegendPadding: "LegendPadding", DataDtos: "DataDtos", DataDtoStartIndex: "DataDtoStartIndex", DataRetrieve: "DataRetrieve", BrowseDelayMs: "BrowseDelayMs" }, outputs: { onSelectionChanged: "onSelectionChanged", onSeriesClicked: "onSeriesClicked", onLoadStart: "onLoadStart", onLoadEnd: "onLoadEnd", chartLoaded: "chartLoaded" }, queries: [{ propertyName: "header_tr", first: true, predicate: ["header"], descendants: true }, { propertyName: "loading_template", first: true, predicate: ["loading"], descendants: true }], usesOnChanges: true, ngImport: i0 });
1019
1031
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BaseChartComponent, decorators: [{
1020
1032
  type: Directive
1021
1033
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: Object }, { type: i0.NgZone }, { type: ChartLoader }, { type: ChartDispatcher }, { type: undefined }, { type: undefined }, { type: undefined }, { type: undefined }]; }, propDecorators: { XTitle: [{
@@ -1068,6 +1080,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
1068
1080
  type: Output
1069
1081
  }], onLoadEnd: [{
1070
1082
  type: Output
1083
+ }], chartLoaded: [{
1084
+ type: Output
1071
1085
  }] } });
1072
1086
 
1073
1087
  /**
@@ -1082,6 +1096,8 @@ class LineChartService {
1082
1096
  this.DataGroupBucketSize = 1500;
1083
1097
  /** @ignore */
1084
1098
  this.OpacityOnSelected = 0.3;
1099
+ /** @ignore */
1100
+ this.singleDataSet = false;
1085
1101
  //******************** Funzione di throttling per non spammare richieste in caso di animazioni attivate
1086
1102
  //TODO: spostarla in un metodo di utilità (esfaenza/extensions)
1087
1103
  /** @ignore */
@@ -1094,7 +1110,7 @@ class LineChartService {
1094
1110
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
1095
1111
  let dataConverted = this.Adapter ? this.Adapter.adaptDataForLineChart(data) : data;
1096
1112
  let threshold = (_a = settings.DataGroupingThreshold) !== null && _a !== void 0 ? _a : 3000;
1097
- let singleDataSet = (_b = settings.MergeDatasets) !== null && _b !== void 0 ? _b : false;
1113
+ this.singleDataSet = (_b = settings.MergeDatasets) !== null && _b !== void 0 ? _b : false;
1098
1114
  let showTicks = settings.ShowTicks == null ? true : settings === null || settings === void 0 ? void 0 : settings.ShowTicks;
1099
1115
  let dataShouldBeGrouped = Math.max(...dataConverted.series.map(t => t.values.length)) > threshold;
1100
1116
  let showTimeline = settings.Timeline || dataShouldBeGrouped;
@@ -1173,31 +1189,9 @@ class LineChartService {
1173
1189
  let seriesColors = [];
1174
1190
  let defaultIndex = 0;
1175
1191
  //-- Generazione di un unico dataset invece che N, per poter gestire un unico tooltip
1176
- if (singleDataSet) {
1177
- let dto = {};
1178
- dataConverted.series.forEach((vs, index) => {
1179
- for (let i = 0; i < vs.values.length; i++) {
1180
- var dataitem = vs.values[i];
1181
- var indexer = new Date(dataitem.d).valueOf();
1182
- if (!dto[indexer])
1183
- dto[indexer] = {};
1184
- dto[indexer]['v' + index] = dataitem.v;
1185
- }
1186
- });
1187
- var dates = Object.keys(dto);
1188
- let singleDS = [];
1189
- for (let i = 0; i < dates.length; i++) {
1190
- let values = dto[dates[i]];
1191
- let item = { d: new Date(parseInt(dates[i])) };
1192
- var vals = Object.keys(values);
1193
- for (let ii = 0; ii < vals.length; ii++) {
1194
- let series = vals[ii];
1195
- let singleVal = values[series];
1196
- item[series] = singleVal;
1197
- }
1198
- singleDS.push(item);
1199
- }
1200
- this.ChartInstance.data = singleDS;
1192
+ if (this.singleDataSet) {
1193
+ this.ChartInstance.data = this.generateSingleDataset(dataConverted);
1194
+ ;
1201
1195
  dateAxis.cursorTooltipEnabled = false;
1202
1196
  }
1203
1197
  //-- Fine generazione
@@ -1221,14 +1215,14 @@ class LineChartService {
1221
1215
  s.values.sort((d1, d2) => d1.d.getTime() - d2.d.getTime());
1222
1216
  let fill = s.fill != null && s.fill != undefined ? s.fill : ((_a = settings === null || settings === void 0 ? void 0 : settings.Fill) !== null && _a !== void 0 ? _a : false);
1223
1217
  let series = (settings === null || settings === void 0 ? void 0 : settings.Step) ? new am4charts.StepLineSeries() : new am4charts.LineSeries();
1224
- series.dataFields.valueY = "v" + (singleDataSet ? index : "");
1218
+ series.dataFields.valueY = "v" + (this.singleDataSet ? index : "");
1225
1219
  series.dataFields.dateX = "d";
1226
1220
  series.dataFields.measureUnit = s.uom;
1227
1221
  series.name = s.name;
1228
1222
  series.strokeWidth = (_b = settings === null || settings === void 0 ? void 0 : settings.StrokeSize) !== null && _b !== void 0 ? _b : 1;
1229
1223
  series.connect = !gapsAllowed;
1230
1224
  series.minBulletDistance = 10;
1231
- series.tooltipText = singleDataSet ? "" : "{name}: [bold]{valueY}[/]";
1225
+ series.tooltipText = this.singleDataSet ? "" : "{name}: [bold]{valueY}[/]";
1232
1226
  series.tooltip.pointerOrientation = "vertical";
1233
1227
  series.tooltip.background.fillOpacity = 0.5;
1234
1228
  series.tooltip.label.padding(12, 12, 12, 12);
@@ -1236,7 +1230,7 @@ class LineChartService {
1236
1230
  series.stacked = fill;
1237
1231
  //Dataset singolo, i dati sono registrati a livello di chart, creo il tooltip che permette di vederli tutti insieme
1238
1232
  //altrimenti assegno i dati della serie direttamente alla serie
1239
- if (singleDataSet) {
1233
+ if (this.singleDataSet) {
1240
1234
  series.tooltip.getFillFromObject = false;
1241
1235
  series.tooltip.background.fill = am4core.color("#eee");
1242
1236
  series.tooltip.label.fill = am4core.color("#00");
@@ -1326,7 +1320,7 @@ class LineChartService {
1326
1320
  //******************************************************************************************************************************
1327
1321
  this.ChartInstance.cursor.xAxis = dateAxis;
1328
1322
  this.ChartInstance.cursor.yAxis = yAxis;
1329
- if (singleDataSet)
1323
+ if (this.singleDataSet)
1330
1324
  this.ChartInstance.cursor.maxTooltipDistance = -1;
1331
1325
  //TODO: Cercare di capire perché è figlio di puttana......
1332
1326
  dateAxis.events.on("startchanged", t => this.emitSelectionChanged(t, settings));
@@ -1335,7 +1329,59 @@ class LineChartService {
1335
1329
  }
1336
1330
  /** @ignore */
1337
1331
  refreshData(data) {
1338
- //TODO:IMPL
1332
+ let dataConverted = this.Adapter ? this.Adapter.adaptDataForLineChart(data) : data;
1333
+ if (this.singleDataSet) {
1334
+ var data = this.generateSingleDataset(dataConverted);
1335
+ this.ChartInstance.addData(data);
1336
+ return;
1337
+ }
1338
+ this.ChartInstance.series.each(s => {
1339
+ var relativeSerie = dataConverted.series.find(t => t.name == s.name);
1340
+ // Una serie del grafico è stata ggiornata, ordino i datapoint e li aggiungo
1341
+ var correctOrder = true;
1342
+ var prevDate = null;
1343
+ for (let v = 0; v < relativeSerie.values.length; v++) {
1344
+ if (!prevDate)
1345
+ prevDate = relativeSerie.values[v].d;
1346
+ else if (relativeSerie.values[v].d < prevDate) {
1347
+ correctOrder = false;
1348
+ break;
1349
+ }
1350
+ }
1351
+ if (!correctOrder)
1352
+ relativeSerie.values.sort((d1, d2) => d1.d.getTime() - d2.d.getTime());
1353
+ for (let v = 0; v < relativeSerie.values.length; v++) {
1354
+ let obj = relativeSerie.values[v];
1355
+ s.addData({ date: obj.d, value: obj.v });
1356
+ }
1357
+ });
1358
+ }
1359
+ /** Partendo da dati divisi per seriue genera un dataset unito con la data come chiave e i vari valori dopo */
1360
+ generateSingleDataset(data) {
1361
+ let dto = {};
1362
+ data.series.forEach((vs, index) => {
1363
+ for (let i = 0; i < vs.values.length; i++) {
1364
+ var dataitem = vs.values[i];
1365
+ var indexer = new Date(dataitem.d).valueOf();
1366
+ if (!dto[indexer])
1367
+ dto[indexer] = {};
1368
+ dto[indexer]['v' + index] = dataitem.v;
1369
+ }
1370
+ });
1371
+ var dates = Object.keys(dto);
1372
+ var ret = [];
1373
+ for (let i = 0; i < dates.length; i++) {
1374
+ let values = dto[dates[i]];
1375
+ let item = { d: new Date(parseInt(dates[i])) };
1376
+ var vals = Object.keys(values);
1377
+ for (let ii = 0; ii < vals.length; ii++) {
1378
+ let series = vals[ii];
1379
+ let singleVal = values[series];
1380
+ item[series] = singleVal;
1381
+ }
1382
+ ret.push(item);
1383
+ }
1384
+ return ret;
1339
1385
  }
1340
1386
  /** @ignore */
1341
1387
  emitSelectionChanged(ev, settings) {
@@ -2737,5 +2783,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
2737
2783
  * Generated bundle index. Do not edit.
2738
2784
  */
2739
2785
 
2740
- export { AreaChartData, AreaChartSettings, BaseAdapter, BaseInterval, BaseSettings, ChartThemes, DateValue, EsAreaChartComponent, EsChartComponent, EsChartsModule, EsLineChartComponent, EsPieChartComponent, EsVertical2DChartComponent, EsVerticalChartComponent, EsVerticalStackedChartComponent, KeyValue, KeyValueColor, LegendPad, Limit, LineChartData, LineChartSettings, LineSerie, PageChartSelector, PagedChartData, PieChartData, PieChartSettings, Vertical2DChartData, Vertical2DChartSettings, VerticalChartData, VerticalChartSettings, VerticalStackedChartData, VerticalStackedChartSettings };
2786
+ export { AreaChartData, AreaChartSettings, BaseAdapter, BaseChartComponent, BaseInterval, BaseSettings, ChartThemes, DateValue, EsAreaChartComponent, EsChartComponent, EsChartsModule, EsLineChartComponent, EsPieChartComponent, EsVertical2DChartComponent, EsVerticalChartComponent, EsVerticalStackedChartComponent, KeyValue, KeyValueColor, LegendPad, Limit, LineChartData, LineChartSettings, LineSerie, PageChartSelector, PagedChartData, PieChartData, PieChartSettings, Vertical2DChartData, Vertical2DChartSettings, VerticalChartData, VerticalChartSettings, VerticalStackedChartData, VerticalStackedChartSettings };
2741
2787
  //# sourceMappingURL=esfaenza-es-charts.mjs.map