@smartbit4all/ng-client 4.2.16 → 4.2.18
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/esm2022/lib/smart-component-layout/api/model/componentWidgetType.mjs +2 -1
- package/esm2022/lib/smart-component-layout/api/model/smartComponentLayoutDefinition.mjs +1 -1
- package/esm2022/lib/smart-component-layout/smart-component-layout.component.mjs +30 -3
- package/esm2022/lib/smart-component-layout/smart-component-layout.module.mjs +7 -3
- package/esm2022/lib/smart-form/widgets/smartformwidget/smartformwidget.component.mjs +3 -3
- package/esm2022/lib/smart-map/smart-map.component.mjs +1 -1
- package/esm2022/src/lib/smart-chart/smart-chart/smart-chart.component.mjs +17 -5
- package/fesm2022/smartbit4all-ng-client-src-lib-smart-chart.mjs +16 -4
- package/fesm2022/smartbit4all-ng-client-src-lib-smart-chart.mjs.map +1 -1
- package/fesm2022/smartbit4all-ng-client.mjs +2710 -2680
- package/fesm2022/smartbit4all-ng-client.mjs.map +1 -1
- package/lib/smart-component-layout/api/model/componentWidgetType.d.ts +2 -1
- package/lib/smart-component-layout/api/model/smartComponentLayoutDefinition.d.ts +4 -0
- package/lib/smart-component-layout/smart-component-layout.component.d.ts +5 -1
- package/lib/smart-component-layout/smart-component-layout.module.d.ts +2 -1
- package/lib/smart-map/smart-map.component.d.ts +1 -2
- package/package.json +1 -1
- package/smartbit4all-ng-client-4.2.18.tgz +0 -0
- package/src/lib/smart-chart/smart-chart/smart-chart.component.d.ts +5 -0
- package/smartbit4all-ng-client-4.2.16.tgz +0 -0
|
@@ -190,4 +190,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
190
190
|
}], parent: [{
|
|
191
191
|
type: Input
|
|
192
192
|
}] } });
|
|
193
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LW5nLWNsaWVudC9zcmMvbGliL3NtYXJ0LW1hcC9zbWFydC1tYXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc21hcnQtbWFwL3NtYXJ0LW1hcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUNULFFBQVEsRUFDUixNQUFNLEVBQ04sY0FBYyxFQUNkLEtBQUssRUFHTCxNQUFNLEdBR1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyQyxPQUFPLEVBR0wsY0FBYyxFQUdkLG1CQUFtQixHQUtwQixNQUFNLE9BQU8sQ0FBQzs7Ozs7QUFJZixNQUFNLENBQU4sSUFBWSxTQUdYO0FBSEQsV0FBWSxTQUFTO0lBQ25CLDhCQUFpQixDQUFBO0lBQ2pCLGdDQUFtQixDQUFBO0FBQ3JCLENBQUMsRUFIVyxTQUFTLEtBQVQsU0FBUyxRQUdwQjtBQUVELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxJQUFJLGNBQWMsQ0FBWSxZQUFZLENBQUMsQ0FBQztBQUV0RSxNQUFNLE1BQU0sR0FBdUMsQ0FBQyxDQUFvQixFQUFFLENBQW9CLEVBQUUsRUFBRTtJQUNoRyxNQUFNLFNBQVMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBYyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBYyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQzdELE9B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clxuICBBZnRlclZpZXdJbml0LFxyXG4gIENvbXBvbmVudCxcclxuICBjb21wdXRlZCxcclxuICBJbmplY3QsXHJcbiAgSW5qZWN0aW9uVG9rZW4sXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG4gIFNpZ25hbCxcclxuICBzaWduYWwsXHJcbiAgVmFsdWVFcXVhbGl0eUZuLFxyXG4gIFdyaXRhYmxlU2lnbmFsLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTbWFydENvbXBvbmVudCB9IGZyb20gJy4uL3NtYXJ0LWNsaWVudC9zbWFydC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBsYXN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7XHJcbiAgR2VvTWFwQ2hhbmdlLFxyXG4gIEdlb01hcEl0ZW0sXHJcbiAgR2VvTWFwSXRlbUtpbmQsXHJcbiAgR2VvTWFwTGF5ZXIsXHJcbiAgR2VvTWFwTW9kZWwsXHJcbiAgR2VvTWFwT3BlcmF0aW9uTW9kZSxcclxuICBHZW9NYXBTZXJ2aWNlLFxyXG4gIEdlb01hcFZpZXdwb3J0LFxyXG4gIEdlb01hcFZpZXdTdGF0ZSxcclxuICBHUFNQb3NpdGlvbixcclxufSBmcm9tICcuL2FwaSc7XHJcbmltcG9ydCB7IFZpZXdDb250ZXh0Q2hhbmdlIH0gZnJvbSAnLi4vdmlldy1jb250ZXh0L2FwaSc7XHJcbmltcG9ydCB7IFNtYXJ0Vmlld0NvbnRleHRTZXJ2aWNlIH0gZnJvbSAnLi4vdmlldy1jb250ZXh0L3NtYXJ0LXZpZXctY29udGV4dC5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCBlbnVtIE1hcEVuZ2luZSB7XHJcbiAgR09PR0xFID0gJ0dPT0dMRScsXHJcbiAgTEVBRkxFVCA9ICdMRUFGTEVUJyxcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IE1BUF9FTkdJTkUgPSBuZXcgSW5qZWN0aW9uVG9rZW48TWFwRW5naW5lPignTUFQX0VOR0lORScpO1xyXG5cclxuY29uc3QgaXRlbUVxOiBWYWx1ZUVxdWFsaXR5Rm48QXJyYXk8R2VvTWFwSXRlbT4+ID0gKGE6IEFycmF5PEdlb01hcEl0ZW0+LCBiOiBBcnJheTxHZW9NYXBJdGVtPikgPT4ge1xyXG4gIGNvbnN0IHBvc2l0aW9ucyA9IG5ldyBTZXQoYS5tYXAoKGl0OiBHZW9NYXBJdGVtKSA9PiBpdC5wb3NpdGlvbikpO1xyXG4gIGIuZm9yRWFjaCgoaXQ6IEdlb01hcEl0ZW0pID0+IHBvc2l0aW9ucy5kZWxldGUoaXQucG9zaXRpb24pKTtcclxuICByZXR1cm4gYS5sZW5ndGggPT09IGIubGVuZ3RoICYmIHBvc2l0aW9ucy5zaXplID09PSAwO1xyXG59O1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzbWFydC1tYXAnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zbWFydC1tYXAuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9zbWFydC1tYXAuY29tcG9uZW50LmNzcycsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTbWFydE1hcENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgTWFwRW5naW5lID0gTWFwRW5naW5lO1xyXG5cclxuICBASW5wdXQoKSB1dWlkITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGlkZW50aWZpZXIhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgcGFyZW50PzogU21hcnRDb21wb25lbnQ8YW55PjtcclxuXHJcbiAgcmVhZG9ubHkgbW9kZWw6IFdyaXRhYmxlU2lnbmFsPEdlb01hcE1vZGVsIHwgdW5kZWZpbmVkPiA9IHNpZ25hbCh1bmRlZmluZWQpO1xyXG4gIHJlYWRvbmx5IGl0ZW1zOiBTaWduYWw8QXJyYXk8R2VvTWFwSXRlbT4+ID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgY29uc3QgbW9kZWwgPSB0aGlzLm1vZGVsKCk7XHJcbiAgICByZXR1cm4gbW9kZWw/LmxheWVycy5mbGF0TWFwKChsKSA9PiBsLml0ZW1zID8/IFtdKSA/PyBbXTtcclxuICB9KTtcclxuXHJcbiAgcmVhZG9ubHkgc2VsZWN0aW9uOiBTaWduYWw8U2V0PHN0cmluZz4+ID0gY29tcHV0ZWQoXHJcbiAgICAoKSA9PlxyXG4gICAgICBuZXcgU2V0KFxyXG4gICAgICAgIHRoaXMuaXRlbXMoKVxyXG4gICAgICAgICAgLmZpbHRlcigoaXQpID0+ICEhaXQuc2VsZWN0ZWQpXHJcbiAgICAgICAgICAubWFwKChpdCkgPT4gaXQuaWQhKVxyXG4gICAgICAgICAgLnZhbHVlcygpXHJcbiAgICAgIClcclxuICApO1xyXG5cclxuICB2aWV3Q29udGV4dFNlcnZpY2U/OiBTbWFydFZpZXdDb250ZXh0U2VydmljZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBASW5qZWN0KE1BUF9FTkdJTkUpXHJcbiAgICBwdWJsaWMgbWFwRW5naW5lOiBNYXBFbmdpbmUsXHJcbiAgICBwcml2YXRlIGFwaTogR2VvTWFwU2VydmljZVxyXG4gICkge31cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAvLyB0aGlzLmxvYWQoKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMubG9hZCgpO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgbG9hZCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGNvbnN0IG1vZGVsOiBHZW9NYXBNb2RlbCA9IGF3YWl0IGxhc3RWYWx1ZUZyb20odGhpcy5hcGkubG9hZCh0aGlzLnV1aWQsIHRoaXMuaWRlbnRpZmllcikpO1xyXG4gICAgaWYgKCFtb2RlbC52aWV3cG9ydCkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0dlb01hcE1vZGVsIGNvbnRhaW5zIG5vIHZpZXdwb3J0IScpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5tb2RlbC51cGRhdGUoKCkgPT4gbW9kZWwpO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgbW92ZSh2aWV3cG9ydDogR2VvTWFwVmlld3BvcnQpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMubW9kZWwudXBkYXRlKChpdCkgPT4ge1xyXG4gICAgICBjb25zb2xlLmxvZygnbW9kZWwgdXBkYXRlIGlzIHJ1bm5pbmchJyk7XHJcbiAgICAgIGlmIChpdCkge1xyXG4gICAgICAgIGl0LnZpZXdwb3J0ID0gdmlld3BvcnQ7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIGl0O1xyXG4gICAgfSk7XHJcbiAgICBjb25zdCBjaGFuZ2U6IEdlb01hcENoYW5nZSA9IGF3YWl0IGxhc3RWYWx1ZUZyb20oXHJcbiAgICAgIHRoaXMuYXBpLm1vdmUodGhpcy51dWlkLCB0aGlzLmlkZW50aWZpZXIsIHZpZXdwb3J0KVxyXG4gICAgKTtcclxuICAgIHRoaXMuaGFuZGxlQ2hhbmdlKGNoYW5nZSk7XHJcbiAgfVxyXG5cclxuICBhc3luYyB1cGRhdGUobWFwU3RhdGU6IEdlb01hcFZpZXdTdGF0ZSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5tb2RlbC51cGRhdGUoKGl0KSA9PiB7XHJcbiAgICAgIGlmIChpdCkge1xyXG4gICAgICAgIGl0LnZpZXdTdGF0ZSA9IG1hcFN0YXRlO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBpdDtcclxuICAgIH0pO1xyXG4gICAgY29uc3QgY2hhbmdlOiBHZW9NYXBDaGFuZ2UgPSBhd2FpdCBsYXN0VmFsdWVGcm9tKFxyXG4gICAgICB0aGlzLmFwaS51cGRhdGUodGhpcy51dWlkLCB0aGlzLmlkZW50aWZpZXIsIG1hcFN0YXRlKVxyXG4gICAgKTtcclxuICAgIHRoaXMuaGFuZGxlQ2hhbmdlKGNoYW5nZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhbmRsZUNoYW5nZShjaGFuZ2U6IEdlb01hcENoYW5nZSk6IHZvaWQge1xyXG4gICAgaWYgKCFjaGFuZ2UuaXRlbXMpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMubW9kZWwudXBkYXRlKChpdCkgPT4ge1xyXG4gICAgICBjb25zdCBsYXllcnNCeUlkOiBNYXA8c3RyaW5nLCBHZW9NYXBMYXllcj4gPSBuZXcgTWFwKCk7XHJcbiAgICAgIGlmICghaXQpIHtcclxuICAgICAgICByZXR1cm4gaXQ7XHJcbiAgICAgIH1cclxuICAgICAgaXQubGF5ZXJzLmZvckVhY2goKGxheWVyKSA9PiBsYXllcnNCeUlkLnNldChsYXllci5jb2RlISwgbGF5ZXIpKTtcclxuICAgICAgZm9yIChjb25zdCBsYXllckNoYW5nZSBvZiBjaGFuZ2UuaXRlbXMpIHtcclxuICAgICAgICBjb25zdCBsYXllcklkID0gbGF5ZXJDaGFuZ2UuY29kZSE7XHJcbiAgICAgICAgY29uc3QgdG9BZGQgPSBsYXllckNoYW5nZS50b0FkZDtcclxuICAgICAgICBsYXllcnNCeUlkLnNldChsYXllcklkLCB7XHJcbiAgICAgICAgICBjb2RlOiBsYXllcklkLFxyXG4gICAgICAgICAgaXRlbXM6IHRvQWRkLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgLi4uaXQsXHJcbiAgICAgICAgbGF5ZXJzOiBbLi4ubGF5ZXJzQnlJZC52YWx1ZXMoKV0sXHJcbiAgICAgIH07XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGhhbmRsZU1hcENsaWNrKHBvc2l0aW9uOiBHUFNQb3NpdGlvbik6IHZvaWQge1xyXG4gICAgY29uc3Qgb3BlcmF0aW9uTW9kZSA9IHRoaXMubW9kZWwoKT8udmlld1N0YXRlPy5vcGVyYXRpb25Nb2RlID8/IEdlb01hcE9wZXJhdGlvbk1vZGUuQUNUSU9OO1xyXG4gICAgc3dpdGNoIChvcGVyYXRpb25Nb2RlKSB7XHJcbiAgICAgIGNhc2UgR2VvTWFwT3BlcmF0aW9uTW9kZS5BQ1RJT046XHJcbiAgICAgICAgLy8gVE9ETzogRmlyZSBhY3Rpb24gZm9yIGxheWVyLCBpZiBhcHBsaWNhYmxlIChtYXliZSBvbmx5IG9uIGRvdWJsZSBjbGljaykuXHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgR2VvTWFwT3BlcmF0aW9uTW9kZS5TRUxFQ1RJT046XHJcbiAgICAgICAgLy8gbm8tb3AsIGNhbid0IHNlbGVjdCBlbXB0eSBzcGFjZS5cclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBHZW9NYXBPcGVyYXRpb25Nb2RlLlBMQUNFTUVOVDpcclxuICAgICAgICBsYXN0VmFsdWVGcm9tKFxyXG4gICAgICAgICAgdGhpcy5hcGkuaW50ZXJhY3QodGhpcy51dWlkLCB0aGlzLmlkZW50aWZpZXIsIHtcclxuICAgICAgICAgICAgb3BlcmF0aW9uTW9kZSxcclxuICAgICAgICAgICAgdGFyZ2V0SXRlbToge1xyXG4gICAgICAgICAgICAgIGtpbmQ6IEdlb01hcEl0ZW1LaW5kLk1BUktFUiwgLy8gRklYTUU6IFdlIHNoYWxsIHN1cHBvcnQgbW9yZSBpdGVtIGtpbmRzIVxyXG4gICAgICAgICAgICAgIHBvc2l0aW9uLFxyXG4gICAgICAgICAgICAgIGljb25zOiB7fSxcclxuICAgICAgICAgICAgICBib3VuZHM6IFtdLFxyXG4gICAgICAgICAgICAgIGFjdGlvbnM6IFtdLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB0YXJnZXRMYXllcjogJycsXHJcbiAgICAgICAgICAgIGludmVyc2U6IGZhbHNlLFxyXG4gICAgICAgICAgfSlcclxuICAgICAgICApLnRoZW4oXHJcbiAgICAgICAgICAoY2hhbmdlOiBWaWV3Q29udGV4dENoYW5nZSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoIXRoaXMudmlld0NvbnRleHRTZXJ2aWNlKSB7XHJcbiAgICAgICAgICAgICAgY29uc29sZS53YXJuKCdTbWFydCBNYXAgaGFzIG5vIFZpZXdDb250ZXh0IFNlcnZpY2Ugc2V0IHVwIScpO1xyXG4gICAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHJldHVybiB0aGlzLnZpZXdDb250ZXh0U2VydmljZS5oYW5kbGVQZXJmb3JtQWN0aW9uUmVzcG9uc2UoY2hhbmdlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIChlcnI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ0NvdWxkIG5vdCBzdWJtaXQgc2VsZWN0aW9uIGNoYW5nZSEgJywgZXJyKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaGFuZGxlSXRlbUNsaWNrKGlkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGNvbnN0IG9wZXJhdGlvbk1vZGUgPSB0aGlzLm1vZGVsKCk/LnZpZXdTdGF0ZT8ub3BlcmF0aW9uTW9kZSA/PyBHZW9NYXBPcGVyYXRpb25Nb2RlLkFDVElPTjtcclxuICAgIGNvbnN0IHRhcmdldEl0ZW0gPSB0aGlzLml0ZW1zKCkuZmluZCgoaXQpID0+IGlkID09PSBpdC5pZCk7XHJcbiAgICBpZiAoIXRhcmdldEl0ZW0pIHtcclxuICAgICAgY29uc29sZS53YXJuKCdTZWxlY3Rpb24gaXRlbSBpcyBzZWVtaW5nbHkgbWlzc2luZyBmcm9tIGtub3duIGl0ZW1zOiAnLCBpZCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBzd2l0Y2ggKG9wZXJhdGlvbk1vZGUpIHtcclxuICAgICAgY2FzZSBHZW9NYXBPcGVyYXRpb25Nb2RlLkFDVElPTjpcclxuICAgICAgICAvLyBUT0RPOiBmaXJlIGFjdGlvbiFcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBHZW9NYXBPcGVyYXRpb25Nb2RlLlNFTEVDVElPTjpcclxuICAgICAgICBsYXN0VmFsdWVGcm9tKFxyXG4gICAgICAgICAgdGhpcy5hcGkuaW50ZXJhY3QodGhpcy51dWlkLCB0aGlzLmlkZW50aWZpZXIsIHtcclxuICAgICAgICAgICAgb3BlcmF0aW9uTW9kZSxcclxuICAgICAgICAgICAgdGFyZ2V0SXRlbSxcclxuICAgICAgICAgICAgdGFyZ2V0TGF5ZXI6ICcnLFxyXG4gICAgICAgICAgICBpbnZlcnNlOiB0aGlzLnNlbGVjdGlvbigpLmhhcyhpZCksXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICkudGhlbihcclxuICAgICAgICAgIChjaGFuZ2U6IFZpZXdDb250ZXh0Q2hhbmdlKSA9PiB7XHJcbiAgICAgICAgICAgIGlmICghdGhpcy52aWV3Q29udGV4dFNlcnZpY2UpIHtcclxuICAgICAgICAgICAgICBjb25zb2xlLndhcm4oJ1NtYXJ0IE1hcCBoYXMgbm8gVmlld0NvbnRleHQgU2VydmljZSBzZXQgdXAhJyk7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIHRoaXMudmlld0NvbnRleHRTZXJ2aWNlLmhhbmRsZVBlcmZvcm1BY3Rpb25SZXNwb25zZShjaGFuZ2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUud2FybignQ291bGQgbm90IHN1Ym1pdCBzZWxlY3Rpb24gY2hhbmdlISAnLCBlcnIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgR2VvTWFwT3BlcmF0aW9uTW9kZS5QTEFDRU1FTlQ6XHJcbiAgICAgICAgLy8gY2xpY2tpbmcgYW4gaXRlbSBtYXkgcmVtb3ZlIGl0LCBpZiBpdCdzIG9ubHkgYSBwZW5kaW5nIGl0ZW0uIFRvIHJlcG9zaXRpb24gZXhpc3RpbmdcclxuICAgICAgICAvLyBpdGVtcywgd2Ugc2hhbGwgcmVhY3QgdG8gZHJhZ0VuZCBldmVudHMgb25seS5cclxuICAgICAgICBsYXN0VmFsdWVGcm9tKFxyXG4gICAgICAgICAgdGhpcy5hcGkuaW50ZXJhY3QodGhpcy51dWlkLCB0aGlzLmlkZW50aWZpZXIsIHtcclxuICAgICAgICAgICAgb3BlcmF0aW9uTW9kZSxcclxuICAgICAgICAgICAgdGFyZ2V0SXRlbSxcclxuICAgICAgICAgICAgdGFyZ2V0TGF5ZXI6ICcnLFxyXG4gICAgICAgICAgICBpbnZlcnNlOiB0cnVlLFxyXG4gICAgICAgICAgfSlcclxuICAgICAgICApLnRoZW4oXHJcbiAgICAgICAgICAoY2hhbmdlOiBWaWV3Q29udGV4dENoYW5nZSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoIXRoaXMudmlld0NvbnRleHRTZXJ2aWNlKSB7XHJcbiAgICAgICAgICAgICAgY29uc29sZS53YXJuKCdTbWFydCBNYXAgaGFzIG5vIFZpZXdDb250ZXh0IFNlcnZpY2Ugc2V0IHVwIScpO1xyXG4gICAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHJldHVybiB0aGlzLnZpZXdDb250ZXh0U2VydmljZS5oYW5kbGVQZXJmb3JtQWN0aW9uUmVzcG9uc2UoY2hhbmdlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIChlcnI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ0NvdWxkIG5vdCBzdWJtaXQgcGxhY2VtZW50IGNoYW5nZSEgJywgZXJyKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAaWYgKG1vZGVsKCkpIHsgQGlmIChtYXBFbmdpbmUgPT09IE1hcEVuZ2luZS5HT09HTEUpIHtcclxuPGdvb2dsZS1tYXBcclxuICBbbW9kZWxdPVwibW9kZWwoKSFcIlxyXG4gIFtpdGVtc109XCJpdGVtcygpXCJcclxuICBbc3R5bGVdPVwieyB3aWR0aDogJzEwMCUnLCBoZWlnaHQ6ICczMjBweCcgfVwiXHJcbiAgKG9uTWFwRHJhZ0VuZCk9XCJtb3ZlKCRldmVudC52aWV3cG9ydClcIlxyXG4gIChvblpvb21DaGFuZ2VkKT1cIm1vdmUoJGV2ZW50LnZpZXdwb3J0KVwiXHJcbiAgKG9uTWFwQ2xpY2spPVwiaGFuZGxlTWFwQ2xpY2soJGV2ZW50LmNvb3JkaW5hdGVzKVwiXHJcbiAgKG9uT3ZlcmxheUNsaWNrKT1cImhhbmRsZUl0ZW1DbGljaygkZXZlbnQuaXRlbUlkKVwiXHJcbj5cclxuPC9nb29nbGUtbWFwPlxyXG59IEBlbHNlIGlmIChtYXBFbmdpbmUgPT09IE1hcEVuZ2luZS5MRUFGTEVUKSB7XHJcbjxsZWFmbGV0LW1hcFxyXG4gIFttb2RlbF09XCJtb2RlbCgpIVwiXHJcbiAgW2l0ZW1zXT1cIml0ZW1zKClcIlxyXG4gIChvbk1hcERyYWdFbmQpPVwibW92ZSgkZXZlbnQudmlld3BvcnQpXCJcclxuICAob25ab29tQ2hhbmdlZCk9XCJtb3ZlKCRldmVudC52aWV3cG9ydClcIlxyXG4gIChvbk1hcENsaWNrKT1cImhhbmRsZU1hcENsaWNrKCRldmVudC5jb29yZGluYXRlcylcIlxyXG4gIChvbk92ZXJsYXlDbGljayk9XCJoYW5kbGVJdGVtQ2xpY2soJGV2ZW50Lml0ZW1JZClcIlxyXG4+XHJcbjwvbGVhZmxldC1tYXA+XHJcbn0gQGVsc2Uge1xyXG48cD5cclxuICA8c3Ryb25nPk5vdCByZWNvZ25pc2VkIG1hcCBlbmdpbmU6IFsge3sgbWFwRW5naW5lIH19IF08L3N0cm9uZz5cclxuPC9wPlxyXG48cD5QbGVhc2UgcHJvdmlkZSBhIHZhbGlkIGNob2ljZSBvZiBtYXAgZW5naW5lITwvcD5cclxufSB9XHJcbiJdfQ==
|
|
193
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LW5nLWNsaWVudC9zcmMvbGliL3NtYXJ0LW1hcC9zbWFydC1tYXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc21hcnQtbWFwL3NtYXJ0LW1hcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUNULFFBQVEsRUFDUixNQUFNLEVBQ04sY0FBYyxFQUNkLEtBQUssRUFHTCxNQUFNLEdBR1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyQyxPQUFPLEVBR0wsY0FBYyxFQUdkLG1CQUFtQixHQUtwQixNQUFNLE9BQU8sQ0FBQzs7Ozs7QUFJZixNQUFNLENBQU4sSUFBWSxTQUdYO0FBSEQsV0FBWSxTQUFTO0lBQ25CLDhCQUFpQixDQUFBO0lBQ2pCLGdDQUFtQixDQUFBO0FBQ3JCLENBQUMsRUFIVyxTQUFTLEtBQVQsU0FBUyxRQUdwQjtBQUVELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxJQUFJLGNBQWMsQ0FBWSxZQUFZLENBQUMsQ0FBQztBQUV0RSxNQUFNLE1BQU0sR0FBdUMsQ0FBQyxDQUFvQixFQUFFLENBQW9CLEVBQUUsRUFBRTtJQUNoRyxNQUFNLFNBQVMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBYyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBYyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQzdELE9B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clxuICBBZnRlclZpZXdJbml0LFxyXG4gIENvbXBvbmVudCxcclxuICBjb21wdXRlZCxcclxuICBJbmplY3QsXHJcbiAgSW5qZWN0aW9uVG9rZW4sXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG4gIFNpZ25hbCxcclxuICBzaWduYWwsXHJcbiAgVmFsdWVFcXVhbGl0eUZuLFxyXG4gIFdyaXRhYmxlU2lnbmFsLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBsYXN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7XHJcbiAgR2VvTWFwQ2hhbmdlLFxyXG4gIEdlb01hcEl0ZW0sXHJcbiAgR2VvTWFwSXRlbUtpbmQsXHJcbiAgR2VvTWFwTGF5ZXIsXHJcbiAgR2VvTWFwTW9kZWwsXHJcbiAgR2VvTWFwT3BlcmF0aW9uTW9kZSxcclxuICBHZW9NYXBTZXJ2aWNlLFxyXG4gIEdlb01hcFZpZXdwb3J0LFxyXG4gIEdlb01hcFZpZXdTdGF0ZSxcclxuICBHUFNQb3NpdGlvbixcclxufSBmcm9tICcuL2FwaSc7XHJcbmltcG9ydCB7IFZpZXdDb250ZXh0Q2hhbmdlIH0gZnJvbSAnLi4vdmlldy1jb250ZXh0L2FwaSc7XHJcbmltcG9ydCB7IFNtYXJ0Vmlld0NvbnRleHRTZXJ2aWNlIH0gZnJvbSAnLi4vdmlldy1jb250ZXh0L3NtYXJ0LXZpZXctY29udGV4dC5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCBlbnVtIE1hcEVuZ2luZSB7XHJcbiAgR09PR0xFID0gJ0dPT0dMRScsXHJcbiAgTEVBRkxFVCA9ICdMRUFGTEVUJyxcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IE1BUF9FTkdJTkUgPSBuZXcgSW5qZWN0aW9uVG9rZW48TWFwRW5naW5lPignTUFQX0VOR0lORScpO1xyXG5cclxuY29uc3QgaXRlbUVxOiBWYWx1ZUVxdWFsaXR5Rm48QXJyYXk8R2VvTWFwSXRlbT4+ID0gKGE6IEFycmF5PEdlb01hcEl0ZW0+LCBiOiBBcnJheTxHZW9NYXBJdGVtPikgPT4ge1xyXG4gIGNvbnN0IHBvc2l0aW9ucyA9IG5ldyBTZXQoYS5tYXAoKGl0OiBHZW9NYXBJdGVtKSA9PiBpdC5wb3NpdGlvbikpO1xyXG4gIGIuZm9yRWFjaCgoaXQ6IEdlb01hcEl0ZW0pID0+IHBvc2l0aW9ucy5kZWxldGUoaXQucG9zaXRpb24pKTtcclxuICByZXR1cm4gYS5sZW5ndGggPT09IGIubGVuZ3RoICYmIHBvc2l0aW9ucy5zaXplID09PSAwO1xyXG59O1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzbWFydC1tYXAnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zbWFydC1tYXAuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9zbWFydC1tYXAuY29tcG9uZW50LmNzcycsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTbWFydE1hcENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgTWFwRW5naW5lID0gTWFwRW5naW5lO1xyXG5cclxuICBASW5wdXQoKSB1dWlkITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGlkZW50aWZpZXIhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgcGFyZW50PzogYW55O1xyXG5cclxuICByZWFkb25seSBtb2RlbDogV3JpdGFibGVTaWduYWw8R2VvTWFwTW9kZWwgfCB1bmRlZmluZWQ+ID0gc2lnbmFsKHVuZGVmaW5lZCk7XHJcbiAgcmVhZG9ubHkgaXRlbXM6IFNpZ25hbDxBcnJheTxHZW9NYXBJdGVtPj4gPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICBjb25zdCBtb2RlbCA9IHRoaXMubW9kZWwoKTtcclxuICAgIHJldHVybiBtb2RlbD8ubGF5ZXJzLmZsYXRNYXAoKGwpID0+IGwuaXRlbXMgPz8gW10pID8/IFtdO1xyXG4gIH0pO1xyXG5cclxuICByZWFkb25seSBzZWxlY3Rpb246IFNpZ25hbDxTZXQ8c3RyaW5nPj4gPSBjb21wdXRlZChcclxuICAgICgpID0+XHJcbiAgICAgIG5ldyBTZXQoXHJcbiAgICAgICAgdGhpcy5pdGVtcygpXHJcbiAgICAgICAgICAuZmlsdGVyKChpdCkgPT4gISFpdC5zZWxlY3RlZClcclxuICAgICAgICAgIC5tYXAoKGl0KSA9PiBpdC5pZCEpXHJcbiAgICAgICAgICAudmFsdWVzKClcclxuICAgICAgKVxyXG4gICk7XHJcblxyXG4gIHZpZXdDb250ZXh0U2VydmljZT86IFNtYXJ0Vmlld0NvbnRleHRTZXJ2aWNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBJbmplY3QoTUFQX0VOR0lORSlcclxuICAgIHB1YmxpYyBtYXBFbmdpbmU6IE1hcEVuZ2luZSxcclxuICAgIHByaXZhdGUgYXBpOiBHZW9NYXBTZXJ2aWNlXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIC8vIHRoaXMubG9hZCgpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5sb2FkKCk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBsb2FkKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgY29uc3QgbW9kZWw6IEdlb01hcE1vZGVsID0gYXdhaXQgbGFzdFZhbHVlRnJvbSh0aGlzLmFwaS5sb2FkKHRoaXMudXVpZCwgdGhpcy5pZGVudGlmaWVyKSk7XHJcbiAgICBpZiAoIW1vZGVsLnZpZXdwb3J0KSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcignR2VvTWFwTW9kZWwgY29udGFpbnMgbm8gdmlld3BvcnQhJyk7XHJcbiAgICB9XHJcbiAgICB0aGlzLm1vZGVsLnVwZGF0ZSgoKSA9PiBtb2RlbCk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBtb3ZlKHZpZXdwb3J0OiBHZW9NYXBWaWV3cG9ydCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5tb2RlbC51cGRhdGUoKGl0KSA9PiB7XHJcbiAgICAgIGNvbnNvbGUubG9nKCdtb2RlbCB1cGRhdGUgaXMgcnVubmluZyEnKTtcclxuICAgICAgaWYgKGl0KSB7XHJcbiAgICAgICAgaXQudmlld3BvcnQgPSB2aWV3cG9ydDtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gaXQ7XHJcbiAgICB9KTtcclxuICAgIGNvbnN0IGNoYW5nZTogR2VvTWFwQ2hhbmdlID0gYXdhaXQgbGFzdFZhbHVlRnJvbShcclxuICAgICAgdGhpcy5hcGkubW92ZSh0aGlzLnV1aWQsIHRoaXMuaWRlbnRpZmllciwgdmlld3BvcnQpXHJcbiAgICApO1xyXG4gICAgdGhpcy5oYW5kbGVDaGFuZ2UoY2hhbmdlKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIHVwZGF0ZShtYXBTdGF0ZTogR2VvTWFwVmlld1N0YXRlKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLm1vZGVsLnVwZGF0ZSgoaXQpID0+IHtcclxuICAgICAgaWYgKGl0KSB7XHJcbiAgICAgICAgaXQudmlld1N0YXRlID0gbWFwU3RhdGU7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIGl0O1xyXG4gICAgfSk7XHJcbiAgICBjb25zdCBjaGFuZ2U6IEdlb01hcENoYW5nZSA9IGF3YWl0IGxhc3RWYWx1ZUZyb20oXHJcbiAgICAgIHRoaXMuYXBpLnVwZGF0ZSh0aGlzLnV1aWQsIHRoaXMuaWRlbnRpZmllciwgbWFwU3RhdGUpXHJcbiAgICApO1xyXG4gICAgdGhpcy5oYW5kbGVDaGFuZ2UoY2hhbmdlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFuZGxlQ2hhbmdlKGNoYW5nZTogR2VvTWFwQ2hhbmdlKTogdm9pZCB7XHJcbiAgICBpZiAoIWNoYW5nZS5pdGVtcykge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5tb2RlbC51cGRhdGUoKGl0KSA9PiB7XHJcbiAgICAgIGNvbnN0IGxheWVyc0J5SWQ6IE1hcDxzdHJpbmcsIEdlb01hcExheWVyPiA9IG5ldyBNYXAoKTtcclxuICAgICAgaWYgKCFpdCkge1xyXG4gICAgICAgIHJldHVybiBpdDtcclxuICAgICAgfVxyXG4gICAgICBpdC5sYXllcnMuZm9yRWFjaCgobGF5ZXIpID0+IGxheWVyc0J5SWQuc2V0KGxheWVyLmNvZGUhLCBsYXllcikpO1xyXG4gICAgICBmb3IgKGNvbnN0IGxheWVyQ2hhbmdlIG9mIGNoYW5nZS5pdGVtcykge1xyXG4gICAgICAgIGNvbnN0IGxheWVySWQgPSBsYXllckNoYW5nZS5jb2RlITtcclxuICAgICAgICBjb25zdCB0b0FkZCA9IGxheWVyQ2hhbmdlLnRvQWRkO1xyXG4gICAgICAgIGxheWVyc0J5SWQuc2V0KGxheWVySWQsIHtcclxuICAgICAgICAgIGNvZGU6IGxheWVySWQsXHJcbiAgICAgICAgICBpdGVtczogdG9BZGQsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICAuLi5pdCxcclxuICAgICAgICBsYXllcnM6IFsuLi5sYXllcnNCeUlkLnZhbHVlcygpXSxcclxuICAgICAgfTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlTWFwQ2xpY2socG9zaXRpb246IEdQU1Bvc2l0aW9uKTogdm9pZCB7XHJcbiAgICBjb25zdCBvcGVyYXRpb25Nb2RlID0gdGhpcy5tb2RlbCgpPy52aWV3U3RhdGU/Lm9wZXJhdGlvbk1vZGUgPz8gR2VvTWFwT3BlcmF0aW9uTW9kZS5BQ1RJT047XHJcbiAgICBzd2l0Y2ggKG9wZXJhdGlvbk1vZGUpIHtcclxuICAgICAgY2FzZSBHZW9NYXBPcGVyYXRpb25Nb2RlLkFDVElPTjpcclxuICAgICAgICAvLyBUT0RPOiBGaXJlIGFjdGlvbiBmb3IgbGF5ZXIsIGlmIGFwcGxpY2FibGUgKG1heWJlIG9ubHkgb24gZG91YmxlIGNsaWNrKS5cclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBHZW9NYXBPcGVyYXRpb25Nb2RlLlNFTEVDVElPTjpcclxuICAgICAgICAvLyBuby1vcCwgY2FuJ3Qgc2VsZWN0IGVtcHR5IHNwYWNlLlxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIEdlb01hcE9wZXJhdGlvbk1vZGUuUExBQ0VNRU5UOlxyXG4gICAgICAgIGxhc3RWYWx1ZUZyb20oXHJcbiAgICAgICAgICB0aGlzLmFwaS5pbnRlcmFjdCh0aGlzLnV1aWQsIHRoaXMuaWRlbnRpZmllciwge1xyXG4gICAgICAgICAgICBvcGVyYXRpb25Nb2RlLFxyXG4gICAgICAgICAgICB0YXJnZXRJdGVtOiB7XHJcbiAgICAgICAgICAgICAga2luZDogR2VvTWFwSXRlbUtpbmQuTUFSS0VSLCAvLyBGSVhNRTogV2Ugc2hhbGwgc3VwcG9ydCBtb3JlIGl0ZW0ga2luZHMhXHJcbiAgICAgICAgICAgICAgcG9zaXRpb24sXHJcbiAgICAgICAgICAgICAgaWNvbnM6IHt9LFxyXG4gICAgICAgICAgICAgIGJvdW5kczogW10sXHJcbiAgICAgICAgICAgICAgYWN0aW9uczogW10sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHRhcmdldExheWVyOiAnJyxcclxuICAgICAgICAgICAgaW52ZXJzZTogZmFsc2UsXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICkudGhlbihcclxuICAgICAgICAgIChjaGFuZ2U6IFZpZXdDb250ZXh0Q2hhbmdlKSA9PiB7XHJcbiAgICAgICAgICAgIGlmICghdGhpcy52aWV3Q29udGV4dFNlcnZpY2UpIHtcclxuICAgICAgICAgICAgICBjb25zb2xlLndhcm4oJ1NtYXJ0IE1hcCBoYXMgbm8gVmlld0NvbnRleHQgU2VydmljZSBzZXQgdXAhJyk7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIHRoaXMudmlld0NvbnRleHRTZXJ2aWNlLmhhbmRsZVBlcmZvcm1BY3Rpb25SZXNwb25zZShjaGFuZ2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUud2FybignQ291bGQgbm90IHN1Ym1pdCBzZWxlY3Rpb24gY2hhbmdlISAnLCBlcnIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBoYW5kbGVJdGVtQ2xpY2soaWQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgY29uc3Qgb3BlcmF0aW9uTW9kZSA9IHRoaXMubW9kZWwoKT8udmlld1N0YXRlPy5vcGVyYXRpb25Nb2RlID8/IEdlb01hcE9wZXJhdGlvbk1vZGUuQUNUSU9OO1xyXG4gICAgY29uc3QgdGFyZ2V0SXRlbSA9IHRoaXMuaXRlbXMoKS5maW5kKChpdCkgPT4gaWQgPT09IGl0LmlkKTtcclxuICAgIGlmICghdGFyZ2V0SXRlbSkge1xyXG4gICAgICBjb25zb2xlLndhcm4oJ1NlbGVjdGlvbiBpdGVtIGlzIHNlZW1pbmdseSBtaXNzaW5nIGZyb20ga25vd24gaXRlbXM6ICcsIGlkKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHN3aXRjaCAob3BlcmF0aW9uTW9kZSkge1xyXG4gICAgICBjYXNlIEdlb01hcE9wZXJhdGlvbk1vZGUuQUNUSU9OOlxyXG4gICAgICAgIC8vIFRPRE86IGZpcmUgYWN0aW9uIVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIEdlb01hcE9wZXJhdGlvbk1vZGUuU0VMRUNUSU9OOlxyXG4gICAgICAgIGxhc3RWYWx1ZUZyb20oXHJcbiAgICAgICAgICB0aGlzLmFwaS5pbnRlcmFjdCh0aGlzLnV1aWQsIHRoaXMuaWRlbnRpZmllciwge1xyXG4gICAgICAgICAgICBvcGVyYXRpb25Nb2RlLFxyXG4gICAgICAgICAgICB0YXJnZXRJdGVtLFxyXG4gICAgICAgICAgICB0YXJnZXRMYXllcjogJycsXHJcbiAgICAgICAgICAgIGludmVyc2U6IHRoaXMuc2VsZWN0aW9uKCkuaGFzKGlkKSxcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKS50aGVuKFxyXG4gICAgICAgICAgKGNoYW5nZTogVmlld0NvbnRleHRDaGFuZ2UpID0+IHtcclxuICAgICAgICAgICAgaWYgKCF0aGlzLnZpZXdDb250ZXh0U2VydmljZSkge1xyXG4gICAgICAgICAgICAgIGNvbnNvbGUud2FybignU21hcnQgTWFwIGhhcyBubyBWaWV3Q29udGV4dCBTZXJ2aWNlIHNldCB1cCEnKTtcclxuICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICByZXR1cm4gdGhpcy52aWV3Q29udGV4dFNlcnZpY2UuaGFuZGxlUGVyZm9ybUFjdGlvblJlc3BvbnNlKGNoYW5nZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgY29uc29sZS53YXJuKCdDb3VsZCBub3Qgc3VibWl0IHNlbGVjdGlvbiBjaGFuZ2UhICcsIGVycik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBHZW9NYXBPcGVyYXRpb25Nb2RlLlBMQUNFTUVOVDpcclxuICAgICAgICAvLyBjbGlja2luZyBhbiBpdGVtIG1heSByZW1vdmUgaXQsIGlmIGl0J3Mgb25seSBhIHBlbmRpbmcgaXRlbS4gVG8gcmVwb3NpdGlvbiBleGlzdGluZ1xyXG4gICAgICAgIC8vIGl0ZW1zLCB3ZSBzaGFsbCByZWFjdCB0byBkcmFnRW5kIGV2ZW50cyBvbmx5LlxyXG4gICAgICAgIGxhc3RWYWx1ZUZyb20oXHJcbiAgICAgICAgICB0aGlzLmFwaS5pbnRlcmFjdCh0aGlzLnV1aWQsIHRoaXMuaWRlbnRpZmllciwge1xyXG4gICAgICAgICAgICBvcGVyYXRpb25Nb2RlLFxyXG4gICAgICAgICAgICB0YXJnZXRJdGVtLFxyXG4gICAgICAgICAgICB0YXJnZXRMYXllcjogJycsXHJcbiAgICAgICAgICAgIGludmVyc2U6IHRydWUsXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICkudGhlbihcclxuICAgICAgICAgIChjaGFuZ2U6IFZpZXdDb250ZXh0Q2hhbmdlKSA9PiB7XHJcbiAgICAgICAgICAgIGlmICghdGhpcy52aWV3Q29udGV4dFNlcnZpY2UpIHtcclxuICAgICAgICAgICAgICBjb25zb2xlLndhcm4oJ1NtYXJ0IE1hcCBoYXMgbm8gVmlld0NvbnRleHQgU2VydmljZSBzZXQgdXAhJyk7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIHRoaXMudmlld0NvbnRleHRTZXJ2aWNlLmhhbmRsZVBlcmZvcm1BY3Rpb25SZXNwb25zZShjaGFuZ2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUud2FybignQ291bGQgbm90IHN1Ym1pdCBwbGFjZW1lbnQgY2hhbmdlISAnLCBlcnIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBpZiAobW9kZWwoKSkgeyBAaWYgKG1hcEVuZ2luZSA9PT0gTWFwRW5naW5lLkdPT0dMRSkge1xyXG48Z29vZ2xlLW1hcFxyXG4gIFttb2RlbF09XCJtb2RlbCgpIVwiXHJcbiAgW2l0ZW1zXT1cIml0ZW1zKClcIlxyXG4gIFtzdHlsZV09XCJ7IHdpZHRoOiAnMTAwJScsIGhlaWdodDogJzMyMHB4JyB9XCJcclxuICAob25NYXBEcmFnRW5kKT1cIm1vdmUoJGV2ZW50LnZpZXdwb3J0KVwiXHJcbiAgKG9uWm9vbUNoYW5nZWQpPVwibW92ZSgkZXZlbnQudmlld3BvcnQpXCJcclxuICAob25NYXBDbGljayk9XCJoYW5kbGVNYXBDbGljaygkZXZlbnQuY29vcmRpbmF0ZXMpXCJcclxuICAob25PdmVybGF5Q2xpY2spPVwiaGFuZGxlSXRlbUNsaWNrKCRldmVudC5pdGVtSWQpXCJcclxuPlxyXG48L2dvb2dsZS1tYXA+XHJcbn0gQGVsc2UgaWYgKG1hcEVuZ2luZSA9PT0gTWFwRW5naW5lLkxFQUZMRVQpIHtcclxuPGxlYWZsZXQtbWFwXHJcbiAgW21vZGVsXT1cIm1vZGVsKCkhXCJcclxuICBbaXRlbXNdPVwiaXRlbXMoKVwiXHJcbiAgKG9uTWFwRHJhZ0VuZCk9XCJtb3ZlKCRldmVudC52aWV3cG9ydClcIlxyXG4gIChvblpvb21DaGFuZ2VkKT1cIm1vdmUoJGV2ZW50LnZpZXdwb3J0KVwiXHJcbiAgKG9uTWFwQ2xpY2spPVwiaGFuZGxlTWFwQ2xpY2soJGV2ZW50LmNvb3JkaW5hdGVzKVwiXHJcbiAgKG9uT3ZlcmxheUNsaWNrKT1cImhhbmRsZUl0ZW1DbGljaygkZXZlbnQuaXRlbUlkKVwiXHJcbj5cclxuPC9sZWFmbGV0LW1hcD5cclxufSBAZWxzZSB7XHJcbjxwPlxyXG4gIDxzdHJvbmc+Tm90IHJlY29nbmlzZWQgbWFwIGVuZ2luZTogWyB7eyBtYXBFbmdpbmUgfX0gXTwvc3Ryb25nPlxyXG48L3A+XHJcbjxwPlBsZWFzZSBwcm92aWRlIGEgdmFsaWQgY2hvaWNlIG9mIG1hcCBlbmdpbmUhPC9wPlxyXG59IH1cclxuIl19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, EventEmitter, Inject, Input, Optional, Output, } from "@angular/core";
|
|
1
|
+
import { Component, EventEmitter, Inject, Input, Optional, Output, ViewChild, } from "@angular/core";
|
|
2
2
|
import { COMPONENT_LIBRARY, ComponentLibrary, } from "../view-context/utility/componentLibrary";
|
|
3
3
|
import { Chart } from "chart.js";
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
@@ -109,18 +109,30 @@ export class SmartChartComponent {
|
|
|
109
109
|
this.onDataClicked.emit({ event, clickedItems });
|
|
110
110
|
}
|
|
111
111
|
}
|
|
112
|
+
getBase64Image() {
|
|
113
|
+
return this.chart?.getBase64Image();
|
|
114
|
+
}
|
|
115
|
+
refresh() {
|
|
116
|
+
return this.chart?.refresh();
|
|
117
|
+
}
|
|
118
|
+
getChart() {
|
|
119
|
+
return this.chart?.chart;
|
|
120
|
+
}
|
|
112
121
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartChartComponent, deps: [{ token: i1.DefaultChartOptionsProvider }, { token: COMPONENT_LIBRARY, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
113
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.11", type: SmartChartComponent, selector: "smart-chart", inputs: { diagramUiModel: "diagramUiModel", options: "options" }, outputs: { dataSelect: "dataSelect", chartClick: "chartClick", onDataClicked: "onDataClicked" }, ngImport: i0, template: "@if(compLib === componentLibrary.PRIMENG) {\r\n<p-chart\r\n [type]=\"type\"\r\n [data]=\"data\"\r\n [options]=\"options\"\r\n (onDataSelect)=\"onDataSelect($event)\"\r\n (click)=\"handleChartClick($event)\"\r\n (click)=\"handleOnDataClicked($event)\"\r\n/>\r\n} @else {\r\n<p>Only PrimeNg component library is supported</p>\r\n}\r\n", styles: [""], dependencies: [{ kind: "component", type: i2.UIChart, selector: "p-chart", inputs: ["type", "plugins", "width", "height", "responsive", "ariaLabel", "ariaLabelledBy", "data", "options"], outputs: ["onDataSelect"] }] }); }
|
|
122
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.11", type: SmartChartComponent, selector: "smart-chart", inputs: { diagramUiModel: "diagramUiModel", options: "options" }, outputs: { dataSelect: "dataSelect", chartClick: "chartClick", onDataClicked: "onDataClicked" }, viewQueries: [{ propertyName: "chart", first: true, predicate: ["chartJSRef"], descendants: true }], ngImport: i0, template: "@if(compLib === componentLibrary.PRIMENG) {\r\n<p-chart\r\n #chartJSRef\r\n [type]=\"type\"\r\n [data]=\"data\"\r\n [options]=\"options\"\r\n (onDataSelect)=\"onDataSelect($event)\"\r\n (click)=\"handleChartClick($event)\"\r\n (click)=\"handleOnDataClicked($event)\"\r\n/>\r\n} @else {\r\n<p>Only PrimeNg component library is supported</p>\r\n}\r\n", styles: [""], dependencies: [{ kind: "component", type: i2.UIChart, selector: "p-chart", inputs: ["type", "plugins", "width", "height", "responsive", "ariaLabel", "ariaLabelledBy", "data", "options"], outputs: ["onDataSelect"] }] }); }
|
|
114
123
|
}
|
|
115
124
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartChartComponent, decorators: [{
|
|
116
125
|
type: Component,
|
|
117
|
-
args: [{ selector: "smart-chart", template: "@if(compLib === componentLibrary.PRIMENG) {\r\n<p-chart\r\n [type]=\"type\"\r\n [data]=\"data\"\r\n [options]=\"options\"\r\n (onDataSelect)=\"onDataSelect($event)\"\r\n (click)=\"handleChartClick($event)\"\r\n (click)=\"handleOnDataClicked($event)\"\r\n/>\r\n} @else {\r\n<p>Only PrimeNg component library is supported</p>\r\n}\r\n" }]
|
|
126
|
+
args: [{ selector: "smart-chart", template: "@if(compLib === componentLibrary.PRIMENG) {\r\n<p-chart\r\n #chartJSRef\r\n [type]=\"type\"\r\n [data]=\"data\"\r\n [options]=\"options\"\r\n (onDataSelect)=\"onDataSelect($event)\"\r\n (click)=\"handleChartClick($event)\"\r\n (click)=\"handleOnDataClicked($event)\"\r\n/>\r\n} @else {\r\n<p>Only PrimeNg component library is supported</p>\r\n}\r\n" }]
|
|
118
127
|
}], ctorParameters: () => [{ type: i1.DefaultChartOptionsProvider }, { type: i3.ComponentLibrary, decorators: [{
|
|
119
128
|
type: Inject,
|
|
120
129
|
args: [COMPONENT_LIBRARY]
|
|
121
130
|
}, {
|
|
122
131
|
type: Optional
|
|
123
|
-
}] }], propDecorators: {
|
|
132
|
+
}] }], propDecorators: { chart: [{
|
|
133
|
+
type: ViewChild,
|
|
134
|
+
args: ["chartJSRef"]
|
|
135
|
+
}], diagramUiModel: [{
|
|
124
136
|
type: Input
|
|
125
137
|
}], options: [{
|
|
126
138
|
type: Input
|
|
@@ -131,4 +143,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
131
143
|
}], onDataClicked: [{
|
|
132
144
|
type: Output
|
|
133
145
|
}] } });
|
|
134
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc21hcnQtY2hhcnQvc21hcnQtY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc21hcnQtY2hhcnQvc21hcnQtY2hhcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsZ0JBQWdCLEdBQ2pCLE1BQU0sMENBQTBDLENBQUM7QUFDbEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFVBQVUsQ0FBQzs7Ozs7QUFRakMsTUFBTSxPQUFPLG1CQUFtQjtJQWM5QixZQUNVLG1CQUFnRCxFQUNqQixPQUEwQjtRQUR6RCx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQTZCO1FBWGhELGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3JDLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3JDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQyxDQUFDLEVBQUU7UUFNckQscUJBQWdCLEdBQUcsZ0JBQWdCLENBQUM7UUFNbEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLElBQUksZ0JBQWdCLENBQUMsT0FBTyxDQUFDO0lBQ3JELENBQUM7SUFDRCxRQUFRO1FBQ04sSUFBSSxPQUFPLEdBQUcsU0FBUyxDQUFDO1FBQ3hCLE1BQU0sV0FBVyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsRUFBRSxXQUFXO1lBQy9ELENBQUMs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QVM7b0JBQ3pCLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztpQkFDdEIsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUNuRCxDQUFDO0lBQ0gsQ0FBQzsrR0FySVUsbUJBQW1CLDZEQWdCcEIsaUJBQWlCO21HQWhCaEIsbUJBQW1CLHNOQ3ZCaEMsb1ZBWUE7OzRGRFdhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxhQUFhOzswQkFvQnBCLE1BQU07MkJBQUMsaUJBQWlCOzswQkFBRyxRQUFRO3lDQWY3QixjQUFjO3NCQUF0QixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFFSSxVQUFVO3NCQUFuQixNQUFNO2dCQUNHLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbmplY3QsXHJcbiAgSW5wdXQsXHJcbiAgT3B0aW9uYWwsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBEZWZhdWx0Q2hhcnRPcHRpb25zUHJvdmlkZXIgfSBmcm9tIFwiLi9kZWZhdWx0LWNoYXJ0LW9wdGlvbnMucHJvdmlkZXJcIjtcclxuaW1wb3J0IHsgRGlhZ3JhbURlc2NyaXB0b3IsIERpYWdyYW1VaU1vZGVsIH0gZnJvbSBcIi4vYXBpXCI7XHJcbmltcG9ydCB7XHJcbiAgQ09NUE9ORU5UX0xJQlJBUlksXHJcbiAgQ29tcG9uZW50TGlicmFyeSxcclxufSBmcm9tIFwiLi4vdmlldy1jb250ZXh0L3V0aWxpdHkvY29tcG9uZW50TGlicmFyeVwiO1xyXG5pbXBvcnQgeyBDaGFydCB9IGZyb20gXCJjaGFydC5qc1wiO1xyXG5pbXBvcnQgeyBVSUNoYXJ0IH0gZnJvbSBcInByaW1lbmcvY2hhcnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcInNtYXJ0LWNoYXJ0XCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi9zbWFydC1jaGFydC5jb21wb25lbnQuaHRtbFwiLFxyXG4gIHN0eWxlVXJsczogW1wiLi9zbWFydC1jaGFydC5jb21wb25lbnQuY3NzXCJdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU21hcnRDaGFydENvbXBvbmVudCB7XHJcbiAgQElucHV0KCkgZGlhZ3JhbVVpTW9kZWwhOiBEaWFncmFtVWlNb2RlbDtcclxuICBASW5wdXQoKSBvcHRpb25zPzogYW55O1xyXG5cclxuICBAT3V0cHV0KCkgZGF0YVNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBjaGFydENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIG9uRGF0YUNsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTsgLy9cclxuXHJcbiAgZGF0YTogYW55O1xyXG4gIHR5cGU6IGFueTtcclxuXHJcbiAgY29tcExpYjogQ29tcG9uZW50TGlicmFyeTtcclxuICBjb21wb25lbnRMaWJyYXJ5ID0gQ29tcG9uZW50TGlicmFyeTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGNoYXJ0T3B0aW9uUHJvdmlkZXI6IERlZmF1bHRDaGFydE9wdGlvbnNQcm92aWRlcixcclxuICAgIEBJbmplY3QoQ09NUE9ORU5UX0xJQlJBUlkpIEBPcHRpb25hbCgpIGNvbXBMaWI/OiBDb21wb25lbnRMaWJyYXJ5XHJcbiAgKSB7XHJcbiAgICB0aGlzLmNvbXBMaWIgPSBjb21wTGliID8/IENvbXBvbmVudExpYnJhcnkuUFJJTUVORztcclxuICB9XHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBsZXQgb3B0aW9ucyA9IHVuZGVmaW5lZDtcclxuICAgIGNvbnN0IGRpYWdyYW1UeXBlID0gISF0aGlzLmRpYWdyYW1VaU1vZGVsLkRlc2NyaXB0b3I/LmRpYWdyYW1UeXBlXHJcbiAgICAgID8gdGhpcy5kaWFncmFtVWlNb2RlbC5EZXNjcmlwdG9yLmRpYWdyYW1UeXBlXHJcbiAgICAgIDogXCJcIjtcclxuXHJcbiAgICBjb25zdCBmYWN0b3J5ID0gdGhpcy5jaGFydE9wdGlvblByb3ZpZGVyLmdldEZhY3RvcnkoZGlhZ3JhbVR5cGUpO1xyXG4gICAgdGhpcy50eXBlID0gZmFjdG9yeS5jaGFydEpzVHlwZTtcclxuICAgIG9wdGlvbnMgPSBmYWN0b3J5LmNyZWF0ZU9wdGlvbnModGhpcy5kaWFncmFtVWlNb2RlbC5EaWFncmFtRGF0YSEpO1xyXG4gICAgaWYgKHRoaXMuZGlhZ3JhbVVpTW9kZWwuRGVzY3JpcHRvcikge1xyXG4gICAgICBvcHRpb25zID0gdGhpcy5kZWVwTWVyZ2UoXHJcbiAgICAgICAgdGhpcy5jb252ZXJ0QmFja2VuZE9wdGlvbnModGhpcy5kaWFncmFtVWlNb2RlbC5EZXNjcmlwdG9yKSxcclxuICAgICAgICBvcHRpb25zXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5vcHRpb25zKSB7XHJcbiAgICAgIG9wdGlvbnMgPSB0aGlzLmRlZXBNZXJnZSh0aGlzLm9wdGlvbnMsIG9wdGlvbnMpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XHJcbiAgICB0aGlzLmRhdGEgPSBmYWN0b3J5LnRyYW5zZm9ybURhdGEodGhpcy5kaWFncmFtVWlNb2RlbC5EaWFncmFtRGF0YSEpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBkZWVwTWVyZ2UodGFyZ2V0OiBhbnksIHNvdXJjZTogYW55KTogYW55IHtcclxuICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKHNvdXJjZSkpIHtcclxuICAgICAgaWYgKHNvdXJjZVtrZXldIGluc3RhbmNlb2YgT2JqZWN0ICYmIHRhcmdldFtrZXldKSB7XHJcbiAgICAgICAgT2JqZWN0LmFzc2lnbihzb3VyY2Vba2V5XSwgdGhpcy5kZWVwTWVyZ2UodGFyZ2V0W2tleV0sIHNvdXJjZVtrZXldKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIE9iamVjdC5hc3NpZ24odGFyZ2V0IHx8IHt9LCBzb3VyY2UpO1xyXG4gICAgcmV0dXJuIHRhcmdldDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY29udmVydEJhY2tlbmRPcHRpb25zKGRlc2NyaXB0b3I6IERpYWdyYW1EZXNjcmlwdG9yKSB7XHJcbiAgICBjb25zdCBvcHRpb25zOiBhbnkgPSB7XHJcbiAgICAgIHBsdWdpbnM6IHtcclxuICAgICAgICBsZWdlbmQ6IHtcclxuICAgICAgICAgIGRpc3BsYXk6IGRlc2NyaXB0b3Iuc2hvd0xlZ2VuZEZvckNoYXJ0ID8/IHRydWUsXHJcbiAgICAgICAgfSxcclxuICAgICAgfSxcclxuICAgICAgc2NhbGVzOiB7fSBhcyBhbnksXHJcbiAgICB9O1xyXG4gICAgaWYgKFxyXG4gICAgICBkZXNjcmlwdG9yLmRpYWdyYW1NaW5YICE9PSB1bmRlZmluZWQgJiZcclxuICAgICAgZGVzY3JpcHRvci5kaWFncmFtTWF4WCAhPT0gdW5kZWZpbmVkXHJcbiAgICApIHtcclxuICAgICAgb3B0aW9ucy5zY2FsZXMueCA9IHtcclxuICAgICAgICB0aWNrczoge1xyXG4gICAgICAgICAgZGlzcGxheTogZGVzY3JpcHRvci5zaG93TGFiZWxzRm9yWEF4aXMgPz8gdHJ1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIG1pbjogZGVzY3JpcHRvci5kaWFncmFtTWluWCxcclxuICAgICAgICBtYXg6IGRlc2NyaXB0b3IuZGlhZ3JhbU1heFgsXHJcbiAgICAgIH07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBvcHRpb25zLnNjYWxlcy54ID0ge1xyXG4gICAgICAgIHRpY2tzOiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBkZXNjcmlwdG9yLnNob3dMYWJlbHNGb3JYQXhpcyA/PyB0cnVlLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICBpZiAoXHJcbiAgICAgIGRlc2NyaXB0b3IuZGlhZ3JhbU1pblkgIT09IHVuZGVmaW5lZCAmJlxyXG4gICAgICBkZXNjcmlwdG9yLmRpYWdyYW1NYXhZICE9PSB1bmRlZmluZWRcclxuICAgICkge1xyXG4gICAgICBvcHRpb25zLnNjYWxlcy55ID0ge1xyXG4gICAgICAgIHRpY2tzOiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBkZXNjcmlwdG9yLnNob3dMYWJlbHNGb3JZQXhpcyA/PyB0cnVlLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgbWluOiBkZXNjcmlwdG9yLmRpYWdyYW1NaW5ZLFxyXG4gICAgICAgIG1heDogZGVzY3JpcHRvci5kaWFncmFtTWF4WSxcclxuICAgICAgfTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIG9wdGlvbnMuc2NhbGVzLnkgPSB7XHJcbiAgICAgICAgdGlja3M6IHtcclxuICAgICAgICAgIGRpc3BsYXk6IGRlc2NyaXB0b3Iuc2hvd0xhYmVsc0ZvcllBeGlzID8/IHRydWUsXHJcbiAgICAgICAgfSxcclxuICAgICAgfTtcclxuICAgIH1cclxuICAgIHJldHVybiBvcHRpb25zO1xyXG4gIH1cclxuXHJcbiAgb25EYXRhU2VsZWN0KGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMuZGF0YVNlbGVjdC5lbWl0KGV2ZW50KTtcclxuICB9XHJcblxyXG4gIGhhbmRsZUNoYXJ0Q2xpY2soZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5jaGFydENsaWNrLmVtaXQoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlT25EYXRhQ2xpY2tlZChldmVudDogYW55KTogdm9pZCB7XHJcbiAgICBjb25zdCBjYW52YXMgPSBldmVudC50YXJnZXQgYXMgSFRNTENhbnZhc0VsZW1lbnQ7XHJcbiAgICBjb25zdCBjaGFydCA9IENoYXJ0LmdldENoYXJ0KGNhbnZhcyk7XHJcblxyXG4gICAgaWYgKGNoYXJ0KSB7XHJcbiAgICAgIGNvbnN0IGVsZW1lbnRzID0gY2hhcnQuZ2V0RWxlbWVudHNBdEV2ZW50Rm9yTW9kZShcclxuICAgICAgICBldmVudCxcclxuICAgICAgICBcIm5lYXJlc3RcIixcclxuICAgICAgICB7IGludGVyc2VjdDogdHJ1ZSB9LFxyXG4gICAgICAgIGZhbHNlXHJcbiAgICAgICk7XHJcbiAgICAgIGlmIChlbGVtZW50cy5sZW5ndGggPT09IDApIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgY2xpY2tlZEl0ZW1zID0gY2hhcnQudG9vbHRpcD8uZGF0YVBvaW50cz8ubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIGRhdGFzZXRJbmRleDogaXRlbS5kYXRhc2V0SW5kZXgsXHJcbiAgICAgICAgICBpdGVtSW5kZXg6IGl0ZW0uZGF0YUluZGV4LFxyXG4gICAgICAgICAgZWxlbWVudDogaXRlbS5lbGVtZW50LFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdGhpcy5vbkRhdGFDbGlja2VkLmVtaXQoeyBldmVudCwgY2xpY2tlZEl0ZW1zIH0pO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAaWYoY29tcExpYiA9PT0gY29tcG9uZW50TGlicmFyeS5QUklNRU5HKSB7XHJcbjxwLWNoYXJ0XHJcbiAgW3R5cGVdPVwidHlwZVwiXHJcbiAgW2RhdGFdPVwiZGF0YVwiXHJcbiAgW29wdGlvbnNdPVwib3B0aW9uc1wiXHJcbiAgKG9uRGF0YVNlbGVjdCk9XCJvbkRhdGFTZWxlY3QoJGV2ZW50KVwiXHJcbiAgKGNsaWNrKT1cImhhbmRsZUNoYXJ0Q2xpY2soJGV2ZW50KVwiXHJcbiAgKGNsaWNrKT1cImhhbmRsZU9uRGF0YUNsaWNrZWQoJGV2ZW50KVwiXHJcbi8+XHJcbn0gQGVsc2Uge1xyXG48cD5Pbmx5IFByaW1lTmcgY29tcG9uZW50IGxpYnJhcnkgaXMgc3VwcG9ydGVkPC9wPlxyXG59XHJcbiJdfQ==
|
|
146
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc21hcnQtY2hhcnQvc21hcnQtY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvc21hcnQtY2hhcnQvc21hcnQtY2hhcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUVOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLGdCQUFnQixHQUNqQixNQUFNLDBDQUEwQyxDQUFDO0FBQ2xELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7O0FBUWpDLE1BQU0sT0FBTyxtQkFBbUI7SUFlOUIsWUFDVSxtQkFBZ0QsRUFDakIsT0FBMEI7UUFEekQsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUE2QjtRQVhoRCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNyQyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNyQyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUMsQ0FBQyxFQUFFO1FBTXJELHFCQUFnQixHQUFHLGdCQUFnQixDQUFDO1FBTWxDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxJQUFJLGdCQUFnQixDQUFDLE9BQU8sQ0FBQztJQUNyRCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksT0FBTyxHQUFHLFNBQVMsQ0FBQztRQUN4QixNQUFNLFdBQVcsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsV0FBVztZ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QUksQ0FBQyxTQUFTO29CQUN6QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87aUJBQ3RCLENBQUM7WUFDSixDQUFDLENBQUMsQ0FBQztZQUVILElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUM7UUFDbkQsQ0FBQztJQUNILENBQUM7SUFFRCxjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLGNBQWMsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxPQUFPO1FBQ0wsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQztJQUMzQixDQUFDOytHQW5KVSxtQkFBbUIsNkRBaUJwQixpQkFBaUI7bUdBakJoQixtQkFBbUIsMlRDekJoQyxxV0FhQTs7NEZEWWEsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGFBQWE7OzBCQXFCcEIsTUFBTTsyQkFBQyxpQkFBaUI7OzBCQUFHLFFBQVE7eUNBaEJiLEtBQUs7c0JBQTdCLFNBQVM7dUJBQUMsWUFBWTtnQkFDZCxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFFSSxVQUFVO3NCQUFuQixNQUFNO2dCQUNHLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJWaWV3SW5pdCxcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEluamVjdCxcclxuICBJbnB1dCxcclxuICBPcHRpb25hbCxcclxuICBPdXRwdXQsXHJcbiAgdmlld0NoaWxkLFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBEZWZhdWx0Q2hhcnRPcHRpb25zUHJvdmlkZXIgfSBmcm9tIFwiLi9kZWZhdWx0LWNoYXJ0LW9wdGlvbnMucHJvdmlkZXJcIjtcclxuaW1wb3J0IHsgRGlhZ3JhbURlc2NyaXB0b3IsIERpYWdyYW1VaU1vZGVsIH0gZnJvbSBcIi4vYXBpXCI7XHJcbmltcG9ydCB7XHJcbiAgQ09NUE9ORU5UX0xJQlJBUlksXHJcbiAgQ29tcG9uZW50TGlicmFyeSxcclxufSBmcm9tIFwiLi4vdmlldy1jb250ZXh0L3V0aWxpdHkvY29tcG9uZW50TGlicmFyeVwiO1xyXG5pbXBvcnQgeyBDaGFydCB9IGZyb20gXCJjaGFydC5qc1wiO1xyXG5pbXBvcnQgeyBVSUNoYXJ0IH0gZnJvbSBcInByaW1lbmcvY2hhcnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcInNtYXJ0LWNoYXJ0XCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi9zbWFydC1jaGFydC5jb21wb25lbnQuaHRtbFwiLFxyXG4gIHN0eWxlVXJsczogW1wiLi9zbWFydC1jaGFydC5jb21wb25lbnQuY3NzXCJdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU21hcnRDaGFydENvbXBvbmVudCB7XHJcbiAgQFZpZXdDaGlsZChcImNoYXJ0SlNSZWZcIikgY2hhcnQ/OiBVSUNoYXJ0O1xyXG4gIEBJbnB1dCgpIGRpYWdyYW1VaU1vZGVsITogRGlhZ3JhbVVpTW9kZWw7XHJcbiAgQElucHV0KCkgb3B0aW9ucz86IGFueTtcclxuXHJcbiAgQE91dHB1dCgpIGRhdGFTZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KCkgY2hhcnRDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBvbkRhdGFDbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7IC8vXHJcblxyXG4gIGRhdGE6IGFueTtcclxuICB0eXBlOiBhbnk7XHJcblxyXG4gIGNvbXBMaWI6IENvbXBvbmVudExpYnJhcnk7XHJcbiAgY29tcG9uZW50TGlicmFyeSA9IENvbXBvbmVudExpYnJhcnk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBjaGFydE9wdGlvblByb3ZpZGVyOiBEZWZhdWx0Q2hhcnRPcHRpb25zUHJvdmlkZXIsXHJcbiAgICBASW5qZWN0KENPTVBPTkVOVF9MSUJSQVJZKSBAT3B0aW9uYWwoKSBjb21wTGliPzogQ29tcG9uZW50TGlicmFyeVxyXG4gICkge1xyXG4gICAgdGhpcy5jb21wTGliID0gY29tcExpYiA/PyBDb21wb25lbnRMaWJyYXJ5LlBSSU1FTkc7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGxldCBvcHRpb25zID0gdW5kZWZpbmVkO1xyXG4gICAgY29uc3QgZGlhZ3JhbVR5cGUgPSAhIXRoaXMuZGlhZ3JhbVVpTW9kZWwuRGVzY3JpcHRvcj8uZGlhZ3JhbVR5cGVcclxuICAgICAgPyB0aGlzLmRpYWdyYW1VaU1vZGVsLkRlc2NyaXB0b3IuZGlhZ3JhbVR5cGVcclxuICAgICAgOiBcIlwiO1xyXG5cclxuICAgIGNvbnN0IGZhY3RvcnkgPSB0aGlzLmNoYXJ0T3B0aW9uUHJvdmlkZXIuZ2V0RmFjdG9yeShkaWFncmFtVHlwZSk7XHJcbiAgICB0aGlzLnR5cGUgPSBmYWN0b3J5LmNoYXJ0SnNUeXBlO1xyXG4gICAgb3B0aW9ucyA9IGZhY3RvcnkuY3JlYXRlT3B0aW9ucyh0aGlzLmRpYWdyYW1VaU1vZGVsLkRpYWdyYW1EYXRhISk7XHJcbiAgICBpZiAodGhpcy5kaWFncmFtVWlNb2RlbC5EZXNjcmlwdG9yKSB7XHJcbiAgICAgIG9wdGlvbnMgPSB0aGlzLmRlZXBNZXJnZShcclxuICAgICAgICB0aGlzLmNvbnZlcnRCYWNrZW5kT3B0aW9ucyh0aGlzLmRpYWdyYW1VaU1vZGVsLkRlc2NyaXB0b3IpLFxyXG4gICAgICAgIG9wdGlvbnNcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLm9wdGlvbnMpIHtcclxuICAgICAgb3B0aW9ucyA9IHRoaXMuZGVlcE1lcmdlKHRoaXMub3B0aW9ucywgb3B0aW9ucyk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcclxuICAgIHRoaXMuZGF0YSA9IGZhY3RvcnkudHJhbnNmb3JtRGF0YSh0aGlzLmRpYWdyYW1VaU1vZGVsLkRpYWdyYW1EYXRhISk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGRlZXBNZXJnZSh0YXJnZXQ6IGFueSwgc291cmNlOiBhbnkpOiBhbnkge1xyXG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoc291cmNlKSkge1xyXG4gICAgICBpZiAoc291cmNlW2tleV0gaW5zdGFuY2VvZiBPYmplY3QgJiYgdGFyZ2V0W2tleV0pIHtcclxuICAgICAgICBPYmplY3QuYXNzaWduKHNvdXJjZVtrZXldLCB0aGlzLmRlZXBNZXJnZSh0YXJnZXRba2V5XSwgc291cmNlW2tleV0pKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgT2JqZWN0LmFzc2lnbih0YXJnZXQgfHwge30sIHNvdXJjZSk7XHJcbiAgICByZXR1cm4gdGFyZ2V0O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb252ZXJ0QmFja2VuZE9wdGlvbnMoZGVzY3JpcHRvcjogRGlhZ3JhbURlc2NyaXB0b3IpIHtcclxuICAgIGNvbnN0IG9wdGlvbnM6IGFueSA9IHtcclxuICAgICAgcGx1Z2luczoge1xyXG4gICAgICAgIGxlZ2VuZDoge1xyXG4gICAgICAgICAgZGlzcGxheTogZGVzY3JpcHRvci5zaG93TGVnZW5kRm9yQ2hhcnQgPz8gdHJ1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICB9LFxyXG4gICAgICBzY2FsZXM6IHt9IGFzIGFueSxcclxuICAgIH07XHJcbiAgICBpZiAoXHJcbiAgICAgIGRlc2NyaXB0b3IuZGlhZ3JhbU1pblggIT09IHVuZGVmaW5lZCAmJlxyXG4gICAgICBkZXNjcmlwdG9yLmRpYWdyYW1NYXhYICE9PSB1bmRlZmluZWRcclxuICAgICkge1xyXG4gICAgICBvcHRpb25zLnNjYWxlcy54ID0ge1xyXG4gICAgICAgIHRpY2tzOiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBkZXNjcmlwdG9yLnNob3dMYWJlbHNGb3JYQXhpcyA/PyB0cnVlLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgbWluOiBkZXNjcmlwdG9yLmRpYWdyYW1NaW5YLFxyXG4gICAgICAgIG1heDogZGVzY3JpcHRvci5kaWFncmFtTWF4WCxcclxuICAgICAgfTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIG9wdGlvbnMuc2NhbGVzLnggPSB7XHJcbiAgICAgICAgdGlja3M6IHtcclxuICAgICAgICAgIGRpc3BsYXk6IGRlc2NyaXB0b3Iuc2hvd0xhYmVsc0ZvclhBeGlzID8/IHRydWUsXHJcbiAgICAgICAgfSxcclxuICAgICAgfTtcclxuICAgIH1cclxuICAgIGlmIChcclxuICAgICAgZGVzY3JpcHRvci5kaWFncmFtTWluWSAhPT0gdW5kZWZpbmVkICYmXHJcbiAgICAgIGRlc2NyaXB0b3IuZGlhZ3JhbU1heFkgIT09IHVuZGVmaW5lZFxyXG4gICAgKSB7XHJcbiAgICAgIG9wdGlvbnMuc2NhbGVzLnkgPSB7XHJcbiAgICAgICAgdGlja3M6IHtcclxuICAgICAgICAgIGRpc3BsYXk6IGRlc2NyaXB0b3Iuc2hvd0xhYmVsc0ZvcllBeGlzID8/IHRydWUsXHJcbiAgICAgICAgfSxcclxuICAgICAgICBtaW46IGRlc2NyaXB0b3IuZGlhZ3JhbU1pblksXHJcbiAgICAgICAgbWF4OiBkZXNjcmlwdG9yLmRpYWdyYW1NYXhZLFxyXG4gICAgICB9O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgb3B0aW9ucy5zY2FsZXMueSA9IHtcclxuICAgICAgICB0aWNrczoge1xyXG4gICAgICAgICAgZGlzcGxheTogZGVzY3JpcHRvci5zaG93TGFiZWxzRm9yWUF4aXMgPz8gdHJ1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG9wdGlvbnM7XHJcbiAgfVxyXG5cclxuICBvbkRhdGFTZWxlY3QoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5kYXRhU2VsZWN0LmVtaXQoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlQ2hhcnRDbGljayhldmVudDogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLmNoYXJ0Q2xpY2suZW1pdChldmVudCk7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVPbkRhdGFDbGlja2VkKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIGNvbnN0IGNhbnZhcyA9IGV2ZW50LnRhcmdldCBhcyBIVE1MQ2FudmFzRWxlbWVudDtcclxuICAgIGNvbnN0IGNoYXJ0ID0gQ2hhcnQuZ2V0Q2hhcnQoY2FudmFzKTtcclxuXHJcbiAgICBpZiAoY2hhcnQpIHtcclxuICAgICAgY29uc3QgZWxlbWVudHMgPSBjaGFydC5nZXRFbGVtZW50c0F0RXZlbnRGb3JNb2RlKFxyXG4gICAgICAgIGV2ZW50LFxyXG4gICAgICAgIFwibmVhcmVzdFwiLFxyXG4gICAgICAgIHsgaW50ZXJzZWN0OiB0cnVlIH0sXHJcbiAgICAgICAgZmFsc2VcclxuICAgICAgKTtcclxuICAgICAgaWYgKGVsZW1lbnRzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICBjb25zdCBjbGlja2VkSXRlbXMgPSBjaGFydC50b29sdGlwPy5kYXRhUG9pbnRzPy5tYXAoKGl0ZW0pID0+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgZGF0YXNldEluZGV4OiBpdGVtLmRhdGFzZXRJbmRleCxcclxuICAgICAgICAgIGl0ZW1JbmRleDogaXRlbS5kYXRhSW5kZXgsXHJcbiAgICAgICAgICBlbGVtZW50OiBpdGVtLmVsZW1lbnQsXHJcbiAgICAgICAgfTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgICB0aGlzLm9uRGF0YUNsaWNrZWQuZW1pdCh7IGV2ZW50LCBjbGlja2VkSXRlbXMgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRCYXNlNjRJbWFnZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmNoYXJ0Py5nZXRCYXNlNjRJbWFnZSgpO1xyXG4gIH1cclxuXHJcbiAgcmVmcmVzaCgpIHtcclxuICAgIHJldHVybiB0aGlzLmNoYXJ0Py5yZWZyZXNoKCk7XHJcbiAgfVxyXG5cclxuICBnZXRDaGFydCgpIHtcclxuICAgIHJldHVybiB0aGlzLmNoYXJ0Py5jaGFydDtcclxuICB9XHJcbn1cclxuIiwiQGlmKGNvbXBMaWIgPT09IGNvbXBvbmVudExpYnJhcnkuUFJJTUVORykge1xyXG48cC1jaGFydFxyXG4gICNjaGFydEpTUmVmXHJcbiAgW3R5cGVdPVwidHlwZVwiXHJcbiAgW2RhdGFdPVwiZGF0YVwiXHJcbiAgW29wdGlvbnNdPVwib3B0aW9uc1wiXHJcbiAgKG9uRGF0YVNlbGVjdCk9XCJvbkRhdGFTZWxlY3QoJGV2ZW50KVwiXHJcbiAgKGNsaWNrKT1cImhhbmRsZUNoYXJ0Q2xpY2soJGV2ZW50KVwiXHJcbiAgKGNsaWNrKT1cImhhbmRsZU9uRGF0YUNsaWNrZWQoJGV2ZW50KVwiXHJcbi8+XHJcbn0gQGVsc2Uge1xyXG48cD5Pbmx5IFByaW1lTmcgY29tcG9uZW50IGxpYnJhcnkgaXMgc3VwcG9ydGVkPC9wPlxyXG59XHJcbiJdfQ==
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { InjectionToken, Injectable, Inject, Optional, EventEmitter, Component, Input, Output, NgModule } from '@angular/core';
|
|
2
|
+
import { InjectionToken, Injectable, Inject, Optional, EventEmitter, Component, ViewChild, Input, Output, NgModule } from '@angular/core';
|
|
3
3
|
import { BrowserModule } from '@angular/platform-browser';
|
|
4
4
|
import * as i2 from 'primeng/chart';
|
|
5
5
|
import { ChartModule } from 'primeng/chart';
|
|
@@ -348,18 +348,30 @@ class SmartChartComponent {
|
|
|
348
348
|
this.onDataClicked.emit({ event, clickedItems });
|
|
349
349
|
}
|
|
350
350
|
}
|
|
351
|
+
getBase64Image() {
|
|
352
|
+
return this.chart?.getBase64Image();
|
|
353
|
+
}
|
|
354
|
+
refresh() {
|
|
355
|
+
return this.chart?.refresh();
|
|
356
|
+
}
|
|
357
|
+
getChart() {
|
|
358
|
+
return this.chart?.chart;
|
|
359
|
+
}
|
|
351
360
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartChartComponent, deps: [{ token: DefaultChartOptionsProvider }, { token: COMPONENT_LIBRARY, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
352
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.11", type: SmartChartComponent, selector: "smart-chart", inputs: { diagramUiModel: "diagramUiModel", options: "options" }, outputs: { dataSelect: "dataSelect", chartClick: "chartClick", onDataClicked: "onDataClicked" }, ngImport: i0, template: "@if(compLib === componentLibrary.PRIMENG) {\r\n<p-chart\r\n [type]=\"type\"\r\n [data]=\"data\"\r\n [options]=\"options\"\r\n (onDataSelect)=\"onDataSelect($event)\"\r\n (click)=\"handleChartClick($event)\"\r\n (click)=\"handleOnDataClicked($event)\"\r\n/>\r\n} @else {\r\n<p>Only PrimeNg component library is supported</p>\r\n}\r\n", styles: [""], dependencies: [{ kind: "component", type: i2.UIChart, selector: "p-chart", inputs: ["type", "plugins", "width", "height", "responsive", "ariaLabel", "ariaLabelledBy", "data", "options"], outputs: ["onDataSelect"] }] }); }
|
|
361
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.11", type: SmartChartComponent, selector: "smart-chart", inputs: { diagramUiModel: "diagramUiModel", options: "options" }, outputs: { dataSelect: "dataSelect", chartClick: "chartClick", onDataClicked: "onDataClicked" }, viewQueries: [{ propertyName: "chart", first: true, predicate: ["chartJSRef"], descendants: true }], ngImport: i0, template: "@if(compLib === componentLibrary.PRIMENG) {\r\n<p-chart\r\n #chartJSRef\r\n [type]=\"type\"\r\n [data]=\"data\"\r\n [options]=\"options\"\r\n (onDataSelect)=\"onDataSelect($event)\"\r\n (click)=\"handleChartClick($event)\"\r\n (click)=\"handleOnDataClicked($event)\"\r\n/>\r\n} @else {\r\n<p>Only PrimeNg component library is supported</p>\r\n}\r\n", styles: [""], dependencies: [{ kind: "component", type: i2.UIChart, selector: "p-chart", inputs: ["type", "plugins", "width", "height", "responsive", "ariaLabel", "ariaLabelledBy", "data", "options"], outputs: ["onDataSelect"] }] }); }
|
|
353
362
|
}
|
|
354
363
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartChartComponent, decorators: [{
|
|
355
364
|
type: Component,
|
|
356
|
-
args: [{ selector: "smart-chart", template: "@if(compLib === componentLibrary.PRIMENG) {\r\n<p-chart\r\n [type]=\"type\"\r\n [data]=\"data\"\r\n [options]=\"options\"\r\n (onDataSelect)=\"onDataSelect($event)\"\r\n (click)=\"handleChartClick($event)\"\r\n (click)=\"handleOnDataClicked($event)\"\r\n/>\r\n} @else {\r\n<p>Only PrimeNg component library is supported</p>\r\n}\r\n" }]
|
|
365
|
+
args: [{ selector: "smart-chart", template: "@if(compLib === componentLibrary.PRIMENG) {\r\n<p-chart\r\n #chartJSRef\r\n [type]=\"type\"\r\n [data]=\"data\"\r\n [options]=\"options\"\r\n (onDataSelect)=\"onDataSelect($event)\"\r\n (click)=\"handleChartClick($event)\"\r\n (click)=\"handleOnDataClicked($event)\"\r\n/>\r\n} @else {\r\n<p>Only PrimeNg component library is supported</p>\r\n}\r\n" }]
|
|
357
366
|
}], ctorParameters: () => [{ type: DefaultChartOptionsProvider }, { type: ComponentLibrary, decorators: [{
|
|
358
367
|
type: Inject,
|
|
359
368
|
args: [COMPONENT_LIBRARY]
|
|
360
369
|
}, {
|
|
361
370
|
type: Optional
|
|
362
|
-
}] }], propDecorators: {
|
|
371
|
+
}] }], propDecorators: { chart: [{
|
|
372
|
+
type: ViewChild,
|
|
373
|
+
args: ["chartJSRef"]
|
|
374
|
+
}], diagramUiModel: [{
|
|
363
375
|
type: Input
|
|
364
376
|
}], options: [{
|
|
365
377
|
type: Input
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smartbit4all-ng-client-src-lib-smart-chart.mjs","sources":["../../../projects/smart-ng-client/src/lib/smart-chart/default-chart-options.provider.ts","../../../projects/smart-ng-client/src/lib/view-context/utility/componentLibrary.ts","../../../projects/smart-ng-client/src/lib/smart-chart/smart-chart.component.ts","../../../projects/smart-ng-client/src/lib/smart-chart/smart-chart.component.html","../../../projects/smart-ng-client/src/lib/smart-chart/smart-chart.module.ts","../../../projects/smart-ng-client/src/lib/smart-chart/api/model/chartOrientation.ts","../../../projects/smart-ng-client/src/lib/smart-chart/api/model/chartType.ts","../../../projects/smart-ng-client/src/lib/smart-chart/api/model/chartValue.ts","../../../projects/smart-ng-client/src/lib/smart-chart/api/model/diagramDataItem.ts","../../../projects/smart-ng-client/src/lib/smart-chart/api/model/diagramDataSetConstructionInstruction.ts","../../../projects/smart-ng-client/src/lib/smart-chart/api/model/diagramDescriptor.ts","../../../projects/smart-ng-client/src/lib/smart-chart/api/model/pieChartLegendPosition.ts","../../../projects/smart-ng-client/src/lib/smart-chart-projects.ts","../../../projects/smart-ng-client/src/lib/smartbit4all-ng-client-src-lib-smart-chart.ts"],"sourcesContent":["import { Injectable, InjectionToken, Optional, Inject } from '@angular/core';\r\nimport { DiagramDataContainer } from './api';\r\n\r\nexport const CUSTOM_CHART_OPTIONS = new InjectionToken<ChartJsFactory>('CUSTOM_CHART_OPTIONS');\r\n\r\nexport interface ChartJsFactory {\r\n readonly chartType: string;\r\n readonly chartJsType: string;\r\n createOptions(chartData: DiagramDataContainer): any;\r\n transformData(chartData: DiagramDataContainer): any;\r\n}\r\n\r\nexport function transformDataToBasicDataSets(chartData: DiagramDataContainer): any {\r\n return {\r\n labels: chartData.labels,\r\n datasets: chartData.items.map((dataset) => {\r\n const color = dataset.dataSetcolor || generateRandomColor();\r\n return {\r\n data: dataset.items.map((item) => item.xValue),\r\n label: dataset.label,\r\n backgroundColor: color,\r\n borderColor: color,\r\n };\r\n }),\r\n };\r\n}\r\n\r\nexport function transformDataToBarLikeDataSet(chartData: DiagramDataContainer): any {\r\n return {\r\n labels: chartData.labels,\r\n datasets: chartData.items.map((dataset) => {\r\n return {\r\n data: dataset.items.map((item) => item.xValue),\r\n label: dataset.label,\r\n backgroundColor: dataset.items.map((item) => item.itemColor || generateRandomColor()),\r\n borderColor: dataset.items.map((item) => item.itemColor || generateRandomColor()),\r\n };\r\n }),\r\n };\r\n}\r\n\r\nexport function transformDataToScatter(chartData: DiagramDataContainer): any {\r\n return {\r\n datasets: chartData.items.map((dataset) => {\r\n const color = dataset.dataSetcolor || generateRandomColor();\r\n return {\r\n label: dataset.label,\r\n data: dataset.items.map((item) => ({\r\n x: item.xValue,\r\n y: item.yValue,\r\n })),\r\n backgroundColor: color,\r\n borderColor: color,\r\n };\r\n }),\r\n };\r\n}\r\n\r\nexport function transformDataToBubble(chartData: DiagramDataContainer): any {\r\n return {\r\n datasets: chartData.items.map((dataset) => {\r\n const color = dataset.dataSetcolor || generateRandomColor();\r\n return {\r\n label: dataset.label,\r\n data: dataset.items.map((item) => ({\r\n x: item.xValue,\r\n y: item.yValue,\r\n r: item.rValue ?? 5,\r\n })),\r\n backgroundColor: color,\r\n borderColor: color,\r\n };\r\n }),\r\n };\r\n}\r\n\r\nexport const barChart: ChartJsFactory = {\r\n chartType: 'bar',\r\n chartJsType: 'bar',\r\n createOptions: () => {\r\n return {};\r\n },\r\n transformData: transformDataToBarLikeDataSet,\r\n};\r\n\r\nexport const horizontalBarChart: ChartJsFactory = {\r\n chartType: 'horizontalBar',\r\n chartJsType: 'bar',\r\n createOptions: () => {\r\n return {\r\n indexAxis: 'y',\r\n };\r\n },\r\n transformData: transformDataToBarLikeDataSet,\r\n};\r\n\r\nexport const radarChart: ChartJsFactory = {\r\n chartType: 'radar',\r\n chartJsType: 'radar',\r\n createOptions: () => {\r\n return {};\r\n },\r\n transformData: (chartData: DiagramDataContainer): any => {\r\n return {\r\n labels: chartData.labels,\r\n datasets: chartData.items.map((dataset) => ({\r\n data: dataset.items.map((item) => item.xValue),\r\n label: dataset.label,\r\n borderColor: dataset.dataSetcolor,\r\n pointBackgroundColor: dataset.dataSetcolor,\r\n pointBorderColor: dataset.dataSetcolor,\r\n pointHoverBackgroundColor: '#000000',\r\n pointHoverBorderColor: dataset.dataSetcolor,\r\n })),\r\n };\r\n },\r\n};\r\n\r\nexport const stackedBarChart: ChartJsFactory = {\r\n chartType: 'stackedBar',\r\n chartJsType: 'bar',\r\n createOptions: () => {\r\n return {\r\n scales: {\r\n x: {\r\n stacked: true,\r\n },\r\n y: {\r\n stacked: true,\r\n },\r\n },\r\n };\r\n },\r\n transformData: transformDataToBasicDataSets,\r\n};\r\n\r\nexport const pieChart: ChartJsFactory = {\r\n chartType: 'pie',\r\n chartJsType: 'pie',\r\n createOptions: () => {\r\n return {};\r\n },\r\n transformData: transformDataToBarLikeDataSet,\r\n};\r\n\r\nexport const doughnutChart: ChartJsFactory = {\r\n chartType: 'doughnut',\r\n chartJsType: 'doughnut',\r\n createOptions: () => {\r\n return {};\r\n },\r\n transformData: transformDataToBarLikeDataSet,\r\n};\r\n\r\nexport const scatterChart: ChartJsFactory = {\r\n chartType: 'scatter',\r\n chartJsType: 'scatter',\r\n createOptions: () => {\r\n return {};\r\n },\r\n transformData: transformDataToScatter,\r\n};\r\n\r\nexport const bubbleChart: ChartJsFactory = {\r\n chartType: 'bubble',\r\n chartJsType: 'bubble',\r\n createOptions: () => {\r\n return {};\r\n },\r\n transformData: transformDataToBubble,\r\n};\r\n\r\nexport const multiAxisLineChart: ChartJsFactory = {\r\n chartType: 'multiAxisLine',\r\n chartJsType: 'line',\r\n createOptions: (chartData: DiagramDataContainer): any => {\r\n const yAxes = chartData.items.map((dataset, index) => ({\r\n id: `y${index == 1 ? '' : index}`,\r\n type: 'linear',\r\n position: index % 2 === 0 ? 'left' : 'right',\r\n }));\r\n return {\r\n scales: {\r\n ...yAxes.reduce((acc: any, axis) => {\r\n acc[axis.id] = axis;\r\n return acc;\r\n }, {}),\r\n },\r\n };\r\n },\r\n transformData: (chartData: DiagramDataContainer): any => {\r\n return {\r\n labels: chartData.labels,\r\n datasets: chartData.items.map((dataset, index) => ({\r\n data: dataset.items.map((item) => item.xValue),\r\n label: dataset.label,\r\n yAxisID: `y${index == 1 ? '' : index}`,\r\n backgroundColor: dataset.dataSetcolor,\r\n borderColor: dataset.dataSetcolor,\r\n })),\r\n };\r\n },\r\n};\r\n\r\nexport const polarAreaChart: ChartJsFactory = {\r\n chartType: 'polarArea',\r\n chartJsType: 'polarArea',\r\n createOptions: () => {\r\n return {};\r\n },\r\n transformData: (chartData: DiagramDataContainer): any => {\r\n return {\r\n labels: chartData.labels,\r\n datasets: chartData.items.map((dataset) => ({\r\n data: dataset.items.map((item) => item.xValue),\r\n label: dataset.label,\r\n borderColor: dataset.items.map((item) => item.itemColor),\r\n backgroundColor: dataset.items.map((item) => item.itemColor),\r\n })),\r\n };\r\n },\r\n};\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class DefaultChartOptionsProvider {\r\n private readonly factoriesByType: Map<string, ChartJsFactory>;\r\n constructor(@Inject(CUSTOM_CHART_OPTIONS) @Optional() factories: ChartJsFactory[] | undefined) {\r\n this.factoriesByType = new Map(factories?.map((f) => [f.chartType, f]) ?? []);\r\n }\r\n\r\n getFactory(chartType: string): ChartJsFactory {\r\n return (\r\n this.factoriesByType.get(chartType) ?? {\r\n chartType: chartType,\r\n chartJsType: chartType,\r\n transformData: transformDataToBasicDataSets,\r\n createOptions: () => {\r\n return {};\r\n },\r\n }\r\n );\r\n }\r\n}\r\n\r\nfunction generateRandomColor(): string {\r\n const random = Math.floor(Math.random() * 16777215).toString(16);\r\n return `#${'000000'.substring(0, 6 - random.length) + random}`;\r\n}\r\n","// lib/view-context/utility/componentLibrary.ts\r\nimport { InjectionToken } from '@angular/core';\r\n\r\nexport enum ComponentLibrary {\r\n MATERIAL = 'material',\r\n PRIMENG = 'primeng',\r\n}\r\n\r\nexport const COMPONENT_LIBRARY = new InjectionToken<ComponentLibrary>('COMPONENT_LIBRARY');\r\n","import {\r\n Component,\r\n EventEmitter,\r\n Inject,\r\n Input,\r\n Optional,\r\n Output,\r\n ViewChild,\r\n} from \"@angular/core\";\r\nimport { DefaultChartOptionsProvider } from \"./default-chart-options.provider\";\r\nimport { DiagramDescriptor, DiagramUiModel } from \"./api\";\r\nimport {\r\n COMPONENT_LIBRARY,\r\n ComponentLibrary,\r\n} from \"../view-context/utility/componentLibrary\";\r\nimport { Chart } from \"chart.js\";\r\nimport { UIChart } from \"primeng/chart\";\r\n\r\n@Component({\r\n selector: \"smart-chart\",\r\n templateUrl: \"./smart-chart.component.html\",\r\n styleUrls: [\"./smart-chart.component.css\"],\r\n})\r\nexport class SmartChartComponent {\r\n @Input() diagramUiModel!: DiagramUiModel;\r\n @Input() options?: any;\r\n\r\n @Output() dataSelect = new EventEmitter<any>();\r\n @Output() chartClick = new EventEmitter<any>();\r\n @Output() onDataClicked = new EventEmitter<any>(); //\r\n\r\n data: any;\r\n type: any;\r\n\r\n compLib: ComponentLibrary;\r\n componentLibrary = ComponentLibrary;\r\n\r\n constructor(\r\n private chartOptionProvider: DefaultChartOptionsProvider,\r\n @Inject(COMPONENT_LIBRARY) @Optional() compLib?: ComponentLibrary\r\n ) {\r\n this.compLib = compLib ?? ComponentLibrary.PRIMENG;\r\n }\r\n ngOnInit() {\r\n let options = undefined;\r\n const diagramType = !!this.diagramUiModel.Descriptor?.diagramType\r\n ? this.diagramUiModel.Descriptor.diagramType\r\n : \"\";\r\n\r\n const factory = this.chartOptionProvider.getFactory(diagramType);\r\n this.type = factory.chartJsType;\r\n options = factory.createOptions(this.diagramUiModel.DiagramData!);\r\n if (this.diagramUiModel.Descriptor) {\r\n options = this.deepMerge(\r\n this.convertBackendOptions(this.diagramUiModel.Descriptor),\r\n options\r\n );\r\n }\r\n if (this.options) {\r\n options = this.deepMerge(this.options, options);\r\n }\r\n\r\n this.options = options;\r\n this.data = factory.transformData(this.diagramUiModel.DiagramData!);\r\n }\r\n\r\n private deepMerge(target: any, source: any): any {\r\n for (const key of Object.keys(source)) {\r\n if (source[key] instanceof Object && target[key]) {\r\n Object.assign(source[key], this.deepMerge(target[key], source[key]));\r\n }\r\n }\r\n Object.assign(target || {}, source);\r\n return target;\r\n }\r\n\r\n private convertBackendOptions(descriptor: DiagramDescriptor) {\r\n const options: any = {\r\n plugins: {\r\n legend: {\r\n display: descriptor.showLegendForChart ?? true,\r\n },\r\n },\r\n scales: {} as any,\r\n };\r\n if (\r\n descriptor.diagramMinX !== undefined &&\r\n descriptor.diagramMaxX !== undefined\r\n ) {\r\n options.scales.x = {\r\n ticks: {\r\n display: descriptor.showLabelsForXAxis ?? true,\r\n },\r\n min: descriptor.diagramMinX,\r\n max: descriptor.diagramMaxX,\r\n };\r\n } else {\r\n options.scales.x = {\r\n ticks: {\r\n display: descriptor.showLabelsForXAxis ?? true,\r\n },\r\n };\r\n }\r\n if (\r\n descriptor.diagramMinY !== undefined &&\r\n descriptor.diagramMaxY !== undefined\r\n ) {\r\n options.scales.y = {\r\n ticks: {\r\n display: descriptor.showLabelsForYAxis ?? true,\r\n },\r\n min: descriptor.diagramMinY,\r\n max: descriptor.diagramMaxY,\r\n };\r\n } else {\r\n options.scales.y = {\r\n ticks: {\r\n display: descriptor.showLabelsForYAxis ?? true,\r\n },\r\n };\r\n }\r\n return options;\r\n }\r\n\r\n onDataSelect(event: any) {\r\n this.dataSelect.emit(event);\r\n }\r\n\r\n handleChartClick(event: any): void {\r\n this.chartClick.emit(event);\r\n }\r\n\r\n handleOnDataClicked(event: any): void {\r\n const canvas = event.target as HTMLCanvasElement;\r\n const chart = Chart.getChart(canvas);\r\n\r\n if (chart) {\r\n const elements = chart.getElementsAtEventForMode(\r\n event,\r\n \"nearest\",\r\n { intersect: true },\r\n false\r\n );\r\n if (elements.length === 0) {\r\n return;\r\n }\r\n const clickedItems = chart.tooltip?.dataPoints?.map((item) => {\r\n return {\r\n datasetIndex: item.datasetIndex,\r\n itemIndex: item.dataIndex,\r\n element: item.element,\r\n };\r\n });\r\n\r\n this.onDataClicked.emit({ event, clickedItems });\r\n }\r\n }\r\n}\r\n","@if(compLib === componentLibrary.PRIMENG) {\r\n<p-chart\r\n [type]=\"type\"\r\n [data]=\"data\"\r\n [options]=\"options\"\r\n (onDataSelect)=\"onDataSelect($event)\"\r\n (click)=\"handleChartClick($event)\"\r\n (click)=\"handleOnDataClicked($event)\"\r\n/>\r\n} @else {\r\n<p>Only PrimeNg component library is supported</p>\r\n}\r\n","import { ModuleWithProviders, NgModule, Provider } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { ChartModule } from 'primeng/chart';\r\nimport {\r\n barChart,\r\n bubbleChart,\r\n CUSTOM_CHART_OPTIONS,\r\n DefaultChartOptionsProvider,\r\n doughnutChart,\r\n horizontalBarChart,\r\n multiAxisLineChart,\r\n pieChart,\r\n polarAreaChart,\r\n radarChart,\r\n scatterChart,\r\n stackedBarChart,\r\n} from './default-chart-options.provider';\r\nimport { SmartChartComponent } from './smart-chart.component';\r\n\r\nconst DEFAULT_PROVIDERS: Provider[] = [\r\n DefaultChartOptionsProvider,\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: barChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: scatterChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: bubbleChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: horizontalBarChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: stackedBarChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: multiAxisLineChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: polarAreaChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: radarChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: doughnutChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: pieChart, multi: true },\r\n];\r\n\r\n@NgModule({\r\n declarations: [SmartChartComponent],\r\n imports: [BrowserModule, ChartModule],\r\n exports: [SmartChartComponent],\r\n})\r\nexport class SmartChartModule {\r\n static forRoot(providers: Provider[]): ModuleWithProviders<SmartChartModule> {\r\n return {\r\n ngModule: SmartChartModule,\r\n providers: [...DEFAULT_PROVIDERS, ...providers],\r\n };\r\n }\r\n}\r\n","/**\r\n * Chart API\r\n * API for consume charts.\r\n *\r\n * The version of the OpenAPI document: 1.0.0\r\n * Contact: info@it4all.hu\r\n *\r\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\r\n * https://openapi-generator.tech\r\n * Do not edit the class manually.\r\n */\r\n\r\n\r\nexport type ChartOrientation = 'Horizontal' | 'Vertical';\r\n\r\nexport const ChartOrientation = {\r\n Horizontal: 'Horizontal' as ChartOrientation,\r\n Vertical: 'Vertical' as ChartOrientation\r\n};\r\n\r\n","/**\r\n * Chart API\r\n * API for consume charts.\r\n *\r\n * The version of the OpenAPI document: 1.0.0\r\n * Contact: info@it4all.hu\r\n *\r\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\r\n * https://openapi-generator.tech\r\n * Do not edit the class manually.\r\n */\r\n\r\n\r\nexport type ChartType = 'BarChart' | 'GroupedBarChart' | 'StackedBarChart' | 'NormalizedBarChart' | 'PieChart' | 'AdvancedPieChart' | 'PieGrid';\r\n\r\nexport const ChartType = {\r\n BarChart: 'BarChart' as ChartType,\r\n GroupedBarChart: 'GroupedBarChart' as ChartType,\r\n StackedBarChart: 'StackedBarChart' as ChartType,\r\n NormalizedBarChart: 'NormalizedBarChart' as ChartType,\r\n PieChart: 'PieChart' as ChartType,\r\n AdvancedPieChart: 'AdvancedPieChart' as ChartType,\r\n PieGrid: 'PieGrid' as ChartType\r\n};\r\n\r\n","/**\r\n * Chart API\r\n * API for consume charts.\r\n *\r\n * The version of the OpenAPI document: 1.0.0\r\n * Contact: info@it4all.hu\r\n *\r\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\r\n * https://openapi-generator.tech\r\n * Do not edit the class manually.\r\n */\r\n\r\n\r\nexport interface ChartValue { \r\n name: string;\r\n value?: object;\r\n series: Array<ChartValue>;\r\n}\r\n\r\n","/**\r\n * Chart API\r\n * API for consume charts.\r\n *\r\n * The version of the OpenAPI document: 1.0.0\r\n * Contact: info@it4all.hu\r\n *\r\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\r\n * https://openapi-generator.tech\r\n * Do not edit the class manually.\r\n */\r\n\r\n\r\n/**\r\n * Contains an items data, based on the type of the diagram.\r\n */\r\nexport interface DiagramDataItem { \r\n uri?: string;\r\n label?: string;\r\n xValue?: number;\r\n yValue?: number;\r\n /**\r\n * This property specifies the radius of each bubble in a bubble chart. It is used to determine the size of the bubbles relative to their data values.\r\n */\r\n rValue?: number;\r\n itemColor?: string;\r\n}\r\n\r\n","/**\r\n * Chart API\r\n * API for consume charts.\r\n *\r\n * The version of the OpenAPI document: 1.0.0\r\n * Contact: info@it4all.hu\r\n *\r\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\r\n * https://openapi-generator.tech\r\n * Do not edit the class manually.\r\n */\r\n\r\n\r\nexport interface DiagramDataSetConstructionInstruction { \r\n xValuePath?: Array<string>;\r\n yValuePath?: Array<string>;\r\n rValuePath?: Array<string>;\r\n labelValuePath?: Array<string>;\r\n colorValuePath?: Array<string>;\r\n loadLatest?: boolean;\r\n dataSetLabel?: string;\r\n dataSetType?: string;\r\n}\r\n\r\n","/**\r\n * Chart API\r\n * API for consume charts.\r\n *\r\n * The version of the OpenAPI document: 1.0.0\r\n * Contact: info@it4all.hu\r\n *\r\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\r\n * https://openapi-generator.tech\r\n * Do not edit the class manually.\r\n */\r\n\r\n\r\n/**\r\n * A descriptor for the diagram.\r\n */\r\nexport interface DiagramDescriptor { \r\n uri?: string;\r\n /**\r\n * The type of the diagram.\r\n */\r\n diagramType?: string;\r\n /**\r\n * Specifies the starting point for rendering the chart\\'s X-axis. For example, if the minimum X value in the dataset is -30 and this property is set to -35, an extra \\\"padding\\\" of 5 units will be added below the lowest data point.\r\n */\r\n diagramMinX?: number;\r\n /**\r\n * Specifies the ending point for rendering the chart\\'s X-axis. For instance, if the maximum X value in the dataset is 30 and this property is set to 35, an additional \\\"padding\\\" of 5 units will be added above the highest data point.\r\n */\r\n diagramMaxX?: number;\r\n /**\r\n * Specifies the starting point for rendering the chart\\'s Y-axis. For example, if the minimum Y value in the dataset is -30 and this property is set to -35, an extra \\\"padding\\\" of 5 units will be added below the lowest data point.\r\n */\r\n diagramMinY?: number;\r\n /**\r\n * Specifies the ending point for rendering the chart\\'s Y-axis. For instance, if the maximum Y value in the dataset is 30 and this property is set to 35, an additional \\\"padding\\\" of 5 units will be added above the highest data point.\r\n */\r\n diagramMaxY?: number;\r\n /**\r\n * Determines whether the labels on the X-Axis are displayed on the chart. Set to `true` to show the labels, or `false` to hide them.\r\n */\r\n showLabelsForXAxis?: boolean;\r\n /**\r\n * Determines whether the labels on the Y-Axis are displayed on the chart. Set to `true` to show the labels, or `false` to hide them.\r\n */\r\n showLabelsForYAxis?: boolean;\r\n /**\r\n * Determines whether the legend for the chart is displayed. Set to `true` to show the legend, or `false` to hide it.\r\n */\r\n showLegendForChart?: boolean;\r\n}\r\n\r\n","/**\r\n * Chart API\r\n * API for consume charts.\r\n *\r\n * The version of the OpenAPI document: 1.0.0\r\n * Contact: info@it4all.hu\r\n *\r\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\r\n * https://openapi-generator.tech\r\n * Do not edit the class manually.\r\n */\r\n\r\n\r\nexport type PieChartLegendPosition = 'right' | 'below';\r\n\r\nexport const PieChartLegendPosition = {\r\n Right: 'right' as PieChartLegendPosition,\r\n Below: 'below' as PieChartLegendPosition\r\n};\r\n\r\n","/*\r\n * Public API Surface of smart-chart\r\n */\r\n\r\nexport * from './smart-chart/smart-chart.module';\r\nexport * from './smart-chart/smart-chart.component';\r\nexport * from './smart-chart/api/model/models';\r\nexport * from './smart-chart/default-chart-options.provider';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './smart-chart-projects';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"smartbit4all-ng-client-src-lib-smart-chart.mjs","sources":["../../../projects/smart-ng-client/src/lib/smart-chart/default-chart-options.provider.ts","../../../projects/smart-ng-client/src/lib/view-context/utility/componentLibrary.ts","../../../projects/smart-ng-client/src/lib/smart-chart/smart-chart.component.ts","../../../projects/smart-ng-client/src/lib/smart-chart/smart-chart.component.html","../../../projects/smart-ng-client/src/lib/smart-chart/smart-chart.module.ts","../../../projects/smart-ng-client/src/lib/smart-chart/api/model/chartOrientation.ts","../../../projects/smart-ng-client/src/lib/smart-chart/api/model/chartType.ts","../../../projects/smart-ng-client/src/lib/smart-chart/api/model/chartValue.ts","../../../projects/smart-ng-client/src/lib/smart-chart/api/model/diagramDataItem.ts","../../../projects/smart-ng-client/src/lib/smart-chart/api/model/diagramDataSetConstructionInstruction.ts","../../../projects/smart-ng-client/src/lib/smart-chart/api/model/diagramDescriptor.ts","../../../projects/smart-ng-client/src/lib/smart-chart/api/model/pieChartLegendPosition.ts","../../../projects/smart-ng-client/src/lib/smart-chart-projects.ts","../../../projects/smart-ng-client/src/lib/smartbit4all-ng-client-src-lib-smart-chart.ts"],"sourcesContent":["import { Injectable, InjectionToken, Optional, Inject } from '@angular/core';\r\nimport { DiagramDataContainer } from './api';\r\n\r\nexport const CUSTOM_CHART_OPTIONS = new InjectionToken<ChartJsFactory>('CUSTOM_CHART_OPTIONS');\r\n\r\nexport interface ChartJsFactory {\r\n readonly chartType: string;\r\n readonly chartJsType: string;\r\n createOptions(chartData: DiagramDataContainer): any;\r\n transformData(chartData: DiagramDataContainer): any;\r\n}\r\n\r\nexport function transformDataToBasicDataSets(chartData: DiagramDataContainer): any {\r\n return {\r\n labels: chartData.labels,\r\n datasets: chartData.items.map((dataset) => {\r\n const color = dataset.dataSetcolor || generateRandomColor();\r\n return {\r\n data: dataset.items.map((item) => item.xValue),\r\n label: dataset.label,\r\n backgroundColor: color,\r\n borderColor: color,\r\n };\r\n }),\r\n };\r\n}\r\n\r\nexport function transformDataToBarLikeDataSet(chartData: DiagramDataContainer): any {\r\n return {\r\n labels: chartData.labels,\r\n datasets: chartData.items.map((dataset) => {\r\n return {\r\n data: dataset.items.map((item) => item.xValue),\r\n label: dataset.label,\r\n backgroundColor: dataset.items.map((item) => item.itemColor || generateRandomColor()),\r\n borderColor: dataset.items.map((item) => item.itemColor || generateRandomColor()),\r\n };\r\n }),\r\n };\r\n}\r\n\r\nexport function transformDataToScatter(chartData: DiagramDataContainer): any {\r\n return {\r\n datasets: chartData.items.map((dataset) => {\r\n const color = dataset.dataSetcolor || generateRandomColor();\r\n return {\r\n label: dataset.label,\r\n data: dataset.items.map((item) => ({\r\n x: item.xValue,\r\n y: item.yValue,\r\n })),\r\n backgroundColor: color,\r\n borderColor: color,\r\n };\r\n }),\r\n };\r\n}\r\n\r\nexport function transformDataToBubble(chartData: DiagramDataContainer): any {\r\n return {\r\n datasets: chartData.items.map((dataset) => {\r\n const color = dataset.dataSetcolor || generateRandomColor();\r\n return {\r\n label: dataset.label,\r\n data: dataset.items.map((item) => ({\r\n x: item.xValue,\r\n y: item.yValue,\r\n r: item.rValue ?? 5,\r\n })),\r\n backgroundColor: color,\r\n borderColor: color,\r\n };\r\n }),\r\n };\r\n}\r\n\r\nexport const barChart: ChartJsFactory = {\r\n chartType: 'bar',\r\n chartJsType: 'bar',\r\n createOptions: () => {\r\n return {};\r\n },\r\n transformData: transformDataToBarLikeDataSet,\r\n};\r\n\r\nexport const horizontalBarChart: ChartJsFactory = {\r\n chartType: 'horizontalBar',\r\n chartJsType: 'bar',\r\n createOptions: () => {\r\n return {\r\n indexAxis: 'y',\r\n };\r\n },\r\n transformData: transformDataToBarLikeDataSet,\r\n};\r\n\r\nexport const radarChart: ChartJsFactory = {\r\n chartType: 'radar',\r\n chartJsType: 'radar',\r\n createOptions: () => {\r\n return {};\r\n },\r\n transformData: (chartData: DiagramDataContainer): any => {\r\n return {\r\n labels: chartData.labels,\r\n datasets: chartData.items.map((dataset) => ({\r\n data: dataset.items.map((item) => item.xValue),\r\n label: dataset.label,\r\n borderColor: dataset.dataSetcolor,\r\n pointBackgroundColor: dataset.dataSetcolor,\r\n pointBorderColor: dataset.dataSetcolor,\r\n pointHoverBackgroundColor: '#000000',\r\n pointHoverBorderColor: dataset.dataSetcolor,\r\n })),\r\n };\r\n },\r\n};\r\n\r\nexport const stackedBarChart: ChartJsFactory = {\r\n chartType: 'stackedBar',\r\n chartJsType: 'bar',\r\n createOptions: () => {\r\n return {\r\n scales: {\r\n x: {\r\n stacked: true,\r\n },\r\n y: {\r\n stacked: true,\r\n },\r\n },\r\n };\r\n },\r\n transformData: transformDataToBasicDataSets,\r\n};\r\n\r\nexport const pieChart: ChartJsFactory = {\r\n chartType: 'pie',\r\n chartJsType: 'pie',\r\n createOptions: () => {\r\n return {};\r\n },\r\n transformData: transformDataToBarLikeDataSet,\r\n};\r\n\r\nexport const doughnutChart: ChartJsFactory = {\r\n chartType: 'doughnut',\r\n chartJsType: 'doughnut',\r\n createOptions: () => {\r\n return {};\r\n },\r\n transformData: transformDataToBarLikeDataSet,\r\n};\r\n\r\nexport const scatterChart: ChartJsFactory = {\r\n chartType: 'scatter',\r\n chartJsType: 'scatter',\r\n createOptions: () => {\r\n return {};\r\n },\r\n transformData: transformDataToScatter,\r\n};\r\n\r\nexport const bubbleChart: ChartJsFactory = {\r\n chartType: 'bubble',\r\n chartJsType: 'bubble',\r\n createOptions: () => {\r\n return {};\r\n },\r\n transformData: transformDataToBubble,\r\n};\r\n\r\nexport const multiAxisLineChart: ChartJsFactory = {\r\n chartType: 'multiAxisLine',\r\n chartJsType: 'line',\r\n createOptions: (chartData: DiagramDataContainer): any => {\r\n const yAxes = chartData.items.map((dataset, index) => ({\r\n id: `y${index == 1 ? '' : index}`,\r\n type: 'linear',\r\n position: index % 2 === 0 ? 'left' : 'right',\r\n }));\r\n return {\r\n scales: {\r\n ...yAxes.reduce((acc: any, axis) => {\r\n acc[axis.id] = axis;\r\n return acc;\r\n }, {}),\r\n },\r\n };\r\n },\r\n transformData: (chartData: DiagramDataContainer): any => {\r\n return {\r\n labels: chartData.labels,\r\n datasets: chartData.items.map((dataset, index) => ({\r\n data: dataset.items.map((item) => item.xValue),\r\n label: dataset.label,\r\n yAxisID: `y${index == 1 ? '' : index}`,\r\n backgroundColor: dataset.dataSetcolor,\r\n borderColor: dataset.dataSetcolor,\r\n })),\r\n };\r\n },\r\n};\r\n\r\nexport const polarAreaChart: ChartJsFactory = {\r\n chartType: 'polarArea',\r\n chartJsType: 'polarArea',\r\n createOptions: () => {\r\n return {};\r\n },\r\n transformData: (chartData: DiagramDataContainer): any => {\r\n return {\r\n labels: chartData.labels,\r\n datasets: chartData.items.map((dataset) => ({\r\n data: dataset.items.map((item) => item.xValue),\r\n label: dataset.label,\r\n borderColor: dataset.items.map((item) => item.itemColor),\r\n backgroundColor: dataset.items.map((item) => item.itemColor),\r\n })),\r\n };\r\n },\r\n};\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class DefaultChartOptionsProvider {\r\n private readonly factoriesByType: Map<string, ChartJsFactory>;\r\n constructor(@Inject(CUSTOM_CHART_OPTIONS) @Optional() factories: ChartJsFactory[] | undefined) {\r\n this.factoriesByType = new Map(factories?.map((f) => [f.chartType, f]) ?? []);\r\n }\r\n\r\n getFactory(chartType: string): ChartJsFactory {\r\n return (\r\n this.factoriesByType.get(chartType) ?? {\r\n chartType: chartType,\r\n chartJsType: chartType,\r\n transformData: transformDataToBasicDataSets,\r\n createOptions: () => {\r\n return {};\r\n },\r\n }\r\n );\r\n }\r\n}\r\n\r\nfunction generateRandomColor(): string {\r\n const random = Math.floor(Math.random() * 16777215).toString(16);\r\n return `#${'000000'.substring(0, 6 - random.length) + random}`;\r\n}\r\n","// lib/view-context/utility/componentLibrary.ts\r\nimport { InjectionToken } from '@angular/core';\r\n\r\nexport enum ComponentLibrary {\r\n MATERIAL = 'material',\r\n PRIMENG = 'primeng',\r\n}\r\n\r\nexport const COMPONENT_LIBRARY = new InjectionToken<ComponentLibrary>('COMPONENT_LIBRARY');\r\n","import {\r\n AfterViewInit,\r\n Component,\r\n EventEmitter,\r\n Inject,\r\n Input,\r\n Optional,\r\n Output,\r\n viewChild,\r\n ViewChild,\r\n} from \"@angular/core\";\r\nimport { DefaultChartOptionsProvider } from \"./default-chart-options.provider\";\r\nimport { DiagramDescriptor, DiagramUiModel } from \"./api\";\r\nimport {\r\n COMPONENT_LIBRARY,\r\n ComponentLibrary,\r\n} from \"../view-context/utility/componentLibrary\";\r\nimport { Chart } from \"chart.js\";\r\nimport { UIChart } from \"primeng/chart\";\r\n\r\n@Component({\r\n selector: \"smart-chart\",\r\n templateUrl: \"./smart-chart.component.html\",\r\n styleUrls: [\"./smart-chart.component.css\"],\r\n})\r\nexport class SmartChartComponent {\r\n @ViewChild(\"chartJSRef\") chart?: UIChart;\r\n @Input() diagramUiModel!: DiagramUiModel;\r\n @Input() options?: any;\r\n\r\n @Output() dataSelect = new EventEmitter<any>();\r\n @Output() chartClick = new EventEmitter<any>();\r\n @Output() onDataClicked = new EventEmitter<any>(); //\r\n\r\n data: any;\r\n type: any;\r\n\r\n compLib: ComponentLibrary;\r\n componentLibrary = ComponentLibrary;\r\n\r\n constructor(\r\n private chartOptionProvider: DefaultChartOptionsProvider,\r\n @Inject(COMPONENT_LIBRARY) @Optional() compLib?: ComponentLibrary\r\n ) {\r\n this.compLib = compLib ?? ComponentLibrary.PRIMENG;\r\n }\r\n\r\n ngOnInit() {\r\n let options = undefined;\r\n const diagramType = !!this.diagramUiModel.Descriptor?.diagramType\r\n ? this.diagramUiModel.Descriptor.diagramType\r\n : \"\";\r\n\r\n const factory = this.chartOptionProvider.getFactory(diagramType);\r\n this.type = factory.chartJsType;\r\n options = factory.createOptions(this.diagramUiModel.DiagramData!);\r\n if (this.diagramUiModel.Descriptor) {\r\n options = this.deepMerge(\r\n this.convertBackendOptions(this.diagramUiModel.Descriptor),\r\n options\r\n );\r\n }\r\n if (this.options) {\r\n options = this.deepMerge(this.options, options);\r\n }\r\n\r\n this.options = options;\r\n this.data = factory.transformData(this.diagramUiModel.DiagramData!);\r\n }\r\n\r\n private deepMerge(target: any, source: any): any {\r\n for (const key of Object.keys(source)) {\r\n if (source[key] instanceof Object && target[key]) {\r\n Object.assign(source[key], this.deepMerge(target[key], source[key]));\r\n }\r\n }\r\n Object.assign(target || {}, source);\r\n return target;\r\n }\r\n\r\n private convertBackendOptions(descriptor: DiagramDescriptor) {\r\n const options: any = {\r\n plugins: {\r\n legend: {\r\n display: descriptor.showLegendForChart ?? true,\r\n },\r\n },\r\n scales: {} as any,\r\n };\r\n if (\r\n descriptor.diagramMinX !== undefined &&\r\n descriptor.diagramMaxX !== undefined\r\n ) {\r\n options.scales.x = {\r\n ticks: {\r\n display: descriptor.showLabelsForXAxis ?? true,\r\n },\r\n min: descriptor.diagramMinX,\r\n max: descriptor.diagramMaxX,\r\n };\r\n } else {\r\n options.scales.x = {\r\n ticks: {\r\n display: descriptor.showLabelsForXAxis ?? true,\r\n },\r\n };\r\n }\r\n if (\r\n descriptor.diagramMinY !== undefined &&\r\n descriptor.diagramMaxY !== undefined\r\n ) {\r\n options.scales.y = {\r\n ticks: {\r\n display: descriptor.showLabelsForYAxis ?? true,\r\n },\r\n min: descriptor.diagramMinY,\r\n max: descriptor.diagramMaxY,\r\n };\r\n } else {\r\n options.scales.y = {\r\n ticks: {\r\n display: descriptor.showLabelsForYAxis ?? true,\r\n },\r\n };\r\n }\r\n return options;\r\n }\r\n\r\n onDataSelect(event: any) {\r\n this.dataSelect.emit(event);\r\n }\r\n\r\n handleChartClick(event: any): void {\r\n this.chartClick.emit(event);\r\n }\r\n\r\n handleOnDataClicked(event: any): void {\r\n const canvas = event.target as HTMLCanvasElement;\r\n const chart = Chart.getChart(canvas);\r\n\r\n if (chart) {\r\n const elements = chart.getElementsAtEventForMode(\r\n event,\r\n \"nearest\",\r\n { intersect: true },\r\n false\r\n );\r\n if (elements.length === 0) {\r\n return;\r\n }\r\n const clickedItems = chart.tooltip?.dataPoints?.map((item) => {\r\n return {\r\n datasetIndex: item.datasetIndex,\r\n itemIndex: item.dataIndex,\r\n element: item.element,\r\n };\r\n });\r\n\r\n this.onDataClicked.emit({ event, clickedItems });\r\n }\r\n }\r\n\r\n getBase64Image() {\r\n return this.chart?.getBase64Image();\r\n }\r\n\r\n refresh() {\r\n return this.chart?.refresh();\r\n }\r\n\r\n getChart() {\r\n return this.chart?.chart;\r\n }\r\n}\r\n","@if(compLib === componentLibrary.PRIMENG) {\r\n<p-chart\r\n #chartJSRef\r\n [type]=\"type\"\r\n [data]=\"data\"\r\n [options]=\"options\"\r\n (onDataSelect)=\"onDataSelect($event)\"\r\n (click)=\"handleChartClick($event)\"\r\n (click)=\"handleOnDataClicked($event)\"\r\n/>\r\n} @else {\r\n<p>Only PrimeNg component library is supported</p>\r\n}\r\n","import { ModuleWithProviders, NgModule, Provider } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { ChartModule } from 'primeng/chart';\r\nimport {\r\n barChart,\r\n bubbleChart,\r\n CUSTOM_CHART_OPTIONS,\r\n DefaultChartOptionsProvider,\r\n doughnutChart,\r\n horizontalBarChart,\r\n multiAxisLineChart,\r\n pieChart,\r\n polarAreaChart,\r\n radarChart,\r\n scatterChart,\r\n stackedBarChart,\r\n} from './default-chart-options.provider';\r\nimport { SmartChartComponent } from './smart-chart.component';\r\n\r\nconst DEFAULT_PROVIDERS: Provider[] = [\r\n DefaultChartOptionsProvider,\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: barChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: scatterChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: bubbleChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: horizontalBarChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: stackedBarChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: multiAxisLineChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: polarAreaChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: radarChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: doughnutChart, multi: true },\r\n { provide: CUSTOM_CHART_OPTIONS, useValue: pieChart, multi: true },\r\n];\r\n\r\n@NgModule({\r\n declarations: [SmartChartComponent],\r\n imports: [BrowserModule, ChartModule],\r\n exports: [SmartChartComponent],\r\n})\r\nexport class SmartChartModule {\r\n static forRoot(providers: Provider[]): ModuleWithProviders<SmartChartModule> {\r\n return {\r\n ngModule: SmartChartModule,\r\n providers: [...DEFAULT_PROVIDERS, ...providers],\r\n };\r\n }\r\n}\r\n","/**\r\n * Chart API\r\n * API for consume charts.\r\n *\r\n * The version of the OpenAPI document: 1.0.0\r\n * Contact: info@it4all.hu\r\n *\r\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\r\n * https://openapi-generator.tech\r\n * Do not edit the class manually.\r\n */\r\n\r\n\r\nexport type ChartOrientation = 'Horizontal' | 'Vertical';\r\n\r\nexport const ChartOrientation = {\r\n Horizontal: 'Horizontal' as ChartOrientation,\r\n Vertical: 'Vertical' as ChartOrientation\r\n};\r\n\r\n","/**\r\n * Chart API\r\n * API for consume charts.\r\n *\r\n * The version of the OpenAPI document: 1.0.0\r\n * Contact: info@it4all.hu\r\n *\r\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\r\n * https://openapi-generator.tech\r\n * Do not edit the class manually.\r\n */\r\n\r\n\r\nexport type ChartType = 'BarChart' | 'GroupedBarChart' | 'StackedBarChart' | 'NormalizedBarChart' | 'PieChart' | 'AdvancedPieChart' | 'PieGrid';\r\n\r\nexport const ChartType = {\r\n BarChart: 'BarChart' as ChartType,\r\n GroupedBarChart: 'GroupedBarChart' as ChartType,\r\n StackedBarChart: 'StackedBarChart' as ChartType,\r\n NormalizedBarChart: 'NormalizedBarChart' as ChartType,\r\n PieChart: 'PieChart' as ChartType,\r\n AdvancedPieChart: 'AdvancedPieChart' as ChartType,\r\n PieGrid: 'PieGrid' as ChartType\r\n};\r\n\r\n","/**\r\n * Chart API\r\n * API for consume charts.\r\n *\r\n * The version of the OpenAPI document: 1.0.0\r\n * Contact: info@it4all.hu\r\n *\r\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\r\n * https://openapi-generator.tech\r\n * Do not edit the class manually.\r\n */\r\n\r\n\r\nexport interface ChartValue { \r\n name: string;\r\n value?: object;\r\n series: Array<ChartValue>;\r\n}\r\n\r\n","/**\r\n * Chart API\r\n * API for consume charts.\r\n *\r\n * The version of the OpenAPI document: 1.0.0\r\n * Contact: info@it4all.hu\r\n *\r\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\r\n * https://openapi-generator.tech\r\n * Do not edit the class manually.\r\n */\r\n\r\n\r\n/**\r\n * Contains an items data, based on the type of the diagram.\r\n */\r\nexport interface DiagramDataItem { \r\n uri?: string;\r\n label?: string;\r\n xValue?: number;\r\n yValue?: number;\r\n /**\r\n * This property specifies the radius of each bubble in a bubble chart. It is used to determine the size of the bubbles relative to their data values.\r\n */\r\n rValue?: number;\r\n itemColor?: string;\r\n}\r\n\r\n","/**\r\n * Chart API\r\n * API for consume charts.\r\n *\r\n * The version of the OpenAPI document: 1.0.0\r\n * Contact: info@it4all.hu\r\n *\r\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\r\n * https://openapi-generator.tech\r\n * Do not edit the class manually.\r\n */\r\n\r\n\r\nexport interface DiagramDataSetConstructionInstruction { \r\n xValuePath?: Array<string>;\r\n yValuePath?: Array<string>;\r\n rValuePath?: Array<string>;\r\n labelValuePath?: Array<string>;\r\n colorValuePath?: Array<string>;\r\n loadLatest?: boolean;\r\n dataSetLabel?: string;\r\n dataSetType?: string;\r\n}\r\n\r\n","/**\r\n * Chart API\r\n * API for consume charts.\r\n *\r\n * The version of the OpenAPI document: 1.0.0\r\n * Contact: info@it4all.hu\r\n *\r\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\r\n * https://openapi-generator.tech\r\n * Do not edit the class manually.\r\n */\r\n\r\n\r\n/**\r\n * A descriptor for the diagram.\r\n */\r\nexport interface DiagramDescriptor { \r\n uri?: string;\r\n /**\r\n * The type of the diagram.\r\n */\r\n diagramType?: string;\r\n /**\r\n * Specifies the starting point for rendering the chart\\'s X-axis. For example, if the minimum X value in the dataset is -30 and this property is set to -35, an extra \\\"padding\\\" of 5 units will be added below the lowest data point.\r\n */\r\n diagramMinX?: number;\r\n /**\r\n * Specifies the ending point for rendering the chart\\'s X-axis. For instance, if the maximum X value in the dataset is 30 and this property is set to 35, an additional \\\"padding\\\" of 5 units will be added above the highest data point.\r\n */\r\n diagramMaxX?: number;\r\n /**\r\n * Specifies the starting point for rendering the chart\\'s Y-axis. For example, if the minimum Y value in the dataset is -30 and this property is set to -35, an extra \\\"padding\\\" of 5 units will be added below the lowest data point.\r\n */\r\n diagramMinY?: number;\r\n /**\r\n * Specifies the ending point for rendering the chart\\'s Y-axis. For instance, if the maximum Y value in the dataset is 30 and this property is set to 35, an additional \\\"padding\\\" of 5 units will be added above the highest data point.\r\n */\r\n diagramMaxY?: number;\r\n /**\r\n * Determines whether the labels on the X-Axis are displayed on the chart. Set to `true` to show the labels, or `false` to hide them.\r\n */\r\n showLabelsForXAxis?: boolean;\r\n /**\r\n * Determines whether the labels on the Y-Axis are displayed on the chart. Set to `true` to show the labels, or `false` to hide them.\r\n */\r\n showLabelsForYAxis?: boolean;\r\n /**\r\n * Determines whether the legend for the chart is displayed. Set to `true` to show the legend, or `false` to hide it.\r\n */\r\n showLegendForChart?: boolean;\r\n}\r\n\r\n","/**\r\n * Chart API\r\n * API for consume charts.\r\n *\r\n * The version of the OpenAPI document: 1.0.0\r\n * Contact: info@it4all.hu\r\n *\r\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\r\n * https://openapi-generator.tech\r\n * Do not edit the class manually.\r\n */\r\n\r\n\r\nexport type PieChartLegendPosition = 'right' | 'below';\r\n\r\nexport const PieChartLegendPosition = {\r\n Right: 'right' as PieChartLegendPosition,\r\n Below: 'below' as PieChartLegendPosition\r\n};\r\n\r\n","/*\r\n * Public API Surface of smart-chart\r\n */\r\n\r\nexport * from './smart-chart/smart-chart.module';\r\nexport * from './smart-chart/smart-chart.component';\r\nexport * from './smart-chart/api/model/models';\r\nexport * from './smart-chart/default-chart-options.provider';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './smart-chart-projects';\n"],"names":[],"mappings":"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"}
|