@litigiovirtual/ius-design-components 1.0.73 → 1.0.74
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/button-dynamic/button-dynamic.component.mjs +1 -1
- package/esm2022/lib/charts-donut/charts-donut.component.mjs +3 -3
- package/fesm2022/litigiovirtual-ius-design-components.mjs +2 -2
- package/fesm2022/litigiovirtual-ius-design-components.mjs.map +1 -1
- package/lib/button-dynamic/button-dynamic.component.d.ts +1 -1
- package/package.json +1 -1
|
@@ -112,4 +112,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
112
112
|
}], buttonClicked: [{
|
|
113
113
|
type: Output
|
|
114
114
|
}] } });
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWR5bmFtaWMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaXVzLWRlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvYnV0dG9uLWR5bmFtaWMvYnV0dG9uLWR5bmFtaWMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaXVzLWRlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvYnV0dG9uLWR5bmFtaWMvYnV0dG9uLWR5bmFtaWMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBd0IsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUM1RyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7O0FBWXBGLE1BQU0sT0FBTyxzQkFBc0I7SUFQbkM7UUFTVyxpQkFBWSxHQUFHLE9BQU8sQ0FBQztRQUl2QixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFHaEIsY0FBUyxHQUFHLElBQUksQ0FBQztRQUNqQixtQkFBYyxHQUFHLElBQUksQ0FBQztRQUVyQixrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFFbkQsVUFBSyxHQUFnQixTQUFTLENBQUM7S0FrRmhDO0lBL0VDLFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUN4QyxDQUFDO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMs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QUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsc0JBQXNCLEVBQUUsZUFBZSxDQUFDOzhCQU12RCxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUVJLGFBQWE7c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSWNvbk1kQ29tcG9uZW50IH0gZnJvbSAnLi4vaWNvbi1tZC9pY29uLW1kLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExvYWRpbmdDaXJjbGVDb21wb25lbnQgfSBmcm9tICcuLi9sb2FkaW5nLWNpcmNsZS9sb2FkaW5nLWNpcmNsZS5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0IHR5cGUgQnV0dG9uUmVzdWx0ID0gJ3N1Y2Nlc3MnIHwgJ2Vycm9yJyB8IHVuZGVmaW5lZDtcclxudHlwZSBCdXR0b25TdGF0ZSA9ICdkZWZhdWx0JyB8ICdsb2FkaW5nJyB8ICdzdWNjZXNzJyB8ICdlcnJvcicgfCAnZGlzYWJsZWQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpdXMtYnV0dG9uLWR5bmFtaWMnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTG9hZGluZ0NpcmNsZUNvbXBvbmVudCwgSWNvbk1kQ29tcG9uZW50XSxcclxuICB0ZW1wbGF0ZVVybDogJy4vYnV0dG9uLWR5bmFtaWMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2J1dHRvbi1keW5hbWljLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCdXR0b25EeW5hbWljQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG5cclxuICBASW5wdXQoKSBsYWJlbERlZmF1bHQgPSAnTGFiZWwnO1xyXG4gIEBJbnB1dCgpIGxhYmVsU3VjY2Vzcz86IHN0cmluZztcclxuICBASW5wdXQoKSBsYWJlbEVycm9yPzogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGxvYWRpbmcgPSBmYWxzZTtcclxuICBASW5wdXQoKSByZXN1bHQ6IEJ1dHRvblJlc3VsdDtcclxuXHJcbiAgQElucHV0KCkgYXV0b1Jlc2V0ID0gdHJ1ZTtcclxuICBASW5wdXQoKSBhdXRvUmVzZXREZWxheSA9IDE1MDA7XHJcblxyXG4gIEBPdXRwdXQoKSBidXR0b25DbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBzdGF0ZTogQnV0dG9uU3RhdGUgPSAnZGVmYXVsdCc7XHJcbiAgcHJpdmF0ZSByZXNldFRpbWVyOiBhbnk7XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgaWYgKCF0aGlzLmxhYmVsU3VjY2Vzcykge1xyXG4gICAgICB0aGlzLmxhYmVsU3VjY2VzcyA9IHRoaXMubGFiZWxEZWZhdWx0O1xyXG4gICAgfVxyXG4gICAgaWYgKCF0aGlzLmxhYmVsRXJyb3IpIHtcclxuICAgICAgdGhpcy5sYWJlbEVycm9yID0gdGhpcy5sYWJlbERlZmF1bHQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICAvLyAxKSBkaXNhYmxlZCBtYW5kYSB0b2RvIGEgJ2Rpc2FibGVkJ1xyXG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZSgnZGlzYWJsZWQnKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIDIpIGxvYWRpbmcgZ29iaWVybmEgbWllbnRyYXMgZXMgdHJ1ZVxyXG4gICAgaWYgKGNoYW5nZXNbJ2xvYWRpbmcnXSkge1xyXG4gICAgICBpZiAodGhpcy5sb2FkaW5nKSB7XHJcbiAgICAgICAgdGhpcy5jbGVhclRpbWVyKCk7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSgnbG9hZGluZycpO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICAvLyBsb2FkaW5nIOKGkiBmYWxzZTogbWlyYXIgcmVzdWx0XHJcbiAgICAgICAgdGhpcy5hcHBseVJlc3VsdFN0YXRlKCk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gMykgU2kgY2FtYmnDsyAncmVzdWx0JyB5IG5vIGVzdGFtb3MgY2FyZ2FuZG8sIGFwbGljYXJcclxuICAgIGlmIChjaGFuZ2VzWydyZXN1bHQnXSAmJiAhdGhpcy5sb2FkaW5nKSB7XHJcbiAgICAgIHRoaXMuYXBwbHlSZXN1bHRTdGF0ZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIDQpIGZhbGxiYWNrXHJcbiAgICBpZiAoIXRoaXMubG9hZGluZyAmJiAhdGhpcy5yZXN1bHQpIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZSgnZGVmYXVsdCcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYXBwbHlSZXN1bHRTdGF0ZSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnJlc3VsdCA9PT0gJ3N1Y2Nlc3MnKSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoJ3N1Y2Nlc3MnKTtcclxuICAgICAgdGhpcy5hcm1BdXRvUmVzZXQoKTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5yZXN1bHQgPT09ICdlcnJvcicpIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZSgnZXJyb3InKTtcclxuICAgICAgdGhpcy5hcm1BdXRvUmVzZXQoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoJ2RlZmF1bHQnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGFybUF1dG9SZXNldCgpOiB2b2lkIHtcclxuICAgIHRoaXMuY2xlYXJUaW1lcigpO1xyXG4gICAgaWYgKCF0aGlzLmF1dG9SZXNldCkgcmV0dXJuO1xyXG4gICAgdGhpcy5yZXNldFRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoJ2RlZmF1bHQnKTtcclxuICAgIH0sIHRoaXMuYXV0b1Jlc2V0RGVsYXkpO1xyXG4gIH1cclxuXHJcbiAgY2xlYXJUaW1lcigpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnJlc2V0VGltZXIpIHtcclxuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMucmVzZXRUaW1lcik7XHJcbiAgICAgIHRoaXMucmVzZXRUaW1lciA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRTdGF0ZShzOiBCdXR0b25TdGF0ZSkge1xyXG4gICAgdGhpcy5zdGF0ZSA9IHM7XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrKCkge1xyXG4gICAgaWYgKHRoaXMuc3RhdGUgPT09ICdsb2FkaW5nJyB8fCB0aGlzLnN0YXRlID09PSAnZGlzYWJsZWQnKSByZXR1cm47XHJcbiAgICB0aGlzLmJ1dHRvbkNsaWNrZWQuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmNsZWFyVGltZXIoKTtcclxuICB9XHJcbn1cclxuIiwiPGJ1dHRvbiBjbGFzcz1cIml1cy1idG5cIiBbYXR0ci5kYXRhLXN0YXRlXT1cInN0YXRlXCIgW2Rpc2FibGVkXT1cInN0YXRlID09PSAnZGlzYWJsZWQnIHx8IHN0YXRlID09PSAnbG9hZGluZydcIlxyXG4gIChjbGljayk9XCJvbkNsaWNrKClcIiBhcmlhLWxpdmU9XCJwb2xpdGVcIj5cclxuICBAc3dpdGNoIChzdGF0ZSkge1xyXG4gIEBjYXNlICgnbG9hZGluZycpIHtcclxuICA8aXVzLWxvYWRpbmctY2lyY2xlPjwvaXVzLWxvYWRpbmctY2lyY2xlPlxyXG4gIH1cclxuICBAY2FzZSAoJ3N1Y2Nlc3MnKSB7XHJcbiAgPGl1cy1pY29uLW1kIGljb25OYW1lPVwiaWNvbi1jaGVjay1jaXJjbGVcIj48L2l1cy1pY29uLW1kPlxyXG4gIDxzcGFuPnt7IGxhYmVsU3VjY2VzcyB9fTwvc3Bhbj5cclxuICB9XHJcbiAgQGNhc2UgKCdlcnJvcicpIHtcclxuICA8aXVzLWljb24tbWQgaWNvbk5hbWU9XCJpY29uLWVycm9yXCI+PC9pdXMtaWNvbi1tZD5cclxuICA8c3Bhbj57eyBsYWJlbEVycm9yIH19PC9zcGFuPlxyXG4gIH1cclxuICBAZGVmYXVsdCB7XHJcbiAgPHNwYW4+e3sgbGFiZWxEZWZhdWx0IH19PC9zcGFuPlxyXG4gIH1cclxuICB9XHJcbjwvYnV0dG9uPiJdfQ==
|
|
@@ -110,11 +110,11 @@ export class ChartsDonutComponent {
|
|
|
110
110
|
return `Gráfica de dona. Total ${this.total()}. ${parts.join('. ')}`;
|
|
111
111
|
}
|
|
112
112
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChartsDonutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
113
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ChartsDonutComponent, isStandalone: true, selector: "ius-charts-donut", inputs: { data: "data", size: "size", thickness: "thickness", gapDegrees: "gapDegrees", showLegend: "showLegend", legendPosition: "legendPosition", centerText: "centerText", sort: "sort" }, outputs: { sliceClick: "sliceClick" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"donut-wrapper\" [class.bottom]=\"legendPosition === 'bottom'\">\r\n <svg\r\n class=\"donut\"\r\n role=\"img\"\r\n [attr.aria-label]=\"ariaLabel\"\r\n [attr.width]=\"size\"\r\n [attr.height]=\"size\"\r\n [attr.viewBox]=\"viewBox()\">\r\n <!-- pista -->\r\n <circle\r\n class=\"track\"\r\n [attr.cx]=\"size/2\"\r\n [attr.cy]=\"size/2\"\r\n [attr.r]=\"radius()\"\r\n [attr.stroke-width]=\"thickness\"\r\n ></circle>\r\n\r\n <!-- slices como PATH (cada uno es su arco real) -->\r\n @for (s of slices(); track s.label) {\r\n <path\r\n class=\"slice\"\r\n [attr.d]=\"s.pathD\"\r\n fill=\"none\"\r\n [attr.stroke]=\"s.color\"\r\n [attr.stroke-width]=\"thickness\"\r\n stroke-linecap=\"butt\"\r\n [iusPopoverContent]=\"getPopoverText(s)\"\r\n (click)=\"onSliceClick(s)\"\r\n tabindex=\"0\"\r\n >\r\n </path>\r\n }\r\n\r\n <!-- centro -->\r\n <g>\r\n <text\r\n [attr.x]=\"size/2\"\r\n [attr.y]=\"size/2\"\r\n text-anchor=\"middle\"\r\n alignment-baseline=\"middle\"\r\n class=\"center-text\">\r\n {{ centerLabel }}\r\n </text>\r\n </g>\r\n </svg>\r\n\r\n @if (showLegend && slices().length) {\r\n <div class=\"legend scrollable-small\" [class.bottom]=\"legendPosition === 'bottom'\">\r\n @for (s of slices(); track s.label) {\r\n <div class=\"legend-item\">\r\n <span class=\"dot\" [style.background]=\"s.color\"></span>\r\n <span class=\"label caption-sm\" [iusPopoverContent]=\"s.value.toString() + ' - ' + s.label\">{{s.value}} - {{s.label}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [".h1{font-family:Roboto,sans-serif;font-size:2.375rem;font-weight:500;line-height:46px}.h2{font-family:Roboto,sans-serif;font-size:1.875rem;font-weight:700;line-height:38px}.h3{font-family:Roboto,sans-serif;font-size:1.5rem;font-weight:500;line-height:32px}.h4{font-family:Roboto,sans-serif;font-size:1.25rem;font-weight:700;line-height:26px}.h5{font-family:Roboto,sans-serif;font-size:1.125rem;font-weight:500;line-height:24px;letter-spacing:.18px}.label-large{font-family:Roboto,sans-serif;font-size:1rem;font-weight:500;line-height:22px}.body-large{font-family:Rubik,sans-serif;font-size:1rem;font-weight:400;line-height:22px}.label-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:500;line-height:20px;letter-spacing:.28px}.body-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:400;line-height:20px;font-style:italic;letter-spacing:.28px}.body-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;letter-spacing:.28px}.body-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;font-style:italic;letter-spacing:.28px}.caption-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;letter-spacing:.28px}.caption-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;font-style:italic;letter-spacing:.28px}:host{display:block;max-width:100%;height:100%}.donut-wrapper{display:grid;grid-template-columns:auto 1fr;column-gap:16px;height:100%;align-items:stretch}.donut-wrapper.bottom{grid-template-columns:1fr;grid-template-rows:auto 1fr;row-gap:12px;align-items:stretch}.donut{display:block;max-width:100%;height:auto;align-self:center}.track{fill:none;stroke:#eef2f6}.slice{pointer-events:stroke;cursor:pointer;transition:opacity .15s ease,transform .15s ease}.slice:focus{outline:none;filter:drop-shadow(0 0 2px rgba(0,0,0,.2))}.slice:hover{opacity:.9}.center-text{fill:#595959;font-family:Rubik,sans-serif;font-size:1.5rem;font-weight:600}.legend{display:flex;flex-direction:column;gap:8px;padding-right:4px;min-width:0;overflow-x:hidden;overflow-y:auto;align-self:stretch;max-height:100%;min-height:0}.legend.bottom{flex-direction:row;flex-wrap:wrap;overflow-y:auto}.legend .legend-item{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap}.legend .dot{width:8px;height:8px;border-radius:8px;flex:0 0 8px}.legend .label{color:#595959;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scrollable-small::-webkit-scrollbar{-webkit-appearance:none}.scrollable-small::-webkit-scrollbar:vertical{width:4px;height:32px;padding-top:2px;padding-bottom:2px}.scrollable-small::-webkit-scrollbar:horizontal{height:5px;padding-top:2px;padding-bottom:2px}.scrollable-small::-webkit-scrollbar-thumb{background-color:#08a6db;border-radius:4px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: PopoverDirective, selector: "[iusPopover], [iusPopoverTitle], [iusPopoverContent]", inputs: ["iusPopover", "iusPopoverTitle", "iusPopoverContent", "iusPopoverPosition", "iusPopoverOpenDelay", "iusPopoverCloseDelay"] }] }); }
|
|
113
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ChartsDonutComponent, isStandalone: true, selector: "ius-charts-donut", inputs: { data: "data", size: "size", thickness: "thickness", gapDegrees: "gapDegrees", showLegend: "showLegend", legendPosition: "legendPosition", centerText: "centerText", sort: "sort" }, outputs: { sliceClick: "sliceClick" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"donut-wrapper\" [class.bottom]=\"legendPosition === 'bottom'\">\r\n <svg\r\n class=\"donut\"\r\n role=\"img\"\r\n [attr.aria-label]=\"ariaLabel\"\r\n [attr.width]=\"size\"\r\n [attr.height]=\"size\"\r\n [attr.viewBox]=\"viewBox()\">\r\n <!-- pista -->\r\n <circle\r\n class=\"track\"\r\n [attr.cx]=\"size/2\"\r\n [attr.cy]=\"size/2\"\r\n [attr.r]=\"radius()\"\r\n [attr.stroke-width]=\"thickness\"\r\n ></circle>\r\n\r\n <!-- slices como PATH (cada uno es su arco real) -->\r\n @for (s of slices(); track s.label) {\r\n <path\r\n class=\"slice\"\r\n [attr.d]=\"s.pathD\"\r\n fill=\"none\"\r\n [attr.stroke]=\"s.color\"\r\n [attr.stroke-width]=\"thickness\"\r\n stroke-linecap=\"butt\"\r\n [iusPopoverContent]=\"getPopoverText(s)\"\r\n (click)=\"onSliceClick(s)\"\r\n tabindex=\"0\"\r\n >\r\n </path>\r\n }\r\n\r\n <!-- centro -->\r\n <g>\r\n <text\r\n [attr.x]=\"size/2\"\r\n [attr.y]=\"size/2\"\r\n text-anchor=\"middle\"\r\n alignment-baseline=\"middle\"\r\n class=\"center-text\">\r\n {{ centerLabel }}\r\n </text>\r\n </g>\r\n </svg>\r\n\r\n @if (showLegend && slices().length) {\r\n <div class=\"legend scrollable-small\" [class.bottom]=\"legendPosition === 'bottom'\">\r\n @for (s of slices(); track s.label) {\r\n <div class=\"legend-item\">\r\n <span class=\"dot\" [style.background]=\"s.color\"></span>\r\n <span class=\"label caption-sm\" [iusPopoverContent]=\"s.value.toString() + ' - ' + s.label\">{{s.value}} - {{s.label}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [".h1{font-family:Roboto,sans-serif;font-size:2.375rem;font-weight:500;line-height:46px}.h2{font-family:Roboto,sans-serif;font-size:1.875rem;font-weight:700;line-height:38px}.h3{font-family:Roboto,sans-serif;font-size:1.5rem;font-weight:500;line-height:32px}.h4{font-family:Roboto,sans-serif;font-size:1.25rem;font-weight:700;line-height:26px}.h5{font-family:Roboto,sans-serif;font-size:1.125rem;font-weight:500;line-height:24px;letter-spacing:.18px}.label-large{font-family:Roboto,sans-serif;font-size:1rem;font-weight:500;line-height:22px}.body-large{font-family:Rubik,sans-serif;font-size:1rem;font-weight:400;line-height:22px}.label-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:500;line-height:20px;letter-spacing:.28px}.body-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:400;line-height:20px;font-style:italic;letter-spacing:.28px}.body-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;letter-spacing:.28px}.body-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;font-style:italic;letter-spacing:.28px}.caption-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;letter-spacing:.28px}.caption-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;font-style:italic;letter-spacing:.28px}:host{display:block;max-width:100%;height:100%}.donut-wrapper{display:grid;grid-template-columns:auto 1fr;column-gap:16px;height:100%;align-items:stretch}.donut-wrapper.bottom{grid-template-columns:1fr;grid-template-rows:auto 1fr;row-gap:12px;align-items:stretch}.donut{display:block;max-width:100%;height:auto;align-self:center}.track{fill:none;stroke:#eef2f6}.slice{pointer-events:stroke;cursor:pointer;transition:opacity .15s ease,transform .15s ease}.slice:focus{outline:none;filter:drop-shadow(0 0 2px rgba(0,0,0,.2))}.slice:hover{opacity:.9}.center-text{fill:#595959;font-family:Rubik,sans-serif;font-size:1.5rem;font-weight:600}.legend{display:flex;justify-content:center;flex-direction:column;gap:8px;padding-right:4px;min-width:0;overflow-x:hidden;overflow-y:auto;align-self:stretch;max-height:100%;min-height:0}.legend.bottom{flex-direction:row;flex-wrap:wrap;overflow-y:auto}.legend .legend-item{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap}.legend .dot{width:8px;height:8px;border-radius:8px;flex:0 0 8px}.legend .label{color:#595959;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scrollable-small::-webkit-scrollbar{-webkit-appearance:none}.scrollable-small::-webkit-scrollbar:vertical{width:4px;height:32px;padding-top:2px;padding-bottom:2px}.scrollable-small::-webkit-scrollbar:horizontal{height:5px;padding-top:2px;padding-bottom:2px}.scrollable-small::-webkit-scrollbar-thumb{background-color:#08a6db;border-radius:4px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: PopoverDirective, selector: "[iusPopover], [iusPopoverTitle], [iusPopoverContent]", inputs: ["iusPopover", "iusPopoverTitle", "iusPopoverContent", "iusPopoverPosition", "iusPopoverOpenDelay", "iusPopoverCloseDelay"] }] }); }
|
|
114
114
|
}
|
|
115
115
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChartsDonutComponent, decorators: [{
|
|
116
116
|
type: Component,
|
|
117
|
-
args: [{ selector: 'ius-charts-donut', standalone: true, imports: [CommonModule, PopoverDirective], template: "<div class=\"donut-wrapper\" [class.bottom]=\"legendPosition === 'bottom'\">\r\n <svg\r\n class=\"donut\"\r\n role=\"img\"\r\n [attr.aria-label]=\"ariaLabel\"\r\n [attr.width]=\"size\"\r\n [attr.height]=\"size\"\r\n [attr.viewBox]=\"viewBox()\">\r\n <!-- pista -->\r\n <circle\r\n class=\"track\"\r\n [attr.cx]=\"size/2\"\r\n [attr.cy]=\"size/2\"\r\n [attr.r]=\"radius()\"\r\n [attr.stroke-width]=\"thickness\"\r\n ></circle>\r\n\r\n <!-- slices como PATH (cada uno es su arco real) -->\r\n @for (s of slices(); track s.label) {\r\n <path\r\n class=\"slice\"\r\n [attr.d]=\"s.pathD\"\r\n fill=\"none\"\r\n [attr.stroke]=\"s.color\"\r\n [attr.stroke-width]=\"thickness\"\r\n stroke-linecap=\"butt\"\r\n [iusPopoverContent]=\"getPopoverText(s)\"\r\n (click)=\"onSliceClick(s)\"\r\n tabindex=\"0\"\r\n >\r\n </path>\r\n }\r\n\r\n <!-- centro -->\r\n <g>\r\n <text\r\n [attr.x]=\"size/2\"\r\n [attr.y]=\"size/2\"\r\n text-anchor=\"middle\"\r\n alignment-baseline=\"middle\"\r\n class=\"center-text\">\r\n {{ centerLabel }}\r\n </text>\r\n </g>\r\n </svg>\r\n\r\n @if (showLegend && slices().length) {\r\n <div class=\"legend scrollable-small\" [class.bottom]=\"legendPosition === 'bottom'\">\r\n @for (s of slices(); track s.label) {\r\n <div class=\"legend-item\">\r\n <span class=\"dot\" [style.background]=\"s.color\"></span>\r\n <span class=\"label caption-sm\" [iusPopoverContent]=\"s.value.toString() + ' - ' + s.label\">{{s.value}} - {{s.label}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [".h1{font-family:Roboto,sans-serif;font-size:2.375rem;font-weight:500;line-height:46px}.h2{font-family:Roboto,sans-serif;font-size:1.875rem;font-weight:700;line-height:38px}.h3{font-family:Roboto,sans-serif;font-size:1.5rem;font-weight:500;line-height:32px}.h4{font-family:Roboto,sans-serif;font-size:1.25rem;font-weight:700;line-height:26px}.h5{font-family:Roboto,sans-serif;font-size:1.125rem;font-weight:500;line-height:24px;letter-spacing:.18px}.label-large{font-family:Roboto,sans-serif;font-size:1rem;font-weight:500;line-height:22px}.body-large{font-family:Rubik,sans-serif;font-size:1rem;font-weight:400;line-height:22px}.label-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:500;line-height:20px;letter-spacing:.28px}.body-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:400;line-height:20px;font-style:italic;letter-spacing:.28px}.body-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;letter-spacing:.28px}.body-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;font-style:italic;letter-spacing:.28px}.caption-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;letter-spacing:.28px}.caption-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;font-style:italic;letter-spacing:.28px}:host{display:block;max-width:100%;height:100%}.donut-wrapper{display:grid;grid-template-columns:auto 1fr;column-gap:16px;height:100%;align-items:stretch}.donut-wrapper.bottom{grid-template-columns:1fr;grid-template-rows:auto 1fr;row-gap:12px;align-items:stretch}.donut{display:block;max-width:100%;height:auto;align-self:center}.track{fill:none;stroke:#eef2f6}.slice{pointer-events:stroke;cursor:pointer;transition:opacity .15s ease,transform .15s ease}.slice:focus{outline:none;filter:drop-shadow(0 0 2px rgba(0,0,0,.2))}.slice:hover{opacity:.9}.center-text{fill:#595959;font-family:Rubik,sans-serif;font-size:1.5rem;font-weight:600}.legend{display:flex;flex-direction:column;gap:8px;padding-right:4px;min-width:0;overflow-x:hidden;overflow-y:auto;align-self:stretch;max-height:100%;min-height:0}.legend.bottom{flex-direction:row;flex-wrap:wrap;overflow-y:auto}.legend .legend-item{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap}.legend .dot{width:8px;height:8px;border-radius:8px;flex:0 0 8px}.legend .label{color:#595959;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scrollable-small::-webkit-scrollbar{-webkit-appearance:none}.scrollable-small::-webkit-scrollbar:vertical{width:4px;height:32px;padding-top:2px;padding-bottom:2px}.scrollable-small::-webkit-scrollbar:horizontal{height:5px;padding-top:2px;padding-bottom:2px}.scrollable-small::-webkit-scrollbar-thumb{background-color:#08a6db;border-radius:4px}\n"] }]
|
|
117
|
+
args: [{ selector: 'ius-charts-donut', standalone: true, imports: [CommonModule, PopoverDirective], template: "<div class=\"donut-wrapper\" [class.bottom]=\"legendPosition === 'bottom'\">\r\n <svg\r\n class=\"donut\"\r\n role=\"img\"\r\n [attr.aria-label]=\"ariaLabel\"\r\n [attr.width]=\"size\"\r\n [attr.height]=\"size\"\r\n [attr.viewBox]=\"viewBox()\">\r\n <!-- pista -->\r\n <circle\r\n class=\"track\"\r\n [attr.cx]=\"size/2\"\r\n [attr.cy]=\"size/2\"\r\n [attr.r]=\"radius()\"\r\n [attr.stroke-width]=\"thickness\"\r\n ></circle>\r\n\r\n <!-- slices como PATH (cada uno es su arco real) -->\r\n @for (s of slices(); track s.label) {\r\n <path\r\n class=\"slice\"\r\n [attr.d]=\"s.pathD\"\r\n fill=\"none\"\r\n [attr.stroke]=\"s.color\"\r\n [attr.stroke-width]=\"thickness\"\r\n stroke-linecap=\"butt\"\r\n [iusPopoverContent]=\"getPopoverText(s)\"\r\n (click)=\"onSliceClick(s)\"\r\n tabindex=\"0\"\r\n >\r\n </path>\r\n }\r\n\r\n <!-- centro -->\r\n <g>\r\n <text\r\n [attr.x]=\"size/2\"\r\n [attr.y]=\"size/2\"\r\n text-anchor=\"middle\"\r\n alignment-baseline=\"middle\"\r\n class=\"center-text\">\r\n {{ centerLabel }}\r\n </text>\r\n </g>\r\n </svg>\r\n\r\n @if (showLegend && slices().length) {\r\n <div class=\"legend scrollable-small\" [class.bottom]=\"legendPosition === 'bottom'\">\r\n @for (s of slices(); track s.label) {\r\n <div class=\"legend-item\">\r\n <span class=\"dot\" [style.background]=\"s.color\"></span>\r\n <span class=\"label caption-sm\" [iusPopoverContent]=\"s.value.toString() + ' - ' + s.label\">{{s.value}} - {{s.label}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [".h1{font-family:Roboto,sans-serif;font-size:2.375rem;font-weight:500;line-height:46px}.h2{font-family:Roboto,sans-serif;font-size:1.875rem;font-weight:700;line-height:38px}.h3{font-family:Roboto,sans-serif;font-size:1.5rem;font-weight:500;line-height:32px}.h4{font-family:Roboto,sans-serif;font-size:1.25rem;font-weight:700;line-height:26px}.h5{font-family:Roboto,sans-serif;font-size:1.125rem;font-weight:500;line-height:24px;letter-spacing:.18px}.label-large{font-family:Roboto,sans-serif;font-size:1rem;font-weight:500;line-height:22px}.body-large{font-family:Rubik,sans-serif;font-size:1rem;font-weight:400;line-height:22px}.label-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:500;line-height:20px;letter-spacing:.28px}.body-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:400;line-height:20px;font-style:italic;letter-spacing:.28px}.body-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;letter-spacing:.28px}.body-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;font-style:italic;letter-spacing:.28px}.caption-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;letter-spacing:.28px}.caption-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;font-style:italic;letter-spacing:.28px}:host{display:block;max-width:100%;height:100%}.donut-wrapper{display:grid;grid-template-columns:auto 1fr;column-gap:16px;height:100%;align-items:stretch}.donut-wrapper.bottom{grid-template-columns:1fr;grid-template-rows:auto 1fr;row-gap:12px;align-items:stretch}.donut{display:block;max-width:100%;height:auto;align-self:center}.track{fill:none;stroke:#eef2f6}.slice{pointer-events:stroke;cursor:pointer;transition:opacity .15s ease,transform .15s ease}.slice:focus{outline:none;filter:drop-shadow(0 0 2px rgba(0,0,0,.2))}.slice:hover{opacity:.9}.center-text{fill:#595959;font-family:Rubik,sans-serif;font-size:1.5rem;font-weight:600}.legend{display:flex;justify-content:center;flex-direction:column;gap:8px;padding-right:4px;min-width:0;overflow-x:hidden;overflow-y:auto;align-self:stretch;max-height:100%;min-height:0}.legend.bottom{flex-direction:row;flex-wrap:wrap;overflow-y:auto}.legend .legend-item{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap}.legend .dot{width:8px;height:8px;border-radius:8px;flex:0 0 8px}.legend .label{color:#595959;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scrollable-small::-webkit-scrollbar{-webkit-appearance:none}.scrollable-small::-webkit-scrollbar:vertical{width:4px;height:32px;padding-top:2px;padding-bottom:2px}.scrollable-small::-webkit-scrollbar:horizontal{height:5px;padding-top:2px;padding-bottom:2px}.scrollable-small::-webkit-scrollbar-thumb{background-color:#08a6db;border-radius:4px}\n"] }]
|
|
118
118
|
}], propDecorators: { data: [{
|
|
119
119
|
type: Input
|
|
120
120
|
}], size: [{
|
|
@@ -134,4 +134,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
134
134
|
}], sliceClick: [{
|
|
135
135
|
type: Output
|
|
136
136
|
}] } });
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnRzLWRvbnV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2l1cy1kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL2NoYXJ0cy1kb251dC9jaGFydHMtZG9udXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaXVzLWRlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvY2hhcnRzLWRvbnV0L2NoYXJ0cy1kb251dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDcEcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOztBQWtCbkUsTUFBTSxPQUFPLG9CQUFvQjtJQVBqQztRQVFXLFNBQUksR0FBZ0IsRUFBRSxDQUFDO1FBQ3ZCLFNBQUksR0FBRyxHQUFHLENBQUMsQ0FBaUIsdUJBQXVCO1FBQ25ELGNBQVMsR0FBRyxFQUFFLENBQUMsQ0FBYSxvQkFBb0I7UUFDaEQsZUFBVSxHQUFHLENBQUMsQ0FBQyxDQUFhLHNDQUFzQztRQUNsRSxlQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLG1CQUFjLEdBQXVCLE9BQU8sQ0FBQztRQUU3QyxTQUFJLEdBQUcsS0FBSyxDQUFDLENBQWUsb0NBQW9DO1FBRS9ELGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBYSxDQUFDO1FBRXJELDBCQUEwQjtRQUNsQixZQUFPLEdBQUcsTUFBTSxDQUFrQixFQUFFLENBQUMsQ0FBQztRQUN0QyxXQUFNLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25CLFVBQUssR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFD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a0JBUGhDLFNBQVM7K0JBQ0Usa0JBQWtCLGNBQ2hCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQzs4QkFLaEMsSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUVJLFVBQVU7c0JBQW5CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIHNpZ25hbCwgT25DaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFBvcG92ZXJEaXJlY3RpdmUgfSBmcm9tICcuLi9kaXJlY3RpdmVzL3BvcG92ZXIuZGlyZWN0aXZlJztcclxuXHJcbmV4cG9ydCB0eXBlIERvbnV0RGF0YSA9IHsgbGFiZWw6IHN0cmluZzsgdmFsdWU6IG51bWJlcjsgY29sb3I/OiBzdHJpbmcgfTtcclxuXHJcbnR5cGUgU2xpY2VDb21wdXRlZCA9IERvbnV0RGF0YSAmIHtcclxuICBwZXJjZW50YWdlOiBudW1iZXI7XHJcbiAgcGF0aEQ6IHN0cmluZzsgICAvLyBwYXRoIGRlbCBhcmNvXHJcbiAgbWlkWDogbnVtYmVyOyAgICAvLyBwdW50byBtZWRpbyBkZWwgYXJjbyAocG9yIHNpIHNlIHF1aWVyZSBhbmNsYXIgYWjDrSlcclxuICBtaWRZOiBudW1iZXI7XHJcbn07XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2l1cy1jaGFydHMtZG9udXQnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUG9wb3ZlckRpcmVjdGl2ZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NoYXJ0cy1kb251dC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY2hhcnRzLWRvbnV0LmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENoYXJ0c0RvbnV0Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoKSBkYXRhOiBEb251dERhdGFbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIHNpemUgPSAxODA7ICAgICAgICAgICAgICAgICAvLyB3aWR0aC9oZWlnaHQgZGVsIFNWR1xyXG4gIEBJbnB1dCgpIHRoaWNrbmVzcyA9IDE4OyAgICAgICAgICAgICAvLyBncm9zb3IgZGVsIGFuaWxsb1xyXG4gIEBJbnB1dCgpIGdhcERlZ3JlZXMgPSAwOyAgICAgICAgICAgICAvLyBzZXBhcmFjacOzbiBlbnRyZSBzZWdtZW50b3MgKGdyYWRvcylcclxuICBASW5wdXQoKSBzaG93TGVnZW5kID0gdHJ1ZTtcclxuICBASW5wdXQoKSBsZWdlbmRQb3NpdGlvbjogJ3JpZ2h0JyB8ICdib3R0b20nID0gJ3JpZ2h0JztcclxuICBASW5wdXQoKSBjZW50ZXJUZXh0Pzogc3RyaW5nIHwgbnVtYmVyOyAvLyBzb2JyZXNjcmliZSBlbCB0ZXh0byBjZW50cmFsXHJcbiAgQElucHV0KCkgc29ydCA9IGZhbHNlOyAgICAgICAgICAgICAgIC8vIG9yZGVuYSBzZWdtZW50b3MgcG9yIHZhbG9yIChkZXNjKVxyXG5cclxuICBAT3V0cHV0KCkgc2xpY2VDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8RG9udXREYXRhPigpO1xyXG5cclxuICAvLyBzZcOxYWxlcyBwYXJhIHJlY2FsY3VsYXJcclxuICBwcml2YXRlIF9zbGljZXMgPSBzaWduYWw8U2xpY2VDb21wdXRlZFtdPihbXSk7XHJcbiAgcHJpdmF0ZSBfdG90YWwgPSBzaWduYWwoMCk7XHJcbiAgcHJpdmF0ZSBfY2lyYyA9IHNpZ25hbCgwKTtcclxuICBwcml2YXRlIF9yYWRpdXMgPSBzaWduYWwoMCk7XHJcblxyXG4gIHJlYWRvbmx5IHNsaWNlcyA9IGNvbXB1dGVkKCgpID0+IHRoaXMuX3NsaWNlcygpKTtcclxuICByZWFkb25seSB0b3RhbCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuX3RvdGFsKCkpO1xyXG4gIHJlYWRvbmx5IHJhZGl1cyA9IGNvbXB1dGVkKCgpID0+IHRoaXMuX3JhZGl1cygpKTtcclxuICByZWFkb25seSBjaXJjdW1mZXJlbmNlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5fY2lyYygpKTtcclxuICByZWFkb25seSB2aWV3Qm94ID0gY29tcHV0ZWQoKCkgPT4gYDAgMCAke3RoaXMuc2l6ZX0gJHt0aGlzLnNpemV9YCk7XHJcblxyXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xyXG4gICAgY29uc3QgY2xlYW5lZCA9ICh0aGlzLmRhdGEgPz8gW10pLmZpbHRlcihkID0+IE51bWJlcihkPy52YWx1ZSkgPiAwKTtcclxuICAgIGNvbnN0IHRvdGFsID0gY2xlYW5lZC5yZWR1Y2UoKGEsIGIpID0+IGEgKyBiLnZhbHVlLCAwKTtcclxuXHJcbiAgICBjb25zdCByYWRpdXMgPSB0aGlzLnNpemUgLyAyIC0gdGhpcy50aGlja25lc3MgLyAyO1xyXG4gICAgY29uc3QgY2lyY3VtZmVyZW5jZSA9IDIgKiBNYXRoLlBJICogcmFkaXVzO1xyXG4gICAgdGhpcy5fcmFkaXVzLnNldChyYWRpdXMpO1xyXG4gICAgdGhpcy5fY2lyYy5zZXQoY2lyY3VtZmVyZW5jZSk7XHJcblxyXG4gICAgLy8gc2luIGRhdG9zIHbDoWxpZG9zXHJcbiAgICBpZiAodG90YWwgPD0gMCkge1xyXG4gICAgICB0aGlzLl9zbGljZXMuc2V0KFtdKTtcclxuICAgICAgdGhpcy5fdG90YWwuc2V0KDApO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgLy8gcGFsZXRhIChyb3RhIHNpIG5vIGFsY2FuemEpXHJcbiAgICBjb25zdCBwYWxldHRlID0gW1xyXG4gICAgICAnIzIxNjdGRicsIC8vIEluZm8tNTAwXHJcbiAgICAgICcjMEEyODkzJywgLy8gSW5mby04MDBcclxuICAgICAgJyM0MENBRTknLCAvLyBQcmltYXJ5LTQwMFxyXG4gICAgICAnIzU4OTJGRicsIC8vIEluZm8tNDAwXHJcbiAgICAgICcjMDhBNkRCJywgLy8gUHJpbWFyeS01MDBcclxuICAgICAgJyNDNERGRkYnLCAvLyBJbmZvLTIwMFxyXG4gICAgXTtcclxuICAgIGxldCBwSW5kZXggPSAwO1xyXG4gICAgY29uc3QgYmFzZSA9IGNsZWFuZWQubWFwKGQgPT4gKHtcclxuICAgICAgLi4uZCxcclxuICAgICAgY29sb3I6IGQuY29sb3IgPz8gcGFsZXR0ZVtwSW5kZXgrKyAlIHBhbGV0dGUubGVuZ3RoXVxyXG4gICAgfSkpO1xyXG5cclxuICAgIC8vIG9yZGVuIG9wY2lvbmFsXHJcbiAgICBjb25zdCBkYXRhT3JkZXJlZCA9IHRoaXMuc29ydCA/IFsuLi5iYXNlXS5zb3J0KChhLCBiKSA9PiBiLnZhbHVlIC0gYS52YWx1ZSkgOiBiYXNlO1xyXG5cclxuICAgIC8vIGdlb21ldHLDrWEgYW5ndWxhclxyXG4gICAgY29uc3QgY3ggPSB0aGlzLnNpemUgLyAyO1xyXG4gICAgY29uc3QgY3kgPSB0aGlzLnNpemUgLyAyO1xyXG4gICAgY29uc3QgbiA9IGRhdGFPcmRlcmVkLmxlbmd0aDtcclxuICAgIGNvbnN0IGdhcCA9IE1hdGgubWF4KHRoaXMuZ2FwRGVncmVlcywgMCk7XHJcbiAgICBjb25zdCB1c2VmdWxEZWcgPSBNYXRoLm1heCgzNjAgLSBuICogZ2FwLCAwKTsgLy8gZXZpdGEgbmVnYXRpdm9zXHJcblxyXG4gICAgbGV0IGN1cnJlbnQgPSAtOTA7IC8vIGFycmFuY2EgYSBsYXMgMTIgZW4gcHVudG9cclxuICAgIGNvbnN0IHNsaWNlczogU2xpY2VDb21wdXRlZFtdID0gZGF0YU9yZGVyZWQubWFwKGQgPT4ge1xyXG4gICAgICBjb25zdCBmcmFjdGlvbiA9IGQudmFsdWUgLyB0b3RhbDtcclxuICAgICAgY29uc3Qgc3dlZXAgPSB1c2VmdWxEZWcgKiBmcmFjdGlvbjtcclxuXHJcbiAgICAgIC8vIGRlamFtb3MgbWVkaW8gZ2FwIGFudGVzIHkgZGVzcHXDqXMgZGVsIGFyY29cclxuICAgICAgY29uc3Qgc3RhcnREZWcgPSBjdXJyZW50ICsgZ2FwIC8gMjtcclxuICAgICAgY29uc3QgZW5kRGVnID0gc3RhcnREZWcgKyBzd2VlcDtcclxuXHJcbiAgICAgIGNvbnN0IHBhdGhEID0gdGhpcy5hcmNQYXRoKGN4LCBjeSwgcmFkaXVzLCBzdGFydERlZywgZW5kRGVnKTtcclxuICAgICAgY29uc3QgbWlkRGVnID0gc3RhcnREZWcgKyBzd2VlcCAvIDI7XHJcbiAgICAgIGNvbnN0IG1pZCA9IHRoaXMucG9sYXJUb0NhcnRlc2lhbihjeCwgY3ksIHJhZGl1cywgbWlkRGVnKTtcclxuXHJcbiAgICAgIC8vIGF2YW56YSBlbCBjdXJzb3IgYW5ndWxhciBwYXJhIGVsIHNpZ3VpZW50ZSBzbGljZVxyXG4gICAgICBjdXJyZW50ID0gZW5kRGVnICsgZ2FwIC8gMjtcclxuXHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgLi4uZCxcclxuICAgICAgICBwZXJjZW50YWdlOiArKGZyYWN0aW9uICogMTAwKS50b0ZpeGVkKDIpLFxyXG4gICAgICAgIHBhdGhELFxyXG4gICAgICAgIG1pZFg6IG1pZC54LFxyXG4gICAgICAgIG1pZFk6IG1pZC55XHJcbiAgICAgIH07XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLl9zbGljZXMuc2V0KHNsaWNlcyk7XHJcbiAgICB0aGlzLl90b3RhbC5zZXQodG90YWwpO1xyXG4gIH1cclxuXHJcbiAgLy8gPT09IGhlbHBlcnMgZGUgZ2VvbWV0csOtYSA9PT1cclxuICBwcml2YXRlIHBvbGFyVG9DYXJ0ZXNpYW4oY3g6IG51bWJlciwgY3k6IG51bWJlciwgcjogbnVtYmVyLCBkZWc6IG51bWJlcikge1xyXG4gICAgY29uc3QgcmFkID0gKGRlZyAqIE1hdGguUEkpIC8gMTgwO1xyXG4gICAgcmV0dXJuIHsgeDogY3ggKyByICogTWF0aC5jb3MocmFkKSwgeTogY3kgKyByICogTWF0aC5zaW4ocmFkKSB9O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhcmNQYXRoKGN4OiBudW1iZXIsIGN5OiBudW1iZXIsIHI6IG51bWJlciwgc3RhcnREZWc6IG51bWJlciwgZW5kRGVnOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgY29uc3Qgc3RhcnQgPSB0aGlzLnBvbGFyVG9DYXJ0ZXNpYW4oY3gsIGN5LCByLCBzdGFydERlZyk7XHJcbiAgICBjb25zdCBlbmQgPSB0aGlzLnBvbGFyVG9DYXJ0ZXNpYW4oY3gsIGN5LCByLCBlbmREZWcpO1xyXG4gICAgY29uc3Qgc3dlZXAgPSBlbmREZWcgLSBzdGFydERlZztcclxuICAgIGNvbnN0IGxhcmdlQXJjRmxhZyA9IHN3ZWVwID4gMTgwID8gMSA6IDA7XHJcbiAgICAvLyBhcmNvIGhvcmFyaW8gKHN3ZWVwLWZsYWc9MSlcclxuICAgIHJldHVybiBgTSAke3N0YXJ0Lnh9ICR7c3RhcnQueX0gQSAke3J9ICR7cn0gMCAke2xhcmdlQXJjRmxhZ30gMSAke2VuZC54fSAke2VuZC55fWA7XHJcbiAgfVxyXG5cclxuICAvLyBldmVudG9zIC8gdXRpbGlkYWRlc1xyXG4gIG9uU2xpY2VDbGljayhzOiBTbGljZUNvbXB1dGVkKSB7XHJcbiAgICB0aGlzLnNsaWNlQ2xpY2suZW1pdCh7IGxhYmVsOiBzLmxhYmVsLCB2YWx1ZTogcy52YWx1ZSwgY29sb3I6IHMuY29sb3IgfSk7XHJcbiAgfVxyXG5cclxuICBnZXQgY2VudGVyTGFiZWwoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHt0aGlzLmNlbnRlclRleHQgPz8gdGhpcy50b3RhbCgpfWA7XHJcbiAgfVxyXG5cclxuICBnZXRQb3BvdmVyVGV4dChzOiB7IGxhYmVsOiBzdHJpbmc7IHZhbHVlOiBudW1iZXI7IHBlcmNlbnRhZ2U6IG51bWJlciB9KTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHtzLmxhYmVsfTogJHtzLnZhbHVlfSAoJHtzLnBlcmNlbnRhZ2V9JSlgO1xyXG4gIH1cclxuXHJcbiAgLy8gYWNjZXNpYmlsaWRhZDogZGVzY3JpYmUgbGEgZG9uYVxyXG4gIGdldCBhcmlhTGFiZWwoKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHBhcnRzID0gdGhpcy5zbGljZXMoKS5tYXAocyA9PiBgJHtzLmxhYmVsfTogJHtzLnZhbHVlfSAoJHtzLnBlcmNlbnRhZ2V9JSlgKTtcclxuICAgIHJldHVybiBgR3LDoWZpY2EgZGUgZG9uYS4gVG90YWwgJHt0aGlzLnRvdGFsKCl9LiAke3BhcnRzLmpvaW4oJy4gJyl9YDtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImRvbnV0LXdyYXBwZXJcIiBbY2xhc3MuYm90dG9tXT1cImxlZ2VuZFBvc2l0aW9uID09PSAnYm90dG9tJ1wiPlxyXG4gICAgPHN2Z1xyXG4gICAgICAgIGNsYXNzPVwiZG9udXRcIlxyXG4gICAgICAgIHJvbGU9XCJpbWdcIlxyXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsXCJcclxuICAgICAgICBbYXR0ci53aWR0aF09XCJzaXplXCJcclxuICAgICAgICBbYXR0ci5oZWlnaHRdPVwic2l6ZVwiXHJcbiAgICAgICAgW2F0dHIudmlld0JveF09XCJ2aWV3Qm94KClcIj5cclxuICAgICAgICA8IS0tIHBpc3RhIC0tPlxyXG4gICAgICAgIDxjaXJjbGVcclxuICAgICAgICBjbGFzcz1cInRyYWNrXCJcclxuICAgICAgICBbYXR0ci5jeF09XCJzaXplLzJcIlxyXG4gICAgICAgIFthdHRyLmN5XT1cInNpemUvMlwiXHJcbiAgICAgICAgW2F0dHIucl09XCJyYWRpdXMoKVwiXHJcbiAgICAgICAgW2F0dHIuc3Ryb2tlLXdpZHRoXT1cInRoaWNrbmVzc1wiXHJcbiAgICAgICAgPjwvY2lyY2xlPlxyXG5cclxuICAgICAgICA8IS0tIHNsaWNlcyBjb21vIFBBVEggKGNhZGEgdW5vIGVzIHN1IGFyY28gcmVhbCkgLS0+XHJcbiAgICAgICAgQGZvciAocyBvZiBzbGljZXMoKTsgdHJhY2sgcy5sYWJlbCkge1xyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgIGNsYXNzPVwic2xpY2VcIlxyXG4gICAgICAgICAgICBbYXR0ci5kXT1cInMucGF0aERcIlxyXG4gICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzLmNvbG9yXCJcclxuICAgICAgICAgICAgW2F0dHIuc3Ryb2tlLXdpZHRoXT1cInRoaWNrbmVzc1wiXHJcbiAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwiYnV0dFwiXHJcbiAgICAgICAgICAgIFtpdXNQb3BvdmVyQ29udGVudF09XCJnZXRQb3BvdmVyVGV4dChzKVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvblNsaWNlQ2xpY2socylcIlxyXG4gICAgICAgICAgICB0YWJpbmRleD1cIjBcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8L3BhdGg+XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA8IS0tIGNlbnRybyAtLT5cclxuICAgICAgICA8Zz5cclxuICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgIFthdHRyLnhdPVwic2l6ZS8yXCJcclxuICAgICAgICAgICAgICAgIFthdHRyLnldPVwic2l6ZS8yXCJcclxuICAgICAgICAgICAgICAgIHRleHQtYW5jaG9yPVwibWlkZGxlXCJcclxuICAgICAgICAgICAgICAgIGFsaWdubWVudC1iYXNlbGluZT1cIm1pZGRsZVwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImNlbnRlci10ZXh0XCI+XHJcbiAgICAgICAgICAgICAgICB7eyBjZW50ZXJMYWJlbCB9fVxyXG4gICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgPC9zdmc+XHJcblxyXG4gICAgQGlmIChzaG93TGVnZW5kICYmIHNsaWNlcygpLmxlbmd0aCkge1xyXG4gICAgPGRpdiBjbGFzcz1cImxlZ2VuZCBzY3JvbGxhYmxlLXNtYWxsXCIgW2NsYXNzLmJvdHRvbV09XCJsZWdlbmRQb3NpdGlvbiA9PT0gJ2JvdHRvbSdcIj5cclxuICAgICAgQGZvciAocyBvZiBzbGljZXMoKTsgdHJhY2sgcy5sYWJlbCkge1xyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJsZWdlbmQtaXRlbVwiPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJkb3RcIiBbc3R5bGUuYmFja2dyb3VuZF09XCJzLmNvbG9yXCI+PC9zcGFuPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJsYWJlbCBjYXB0aW9uLXNtXCIgW2l1c1BvcG92ZXJDb250ZW50XT1cInMudmFsdWUudG9TdHJpbmcoKSArICcgLSAnICsgcy5sYWJlbFwiPnt7cy52YWx1ZX19IC0ge3tzLmxhYmVsfX08L3NwYW4+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIH1cclxuICAgIDwvZGl2PlxyXG4gICAgfVxyXG48L2Rpdj5cclxuIl19
|
|
137
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnRzLWRvbnV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2l1cy1kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL2NoYXJ0cy1kb251dC9jaGFydHMtZG9udXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaXVzLWRlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvY2hhcnRzLWRvbnV0L2NoYXJ0cy1kb251dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDcEcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOztBQWtCbkUsTUFBTSxPQUFPLG9CQUFvQjtJQVBqQztRQVFXLFNBQUksR0FBZ0IsRUFBRSxDQUFDO1FBQ3ZCLFNBQUksR0FBRyxHQUFHLENBQUMsQ0FBaUIsdUJBQXVCO1FBQ25ELGNBQVMsR0FBRyxFQUFFLENBQUMsQ0FBYSxvQkFBb0I7UUFDaEQsZUFBVSxHQUFHLENBQUMsQ0FBQyxDQUFhLHNDQUFzQztRQUNsRSxlQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLG1CQUFjLEdBQXVCLE9BQU8sQ0FBQztRQUU3QyxTQUFJLEdBQUcsS0FBSyxDQUFDLENBQWUsb0NBQW9DO1FBRS9ELGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBYSxDQUFDO1FBRXJELDBCQUEwQjtRQUNsQixZQUFPLEdBQUcsTUFBTSxDQUFrQixFQUFFLENBQUMsQ0FBQztRQUN0QyxXQUFNLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25CLFVBQUssR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFD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a0JBUGhDLFNBQVM7K0JBQ0Usa0JBQWtCLGNBQ2hCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQzs4QkFLaEMsSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUVJLFVBQVU7c0JBQW5CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIHNpZ25hbCwgT25DaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFBvcG92ZXJEaXJlY3RpdmUgfSBmcm9tICcuLi9kaXJlY3RpdmVzL3BvcG92ZXIuZGlyZWN0aXZlJztcclxuXHJcbmV4cG9ydCB0eXBlIERvbnV0RGF0YSA9IHsgbGFiZWw6IHN0cmluZzsgdmFsdWU6IG51bWJlcjsgY29sb3I/OiBzdHJpbmcgfTtcclxuXHJcbnR5cGUgU2xpY2VDb21wdXRlZCA9IERvbnV0RGF0YSAmIHtcclxuICBwZXJjZW50YWdlOiBudW1iZXI7XHJcbiAgcGF0aEQ6IHN0cmluZzsgICAvLyBwYXRoIGRlbCBhcmNvXHJcbiAgbWlkWDogbnVtYmVyOyAgICAvLyBwdW50byBtZWRpbyBkZWwgYXJjbyAocG9yIHNpIHNlIHF1aWVyZSBhbmNsYXIgYWjDrSlcclxuICBtaWRZOiBudW1iZXI7XHJcbn07XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2l1cy1jaGFydHMtZG9udXQnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUG9wb3ZlckRpcmVjdGl2ZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NoYXJ0cy1kb251dC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY2hhcnRzLWRvbnV0LmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENoYXJ0c0RvbnV0Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoKSBkYXRhOiBEb251dERhdGFbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIHNpemUgPSAxODA7ICAgICAgICAgICAgICAgICAvLyB3aWR0aC9oZWlnaHQgZGVsIFNWR1xyXG4gIEBJbnB1dCgpIHRoaWNrbmVzcyA9IDE4OyAgICAgICAgICAgICAvLyBncm9zb3IgZGVsIGFuaWxsb1xyXG4gIEBJbnB1dCgpIGdhcERlZ3JlZXMgPSAwOyAgICAgICAgICAgICAvLyBzZXBhcmFjacOzbiBlbnRyZSBzZWdtZW50b3MgKGdyYWRvcylcclxuICBASW5wdXQoKSBzaG93TGVnZW5kID0gdHJ1ZTtcclxuICBASW5wdXQoKSBsZWdlbmRQb3NpdGlvbjogJ3JpZ2h0JyB8ICdib3R0b20nID0gJ3JpZ2h0JztcclxuICBASW5wdXQoKSBjZW50ZXJUZXh0Pzogc3RyaW5nIHwgbnVtYmVyOyAvLyBzb2JyZXNjcmliZSBlbCB0ZXh0byBjZW50cmFsXHJcbiAgQElucHV0KCkgc29ydCA9IGZhbHNlOyAgICAgICAgICAgICAgIC8vIG9yZGVuYSBzZWdtZW50b3MgcG9yIHZhbG9yIChkZXNjKVxyXG5cclxuICBAT3V0cHV0KCkgc2xpY2VDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8RG9udXREYXRhPigpO1xyXG5cclxuICAvLyBzZcOxYWxlcyBwYXJhIHJlY2FsY3VsYXJcclxuICBwcml2YXRlIF9zbGljZXMgPSBzaWduYWw8U2xpY2VDb21wdXRlZFtdPihbXSk7XHJcbiAgcHJpdmF0ZSBfdG90YWwgPSBzaWduYWwoMCk7XHJcbiAgcHJpdmF0ZSBfY2lyYyA9IHNpZ25hbCgwKTtcclxuICBwcml2YXRlIF9yYWRpdXMgPSBzaWduYWwoMCk7XHJcblxyXG4gIHJlYWRvbmx5IHNsaWNlcyA9IGNvbXB1dGVkKCgpID0+IHRoaXMuX3NsaWNlcygpKTtcclxuICByZWFkb25seSB0b3RhbCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuX3RvdGFsKCkpO1xyXG4gIHJlYWRvbmx5IHJhZGl1cyA9IGNvbXB1dGVkKCgpID0+IHRoaXMuX3JhZGl1cygpKTtcclxuICByZWFkb25seSBjaXJjdW1mZXJlbmNlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5fY2lyYygpKTtcclxuICByZWFkb25seSB2aWV3Qm94ID0gY29tcHV0ZWQoKCkgPT4gYDAgMCAke3RoaXMuc2l6ZX0gJHt0aGlzLnNpemV9YCk7XHJcblxyXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xyXG4gICAgY29uc3QgY2xlYW5lZCA9ICh0aGlzLmRhdGEgPz8gW10pLmZpbHRlcihkID0+IE51bWJlcihkPy52YWx1ZSkgPiAwKTtcclxuICAgIGNvbnN0IHRvdGFsID0gY2xlYW5lZC5yZWR1Y2UoKGEsIGIpID0+IGEgKyBiLnZhbHVlLCAwKTtcclxuXHJcbiAgICBjb25zdCByYWRpdXMgPSB0aGlzLnNpemUgLyAyIC0gdGhpcy50aGlja25lc3MgLyAyO1xyXG4gICAgY29uc3QgY2lyY3VtZmVyZW5jZSA9IDIgKiBNYXRoLlBJICogcmFkaXVzO1xyXG4gICAgdGhpcy5fcmFkaXVzLnNldChyYWRpdXMpO1xyXG4gICAgdGhpcy5fY2lyYy5zZXQoY2lyY3VtZmVyZW5jZSk7XHJcblxyXG4gICAgLy8gc2luIGRhdG9zIHbDoWxpZG9zXHJcbiAgICBpZiAodG90YWwgPD0gMCkge1xyXG4gICAgICB0aGlzLl9zbGljZXMuc2V0KFtdKTtcclxuICAgICAgdGhpcy5fdG90YWwuc2V0KDApO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgLy8gcGFsZXRhIChyb3RhIHNpIG5vIGFsY2FuemEpXHJcbiAgICBjb25zdCBwYWxldHRlID0gW1xyXG4gICAgICAnIzIxNjdGRicsIC8vIEluZm8tNTAwXHJcbiAgICAgICcjMEEyODkzJywgLy8gSW5mby04MDBcclxuICAgICAgJyM0MENBRTknLCAvLyBQcmltYXJ5LTQwMFxyXG4gICAgICAnIzU4OTJGRicsIC8vIEluZm8tNDAwXHJcbiAgICAgICcjMDhBNkRCJywgLy8gUHJpbWFyeS01MDBcclxuICAgICAgJyNDNERGRkYnLCAvLyBJbmZvLTIwMFxyXG4gICAgXTtcclxuICAgIGxldCBwSW5kZXggPSAwO1xyXG4gICAgY29uc3QgYmFzZSA9IGNsZWFuZWQubWFwKGQgPT4gKHtcclxuICAgICAgLi4uZCxcclxuICAgICAgY29sb3I6IGQuY29sb3IgPz8gcGFsZXR0ZVtwSW5kZXgrKyAlIHBhbGV0dGUubGVuZ3RoXVxyXG4gICAgfSkpO1xyXG5cclxuICAgIC8vIG9yZGVuIG9wY2lvbmFsXHJcbiAgICBjb25zdCBkYXRhT3JkZXJlZCA9IHRoaXMuc29ydCA/IFsuLi5iYXNlXS5zb3J0KChhLCBiKSA9PiBiLnZhbHVlIC0gYS52YWx1ZSkgOiBiYXNlO1xyXG5cclxuICAgIC8vIGdlb21ldHLDrWEgYW5ndWxhclxyXG4gICAgY29uc3QgY3ggPSB0aGlzLnNpemUgLyAyO1xyXG4gICAgY29uc3QgY3kgPSB0aGlzLnNpemUgLyAyO1xyXG4gICAgY29uc3QgbiA9IGRhdGFPcmRlcmVkLmxlbmd0aDtcclxuICAgIGNvbnN0IGdhcCA9IE1hdGgubWF4KHRoaXMuZ2FwRGVncmVlcywgMCk7XHJcbiAgICBjb25zdCB1c2VmdWxEZWcgPSBNYXRoLm1heCgzNjAgLSBuICogZ2FwLCAwKTsgLy8gZXZpdGEgbmVnYXRpdm9zXHJcblxyXG4gICAgbGV0IGN1cnJlbnQgPSAtOTA7IC8vIGFycmFuY2EgYSBsYXMgMTIgZW4gcHVudG9cclxuICAgIGNvbnN0IHNsaWNlczogU2xpY2VDb21wdXRlZFtdID0gZGF0YU9yZGVyZWQubWFwKGQgPT4ge1xyXG4gICAgICBjb25zdCBmcmFjdGlvbiA9IGQudmFsdWUgLyB0b3RhbDtcclxuICAgICAgY29uc3Qgc3dlZXAgPSB1c2VmdWxEZWcgKiBmcmFjdGlvbjtcclxuXHJcbiAgICAgIC8vIGRlamFtb3MgbWVkaW8gZ2FwIGFudGVzIHkgZGVzcHXDqXMgZGVsIGFyY29cclxuICAgICAgY29uc3Qgc3RhcnREZWcgPSBjdXJyZW50ICsgZ2FwIC8gMjtcclxuICAgICAgY29uc3QgZW5kRGVnID0gc3RhcnREZWcgKyBzd2VlcDtcclxuXHJcbiAgICAgIGNvbnN0IHBhdGhEID0gdGhpcy5hcmNQYXRoKGN4LCBjeSwgcmFkaXVzLCBzdGFydERlZywgZW5kRGVnKTtcclxuICAgICAgY29uc3QgbWlkRGVnID0gc3RhcnREZWcgKyBzd2VlcCAvIDI7XHJcbiAgICAgIGNvbnN0IG1pZCA9IHRoaXMucG9sYXJUb0NhcnRlc2lhbihjeCwgY3ksIHJhZGl1cywgbWlkRGVnKTtcclxuXHJcbiAgICAgIC8vIGF2YW56YSBlbCBjdXJzb3IgYW5ndWxhciBwYXJhIGVsIHNpZ3VpZW50ZSBzbGljZVxyXG4gICAgICBjdXJyZW50ID0gZW5kRGVnICsgZ2FwIC8gMjtcclxuXHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgLi4uZCxcclxuICAgICAgICBwZXJjZW50YWdlOiArKGZyYWN0aW9uICogMTAwKS50b0ZpeGVkKDIpLFxyXG4gICAgICAgIHBhdGhELFxyXG4gICAgICAgIG1pZFg6IG1pZC54LFxyXG4gICAgICAgIG1pZFk6IG1pZC55XHJcbiAgICAgIH07XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLl9zbGljZXMuc2V0KHNsaWNlcyk7XHJcbiAgICB0aGlzLl90b3RhbC5zZXQodG90YWwpO1xyXG4gIH1cclxuXHJcbiAgLy8gPT09IGhlbHBlcnMgZGUgZ2VvbWV0csOtYSA9PT1cclxuICBwcml2YXRlIHBvbGFyVG9DYXJ0ZXNpYW4oY3g6IG51bWJlciwgY3k6IG51bWJlciwgcjogbnVtYmVyLCBkZWc6IG51bWJlcikge1xyXG4gICAgY29uc3QgcmFkID0gKGRlZyAqIE1hdGguUEkpIC8gMTgwO1xyXG4gICAgcmV0dXJuIHsgeDogY3ggKyByICogTWF0aC5jb3MocmFkKSwgeTogY3kgKyByICogTWF0aC5zaW4ocmFkKSB9O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhcmNQYXRoKGN4OiBudW1iZXIsIGN5OiBudW1iZXIsIHI6IG51bWJlciwgc3RhcnREZWc6IG51bWJlciwgZW5kRGVnOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgY29uc3Qgc3RhcnQgPSB0aGlzLnBvbGFyVG9DYXJ0ZXNpYW4oY3gsIGN5LCByLCBzdGFydERlZyk7XHJcbiAgICBjb25zdCBlbmQgPSB0aGlzLnBvbGFyVG9DYXJ0ZXNpYW4oY3gsIGN5LCByLCBlbmREZWcpO1xyXG4gICAgY29uc3Qgc3dlZXAgPSBlbmREZWcgLSBzdGFydERlZztcclxuICAgIGNvbnN0IGxhcmdlQXJjRmxhZyA9IHN3ZWVwID4gMTgwID8gMSA6IDA7XHJcbiAgICAvLyBhcmNvIGhvcmFyaW8gKHN3ZWVwLWZsYWc9MSlcclxuICAgIHJldHVybiBgTSAke3N0YXJ0Lnh9ICR7c3RhcnQueX0gQSAke3J9ICR7cn0gMCAke2xhcmdlQXJjRmxhZ30gMSAke2VuZC54fSAke2VuZC55fWA7XHJcbiAgfVxyXG5cclxuICAvLyBldmVudG9zIC8gdXRpbGlkYWRlc1xyXG4gIG9uU2xpY2VDbGljayhzOiBTbGljZUNvbXB1dGVkKSB7XHJcbiAgICB0aGlzLnNsaWNlQ2xpY2suZW1pdCh7IGxhYmVsOiBzLmxhYmVsLCB2YWx1ZTogcy52YWx1ZSwgY29sb3I6IHMuY29sb3IgfSk7XHJcbiAgfVxyXG5cclxuICBnZXQgY2VudGVyTGFiZWwoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHt0aGlzLmNlbnRlclRleHQgPz8gdGhpcy50b3RhbCgpfWA7XHJcbiAgfVxyXG5cclxuICBnZXRQb3BvdmVyVGV4dChzOiB7IGxhYmVsOiBzdHJpbmc7IHZhbHVlOiBudW1iZXI7IHBlcmNlbnRhZ2U6IG51bWJlciB9KTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHtzLmxhYmVsfTogJHtzLnZhbHVlfSAoJHtzLnBlcmNlbnRhZ2V9JSlgO1xyXG4gIH1cclxuXHJcbiAgLy8gYWNjZXNpYmlsaWRhZDogZGVzY3JpYmUgbGEgZG9uYVxyXG4gIGdldCBhcmlhTGFiZWwoKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHBhcnRzID0gdGhpcy5zbGljZXMoKS5tYXAocyA9PiBgJHtzLmxhYmVsfTogJHtzLnZhbHVlfSAoJHtzLnBlcmNlbnRhZ2V9JSlgKTtcclxuICAgIHJldHVybiBgR3LDoWZpY2EgZGUgZG9uYS4gVG90YWwgJHt0aGlzLnRvdGFsKCl9LiAke3BhcnRzLmpvaW4oJy4gJyl9YDtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImRvbnV0LXdyYXBwZXJcIiBbY2xhc3MuYm90dG9tXT1cImxlZ2VuZFBvc2l0aW9uID09PSAnYm90dG9tJ1wiPlxyXG4gICAgPHN2Z1xyXG4gICAgICAgIGNsYXNzPVwiZG9udXRcIlxyXG4gICAgICAgIHJvbGU9XCJpbWdcIlxyXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsXCJcclxuICAgICAgICBbYXR0ci53aWR0aF09XCJzaXplXCJcclxuICAgICAgICBbYXR0ci5oZWlnaHRdPVwic2l6ZVwiXHJcbiAgICAgICAgW2F0dHIudmlld0JveF09XCJ2aWV3Qm94KClcIj5cclxuICAgICAgICA8IS0tIHBpc3RhIC0tPlxyXG4gICAgICAgIDxjaXJjbGVcclxuICAgICAgICBjbGFzcz1cInRyYWNrXCJcclxuICAgICAgICBbYXR0ci5jeF09XCJzaXplLzJcIlxyXG4gICAgICAgIFthdHRyLmN5XT1cInNpemUvMlwiXHJcbiAgICAgICAgW2F0dHIucl09XCJyYWRpdXMoKVwiXHJcbiAgICAgICAgW2F0dHIuc3Ryb2tlLXdpZHRoXT1cInRoaWNrbmVzc1wiXHJcbiAgICAgICAgPjwvY2lyY2xlPlxyXG5cclxuICAgICAgICA8IS0tIHNsaWNlcyBjb21vIFBBVEggKGNhZGEgdW5vIGVzIHN1IGFyY28gcmVhbCkgLS0+XHJcbiAgICAgICAgQGZvciAocyBvZiBzbGljZXMoKTsgdHJhY2sgcy5sYWJlbCkge1xyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgIGNsYXNzPVwic2xpY2VcIlxyXG4gICAgICAgICAgICBbYXR0ci5kXT1cInMucGF0aERcIlxyXG4gICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzLmNvbG9yXCJcclxuICAgICAgICAgICAgW2F0dHIuc3Ryb2tlLXdpZHRoXT1cInRoaWNrbmVzc1wiXHJcbiAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwiYnV0dFwiXHJcbiAgICAgICAgICAgIFtpdXNQb3BvdmVyQ29udGVudF09XCJnZXRQb3BvdmVyVGV4dChzKVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvblNsaWNlQ2xpY2socylcIlxyXG4gICAgICAgICAgICB0YWJpbmRleD1cIjBcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8L3BhdGg+XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA8IS0tIGNlbnRybyAtLT5cclxuICAgICAgICA8Zz5cclxuICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgIFthdHRyLnhdPVwic2l6ZS8yXCJcclxuICAgICAgICAgICAgICAgIFthdHRyLnldPVwic2l6ZS8yXCJcclxuICAgICAgICAgICAgICAgIHRleHQtYW5jaG9yPVwibWlkZGxlXCJcclxuICAgICAgICAgICAgICAgIGFsaWdubWVudC1iYXNlbGluZT1cIm1pZGRsZVwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImNlbnRlci10ZXh0XCI+XHJcbiAgICAgICAgICAgICAgICB7eyBjZW50ZXJMYWJlbCB9fVxyXG4gICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgPC9zdmc+XHJcblxyXG4gICAgQGlmIChzaG93TGVnZW5kICYmIHNsaWNlcygpLmxlbmd0aCkge1xyXG4gICAgPGRpdiBjbGFzcz1cImxlZ2VuZCBzY3JvbGxhYmxlLXNtYWxsXCIgW2NsYXNzLmJvdHRvbV09XCJsZWdlbmRQb3NpdGlvbiA9PT0gJ2JvdHRvbSdcIj5cclxuICAgICAgQGZvciAocyBvZiBzbGljZXMoKTsgdHJhY2sgcy5sYWJlbCkge1xyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJsZWdlbmQtaXRlbVwiPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJkb3RcIiBbc3R5bGUuYmFja2dyb3VuZF09XCJzLmNvbG9yXCI+PC9zcGFuPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJsYWJlbCBjYXB0aW9uLXNtXCIgW2l1c1BvcG92ZXJDb250ZW50XT1cInMudmFsdWUudG9TdHJpbmcoKSArICcgLSAnICsgcy5sYWJlbFwiPnt7cy52YWx1ZX19IC0ge3tzLmxhYmVsfX08L3NwYW4+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIH1cclxuICAgIDwvZGl2PlxyXG4gICAgfVxyXG48L2Rpdj5cclxuIl19
|
|
@@ -3936,11 +3936,11 @@ class ChartsDonutComponent {
|
|
|
3936
3936
|
return `Gráfica de dona. Total ${this.total()}. ${parts.join('. ')}`;
|
|
3937
3937
|
}
|
|
3938
3938
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChartsDonutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3939
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ChartsDonutComponent, isStandalone: true, selector: "ius-charts-donut", inputs: { data: "data", size: "size", thickness: "thickness", gapDegrees: "gapDegrees", showLegend: "showLegend", legendPosition: "legendPosition", centerText: "centerText", sort: "sort" }, outputs: { sliceClick: "sliceClick" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"donut-wrapper\" [class.bottom]=\"legendPosition === 'bottom'\">\r\n <svg\r\n class=\"donut\"\r\n role=\"img\"\r\n [attr.aria-label]=\"ariaLabel\"\r\n [attr.width]=\"size\"\r\n [attr.height]=\"size\"\r\n [attr.viewBox]=\"viewBox()\">\r\n <!-- pista -->\r\n <circle\r\n class=\"track\"\r\n [attr.cx]=\"size/2\"\r\n [attr.cy]=\"size/2\"\r\n [attr.r]=\"radius()\"\r\n [attr.stroke-width]=\"thickness\"\r\n ></circle>\r\n\r\n <!-- slices como PATH (cada uno es su arco real) -->\r\n @for (s of slices(); track s.label) {\r\n <path\r\n class=\"slice\"\r\n [attr.d]=\"s.pathD\"\r\n fill=\"none\"\r\n [attr.stroke]=\"s.color\"\r\n [attr.stroke-width]=\"thickness\"\r\n stroke-linecap=\"butt\"\r\n [iusPopoverContent]=\"getPopoverText(s)\"\r\n (click)=\"onSliceClick(s)\"\r\n tabindex=\"0\"\r\n >\r\n </path>\r\n }\r\n\r\n <!-- centro -->\r\n <g>\r\n <text\r\n [attr.x]=\"size/2\"\r\n [attr.y]=\"size/2\"\r\n text-anchor=\"middle\"\r\n alignment-baseline=\"middle\"\r\n class=\"center-text\">\r\n {{ centerLabel }}\r\n </text>\r\n </g>\r\n </svg>\r\n\r\n @if (showLegend && slices().length) {\r\n <div class=\"legend scrollable-small\" [class.bottom]=\"legendPosition === 'bottom'\">\r\n @for (s of slices(); track s.label) {\r\n <div class=\"legend-item\">\r\n <span class=\"dot\" [style.background]=\"s.color\"></span>\r\n <span class=\"label caption-sm\" [iusPopoverContent]=\"s.value.toString() + ' - ' + s.label\">{{s.value}} - {{s.label}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [".h1{font-family:Roboto,sans-serif;font-size:2.375rem;font-weight:500;line-height:46px}.h2{font-family:Roboto,sans-serif;font-size:1.875rem;font-weight:700;line-height:38px}.h3{font-family:Roboto,sans-serif;font-size:1.5rem;font-weight:500;line-height:32px}.h4{font-family:Roboto,sans-serif;font-size:1.25rem;font-weight:700;line-height:26px}.h5{font-family:Roboto,sans-serif;font-size:1.125rem;font-weight:500;line-height:24px;letter-spacing:.18px}.label-large{font-family:Roboto,sans-serif;font-size:1rem;font-weight:500;line-height:22px}.body-large{font-family:Rubik,sans-serif;font-size:1rem;font-weight:400;line-height:22px}.label-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:500;line-height:20px;letter-spacing:.28px}.body-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:400;line-height:20px;font-style:italic;letter-spacing:.28px}.body-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;letter-spacing:.28px}.body-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;font-style:italic;letter-spacing:.28px}.caption-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;letter-spacing:.28px}.caption-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;font-style:italic;letter-spacing:.28px}:host{display:block;max-width:100%;height:100%}.donut-wrapper{display:grid;grid-template-columns:auto 1fr;column-gap:16px;height:100%;align-items:stretch}.donut-wrapper.bottom{grid-template-columns:1fr;grid-template-rows:auto 1fr;row-gap:12px;align-items:stretch}.donut{display:block;max-width:100%;height:auto;align-self:center}.track{fill:none;stroke:#eef2f6}.slice{pointer-events:stroke;cursor:pointer;transition:opacity .15s ease,transform .15s ease}.slice:focus{outline:none;filter:drop-shadow(0 0 2px rgba(0,0,0,.2))}.slice:hover{opacity:.9}.center-text{fill:#595959;font-family:Rubik,sans-serif;font-size:1.5rem;font-weight:600}.legend{display:flex;flex-direction:column;gap:8px;padding-right:4px;min-width:0;overflow-x:hidden;overflow-y:auto;align-self:stretch;max-height:100%;min-height:0}.legend.bottom{flex-direction:row;flex-wrap:wrap;overflow-y:auto}.legend .legend-item{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap}.legend .dot{width:8px;height:8px;border-radius:8px;flex:0 0 8px}.legend .label{color:#595959;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scrollable-small::-webkit-scrollbar{-webkit-appearance:none}.scrollable-small::-webkit-scrollbar:vertical{width:4px;height:32px;padding-top:2px;padding-bottom:2px}.scrollable-small::-webkit-scrollbar:horizontal{height:5px;padding-top:2px;padding-bottom:2px}.scrollable-small::-webkit-scrollbar-thumb{background-color:#08a6db;border-radius:4px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: PopoverDirective, selector: "[iusPopover], [iusPopoverTitle], [iusPopoverContent]", inputs: ["iusPopover", "iusPopoverTitle", "iusPopoverContent", "iusPopoverPosition", "iusPopoverOpenDelay", "iusPopoverCloseDelay"] }] }); }
|
|
3939
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ChartsDonutComponent, isStandalone: true, selector: "ius-charts-donut", inputs: { data: "data", size: "size", thickness: "thickness", gapDegrees: "gapDegrees", showLegend: "showLegend", legendPosition: "legendPosition", centerText: "centerText", sort: "sort" }, outputs: { sliceClick: "sliceClick" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"donut-wrapper\" [class.bottom]=\"legendPosition === 'bottom'\">\r\n <svg\r\n class=\"donut\"\r\n role=\"img\"\r\n [attr.aria-label]=\"ariaLabel\"\r\n [attr.width]=\"size\"\r\n [attr.height]=\"size\"\r\n [attr.viewBox]=\"viewBox()\">\r\n <!-- pista -->\r\n <circle\r\n class=\"track\"\r\n [attr.cx]=\"size/2\"\r\n [attr.cy]=\"size/2\"\r\n [attr.r]=\"radius()\"\r\n [attr.stroke-width]=\"thickness\"\r\n ></circle>\r\n\r\n <!-- slices como PATH (cada uno es su arco real) -->\r\n @for (s of slices(); track s.label) {\r\n <path\r\n class=\"slice\"\r\n [attr.d]=\"s.pathD\"\r\n fill=\"none\"\r\n [attr.stroke]=\"s.color\"\r\n [attr.stroke-width]=\"thickness\"\r\n stroke-linecap=\"butt\"\r\n [iusPopoverContent]=\"getPopoverText(s)\"\r\n (click)=\"onSliceClick(s)\"\r\n tabindex=\"0\"\r\n >\r\n </path>\r\n }\r\n\r\n <!-- centro -->\r\n <g>\r\n <text\r\n [attr.x]=\"size/2\"\r\n [attr.y]=\"size/2\"\r\n text-anchor=\"middle\"\r\n alignment-baseline=\"middle\"\r\n class=\"center-text\">\r\n {{ centerLabel }}\r\n </text>\r\n </g>\r\n </svg>\r\n\r\n @if (showLegend && slices().length) {\r\n <div class=\"legend scrollable-small\" [class.bottom]=\"legendPosition === 'bottom'\">\r\n @for (s of slices(); track s.label) {\r\n <div class=\"legend-item\">\r\n <span class=\"dot\" [style.background]=\"s.color\"></span>\r\n <span class=\"label caption-sm\" [iusPopoverContent]=\"s.value.toString() + ' - ' + s.label\">{{s.value}} - {{s.label}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [".h1{font-family:Roboto,sans-serif;font-size:2.375rem;font-weight:500;line-height:46px}.h2{font-family:Roboto,sans-serif;font-size:1.875rem;font-weight:700;line-height:38px}.h3{font-family:Roboto,sans-serif;font-size:1.5rem;font-weight:500;line-height:32px}.h4{font-family:Roboto,sans-serif;font-size:1.25rem;font-weight:700;line-height:26px}.h5{font-family:Roboto,sans-serif;font-size:1.125rem;font-weight:500;line-height:24px;letter-spacing:.18px}.label-large{font-family:Roboto,sans-serif;font-size:1rem;font-weight:500;line-height:22px}.body-large{font-family:Rubik,sans-serif;font-size:1rem;font-weight:400;line-height:22px}.label-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:500;line-height:20px;letter-spacing:.28px}.body-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:400;line-height:20px;font-style:italic;letter-spacing:.28px}.body-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;letter-spacing:.28px}.body-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;font-style:italic;letter-spacing:.28px}.caption-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;letter-spacing:.28px}.caption-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;font-style:italic;letter-spacing:.28px}:host{display:block;max-width:100%;height:100%}.donut-wrapper{display:grid;grid-template-columns:auto 1fr;column-gap:16px;height:100%;align-items:stretch}.donut-wrapper.bottom{grid-template-columns:1fr;grid-template-rows:auto 1fr;row-gap:12px;align-items:stretch}.donut{display:block;max-width:100%;height:auto;align-self:center}.track{fill:none;stroke:#eef2f6}.slice{pointer-events:stroke;cursor:pointer;transition:opacity .15s ease,transform .15s ease}.slice:focus{outline:none;filter:drop-shadow(0 0 2px rgba(0,0,0,.2))}.slice:hover{opacity:.9}.center-text{fill:#595959;font-family:Rubik,sans-serif;font-size:1.5rem;font-weight:600}.legend{display:flex;justify-content:center;flex-direction:column;gap:8px;padding-right:4px;min-width:0;overflow-x:hidden;overflow-y:auto;align-self:stretch;max-height:100%;min-height:0}.legend.bottom{flex-direction:row;flex-wrap:wrap;overflow-y:auto}.legend .legend-item{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap}.legend .dot{width:8px;height:8px;border-radius:8px;flex:0 0 8px}.legend .label{color:#595959;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scrollable-small::-webkit-scrollbar{-webkit-appearance:none}.scrollable-small::-webkit-scrollbar:vertical{width:4px;height:32px;padding-top:2px;padding-bottom:2px}.scrollable-small::-webkit-scrollbar:horizontal{height:5px;padding-top:2px;padding-bottom:2px}.scrollable-small::-webkit-scrollbar-thumb{background-color:#08a6db;border-radius:4px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: PopoverDirective, selector: "[iusPopover], [iusPopoverTitle], [iusPopoverContent]", inputs: ["iusPopover", "iusPopoverTitle", "iusPopoverContent", "iusPopoverPosition", "iusPopoverOpenDelay", "iusPopoverCloseDelay"] }] }); }
|
|
3940
3940
|
}
|
|
3941
3941
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChartsDonutComponent, decorators: [{
|
|
3942
3942
|
type: Component,
|
|
3943
|
-
args: [{ selector: 'ius-charts-donut', standalone: true, imports: [CommonModule, PopoverDirective], template: "<div class=\"donut-wrapper\" [class.bottom]=\"legendPosition === 'bottom'\">\r\n <svg\r\n class=\"donut\"\r\n role=\"img\"\r\n [attr.aria-label]=\"ariaLabel\"\r\n [attr.width]=\"size\"\r\n [attr.height]=\"size\"\r\n [attr.viewBox]=\"viewBox()\">\r\n <!-- pista -->\r\n <circle\r\n class=\"track\"\r\n [attr.cx]=\"size/2\"\r\n [attr.cy]=\"size/2\"\r\n [attr.r]=\"radius()\"\r\n [attr.stroke-width]=\"thickness\"\r\n ></circle>\r\n\r\n <!-- slices como PATH (cada uno es su arco real) -->\r\n @for (s of slices(); track s.label) {\r\n <path\r\n class=\"slice\"\r\n [attr.d]=\"s.pathD\"\r\n fill=\"none\"\r\n [attr.stroke]=\"s.color\"\r\n [attr.stroke-width]=\"thickness\"\r\n stroke-linecap=\"butt\"\r\n [iusPopoverContent]=\"getPopoverText(s)\"\r\n (click)=\"onSliceClick(s)\"\r\n tabindex=\"0\"\r\n >\r\n </path>\r\n }\r\n\r\n <!-- centro -->\r\n <g>\r\n <text\r\n [attr.x]=\"size/2\"\r\n [attr.y]=\"size/2\"\r\n text-anchor=\"middle\"\r\n alignment-baseline=\"middle\"\r\n class=\"center-text\">\r\n {{ centerLabel }}\r\n </text>\r\n </g>\r\n </svg>\r\n\r\n @if (showLegend && slices().length) {\r\n <div class=\"legend scrollable-small\" [class.bottom]=\"legendPosition === 'bottom'\">\r\n @for (s of slices(); track s.label) {\r\n <div class=\"legend-item\">\r\n <span class=\"dot\" [style.background]=\"s.color\"></span>\r\n <span class=\"label caption-sm\" [iusPopoverContent]=\"s.value.toString() + ' - ' + s.label\">{{s.value}} - {{s.label}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [".h1{font-family:Roboto,sans-serif;font-size:2.375rem;font-weight:500;line-height:46px}.h2{font-family:Roboto,sans-serif;font-size:1.875rem;font-weight:700;line-height:38px}.h3{font-family:Roboto,sans-serif;font-size:1.5rem;font-weight:500;line-height:32px}.h4{font-family:Roboto,sans-serif;font-size:1.25rem;font-weight:700;line-height:26px}.h5{font-family:Roboto,sans-serif;font-size:1.125rem;font-weight:500;line-height:24px;letter-spacing:.18px}.label-large{font-family:Roboto,sans-serif;font-size:1rem;font-weight:500;line-height:22px}.body-large{font-family:Rubik,sans-serif;font-size:1rem;font-weight:400;line-height:22px}.label-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:500;line-height:20px;letter-spacing:.28px}.body-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:400;line-height:20px;font-style:italic;letter-spacing:.28px}.body-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;letter-spacing:.28px}.body-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;font-style:italic;letter-spacing:.28px}.caption-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;letter-spacing:.28px}.caption-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;font-style:italic;letter-spacing:.28px}:host{display:block;max-width:100%;height:100%}.donut-wrapper{display:grid;grid-template-columns:auto 1fr;column-gap:16px;height:100%;align-items:stretch}.donut-wrapper.bottom{grid-template-columns:1fr;grid-template-rows:auto 1fr;row-gap:12px;align-items:stretch}.donut{display:block;max-width:100%;height:auto;align-self:center}.track{fill:none;stroke:#eef2f6}.slice{pointer-events:stroke;cursor:pointer;transition:opacity .15s ease,transform .15s ease}.slice:focus{outline:none;filter:drop-shadow(0 0 2px rgba(0,0,0,.2))}.slice:hover{opacity:.9}.center-text{fill:#595959;font-family:Rubik,sans-serif;font-size:1.5rem;font-weight:600}.legend{display:flex;flex-direction:column;gap:8px;padding-right:4px;min-width:0;overflow-x:hidden;overflow-y:auto;align-self:stretch;max-height:100%;min-height:0}.legend.bottom{flex-direction:row;flex-wrap:wrap;overflow-y:auto}.legend .legend-item{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap}.legend .dot{width:8px;height:8px;border-radius:8px;flex:0 0 8px}.legend .label{color:#595959;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scrollable-small::-webkit-scrollbar{-webkit-appearance:none}.scrollable-small::-webkit-scrollbar:vertical{width:4px;height:32px;padding-top:2px;padding-bottom:2px}.scrollable-small::-webkit-scrollbar:horizontal{height:5px;padding-top:2px;padding-bottom:2px}.scrollable-small::-webkit-scrollbar-thumb{background-color:#08a6db;border-radius:4px}\n"] }]
|
|
3943
|
+
args: [{ selector: 'ius-charts-donut', standalone: true, imports: [CommonModule, PopoverDirective], template: "<div class=\"donut-wrapper\" [class.bottom]=\"legendPosition === 'bottom'\">\r\n <svg\r\n class=\"donut\"\r\n role=\"img\"\r\n [attr.aria-label]=\"ariaLabel\"\r\n [attr.width]=\"size\"\r\n [attr.height]=\"size\"\r\n [attr.viewBox]=\"viewBox()\">\r\n <!-- pista -->\r\n <circle\r\n class=\"track\"\r\n [attr.cx]=\"size/2\"\r\n [attr.cy]=\"size/2\"\r\n [attr.r]=\"radius()\"\r\n [attr.stroke-width]=\"thickness\"\r\n ></circle>\r\n\r\n <!-- slices como PATH (cada uno es su arco real) -->\r\n @for (s of slices(); track s.label) {\r\n <path\r\n class=\"slice\"\r\n [attr.d]=\"s.pathD\"\r\n fill=\"none\"\r\n [attr.stroke]=\"s.color\"\r\n [attr.stroke-width]=\"thickness\"\r\n stroke-linecap=\"butt\"\r\n [iusPopoverContent]=\"getPopoverText(s)\"\r\n (click)=\"onSliceClick(s)\"\r\n tabindex=\"0\"\r\n >\r\n </path>\r\n }\r\n\r\n <!-- centro -->\r\n <g>\r\n <text\r\n [attr.x]=\"size/2\"\r\n [attr.y]=\"size/2\"\r\n text-anchor=\"middle\"\r\n alignment-baseline=\"middle\"\r\n class=\"center-text\">\r\n {{ centerLabel }}\r\n </text>\r\n </g>\r\n </svg>\r\n\r\n @if (showLegend && slices().length) {\r\n <div class=\"legend scrollable-small\" [class.bottom]=\"legendPosition === 'bottom'\">\r\n @for (s of slices(); track s.label) {\r\n <div class=\"legend-item\">\r\n <span class=\"dot\" [style.background]=\"s.color\"></span>\r\n <span class=\"label caption-sm\" [iusPopoverContent]=\"s.value.toString() + ' - ' + s.label\">{{s.value}} - {{s.label}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: [".h1{font-family:Roboto,sans-serif;font-size:2.375rem;font-weight:500;line-height:46px}.h2{font-family:Roboto,sans-serif;font-size:1.875rem;font-weight:700;line-height:38px}.h3{font-family:Roboto,sans-serif;font-size:1.5rem;font-weight:500;line-height:32px}.h4{font-family:Roboto,sans-serif;font-size:1.25rem;font-weight:700;line-height:26px}.h5{font-family:Roboto,sans-serif;font-size:1.125rem;font-weight:500;line-height:24px;letter-spacing:.18px}.label-large{font-family:Roboto,sans-serif;font-size:1rem;font-weight:500;line-height:22px}.body-large{font-family:Rubik,sans-serif;font-size:1rem;font-weight:400;line-height:22px}.label-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:500;line-height:20px;letter-spacing:.28px}.body-base{font-family:Rubik,sans-serif;font-size:.875rem;font-weight:400;line-height:20px;font-style:italic;letter-spacing:.28px}.body-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;letter-spacing:.28px}.body-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:400;line-height:16px;font-style:italic;letter-spacing:.28px}.caption-sm{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;letter-spacing:.28px}.caption-sm-italic{font-family:Rubik,sans-serif;font-size:.75rem;font-weight:500;line-height:16px;font-style:italic;letter-spacing:.28px}:host{display:block;max-width:100%;height:100%}.donut-wrapper{display:grid;grid-template-columns:auto 1fr;column-gap:16px;height:100%;align-items:stretch}.donut-wrapper.bottom{grid-template-columns:1fr;grid-template-rows:auto 1fr;row-gap:12px;align-items:stretch}.donut{display:block;max-width:100%;height:auto;align-self:center}.track{fill:none;stroke:#eef2f6}.slice{pointer-events:stroke;cursor:pointer;transition:opacity .15s ease,transform .15s ease}.slice:focus{outline:none;filter:drop-shadow(0 0 2px rgba(0,0,0,.2))}.slice:hover{opacity:.9}.center-text{fill:#595959;font-family:Rubik,sans-serif;font-size:1.5rem;font-weight:600}.legend{display:flex;justify-content:center;flex-direction:column;gap:8px;padding-right:4px;min-width:0;overflow-x:hidden;overflow-y:auto;align-self:stretch;max-height:100%;min-height:0}.legend.bottom{flex-direction:row;flex-wrap:wrap;overflow-y:auto}.legend .legend-item{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap}.legend .dot{width:8px;height:8px;border-radius:8px;flex:0 0 8px}.legend .label{color:#595959;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scrollable-small::-webkit-scrollbar{-webkit-appearance:none}.scrollable-small::-webkit-scrollbar:vertical{width:4px;height:32px;padding-top:2px;padding-bottom:2px}.scrollable-small::-webkit-scrollbar:horizontal{height:5px;padding-top:2px;padding-bottom:2px}.scrollable-small::-webkit-scrollbar-thumb{background-color:#08a6db;border-radius:4px}\n"] }]
|
|
3944
3944
|
}], propDecorators: { data: [{
|
|
3945
3945
|
type: Input
|
|
3946
3946
|
}], size: [{
|