@agorapulse/ui-charts 18.0.4 → 18.0.6
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/agorapulse-ui-charts-18.0.6.tgz +0 -0
- package/esm2022/src/lib/chart-metrics-list/chart-metrics-list.component.mjs +3 -3
- package/esm2022/src/lib/chart-pie/chart-pie-options.model.mjs +20 -5
- package/esm2022/src/lib/chart-pie/chart-pie.component.mjs +19 -6
- package/fesm2022/agorapulse-ui-charts.mjs +37 -10
- package/fesm2022/agorapulse-ui-charts.mjs.map +1 -1
- package/package.json +1 -1
- package/src/lib/chart-pie/chart-pie-options.model.d.ts +2 -2
- package/src/lib/chart-pie/chart-pie.component.d.ts +3 -1
- package/agorapulse-ui-charts-18.0.4.tgz +0 -0
|
Binary file
|
|
@@ -12,11 +12,11 @@ export class ChartMetricsListComponent {
|
|
|
12
12
|
ChartMetricType = ChartMetricType;
|
|
13
13
|
digitsInfo = '1.0-1';
|
|
14
14
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ChartMetricsListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
15
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.9", type: ChartMetricsListComponent, isStandalone: true, selector: "ap-chart-metrics-list", inputs: { metrics: "metrics", locale: "locale" }, ngImport: i0, template: "<mat-list>\n @if (metrics) {\n @for (metric of metrics; track metric; let i = $index) {\n <mat-list-item [ngClass]=\"{ 'chart-metric-total': metric.type === ChartMetricType.total }\">\n @if (!metric.children) {\n <div class=\"chart-metric-name metric-label\">\n {{ metric.name }}\n </div>\n }\n @if (metric.children) {\n <div class=\"chart-metric-name\">\n <span class=\"metric-label\">\n {{ metric.name }}\n </span>\n <span class=\"chart-metric-children\">\n @for (item of metric.children; track item) {\n <span>\n <span class=\"child-label\">{{ item.name }}</span>\n :\n <span class=\"child-value\">{{ item.value }}</span>\n </span>\n }\n </span>\n </div>\n }\n <div class=\"chart-metric-value metric-label\">\n {{ metric.value | number: digitsInfo : locale }}\n </div>\n </mat-list-item>\n }\n }\n</mat-list>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}.metric-label{font-size:14px;color:#5d6a82}.chart-metric-total .metric-label{font-size:16px;color:#344563!important;font-weight:700}.chart-metric-name .chart-metric-children{color:#aeb5c1;font-size:14px}.chart-metric-name .chart-metric-children .child-label{margin-left:16px}.chart-metric-value{justify-content:left;flex:1 0 0;flex-direction:row;text-align:end;color:#344563}.mat-mdc-list-item{height:35px}.mat-mdc-list-item ::ng-deep .mdc-list-item__content{padding:0}.mat-mdc-list-item ::ng-deep .mdc-list-item__content .mdc-list-item__primary-text{display:flex;align-items:center}.mat-mdc-list-item:not(:last-child){border-bottom:1px solid var(--sys-border-color-default)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "ngmodule", type: MatDividerModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
15
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.9", type: ChartMetricsListComponent, isStandalone: true, selector: "ap-chart-metrics-list", inputs: { metrics: "metrics", locale: "locale" }, ngImport: i0, template: "<mat-list>\n @if (metrics) {\n @for (metric of metrics; track metric; let i = $index) {\n <mat-list-item [ngClass]=\"{ 'chart-metric-total': metric.type === ChartMetricType.total }\">\n @if (!metric.children) {\n <div class=\"chart-metric-name metric-label\">\n {{ metric.name }}\n </div>\n }\n @if (metric.children) {\n <div class=\"chart-metric-name\">\n <span class=\"metric-label\">\n {{ metric.name }}\n </span>\n <span class=\"chart-metric-children\">\n @for (item of metric.children; track item) {\n <span>\n <span class=\"child-label\">{{ item.name }}</span>\n :\n <span class=\"child-value\">{{ item.value }}</span>\n </span>\n }\n </span>\n </div>\n }\n <div class=\"chart-metric-value metric-label\">\n {{ metric.value | number: digitsInfo : locale }}\n </div>\n </mat-list-item>\n }\n }\n</mat-list>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=reddit]{color:#ff4500}[bgcolor=reddit],[hcolor=reddit]:hover{background-color:#ff4500}[border=reddit]{border:1px solid #ff4500}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}.metric-label{font-size:14px;color:#5d6a82}.chart-metric-total .metric-label{font-size:16px;color:#344563!important;font-weight:700}.chart-metric-name .chart-metric-children{color:#aeb5c1;font-size:14px}.chart-metric-name .chart-metric-children .child-label{margin-left:16px}.chart-metric-value{justify-content:left;flex:1 0 0;flex-direction:row;text-align:end;color:#344563}.mat-mdc-list-item{height:35px}.mat-mdc-list-item ::ng-deep .mdc-list-item__content{padding:0}.mat-mdc-list-item ::ng-deep .mdc-list-item__content .mdc-list-item__primary-text{display:flex;align-items:center}.mat-mdc-list-item:not(:last-child){border-bottom:1px solid var(--sys-border-color-default)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "ngmodule", type: MatDividerModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
16
16
|
}
|
|
17
17
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ChartMetricsListComponent, decorators: [{
|
|
18
18
|
type: Component,
|
|
19
|
-
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'ap-chart-metrics-list', standalone: true, imports: [CommonModule, MatListModule, MatDividerModule], template: "<mat-list>\n @if (metrics) {\n @for (metric of metrics; track metric; let i = $index) {\n <mat-list-item [ngClass]=\"{ 'chart-metric-total': metric.type === ChartMetricType.total }\">\n @if (!metric.children) {\n <div class=\"chart-metric-name metric-label\">\n {{ metric.name }}\n </div>\n }\n @if (metric.children) {\n <div class=\"chart-metric-name\">\n <span class=\"metric-label\">\n {{ metric.name }}\n </span>\n <span class=\"chart-metric-children\">\n @for (item of metric.children; track item) {\n <span>\n <span class=\"child-label\">{{ item.name }}</span>\n :\n <span class=\"child-value\">{{ item.value }}</span>\n </span>\n }\n </span>\n </div>\n }\n <div class=\"chart-metric-value metric-label\">\n {{ metric.value | number: digitsInfo : locale }}\n </div>\n </mat-list-item>\n }\n }\n</mat-list>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}.metric-label{font-size:14px;color:#5d6a82}.chart-metric-total .metric-label{font-size:16px;color:#344563!important;font-weight:700}.chart-metric-name .chart-metric-children{color:#aeb5c1;font-size:14px}.chart-metric-name .chart-metric-children .child-label{margin-left:16px}.chart-metric-value{justify-content:left;flex:1 0 0;flex-direction:row;text-align:end;color:#344563}.mat-mdc-list-item{height:35px}.mat-mdc-list-item ::ng-deep .mdc-list-item__content{padding:0}.mat-mdc-list-item ::ng-deep .mdc-list-item__content .mdc-list-item__primary-text{display:flex;align-items:center}.mat-mdc-list-item:not(:last-child){border-bottom:1px solid var(--sys-border-color-default)}\n"] }]
|
|
19
|
+
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'ap-chart-metrics-list', standalone: true, imports: [CommonModule, MatListModule, MatDividerModule], template: "<mat-list>\n @if (metrics) {\n @for (metric of metrics; track metric; let i = $index) {\n <mat-list-item [ngClass]=\"{ 'chart-metric-total': metric.type === ChartMetricType.total }\">\n @if (!metric.children) {\n <div class=\"chart-metric-name metric-label\">\n {{ metric.name }}\n </div>\n }\n @if (metric.children) {\n <div class=\"chart-metric-name\">\n <span class=\"metric-label\">\n {{ metric.name }}\n </span>\n <span class=\"chart-metric-children\">\n @for (item of metric.children; track item) {\n <span>\n <span class=\"child-label\">{{ item.name }}</span>\n :\n <span class=\"child-value\">{{ item.value }}</span>\n </span>\n }\n </span>\n </div>\n }\n <div class=\"chart-metric-value metric-label\">\n {{ metric.value | number: digitsInfo : locale }}\n </div>\n </mat-list-item>\n }\n }\n</mat-list>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=reddit]{color:#ff4500}[bgcolor=reddit],[hcolor=reddit]:hover{background-color:#ff4500}[border=reddit]{border:1px solid #ff4500}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}.metric-label{font-size:14px;color:#5d6a82}.chart-metric-total .metric-label{font-size:16px;color:#344563!important;font-weight:700}.chart-metric-name .chart-metric-children{color:#aeb5c1;font-size:14px}.chart-metric-name .chart-metric-children .child-label{margin-left:16px}.chart-metric-value{justify-content:left;flex:1 0 0;flex-direction:row;text-align:end;color:#344563}.mat-mdc-list-item{height:35px}.mat-mdc-list-item ::ng-deep .mdc-list-item__content{padding:0}.mat-mdc-list-item ::ng-deep .mdc-list-item__content .mdc-list-item__primary-text{display:flex;align-items:center}.mat-mdc-list-item:not(:last-child){border-bottom:1px solid var(--sys-border-color-default)}\n"] }]
|
|
20
20
|
}], propDecorators: { metrics: [{
|
|
21
21
|
type: Input,
|
|
22
22
|
args: [{
|
|
@@ -25,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
|
|
|
25
25
|
}], locale: [{
|
|
26
26
|
type: Input
|
|
27
27
|
}] } });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtbWV0cmljcy1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWktY2hhcnRzL3NyYy9saWIvY2hhcnQtbWV0cmljcy1saXN0L2NoYXJ0LW1ldHJpY3MtbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpLWNoYXJ0cy9zcmMvbGliL2NoYXJ0LW1ldHJpY3MtbGlzdC9jaGFydC1tZXRyaWNzLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQWUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFVL0QsTUFBTSxPQUFPLHlCQUF5QjtJQUlsQyxPQUFPLEdBQWtCLEVBQUUsQ0FBQztJQUNuQixNQUFNLEdBQUcsSUFBSSxDQUFDO0lBRXZCLGVBQWUsR0FBRyxlQUFlLENBQUM7SUFDbEMsVUFBVSxHQUFHLE9BQU8sQ0FBQzt1R0FSWix5QkFBeUI7MkZBQXpCLHlCQUF5QixtSUNkdEMsNjNDQWdDQSw0d01EcEJjLFlBQVksb0xBQUUsYUFBYSx1UkFBRSxnQkFBZ0I7OzJGQUU5Qyx5QkFBeUI7a0JBUnJDLFNBQVM7c0NBQ1csdUJBQXVCLENBQUMsTUFBTSxZQUNyQyx1QkFBdUIsY0FHckIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsQ0FBQzs4QkFNeEQsT0FBTztzQkFITixLQUFLO3VCQUFDO3dCQUNILFFBQVEsRUFBRSxJQUFJO3FCQUNqQjtnQkFFUSxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpdmlkZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaXZpZGVyJztcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcbmltcG9ydCB7IENoYXJ0TWV0cmljLCBDaGFydE1ldHJpY1R5cGUgfSBmcm9tICcuLi9jaGFydC1tZXRyaWMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBzZWxlY3RvcjogJ2FwLWNoYXJ0LW1ldHJpY3MtbGlzdCcsXG4gICAgc3R5bGVVcmxzOiBbJ2NoYXJ0LW1ldHJpY3MtbGlzdC5jb21wb25lbnQuc2NzcyddLFxuICAgIHRlbXBsYXRlVXJsOiAnY2hhcnQtbWV0cmljcy1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdExpc3RNb2R1bGUsIE1hdERpdmlkZXJNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFydE1ldHJpY3NMaXN0Q29tcG9uZW50IHtcbiAgICBASW5wdXQoe1xuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICB9KVxuICAgIG1ldHJpY3M6IENoYXJ0TWV0cmljW10gPSBbXTtcbiAgICBASW5wdXQoKSBsb2NhbGUgPSAnZW4nO1xuXG4gICAgQ2hhcnRNZXRyaWNUeXBlID0gQ2hhcnRNZXRyaWNUeXBlO1xuICAgIGRpZ2l0c0luZm8gPSAnMS4wLTEnO1xufVxuIiwiPG1hdC1saXN0PlxuICAgIEBpZiAobWV0cmljcykge1xuICAgICAgICBAZm9yIChtZXRyaWMgb2YgbWV0cmljczsgdHJhY2sgbWV0cmljOyBsZXQgaSA9ICRpbmRleCkge1xuICAgICAgICAgICAgPG1hdC1saXN0LWl0ZW0gW25nQ2xhc3NdPVwieyAnY2hhcnQtbWV0cmljLXRvdGFsJzogbWV0cmljLnR5cGUgPT09IENoYXJ0TWV0cmljVHlwZS50b3RhbCB9XCI+XG4gICAgICAgICAgICAgICAgQGlmICghbWV0cmljLmNoaWxkcmVuKSB7XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaGFydC1tZXRyaWMtbmFtZSBtZXRyaWMtbGFiZWxcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IG1ldHJpYy5uYW1lIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaWYgKG1ldHJpYy5jaGlsZHJlbikge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hhcnQtbWV0cmljLW5hbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWV0cmljLWxhYmVsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgbWV0cmljLm5hbWUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hhcnQtbWV0cmljLWNoaWxkcmVuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGZvciAoaXRlbSBvZiBtZXRyaWMuY2hpbGRyZW47IHRyYWNrIGl0ZW0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNoaWxkLWxhYmVsXCI+e3sgaXRlbS5uYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGlsZC12YWx1ZVwiPnt7IGl0ZW0udmFsdWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hhcnQtbWV0cmljLXZhbHVlIG1ldHJpYy1sYWJlbFwiPlxuICAgICAgICAgICAgICAgICAgICB7eyBtZXRyaWMudmFsdWUgfCBudW1iZXI6IGRpZ2l0c0luZm8gOiBsb2NhbGUgfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbWF0LWxpc3QtaXRlbT5cbiAgICAgICAgfVxuICAgIH1cbjwvbWF0LWxpc3Q+XG4iXX0=
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { ChartColors } from '../chart-colors';
|
|
1
2
|
import { ChartOptions, mergeDeep } from '../chart-options';
|
|
2
|
-
|
|
3
|
+
const NAME_MAX_LENGTH = 30;
|
|
3
4
|
export class ChartPieOptions extends ChartOptions {
|
|
4
5
|
static buildPie(options, innerLabels) {
|
|
5
6
|
const defaultPieOptions = {
|
|
@@ -29,6 +30,11 @@ export class ChartPieOptions extends ChartOptions {
|
|
|
29
30
|
},
|
|
30
31
|
}
|
|
31
32
|
: {
|
|
33
|
+
formatter: function () {
|
|
34
|
+
const name = this.point.name.length > NAME_MAX_LENGTH ? this.point.name.substring(0, NAME_MAX_LENGTH) + '...' : this.point.name;
|
|
35
|
+
const roundedPercentage = Math.round((this.point.percentage ?? 0) * 10) / 10 + '%';
|
|
36
|
+
return '\u202B' + name + ': ' + roundedPercentage;
|
|
37
|
+
},
|
|
32
38
|
style: {
|
|
33
39
|
fontSize: '12px',
|
|
34
40
|
color: ChartColors.GREY_COLORS[60],
|
|
@@ -54,14 +60,15 @@ export class ChartPieOptions extends ChartOptions {
|
|
|
54
60
|
};
|
|
55
61
|
return super.build(mergeDeep(defaultPieOptions, options));
|
|
56
62
|
}
|
|
57
|
-
static configurePie(series, options,
|
|
58
|
-
super.configure(series, options,
|
|
63
|
+
static configurePie(series, options, colors, labelDateFormat, innerLabels, mouseEventEnabled = true) {
|
|
64
|
+
super.configure(series, options, undefined, labelDateFormat);
|
|
59
65
|
if (innerLabels && options.legend) {
|
|
60
66
|
options.legend.enabled = true;
|
|
61
67
|
}
|
|
62
68
|
if (series && series.length > 0 && series[0]) {
|
|
63
|
-
options.colors =
|
|
69
|
+
options.colors = colors;
|
|
64
70
|
if (mouseEventEnabled && options.plotOptions?.pie) {
|
|
71
|
+
this.resetColors(series[0].data, innerLabels);
|
|
65
72
|
options.plotOptions.pie.point ??= {};
|
|
66
73
|
options.plotOptions.pie.point.events ??= {};
|
|
67
74
|
options.plotOptions.pie.events ??= {};
|
|
@@ -71,6 +78,14 @@ export class ChartPieOptions extends ChartOptions {
|
|
|
71
78
|
}
|
|
72
79
|
}
|
|
73
80
|
}
|
|
81
|
+
static resetColors(points, innerLabels) {
|
|
82
|
+
points?.forEach(point => {
|
|
83
|
+
delete point?.color;
|
|
84
|
+
if (innerLabels) {
|
|
85
|
+
delete point.dataLabels?.style?.color;
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
}
|
|
74
89
|
static configureEnteringASlice(options, innerLabels) {
|
|
75
90
|
if (options.plotOptions?.pie?.point?.events) {
|
|
76
91
|
options.plotOptions.pie.point.events.mouseOver = function () {
|
|
@@ -138,4 +153,4 @@ export class ChartPieOptions extends ChartOptions {
|
|
|
138
153
|
}
|
|
139
154
|
}
|
|
140
155
|
}
|
|
141
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtcGllLW9wdGlvbnMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpLWNoYXJ0cy9zcmMvbGliL2NoYXJ0LXBpZS9jaGFydC1waWUtb3B0aW9ucy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzNELE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU1RCxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxZQUFZO0lBQzdDLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBZ0IsRUFBRSxXQUFvQjtRQUNsRCxNQUFNLGlCQUFpQixHQUFZO1lBQy9CLEtBQUssRUFBRTtnQkFDSCxJQUFJLEVBQUUsS0FBSztnQkFDWCxtQkFBbUIsRUFBRSxTQUFTO2dCQUM5QixlQUFlLEVBQUUsU0FBUztnQkFDMUIsVUFBVSxFQUFFLEtBQUs7YUFDcEI7WUFDRCxXQUFXLEVBQUU7Z0JBQ1QsR0FBRyxFQUFFO29CQUNELFVBQVUsRUFBRTt3QkFDUixRQUFRLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRTt3QkFDaEMsT0FBTyxFQUFFLElBQUk7cUJBQ2hCO29CQUNELFNBQVMsRUFBRSxLQUFLO2lCQUNuQjtnQkFDRCxNQUFNLEVBQUU7b0JBQ0osZ0JBQWdCLEVBQUUsQ0FBQyxXQUFXO29CQUM5QixVQUFVLEVBQUUsV0FBVzt3QkFDbkIsQ0FBQyxDQUFDOzRCQUNJLE1BQU0sRUFBRSx5QkFBeUI7NEJBQ2pDLEtBQUssRUFBRTtnQ0FDSCxRQUFRLEVBQUUsTUFBTTtnQ0FDaEIsS0FBSyxFQUFFLE9BQU87Z0NBQ2QsV0FBVyxFQUFFLEdBQUc7NkJBQ25CO3lCQUNKO3dCQUNILENBQUMsQ0FBQzs0QkFDSSxLQUFLLEVBQUU7Z0NBQ0gsUUFBUSxFQUFF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LENBQUMsQ0FBQyxDQUFDO1lBQ1AsQ0FBQyxDQUFDO1FBQ04sQ0FBQztJQUNMLENBQUM7SUFFTyxNQUFNLENBQUMsMkJBQTJCLENBQUMsT0FBZ0IsRUFBRSxXQUFvQjtRQUM3RSxJQUFJLE9BQU8sQ0FBQyxXQUFXLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ25DLE9BQU8sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxRQUFRLEdBQUc7Z0JBQ3RDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUU7b0JBQzdDLEtBQUssQ0FBQyxNQUFNLENBQ1I7d0JBQ0ksS0FBSyxFQUFFLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7cUJBQ3JELEVBQ0QsS0FBSyxDQUNSLENBQUM7b0JBQ0YsSUFBSSxXQUFXLEVBQUUsQ0FBQzt3QkFDZCxLQUFLLENBQUMsTUFBTSxDQUNSOzRCQUNJLFVBQVUsRUFBRTtnQ0FDUixLQUFLLEVBQUU7b0NBQ0gsS0FBSyxFQUFFLE9BQU87aUNBQ2pCOzZCQUNKO3lCQUNKLEVBQ0QsS0FBSyxDQUNSLENBQUM7b0JBQ04sQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztnQkFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3hCLENBQUMsQ0FBQztRQUNOLENBQUM7SUFDTCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPcHRpb25zLCBTZXJpZXNQaWVPcHRpb25zIH0gZnJvbSAnaGlnaGNoYXJ0cyc7XG5pbXBvcnQgeyBDaGFydE9wdGlvbnMsIG1lcmdlRGVlcCB9IGZyb20gJy4uL2NoYXJ0LW9wdGlvbnMnO1xuaW1wb3J0IHsgQ2hhcnRDb2xvciwgQ2hhcnRDb2xvcnMgfSBmcm9tICcuLy4uL2NoYXJ0LWNvbG9ycyc7XG5cbmV4cG9ydCBjbGFzcyBDaGFydFBpZU9wdGlvbnMgZXh0ZW5kcyBDaGFydE9wdGlvbnMge1xuICAgIHN0YXRpYyBidWlsZFBpZShvcHRpb25zOiBPcHRpb25zLCBpbm5lckxhYmVsczogYm9vbGVhbik6IE9wdGlvbnMge1xuICAgICAgICBjb25zdCBkZWZhdWx0UGllT3B0aW9uczogT3B0aW9ucyA9IHtcbiAgICAgICAgICAgIGNoYXJ0OiB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ3BpZScsXG4gICAgICAgICAgICAgICAgcGxvdEJhY2tncm91bmRDb2xvcjogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIHBsb3RCb3JkZXJXaWR0aDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIHBsb3RTaGFkb3c6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHBsb3RPcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgcGllOiB7XG4gICAgICAgICAgICAgICAgICAgIGRhdGFMYWJlbHM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3RhbmNlOiBpbm5lckxhYmVscyA/IC00MCA6IDMwLFxuICAgICAgICAgICAgICAgICAgICAgICAgdXNlSFRNTDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgaW5uZXJTaXplOiAnNTAlJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHNlcmllczoge1xuICAgICAgICAgICAgICAgICAgICBhbGxvd1BvaW50U2VsZWN0OiAhaW5uZXJMYWJlbHMsXG4gICAgICAgICAgICAgICAgICAgIGRhdGFMYWJlbHM6IGlubmVyTGFiZWxzXG4gICAgICAgICAgICAgICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdDogJ3twb2ludC5wZXJjZW50YWdlOi4xZn0lJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udFNpemU6ICcxNnB4JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJ3doaXRlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0T3V0bGluZTogJzAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiAnMTJweCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IENoYXJ0Q29sb3JzLkdSRVlfQ09MT1JTWzYwXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHNob3dJbkxlZ2VuZDogaW5uZXJMYWJlbHMsXG4gICAgICAgICAgICAgICAgICAgIHN0YXRlczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgaW5hY3RpdmU6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHRvb2x0aXA6IHtcbiAgICAgICAgICAgICAgICBvdXRzaWRlOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGxlZ2VuZDogaW5uZXJMYWJlbHNcbiAgICAgICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICAgICAgICBzeW1ib2xIZWlnaHQ6IDEwLFxuICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgOiB7fSxcbiAgICAgICAgfTtcbiAgICAgICAgcmV0dXJuIHN1cGVyLmJ1aWxkKG1lcmdlRGVlcChkZWZhdWx0UGllT3B0aW9ucywgb3B0aW9ucykpO1xuICAgIH1cblxuICAgIHN0YXRpYyBjb25maWd1cmVQaWUoXG4gICAgICAgIHNlcmllczogU2VyaWVzUGllT3B0aW9uc1tdLFxuICAgICAgICBvcHRpb25zOiBPcHRpb25zLFxuICAgICAgICBjb2xvcjogQ2hhcnRDb2xvcixcbiAgICAgICAgbGFiZWxEYXRlRm9ybWF0OiBzdHJpbmcsXG4gICAgICAgIGlubmVyTGFiZWxzOiBib29sZWFuLFxuICAgICAgICBtb3VzZUV2ZW50RW5hYmxlZCA9IHRydWVcbiAgICApOiB2b2lkIHtcbiAgICAgICAgc3VwZXIuY29uZmlndXJlKHNlcmllcywgb3B0aW9ucywgY29sb3IsIGxhYmVsRGF0ZUZvcm1hdCk7XG4gICAgICAgIGlmIChpbm5lckxhYmVscyAmJiBvcHRpb25zLmxlZ2VuZCkge1xuICAgICAgICAgICAgb3B0aW9ucy5sZWdlbmQuZW5hYmxlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHNlcmllcyAmJiBzZXJpZXMubGVuZ3RoID4gMCAmJiBzZXJpZXNbMF0pIHtcbiAgICAgICAgICAgIG9wdGlvbnMuY29sb3JzID0gQ2hhcnRDb2xvcnMuZ2V0Q29sb3JzKHNlcmllc1swXS5kYXRhPy5sZW5ndGggPz8gMCwgY29sb3IpO1xuICAgICAgICAgICAgaWYgKG1vdXNlRXZlbnRFbmFibGVkICYmIG9wdGlvbnMucGxvdE9wdGlvbnM/LnBpZSkge1xuICAgICAgICAgICAgICAgIG9wdGlvbnMucGxvdE9wdGlvbnMucGllLnBvaW50ID8/PSB7fTtcbiAgICAgICAgICAgICAgICBvcHRpb25zLnBsb3RPcHRpb25zLnBpZS5wb2ludC5ldmVudHMgPz89IHt9O1xuICAgICAgICAgICAgICAgIG9wdGlvbnMucGxvdE9wdGlvbnMucGllLmV2ZW50cyA/Pz0ge307XG4gICAgICAgICAgICAgICAgdGhpcy5jb25maWd1cmVFbnRlcmluZ0FTbGljZShvcHRpb25zLCBpbm5lckxhYmVscyk7XG4gICAgICAgICAgICAgICAgdGhpcy5jb25maWd1cmVMZWF2aW5nQVNsaWNlKG9wdGlvbnMsIGlubmVyTGFiZWxzKTtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZ3VyZUxlYXZpbmdUaGVXaG9sZVBpZShvcHRpb25zLCBpbm5lckxhYmVscyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXRpYyBjb25maWd1cmVFbnRlcmluZ0FTbGljZShvcHRpb25zOiBPcHRpb25zLCBpbm5lckxhYmVsczogYm9vbGVhbikge1xuICAgICAgICBpZiAob3B0aW9ucy5wbG90T3B0aW9ucz8ucGllPy5wb2ludD8uZXZlbnRzKSB7XG4gICAgICAgICAgICBvcHRpb25zLnBsb3RPcHRpb25zLnBpZS5wb2ludC5ldmVudHMubW91c2VPdmVyID0gZnVuY3Rpb24gKCk6IHZvaWQge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VyaWVzLmNoYXJ0LnNlcmllc1swXS5wb2ludHMuZm9yRWFjaChwb2ludCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChwb2ludC5pbmRleCAhPT0gdGhpcy5pbmRleCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnQudXBkYXRlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IENoYXJ0Q29sb3JzLkdSRVlfQ09MT1JTWzVdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaW5uZXJMYWJlbHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb2ludC51cGRhdGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFMYWJlbHM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogQ2hhcnRDb2xvcnMuR1JFWV9DT0xPUlNbMjBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLnNlcmllcy5jaGFydC5yZWRyYXcoZmFsc2UpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGNvbmZpZ3VyZUxlYXZpbmdBU2xpY2Uob3B0aW9uczogT3B0aW9ucywgaW5uZXJMYWJlbHM6IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKG9wdGlvbnMucGxvdE9wdGlvbnM/LnBpZT8ucG9pbnQ/LmV2ZW50cykge1xuICAgICAgICAgICAgb3B0aW9ucy5wbG90T3B0aW9ucy5waWUucG9pbnQuZXZlbnRzLm1vdXNlT3V0ID0gZnVuY3Rpb24gKCk6IHZvaWQge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VyaWVzLmNoYXJ0LnNlcmllc1swXS5wb2ludHMuZm9yRWFjaCgocG9pbnQsIGkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHBvaW50LmluZGV4ICE9PSB0aGlzLmluZGV4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb2ludC51cGRhdGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogb3B0aW9ucy5jb2xvcnM/LltpICUgb3B0aW9ucy5jb2xvcnMubGVuZ3RoXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGlubmVyTGFiZWxzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnQudXBkYXRlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhTGFiZWxzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICd3aGl0ZScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGNvbmZpZ3VyZUxlYXZpbmdUaGVXaG9sZVBpZShvcHRpb25zOiBPcHRpb25zLCBpbm5lckxhYmVsczogYm9vbGVhbikge1xuICAgICAgICBpZiAob3B0aW9ucy5wbG90T3B0aW9ucz8ucGllPy5ldmVudHMpIHtcbiAgICAgICAgICAgIG9wdGlvbnMucGxvdE9wdGlvbnMucGllLmV2ZW50cy5tb3VzZU91dCA9IGZ1bmN0aW9uICgpOiB2b2lkIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNoYXJ0LnNlcmllc1swXS5wb2ludHMuZm9yRWFjaCgocG9pbnQsIGkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcG9pbnQudXBkYXRlKFxuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBvcHRpb25zLmNvbG9ycz8uW2kgJSBvcHRpb25zLmNvbG9ycy5sZW5ndGhdLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChpbm5lckxhYmVscykge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnQudXBkYXRlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YUxhYmVsczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJ3doaXRlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHRoaXMuY2hhcnQucmVkcmF3KCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
156
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtcGllLW9wdGlvbnMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpLWNoYXJ0cy9zcmMvbGliL2NoYXJ0LXBpZS9jaGFydC1waWUtb3B0aW9ucy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUUzRCxNQUFNLGVBQWUsR0FBRyxFQUFFLENBQUM7QUFFM0IsTUFBTSxPQUFPLGVBQWdCLFNBQVEsWUFBWTtJQUM3QyxNQUFNLENBQUMsUUFBUSxDQUFDLE9BQWdCLEVBQUUsV0FBb0I7UUFDbEQsTUFBTSxpQkFBaUIsR0FBWTtZQUMvQixLQUFLLEVBQUU7Z0JBQ0gsSUFBSSxFQUFFLEtBQUs7Z0JBQ1gsbUJBQW1CLEVBQUUsU0FBUztnQkFDOUIsZUFBZSxFQUFFLFNBQVM7Z0JBQzFCLFVBQVUsRUFBRSxLQUFLO2FBQ3BCO1lBQ0QsV0FBVyxFQUFFO2dCQUNULEdBQUcsRUFBRTtvQkFDRCxVQUFVLEVBQUU7d0JBQ1IsUUFBUSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUU7d0JBQ2hDLE9BQU8sRUFBRSxJQUFJO3FCQUNoQjtvQkFDRCxTQUFTLEVBQUUsS0FBSztpQkFDbkI7Z0JBQ0QsTUFBTSxFQUFFO29CQUNKLGdCQUFnQixFQUFFLENBQUMsV0FBVztvQkFDOUIsVUFBVSxFQUFFLFdBQVc7d0JBQ25CLENBQUMsQ0FBQzs0QkFDSSxNQUFNLEVBQUUseUJBQXlCOzRCQUNqQyxLQUFLLEVBQUU7Z0NBQ0gsUUFBUSxFQUFFLE1BQU07Z0NBQ2hCLEtBQUssRUFBRSxPQUFPO2dDQUNkLFdBQVcsRUFBRSxHQUFHOzZCQUNuQjt5QkFDSjt3QkFDSCxDQUFDLENBQUM7NEJBQ0UsU0FBUyxFQUFFO2dDQUNQLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxlQUFlLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsZUFBZSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQztnQ0FDaEksTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsQ0FBQztnQ0FDbkYsT0FBTyxRQUFRLEdBQUcsSUFBSSxHQUFHLElBQUksR0FBRyxpQkFBaUIsQ0FBQTs0QkFDckQsQ0FBQzs0QkFDRCxLQUFLLEVBQUU7Z0NBQ0gsUUFBUSxFQUFFLE1BQU07Z0NBQ2hCLEtBQUssRUFBRSxXQUFXLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQzs2QkFDckM7eUJBQ0Y7b0JBQ1AsWUFBWSxFQUFFLFdBQVc7b0JBQ3pCLE1BQU0sRUFBRTt3QkFDSixRQUFRLEVBQUU7NEJBQ04sT0FBTyxFQUFFLENBQUM7eUJBQ2I7cUJBQ0o7aUJBQ0o7YUFDSjtZQUNELE9BQU8sRUFBRTtnQkFDTCxPQUFPLEVBQUUsSUFBSTthQUNoQjtZQUNELE1BQU0sRUFBRSxXQUFXO2dCQUNmLENBQUMsQ0FBQztvQkFDSSxZQUFZLEVBQUUsRUFBRTtvQkFDaEIsT0FBTyxFQUFFLElBQUk7aUJBQ2hCO2dCQUNILENBQUMsQ0FBQyxFQUFFO1NBQ1gsQ0FBQztRQUNGLE9BQU8sS0FBSyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsTUFBTSxDQUFDLFlBQVksQ0FDZixNQUEwQixFQUMxQixPQUFnQixFQUNoQixNQUFnQixFQUNoQixlQUF1QixFQUN2QixXQUFvQixFQUNwQixpQkFBaUIsR0FBRyxJQUFJO1FBRXhCLEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsZUFBZSxDQUFDLENBQUM7UUFDN0QsSUFBSSxXQUFXLElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2hDLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNsQyxDQUFDO1FBQ0QsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDM0MsT0FBTyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7WUFDeEIsSUFBSSxpQkFBaUIsSUFBSSxPQUFPLENBQUMsV0FBVyxFQUFFLEdBQUcsRUFBRSxDQUFDO2dCQUNoRCxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUE0QixFQUFFLFdBQVcsQ0FBQyxDQUFDO2dCQUN0RSxPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEtBQUssRUFBRSxDQUFDO2dCQUNyQyxPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxLQUFLLEVBQUUsQ0FBQztnQkFDNUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsTUFBTSxLQUFLLEVBQUUsQ0FBQztnQkFDdEMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQztnQkFDbkQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQztnQkFDbEQsSUFBSSxDQUFDLDJCQUEyQixDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQztZQUMzRCxDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFFTyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQTRCLEVBQUUsV0FBb0I7UUFDekUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNwQixPQUFPLEtBQUssRUFBRSxLQUFLLENBQUM7WUFDcEIsSUFBSSxXQUFXLEVBQUUsQ0FBQztnQkFDZCxPQUFRLEtBQUssQ0FBQyxVQUErQyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUM7WUFDaEYsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxPQUFnQixFQUFFLFdBQW9CO1FBQ3pFLElBQUksT0FBTyxDQUFDLFdBQVcsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQzFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxHQUFHO2dCQUM3QyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtvQkFDL0MsSUFBSSxLQUFLLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQzt3QkFDN0IsS0FBSyxDQUFDLE1BQU0sQ0FDUjs0QkFDSSxLQUFLLEVBQUUsV0FBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7eUJBQ3BDLEVBQ0QsS0FBSyxDQUNSLENBQUM7d0JBQ0YsSUFBSSxXQUFXLEVBQUUsQ0FBQzs0QkFDZCxLQUFLLENBQUMsTUFBTSxDQUNSO2dDQUNJLFVBQVUsRUFBRTtvQ0FDUixLQUFLLEVBQUU7d0NBQ0gsS0FBSyxFQUFFLFdBQVcsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO3FDQUNyQztpQ0FDSjs2QkFDSixFQUNELEtBQUssQ0FDUixDQUFDO3dCQUNOLENBQUM7b0JBQ0wsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztnQkFDSCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDcEMsQ0FBQyxDQUFDO1FBQ04sQ0FBQztJQUNMLENBQUM7SUFFTyxNQUFNLENBQUMsc0JBQXNCLENBQUMsT0FBZ0IsRUFBRSxXQUFvQjtRQUN4RSxJQUFJLE9BQU8sQ0FBQyxXQUFXLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUMxQyxPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFFBQVEsR0FBRztnQkFDNUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUU7b0JBQ3BELElBQUksS0FBSyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7d0JBQzdCLEtBQUssQ0FBQyxNQUFNLENBQ1I7NEJBQ0ksS0FBSyxFQUFFLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7eUJBQ3JELEVBQ0QsS0FBSyxDQUNSLENBQUM7d0JBQ0YsSUFBSSxXQUFXLEVBQUUsQ0FBQzs0QkFDZCxLQUFLLENBQUMsTUFBTSxDQUNSO2dDQUNJLFVBQVUsRUFBRTtvQ0FDUixLQUFLLEVBQUU7d0NBQ0gsS0FBSyxFQUFFLE9BQU87cUNBQ2pCO2lDQUNKOzZCQUNKLEVBQ0QsS0FBSyxDQUNSLENBQUM7d0JBQ04sQ0FBQztvQkFDTCxDQUFDO2dCQUNMLENBQUMsQ0FBQyxDQUFDO1lBQ1AsQ0FBQyxDQUFDO1FBQ04sQ0FBQztJQUNMLENBQUM7SUFFTyxNQUFNLENBQUMsMkJBQTJCLENBQUMsT0FBZ0IsRUFBRSxXQUFvQjtRQUM3RSxJQUFJLE9BQU8sQ0FBQyxXQUFXLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ25DLE9BQU8sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxRQUFRLEdBQUc7Z0JBQ3RDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUU7b0JBQzdDLEtBQUssQ0FBQyxNQUFNLENBQ1I7d0JBQ0ksS0FBSyxFQUFFLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7cUJBQ3JELEVBQ0QsS0FBSyxDQUNSLENBQUM7b0JBQ0YsSUFBSSxXQUFXLEVBQUUsQ0FBQzt3QkFDZCxLQUFLLENBQUMsTUFBTSxDQUNSOzRCQUNJLFVBQVUsRUFBRTtnQ0FDUixLQUFLLEVBQUU7b0NBQ0gsS0FBSyxFQUFFLE9BQU87aUNBQ2pCOzZCQUNKO3lCQUNKLEVBQ0QsS0FBSyxDQUNSLENBQUM7b0JBQ04sQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztnQkFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3hCLENBQUMsQ0FBQztRQUNOLENBQUM7SUFDTCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPcHRpb25zLCBQb2ludE9wdGlvbnNPYmplY3QsIFNlcmllc1BpZURhdGFMYWJlbHNPcHRpb25zT2JqZWN0LCBTZXJpZXNQaWVPcHRpb25zIH0gZnJvbSAnaGlnaGNoYXJ0cyc7XG5pbXBvcnQgeyBDaGFydENvbG9ycyB9IGZyb20gJy4uL2NoYXJ0LWNvbG9ycyc7XG5pbXBvcnQgeyBDaGFydE9wdGlvbnMsIG1lcmdlRGVlcCB9IGZyb20gJy4uL2NoYXJ0LW9wdGlvbnMnO1xuXG5jb25zdCBOQU1FX01BWF9MRU5HVEggPSAzMDtcblxuZXhwb3J0IGNsYXNzIENoYXJ0UGllT3B0aW9ucyBleHRlbmRzIENoYXJ0T3B0aW9ucyB7XG4gICAgc3RhdGljIGJ1aWxkUGllKG9wdGlvbnM6IE9wdGlvbnMsIGlubmVyTGFiZWxzOiBib29sZWFuKTogT3B0aW9ucyB7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRQaWVPcHRpb25zOiBPcHRpb25zID0ge1xuICAgICAgICAgICAgY2hhcnQ6IHtcbiAgICAgICAgICAgICAgICB0eXBlOiAncGllJyxcbiAgICAgICAgICAgICAgICBwbG90QmFja2dyb3VuZENvbG9yOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgcGxvdEJvcmRlcldpZHRoOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgcGxvdFNoYWRvdzogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcGxvdE9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICBwaWU6IHtcbiAgICAgICAgICAgICAgICAgICAgZGF0YUxhYmVsczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzdGFuY2U6IGlubmVyTGFiZWxzID8gLTQwIDogMzAsXG4gICAgICAgICAgICAgICAgICAgICAgICB1c2VIVE1MOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBpbm5lclNpemU6ICc1MCUnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgc2VyaWVzOiB7XG4gICAgICAgICAgICAgICAgICAgIGFsbG93UG9pbnRTZWxlY3Q6ICFpbm5lckxhYmVscyxcbiAgICAgICAgICAgICAgICAgICAgZGF0YUxhYmVsczogaW5uZXJMYWJlbHNcbiAgICAgICAgICAgICAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0OiAne3BvaW50LnBlcmNlbnRhZ2U6LjFmfSUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250U2l6ZTogJzE2cHgnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAnd2hpdGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHRPdXRsaW5lOiAnMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXR0ZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbmFtZSA9IHRoaXMucG9pbnQubmFtZS5sZW5ndGggPiBOQU1FX01BWF9MRU5HVEggPyB0aGlzLnBvaW50Lm5hbWUuc3Vic3RyaW5nKDAsIE5BTUVfTUFYX0xFTkdUSCkgKyAnLi4uJyA6IHRoaXMucG9pbnQubmFtZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm91bmRlZFBlcmNlbnRhZ2UgPSBNYXRoLnJvdW5kKCh0aGlzLnBvaW50LnBlcmNlbnRhZ2UgPz8gMCkgKiAxMCkgLyAxMCArICclJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICdcXHUyMDJCJyArIG5hbWUgKyAnOiAnICsgcm91bmRlZFBlcmNlbnRhZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiAnMTJweCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBDaGFydENvbG9ycy5HUkVZX0NPTE9SU1s2MF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgc2hvd0luTGVnZW5kOiBpbm5lckxhYmVscyxcbiAgICAgICAgICAgICAgICAgICAgc3RhdGVzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbmFjdGl2ZToge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDEsXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdG9vbHRpcDoge1xuICAgICAgICAgICAgICAgIG91dHNpZGU6IHRydWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgbGVnZW5kOiBpbm5lckxhYmVsc1xuICAgICAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgICAgICAgIHN5bWJvbEhlaWdodDogMTAsXG4gICAgICAgICAgICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA6IHt9LFxuICAgICAgICB9O1xuICAgICAgICByZXR1cm4gc3VwZXIuYnVpbGQobWVyZ2VEZWVwKGRlZmF1bHRQaWVPcHRpb25zLCBvcHRpb25zKSk7XG4gICAgfVxuXG4gICAgc3RhdGljIGNvbmZpZ3VyZVBpZShcbiAgICAgICAgc2VyaWVzOiBTZXJpZXNQaWVPcHRpb25zW10sXG4gICAgICAgIG9wdGlvbnM6IE9wdGlvbnMsXG4gICAgICAgIGNvbG9yczogc3RyaW5nW10sXG4gICAgICAgIGxhYmVsRGF0ZUZvcm1hdDogc3RyaW5nLFxuICAgICAgICBpbm5lckxhYmVsczogYm9vbGVhbixcbiAgICAgICAgbW91c2VFdmVudEVuYWJsZWQgPSB0cnVlXG4gICAgKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLmNvbmZpZ3VyZShzZXJpZXMsIG9wdGlvbnMsIHVuZGVmaW5lZCwgbGFiZWxEYXRlRm9ybWF0KTtcbiAgICAgICAgaWYgKGlubmVyTGFiZWxzICYmIG9wdGlvbnMubGVnZW5kKSB7XG4gICAgICAgICAgICBvcHRpb25zLmxlZ2VuZC5lbmFibGVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoc2VyaWVzICYmIHNlcmllcy5sZW5ndGggPiAwICYmIHNlcmllc1swXSkge1xuICAgICAgICAgICAgb3B0aW9ucy5jb2xvcnMgPSBjb2xvcnM7XG4gICAgICAgICAgICBpZiAobW91c2VFdmVudEVuYWJsZWQgJiYgb3B0aW9ucy5wbG90T3B0aW9ucz8ucGllKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZXNldENvbG9ycyhzZXJpZXNbMF0uZGF0YSBhcyBQb2ludE9wdGlvbnNPYmplY3RbXSwgaW5uZXJMYWJlbHMpO1xuICAgICAgICAgICAgICAgIG9wdGlvbnMucGxvdE9wdGlvbnMucGllLnBvaW50ID8/PSB7fTtcbiAgICAgICAgICAgICAgICBvcHRpb25zLnBsb3RPcHRpb25zLnBpZS5wb2ludC5ldmVudHMgPz89IHt9O1xuICAgICAgICAgICAgICAgIG9wdGlvbnMucGxvdE9wdGlvbnMucGllLmV2ZW50cyA/Pz0ge307XG4gICAgICAgICAgICAgICAgdGhpcy5jb25maWd1cmVFbnRlcmluZ0FTbGljZShvcHRpb25zLCBpbm5lckxhYmVscyk7XG4gICAgICAgICAgICAgICAgdGhpcy5jb25maWd1cmVMZWF2aW5nQVNsaWNlKG9wdGlvbnMsIGlubmVyTGFiZWxzKTtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZ3VyZUxlYXZpbmdUaGVXaG9sZVBpZShvcHRpb25zLCBpbm5lckxhYmVscyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXRpYyByZXNldENvbG9ycyhwb2ludHM6IFBvaW50T3B0aW9uc09iamVjdFtdLCBpbm5lckxhYmVsczogYm9vbGVhbikge1xuICAgICAgICBwb2ludHM/LmZvckVhY2gocG9pbnQgPT4ge1xuICAgICAgICAgICAgZGVsZXRlIHBvaW50Py5jb2xvcjtcbiAgICAgICAgICAgIGlmIChpbm5lckxhYmVscykge1xuICAgICAgICAgICAgICAgIGRlbGV0ZSAocG9pbnQuZGF0YUxhYmVscyBhcyBTZXJpZXNQaWVEYXRhTGFiZWxzT3B0aW9uc09iamVjdCk/LnN0eWxlPy5jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgY29uZmlndXJlRW50ZXJpbmdBU2xpY2Uob3B0aW9uczogT3B0aW9ucywgaW5uZXJMYWJlbHM6IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKG9wdGlvbnMucGxvdE9wdGlvbnM/LnBpZT8ucG9pbnQ/LmV2ZW50cykge1xuICAgICAgICAgICAgb3B0aW9ucy5wbG90T3B0aW9ucy5waWUucG9pbnQuZXZlbnRzLm1vdXNlT3ZlciA9IGZ1bmN0aW9uICgpOiB2b2lkIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlcmllcy5jaGFydC5zZXJpZXNbMF0ucG9pbnRzLmZvckVhY2gocG9pbnQgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAocG9pbnQuaW5kZXggIT09IHRoaXMuaW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50LnVwZGF0ZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBDaGFydENvbG9ycy5HUkVZX0NPTE9SU1s1XSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGlubmVyTGFiZWxzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnQudXBkYXRlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhTGFiZWxzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IENoYXJ0Q29sb3JzLkdSRVlfQ09MT1JTWzIwXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXJpZXMuY2hhcnQucmVkcmF3KGZhbHNlKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXRpYyBjb25maWd1cmVMZWF2aW5nQVNsaWNlKG9wdGlvbnM6IE9wdGlvbnMsIGlubmVyTGFiZWxzOiBib29sZWFuKSB7XG4gICAgICAgIGlmIChvcHRpb25zLnBsb3RPcHRpb25zPy5waWU/LnBvaW50Py5ldmVudHMpIHtcbiAgICAgICAgICAgIG9wdGlvbnMucGxvdE9wdGlvbnMucGllLnBvaW50LmV2ZW50cy5tb3VzZU91dCA9IGZ1bmN0aW9uICgpOiB2b2lkIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlcmllcy5jaGFydC5zZXJpZXNbMF0ucG9pbnRzLmZvckVhY2goKHBvaW50LCBpKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChwb2ludC5pbmRleCAhPT0gdGhpcy5pbmRleCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnQudXBkYXRlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IG9wdGlvbnMuY29sb3JzPy5baSAlIG9wdGlvbnMuY29sb3JzLmxlbmd0aF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpbm5lckxhYmVscykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50LnVwZGF0ZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YUxhYmVsczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAnd2hpdGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXRpYyBjb25maWd1cmVMZWF2aW5nVGhlV2hvbGVQaWUob3B0aW9uczogT3B0aW9ucywgaW5uZXJMYWJlbHM6IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKG9wdGlvbnMucGxvdE9wdGlvbnM/LnBpZT8uZXZlbnRzKSB7XG4gICAgICAgICAgICBvcHRpb25zLnBsb3RPcHRpb25zLnBpZS5ldmVudHMubW91c2VPdXQgPSBmdW5jdGlvbiAoKTogdm9pZCB7XG4gICAgICAgICAgICAgICAgdGhpcy5jaGFydC5zZXJpZXNbMF0ucG9pbnRzLmZvckVhY2goKHBvaW50LCBpKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHBvaW50LnVwZGF0ZShcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogb3B0aW9ucy5jb2xvcnM/LltpICUgb3B0aW9ucy5jb2xvcnMubGVuZ3RoXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBmYWxzZVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICBpZiAoaW5uZXJMYWJlbHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50LnVwZGF0ZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFMYWJlbHM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICd3aGl0ZScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLmNoYXJ0LnJlZHJhdygpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,30 +1,43 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
1
|
+
import { Component, effect, input, Input } from '@angular/core';
|
|
2
2
|
import { Chart } from 'highcharts';
|
|
3
3
|
import { AbstractChartComponent } from '../abstract-chart.component';
|
|
4
|
+
import { ChartColors } from '../chart-colors';
|
|
4
5
|
import { ChartPieOptions } from './chart-pie-options.model';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
export class ChartPieComponent extends AbstractChartComponent {
|
|
7
8
|
innerLabels = false;
|
|
8
9
|
mouseEventEnabled = true;
|
|
9
10
|
series = [];
|
|
11
|
+
colors = input();
|
|
12
|
+
constructor() {
|
|
13
|
+
super();
|
|
14
|
+
effect(() => {
|
|
15
|
+
this.colors();
|
|
16
|
+
this.initChart();
|
|
17
|
+
});
|
|
18
|
+
}
|
|
10
19
|
initChart() {
|
|
11
20
|
if (this.series) {
|
|
12
21
|
const chartOptions = ChartPieOptions.buildPie(this.chartOptions, this.innerLabels);
|
|
13
|
-
|
|
22
|
+
let colors = this.colors();
|
|
23
|
+
if (!colors?.length) {
|
|
24
|
+
colors = ChartColors.getColors(this.series[0].data?.length ?? 0, this.color);
|
|
25
|
+
}
|
|
26
|
+
ChartPieOptions.configurePie(this.series, chartOptions, colors, this.labelDateFormat, this.innerLabels, this.mouseEventEnabled);
|
|
14
27
|
this.chart = new Chart(this.chartRef.nativeElement, chartOptions);
|
|
15
28
|
}
|
|
16
29
|
}
|
|
17
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ChartPieComponent, deps:
|
|
18
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
30
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ChartPieComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
31
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.9", type: ChartPieComponent, isStandalone: true, selector: "ap-chart-pie", inputs: { innerLabels: { classPropertyName: "innerLabels", publicName: "innerLabels", isSignal: false, isRequired: false, transformFunction: null }, mouseEventEnabled: { classPropertyName: "mouseEventEnabled", publicName: "mouseEventEnabled", isSignal: false, isRequired: false, transformFunction: null }, series: { classPropertyName: "series", publicName: "series", isSignal: false, isRequired: false, transformFunction: null }, colors: { classPropertyName: "colors", publicName: "colors", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: "<div #chart></div>\n" });
|
|
19
32
|
}
|
|
20
33
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ChartPieComponent, decorators: [{
|
|
21
34
|
type: Component,
|
|
22
35
|
args: [{ selector: 'ap-chart-pie', standalone: true, template: "<div #chart></div>\n" }]
|
|
23
|
-
}], propDecorators: { innerLabels: [{
|
|
36
|
+
}], ctorParameters: () => [], propDecorators: { innerLabels: [{
|
|
24
37
|
type: Input
|
|
25
38
|
}], mouseEventEnabled: [{
|
|
26
39
|
type: Input
|
|
27
40
|
}], series: [{
|
|
28
41
|
type: Input
|
|
29
42
|
}] } });
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtcGllLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWktY2hhcnRzL3NyYy9saWIvY2hhcnQtcGllL2NoYXJ0LXBpZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpLWNoYXJ0cy9zcmMvbGliL2NoYXJ0LXBpZS9jaGFydC1waWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUUsS0FBSyxFQUFvQixNQUFNLFlBQVksQ0FBQztBQUNyRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQU81RCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsc0JBQXNCO0lBQ2hELFdBQVcsR0FBRyxLQUFLLENBQUM7SUFDcEIsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO0lBQ2hCLE1BQU0sR0FBdUIsRUFBRSxDQUFDO0lBQ2xELE1BQU0sR0FBRyxLQUFLLEVBQVksQ0FBQztJQUUzQjtRQUNJLEtBQUssRUFBRSxDQUFDO1FBQ1IsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNSLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNyQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxTQUFTO1FBQ0wsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDZCxNQUFNLFlBQVksR0FBRyxlQUFlLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ25GLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDO2dCQUNsQixNQUFNLEdBQUcsV0FBVyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxNQUFNLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNqRixDQUFDO1lBQ0QsZUFBZSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQ2hJLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDdEUsQ0FBQztJQUNMLENBQUM7dUdBeEJRLGlCQUFpQjsyRkFBakIsaUJBQWlCLDBvQkNYOUIsc0JBQ0E7OzJGRFVhLGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDSSxjQUFjLGNBRVosSUFBSTt3REFHUCxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDWSxNQUFNO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBlZmZlY3QsIGlucHV0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2hhcnQsIFNlcmllc1BpZU9wdGlvbnMgfSBmcm9tICdoaWdoY2hhcnRzJztcbmltcG9ydCB7IEFic3RyYWN0Q2hhcnRDb21wb25lbnQgfSBmcm9tICcuLi9hYnN0cmFjdC1jaGFydC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2hhcnRDb2xvcnMgfSBmcm9tICcuLi9jaGFydC1jb2xvcnMnO1xuaW1wb3J0IHsgQ2hhcnRQaWVPcHRpb25zIH0gZnJvbSAnLi9jaGFydC1waWUtb3B0aW9ucy5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXAtY2hhcnQtcGllJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2hhcnQtcGllLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFydFBpZUNvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0Q2hhcnRDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIGlubmVyTGFiZWxzID0gZmFsc2U7XG4gICAgQElucHV0KCkgbW91c2VFdmVudEVuYWJsZWQgPSB0cnVlO1xuICAgIEBJbnB1dCgpIG92ZXJyaWRlIHNlcmllczogU2VyaWVzUGllT3B0aW9uc1tdID0gW107XG4gICAgY29sb3JzID0gaW5wdXQ8c3RyaW5nW10+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgZWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY29sb3JzKCk7XG4gICAgICAgICAgICB0aGlzLmluaXRDaGFydCgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBpbml0Q2hhcnQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnNlcmllcykge1xuICAgICAgICAgICAgY29uc3QgY2hhcnRPcHRpb25zID0gQ2hhcnRQaWVPcHRpb25zLmJ1aWxkUGllKHRoaXMuY2hhcnRPcHRpb25zLCB0aGlzLmlubmVyTGFiZWxzKTtcbiAgICAgICAgICAgIGxldCBjb2xvcnMgPSB0aGlzLmNvbG9ycygpO1xuICAgICAgICAgICAgaWYgKCFjb2xvcnM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGNvbG9ycyA9IENoYXJ0Q29sb3JzLmdldENvbG9ycyh0aGlzLnNlcmllc1swXS5kYXRhPy5sZW5ndGggPz8gMCwgdGhpcy5jb2xvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBDaGFydFBpZU9wdGlvbnMuY29uZmlndXJlUGllKHRoaXMuc2VyaWVzLCBjaGFydE9wdGlvbnMsIGNvbG9ycywgdGhpcy5sYWJlbERhdGVGb3JtYXQsIHRoaXMuaW5uZXJMYWJlbHMsIHRoaXMubW91c2VFdmVudEVuYWJsZWQpO1xuICAgICAgICAgICAgdGhpcy5jaGFydCA9IG5ldyBDaGFydCh0aGlzLmNoYXJ0UmVmLm5hdGl2ZUVsZW1lbnQsIGNoYXJ0T3B0aW9ucyk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2ICNjaGFydD48L2Rpdj5cbiJdfQ==
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as Highcharts from 'highcharts';
|
|
2
2
|
import { dateFormat, Chart } from 'highcharts';
|
|
3
3
|
import * as i0 from '@angular/core';
|
|
4
|
-
import { Input, ViewChild, Directive, Component, EventEmitter, Output, ChangeDetectionStrategy } from '@angular/core';
|
|
4
|
+
import { Input, ViewChild, Directive, Component, EventEmitter, Output, ChangeDetectionStrategy, input, effect } from '@angular/core';
|
|
5
5
|
import { mapChart } from 'highcharts/highmaps';
|
|
6
6
|
import * as i1 from '@angular/common';
|
|
7
7
|
import { CommonModule } from '@angular/common';
|
|
@@ -874,11 +874,11 @@ class ChartMetricsListComponent {
|
|
|
874
874
|
ChartMetricType = ChartMetricType;
|
|
875
875
|
digitsInfo = '1.0-1';
|
|
876
876
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ChartMetricsListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
877
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.9", type: ChartMetricsListComponent, isStandalone: true, selector: "ap-chart-metrics-list", inputs: { metrics: "metrics", locale: "locale" }, ngImport: i0, template: "<mat-list>\n @if (metrics) {\n @for (metric of metrics; track metric; let i = $index) {\n <mat-list-item [ngClass]=\"{ 'chart-metric-total': metric.type === ChartMetricType.total }\">\n @if (!metric.children) {\n <div class=\"chart-metric-name metric-label\">\n {{ metric.name }}\n </div>\n }\n @if (metric.children) {\n <div class=\"chart-metric-name\">\n <span class=\"metric-label\">\n {{ metric.name }}\n </span>\n <span class=\"chart-metric-children\">\n @for (item of metric.children; track item) {\n <span>\n <span class=\"child-label\">{{ item.name }}</span>\n :\n <span class=\"child-value\">{{ item.value }}</span>\n </span>\n }\n </span>\n </div>\n }\n <div class=\"chart-metric-value metric-label\">\n {{ metric.value | number: digitsInfo : locale }}\n </div>\n </mat-list-item>\n }\n }\n</mat-list>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}.metric-label{font-size:14px;color:#5d6a82}.chart-metric-total .metric-label{font-size:16px;color:#344563!important;font-weight:700}.chart-metric-name .chart-metric-children{color:#aeb5c1;font-size:14px}.chart-metric-name .chart-metric-children .child-label{margin-left:16px}.chart-metric-value{justify-content:left;flex:1 0 0;flex-direction:row;text-align:end;color:#344563}.mat-mdc-list-item{height:35px}.mat-mdc-list-item ::ng-deep .mdc-list-item__content{padding:0}.mat-mdc-list-item ::ng-deep .mdc-list-item__content .mdc-list-item__primary-text{display:flex;align-items:center}.mat-mdc-list-item:not(:last-child){border-bottom:1px solid var(--sys-border-color-default)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "ngmodule", type: MatDividerModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
877
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.9", type: ChartMetricsListComponent, isStandalone: true, selector: "ap-chart-metrics-list", inputs: { metrics: "metrics", locale: "locale" }, ngImport: i0, template: "<mat-list>\n @if (metrics) {\n @for (metric of metrics; track metric; let i = $index) {\n <mat-list-item [ngClass]=\"{ 'chart-metric-total': metric.type === ChartMetricType.total }\">\n @if (!metric.children) {\n <div class=\"chart-metric-name metric-label\">\n {{ metric.name }}\n </div>\n }\n @if (metric.children) {\n <div class=\"chart-metric-name\">\n <span class=\"metric-label\">\n {{ metric.name }}\n </span>\n <span class=\"chart-metric-children\">\n @for (item of metric.children; track item) {\n <span>\n <span class=\"child-label\">{{ item.name }}</span>\n :\n <span class=\"child-value\">{{ item.value }}</span>\n </span>\n }\n </span>\n </div>\n }\n <div class=\"chart-metric-value metric-label\">\n {{ metric.value | number: digitsInfo : locale }}\n </div>\n </mat-list-item>\n }\n }\n</mat-list>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=reddit]{color:#ff4500}[bgcolor=reddit],[hcolor=reddit]:hover{background-color:#ff4500}[border=reddit]{border:1px solid #ff4500}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}.metric-label{font-size:14px;color:#5d6a82}.chart-metric-total .metric-label{font-size:16px;color:#344563!important;font-weight:700}.chart-metric-name .chart-metric-children{color:#aeb5c1;font-size:14px}.chart-metric-name .chart-metric-children .child-label{margin-left:16px}.chart-metric-value{justify-content:left;flex:1 0 0;flex-direction:row;text-align:end;color:#344563}.mat-mdc-list-item{height:35px}.mat-mdc-list-item ::ng-deep .mdc-list-item__content{padding:0}.mat-mdc-list-item ::ng-deep .mdc-list-item__content .mdc-list-item__primary-text{display:flex;align-items:center}.mat-mdc-list-item:not(:last-child){border-bottom:1px solid var(--sys-border-color-default)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "ngmodule", type: MatDividerModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
878
878
|
}
|
|
879
879
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ChartMetricsListComponent, decorators: [{
|
|
880
880
|
type: Component,
|
|
881
|
-
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'ap-chart-metrics-list', standalone: true, imports: [CommonModule, MatListModule, MatDividerModule], template: "<mat-list>\n @if (metrics) {\n @for (metric of metrics; track metric; let i = $index) {\n <mat-list-item [ngClass]=\"{ 'chart-metric-total': metric.type === ChartMetricType.total }\">\n @if (!metric.children) {\n <div class=\"chart-metric-name metric-label\">\n {{ metric.name }}\n </div>\n }\n @if (metric.children) {\n <div class=\"chart-metric-name\">\n <span class=\"metric-label\">\n {{ metric.name }}\n </span>\n <span class=\"chart-metric-children\">\n @for (item of metric.children; track item) {\n <span>\n <span class=\"child-label\">{{ item.name }}</span>\n :\n <span class=\"child-value\">{{ item.value }}</span>\n </span>\n }\n </span>\n </div>\n }\n <div class=\"chart-metric-value metric-label\">\n {{ metric.value | number: digitsInfo : locale }}\n </div>\n </mat-list-item>\n }\n }\n</mat-list>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}.metric-label{font-size:14px;color:#5d6a82}.chart-metric-total .metric-label{font-size:16px;color:#344563!important;font-weight:700}.chart-metric-name .chart-metric-children{color:#aeb5c1;font-size:14px}.chart-metric-name .chart-metric-children .child-label{margin-left:16px}.chart-metric-value{justify-content:left;flex:1 0 0;flex-direction:row;text-align:end;color:#344563}.mat-mdc-list-item{height:35px}.mat-mdc-list-item ::ng-deep .mdc-list-item__content{padding:0}.mat-mdc-list-item ::ng-deep .mdc-list-item__content .mdc-list-item__primary-text{display:flex;align-items:center}.mat-mdc-list-item:not(:last-child){border-bottom:1px solid var(--sys-border-color-default)}\n"] }]
|
|
881
|
+
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'ap-chart-metrics-list', standalone: true, imports: [CommonModule, MatListModule, MatDividerModule], template: "<mat-list>\n @if (metrics) {\n @for (metric of metrics; track metric; let i = $index) {\n <mat-list-item [ngClass]=\"{ 'chart-metric-total': metric.type === ChartMetricType.total }\">\n @if (!metric.children) {\n <div class=\"chart-metric-name metric-label\">\n {{ metric.name }}\n </div>\n }\n @if (metric.children) {\n <div class=\"chart-metric-name\">\n <span class=\"metric-label\">\n {{ metric.name }}\n </span>\n <span class=\"chart-metric-children\">\n @for (item of metric.children; track item) {\n <span>\n <span class=\"child-label\">{{ item.name }}</span>\n :\n <span class=\"child-value\">{{ item.value }}</span>\n </span>\n }\n </span>\n </div>\n }\n <div class=\"chart-metric-value metric-label\">\n {{ metric.value | number: digitsInfo : locale }}\n </div>\n </mat-list-item>\n }\n }\n</mat-list>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=reddit]{color:#ff4500}[bgcolor=reddit],[hcolor=reddit]:hover{background-color:#ff4500}[border=reddit]{border:1px solid #ff4500}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}.metric-label{font-size:14px;color:#5d6a82}.chart-metric-total .metric-label{font-size:16px;color:#344563!important;font-weight:700}.chart-metric-name .chart-metric-children{color:#aeb5c1;font-size:14px}.chart-metric-name .chart-metric-children .child-label{margin-left:16px}.chart-metric-value{justify-content:left;flex:1 0 0;flex-direction:row;text-align:end;color:#344563}.mat-mdc-list-item{height:35px}.mat-mdc-list-item ::ng-deep .mdc-list-item__content{padding:0}.mat-mdc-list-item ::ng-deep .mdc-list-item__content .mdc-list-item__primary-text{display:flex;align-items:center}.mat-mdc-list-item:not(:last-child){border-bottom:1px solid var(--sys-border-color-default)}\n"] }]
|
|
882
882
|
}], propDecorators: { metrics: [{
|
|
883
883
|
type: Input,
|
|
884
884
|
args: [{
|
|
@@ -950,6 +950,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
|
|
|
950
950
|
type: Input
|
|
951
951
|
}] } });
|
|
952
952
|
|
|
953
|
+
const NAME_MAX_LENGTH = 30;
|
|
953
954
|
class ChartPieOptions extends ChartOptions {
|
|
954
955
|
static buildPie(options, innerLabels) {
|
|
955
956
|
const defaultPieOptions = {
|
|
@@ -979,6 +980,11 @@ class ChartPieOptions extends ChartOptions {
|
|
|
979
980
|
},
|
|
980
981
|
}
|
|
981
982
|
: {
|
|
983
|
+
formatter: function () {
|
|
984
|
+
const name = this.point.name.length > NAME_MAX_LENGTH ? this.point.name.substring(0, NAME_MAX_LENGTH) + '...' : this.point.name;
|
|
985
|
+
const roundedPercentage = Math.round((this.point.percentage ?? 0) * 10) / 10 + '%';
|
|
986
|
+
return '\u202B' + name + ': ' + roundedPercentage;
|
|
987
|
+
},
|
|
982
988
|
style: {
|
|
983
989
|
fontSize: '12px',
|
|
984
990
|
color: ChartColors.GREY_COLORS[60],
|
|
@@ -1004,14 +1010,15 @@ class ChartPieOptions extends ChartOptions {
|
|
|
1004
1010
|
};
|
|
1005
1011
|
return super.build(mergeDeep(defaultPieOptions, options));
|
|
1006
1012
|
}
|
|
1007
|
-
static configurePie(series, options,
|
|
1008
|
-
super.configure(series, options,
|
|
1013
|
+
static configurePie(series, options, colors, labelDateFormat, innerLabels, mouseEventEnabled = true) {
|
|
1014
|
+
super.configure(series, options, undefined, labelDateFormat);
|
|
1009
1015
|
if (innerLabels && options.legend) {
|
|
1010
1016
|
options.legend.enabled = true;
|
|
1011
1017
|
}
|
|
1012
1018
|
if (series && series.length > 0 && series[0]) {
|
|
1013
|
-
options.colors =
|
|
1019
|
+
options.colors = colors;
|
|
1014
1020
|
if (mouseEventEnabled && options.plotOptions?.pie) {
|
|
1021
|
+
this.resetColors(series[0].data, innerLabels);
|
|
1015
1022
|
options.plotOptions.pie.point ??= {};
|
|
1016
1023
|
options.plotOptions.pie.point.events ??= {};
|
|
1017
1024
|
options.plotOptions.pie.events ??= {};
|
|
@@ -1021,6 +1028,14 @@ class ChartPieOptions extends ChartOptions {
|
|
|
1021
1028
|
}
|
|
1022
1029
|
}
|
|
1023
1030
|
}
|
|
1031
|
+
static resetColors(points, innerLabels) {
|
|
1032
|
+
points?.forEach(point => {
|
|
1033
|
+
delete point?.color;
|
|
1034
|
+
if (innerLabels) {
|
|
1035
|
+
delete point.dataLabels?.style?.color;
|
|
1036
|
+
}
|
|
1037
|
+
});
|
|
1038
|
+
}
|
|
1024
1039
|
static configureEnteringASlice(options, innerLabels) {
|
|
1025
1040
|
if (options.plotOptions?.pie?.point?.events) {
|
|
1026
1041
|
options.plotOptions.pie.point.events.mouseOver = function () {
|
|
@@ -1093,20 +1108,32 @@ class ChartPieComponent extends AbstractChartComponent {
|
|
|
1093
1108
|
innerLabels = false;
|
|
1094
1109
|
mouseEventEnabled = true;
|
|
1095
1110
|
series = [];
|
|
1111
|
+
colors = input();
|
|
1112
|
+
constructor() {
|
|
1113
|
+
super();
|
|
1114
|
+
effect(() => {
|
|
1115
|
+
this.colors();
|
|
1116
|
+
this.initChart();
|
|
1117
|
+
});
|
|
1118
|
+
}
|
|
1096
1119
|
initChart() {
|
|
1097
1120
|
if (this.series) {
|
|
1098
1121
|
const chartOptions = ChartPieOptions.buildPie(this.chartOptions, this.innerLabels);
|
|
1099
|
-
|
|
1122
|
+
let colors = this.colors();
|
|
1123
|
+
if (!colors?.length) {
|
|
1124
|
+
colors = ChartColors.getColors(this.series[0].data?.length ?? 0, this.color);
|
|
1125
|
+
}
|
|
1126
|
+
ChartPieOptions.configurePie(this.series, chartOptions, colors, this.labelDateFormat, this.innerLabels, this.mouseEventEnabled);
|
|
1100
1127
|
this.chart = new Chart(this.chartRef.nativeElement, chartOptions);
|
|
1101
1128
|
}
|
|
1102
1129
|
}
|
|
1103
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ChartPieComponent, deps:
|
|
1104
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
1130
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ChartPieComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1131
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.9", type: ChartPieComponent, isStandalone: true, selector: "ap-chart-pie", inputs: { innerLabels: { classPropertyName: "innerLabels", publicName: "innerLabels", isSignal: false, isRequired: false, transformFunction: null }, mouseEventEnabled: { classPropertyName: "mouseEventEnabled", publicName: "mouseEventEnabled", isSignal: false, isRequired: false, transformFunction: null }, series: { classPropertyName: "series", publicName: "series", isSignal: false, isRequired: false, transformFunction: null }, colors: { classPropertyName: "colors", publicName: "colors", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: "<div #chart></div>\n" });
|
|
1105
1132
|
}
|
|
1106
1133
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ChartPieComponent, decorators: [{
|
|
1107
1134
|
type: Component,
|
|
1108
1135
|
args: [{ selector: 'ap-chart-pie', standalone: true, template: "<div #chart></div>\n" }]
|
|
1109
|
-
}], propDecorators: { innerLabels: [{
|
|
1136
|
+
}], ctorParameters: () => [], propDecorators: { innerLabels: [{
|
|
1110
1137
|
type: Input
|
|
1111
1138
|
}], mouseEventEnabled: [{
|
|
1112
1139
|
type: Input
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agorapulse-ui-charts.mjs","sources":["../../../libs/ui-charts/src/lib/highcharts-border-radius-plugin.ts","../../../libs/ui-charts/src/lib/chart-colors.ts","../../../libs/ui-charts/src/lib/abstract-chart.component.ts","../../../libs/ui-charts/src/lib/chart-options.ts","../../../libs/ui-charts/src/lib/chart-bar/chart-bar-options.model.ts","../../../libs/ui-charts/src/lib/chart-bar/chart-bar.component.ts","../../../libs/ui-charts/src/lib/chart-bar/chart-bar.component.html","../../../libs/ui-charts/src/lib/chart-column/chart-column-options.model.ts","../../../libs/ui-charts/src/lib/chart-column/chart-column.component.ts","../../../libs/ui-charts/src/lib/chart-column/chart-column.component.html","../../../libs/ui-charts/src/lib/chart-heatmap/chart-heatmap-options.model.ts","../../../libs/ui-charts/src/lib/chart-heatmap/chart-heatmap.component.ts","../../../libs/ui-charts/src/lib/chart-heatmap/chart-heatmap.component.html","../../../libs/ui-charts/src/lib/chart-metric.ts","../../../libs/ui-charts/src/lib/chart-metrics-list/chart-metrics-list.component.ts","../../../libs/ui-charts/src/lib/chart-metrics-list/chart-metrics-list.component.html","../../../libs/ui-charts/src/lib/chart-mixed/chart-mixed-options.model.ts","../../../libs/ui-charts/src/lib/chart-mixed/chart-mixed.component.ts","../../../libs/ui-charts/src/lib/chart-mixed/chart-mixed.component.html","../../../libs/ui-charts/src/lib/chart-pie/chart-pie-options.model.ts","../../../libs/ui-charts/src/lib/chart-pie/chart-pie.component.ts","../../../libs/ui-charts/src/lib/chart-pie/chart-pie.component.html","../../../libs/ui-charts/src/lib/chart-spline/chart-spline-options.model.ts","../../../libs/ui-charts/src/lib/chart-spline/chart-spline.component.ts","../../../libs/ui-charts/src/lib/chart-spline/chart-spline.component.html","../../../libs/ui-charts/index.ts","../../../libs/ui-charts/agorapulse-ui-charts.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/ban-ts-comment */\nexport const borderRadiusPlugin = function (H: any) {\n if (H.borderRadiusPlugininitialized) {\n return;\n }\n H.borderRadiusPlugininitialized = true;\n\n H.wrap(H.seriesTypes.column.prototype, 'translate', function (proceed: any) {\n // @ts-ignore\n const options = this.options;\n const topMargin = options.topMargin || 0;\n const bottomMargin = options.bottomMargin || 0;\n const borderRadiusTopLeftSettings = options.borderRadiusTopLeft;\n const borderRadiusTopRightSettings = options.borderRadiusTopRight;\n const borderRadiusBottomLeftSettings = options.borderRadiusBottomLeft;\n const borderRadiusBottomRightSettings = options.borderRadiusBottomRight;\n // @ts-ignore\n proceed.call(this);\n\n // @ts-ignore\n if (!this.points) {\n return;\n }\n\n if (\n borderRadiusTopLeftSettings ||\n borderRadiusTopRightSettings ||\n borderRadiusBottomLeftSettings ||\n borderRadiusBottomRightSettings\n ) {\n // @ts-ignore\n this.points.forEach(function (point) {\n roundPoint(\n borderRadiusTopLeftSettings,\n borderRadiusTopRightSettings,\n borderRadiusBottomLeftSettings,\n borderRadiusBottomRightSettings,\n point,\n H,\n topMargin,\n bottomMargin\n );\n });\n }\n });\n};\n\nfunction roundPoint(\n borderRadiusTopLeftSettings: string | any[],\n borderRadiusTopRightSettings: string | any[],\n borderRadiusBottomLeftSettings: string | any[],\n borderRadiusBottomRightSettings: string | any[],\n point: { shapeArgs: { width?: any; height?: any; x?: any; y?: any; d?: any[] }; index: string | number; dlBox: any; shapeType: string },\n H: { relativeLength: (arg0: any, arg1: any) => any },\n topMargin: any,\n bottomMargin: any\n) {\n const w = point.shapeArgs.width;\n const h = point.shapeArgs.height;\n const x = point.shapeArgs.x;\n const y = point.shapeArgs.y;\n const borderRadiusTopLeft = borderRadiusTopLeftSettings?.length\n ? (borderRadiusTopLeftSettings as any)[point.index]\n : borderRadiusTopLeftSettings || 0;\n const borderRadiusTopRight = borderRadiusTopRightSettings?.length\n ? (borderRadiusTopRightSettings as any)[point.index]\n : borderRadiusTopRightSettings || 0;\n const borderRadiusBottomLeft = borderRadiusBottomLeftSettings?.length\n ? (borderRadiusBottomLeftSettings as any)[point.index]\n : borderRadiusBottomLeftSettings || 0;\n const borderRadiusBottomRight = borderRadiusBottomRightSettings?.length\n ? (borderRadiusBottomRightSettings as any)[point.index]\n : borderRadiusBottomRightSettings || 0;\n\n let radiusTopLeft = H.relativeLength(borderRadiusTopLeft, w);\n let radiusTopRight = H.relativeLength(borderRadiusTopRight, w);\n let radiusBottomRight = H.relativeLength(borderRadiusBottomRight, w);\n let radiusBottomLeft = H.relativeLength(borderRadiusBottomLeft, w);\n\n const maxR = Math.min(w, h) / 2;\n\n radiusTopLeft = radiusTopLeft > maxR ? maxR : radiusTopLeft;\n radiusTopRight = radiusTopRight > maxR ? maxR : radiusTopRight;\n radiusBottomRight = radiusBottomRight > maxR ? maxR : radiusBottomRight;\n radiusBottomLeft = radiusBottomLeft > maxR ? maxR : radiusBottomLeft;\n\n point.dlBox = point.shapeArgs;\n\n point.shapeType = 'path';\n point.shapeArgs = {\n d: [\n 'M',\n x + radiusTopLeft,\n y + topMargin,\n 'L',\n x + w - radiusTopRight,\n y + topMargin,\n 'C',\n x + w - radiusTopRight / 2,\n y,\n x + w,\n y + radiusTopRight / 2,\n x + w,\n y + radiusTopRight,\n 'L',\n x + w,\n y + h - radiusBottomRight,\n 'C',\n x + w,\n y + h - radiusBottomRight / 2,\n x + w - radiusBottomRight / 2,\n y + h,\n x + w - radiusBottomRight,\n y + h + bottomMargin,\n 'L',\n x + radiusBottomLeft,\n y + h + bottomMargin,\n 'C',\n x + radiusBottomLeft / 2,\n y + h,\n x,\n y + h - radiusBottomLeft / 2,\n x,\n y + h - radiusBottomLeft,\n 'L',\n x,\n y + radiusTopLeft,\n 'C',\n x,\n y + radiusTopLeft / 2,\n x + radiusTopLeft / 2,\n y,\n x + radiusTopLeft,\n y,\n 'Z',\n ],\n };\n}\n","export enum ChartColor {\n Grey,\n Orange,\n SoftBlue,\n ElectricBlue,\n Purple,\n Green,\n}\n\nexport class ChartColors {\n static readonly SOFT_BLUE_COLORS = {\n '10': '#EFF5FC',\n '20': '#DFEDFA',\n '40': '#C0DBF4',\n '60': '#A0C8EF',\n '85': '#78B1E8',\n '100': '#61A4E4',\n '150': '#2873BA',\n };\n static readonly ELECTRIC_BLUE_COLORS = {\n '10': '#e8f4ff',\n '20': '#d1e8ff',\n '40': '#a2d1ff',\n '60': '#74bbfe',\n '85': '#3a9efe',\n '100': '#178dfe',\n '150': '#0e72d6',\n };\n static readonly ORANGE_COLORS = {\n '10': '#FFEFE9',\n '20': '#FFE1D4',\n '40': '#FFC2A8',\n '60': '#FFA47D',\n '85': '#FF7E46',\n '100': '#FF6726',\n '150': '#C83E07',\n };\n static readonly GREEN_COLORS = {\n '10': '#ECF7ED',\n '20': '#DAF1DD',\n '40': '#B5E3BB',\n '60': '#8FD498',\n '85': '#61C26D',\n '100': '#45B854',\n '150': '#0F821D',\n };\n static readonly PURPLE_COLORS = {\n '10': '#EFEDF8',\n '20': '#E0DDF2',\n '40': '#C1BBE6',\n '60': '#A398D9',\n '85': '#7C6DC9',\n '100': '#6554C0',\n '150': '#3C2C95',\n };\n static readonly GREY_COLORS = {\n '5': '#F5F5F7',\n '10': '#EAECEF',\n '20': '#D6DAE0',\n '40': '#AEB5C1',\n '60': '#858FA1',\n '85': '#5D6A82',\n '100': '#344563',\n '150': '#212E44',\n };\n\n static readonly RED_COLORS = {\n '80': '#F17171',\n '150': '#D80505'\n };\n\n static readonly SOFT_RED_COLORS = {\n 100: '#ff5353',\n 85: '#ff6d6d',\n 60: '#ff9898',\n 10: '#fff9f9',\n };\n\n static readonly BLACK_COLOR: string = '#000000';\n static readonly LIMIT_COLOR: string = '#E81313';\n static readonly WHITE_COLOR: string = '#FFFFFF';\n\n static getChartColors(color: ChartColor | undefined): { [shade: string]: string } {\n switch (color) {\n case ChartColor.Orange:\n return this.ORANGE_COLORS;\n case ChartColor.SoftBlue:\n return this.SOFT_BLUE_COLORS;\n case ChartColor.ElectricBlue:\n return this.ELECTRIC_BLUE_COLORS;\n case ChartColor.Purple:\n return this.PURPLE_COLORS;\n case ChartColor.Green:\n return this.GREEN_COLORS;\n default:\n return this.GREY_COLORS;\n }\n }\n\n static getColors(seriesCount: number, color: ChartColor | undefined): string[] {\n const colors = this.getChartColors(color);\n switch (seriesCount) {\n case 1:\n return [colors[100]];\n case 2:\n return [colors[40], colors[100]];\n case 3:\n return [colors[20], colors[60], colors[100]];\n case 4:\n return [colors[20], colors[40], colors[60], colors[100]];\n case 5:\n return [colors[20], colors[40], colors[60], colors[100], colors[150]];\n default:\n return [colors[20], colors[40], colors[60], colors[85], colors[100], colors[150]];\n }\n }\n}\n","import { AfterViewChecked, Directive, ElementRef, Input, OnChanges, SimpleChanges, ViewChild } from '@angular/core';\nimport { Chart, Options, SeriesOptions } from 'highcharts';\nimport { ChartColor } from './chart-colors';\n\n@Directive() // Required since Angular10 for DI to work (must be decorated to use Angular features)\nexport abstract class AbstractChartComponent implements AfterViewChecked, OnChanges {\n @ViewChild('chart') chartRef!: ElementRef;\n\n @Input() chartOptions: Options = {}; // https://api.highcharts.com/highcharts/\n @Input() color: ChartColor = ChartColor.ElectricBlue;\n @Input() labelDateFormat = '%m/%d';\n @Input() series: SeriesOptions[] = [];\n\n protected chart!: Chart;\n private lastWidth = 0;\n\n ngOnChanges(changes: SimpleChanges): void {\n if ((changes.series && !changes.series.firstChange) || (changes.color && !changes.color.firstChange)) {\n this.initChart();\n }\n }\n\n ngAfterViewChecked(): void {\n if (this.chartRef && (this.chartRef.nativeElement.clientWidth !== this.lastWidth || this.lastWidth === 0)) {\n this.lastWidth = this.chartRef.nativeElement.clientWidth;\n if (this.chart) {\n this.chart.reflow();\n } else if (this.series && this.series.length) {\n this.initChart();\n }\n }\n }\n\n abstract initChart(): void;\n}\n","import { Chart, dateFormat, Options, Series, SeriesOptionsType } from 'highcharts';\nimport { ChartColor, ChartColors } from './chart-colors';\nimport { SeriesRoundedColumnOptions } from './highchart-series.model';\n\nexport class ChartOptions {\n static readonly DEFAULT_DATE_FORMAT: string = '%A, %b %e, %Y';\n static readonly DEFAULT_OPTIONS: Options = {\n /*lang: {\n decimalPoint: (manager && manager.locale !== 'en') ? ',' : '.',\n resetZoom: resetZoomLabel,\n resetZoomTitle: resetZoomHtmlTitle,\n shortMonths: [\n shortJanuary, shortFebruary, shortMarch, shortApril, shortMay, shortJune,\n shortJuly, shortAugust, shortSeptember, shortOctober, shortNovember, shortDecember\n ],\n thousandsSep: (manager && manager.locale !== 'en') ? ' ' : ',',\n weekdays: this.weekDays,\n zoomIn: zoomInHtmlTitle,\n zoomOut: zoomOutHtmlTitle\n },*/\n chart: {\n spacingRight: 20,\n zooming: {\n type: 'xy',\n resetButton: {\n theme: {\n fill: ChartColors.WHITE_COLOR,\n r: 4,\n style: {\n color: ChartColors.GREY_COLORS[100],\n fontSize: '12px',\n },\n states: {\n hover: {\n fill: ChartColors.GREY_COLORS[5],\n },\n },\n },\n },\n },\n panning: {\n enabled: true,\n },\n panKey: 'shift',\n style: {\n fontFamily: \"Averta, 'Open Sans', Helvetica, sans-serif\",\n },\n },\n colorAxis: {\n labels: {\n style: {\n color: ChartColors.GREY_COLORS[60],\n },\n },\n },\n credits: {\n enabled: false,\n },\n legend: {\n borderWidth: 0,\n itemStyle: {\n color: ChartColors.GREY_COLORS[60],\n fontSize: '14px',\n fontWeight: 'normal',\n },\n itemHoverStyle: {\n color: ChartColors.GREY_COLORS[100],\n fontWeight: 'bold',\n },\n },\n plotOptions: {\n series: {\n states: {\n hover: {\n brightness: 0,\n },\n },\n connectNulls: true,\n lineWidth: 4,\n },\n },\n navigation: {\n buttonOptions: {\n y: 0,\n },\n },\n title: {\n text: undefined,\n },\n tooltip: {\n backgroundColor: ChartColors.WHITE_COLOR,\n borderRadius: 4,\n borderWidth: 0,\n dateTimeLabelFormats: {\n day: ChartOptions.DEFAULT_DATE_FORMAT,\n week: ChartOptions.DEFAULT_DATE_FORMAT,\n },\n shadow: {\n color: ChartColors.BLACK_COLOR,\n offsetX: 0,\n offsetY: 2,\n opacity: 0.02,\n width: 6,\n },\n split: false,\n shared: true,\n useHTML: true,\n headerFormat:\n `<div style=\"border-bottom: 1px solid ${ChartColors.GREY_COLORS[10]}; padding: 0 8px 7px\">` +\n `<span style=\"font-size: 12px; color: ${ChartColors.GREY_COLORS[60]}\">{point.key}</span></div>`,\n pointFormat:\n `<div style=\"font-size: 14px; color: ${ChartColors.GREY_COLORS[100]}; margin: 6px 8px 0 8px;\">` +\n '<span style=\"color:{point.color}\">\\u25CF</span> {series.name}: <b>{point.y}</b></div>',\n },\n xAxis: {\n gridLineColor: ChartColors.GREY_COLORS[10],\n lineColor: ChartColors.GREY_COLORS[10],\n tickColor: ChartColors.GREY_COLORS[10],\n gridLineWidth: 1,\n title: {\n text: null,\n },\n labels: {\n style: {\n color: ChartColors.GREY_COLORS[85],\n fontSize: '12px',\n },\n },\n },\n yAxis: {\n allowDecimals: false,\n gridLineColor: ChartColors.GREY_COLORS[10],\n lineColor: ChartColors.GREY_COLORS[10],\n gridLineWidth: 1,\n title: {\n text: null,\n },\n labels: {\n style: {\n color: ChartColors.GREY_COLORS[85],\n fontSize: '12px',\n },\n },\n },\n };\n\n static build(options: Options): Options {\n return mergeDeep(ChartOptions.DEFAULT_OPTIONS, options);\n }\n\n static configure(series: SeriesOptionsType[], options: Options, color: ChartColor | undefined, labelDateFormat?: string) {\n // Configure axis\n options.xAxis = mergeDeep(\n {\n labels: {\n formatter: function (): string {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return dateFormat(labelDateFormat ?? '%m/%d', this.value);\n },\n },\n //minTickInterval: 24 * 60 * 60 * 1000 // One day\n },\n options.xAxis\n );\n // Configure series\n if (series?.length) {\n options.series = series;\n if (options.legend) {\n options.legend.enabled = series.length >= 2;\n }\n options.colors = ChartColors.getColors(series.length, color);\n }\n }\n\n static redrawWithHighestEdgesRounded(chart: Chart): void {\n chart.series.forEach((serie, serieIndex: number, arr) => {\n ChartOptions.roundHighestSerie(arr, serie.options as SeriesRoundedColumnOptions, serieIndex);\n });\n chart.redraw(true);\n }\n\n static roundHighestSerie(series: Series[], serie: SeriesRoundedColumnOptions, serieIndex: number): void {\n const roundedOptionMap: number[] = [];\n let borderRadius = 0;\n if (serie.data) {\n serie.data.forEach((point, columnIndex) => {\n // Check if all previous stacked data at the same abscissa (located higher on the graph) are missing or have a value of 0\n // if so, it means that this point is the visual top of the column, so we should round it\n const roundedColumnEnabled = series.slice(0, serieIndex).every(otherSerie => {\n if (!otherSerie.visible) {\n return true;\n }\n const pointAtSameAbscissa = (otherSerie.options as SeriesRoundedColumnOptions).data?.find(\n otherPoint => (otherPoint as [number | string, number | null])[0] === (point as [number | string, number | null])[0]\n );\n return !pointAtSameAbscissa || (pointAtSameAbscissa as [number | string, number | null])[1] === 0;\n });\n borderRadius = roundedColumnEnabled ? 100 : 0;\n roundedOptionMap[columnIndex] = borderRadius;\n });\n serie.borderRadiusTopLeft = roundedOptionMap;\n serie.borderRadiusTopRight = roundedOptionMap;\n }\n }\n\n static redrawWithHighestEdgesRoundedForStackedBarChart(chart: Chart): void {\n const seriesOptions = chart.series[0]?.options as SeriesRoundedColumnOptions;\n if (seriesOptions.data) {\n const globalRoundedMap: boolean[] = Array(seriesOptions.data.length).fill(false);\n chart.series.forEach(serie => ChartOptions.roundHighestSeriesForStackedBarChart(serie, globalRoundedMap));\n chart.redraw(true);\n }\n }\n\n static roundHighestSeriesForStackedBarChart(serie: Series, globalRoundedMap: boolean[]): void {\n if (globalRoundedMap.every(rounded => rounded)) {\n return;\n }\n const serieOptions = (serie.options as SeriesRoundedColumnOptions);\n if (serieOptions.data && serie.visible) {\n const borderRadiusMap: number[] = Array(serieOptions.data.length).fill(0);\n serieOptions.data.forEach((point, columnIndex) => {\n const value = point as number;\n if (!globalRoundedMap[columnIndex] && value != null && value > 0) {\n globalRoundedMap[columnIndex] = true;\n borderRadiusMap[columnIndex] = 100;\n }\n });\n serieOptions.borderRadiusTopLeft = borderRadiusMap;\n serieOptions.borderRadiusTopRight = borderRadiusMap;\n }\n }\n}\n\nexport function isObject(item: any) {\n return item && typeof item === 'object' && !Array.isArray(item);\n}\n\nexport function mergeDeep(target: any, source: any) {\n const output = deepCopy(target);\n if (isObject(target) && isObject(source)) {\n Object.keys(source).forEach(key => {\n if (isObject(source[key])) {\n if (!(key in target)) Object.assign(output, { [key]: source[key] });\n else output[key] = mergeDeep(target[key], source[key]);\n } else {\n Object.assign(output, { [key]: source[key] });\n }\n });\n }\n return output;\n}\n\nfunction deepCopy(source: any) {\n if (typeof source !== 'object' || source === null) {\n return source; // Return the value if source is not an object\n }\n // Create an array or object to hold the values\n const newObject = Array.isArray(source) ? [] : {};\n for (const key in source) {\n if (source.hasOwnProperty(key)) {\n // Recursively (deep) copy for nested objects, including arrays\n (newObject as any)[key] = deepCopy(source[key]);\n }\n }\n return newObject;\n}\n","import { Options, SeriesBarOptions, XAxisOptions, YAxisOptions } from 'highcharts';\nimport { ChartOptions, mergeDeep } from '../chart-options';\nimport { ChartColor } from './../chart-colors';\nimport { PlotRoundedSeriesOptions, SeriesRoundedBarOptions } from './../highchart-series.model';\n\nexport class ChartBarOptions extends ChartOptions {\n static buildBars(options: Options, selectiveRoundingEnabled: boolean): Options {\n const defaultColumnOptions: Options = {\n chart: {\n type: 'bar',\n },\n legend: {\n symbolHeight: 10,\n },\n xAxis: {\n categories: undefined,\n gridLineWidth: 0,\n lineWidth: 0,\n reversed: false,\n tickWidth: 0,\n labels: {\n align: 'center',\n formatter(): string {\n if (this.value && this.value.toString().length > 16) {\n return this.value.toString().substring(0, 15) + '...';\n }\n return this.value.toString();\n },\n style: {\n width: 100,\n },\n },\n type: 'category',\n },\n yAxis: {\n type: 'linear',\n minTickInterval: 1,\n },\n plotOptions: {\n bar: {\n maxPointWidth: 18,\n pointWidth: 20,\n },\n series: {\n borderWidth: 0,\n }\n },\n };\n defaultColumnOptions.plotOptions ??= {};\n if (selectiveRoundingEnabled) {\n defaultColumnOptions.plotOptions.bar ??= {};\n defaultColumnOptions.plotOptions.bar.stacking = 'normal';\n defaultColumnOptions.plotOptions.bar.events = {\n hide(): void {\n ChartOptions.redrawWithHighestEdgesRoundedForStackedBarChart(this.chart);\n },\n show(): void {\n ChartOptions.redrawWithHighestEdgesRoundedForStackedBarChart(this.chart);\n },\n };\n } else {\n const seriesOptions: PlotRoundedSeriesOptions = {\n borderRadiusTopLeft: 100,\n borderRadiusTopRight: 100,\n };\n defaultColumnOptions.plotOptions.series = seriesOptions;\n }\n return super.build(mergeDeep(defaultColumnOptions, options));\n }\n\n static configureBar(\n series: SeriesBarOptions[],\n categories: string[],\n options: Options,\n opposite: boolean,\n color: ChartColor,\n labelDateFormat?: string\n ): void {\n ChartOptions.configure(series, options, color, labelDateFormat);\n if (categories && categories.length) {\n (options.xAxis as XAxisOptions).categories = categories;\n }\n if (opposite && series.length === 2) {\n const negativeSerie = series[0] as SeriesRoundedBarOptions;\n negativeSerie.borderRadiusBottomLeft = 100;\n negativeSerie.borderRadiusBottomRight = 100;\n negativeSerie.borderRadiusTopLeft = 0;\n negativeSerie.borderRadiusTopRight = 0;\n negativeSerie.data = negativeSerie.data?.map((point: any) => {\n if (point && isNaN(point)) {\n return {\n ...point,\n y: -Math.abs(point.y),\n };\n } else if (!isNaN(point)) {\n return -Math.abs(point);\n }\n return point;\n });\n if (options.plotOptions?.series) {\n options.plotOptions.series.stacking = 'normal';\n }\n const yAxisLabels = (options.yAxis as YAxisOptions).labels;\n if (yAxisLabels) {\n yAxisLabels.formatter = function (): string {\n return Math.abs(+this.value) + '%';\n };\n }\n if (options.tooltip) {\n options.tooltip.pointFormatter = function (): string {\n return `<div style=\"font-size: 14px; color: #344563; margin: 6px 8px 0 8px;\"><span style=\"color:${\n this.color\n };\">\\u25CF</span> ${this.series.name}: <b>${Math.abs(this.y ?? 0) + '%'}</b></div>`;\n };\n }\n }\n }\n}\n","import { Component, Input } from '@angular/core';\nimport { Chart, SeriesBarOptions } from 'highcharts';\nimport { ChartOptions } from '../../..';\nimport { AbstractChartComponent } from '../abstract-chart.component';\nimport { ChartBarOptions } from './chart-bar-options.model';\n\n@Component({\n selector: 'ap-chart-bar',\n templateUrl: './chart-bar.component.html',\n standalone: true,\n})\nexport class ChartBarComponent extends AbstractChartComponent {\n @Input() categories: string[] = [];\n @Input() opposite: boolean = false;\n @Input() stacked: boolean = false;\n @Input() override series: SeriesBarOptions[] = [];\n\n initChart(): void {\n if (this.series) {\n const selectiveRoundingEnabled = this.stacked && !this.opposite;\n const chartOptions = ChartBarOptions.buildBars(this.chartOptions, selectiveRoundingEnabled);\n ChartBarOptions.configureBar(this.series, this.categories, chartOptions, this.opposite, this.color, this.labelDateFormat);\n this.chart = new Chart(this.chartRef.nativeElement, chartOptions);\n if (this.chart && selectiveRoundingEnabled) {\n ChartOptions.redrawWithHighestEdgesRoundedForStackedBarChart(this.chart);\n }\n }\n }\n}\n","<div #chart></div>\n","import { dateFormat, Options } from 'highcharts';\nimport { ChartOptions, mergeDeep } from '../chart-options';\n\nexport class ChartColumnOptions extends ChartOptions {\n static buildColumn(options: Options, simple: boolean): Options {\n const defaultColumnOptions: Options = {\n chart: {\n type: 'column',\n },\n legend: {\n symbolHeight: 10,\n },\n plotOptions: {\n column: {\n stacking: 'normal',\n borderWidth: 0,\n maxPointWidth: 20,\n events: {\n hide(): void {\n ChartOptions.redrawWithHighestEdgesRounded(this.chart);\n },\n show(): void {\n ChartOptions.redrawWithHighestEdgesRounded(this.chart);\n },\n },\n },\n },\n xAxis: {\n type: 'datetime',\n },\n };\n const simpleColumnOptions: Options = {\n chart: {\n type: 'column',\n height: '80px',\n },\n credits: {\n enabled: false,\n },\n plotOptions: {\n column: {\n events: {\n hide(): void {\n ChartOptions.redrawWithHighestEdgesRounded(this.chart);\n },\n show(): void {\n ChartOptions.redrawWithHighestEdgesRounded(this.chart);\n },\n },\n },\n },\n xAxis: {\n type: 'datetime',\n crosshair: true,\n labels: {\n enabled: false,\n formatter(): string {\n return dateFormat('%m/%d', +this.value);\n },\n },\n lineWidth: 0,\n tickWidth: 0,\n gridLineWidth: 0,\n },\n yAxis: {\n min: 0,\n labels: {\n enabled: false,\n },\n gridLineWidth: 0,\n },\n };\n return super.build(mergeDeep(simple ? simpleColumnOptions : defaultColumnOptions, options));\n }\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { Chart, SeriesColumnOptions } from 'highcharts';\nimport { ChartOptions } from '../../..';\nimport { AbstractChartComponent } from '../abstract-chart.component';\nimport { ChartColumnOptions } from './chart-column-options.model';\n\n@Component({\n selector: 'ap-chart-column',\n templateUrl: './chart-column.component.html',\n standalone: true,\n})\nexport class ChartColumnComponent extends AbstractChartComponent {\n @Input() override series: SeriesColumnOptions[] = [];\n @Input() simple = false;\n @Output() chartInitialized: EventEmitter<Chart> = new EventEmitter();\n\n initChart(): void {\n if (this.series) {\n const chartOptions = ChartColumnOptions.buildColumn(this.chartOptions, this.simple);\n ChartColumnOptions.configure(this.series, chartOptions, this.color, this.labelDateFormat);\n this.chart = new Chart(this.chartRef.nativeElement, chartOptions);\n if (this.chart) {\n ChartOptions.redrawWithHighestEdgesRounded(this.chart);\n }\n this.chartInitialized.emit(this.chart);\n }\n }\n}\n","<div #chart></div>\n","import * as Highcharts from 'highcharts';\nimport { ChartColors } from '../chart-colors';\nimport { ChartOptions, mergeDeep } from '../chart-options';\n\nexport class ChartHeatmapOptions extends ChartOptions {\n static override build(options: Highcharts.Options): Highcharts.Options {\n const defaultHeatmapOptions: Highcharts.Options = {\n chart: {\n type: 'heatmap',\n height: 600,\n },\n colorAxis: {\n allowDecimals: false,\n gridLineWidth: 2,\n gridLineColor: 'white',\n min: 0,\n labels: {\n style: {\n fontSize: '12px',\n },\n },\n },\n legend: {\n enabled: false,\n },\n plotOptions: {\n heatmap: {\n borderColor: ChartColors.GREY_COLORS[10],\n borderWidth: 1,\n nullColor: 'white',\n },\n },\n tooltip: {\n headerFormat: '',\n pointFormat:\n `<div style=\"border-bottom: 1px solid ${ChartColors.GREY_COLORS[10]}; padding: 0 8px 7px\">` +\n `<span style=\"font-size: 12px; color: ${ChartColors.GREY_COLORS[60]}\">{point.tooltipHeaderLabel}</span></div>` +\n `<div style=\"font-size: 14px; color: ${ChartColors.GREY_COLORS[100]}; margin: 6px 8px 0 8px;\">` +\n `<span style=\"color:{point.color}\">\\u25CF</span> {series.name}: <b>{point.value}{point.unit}</b></div>`,\n },\n xAxis: {\n labels: {\n formatter: function () {\n return this.value.toString();\n },\n },\n lineWidth: 1,\n tickWidth: 0,\n visible: true,\n },\n yAxis: {\n lineWidth: 0,\n tickInterval: 3,\n reversed: true,\n visible: true,\n },\n };\n return super.build(mergeDeep(defaultHeatmapOptions, options));\n }\n\n static configureHeatmap(\n categoriesX: string[],\n categoriesY: string[],\n series: Highcharts.SeriesOptionsType[],\n options: Highcharts.Options,\n labelDateFormat?: string\n ) {\n super.configure(series, options, undefined, labelDateFormat);\n if (categoriesX && categoriesX.length) {\n (options.xAxis as Highcharts.XAxisOptions).categories = categoriesX;\n }\n if (categoriesY && categoriesY.length) {\n (options.yAxis as Highcharts.YAxisOptions).categories = categoriesY;\n }\n }\n}\n","import { Component, Input } from '@angular/core';\nimport { SeriesHeatmapOptions, mapChart } from 'highcharts/highmaps';\nimport { AbstractChartComponent } from '../abstract-chart.component';\nimport { ChartHeatmapOptions } from './chart-heatmap-options.model';\n\n@Component({\n selector: 'ap-chart-heatmap',\n templateUrl: './chart-heatmap.component.html',\n standalone: true,\n})\nexport class ChartHeatmapComponent extends AbstractChartComponent {\n @Input() categoriesX: string[] = [];\n @Input() categoriesY: string[] = [];\n @Input() override series: SeriesHeatmapOptions[] = [];\n\n initChart(): void {\n if (this.series) {\n const chartOptions = ChartHeatmapOptions.build(this.chartOptions);\n ChartHeatmapOptions.configureHeatmap(this.categoriesX, this.categoriesY, this.series, chartOptions, this.labelDateFormat);\n mapChart(this.chartRef.nativeElement, chartOptions);\n }\n }\n}\n","<div #chart></div>\n","export enum ChartMetricType {\n default,\n total,\n}\n\nexport class ChartMetric {\n children?: ChartMetric[];\n name = '';\n type?: ChartMetricType;\n value = 0;\n}\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatListModule } from '@angular/material/list';\nimport { ChartMetric, ChartMetricType } from '../chart-metric';\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n selector: 'ap-chart-metrics-list',\n styleUrls: ['chart-metrics-list.component.scss'],\n templateUrl: 'chart-metrics-list.component.html',\n standalone: true,\n imports: [CommonModule, MatListModule, MatDividerModule],\n})\nexport class ChartMetricsListComponent {\n @Input({\n required: true,\n })\n metrics: ChartMetric[] = [];\n @Input() locale = 'en';\n\n ChartMetricType = ChartMetricType;\n digitsInfo = '1.0-1';\n}\n","<mat-list>\n @if (metrics) {\n @for (metric of metrics; track metric; let i = $index) {\n <mat-list-item [ngClass]=\"{ 'chart-metric-total': metric.type === ChartMetricType.total }\">\n @if (!metric.children) {\n <div class=\"chart-metric-name metric-label\">\n {{ metric.name }}\n </div>\n }\n @if (metric.children) {\n <div class=\"chart-metric-name\">\n <span class=\"metric-label\">\n {{ metric.name }}\n </span>\n <span class=\"chart-metric-children\">\n @for (item of metric.children; track item) {\n <span>\n <span class=\"child-label\">{{ item.name }}</span>\n :\n <span class=\"child-value\">{{ item.value }}</span>\n </span>\n }\n </span>\n </div>\n }\n <div class=\"chart-metric-value metric-label\">\n {{ metric.value | number: digitsInfo : locale }}\n </div>\n </mat-list-item>\n }\n }\n</mat-list>\n","import { Options } from 'highcharts';\nimport { ChartOptions, mergeDeep } from '../chart-options';\n\nexport class ChartMixedOptions extends ChartOptions {\n static buildMixed(options: Options, singleDayEnabled: boolean): Options {\n const defaultOptions: Options = {\n chart: {\n type: 'column',\n },\n legend: {\n symbolHeight: 10,\n },\n plotOptions: {\n series: {\n marker: {\n enabled: singleDayEnabled,\n radius: singleDayEnabled ? 5 : 2,\n symbol: 'circle',\n },\n },\n column: {\n stacking: 'normal',\n borderWidth: 0,\n maxPointWidth: 20,\n events: {\n hide(): void {\n ChartOptions.redrawWithHighestEdgesRounded(this.chart);\n },\n show(): void {\n ChartOptions.redrawWithHighestEdgesRounded(this.chart);\n },\n },\n },\n },\n xAxis: {\n type: 'datetime',\n },\n };\n return super.build(mergeDeep(defaultOptions, options));\n }\n}\n","import { Component, Input } from '@angular/core';\nimport { Chart, SeriesOptionsType, SeriesSplineOptions } from 'highcharts';\nimport { ChartOptions } from '../../..';\nimport { AbstractChartComponent } from '../abstract-chart.component';\nimport { ChartMixedOptions } from './chart-mixed-options.model';\n\n@Component({\n selector: 'ap-chart-mixed',\n templateUrl: './chart-mixed.component.html',\n standalone: true,\n})\nexport class ChartMixedComponent extends AbstractChartComponent {\n @Input() override series: SeriesOptionsType[] = [];\n\n initChart(): void {\n if (this.series) {\n const singleDayEnabled = (this.series.find(serie => serie.type === 'spline') as SeriesSplineOptions)?.data?.length === 1;\n const chartOptions = ChartMixedOptions.buildMixed(this.chartOptions, singleDayEnabled);\n ChartMixedOptions.configure(this.series, chartOptions, this.color, this.labelDateFormat);\n this.chart = new Chart(this.chartRef.nativeElement, chartOptions);\n if (this.chart) {\n ChartOptions.redrawWithHighestEdgesRounded(this.chart);\n }\n }\n }\n}\n","<div #chart></div>\n","import { Options, SeriesPieOptions } from 'highcharts';\nimport { ChartOptions, mergeDeep } from '../chart-options';\nimport { ChartColor, ChartColors } from './../chart-colors';\n\nexport class ChartPieOptions extends ChartOptions {\n static buildPie(options: Options, innerLabels: boolean): Options {\n const defaultPieOptions: Options = {\n chart: {\n type: 'pie',\n plotBackgroundColor: undefined,\n plotBorderWidth: undefined,\n plotShadow: false,\n },\n plotOptions: {\n pie: {\n dataLabels: {\n distance: innerLabels ? -40 : 30,\n useHTML: true,\n },\n innerSize: '50%',\n },\n series: {\n allowPointSelect: !innerLabels,\n dataLabels: innerLabels\n ? {\n format: '{point.percentage:.1f}%',\n style: {\n fontSize: '16px',\n color: 'white',\n textOutline: '0',\n },\n }\n : {\n style: {\n fontSize: '12px',\n color: ChartColors.GREY_COLORS[60],\n },\n },\n showInLegend: innerLabels,\n states: {\n inactive: {\n opacity: 1,\n },\n },\n },\n },\n tooltip: {\n outside: true,\n },\n legend: innerLabels\n ? {\n symbolHeight: 10,\n enabled: true,\n }\n : {},\n };\n return super.build(mergeDeep(defaultPieOptions, options));\n }\n\n static configurePie(\n series: SeriesPieOptions[],\n options: Options,\n color: ChartColor,\n labelDateFormat: string,\n innerLabels: boolean,\n mouseEventEnabled = true\n ): void {\n super.configure(series, options, color, labelDateFormat);\n if (innerLabels && options.legend) {\n options.legend.enabled = true;\n }\n if (series && series.length > 0 && series[0]) {\n options.colors = ChartColors.getColors(series[0].data?.length ?? 0, color);\n if (mouseEventEnabled && options.plotOptions?.pie) {\n options.plotOptions.pie.point ??= {};\n options.plotOptions.pie.point.events ??= {};\n options.plotOptions.pie.events ??= {};\n this.configureEnteringASlice(options, innerLabels);\n this.configureLeavingASlice(options, innerLabels);\n this.configureLeavingTheWholePie(options, innerLabels);\n }\n }\n }\n\n private static configureEnteringASlice(options: Options, innerLabels: boolean) {\n if (options.plotOptions?.pie?.point?.events) {\n options.plotOptions.pie.point.events.mouseOver = function (): void {\n this.series.chart.series[0].points.forEach(point => {\n if (point.index !== this.index) {\n point.update(\n {\n color: ChartColors.GREY_COLORS[5],\n },\n false\n );\n if (innerLabels) {\n point.update(\n {\n dataLabels: {\n style: {\n color: ChartColors.GREY_COLORS[20],\n },\n },\n },\n false\n );\n }\n }\n });\n this.series.chart.redraw(false);\n };\n }\n }\n\n private static configureLeavingASlice(options: Options, innerLabels: boolean) {\n if (options.plotOptions?.pie?.point?.events) {\n options.plotOptions.pie.point.events.mouseOut = function (): void {\n this.series.chart.series[0].points.forEach((point, i) => {\n if (point.index !== this.index) {\n point.update(\n {\n color: options.colors?.[i % options.colors.length],\n },\n false\n );\n if (innerLabels) {\n point.update(\n {\n dataLabels: {\n style: {\n color: 'white',\n },\n },\n },\n false\n );\n }\n }\n });\n };\n }\n }\n\n private static configureLeavingTheWholePie(options: Options, innerLabels: boolean) {\n if (options.plotOptions?.pie?.events) {\n options.plotOptions.pie.events.mouseOut = function (): void {\n this.chart.series[0].points.forEach((point, i) => {\n point.update(\n {\n color: options.colors?.[i % options.colors.length],\n },\n false\n );\n if (innerLabels) {\n point.update(\n {\n dataLabels: {\n style: {\n color: 'white',\n },\n },\n },\n false\n );\n }\n });\n this.chart.redraw();\n };\n }\n }\n}\n","import { Component, Input } from '@angular/core';\nimport { Chart, SeriesPieOptions } from 'highcharts';\nimport { AbstractChartComponent } from '../abstract-chart.component';\nimport { ChartPieOptions } from './chart-pie-options.model';\n\n@Component({\n selector: 'ap-chart-pie',\n templateUrl: './chart-pie.component.html',\n standalone: true,\n})\nexport class ChartPieComponent extends AbstractChartComponent {\n @Input() innerLabels = false;\n @Input() mouseEventEnabled = true;\n @Input() override series: SeriesPieOptions[] = [];\n\n initChart(): void {\n if (this.series) {\n const chartOptions = ChartPieOptions.buildPie(this.chartOptions, this.innerLabels);\n ChartPieOptions.configurePie(\n this.series,\n chartOptions,\n this.color,\n this.labelDateFormat,\n this.innerLabels,\n this.mouseEventEnabled\n );\n this.chart = new Chart(this.chartRef.nativeElement, chartOptions);\n }\n }\n}\n","<div #chart></div>\n","import { Options } from 'highcharts';\nimport { ChartOptions, mergeDeep } from '../chart-options';\n\nexport class ChartSplineOptions extends ChartOptions {\n static buildSpline(options: Options, singleDayEnabled: boolean): Options {\n const defaultSplineOptions: Options = {\n chart: {\n type: 'spline',\n },\n plotOptions: {\n series: {\n marker: {\n enabled: singleDayEnabled,\n radius: singleDayEnabled ? 5 : 2,\n symbol: 'circle',\n },\n },\n },\n xAxis: {\n type: 'datetime',\n },\n };\n return super.build(mergeDeep(defaultSplineOptions, options));\n }\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { Chart, SeriesSplineOptions } from 'highcharts';\nimport { AbstractChartComponent } from '../abstract-chart.component';\nimport { ChartSplineOptions } from './chart-spline-options.model';\n\n@Component({\n selector: 'ap-chart-spline',\n templateUrl: './chart-spline.component.html',\n standalone: true,\n})\nexport class ChartSplineComponent extends AbstractChartComponent {\n @Input() override series: SeriesSplineOptions[] = [];\n @Output() chartInitialized: EventEmitter<Chart> = new EventEmitter();\n\n initChart(): void {\n if (this.series) {\n const chartOptions = ChartSplineOptions.buildSpline(this.chartOptions, this.series[0].data?.length === 1);\n ChartSplineOptions.configure(this.series, chartOptions, this.color, this.labelDateFormat);\n this.chart = new Chart(this.chartRef.nativeElement, chartOptions);\n this.chartInitialized.emit(this.chart);\n }\n }\n}\n","<div #chart></div>\n","/*\n * Public API Surface of ui-charts\n */\n\nimport * as Highcharts from 'highcharts';\nimport { borderRadiusPlugin } from './src/lib/highcharts-border-radius-plugin';\n\nborderRadiusPlugin(Highcharts);\n\nexport { AbstractChartComponent } from './src/lib/abstract-chart.component';\nexport { ChartBarComponent } from './src/lib/chart-bar/chart-bar.component';\nexport { ChartColor, ChartColors } from './src/lib/chart-colors';\nexport { ChartColumnComponent } from './src/lib/chart-column/chart-column.component';\nexport { ChartHeatmapComponent } from './src/lib/chart-heatmap/chart-heatmap.component';\nexport { ChartMetric, ChartMetricType } from './src/lib/chart-metric';\nexport { ChartMetricsListComponent } from './src/lib/chart-metrics-list/chart-metrics-list.component';\nexport { ChartMixedComponent } from './src/lib/chart-mixed/chart-mixed.component';\nexport { ChartOptions, mergeDeep } from './src/lib/chart-options';\nexport { ChartPieComponent } from './src/lib/chart-pie/chart-pie.component';\nexport { ChartSplineComponent } from './src/lib/chart-spline/chart-spline.component';\n\nexport { borderRadiusPlugin } from './src/lib/highcharts-border-radius-plugin';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agorapulse-ui-charts.mjs","sources":["../../../libs/ui-charts/src/lib/highcharts-border-radius-plugin.ts","../../../libs/ui-charts/src/lib/chart-colors.ts","../../../libs/ui-charts/src/lib/abstract-chart.component.ts","../../../libs/ui-charts/src/lib/chart-options.ts","../../../libs/ui-charts/src/lib/chart-bar/chart-bar-options.model.ts","../../../libs/ui-charts/src/lib/chart-bar/chart-bar.component.ts","../../../libs/ui-charts/src/lib/chart-bar/chart-bar.component.html","../../../libs/ui-charts/src/lib/chart-column/chart-column-options.model.ts","../../../libs/ui-charts/src/lib/chart-column/chart-column.component.ts","../../../libs/ui-charts/src/lib/chart-column/chart-column.component.html","../../../libs/ui-charts/src/lib/chart-heatmap/chart-heatmap-options.model.ts","../../../libs/ui-charts/src/lib/chart-heatmap/chart-heatmap.component.ts","../../../libs/ui-charts/src/lib/chart-heatmap/chart-heatmap.component.html","../../../libs/ui-charts/src/lib/chart-metric.ts","../../../libs/ui-charts/src/lib/chart-metrics-list/chart-metrics-list.component.ts","../../../libs/ui-charts/src/lib/chart-metrics-list/chart-metrics-list.component.html","../../../libs/ui-charts/src/lib/chart-mixed/chart-mixed-options.model.ts","../../../libs/ui-charts/src/lib/chart-mixed/chart-mixed.component.ts","../../../libs/ui-charts/src/lib/chart-mixed/chart-mixed.component.html","../../../libs/ui-charts/src/lib/chart-pie/chart-pie-options.model.ts","../../../libs/ui-charts/src/lib/chart-pie/chart-pie.component.ts","../../../libs/ui-charts/src/lib/chart-pie/chart-pie.component.html","../../../libs/ui-charts/src/lib/chart-spline/chart-spline-options.model.ts","../../../libs/ui-charts/src/lib/chart-spline/chart-spline.component.ts","../../../libs/ui-charts/src/lib/chart-spline/chart-spline.component.html","../../../libs/ui-charts/index.ts","../../../libs/ui-charts/agorapulse-ui-charts.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/ban-ts-comment */\nexport const borderRadiusPlugin = function (H: any) {\n if (H.borderRadiusPlugininitialized) {\n return;\n }\n H.borderRadiusPlugininitialized = true;\n\n H.wrap(H.seriesTypes.column.prototype, 'translate', function (proceed: any) {\n // @ts-ignore\n const options = this.options;\n const topMargin = options.topMargin || 0;\n const bottomMargin = options.bottomMargin || 0;\n const borderRadiusTopLeftSettings = options.borderRadiusTopLeft;\n const borderRadiusTopRightSettings = options.borderRadiusTopRight;\n const borderRadiusBottomLeftSettings = options.borderRadiusBottomLeft;\n const borderRadiusBottomRightSettings = options.borderRadiusBottomRight;\n // @ts-ignore\n proceed.call(this);\n\n // @ts-ignore\n if (!this.points) {\n return;\n }\n\n if (\n borderRadiusTopLeftSettings ||\n borderRadiusTopRightSettings ||\n borderRadiusBottomLeftSettings ||\n borderRadiusBottomRightSettings\n ) {\n // @ts-ignore\n this.points.forEach(function (point) {\n roundPoint(\n borderRadiusTopLeftSettings,\n borderRadiusTopRightSettings,\n borderRadiusBottomLeftSettings,\n borderRadiusBottomRightSettings,\n point,\n H,\n topMargin,\n bottomMargin\n );\n });\n }\n });\n};\n\nfunction roundPoint(\n borderRadiusTopLeftSettings: string | any[],\n borderRadiusTopRightSettings: string | any[],\n borderRadiusBottomLeftSettings: string | any[],\n borderRadiusBottomRightSettings: string | any[],\n point: { shapeArgs: { width?: any; height?: any; x?: any; y?: any; d?: any[] }; index: string | number; dlBox: any; shapeType: string },\n H: { relativeLength: (arg0: any, arg1: any) => any },\n topMargin: any,\n bottomMargin: any\n) {\n const w = point.shapeArgs.width;\n const h = point.shapeArgs.height;\n const x = point.shapeArgs.x;\n const y = point.shapeArgs.y;\n const borderRadiusTopLeft = borderRadiusTopLeftSettings?.length\n ? (borderRadiusTopLeftSettings as any)[point.index]\n : borderRadiusTopLeftSettings || 0;\n const borderRadiusTopRight = borderRadiusTopRightSettings?.length\n ? (borderRadiusTopRightSettings as any)[point.index]\n : borderRadiusTopRightSettings || 0;\n const borderRadiusBottomLeft = borderRadiusBottomLeftSettings?.length\n ? (borderRadiusBottomLeftSettings as any)[point.index]\n : borderRadiusBottomLeftSettings || 0;\n const borderRadiusBottomRight = borderRadiusBottomRightSettings?.length\n ? (borderRadiusBottomRightSettings as any)[point.index]\n : borderRadiusBottomRightSettings || 0;\n\n let radiusTopLeft = H.relativeLength(borderRadiusTopLeft, w);\n let radiusTopRight = H.relativeLength(borderRadiusTopRight, w);\n let radiusBottomRight = H.relativeLength(borderRadiusBottomRight, w);\n let radiusBottomLeft = H.relativeLength(borderRadiusBottomLeft, w);\n\n const maxR = Math.min(w, h) / 2;\n\n radiusTopLeft = radiusTopLeft > maxR ? maxR : radiusTopLeft;\n radiusTopRight = radiusTopRight > maxR ? maxR : radiusTopRight;\n radiusBottomRight = radiusBottomRight > maxR ? maxR : radiusBottomRight;\n radiusBottomLeft = radiusBottomLeft > maxR ? maxR : radiusBottomLeft;\n\n point.dlBox = point.shapeArgs;\n\n point.shapeType = 'path';\n point.shapeArgs = {\n d: [\n 'M',\n x + radiusTopLeft,\n y + topMargin,\n 'L',\n x + w - radiusTopRight,\n y + topMargin,\n 'C',\n x + w - radiusTopRight / 2,\n y,\n x + w,\n y + radiusTopRight / 2,\n x + w,\n y + radiusTopRight,\n 'L',\n x + w,\n y + h - radiusBottomRight,\n 'C',\n x + w,\n y + h - radiusBottomRight / 2,\n x + w - radiusBottomRight / 2,\n y + h,\n x + w - radiusBottomRight,\n y + h + bottomMargin,\n 'L',\n x + radiusBottomLeft,\n y + h + bottomMargin,\n 'C',\n x + radiusBottomLeft / 2,\n y + h,\n x,\n y + h - radiusBottomLeft / 2,\n x,\n y + h - radiusBottomLeft,\n 'L',\n x,\n y + radiusTopLeft,\n 'C',\n x,\n y + radiusTopLeft / 2,\n x + radiusTopLeft / 2,\n y,\n x + radiusTopLeft,\n y,\n 'Z',\n ],\n };\n}\n","export enum ChartColor {\n Grey,\n Orange,\n SoftBlue,\n ElectricBlue,\n Purple,\n Green,\n}\n\nexport class ChartColors {\n static readonly SOFT_BLUE_COLORS = {\n '10': '#EFF5FC',\n '20': '#DFEDFA',\n '40': '#C0DBF4',\n '60': '#A0C8EF',\n '85': '#78B1E8',\n '100': '#61A4E4',\n '150': '#2873BA',\n };\n static readonly ELECTRIC_BLUE_COLORS = {\n '10': '#e8f4ff',\n '20': '#d1e8ff',\n '40': '#a2d1ff',\n '60': '#74bbfe',\n '85': '#3a9efe',\n '100': '#178dfe',\n '150': '#0e72d6',\n };\n static readonly ORANGE_COLORS = {\n '10': '#FFEFE9',\n '20': '#FFE1D4',\n '40': '#FFC2A8',\n '60': '#FFA47D',\n '85': '#FF7E46',\n '100': '#FF6726',\n '150': '#C83E07',\n };\n static readonly GREEN_COLORS = {\n '10': '#ECF7ED',\n '20': '#DAF1DD',\n '40': '#B5E3BB',\n '60': '#8FD498',\n '85': '#61C26D',\n '100': '#45B854',\n '150': '#0F821D',\n };\n static readonly PURPLE_COLORS = {\n '10': '#EFEDF8',\n '20': '#E0DDF2',\n '40': '#C1BBE6',\n '60': '#A398D9',\n '85': '#7C6DC9',\n '100': '#6554C0',\n '150': '#3C2C95',\n };\n static readonly GREY_COLORS = {\n '5': '#F5F5F7',\n '10': '#EAECEF',\n '20': '#D6DAE0',\n '40': '#AEB5C1',\n '60': '#858FA1',\n '85': '#5D6A82',\n '100': '#344563',\n '150': '#212E44',\n };\n\n static readonly RED_COLORS = {\n '80': '#F17171',\n '150': '#D80505'\n };\n\n static readonly SOFT_RED_COLORS = {\n 100: '#ff5353',\n 85: '#ff6d6d',\n 60: '#ff9898',\n 10: '#fff9f9',\n };\n\n static readonly BLACK_COLOR: string = '#000000';\n static readonly LIMIT_COLOR: string = '#E81313';\n static readonly WHITE_COLOR: string = '#FFFFFF';\n\n static getChartColors(color: ChartColor | undefined): { [shade: string]: string } {\n switch (color) {\n case ChartColor.Orange:\n return this.ORANGE_COLORS;\n case ChartColor.SoftBlue:\n return this.SOFT_BLUE_COLORS;\n case ChartColor.ElectricBlue:\n return this.ELECTRIC_BLUE_COLORS;\n case ChartColor.Purple:\n return this.PURPLE_COLORS;\n case ChartColor.Green:\n return this.GREEN_COLORS;\n default:\n return this.GREY_COLORS;\n }\n }\n\n static getColors(seriesCount: number, color: ChartColor | undefined): string[] {\n const colors = this.getChartColors(color);\n switch (seriesCount) {\n case 1:\n return [colors[100]];\n case 2:\n return [colors[40], colors[100]];\n case 3:\n return [colors[20], colors[60], colors[100]];\n case 4:\n return [colors[20], colors[40], colors[60], colors[100]];\n case 5:\n return [colors[20], colors[40], colors[60], colors[100], colors[150]];\n default:\n return [colors[20], colors[40], colors[60], colors[85], colors[100], colors[150]];\n }\n }\n}\n","import { AfterViewChecked, Directive, ElementRef, Input, OnChanges, SimpleChanges, ViewChild } from '@angular/core';\nimport { Chart, Options, SeriesOptions } from 'highcharts';\nimport { ChartColor } from './chart-colors';\n\n@Directive() // Required since Angular10 for DI to work (must be decorated to use Angular features)\nexport abstract class AbstractChartComponent implements AfterViewChecked, OnChanges {\n @ViewChild('chart') chartRef!: ElementRef;\n\n @Input() chartOptions: Options = {}; // https://api.highcharts.com/highcharts/\n @Input() color: ChartColor = ChartColor.ElectricBlue;\n @Input() labelDateFormat = '%m/%d';\n @Input() series: SeriesOptions[] = [];\n\n protected chart!: Chart;\n private lastWidth = 0;\n\n ngOnChanges(changes: SimpleChanges): void {\n if ((changes.series && !changes.series.firstChange) || (changes.color && !changes.color.firstChange)) {\n this.initChart();\n }\n }\n\n ngAfterViewChecked(): void {\n if (this.chartRef && (this.chartRef.nativeElement.clientWidth !== this.lastWidth || this.lastWidth === 0)) {\n this.lastWidth = this.chartRef.nativeElement.clientWidth;\n if (this.chart) {\n this.chart.reflow();\n } else if (this.series && this.series.length) {\n this.initChart();\n }\n }\n }\n\n abstract initChart(): void;\n}\n","import { Chart, dateFormat, Options, Series, SeriesOptionsType } from 'highcharts';\nimport { ChartColor, ChartColors } from './chart-colors';\nimport { SeriesRoundedColumnOptions } from './highchart-series.model';\n\nexport class ChartOptions {\n static readonly DEFAULT_DATE_FORMAT: string = '%A, %b %e, %Y';\n static readonly DEFAULT_OPTIONS: Options = {\n /*lang: {\n decimalPoint: (manager && manager.locale !== 'en') ? ',' : '.',\n resetZoom: resetZoomLabel,\n resetZoomTitle: resetZoomHtmlTitle,\n shortMonths: [\n shortJanuary, shortFebruary, shortMarch, shortApril, shortMay, shortJune,\n shortJuly, shortAugust, shortSeptember, shortOctober, shortNovember, shortDecember\n ],\n thousandsSep: (manager && manager.locale !== 'en') ? ' ' : ',',\n weekdays: this.weekDays,\n zoomIn: zoomInHtmlTitle,\n zoomOut: zoomOutHtmlTitle\n },*/\n chart: {\n spacingRight: 20,\n zooming: {\n type: 'xy',\n resetButton: {\n theme: {\n fill: ChartColors.WHITE_COLOR,\n r: 4,\n style: {\n color: ChartColors.GREY_COLORS[100],\n fontSize: '12px',\n },\n states: {\n hover: {\n fill: ChartColors.GREY_COLORS[5],\n },\n },\n },\n },\n },\n panning: {\n enabled: true,\n },\n panKey: 'shift',\n style: {\n fontFamily: \"Averta, 'Open Sans', Helvetica, sans-serif\",\n },\n },\n colorAxis: {\n labels: {\n style: {\n color: ChartColors.GREY_COLORS[60],\n },\n },\n },\n credits: {\n enabled: false,\n },\n legend: {\n borderWidth: 0,\n itemStyle: {\n color: ChartColors.GREY_COLORS[60],\n fontSize: '14px',\n fontWeight: 'normal',\n },\n itemHoverStyle: {\n color: ChartColors.GREY_COLORS[100],\n fontWeight: 'bold',\n },\n },\n plotOptions: {\n series: {\n states: {\n hover: {\n brightness: 0,\n },\n },\n connectNulls: true,\n lineWidth: 4,\n },\n },\n navigation: {\n buttonOptions: {\n y: 0,\n },\n },\n title: {\n text: undefined,\n },\n tooltip: {\n backgroundColor: ChartColors.WHITE_COLOR,\n borderRadius: 4,\n borderWidth: 0,\n dateTimeLabelFormats: {\n day: ChartOptions.DEFAULT_DATE_FORMAT,\n week: ChartOptions.DEFAULT_DATE_FORMAT,\n },\n shadow: {\n color: ChartColors.BLACK_COLOR,\n offsetX: 0,\n offsetY: 2,\n opacity: 0.02,\n width: 6,\n },\n split: false,\n shared: true,\n useHTML: true,\n headerFormat:\n `<div style=\"border-bottom: 1px solid ${ChartColors.GREY_COLORS[10]}; padding: 0 8px 7px\">` +\n `<span style=\"font-size: 12px; color: ${ChartColors.GREY_COLORS[60]}\">{point.key}</span></div>`,\n pointFormat:\n `<div style=\"font-size: 14px; color: ${ChartColors.GREY_COLORS[100]}; margin: 6px 8px 0 8px;\">` +\n '<span style=\"color:{point.color}\">\\u25CF</span> {series.name}: <b>{point.y}</b></div>',\n },\n xAxis: {\n gridLineColor: ChartColors.GREY_COLORS[10],\n lineColor: ChartColors.GREY_COLORS[10],\n tickColor: ChartColors.GREY_COLORS[10],\n gridLineWidth: 1,\n title: {\n text: null,\n },\n labels: {\n style: {\n color: ChartColors.GREY_COLORS[85],\n fontSize: '12px',\n },\n },\n },\n yAxis: {\n allowDecimals: false,\n gridLineColor: ChartColors.GREY_COLORS[10],\n lineColor: ChartColors.GREY_COLORS[10],\n gridLineWidth: 1,\n title: {\n text: null,\n },\n labels: {\n style: {\n color: ChartColors.GREY_COLORS[85],\n fontSize: '12px',\n },\n },\n },\n };\n\n static build(options: Options): Options {\n return mergeDeep(ChartOptions.DEFAULT_OPTIONS, options);\n }\n\n static configure(series: SeriesOptionsType[], options: Options, color: ChartColor | undefined, labelDateFormat?: string) {\n // Configure axis\n options.xAxis = mergeDeep(\n {\n labels: {\n formatter: function (): string {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return dateFormat(labelDateFormat ?? '%m/%d', this.value);\n },\n },\n //minTickInterval: 24 * 60 * 60 * 1000 // One day\n },\n options.xAxis\n );\n // Configure series\n if (series?.length) {\n options.series = series;\n if (options.legend) {\n options.legend.enabled = series.length >= 2;\n }\n options.colors = ChartColors.getColors(series.length, color);\n }\n }\n\n static redrawWithHighestEdgesRounded(chart: Chart): void {\n chart.series.forEach((serie, serieIndex: number, arr) => {\n ChartOptions.roundHighestSerie(arr, serie.options as SeriesRoundedColumnOptions, serieIndex);\n });\n chart.redraw(true);\n }\n\n static roundHighestSerie(series: Series[], serie: SeriesRoundedColumnOptions, serieIndex: number): void {\n const roundedOptionMap: number[] = [];\n let borderRadius = 0;\n if (serie.data) {\n serie.data.forEach((point, columnIndex) => {\n // Check if all previous stacked data at the same abscissa (located higher on the graph) are missing or have a value of 0\n // if so, it means that this point is the visual top of the column, so we should round it\n const roundedColumnEnabled = series.slice(0, serieIndex).every(otherSerie => {\n if (!otherSerie.visible) {\n return true;\n }\n const pointAtSameAbscissa = (otherSerie.options as SeriesRoundedColumnOptions).data?.find(\n otherPoint => (otherPoint as [number | string, number | null])[0] === (point as [number | string, number | null])[0]\n );\n return !pointAtSameAbscissa || (pointAtSameAbscissa as [number | string, number | null])[1] === 0;\n });\n borderRadius = roundedColumnEnabled ? 100 : 0;\n roundedOptionMap[columnIndex] = borderRadius;\n });\n serie.borderRadiusTopLeft = roundedOptionMap;\n serie.borderRadiusTopRight = roundedOptionMap;\n }\n }\n\n static redrawWithHighestEdgesRoundedForStackedBarChart(chart: Chart): void {\n const seriesOptions = chart.series[0]?.options as SeriesRoundedColumnOptions;\n if (seriesOptions.data) {\n const globalRoundedMap: boolean[] = Array(seriesOptions.data.length).fill(false);\n chart.series.forEach(serie => ChartOptions.roundHighestSeriesForStackedBarChart(serie, globalRoundedMap));\n chart.redraw(true);\n }\n }\n\n static roundHighestSeriesForStackedBarChart(serie: Series, globalRoundedMap: boolean[]): void {\n if (globalRoundedMap.every(rounded => rounded)) {\n return;\n }\n const serieOptions = (serie.options as SeriesRoundedColumnOptions);\n if (serieOptions.data && serie.visible) {\n const borderRadiusMap: number[] = Array(serieOptions.data.length).fill(0);\n serieOptions.data.forEach((point, columnIndex) => {\n const value = point as number;\n if (!globalRoundedMap[columnIndex] && value != null && value > 0) {\n globalRoundedMap[columnIndex] = true;\n borderRadiusMap[columnIndex] = 100;\n }\n });\n serieOptions.borderRadiusTopLeft = borderRadiusMap;\n serieOptions.borderRadiusTopRight = borderRadiusMap;\n }\n }\n}\n\nexport function isObject(item: any) {\n return item && typeof item === 'object' && !Array.isArray(item);\n}\n\nexport function mergeDeep(target: any, source: any) {\n const output = deepCopy(target);\n if (isObject(target) && isObject(source)) {\n Object.keys(source).forEach(key => {\n if (isObject(source[key])) {\n if (!(key in target)) Object.assign(output, { [key]: source[key] });\n else output[key] = mergeDeep(target[key], source[key]);\n } else {\n Object.assign(output, { [key]: source[key] });\n }\n });\n }\n return output;\n}\n\nfunction deepCopy(source: any) {\n if (typeof source !== 'object' || source === null) {\n return source; // Return the value if source is not an object\n }\n // Create an array or object to hold the values\n const newObject = Array.isArray(source) ? [] : {};\n for (const key in source) {\n if (source.hasOwnProperty(key)) {\n // Recursively (deep) copy for nested objects, including arrays\n (newObject as any)[key] = deepCopy(source[key]);\n }\n }\n return newObject;\n}\n","import { Options, SeriesBarOptions, XAxisOptions, YAxisOptions } from 'highcharts';\nimport { ChartOptions, mergeDeep } from '../chart-options';\nimport { ChartColor } from './../chart-colors';\nimport { PlotRoundedSeriesOptions, SeriesRoundedBarOptions } from './../highchart-series.model';\n\nexport class ChartBarOptions extends ChartOptions {\n static buildBars(options: Options, selectiveRoundingEnabled: boolean): Options {\n const defaultColumnOptions: Options = {\n chart: {\n type: 'bar',\n },\n legend: {\n symbolHeight: 10,\n },\n xAxis: {\n categories: undefined,\n gridLineWidth: 0,\n lineWidth: 0,\n reversed: false,\n tickWidth: 0,\n labels: {\n align: 'center',\n formatter(): string {\n if (this.value && this.value.toString().length > 16) {\n return this.value.toString().substring(0, 15) + '...';\n }\n return this.value.toString();\n },\n style: {\n width: 100,\n },\n },\n type: 'category',\n },\n yAxis: {\n type: 'linear',\n minTickInterval: 1,\n },\n plotOptions: {\n bar: {\n maxPointWidth: 18,\n pointWidth: 20,\n },\n series: {\n borderWidth: 0,\n }\n },\n };\n defaultColumnOptions.plotOptions ??= {};\n if (selectiveRoundingEnabled) {\n defaultColumnOptions.plotOptions.bar ??= {};\n defaultColumnOptions.plotOptions.bar.stacking = 'normal';\n defaultColumnOptions.plotOptions.bar.events = {\n hide(): void {\n ChartOptions.redrawWithHighestEdgesRoundedForStackedBarChart(this.chart);\n },\n show(): void {\n ChartOptions.redrawWithHighestEdgesRoundedForStackedBarChart(this.chart);\n },\n };\n } else {\n const seriesOptions: PlotRoundedSeriesOptions = {\n borderRadiusTopLeft: 100,\n borderRadiusTopRight: 100,\n };\n defaultColumnOptions.plotOptions.series = seriesOptions;\n }\n return super.build(mergeDeep(defaultColumnOptions, options));\n }\n\n static configureBar(\n series: SeriesBarOptions[],\n categories: string[],\n options: Options,\n opposite: boolean,\n color: ChartColor,\n labelDateFormat?: string\n ): void {\n ChartOptions.configure(series, options, color, labelDateFormat);\n if (categories && categories.length) {\n (options.xAxis as XAxisOptions).categories = categories;\n }\n if (opposite && series.length === 2) {\n const negativeSerie = series[0] as SeriesRoundedBarOptions;\n negativeSerie.borderRadiusBottomLeft = 100;\n negativeSerie.borderRadiusBottomRight = 100;\n negativeSerie.borderRadiusTopLeft = 0;\n negativeSerie.borderRadiusTopRight = 0;\n negativeSerie.data = negativeSerie.data?.map((point: any) => {\n if (point && isNaN(point)) {\n return {\n ...point,\n y: -Math.abs(point.y),\n };\n } else if (!isNaN(point)) {\n return -Math.abs(point);\n }\n return point;\n });\n if (options.plotOptions?.series) {\n options.plotOptions.series.stacking = 'normal';\n }\n const yAxisLabels = (options.yAxis as YAxisOptions).labels;\n if (yAxisLabels) {\n yAxisLabels.formatter = function (): string {\n return Math.abs(+this.value) + '%';\n };\n }\n if (options.tooltip) {\n options.tooltip.pointFormatter = function (): string {\n return `<div style=\"font-size: 14px; color: #344563; margin: 6px 8px 0 8px;\"><span style=\"color:${\n this.color\n };\">\\u25CF</span> ${this.series.name}: <b>${Math.abs(this.y ?? 0) + '%'}</b></div>`;\n };\n }\n }\n }\n}\n","import { Component, Input } from '@angular/core';\nimport { Chart, SeriesBarOptions } from 'highcharts';\nimport { ChartOptions } from '../../..';\nimport { AbstractChartComponent } from '../abstract-chart.component';\nimport { ChartBarOptions } from './chart-bar-options.model';\n\n@Component({\n selector: 'ap-chart-bar',\n templateUrl: './chart-bar.component.html',\n standalone: true,\n})\nexport class ChartBarComponent extends AbstractChartComponent {\n @Input() categories: string[] = [];\n @Input() opposite: boolean = false;\n @Input() stacked: boolean = false;\n @Input() override series: SeriesBarOptions[] = [];\n\n initChart(): void {\n if (this.series) {\n const selectiveRoundingEnabled = this.stacked && !this.opposite;\n const chartOptions = ChartBarOptions.buildBars(this.chartOptions, selectiveRoundingEnabled);\n ChartBarOptions.configureBar(this.series, this.categories, chartOptions, this.opposite, this.color, this.labelDateFormat);\n this.chart = new Chart(this.chartRef.nativeElement, chartOptions);\n if (this.chart && selectiveRoundingEnabled) {\n ChartOptions.redrawWithHighestEdgesRoundedForStackedBarChart(this.chart);\n }\n }\n }\n}\n","<div #chart></div>\n","import { dateFormat, Options } from 'highcharts';\nimport { ChartOptions, mergeDeep } from '../chart-options';\n\nexport class ChartColumnOptions extends ChartOptions {\n static buildColumn(options: Options, simple: boolean): Options {\n const defaultColumnOptions: Options = {\n chart: {\n type: 'column',\n },\n legend: {\n symbolHeight: 10,\n },\n plotOptions: {\n column: {\n stacking: 'normal',\n borderWidth: 0,\n maxPointWidth: 20,\n events: {\n hide(): void {\n ChartOptions.redrawWithHighestEdgesRounded(this.chart);\n },\n show(): void {\n ChartOptions.redrawWithHighestEdgesRounded(this.chart);\n },\n },\n },\n },\n xAxis: {\n type: 'datetime',\n },\n };\n const simpleColumnOptions: Options = {\n chart: {\n type: 'column',\n height: '80px',\n },\n credits: {\n enabled: false,\n },\n plotOptions: {\n column: {\n events: {\n hide(): void {\n ChartOptions.redrawWithHighestEdgesRounded(this.chart);\n },\n show(): void {\n ChartOptions.redrawWithHighestEdgesRounded(this.chart);\n },\n },\n },\n },\n xAxis: {\n type: 'datetime',\n crosshair: true,\n labels: {\n enabled: false,\n formatter(): string {\n return dateFormat('%m/%d', +this.value);\n },\n },\n lineWidth: 0,\n tickWidth: 0,\n gridLineWidth: 0,\n },\n yAxis: {\n min: 0,\n labels: {\n enabled: false,\n },\n gridLineWidth: 0,\n },\n };\n return super.build(mergeDeep(simple ? simpleColumnOptions : defaultColumnOptions, options));\n }\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { Chart, SeriesColumnOptions } from 'highcharts';\nimport { ChartOptions } from '../../..';\nimport { AbstractChartComponent } from '../abstract-chart.component';\nimport { ChartColumnOptions } from './chart-column-options.model';\n\n@Component({\n selector: 'ap-chart-column',\n templateUrl: './chart-column.component.html',\n standalone: true,\n})\nexport class ChartColumnComponent extends AbstractChartComponent {\n @Input() override series: SeriesColumnOptions[] = [];\n @Input() simple = false;\n @Output() chartInitialized: EventEmitter<Chart> = new EventEmitter();\n\n initChart(): void {\n if (this.series) {\n const chartOptions = ChartColumnOptions.buildColumn(this.chartOptions, this.simple);\n ChartColumnOptions.configure(this.series, chartOptions, this.color, this.labelDateFormat);\n this.chart = new Chart(this.chartRef.nativeElement, chartOptions);\n if (this.chart) {\n ChartOptions.redrawWithHighestEdgesRounded(this.chart);\n }\n this.chartInitialized.emit(this.chart);\n }\n }\n}\n","<div #chart></div>\n","import * as Highcharts from 'highcharts';\nimport { ChartColors } from '../chart-colors';\nimport { ChartOptions, mergeDeep } from '../chart-options';\n\nexport class ChartHeatmapOptions extends ChartOptions {\n static override build(options: Highcharts.Options): Highcharts.Options {\n const defaultHeatmapOptions: Highcharts.Options = {\n chart: {\n type: 'heatmap',\n height: 600,\n },\n colorAxis: {\n allowDecimals: false,\n gridLineWidth: 2,\n gridLineColor: 'white',\n min: 0,\n labels: {\n style: {\n fontSize: '12px',\n },\n },\n },\n legend: {\n enabled: false,\n },\n plotOptions: {\n heatmap: {\n borderColor: ChartColors.GREY_COLORS[10],\n borderWidth: 1,\n nullColor: 'white',\n },\n },\n tooltip: {\n headerFormat: '',\n pointFormat:\n `<div style=\"border-bottom: 1px solid ${ChartColors.GREY_COLORS[10]}; padding: 0 8px 7px\">` +\n `<span style=\"font-size: 12px; color: ${ChartColors.GREY_COLORS[60]}\">{point.tooltipHeaderLabel}</span></div>` +\n `<div style=\"font-size: 14px; color: ${ChartColors.GREY_COLORS[100]}; margin: 6px 8px 0 8px;\">` +\n `<span style=\"color:{point.color}\">\\u25CF</span> {series.name}: <b>{point.value}{point.unit}</b></div>`,\n },\n xAxis: {\n labels: {\n formatter: function () {\n return this.value.toString();\n },\n },\n lineWidth: 1,\n tickWidth: 0,\n visible: true,\n },\n yAxis: {\n lineWidth: 0,\n tickInterval: 3,\n reversed: true,\n visible: true,\n },\n };\n return super.build(mergeDeep(defaultHeatmapOptions, options));\n }\n\n static configureHeatmap(\n categoriesX: string[],\n categoriesY: string[],\n series: Highcharts.SeriesOptionsType[],\n options: Highcharts.Options,\n labelDateFormat?: string\n ) {\n super.configure(series, options, undefined, labelDateFormat);\n if (categoriesX && categoriesX.length) {\n (options.xAxis as Highcharts.XAxisOptions).categories = categoriesX;\n }\n if (categoriesY && categoriesY.length) {\n (options.yAxis as Highcharts.YAxisOptions).categories = categoriesY;\n }\n }\n}\n","import { Component, Input } from '@angular/core';\nimport { SeriesHeatmapOptions, mapChart } from 'highcharts/highmaps';\nimport { AbstractChartComponent } from '../abstract-chart.component';\nimport { ChartHeatmapOptions } from './chart-heatmap-options.model';\n\n@Component({\n selector: 'ap-chart-heatmap',\n templateUrl: './chart-heatmap.component.html',\n standalone: true,\n})\nexport class ChartHeatmapComponent extends AbstractChartComponent {\n @Input() categoriesX: string[] = [];\n @Input() categoriesY: string[] = [];\n @Input() override series: SeriesHeatmapOptions[] = [];\n\n initChart(): void {\n if (this.series) {\n const chartOptions = ChartHeatmapOptions.build(this.chartOptions);\n ChartHeatmapOptions.configureHeatmap(this.categoriesX, this.categoriesY, this.series, chartOptions, this.labelDateFormat);\n mapChart(this.chartRef.nativeElement, chartOptions);\n }\n }\n}\n","<div #chart></div>\n","export enum ChartMetricType {\n default,\n total,\n}\n\nexport class ChartMetric {\n children?: ChartMetric[];\n name = '';\n type?: ChartMetricType;\n value = 0;\n}\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatListModule } from '@angular/material/list';\nimport { ChartMetric, ChartMetricType } from '../chart-metric';\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n selector: 'ap-chart-metrics-list',\n styleUrls: ['chart-metrics-list.component.scss'],\n templateUrl: 'chart-metrics-list.component.html',\n standalone: true,\n imports: [CommonModule, MatListModule, MatDividerModule],\n})\nexport class ChartMetricsListComponent {\n @Input({\n required: true,\n })\n metrics: ChartMetric[] = [];\n @Input() locale = 'en';\n\n ChartMetricType = ChartMetricType;\n digitsInfo = '1.0-1';\n}\n","<mat-list>\n @if (metrics) {\n @for (metric of metrics; track metric; let i = $index) {\n <mat-list-item [ngClass]=\"{ 'chart-metric-total': metric.type === ChartMetricType.total }\">\n @if (!metric.children) {\n <div class=\"chart-metric-name metric-label\">\n {{ metric.name }}\n </div>\n }\n @if (metric.children) {\n <div class=\"chart-metric-name\">\n <span class=\"metric-label\">\n {{ metric.name }}\n </span>\n <span class=\"chart-metric-children\">\n @for (item of metric.children; track item) {\n <span>\n <span class=\"child-label\">{{ item.name }}</span>\n :\n <span class=\"child-value\">{{ item.value }}</span>\n </span>\n }\n </span>\n </div>\n }\n <div class=\"chart-metric-value metric-label\">\n {{ metric.value | number: digitsInfo : locale }}\n </div>\n </mat-list-item>\n }\n }\n</mat-list>\n","import { Options } from 'highcharts';\nimport { ChartOptions, mergeDeep } from '../chart-options';\n\nexport class ChartMixedOptions extends ChartOptions {\n static buildMixed(options: Options, singleDayEnabled: boolean): Options {\n const defaultOptions: Options = {\n chart: {\n type: 'column',\n },\n legend: {\n symbolHeight: 10,\n },\n plotOptions: {\n series: {\n marker: {\n enabled: singleDayEnabled,\n radius: singleDayEnabled ? 5 : 2,\n symbol: 'circle',\n },\n },\n column: {\n stacking: 'normal',\n borderWidth: 0,\n maxPointWidth: 20,\n events: {\n hide(): void {\n ChartOptions.redrawWithHighestEdgesRounded(this.chart);\n },\n show(): void {\n ChartOptions.redrawWithHighestEdgesRounded(this.chart);\n },\n },\n },\n },\n xAxis: {\n type: 'datetime',\n },\n };\n return super.build(mergeDeep(defaultOptions, options));\n }\n}\n","import { Component, Input } from '@angular/core';\nimport { Chart, SeriesOptionsType, SeriesSplineOptions } from 'highcharts';\nimport { ChartOptions } from '../../..';\nimport { AbstractChartComponent } from '../abstract-chart.component';\nimport { ChartMixedOptions } from './chart-mixed-options.model';\n\n@Component({\n selector: 'ap-chart-mixed',\n templateUrl: './chart-mixed.component.html',\n standalone: true,\n})\nexport class ChartMixedComponent extends AbstractChartComponent {\n @Input() override series: SeriesOptionsType[] = [];\n\n initChart(): void {\n if (this.series) {\n const singleDayEnabled = (this.series.find(serie => serie.type === 'spline') as SeriesSplineOptions)?.data?.length === 1;\n const chartOptions = ChartMixedOptions.buildMixed(this.chartOptions, singleDayEnabled);\n ChartMixedOptions.configure(this.series, chartOptions, this.color, this.labelDateFormat);\n this.chart = new Chart(this.chartRef.nativeElement, chartOptions);\n if (this.chart) {\n ChartOptions.redrawWithHighestEdgesRounded(this.chart);\n }\n }\n }\n}\n","<div #chart></div>\n","import { Options, PointOptionsObject, SeriesPieDataLabelsOptionsObject, SeriesPieOptions } from 'highcharts';\nimport { ChartColors } from '../chart-colors';\nimport { ChartOptions, mergeDeep } from '../chart-options';\n\nconst NAME_MAX_LENGTH = 30;\n\nexport class ChartPieOptions extends ChartOptions {\n static buildPie(options: Options, innerLabels: boolean): Options {\n const defaultPieOptions: Options = {\n chart: {\n type: 'pie',\n plotBackgroundColor: undefined,\n plotBorderWidth: undefined,\n plotShadow: false,\n },\n plotOptions: {\n pie: {\n dataLabels: {\n distance: innerLabels ? -40 : 30,\n useHTML: true,\n },\n innerSize: '50%',\n },\n series: {\n allowPointSelect: !innerLabels,\n dataLabels: innerLabels\n ? {\n format: '{point.percentage:.1f}%',\n style: {\n fontSize: '16px',\n color: 'white',\n textOutline: '0',\n },\n }\n : {\n formatter: function () {\n const name = this.point.name.length > NAME_MAX_LENGTH ? this.point.name.substring(0, NAME_MAX_LENGTH) + '...' : this.point.name;\n const roundedPercentage = Math.round((this.point.percentage ?? 0) * 10) / 10 + '%';\n return '\\u202B' + name + ': ' + roundedPercentage\n },\n style: {\n fontSize: '12px',\n color: ChartColors.GREY_COLORS[60],\n },\n },\n showInLegend: innerLabels,\n states: {\n inactive: {\n opacity: 1,\n },\n },\n },\n },\n tooltip: {\n outside: true,\n },\n legend: innerLabels\n ? {\n symbolHeight: 10,\n enabled: true,\n }\n : {},\n };\n return super.build(mergeDeep(defaultPieOptions, options));\n }\n\n static configurePie(\n series: SeriesPieOptions[],\n options: Options,\n colors: string[],\n labelDateFormat: string,\n innerLabels: boolean,\n mouseEventEnabled = true\n ): void {\n super.configure(series, options, undefined, labelDateFormat);\n if (innerLabels && options.legend) {\n options.legend.enabled = true;\n }\n if (series && series.length > 0 && series[0]) {\n options.colors = colors;\n if (mouseEventEnabled && options.plotOptions?.pie) {\n this.resetColors(series[0].data as PointOptionsObject[], innerLabels);\n options.plotOptions.pie.point ??= {};\n options.plotOptions.pie.point.events ??= {};\n options.plotOptions.pie.events ??= {};\n this.configureEnteringASlice(options, innerLabels);\n this.configureLeavingASlice(options, innerLabels);\n this.configureLeavingTheWholePie(options, innerLabels);\n }\n }\n }\n\n private static resetColors(points: PointOptionsObject[], innerLabels: boolean) {\n points?.forEach(point => {\n delete point?.color;\n if (innerLabels) {\n delete (point.dataLabels as SeriesPieDataLabelsOptionsObject)?.style?.color;\n }\n });\n }\n\n private static configureEnteringASlice(options: Options, innerLabels: boolean) {\n if (options.plotOptions?.pie?.point?.events) {\n options.plotOptions.pie.point.events.mouseOver = function (): void {\n this.series.chart.series[0].points.forEach(point => {\n if (point.index !== this.index) {\n point.update(\n {\n color: ChartColors.GREY_COLORS[5],\n },\n false\n );\n if (innerLabels) {\n point.update(\n {\n dataLabels: {\n style: {\n color: ChartColors.GREY_COLORS[20],\n },\n },\n },\n false\n );\n }\n }\n });\n this.series.chart.redraw(false);\n };\n }\n }\n\n private static configureLeavingASlice(options: Options, innerLabels: boolean) {\n if (options.plotOptions?.pie?.point?.events) {\n options.plotOptions.pie.point.events.mouseOut = function (): void {\n this.series.chart.series[0].points.forEach((point, i) => {\n if (point.index !== this.index) {\n point.update(\n {\n color: options.colors?.[i % options.colors.length],\n },\n false\n );\n if (innerLabels) {\n point.update(\n {\n dataLabels: {\n style: {\n color: 'white',\n },\n },\n },\n false\n );\n }\n }\n });\n };\n }\n }\n\n private static configureLeavingTheWholePie(options: Options, innerLabels: boolean) {\n if (options.plotOptions?.pie?.events) {\n options.plotOptions.pie.events.mouseOut = function (): void {\n this.chart.series[0].points.forEach((point, i) => {\n point.update(\n {\n color: options.colors?.[i % options.colors.length],\n },\n false\n );\n if (innerLabels) {\n point.update(\n {\n dataLabels: {\n style: {\n color: 'white',\n },\n },\n },\n false\n );\n }\n });\n this.chart.redraw();\n };\n }\n }\n}\n","import { Component, effect, input, Input } from '@angular/core';\nimport { Chart, SeriesPieOptions } from 'highcharts';\nimport { AbstractChartComponent } from '../abstract-chart.component';\nimport { ChartColors } from '../chart-colors';\nimport { ChartPieOptions } from './chart-pie-options.model';\n\n@Component({\n selector: 'ap-chart-pie',\n templateUrl: './chart-pie.component.html',\n standalone: true,\n})\nexport class ChartPieComponent extends AbstractChartComponent {\n @Input() innerLabels = false;\n @Input() mouseEventEnabled = true;\n @Input() override series: SeriesPieOptions[] = [];\n colors = input<string[]>();\n\n constructor() {\n super();\n effect(() => {\n this.colors();\n this.initChart();\n });\n }\n\n initChart(): void {\n if (this.series) {\n const chartOptions = ChartPieOptions.buildPie(this.chartOptions, this.innerLabels);\n let colors = this.colors();\n if (!colors?.length) {\n colors = ChartColors.getColors(this.series[0].data?.length ?? 0, this.color);\n }\n ChartPieOptions.configurePie(this.series, chartOptions, colors, this.labelDateFormat, this.innerLabels, this.mouseEventEnabled);\n this.chart = new Chart(this.chartRef.nativeElement, chartOptions);\n }\n }\n}\n","<div #chart></div>\n","import { Options } from 'highcharts';\nimport { ChartOptions, mergeDeep } from '../chart-options';\n\nexport class ChartSplineOptions extends ChartOptions {\n static buildSpline(options: Options, singleDayEnabled: boolean): Options {\n const defaultSplineOptions: Options = {\n chart: {\n type: 'spline',\n },\n plotOptions: {\n series: {\n marker: {\n enabled: singleDayEnabled,\n radius: singleDayEnabled ? 5 : 2,\n symbol: 'circle',\n },\n },\n },\n xAxis: {\n type: 'datetime',\n },\n };\n return super.build(mergeDeep(defaultSplineOptions, options));\n }\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { Chart, SeriesSplineOptions } from 'highcharts';\nimport { AbstractChartComponent } from '../abstract-chart.component';\nimport { ChartSplineOptions } from './chart-spline-options.model';\n\n@Component({\n selector: 'ap-chart-spline',\n templateUrl: './chart-spline.component.html',\n standalone: true,\n})\nexport class ChartSplineComponent extends AbstractChartComponent {\n @Input() override series: SeriesSplineOptions[] = [];\n @Output() chartInitialized: EventEmitter<Chart> = new EventEmitter();\n\n initChart(): void {\n if (this.series) {\n const chartOptions = ChartSplineOptions.buildSpline(this.chartOptions, this.series[0].data?.length === 1);\n ChartSplineOptions.configure(this.series, chartOptions, this.color, this.labelDateFormat);\n this.chart = new Chart(this.chartRef.nativeElement, chartOptions);\n this.chartInitialized.emit(this.chart);\n }\n }\n}\n","<div #chart></div>\n","/*\n * Public API Surface of ui-charts\n */\n\nimport * as Highcharts from 'highcharts';\nimport { borderRadiusPlugin } from './src/lib/highcharts-border-radius-plugin';\n\nborderRadiusPlugin(Highcharts);\n\nexport { AbstractChartComponent } from './src/lib/abstract-chart.component';\nexport { ChartBarComponent } from './src/lib/chart-bar/chart-bar.component';\nexport { ChartColor, ChartColors } from './src/lib/chart-colors';\nexport { ChartColumnComponent } from './src/lib/chart-column/chart-column.component';\nexport { ChartHeatmapComponent } from './src/lib/chart-heatmap/chart-heatmap.component';\nexport { ChartMetric, ChartMetricType } from './src/lib/chart-metric';\nexport { ChartMetricsListComponent } from './src/lib/chart-metrics-list/chart-metrics-list.component';\nexport { ChartMixedComponent } from './src/lib/chart-mixed/chart-mixed.component';\nexport { ChartOptions, mergeDeep } from './src/lib/chart-options';\nexport { ChartPieComponent } from './src/lib/chart-pie/chart-pie.component';\nexport { ChartSplineComponent } from './src/lib/chart-spline/chart-spline.component';\n\nexport { borderRadiusPlugin } from './src/lib/highcharts-border-radius-plugin';\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,9 +1,9 @@
|
|
|
1
1
|
import { Options, SeriesPieOptions } from 'highcharts';
|
|
2
2
|
import { ChartOptions } from '../chart-options';
|
|
3
|
-
import { ChartColor } from './../chart-colors';
|
|
4
3
|
export declare class ChartPieOptions extends ChartOptions {
|
|
5
4
|
static buildPie(options: Options, innerLabels: boolean): Options;
|
|
6
|
-
static configurePie(series: SeriesPieOptions[], options: Options,
|
|
5
|
+
static configurePie(series: SeriesPieOptions[], options: Options, colors: string[], labelDateFormat: string, innerLabels: boolean, mouseEventEnabled?: boolean): void;
|
|
6
|
+
private static resetColors;
|
|
7
7
|
private static configureEnteringASlice;
|
|
8
8
|
private static configureLeavingASlice;
|
|
9
9
|
private static configureLeavingTheWholePie;
|
|
@@ -5,7 +5,9 @@ export declare class ChartPieComponent extends AbstractChartComponent {
|
|
|
5
5
|
innerLabels: boolean;
|
|
6
6
|
mouseEventEnabled: boolean;
|
|
7
7
|
series: SeriesPieOptions[];
|
|
8
|
+
colors: import("@angular/core").InputSignal<string[] | undefined>;
|
|
9
|
+
constructor();
|
|
8
10
|
initChart(): void;
|
|
9
11
|
static ɵfac: i0.ɵɵFactoryDeclaration<ChartPieComponent, never>;
|
|
10
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ChartPieComponent, "ap-chart-pie", never, { "innerLabels": { "alias": "innerLabels"; "required": false; }; "mouseEventEnabled": { "alias": "mouseEventEnabled"; "required": false; }; "series": { "alias": "series"; "required": false; }; }, {}, never, never, true, never>;
|
|
12
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ChartPieComponent, "ap-chart-pie", never, { "innerLabels": { "alias": "innerLabels"; "required": false; }; "mouseEventEnabled": { "alias": "mouseEventEnabled"; "required": false; }; "series": { "alias": "series"; "required": false; }; "colors": { "alias": "colors"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
11
13
|
}
|
|
Binary file
|