@taiga-ui/addon-charts 4.50.0 → 4.51.0-canary.2b42d75

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.
@@ -9,7 +9,7 @@ import { TuiHoveredService } from '@taiga-ui/cdk/directives/hovered';
9
9
  import { tuiZonefree } from '@taiga-ui/cdk/observables';
10
10
  import { tuiIsNumber, tuiIsPresent, tuiPure } from '@taiga-ui/cdk/utils/miscellaneous';
11
11
  import { TuiHint } from '@taiga-ui/core/directives/hint';
12
- import { PolymorpheusOutlet, PolymorpheusTemplate, } from '@taiga-ui/polymorpheus';
12
+ import { PolymorpheusOutlet } from '@taiga-ui/polymorpheus';
13
13
  import { combineLatest, filter } from 'rxjs';
14
14
  import { TuiLineDaysChartHint } from './line-days-chart-hint.directive';
15
15
  import * as i0 from "@angular/core";
@@ -161,7 +161,7 @@ __decorate([
161
161
  export { TuiLineDaysChart };
162
162
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiLineDaysChart, decorators: [{
163
163
  type: Component,
164
- args: [{ standalone: true, selector: 'tui-line-days-chart', imports: [NgForOf, PolymorpheusOutlet, PolymorpheusTemplate, TuiHint, TuiLineChart], changeDetection: ChangeDetectionStrategy.OnPush, providers: [
164
+ args: [{ standalone: true, selector: 'tui-line-days-chart', imports: [NgForOf, PolymorpheusOutlet, TuiHint, TuiLineChart], changeDetection: ChangeDetectionStrategy.OnPush, providers: [
165
165
  TuiHoveredService,
166
166
  {
167
167
  provide: TuiLineChartHint,
@@ -191,4 +191,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
191
191
  type: Input,
192
192
  args: ['value']
193
193
  }], getHintContext: [], breakMonths: [] } });
194
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1kYXlzLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2xpbmUtZGF5cy1jaGFydC9saW5lLWRheXMtY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvbGluZS1kYXlzLWNoYXJ0L2xpbmUtZGF5cy1jaGFydC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDeEMsT0FBTyxFQUVILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUVOLFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEVBQ0gsc0JBQXNCLEVBQ3RCLFlBQVksRUFDWixtQkFBbUIsRUFDbkIsZ0JBQWdCLEdBQ25CLE1BQU0sOENBQThDLENBQUM7QUFDdEQsT0FBTyxFQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRSxPQUFPLEVBQUMsTUFBTSxFQUFFLFFBQVEsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUV0RCxPQUFPLEVBQUMsV0FBVyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRixPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFFdkQsT0FBTyxFQUVILGtCQUFrQixFQUNsQixvQkFB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TVEsZ0JBQWdCO21HQUFoQixnQkFBZ0IscVVBWGQ7WUFDUCxpQkFBaUI7WUFDakI7Z0JBQ0ksT0FBTyxFQUFFLGdCQUFnQjtnQkFDekIsV0FBVyxFQUFFLGdCQUFnQjthQUNoQztTQUNKLHFEQWNhLFlBQVksZ0RDakU5Qiw4dEJBdUJBLHlKRGtCYyxPQUFPLG1IQUFFLGtCQUFrQixrVUFBaUMsWUFBWTs7QUFzSnhFO0lBRFQsT0FBTztzREFNUDtBQXNCTztJQURQLE9BQU87bURBMkJQO1NBNUxRLGdCQUFnQjs0RkFBaEIsZ0JBQWdCO2tCQWxCNUIsU0FBUztpQ0FDTSxJQUFJLFlBQ04scUJBQXFCLFdBQ3RCLENBQUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixFQUFFLE9BQU8sRUFBRSxZQUFZLENBQUMsbUJBR2xFLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1AsaUJBQWlCO3dCQUNqQjs0QkFDSSxPQUFPLEVBQUUsZ0JBQWdCOzRCQUN6QixXQUFXLGtCQUFrQjt5QkFDaEM7cUJBQ0osUUFDSzt3QkFDRixnQkFBZ0IsRUFBRSxRQUFRO3FCQUM3Qjs4QkFZZSxNQUFNO3NCQURyQixZQUFZO3VCQUFDLFlBQVk7Z0JBSW5CLENBQUM7c0JBRFAsS0FBSztnQkFJQyxNQUFNO3NCQURaLEtBQUs7Z0JBSUMsZUFBZTtzQkFEckIsS0FBSztnQkFJQyxXQUFXO3NCQURqQixLQUFLO2dCQUlDLFVBQVU7c0JBRGhCLEtBQUs7Z0JBSUMsVUFBVTtzQkFEaEIsS0FBSztnQkFJQyxJQUFJO3NCQURWLEtBQUs7Z0JBUUssV0FBVztzQkFEckIsS0FBSzt1QkFBQyxPQUFPO2dCQWtHSixjQUFjLE1BMkJoQixXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ0Zvck9mfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICB0eXBlIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIERlc3Ryb3lSZWYsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIE5nWm9uZSxcbiAgICB0eXBlIFF1ZXJ5TGlzdCxcbiAgICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0YWtlVW50aWxEZXN0cm95ZWR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7XG4gICAgVFVJX0xJTkVfQ0hBUlRfT1BUSU9OUyxcbiAgICBUdWlMaW5lQ2hhcnQsXG4gICAgdHVpTGluZUNoYXJ0RHJpdmVycyxcbiAgICBUdWlMaW5lQ2hhcnRIaW50LFxufSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvbGluZS1jaGFydCc7XG5pbXBvcnQge0VNUFRZX0FSUkFZLCBFTVBUWV9RVUVSWX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlEYXksIFR1aU1vbnRofSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RhdGUtdGltZSc7XG5pbXBvcnQge1R1aUhvdmVyZWRTZXJ2aWNlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvaG92ZXJlZCc7XG5pbXBvcnQge3R1aVpvbmVmcmVlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL29ic2VydmFibGVzJztcbmltcG9ydCB7dHlwZSBUdWlDb250ZXh0LCB0eXBlIFR1aVN0cmluZ0hhbmRsZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvdHlwZXMnO1xuaW1wb3J0IHt0dWlJc051bWJlciwgdHVpSXNQcmVzZW50LCB0dWlQdXJlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtUdWlIaW50fSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2hpbnQnO1xuaW1wb3J0IHt0eXBlIFR1aVBvaW50fSBmcm9tICdAdGFpZ2EtdWkvY29yZS90eXBlcyc7XG5pbXBvcnQge1xuICAgIHR5cGUgUG9seW1vcnBoZXVzQ29udGVudCxcbiAgICBQb2x5bW9ycGhldXNPdXRsZXQsXG4gICAgUG9seW1vcnBoZXVzVGVtcGxhdGUsXG59IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtjb21iaW5lTGF0ZXN0LCBmaWx0ZXJ9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1R1aUxpbmVEYXlzQ2hhcnRIaW50fSBmcm9tICcuL2xpbmUtZGF5cy1jaGFydC1oaW50LmRpcmVjdGl2ZSc7XG5cbmNvbnN0IERVTU1ZOiBUdWlQb2ludCA9IFtOYU4sIE5hTl07XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICd0dWktbGluZS1kYXlzLWNoYXJ0JyxcbiAgICBpbXBvcnRzOiBbTmdGb3JPZiwgUG9seW1vcnBoZXVzT3V0bGV0LCBQb2x5bW9ycGhldXNUZW1wbGF0ZSwgVHVpSGludCwgVHVpTGluZUNoYXJ0XSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbGluZS1kYXlzLWNoYXJ0LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2xpbmUtZGF5cy1jaGFydC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIFR1aUhvdmVyZWRTZXJ2aWNlLFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUdWlMaW5lQ2hhcnRIaW50LFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IFR1aUxpbmVEYXlzQ2hhcnQsXG4gICAgICAgIH0sXG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgICdbc3R5bGUuekluZGV4XSc6ICd6SW5kZXgnLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUxpbmVEYXlzQ2hhcnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gICAgcHJpdmF0ZSByZWFkb25seSB6b25lID0gaW5qZWN0KE5nWm9uZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBob3ZlcmVkJCA9IGluamVjdChUdWlIb3ZlcmVkU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zID0gaW5qZWN0KFRVSV9MSU5FX0NIQVJUX09QVElPTlMpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaGludERpcmVjdGl2ZSA9IGluamVjdChUdWlMaW5lRGF5c0NoYXJ0SGludCwge1xuICAgICAgICBvcHRpb25hbDogdHJ1ZSxcbiAgICB9KTtcblxuICAgIEBWaWV3Q2hpbGRyZW4oVHVpTGluZUNoYXJ0KVxuICAgIHB1YmxpYyByZWFkb25seSBjaGFydHM6IFF1ZXJ5TGlzdDxUdWlMaW5lQ2hhcnQ+ID0gRU1QVFlfUVVFUlk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB5ID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGhlaWdodCA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzbW9vdGhpbmdGYWN0b3IgPSB0aGlzLm9wdGlvbnMuc21vb3RoaW5nRmFjdG9yO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaGludENvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dDxbVHVpRGF5LCBudW1iZXJdPj47XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB4U3RyaW5naWZ5OiBUdWlTdHJpbmdIYW5kbGVyPFR1aURheT4gfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHlTdHJpbmdpZnk6IFR1aVN0cmluZ0hhbmRsZXI8bnVtYmVyPiB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZG90cyA9IHRoaXMub3B0aW9ucy5kb3RzO1xuXG4gICAgcHVibGljIHpJbmRleCA9IDA7XG5cbiAgICBwdWJsaWMgdmFsdWU6IFJlYWRvbmx5QXJyYXk8W1R1aURheSwgbnVtYmVyXT4gPSBbXTtcblxuICAgIEBJbnB1dCgndmFsdWUnKVxuICAgIHB1YmxpYyBzZXQgdmFsdWVTZXR0ZXIodmFsdWU6IFJlYWRvbmx5QXJyYXk8W1R1aURheSwgbnVtYmVyXT4pIHtcbiAgICAgICAgaWYgKCF2YWx1ZS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSBbXTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgc3RhcnQgPSB2YWx1ZVswXT8uWzBdO1xuICAgICAgICBjb25zdCBlbmQgPSB2YWx1ZVt2YWx1ZS5sZW5ndGggLSAxXTtcbiAgICAgICAgY29uc3QgbXV0YWJsZSA9IFsuLi52YWx1ZV07XG4gICAgICAgIGNvbnN0IGxlbmd0aCA9IHN0YXJ0ICYmIGVuZCA/IFR1aURheS5sZW5ndGhCZXR3ZWVuKHN0YXJ0LCBlbmRbMF0pICsgMSA6IDA7XG5cbiAgICAgICAgdGhpcy52YWx1ZSA9IEFycmF5LmZyb20oe2xlbmd0aH0sIChfLCBkYXkpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHN0YXJ0TXV0YWJsZSA9IG11dGFibGVbMF0/LlswXTtcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnREYXkgPSBzdGFydD8uYXBwZW5kKHtkYXl9KTtcbiAgICAgICAgICAgIGNvbnN0IHNoaWZ0ZWQgPVxuICAgICAgICAgICAgICAgIHN0YXJ0TXV0YWJsZSAmJiBjdXJyZW50RGF5Py5kYXlTYW1lKHN0YXJ0TXV0YWJsZSlcbiAgICAgICAgICAgICAgICAgICAgPyBtdXRhYmxlLnNoaWZ0KClcbiAgICAgICAgICAgICAgICAgICAgOiBudWxsO1xuICAgICAgICAgICAgY29uc3QgY3VycmVudFZhbHVlID0gc2hpZnRlZCA/IHNoaWZ0ZWRbMV0gOiBOYU47XG5cbiAgICAgICAgICAgIHJldHVybiBbY3VycmVudERheSwgY3VycmVudFZhbHVlXSBhcyBbVHVpRGF5LCBudW1iZXJdO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGhpbnQoKTpcbiAgICAgICAgfCBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHQ8W1R1aURheSwgbnVtYmVyXT4+XG4gICAgICAgIHwgUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0PHJlYWRvbmx5IFR1aVBvaW50W10+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhpbnREaXJlY3RpdmU/LmhpbnQgPz8gdGhpcy5oaW50Q29udGVudDtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICBjb21iaW5lTGF0ZXN0KFt0dWlMaW5lQ2hhcnREcml2ZXJzKHRoaXMuY2hhcnRzKSwgdGhpcy5ob3ZlcmVkJF0pXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBmaWx0ZXIoKHJlc3VsdCkgPT4gIXJlc3VsdC5zb21lKEJvb2xlYW4pKSxcbiAgICAgICAgICAgICAgICB0dWlab25lZnJlZSh0aGlzLnpvbmUpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkhvdmVyZWQoTmFOKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbkhvdmVyZWQoZGF5OiBUdWlEYXkgfCBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgaWYgKHR1aUlzTnVtYmVyKGRheSkpIHtcbiAgICAgICAgICAgIHRoaXMuY2hhcnRzLmZvckVhY2goKGNoYXJ0KSA9PiBjaGFydC5vbkhvdmVyZWQoTmFOKSk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gdGhpcy52YWx1ZVswXT8uWzBdO1xuICAgICAgICBjb25zdCBpbmRleCA9IHN0YXJ0ICYmIGRheSA/IFR1aU1vbnRoLmxlbmd0aEJldHdlZW4oc3RhcnQsIGRheSkgOiAwO1xuICAgICAgICBjb25zdCB4ID0gc3RhcnQgJiYgZGF5ID8gVHVpRGF5Lmxlbmd0aEJldHdlZW4oc3RhcnQsIGRheSkgKyBzdGFydC5kYXkgLSAxIDogMDtcbiAgICAgICAgY29uc3QgY3VycmVudCA9IHRoaXMuY2hhcnRzLmdldChpbmRleCk7XG5cbiAgICAgICAgdGhpcy5jaGFydHMuZm9yRWFjaCgoY2hhcnQpID0+IHtcbiAgICAgICAgICAgIGlmIChjaGFydCA9PT0gY3VycmVudCkge1xuICAgICAgICAgICAgICAgIGN1cnJlbnQub25Ib3ZlcmVkKGN1cnJlbnQudmFsdWUuZmluZEluZGV4KChwb2ludCkgPT4gcG9pbnRbMF0gPT09IHgpKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY2hhcnQub25Ib3ZlcmVkKE5hTik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyByYWlzZShpbmRleDogbnVtYmVyLCB7dmFsdWV9OiBUdWlMaW5lQ2hhcnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeCA9IHZhbHVlW2luZGV4XT8uWzBdIHx8IDA7XG4gICAgICAgIGNvbnN0IG1vbnRoID0gdGhpcy5nZXREYXkoeCk7XG5cbiAgICAgICAgaWYgKCFtb250aCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuaGludERpcmVjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy5oaW50RGlyZWN0aXZlLnJhaXNlKG1vbnRoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMub25Ib3ZlcmVkKG1vbnRoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXRDb250ZXh0KGluZGV4OiBudW1iZXIsIHt2YWx1ZX06IFR1aUxpbmVDaGFydCk6IHVua25vd24ge1xuICAgICAgICBjb25zdCB4ID0gdmFsdWVbaW5kZXhdPy5bMF0gfHwgMDtcbiAgICAgICAgY29uc3QgZGF5ID0gdGhpcy5nZXREYXkoeCk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaGludERpcmVjdGl2ZSAmJiBkYXlcbiAgICAgICAgICAgID8gdGhpcy5oaW50RGlyZWN0aXZlLmdldENvbnRleHQoZGF5KVxuICAgICAgICAgICAgOiB0aGlzLmdldEhpbnRDb250ZXh0KHgsIHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgbW9udGhzKCk6IFJlYWRvbmx5QXJyYXk8cmVhZG9ubHkgVHVpUG9pbnRbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZS5sZW5ndGggPyB0aGlzLmJyZWFrTW9udGhzKHRoaXMudmFsdWUpIDogRU1QVFlfQVJSQVk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBmaXJzdFdpZHRoKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLm1vbnRocy5sZW5ndGggKiAodGhpcy52YWx1ZVswXT8uWzBdLmRheXNDb3VudCB8fCAwKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByb3RlY3RlZCBnZXRIaW50Q29udGV4dChcbiAgICAgICAgeDogbnVtYmVyLFxuICAgICAgICB2YWx1ZTogUmVhZG9ubHlBcnJheTxbVHVpRGF5LCBudW1iZXJdPixcbiAgICApOiBbVHVpRGF5LCBudW1iZXJdIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB2YWx1ZVt4IC0gKHZhbHVlWzBdPy5bMF0/LmRheSB8fCAwKSArIDFdID8/IG51bGw7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRheXNTdHJpbmdpZnk6IFR1aVN0cmluZ0hhbmRsZXI8bnVtYmVyPiA9IChpbmRleCkgPT4ge1xuICAgICAgICBjb25zdCBkYXkgPSB0aGlzLmdldERheShpbmRleCk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMueFN0cmluZ2lmeSAmJiBkYXkgPyB0aGlzLnhTdHJpbmdpZnkoZGF5KSA6ICcnO1xuICAgIH07XG5cbiAgICBwcm90ZWN0ZWQgZ2V0WChpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3Qgc3RhcnQgPSB0aGlzLnZhbHVlWzBdPy5bMF07XG4gICAgICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzLmdldERheShpbmRleCk7XG4gICAgICAgIGNvbnN0IG1vbnRocyA9IHN0YXJ0ICYmIGN1cnJlbnQgPyBUdWlNb250aC5sZW5ndGhCZXR3ZWVuKHN0YXJ0LCBjdXJyZW50KSA6IDA7XG4gICAgICAgIGNvbnN0IG9mZnNldCA9IG1vbnRocyAqIChjdXJyZW50Py5kYXlzQ291bnQgfHwgMCk7XG5cbiAgICAgICAgcmV0dXJuIGluZGV4IC0gb2Zmc2V0O1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXRXaWR0aChpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuICh0aGlzLmdldERheShpbmRleCk/LmRheXNDb3VudCB8fCAwKSAqIHRoaXMubW9udGhzLmxlbmd0aDtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgYnJlYWtNb250aHMoXG4gICAgICAgIHZhbHVlOiBSZWFkb25seUFycmF5PFtUdWlEYXksIG51bWJlcl0+LFxuICAgICk6IFJlYWRvbmx5QXJyYXk8cmVhZG9ubHkgVHVpUG9pbnRbXT4ge1xuICAgICAgICBjb25zdCBvZmZzZXQgPSAodmFsdWVbMF0/LlswXS5kYXkgfHwgMSkgLSAxO1xuICAgICAgICBjb25zdCBzdGFydCA9IHZhbHVlWzBdPy5bMF07XG4gICAgICAgIGNvbnN0IGVuZCA9IHZhbHVlW3ZhbHVlLmxlbmd0aCAtIDFdPy5bMF07XG5cbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20oXG4gICAgICAgICAgICB7bGVuZ3RoOiBzdGFydCAmJiBlbmQgPyBUdWlNb250aC5sZW5ndGhCZXR3ZWVuKHN0YXJ0LCBlbmQpICsgMSA6IDB9LFxuICAgICAgICAgICAgKF8sIGkpID0+IGkgKyAoc3RhcnQ/Lm1vbnRoIHx8IDApICsgKHN0YXJ0Py55ZWFyIHx8IDApICogMTIsXG4gICAgICAgIClcbiAgICAgICAgICAgIC5tYXAoKGFic29sdXRlTW9udGgpID0+XG4gICAgICAgICAgICAgICAgdmFsdWVcbiAgICAgICAgICAgICAgICAgICAgLm1hcDxUdWlQb2ludCB8IG51bGw+KChbe21vbnRoLCB5ZWFyfSwgeV0sIGluZGV4KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgbW9udGggKyB5ZWFyICogMTIgPT09IGFic29sdXRlTW9udGggPyBbaW5kZXggKyBvZmZzZXQsIHldIDogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAuZmlsdGVyKHR1aUlzUHJlc2VudCksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAubWFwKChtb250aCwgaW5kZXgsIGFycmF5KSA9PlxuICAgICAgICAgICAgICAgIGluZGV4ID09PSBhcnJheS5sZW5ndGggLSAxXG4gICAgICAgICAgICAgICAgICAgID8gbW9udGhcbiAgICAgICAgICAgICAgICAgICAgOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC4uLm1vbnRoLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBhcnJheVtpbmRleCArIDFdPy5maW5kKChkYXkpID0+ICFOdW1iZXIuaXNOYU4oZGF5WzFdKSkgfHwgRFVNTVksXG4gICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXREYXkoaW5kZXg6IG51bWJlcik6IFR1aURheSB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gdGhpcy52YWx1ZVswXT8uWzBdO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlW2luZGV4IC0gKHN0YXJ0Py5kYXkgfHwgMCkgKyAxXT8uWzBdO1xuICAgIH1cbn1cbiIsIjx0dWktbGluZS1jaGFydFxuICAgICpuZ0Zvcj1cImxldCBtb250aCBvZiBtb250aHM7IGxldCBmaXJzdCA9IGZpcnN0XCJcbiAgICBjbGFzcz1cInQtY2hhcnRcIlxuICAgIFtkb3RzXT1cImRvdHNcIlxuICAgIFtoZWlnaHRdPVwiaGVpZ2h0XCJcbiAgICBbc21vb3RoaW5nRmFjdG9yXT1cInNtb290aGluZ0ZhY3RvclwiXG4gICAgW3N0eWxlLnpJbmRleF09XCJ6SW5kZXhcIlxuICAgIFt0dWlIaW50Q29udGVudF09XCJoaW50Q29udGVudCA/IGhpbnQgOiAnJ1wiXG4gICAgW3ZhbHVlXT1cIm1vbnRoXCJcbiAgICBbd2lkdGhdPVwiZmlyc3QgPyBmaXJzdFdpZHRoIDogZ2V0V2lkdGgobW9udGhbMF0/LlswXSA/PyAwKVwiXG4gICAgW3hdPVwiZmlyc3QgPyAwIDogZ2V0WChtb250aFswXT8uWzBdID8/IDApXCJcbiAgICBbeFN0cmluZ2lmeV09XCJ4U3RyaW5naWZ5ID8gZGF5c1N0cmluZ2lmeSA6IG51bGxcIlxuICAgIFt5XT1cInlcIlxuICAgIFt5U3RyaW5naWZ5XT1cInlTdHJpbmdpZnlcIlxuLz5cbjxuZy10ZW1wbGF0ZVxuICAgICNoaW50XG4gICAgbGV0LXBvaW50XG4+XG4gICAgPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiaGludENvbnRlbnQgYXMgdGV4dDsgY29udGV4dDogeyRpbXBsaWNpdDogZ2V0SGludENvbnRleHQocG9pbnRbMF0sIHZhbHVlKX1cIj5cbiAgICAgICAge3sgdGV4dCB9fVxuICAgIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
194
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1kYXlzLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2xpbmUtZGF5cy1jaGFydC9saW5lLWRheXMtY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvbGluZS1kYXlzLWNoYXJ0L2xpbmUtZGF5cy1jaGFydC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDeEMsT0FBTyxFQUVILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUVOLFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEVBQ0gsc0JBQXNCLEVBQ3RCLFlBQVksRUFDWixtQkFBbUIsRUFDbkIsZ0JBQWdCLEdBQ25CLE1BQU0sOENBQThDLENBQUM7QUFDdEQsT0FBTyxFQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRSxPQUFPLEVBQUMsTUFBTSxFQUFFLFFBQVEsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUV0RCxPQUFPLEVBQUMsV0FBVyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRixPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFFdkQsT0FBTyxFQUEyQixrQkFBa0IsRUFBQyxNQUFN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QWhCLGdCQUFnQixxVUFYZDtZQUNQLGlCQUFpQjtZQUNqQjtnQkFDSSxPQUFPLEVBQUUsZ0JBQWdCO2dCQUN6QixXQUFXLEVBQUUsZ0JBQWdCO2FBQ2hDO1NBQ0oscURBY2EsWUFBWSxnREM3RDlCLDh0QkF1QkEseUpEY2MsT0FBTyxtSEFBRSxrQkFBa0Isa1VBQVcsWUFBWTs7QUFzSmxEO0lBRFQsT0FBTztzREFNUDtBQXNCTztJQURQLE9BQU87bURBMkJQO1NBNUxRLGdCQUFnQjs0RkFBaEIsZ0JBQWdCO2tCQWxCNUIsU0FBUztpQ0FDTSxJQUFJLFlBQ04scUJBQXFCLFdBQ3RCLENBQUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE9BQU8sRUFBRSxZQUFZLENBQUMsbUJBRzVDLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1AsaUJBQWlCO3dCQUNqQjs0QkFDSSxPQUFPLEVBQUUsZ0JBQWdCOzRCQUN6QixXQUFXLGtCQUFrQjt5QkFDaEM7cUJBQ0osUUFDSzt3QkFDRixnQkFBZ0IsRUFBRSxRQUFRO3FCQUM3Qjs4QkFZZSxNQUFNO3NCQURyQixZQUFZO3VCQUFDLFlBQVk7Z0JBSW5CLENBQUM7c0JBRFAsS0FBSztnQkFJQyxNQUFNO3NCQURaLEtBQUs7Z0JBSUMsZUFBZTtzQkFEckIsS0FBSztnQkFJQyxXQUFXO3NCQURqQixLQUFLO2dCQUlDLFVBQVU7c0JBRGhCLEtBQUs7Z0JBSUMsVUFBVTtzQkFEaEIsS0FBSztnQkFJQyxJQUFJO3NCQURWLEtBQUs7Z0JBUUssV0FBVztzQkFEckIsS0FBSzt1QkFBQyxPQUFPO2dCQWtHSixjQUFjLE1BMkJoQixXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ0Zvck9mfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICB0eXBlIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIERlc3Ryb3lSZWYsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIE5nWm9uZSxcbiAgICB0eXBlIFF1ZXJ5TGlzdCxcbiAgICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0YWtlVW50aWxEZXN0cm95ZWR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7XG4gICAgVFVJX0xJTkVfQ0hBUlRfT1BUSU9OUyxcbiAgICBUdWlMaW5lQ2hhcnQsXG4gICAgdHVpTGluZUNoYXJ0RHJpdmVycyxcbiAgICBUdWlMaW5lQ2hhcnRIaW50LFxufSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvbGluZS1jaGFydCc7XG5pbXBvcnQge0VNUFRZX0FSUkFZLCBFTVBUWV9RVUVSWX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlEYXksIFR1aU1vbnRofSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RhdGUtdGltZSc7XG5pbXBvcnQge1R1aUhvdmVyZWRTZXJ2aWNlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvaG92ZXJlZCc7XG5pbXBvcnQge3R1aVpvbmVmcmVlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL29ic2VydmFibGVzJztcbmltcG9ydCB7dHlwZSBUdWlDb250ZXh0LCB0eXBlIFR1aVN0cmluZ0hhbmRsZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvdHlwZXMnO1xuaW1wb3J0IHt0dWlJc051bWJlciwgdHVpSXNQcmVzZW50LCB0dWlQdXJlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtUdWlIaW50fSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2hpbnQnO1xuaW1wb3J0IHt0eXBlIFR1aVBvaW50fSBmcm9tICdAdGFpZ2EtdWkvY29yZS90eXBlcyc7XG5pbXBvcnQge3R5cGUgUG9seW1vcnBoZXVzQ29udGVudCwgUG9seW1vcnBoZXVzT3V0bGV0fSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcbmltcG9ydCB7Y29tYmluZUxhdGVzdCwgZmlsdGVyfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUdWlMaW5lRGF5c0NoYXJ0SGludH0gZnJvbSAnLi9saW5lLWRheXMtY2hhcnQtaGludC5kaXJlY3RpdmUnO1xuXG5jb25zdCBEVU1NWTogVHVpUG9pbnQgPSBbTmFOLCBOYU5dO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWxpbmUtZGF5cy1jaGFydCcsXG4gICAgaW1wb3J0czogW05nRm9yT2YsIFBvbHltb3JwaGV1c091dGxldCwgVHVpSGludCwgVHVpTGluZUNoYXJ0XSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbGluZS1kYXlzLWNoYXJ0LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2xpbmUtZGF5cy1jaGFydC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIFR1aUhvdmVyZWRTZXJ2aWNlLFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUdWlMaW5lQ2hhcnRIaW50LFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IFR1aUxpbmVEYXlzQ2hhcnQsXG4gICAgICAgIH0sXG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgICdbc3R5bGUuekluZGV4XSc6ICd6SW5kZXgnLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUxpbmVEYXlzQ2hhcnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gICAgcHJpdmF0ZSByZWFkb25seSB6b25lID0gaW5qZWN0KE5nWm9uZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBob3ZlcmVkJCA9IGluamVjdChUdWlIb3ZlcmVkU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zID0gaW5qZWN0KFRVSV9MSU5FX0NIQVJUX09QVElPTlMpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaGludERpcmVjdGl2ZSA9IGluamVjdChUdWlMaW5lRGF5c0NoYXJ0SGludCwge1xuICAgICAgICBvcHRpb25hbDogdHJ1ZSxcbiAgICB9KTtcblxuICAgIEBWaWV3Q2hpbGRyZW4oVHVpTGluZUNoYXJ0KVxuICAgIHB1YmxpYyByZWFkb25seSBjaGFydHM6IFF1ZXJ5TGlzdDxUdWlMaW5lQ2hhcnQ+ID0gRU1QVFlfUVVFUlk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB5ID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGhlaWdodCA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzbW9vdGhpbmdGYWN0b3IgPSB0aGlzLm9wdGlvbnMuc21vb3RoaW5nRmFjdG9yO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaGludENvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dDxbVHVpRGF5LCBudW1iZXJdPj47XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB4U3RyaW5naWZ5OiBUdWlTdHJpbmdIYW5kbGVyPFR1aURheT4gfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHlTdHJpbmdpZnk6IFR1aVN0cmluZ0hhbmRsZXI8bnVtYmVyPiB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZG90cyA9IHRoaXMub3B0aW9ucy5kb3RzO1xuXG4gICAgcHVibGljIHpJbmRleCA9IDA7XG5cbiAgICBwdWJsaWMgdmFsdWU6IFJlYWRvbmx5QXJyYXk8W1R1aURheSwgbnVtYmVyXT4gPSBbXTtcblxuICAgIEBJbnB1dCgndmFsdWUnKVxuICAgIHB1YmxpYyBzZXQgdmFsdWVTZXR0ZXIodmFsdWU6IFJlYWRvbmx5QXJyYXk8W1R1aURheSwgbnVtYmVyXT4pIHtcbiAgICAgICAgaWYgKCF2YWx1ZS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSBbXTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgc3RhcnQgPSB2YWx1ZVswXT8uWzBdO1xuICAgICAgICBjb25zdCBlbmQgPSB2YWx1ZVt2YWx1ZS5sZW5ndGggLSAxXTtcbiAgICAgICAgY29uc3QgbXV0YWJsZSA9IFsuLi52YWx1ZV07XG4gICAgICAgIGNvbnN0IGxlbmd0aCA9IHN0YXJ0ICYmIGVuZCA/IFR1aURheS5sZW5ndGhCZXR3ZWVuKHN0YXJ0LCBlbmRbMF0pICsgMSA6IDA7XG5cbiAgICAgICAgdGhpcy52YWx1ZSA9IEFycmF5LmZyb20oe2xlbmd0aH0sIChfLCBkYXkpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHN0YXJ0TXV0YWJsZSA9IG11dGFibGVbMF0/LlswXTtcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnREYXkgPSBzdGFydD8uYXBwZW5kKHtkYXl9KTtcbiAgICAgICAgICAgIGNvbnN0IHNoaWZ0ZWQgPVxuICAgICAgICAgICAgICAgIHN0YXJ0TXV0YWJsZSAmJiBjdXJyZW50RGF5Py5kYXlTYW1lKHN0YXJ0TXV0YWJsZSlcbiAgICAgICAgICAgICAgICAgICAgPyBtdXRhYmxlLnNoaWZ0KClcbiAgICAgICAgICAgICAgICAgICAgOiBudWxsO1xuICAgICAgICAgICAgY29uc3QgY3VycmVudFZhbHVlID0gc2hpZnRlZCA/IHNoaWZ0ZWRbMV0gOiBOYU47XG5cbiAgICAgICAgICAgIHJldHVybiBbY3VycmVudERheSwgY3VycmVudFZhbHVlXSBhcyBbVHVpRGF5LCBudW1iZXJdO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGhpbnQoKTpcbiAgICAgICAgfCBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHQ8W1R1aURheSwgbnVtYmVyXT4+XG4gICAgICAgIHwgUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0PHJlYWRvbmx5IFR1aVBvaW50W10+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhpbnREaXJlY3RpdmU/LmhpbnQgPz8gdGhpcy5oaW50Q29udGVudDtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICBjb21iaW5lTGF0ZXN0KFt0dWlMaW5lQ2hhcnREcml2ZXJzKHRoaXMuY2hhcnRzKSwgdGhpcy5ob3ZlcmVkJF0pXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBmaWx0ZXIoKHJlc3VsdCkgPT4gIXJlc3VsdC5zb21lKEJvb2xlYW4pKSxcbiAgICAgICAgICAgICAgICB0dWlab25lZnJlZSh0aGlzLnpvbmUpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkhvdmVyZWQoTmFOKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbkhvdmVyZWQoZGF5OiBUdWlEYXkgfCBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgaWYgKHR1aUlzTnVtYmVyKGRheSkpIHtcbiAgICAgICAgICAgIHRoaXMuY2hhcnRzLmZvckVhY2goKGNoYXJ0KSA9PiBjaGFydC5vbkhvdmVyZWQoTmFOKSk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gdGhpcy52YWx1ZVswXT8uWzBdO1xuICAgICAgICBjb25zdCBpbmRleCA9IHN0YXJ0ICYmIGRheSA/IFR1aU1vbnRoLmxlbmd0aEJldHdlZW4oc3RhcnQsIGRheSkgOiAwO1xuICAgICAgICBjb25zdCB4ID0gc3RhcnQgJiYgZGF5ID8gVHVpRGF5Lmxlbmd0aEJldHdlZW4oc3RhcnQsIGRheSkgKyBzdGFydC5kYXkgLSAxIDogMDtcbiAgICAgICAgY29uc3QgY3VycmVudCA9IHRoaXMuY2hhcnRzLmdldChpbmRleCk7XG5cbiAgICAgICAgdGhpcy5jaGFydHMuZm9yRWFjaCgoY2hhcnQpID0+IHtcbiAgICAgICAgICAgIGlmIChjaGFydCA9PT0gY3VycmVudCkge1xuICAgICAgICAgICAgICAgIGN1cnJlbnQub25Ib3ZlcmVkKGN1cnJlbnQudmFsdWUuZmluZEluZGV4KChwb2ludCkgPT4gcG9pbnRbMF0gPT09IHgpKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY2hhcnQub25Ib3ZlcmVkKE5hTik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyByYWlzZShpbmRleDogbnVtYmVyLCB7dmFsdWV9OiBUdWlMaW5lQ2hhcnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeCA9IHZhbHVlW2luZGV4XT8uWzBdIHx8IDA7XG4gICAgICAgIGNvbnN0IG1vbnRoID0gdGhpcy5nZXREYXkoeCk7XG5cbiAgICAgICAgaWYgKCFtb250aCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuaGludERpcmVjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy5oaW50RGlyZWN0aXZlLnJhaXNlKG1vbnRoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMub25Ib3ZlcmVkKG1vbnRoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXRDb250ZXh0KGluZGV4OiBudW1iZXIsIHt2YWx1ZX06IFR1aUxpbmVDaGFydCk6IHVua25vd24ge1xuICAgICAgICBjb25zdCB4ID0gdmFsdWVbaW5kZXhdPy5bMF0gfHwgMDtcbiAgICAgICAgY29uc3QgZGF5ID0gdGhpcy5nZXREYXkoeCk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaGludERpcmVjdGl2ZSAmJiBkYXlcbiAgICAgICAgICAgID8gdGhpcy5oaW50RGlyZWN0aXZlLmdldENvbnRleHQoZGF5KVxuICAgICAgICAgICAgOiB0aGlzLmdldEhpbnRDb250ZXh0KHgsIHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgbW9udGhzKCk6IFJlYWRvbmx5QXJyYXk8cmVhZG9ubHkgVHVpUG9pbnRbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZS5sZW5ndGggPyB0aGlzLmJyZWFrTW9udGhzKHRoaXMudmFsdWUpIDogRU1QVFlfQVJSQVk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBmaXJzdFdpZHRoKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLm1vbnRocy5sZW5ndGggKiAodGhpcy52YWx1ZVswXT8uWzBdLmRheXNDb3VudCB8fCAwKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByb3RlY3RlZCBnZXRIaW50Q29udGV4dChcbiAgICAgICAgeDogbnVtYmVyLFxuICAgICAgICB2YWx1ZTogUmVhZG9ubHlBcnJheTxbVHVpRGF5LCBudW1iZXJdPixcbiAgICApOiBbVHVpRGF5LCBudW1iZXJdIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB2YWx1ZVt4IC0gKHZhbHVlWzBdPy5bMF0/LmRheSB8fCAwKSArIDFdID8/IG51bGw7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRheXNTdHJpbmdpZnk6IFR1aVN0cmluZ0hhbmRsZXI8bnVtYmVyPiA9IChpbmRleCkgPT4ge1xuICAgICAgICBjb25zdCBkYXkgPSB0aGlzLmdldERheShpbmRleCk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMueFN0cmluZ2lmeSAmJiBkYXkgPyB0aGlzLnhTdHJpbmdpZnkoZGF5KSA6ICcnO1xuICAgIH07XG5cbiAgICBwcm90ZWN0ZWQgZ2V0WChpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3Qgc3RhcnQgPSB0aGlzLnZhbHVlWzBdPy5bMF07XG4gICAgICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzLmdldERheShpbmRleCk7XG4gICAgICAgIGNvbnN0IG1vbnRocyA9IHN0YXJ0ICYmIGN1cnJlbnQgPyBUdWlNb250aC5sZW5ndGhCZXR3ZWVuKHN0YXJ0LCBjdXJyZW50KSA6IDA7XG4gICAgICAgIGNvbnN0IG9mZnNldCA9IG1vbnRocyAqIChjdXJyZW50Py5kYXlzQ291bnQgfHwgMCk7XG5cbiAgICAgICAgcmV0dXJuIGluZGV4IC0gb2Zmc2V0O1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXRXaWR0aChpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuICh0aGlzLmdldERheShpbmRleCk/LmRheXNDb3VudCB8fCAwKSAqIHRoaXMubW9udGhzLmxlbmd0aDtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgYnJlYWtNb250aHMoXG4gICAgICAgIHZhbHVlOiBSZWFkb25seUFycmF5PFtUdWlEYXksIG51bWJlcl0+LFxuICAgICk6IFJlYWRvbmx5QXJyYXk8cmVhZG9ubHkgVHVpUG9pbnRbXT4ge1xuICAgICAgICBjb25zdCBvZmZzZXQgPSAodmFsdWVbMF0/LlswXS5kYXkgfHwgMSkgLSAxO1xuICAgICAgICBjb25zdCBzdGFydCA9IHZhbHVlWzBdPy5bMF07XG4gICAgICAgIGNvbnN0IGVuZCA9IHZhbHVlW3ZhbHVlLmxlbmd0aCAtIDFdPy5bMF07XG5cbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20oXG4gICAgICAgICAgICB7bGVuZ3RoOiBzdGFydCAmJiBlbmQgPyBUdWlNb250aC5sZW5ndGhCZXR3ZWVuKHN0YXJ0LCBlbmQpICsgMSA6IDB9LFxuICAgICAgICAgICAgKF8sIGkpID0+IGkgKyAoc3RhcnQ/Lm1vbnRoIHx8IDApICsgKHN0YXJ0Py55ZWFyIHx8IDApICogMTIsXG4gICAgICAgIClcbiAgICAgICAgICAgIC5tYXAoKGFic29sdXRlTW9udGgpID0+XG4gICAgICAgICAgICAgICAgdmFsdWVcbiAgICAgICAgICAgICAgICAgICAgLm1hcDxUdWlQb2ludCB8IG51bGw+KChbe21vbnRoLCB5ZWFyfSwgeV0sIGluZGV4KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgbW9udGggKyB5ZWFyICogMTIgPT09IGFic29sdXRlTW9udGggPyBbaW5kZXggKyBvZmZzZXQsIHldIDogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAuZmlsdGVyKHR1aUlzUHJlc2VudCksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAubWFwKChtb250aCwgaW5kZXgsIGFycmF5KSA9PlxuICAgICAgICAgICAgICAgIGluZGV4ID09PSBhcnJheS5sZW5ndGggLSAxXG4gICAgICAgICAgICAgICAgICAgID8gbW9udGhcbiAgICAgICAgICAgICAgICAgICAgOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC4uLm1vbnRoLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBhcnJheVtpbmRleCArIDFdPy5maW5kKChkYXkpID0+ICFOdW1iZXIuaXNOYU4oZGF5WzFdKSkgfHwgRFVNTVksXG4gICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXREYXkoaW5kZXg6IG51bWJlcik6IFR1aURheSB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gdGhpcy52YWx1ZVswXT8uWzBdO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlW2luZGV4IC0gKHN0YXJ0Py5kYXkgfHwgMCkgKyAxXT8uWzBdO1xuICAgIH1cbn1cbiIsIjx0dWktbGluZS1jaGFydFxuICAgICpuZ0Zvcj1cImxldCBtb250aCBvZiBtb250aHM7IGxldCBmaXJzdCA9IGZpcnN0XCJcbiAgICBjbGFzcz1cInQtY2hhcnRcIlxuICAgIFtkb3RzXT1cImRvdHNcIlxuICAgIFtoZWlnaHRdPVwiaGVpZ2h0XCJcbiAgICBbc21vb3RoaW5nRmFjdG9yXT1cInNtb290aGluZ0ZhY3RvclwiXG4gICAgW3N0eWxlLnpJbmRleF09XCJ6SW5kZXhcIlxuICAgIFt0dWlIaW50Q29udGVudF09XCJoaW50Q29udGVudCA/IGhpbnQgOiAnJ1wiXG4gICAgW3ZhbHVlXT1cIm1vbnRoXCJcbiAgICBbd2lkdGhdPVwiZmlyc3QgPyBmaXJzdFdpZHRoIDogZ2V0V2lkdGgobW9udGhbMF0/LlswXSA/PyAwKVwiXG4gICAgW3hdPVwiZmlyc3QgPyAwIDogZ2V0WChtb250aFswXT8uWzBdID8/IDApXCJcbiAgICBbeFN0cmluZ2lmeV09XCJ4U3RyaW5naWZ5ID8gZGF5c1N0cmluZ2lmeSA6IG51bGxcIlxuICAgIFt5XT1cInlcIlxuICAgIFt5U3RyaW5naWZ5XT1cInlTdHJpbmdpZnlcIlxuLz5cbjxuZy10ZW1wbGF0ZVxuICAgICNoaW50XG4gICAgbGV0LXBvaW50XG4+XG4gICAgPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiaGludENvbnRlbnQgYXMgdGV4dDsgY29udGV4dDogeyRpbXBsaWNpdDogZ2V0SGludENvbnRleHQocG9pbnRbMF0sIHZhbHVlKX1cIj5cbiAgICAgICAge3sgdGV4dCB9fVxuICAgIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -11,7 +11,7 @@ import { tuiZonefree } from '@taiga-ui/cdk/observables';
11
11
  import { tuiPure, tuiIsNumber, tuiIsPresent } from '@taiga-ui/cdk/utils/miscellaneous';
12
12
  import * as i1 from '@taiga-ui/core/directives/hint';
13
13
  import { TuiHint } from '@taiga-ui/core/directives/hint';
14
- import { PolymorpheusOutlet, PolymorpheusTemplate } from '@taiga-ui/polymorpheus';
14
+ import { PolymorpheusOutlet } from '@taiga-ui/polymorpheus';
15
15
  import { combineLatest, filter } from 'rxjs';
16
16
 
17
17
  function find(value, current) {
@@ -219,7 +219,7 @@ __decorate([
219
219
  ], TuiLineDaysChart.prototype, "breakMonths", null);
220
220
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiLineDaysChart, decorators: [{
221
221
  type: Component,
222
- args: [{ standalone: true, selector: 'tui-line-days-chart', imports: [NgForOf, PolymorpheusOutlet, PolymorpheusTemplate, TuiHint, TuiLineChart], changeDetection: ChangeDetectionStrategy.OnPush, providers: [
222
+ args: [{ standalone: true, selector: 'tui-line-days-chart', imports: [NgForOf, PolymorpheusOutlet, TuiHint, TuiLineChart], changeDetection: ChangeDetectionStrategy.OnPush, providers: [
223
223
  TuiHoveredService,
224
224
  {
225
225
  provide: TuiLineChartHint,
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-charts-components-line-days-chart.mjs","sources":["../../../projects/addon-charts/components/line-days-chart/line-days-chart-hint.directive.ts","../../../projects/addon-charts/components/line-days-chart/line-days-chart.component.ts","../../../projects/addon-charts/components/line-days-chart/line-days-chart.template.html","../../../projects/addon-charts/components/line-days-chart/taiga-ui-addon-charts-components-line-days-chart.ts"],"sourcesContent":["import {\n type AfterContentInit,\n ContentChildren,\n DestroyRef,\n Directive,\n forwardRef,\n inject,\n Input,\n NgZone,\n type QueryList,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {tuiLineChartDrivers} from '@taiga-ui/addon-charts/components/line-chart';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {type TuiDay} from '@taiga-ui/cdk/date-time';\nimport {TuiHoveredService} from '@taiga-ui/cdk/directives/hovered';\nimport {tuiZonefree} from '@taiga-ui/cdk/observables';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiPoint} from '@taiga-ui/core/types';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\nimport {combineLatest, filter} from 'rxjs';\n\nimport {TuiLineDaysChart} from './line-days-chart.component';\n\nfunction find(value: ReadonlyArray<[TuiDay, number]>, current: TuiDay): [TuiDay, number] {\n return value.find(([day]) => day.daySame(current)) || [current, NaN];\n}\n\n// TODO: Consider extending TuiLineChartHintDirective\n@Directive({\n standalone: true,\n selector: '[tuiLineChartHint]',\n providers: [TuiHoveredService],\n})\nexport class TuiLineDaysChartHint implements AfterContentInit {\n @ContentChildren(forwardRef(() => TuiLineDaysChart))\n private readonly charts: QueryList<TuiLineDaysChart> = EMPTY_QUERY;\n\n private readonly destroyRef = inject(DestroyRef);\n private readonly zone = inject(NgZone);\n private readonly hovered$ = inject(TuiHoveredService);\n\n @Input('tuiLineChartHint')\n public hint: PolymorpheusContent<TuiContext<readonly TuiPoint[]>>;\n\n public ngAfterContentInit(): void {\n combineLatest([\n ...this.charts.map(({charts}) => tuiLineChartDrivers(charts)),\n this.hovered$,\n ])\n .pipe(\n filter((result) => !result.some(Boolean)),\n tuiZonefree(this.zone),\n takeUntilDestroyed(this.destroyRef),\n )\n .subscribe(() => {\n this.charts.forEach((chart) => chart.onHovered(NaN));\n });\n }\n\n public getContext(day: TuiDay): ReadonlyArray<[TuiDay, number]> {\n return this.getMap(...this.charts.map(({value}) => value)).get(String(day)) || [];\n }\n\n public raise(day: TuiDay): void {\n const current = this.charts\n .map(({value}) => (day ? find(value, day) : []))\n .filter(([_, value]) => !Number.isNaN(value));\n const sorted = [...current].sort((a, b) => a[1] - b[1]);\n\n this.charts.forEach((chart, index) => {\n const item = current[index];\n\n chart.onHovered(day);\n chart.zIndex = Math.max(item ? sorted.indexOf(item) : 0, 0);\n });\n }\n\n @tuiPure\n private getMap(\n ...values: Array<ReadonlyArray<[TuiDay, number]>>\n ): Map<string, ReadonlyArray<[TuiDay, number]>> {\n return (values[0] || []).reduce(\n (map, [day]) =>\n map.set(\n String(day),\n values.map((value) => find(value, day)),\n ),\n new Map<string, ReadonlyArray<[TuiDay, number]>>(),\n );\n }\n}\n","import {NgForOf} from '@angular/common';\nimport {\n type AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n inject,\n Input,\n NgZone,\n type QueryList,\n ViewChildren,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {\n TUI_LINE_CHART_OPTIONS,\n TuiLineChart,\n tuiLineChartDrivers,\n TuiLineChartHint,\n} from '@taiga-ui/addon-charts/components/line-chart';\nimport {EMPTY_ARRAY, EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {TuiDay, TuiMonth} from '@taiga-ui/cdk/date-time';\nimport {TuiHoveredService} from '@taiga-ui/cdk/directives/hovered';\nimport {tuiZonefree} from '@taiga-ui/cdk/observables';\nimport {type TuiContext, type TuiStringHandler} from '@taiga-ui/cdk/types';\nimport {tuiIsNumber, tuiIsPresent, tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiHint} from '@taiga-ui/core/directives/hint';\nimport {type TuiPoint} from '@taiga-ui/core/types';\nimport {\n type PolymorpheusContent,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n} from '@taiga-ui/polymorpheus';\nimport {combineLatest, filter} from 'rxjs';\n\nimport {TuiLineDaysChartHint} from './line-days-chart-hint.directive';\n\nconst DUMMY: TuiPoint = [NaN, NaN];\n\n@Component({\n standalone: true,\n selector: 'tui-line-days-chart',\n imports: [NgForOf, PolymorpheusOutlet, PolymorpheusTemplate, TuiHint, TuiLineChart],\n templateUrl: './line-days-chart.template.html',\n styleUrls: ['./line-days-chart.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n TuiHoveredService,\n {\n provide: TuiLineChartHint,\n useExisting: TuiLineDaysChart,\n },\n ],\n host: {\n '[style.zIndex]': 'zIndex',\n },\n})\nexport class TuiLineDaysChart implements AfterViewInit {\n private readonly destroyRef = inject(DestroyRef);\n private readonly zone = inject(NgZone);\n private readonly hovered$ = inject(TuiHoveredService);\n private readonly options = inject(TUI_LINE_CHART_OPTIONS);\n private readonly hintDirective = inject(TuiLineDaysChartHint, {\n optional: true,\n });\n\n @ViewChildren(TuiLineChart)\n public readonly charts: QueryList<TuiLineChart> = EMPTY_QUERY;\n\n @Input()\n public y = 0;\n\n @Input()\n public height = 0;\n\n @Input()\n public smoothingFactor = this.options.smoothingFactor;\n\n @Input()\n public hintContent: PolymorpheusContent<TuiContext<[TuiDay, number]>>;\n\n @Input()\n public xStringify: TuiStringHandler<TuiDay> | null = null;\n\n @Input()\n public yStringify: TuiStringHandler<number> | null = null;\n\n @Input()\n public dots = this.options.dots;\n\n public zIndex = 0;\n\n public value: ReadonlyArray<[TuiDay, number]> = [];\n\n @Input('value')\n public set valueSetter(value: ReadonlyArray<[TuiDay, number]>) {\n if (!value.length) {\n this.value = [];\n\n return;\n }\n\n const start = value[0]?.[0];\n const end = value[value.length - 1];\n const mutable = [...value];\n const length = start && end ? TuiDay.lengthBetween(start, end[0]) + 1 : 0;\n\n this.value = Array.from({length}, (_, day) => {\n const startMutable = mutable[0]?.[0];\n const currentDay = start?.append({day});\n const shifted =\n startMutable && currentDay?.daySame(startMutable)\n ? mutable.shift()\n : null;\n const currentValue = shifted ? shifted[1] : NaN;\n\n return [currentDay, currentValue] as [TuiDay, number];\n });\n }\n\n public get hint():\n | PolymorpheusContent<TuiContext<[TuiDay, number]>>\n | PolymorpheusContent<TuiContext<readonly TuiPoint[]>> {\n return this.hintDirective?.hint ?? this.hintContent;\n }\n\n public ngAfterViewInit(): void {\n combineLatest([tuiLineChartDrivers(this.charts), this.hovered$])\n .pipe(\n filter((result) => !result.some(Boolean)),\n tuiZonefree(this.zone),\n takeUntilDestroyed(this.destroyRef),\n )\n .subscribe(() => {\n this.onHovered(NaN);\n });\n }\n\n public onHovered(day: TuiDay | number): void {\n if (tuiIsNumber(day)) {\n this.charts.forEach((chart) => chart.onHovered(NaN));\n\n return;\n }\n\n const start = this.value[0]?.[0];\n const index = start && day ? TuiMonth.lengthBetween(start, day) : 0;\n const x = start && day ? TuiDay.lengthBetween(start, day) + start.day - 1 : 0;\n const current = this.charts.get(index);\n\n this.charts.forEach((chart) => {\n if (chart === current) {\n current.onHovered(current.value.findIndex((point) => point[0] === x));\n } else {\n chart.onHovered(NaN);\n }\n });\n }\n\n public raise(index: number, {value}: TuiLineChart): void {\n const x = value[index]?.[0] || 0;\n const month = this.getDay(x);\n\n if (!month) {\n return;\n }\n\n if (this.hintDirective) {\n this.hintDirective.raise(month);\n } else {\n this.onHovered(month);\n }\n }\n\n public getContext(index: number, {value}: TuiLineChart): unknown {\n const x = value[index]?.[0] || 0;\n const day = this.getDay(x);\n\n return this.hintDirective && day\n ? this.hintDirective.getContext(day)\n : this.getHintContext(x, this.value);\n }\n\n protected get months(): ReadonlyArray<readonly TuiPoint[]> {\n return this.value.length ? this.breakMonths(this.value) : EMPTY_ARRAY;\n }\n\n protected get firstWidth(): number {\n return this.months.length * (this.value[0]?.[0].daysCount || 0);\n }\n\n @tuiPure\n protected getHintContext(\n x: number,\n value: ReadonlyArray<[TuiDay, number]>,\n ): [TuiDay, number] | null {\n return value[x - (value[0]?.[0]?.day || 0) + 1] ?? null;\n }\n\n protected readonly daysStringify: TuiStringHandler<number> = (index) => {\n const day = this.getDay(index);\n\n return this.xStringify && day ? this.xStringify(day) : '';\n };\n\n protected getX(index: number): number {\n const start = this.value[0]?.[0];\n const current = this.getDay(index);\n const months = start && current ? TuiMonth.lengthBetween(start, current) : 0;\n const offset = months * (current?.daysCount || 0);\n\n return index - offset;\n }\n\n protected getWidth(index: number): number {\n return (this.getDay(index)?.daysCount || 0) * this.months.length;\n }\n\n @tuiPure\n private breakMonths(\n value: ReadonlyArray<[TuiDay, number]>,\n ): ReadonlyArray<readonly TuiPoint[]> {\n const offset = (value[0]?.[0].day || 1) - 1;\n const start = value[0]?.[0];\n const end = value[value.length - 1]?.[0];\n\n return Array.from(\n {length: start && end ? TuiMonth.lengthBetween(start, end) + 1 : 0},\n (_, i) => i + (start?.month || 0) + (start?.year || 0) * 12,\n )\n .map((absoluteMonth) =>\n value\n .map<TuiPoint | null>(([{month, year}, y], index) =>\n month + year * 12 === absoluteMonth ? [index + offset, y] : null,\n )\n .filter(tuiIsPresent),\n )\n .map((month, index, array) =>\n index === array.length - 1\n ? month\n : [\n ...month,\n array[index + 1]?.find((day) => !Number.isNaN(day[1])) || DUMMY,\n ],\n );\n }\n\n private getDay(index: number): TuiDay | undefined {\n const start = this.value[0]?.[0];\n\n return this.value[index - (start?.day || 0) + 1]?.[0];\n }\n}\n","<tui-line-chart\n *ngFor=\"let month of months; let first = first\"\n class=\"t-chart\"\n [dots]=\"dots\"\n [height]=\"height\"\n [smoothingFactor]=\"smoothingFactor\"\n [style.zIndex]=\"zIndex\"\n [tuiHintContent]=\"hintContent ? hint : ''\"\n [value]=\"month\"\n [width]=\"first ? firstWidth : getWidth(month[0]?.[0] ?? 0)\"\n [x]=\"first ? 0 : getX(month[0]?.[0] ?? 0)\"\n [xStringify]=\"xStringify ? daysStringify : null\"\n [y]=\"y\"\n [yStringify]=\"yStringify\"\n/>\n<ng-template\n #hint\n let-point\n>\n <ng-container *polymorpheusOutlet=\"hintContent as text; context: {$implicit: getHintContext(point[0], value)}\">\n {{ text }}\n </ng-container>\n</ng-template>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-addon-charts-components-line-days-chart.mjs","sources":["../../../projects/addon-charts/components/line-days-chart/line-days-chart-hint.directive.ts","../../../projects/addon-charts/components/line-days-chart/line-days-chart.component.ts","../../../projects/addon-charts/components/line-days-chart/line-days-chart.template.html","../../../projects/addon-charts/components/line-days-chart/taiga-ui-addon-charts-components-line-days-chart.ts"],"sourcesContent":["import {\n type AfterContentInit,\n ContentChildren,\n DestroyRef,\n Directive,\n forwardRef,\n inject,\n Input,\n NgZone,\n type QueryList,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {tuiLineChartDrivers} from '@taiga-ui/addon-charts/components/line-chart';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {type TuiDay} from '@taiga-ui/cdk/date-time';\nimport {TuiHoveredService} from '@taiga-ui/cdk/directives/hovered';\nimport {tuiZonefree} from '@taiga-ui/cdk/observables';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiPoint} from '@taiga-ui/core/types';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\nimport {combineLatest, filter} from 'rxjs';\n\nimport {TuiLineDaysChart} from './line-days-chart.component';\n\nfunction find(value: ReadonlyArray<[TuiDay, number]>, current: TuiDay): [TuiDay, number] {\n return value.find(([day]) => day.daySame(current)) || [current, NaN];\n}\n\n// TODO: Consider extending TuiLineChartHintDirective\n@Directive({\n standalone: true,\n selector: '[tuiLineChartHint]',\n providers: [TuiHoveredService],\n})\nexport class TuiLineDaysChartHint implements AfterContentInit {\n @ContentChildren(forwardRef(() => TuiLineDaysChart))\n private readonly charts: QueryList<TuiLineDaysChart> = EMPTY_QUERY;\n\n private readonly destroyRef = inject(DestroyRef);\n private readonly zone = inject(NgZone);\n private readonly hovered$ = inject(TuiHoveredService);\n\n @Input('tuiLineChartHint')\n public hint: PolymorpheusContent<TuiContext<readonly TuiPoint[]>>;\n\n public ngAfterContentInit(): void {\n combineLatest([\n ...this.charts.map(({charts}) => tuiLineChartDrivers(charts)),\n this.hovered$,\n ])\n .pipe(\n filter((result) => !result.some(Boolean)),\n tuiZonefree(this.zone),\n takeUntilDestroyed(this.destroyRef),\n )\n .subscribe(() => {\n this.charts.forEach((chart) => chart.onHovered(NaN));\n });\n }\n\n public getContext(day: TuiDay): ReadonlyArray<[TuiDay, number]> {\n return this.getMap(...this.charts.map(({value}) => value)).get(String(day)) || [];\n }\n\n public raise(day: TuiDay): void {\n const current = this.charts\n .map(({value}) => (day ? find(value, day) : []))\n .filter(([_, value]) => !Number.isNaN(value));\n const sorted = [...current].sort((a, b) => a[1] - b[1]);\n\n this.charts.forEach((chart, index) => {\n const item = current[index];\n\n chart.onHovered(day);\n chart.zIndex = Math.max(item ? sorted.indexOf(item) : 0, 0);\n });\n }\n\n @tuiPure\n private getMap(\n ...values: Array<ReadonlyArray<[TuiDay, number]>>\n ): Map<string, ReadonlyArray<[TuiDay, number]>> {\n return (values[0] || []).reduce(\n (map, [day]) =>\n map.set(\n String(day),\n values.map((value) => find(value, day)),\n ),\n new Map<string, ReadonlyArray<[TuiDay, number]>>(),\n );\n }\n}\n","import {NgForOf} from '@angular/common';\nimport {\n type AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n inject,\n Input,\n NgZone,\n type QueryList,\n ViewChildren,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {\n TUI_LINE_CHART_OPTIONS,\n TuiLineChart,\n tuiLineChartDrivers,\n TuiLineChartHint,\n} from '@taiga-ui/addon-charts/components/line-chart';\nimport {EMPTY_ARRAY, EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {TuiDay, TuiMonth} from '@taiga-ui/cdk/date-time';\nimport {TuiHoveredService} from '@taiga-ui/cdk/directives/hovered';\nimport {tuiZonefree} from '@taiga-ui/cdk/observables';\nimport {type TuiContext, type TuiStringHandler} from '@taiga-ui/cdk/types';\nimport {tuiIsNumber, tuiIsPresent, tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiHint} from '@taiga-ui/core/directives/hint';\nimport {type TuiPoint} from '@taiga-ui/core/types';\nimport {type PolymorpheusContent, PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\nimport {combineLatest, filter} from 'rxjs';\n\nimport {TuiLineDaysChartHint} from './line-days-chart-hint.directive';\n\nconst DUMMY: TuiPoint = [NaN, NaN];\n\n@Component({\n standalone: true,\n selector: 'tui-line-days-chart',\n imports: [NgForOf, PolymorpheusOutlet, TuiHint, TuiLineChart],\n templateUrl: './line-days-chart.template.html',\n styleUrls: ['./line-days-chart.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n TuiHoveredService,\n {\n provide: TuiLineChartHint,\n useExisting: TuiLineDaysChart,\n },\n ],\n host: {\n '[style.zIndex]': 'zIndex',\n },\n})\nexport class TuiLineDaysChart implements AfterViewInit {\n private readonly destroyRef = inject(DestroyRef);\n private readonly zone = inject(NgZone);\n private readonly hovered$ = inject(TuiHoveredService);\n private readonly options = inject(TUI_LINE_CHART_OPTIONS);\n private readonly hintDirective = inject(TuiLineDaysChartHint, {\n optional: true,\n });\n\n @ViewChildren(TuiLineChart)\n public readonly charts: QueryList<TuiLineChart> = EMPTY_QUERY;\n\n @Input()\n public y = 0;\n\n @Input()\n public height = 0;\n\n @Input()\n public smoothingFactor = this.options.smoothingFactor;\n\n @Input()\n public hintContent: PolymorpheusContent<TuiContext<[TuiDay, number]>>;\n\n @Input()\n public xStringify: TuiStringHandler<TuiDay> | null = null;\n\n @Input()\n public yStringify: TuiStringHandler<number> | null = null;\n\n @Input()\n public dots = this.options.dots;\n\n public zIndex = 0;\n\n public value: ReadonlyArray<[TuiDay, number]> = [];\n\n @Input('value')\n public set valueSetter(value: ReadonlyArray<[TuiDay, number]>) {\n if (!value.length) {\n this.value = [];\n\n return;\n }\n\n const start = value[0]?.[0];\n const end = value[value.length - 1];\n const mutable = [...value];\n const length = start && end ? TuiDay.lengthBetween(start, end[0]) + 1 : 0;\n\n this.value = Array.from({length}, (_, day) => {\n const startMutable = mutable[0]?.[0];\n const currentDay = start?.append({day});\n const shifted =\n startMutable && currentDay?.daySame(startMutable)\n ? mutable.shift()\n : null;\n const currentValue = shifted ? shifted[1] : NaN;\n\n return [currentDay, currentValue] as [TuiDay, number];\n });\n }\n\n public get hint():\n | PolymorpheusContent<TuiContext<[TuiDay, number]>>\n | PolymorpheusContent<TuiContext<readonly TuiPoint[]>> {\n return this.hintDirective?.hint ?? this.hintContent;\n }\n\n public ngAfterViewInit(): void {\n combineLatest([tuiLineChartDrivers(this.charts), this.hovered$])\n .pipe(\n filter((result) => !result.some(Boolean)),\n tuiZonefree(this.zone),\n takeUntilDestroyed(this.destroyRef),\n )\n .subscribe(() => {\n this.onHovered(NaN);\n });\n }\n\n public onHovered(day: TuiDay | number): void {\n if (tuiIsNumber(day)) {\n this.charts.forEach((chart) => chart.onHovered(NaN));\n\n return;\n }\n\n const start = this.value[0]?.[0];\n const index = start && day ? TuiMonth.lengthBetween(start, day) : 0;\n const x = start && day ? TuiDay.lengthBetween(start, day) + start.day - 1 : 0;\n const current = this.charts.get(index);\n\n this.charts.forEach((chart) => {\n if (chart === current) {\n current.onHovered(current.value.findIndex((point) => point[0] === x));\n } else {\n chart.onHovered(NaN);\n }\n });\n }\n\n public raise(index: number, {value}: TuiLineChart): void {\n const x = value[index]?.[0] || 0;\n const month = this.getDay(x);\n\n if (!month) {\n return;\n }\n\n if (this.hintDirective) {\n this.hintDirective.raise(month);\n } else {\n this.onHovered(month);\n }\n }\n\n public getContext(index: number, {value}: TuiLineChart): unknown {\n const x = value[index]?.[0] || 0;\n const day = this.getDay(x);\n\n return this.hintDirective && day\n ? this.hintDirective.getContext(day)\n : this.getHintContext(x, this.value);\n }\n\n protected get months(): ReadonlyArray<readonly TuiPoint[]> {\n return this.value.length ? this.breakMonths(this.value) : EMPTY_ARRAY;\n }\n\n protected get firstWidth(): number {\n return this.months.length * (this.value[0]?.[0].daysCount || 0);\n }\n\n @tuiPure\n protected getHintContext(\n x: number,\n value: ReadonlyArray<[TuiDay, number]>,\n ): [TuiDay, number] | null {\n return value[x - (value[0]?.[0]?.day || 0) + 1] ?? null;\n }\n\n protected readonly daysStringify: TuiStringHandler<number> = (index) => {\n const day = this.getDay(index);\n\n return this.xStringify && day ? this.xStringify(day) : '';\n };\n\n protected getX(index: number): number {\n const start = this.value[0]?.[0];\n const current = this.getDay(index);\n const months = start && current ? TuiMonth.lengthBetween(start, current) : 0;\n const offset = months * (current?.daysCount || 0);\n\n return index - offset;\n }\n\n protected getWidth(index: number): number {\n return (this.getDay(index)?.daysCount || 0) * this.months.length;\n }\n\n @tuiPure\n private breakMonths(\n value: ReadonlyArray<[TuiDay, number]>,\n ): ReadonlyArray<readonly TuiPoint[]> {\n const offset = (value[0]?.[0].day || 1) - 1;\n const start = value[0]?.[0];\n const end = value[value.length - 1]?.[0];\n\n return Array.from(\n {length: start && end ? TuiMonth.lengthBetween(start, end) + 1 : 0},\n (_, i) => i + (start?.month || 0) + (start?.year || 0) * 12,\n )\n .map((absoluteMonth) =>\n value\n .map<TuiPoint | null>(([{month, year}, y], index) =>\n month + year * 12 === absoluteMonth ? [index + offset, y] : null,\n )\n .filter(tuiIsPresent),\n )\n .map((month, index, array) =>\n index === array.length - 1\n ? month\n : [\n ...month,\n array[index + 1]?.find((day) => !Number.isNaN(day[1])) || DUMMY,\n ],\n );\n }\n\n private getDay(index: number): TuiDay | undefined {\n const start = this.value[0]?.[0];\n\n return this.value[index - (start?.day || 0) + 1]?.[0];\n }\n}\n","<tui-line-chart\n *ngFor=\"let month of months; let first = first\"\n class=\"t-chart\"\n [dots]=\"dots\"\n [height]=\"height\"\n [smoothingFactor]=\"smoothingFactor\"\n [style.zIndex]=\"zIndex\"\n [tuiHintContent]=\"hintContent ? hint : ''\"\n [value]=\"month\"\n [width]=\"first ? firstWidth : getWidth(month[0]?.[0] ?? 0)\"\n [x]=\"first ? 0 : getX(month[0]?.[0] ?? 0)\"\n [xStringify]=\"xStringify ? daysStringify : null\"\n [y]=\"y\"\n [yStringify]=\"yStringify\"\n/>\n<ng-template\n #hint\n let-point\n>\n <ng-container *polymorpheusOutlet=\"hintContent as text; context: {$implicit: getHintContext(point[0], value)}\">\n {{ text }}\n </ng-container>\n</ng-template>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/addon-charts",
3
- "version": "4.50.0",
3
+ "version": "4.51.0-canary.2b42d75",
4
4
  "description": "Extension package for Taiga UI that adds various charts, graphs and related components.",
5
5
  "keywords": [
6
6
  "angular",
@@ -17,8 +17,8 @@
17
17
  "@angular/common": ">=16.0.0",
18
18
  "@angular/core": ">=16.0.0",
19
19
  "@ng-web-apis/common": "^4.12.0",
20
- "@taiga-ui/cdk": "^4.50.0",
21
- "@taiga-ui/core": "^4.50.0",
20
+ "@taiga-ui/cdk": "^4.51.0",
21
+ "@taiga-ui/core": "^4.51.0",
22
22
  "@taiga-ui/polymorpheus": "^4.9.0"
23
23
  },
24
24
  "module": "fesm2022/taiga-ui-addon-charts.mjs",