@acorex/charts 21.0.2-next.32 → 21.0.2-next.34
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/fesm2022/acorex-charts-bar-chart.mjs +17 -17
- package/fesm2022/acorex-charts-bar-chart.mjs.map +1 -1
- package/fesm2022/acorex-charts-chart-legend.mjs +13 -13
- package/fesm2022/acorex-charts-chart-legend.mjs.map +1 -1
- package/fesm2022/acorex-charts-chart-tooltip.mjs +11 -11
- package/fesm2022/acorex-charts-chart-tooltip.mjs.map +1 -1
- package/fesm2022/acorex-charts-donut-chart.mjs +22 -21
- package/fesm2022/acorex-charts-donut-chart.mjs.map +1 -1
- package/fesm2022/acorex-charts-funnel-chart.mjs +14 -16
- package/fesm2022/acorex-charts-funnel-chart.mjs.map +1 -1
- package/fesm2022/acorex-charts-gauge-chart.mjs +14 -14
- package/fesm2022/acorex-charts-gauge-chart.mjs.map +1 -1
- package/fesm2022/acorex-charts-heatmap-chart.mjs +33 -18
- package/fesm2022/acorex-charts-heatmap-chart.mjs.map +1 -1
- package/fesm2022/acorex-charts-hierarchy-chart.mjs +35 -29
- package/fesm2022/acorex-charts-hierarchy-chart.mjs.map +1 -1
- package/fesm2022/acorex-charts-line-chart.mjs +57 -34
- package/fesm2022/acorex-charts-line-chart.mjs.map +1 -1
- package/fesm2022/acorex-charts.mjs +4 -4
- package/fesm2022/acorex-charts.mjs.map +1 -1
- package/package.json +13 -12
- package/{bar-chart/index.d.ts → types/acorex-charts-bar-chart.d.ts} +2 -1
- package/{donut-chart/index.d.ts → types/acorex-charts-donut-chart.d.ts} +2 -1
- package/{funnel-chart/index.d.ts → types/acorex-charts-funnel-chart.d.ts} +2 -1
- package/{gauge-chart/index.d.ts → types/acorex-charts-gauge-chart.d.ts} +2 -1
- package/{heatmap-chart/index.d.ts → types/acorex-charts-heatmap-chart.d.ts} +16 -1
- package/{hierarchy-chart/index.d.ts → types/acorex-charts-hierarchy-chart.d.ts} +8 -4
- package/{line-chart/index.d.ts → types/acorex-charts-line-chart.d.ts} +3 -1
- /package/{chart-legend/index.d.ts → types/acorex-charts-chart-legend.d.ts} +0 -0
- /package/{chart-tooltip/index.d.ts → types/acorex-charts-chart-tooltip.d.ts} +0 -0
- /package/{index.d.ts → types/acorex-charts.d.ts} +0 -0
|
@@ -54,7 +54,7 @@ function getChartColor(index, palette) {
|
|
|
54
54
|
*/
|
|
55
55
|
class AXChartComponent {
|
|
56
56
|
#elementRef = inject(ElementRef);
|
|
57
|
-
#isRendered = signal(false, ...(ngDevMode ? [{ debugName: "#isRendered" }] : []));
|
|
57
|
+
#isRendered = signal(false, ...(ngDevMode ? [{ debugName: "#isRendered" }] : /* istanbul ignore next */ []));
|
|
58
58
|
isRendered = this.#isRendered.asReadonly();
|
|
59
59
|
#afterNextRender = afterNextRender(() => {
|
|
60
60
|
if (!this.isRendered()) {
|
|
@@ -75,10 +75,10 @@ class AXChartComponent {
|
|
|
75
75
|
getHostElement() {
|
|
76
76
|
return this.#elementRef.nativeElement;
|
|
77
77
|
}
|
|
78
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
79
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
78
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
79
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.9", type: AXChartComponent, isStandalone: true, ngImport: i0 });
|
|
80
80
|
}
|
|
81
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
81
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXChartComponent, decorators: [{
|
|
82
82
|
type: Directive
|
|
83
83
|
}] });
|
|
84
84
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-charts.mjs","sources":["../tmp-esm2022/lib/chart-colors.js","../tmp-esm2022/lib/chart-component-base.js","../tmp-esm2022/lib/chart-utils.js","../tmp-esm2022/index.js","../tmp-esm2022/acorex-charts.js"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n// Default color palette for charts\nexport const AX_CHART_COLOR_PALETTE = new InjectionToken('AX_CHART_COLOR_PALETTE', {\n providedIn: 'root',\n factory: () => [\n '#FF6B6B', // Vibrant Red\n '#4ECDC4', // Electric Teal\n '#45B7D1', // Bright Blue\n '#96CEB4', // Fresh Green\n '#FFEEAD', // Bright Yellow\n '#D4A5A5', // Rose Pink\n '#9B59B6', // Rich Purple\n '#3498DB', // Deep Blue\n '#E67E22', // Bright Orange\n '#2ECC71', // Emerald Green\n '#E74C3C', // Cherry Red\n '#1ABC9C', // Turquoise\n '#F1C40F', // Golden Yellow\n '#8E44AD', // Deep Purple\n '#16A085', // Dark Teal\n // --- Extended Colors (new) ---\n '#27AE60', // Forest Green\n '#2980B9', // Strong Blue\n '#F39C12', // Vivid Orange\n '#C0392B', // Dark Red\n '#7D3C98', // Plum Purple\n '#2C3E50', // Midnight Blue\n '#D35400', // Burnt Orange\n '#BDC3C7', // Soft Silver\n '#34495E', // Slate Gray\n '#1F618D', // Royal Blue\n '#58D68D', // Mint Green\n '#5DADE2', // Sky Blue\n '#F1948A', // Soft Coral\n '#A569BD', // Lavender Purple\n '#F8C471', // Warm Gold\n ],\n});\n/**\n * Helper function to get a color from the palette by index\n * @param index The index of the color to get\n * @param palette The color palette to use\n * @returns The color at the specified index\n */\nexport function getChartColor(index, palette) {\n return palette[index % palette.length];\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtY29sb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2hhcnRzL3NyYy9saWIvY2hhcnQtY29sb3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0MsbUNBQW1DO0FBQ25DLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLElBQUksY0FBYyxDQUN0RCx3QkFBd0IsRUFDeEI7SUFDRSxVQUFVLEVBQUUsTUFBTTtJQUNsQixPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUM7UUFDYixTQUFTLEVBQUUsY0FBYztRQUN6QixTQUFTLEVBQUUsZ0JBQWdCO1FBQzNCLFNBQVMsRUFBRSxjQUFjO1FBQ3pCLFNBQVMsRUFBRSxjQUFjO1FBQ3pCLFNBQVMsRUFBRSxnQkFBZ0I7UUFDM0IsU0FBUyxFQUFFLFlBQVk7UUFDdkIsU0FBUyxFQUFFLGNBQWM7UUFDekIsU0FBUyxFQUFFLFlBQVk7UUFDdkIsU0FBUyxFQUFFLGdCQUFnQjtRQUMzQixTQUFTLEVBQUUsZ0JBQWdCO1FBQzNCLFNBQVMsRUFBRSxhQUFhO1FBQ3hCLFNBQVMsRUFBRSxZQUFZO1FBQ3ZCLFNBQVMsRUFBRSxnQkFBZ0I7UUFDM0IsU0FBUyxFQUFFLGNBQWM7UUFDekIsU0FBUyxFQUFFLFlBQVk7UUFFdkIsZ0NBQWdDO1FBQ2hDLFNBQVMsRUFBRSxlQUFlO1FBQzFCLFNBQVMsRUFBRSxjQUFjO1FBQ3pCLFNBQVMsRUFBRSxlQUFlO1FBQzFCLFNBQVMsRUFBRSxXQUFXO1FBQ3RCLFNBQVMsRUFBRSxjQUFjO1FBQ3pCLFNBQVMsRUFBRSxnQkFBZ0I7UUFDM0IsU0FBUyxFQUFFLGVBQWU7UUFDMUIsU0FBUyxFQUFFLGNBQWM7UUFDekIsU0FBUyxFQUFFLGFBQWE7UUFDeEIsU0FBUyxFQUFFLGFBQWE7UUFDeEIsU0FBUyxFQUFFLGFBQWE7UUFDeEIsU0FBUyxFQUFFLFdBQVc7UUFDdEIsU0FBUyxFQUFFLGFBQWE7UUFDeEIsU0FBUyxFQUFFLGtCQUFrQjtRQUM3QixTQUFTLEVBQUUsWUFBWTtLQUN4QjtDQUNGLENBQ0YsQ0FBQztBQUdGOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLGFBQWEsQ0FBQyxLQUFhLEVBQUUsT0FBaUI7SUFDNUQsT0FBTyxPQUFPLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUN6QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLy8gRGVmYXVsdCBjb2xvciBwYWxldHRlIGZvciBjaGFydHNcbmV4cG9ydCBjb25zdCBBWF9DSEFSVF9DT0xPUl9QQUxFVFRFID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZ1tdPihcbiAgJ0FYX0NIQVJUX0NPTE9SX1BBTEVUVEUnLFxuICB7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxuICAgIGZhY3Rvcnk6ICgpID0+IFtcbiAgICAgICcjRkY2QjZCJywgLy8gVmlicmFudCBSZWRcbiAgICAgICcjNEVDREM0JywgLy8gRWxlY3RyaWMgVGVhbFxuICAgICAgJyM0NUI3RDEnLCAvLyBCcmlnaHQgQmx1ZVxuICAgICAgJyM5NkNFQjQnLCAvLyBGcmVzaCBHcmVlblxuICAgICAgJyNGRkVFQUQnLCAvLyBCcmlnaHQgWWVsbG93XG4gICAgICAnI0Q0QTVBNScsIC8vIFJvc2UgUGlua1xuICAgICAgJyM5QjU5QjYnLCAvLyBSaWNoIFB1cnBsZVxuICAgICAgJyMzNDk4REInLCAvLyBEZWVwIEJsdWVcbiAgICAgICcjRTY3RTIyJywgLy8gQnJpZ2h0IE9yYW5nZVxuICAgICAgJyMyRUNDNzEnLCAvLyBFbWVyYWxkIEdyZWVuXG4gICAgICAnI0U3NEMzQycsIC8vIENoZXJyeSBSZWRcbiAgICAgICcjMUFCQzlDJywgLy8gVHVycXVvaXNlXG4gICAgICAnI0YxQzQwRicsIC8vIEdvbGRlbiBZZWxsb3dcbiAgICAgICcjOEU0NEFEJywgLy8gRGVlcCBQdXJwbGVcbiAgICAgICcjMTZBMDg1JywgLy8gRGFyayBUZWFsXG5cbiAgICAgIC8vIC0tLSBFeHRlbmRlZCBDb2xvcnMgKG5ldykgLS0tXG4gICAgICAnIzI3QUU2MCcsIC8vIEZvcmVzdCBHcmVlblxuICAgICAgJyMyOTgwQjknLCAvLyBTdHJvbmcgQmx1ZVxuICAgICAgJyNGMzlDMTInLCAvLyBWaXZpZCBPcmFuZ2VcbiAgICAgICcjQzAzOTJCJywgLy8gRGFyayBSZWRcbiAgICAgICcjN0QzQzk4JywgLy8gUGx1bSBQdXJwbGVcbiAgICAgICcjMkMzRTUwJywgLy8gTWlkbmlnaHQgQmx1ZVxuICAgICAgJyNEMzU0MDAnLCAvLyBCdXJudCBPcmFuZ2VcbiAgICAgICcjQkRDM0M3JywgLy8gU29mdCBTaWx2ZXJcbiAgICAgICcjMzQ0OTVFJywgLy8gU2xhdGUgR3JheVxuICAgICAgJyMxRjYxOEQnLCAvLyBSb3lhbCBCbHVlXG4gICAgICAnIzU4RDY4RCcsIC8vIE1pbnQgR3JlZW5cbiAgICAgICcjNURBREUyJywgLy8gU2t5IEJsdWVcbiAgICAgICcjRjE5NDhBJywgLy8gU29mdCBDb3JhbFxuICAgICAgJyNBNTY5QkQnLCAvLyBMYXZlbmRlciBQdXJwbGVcbiAgICAgICcjRjhDNDcxJywgLy8gV2FybSBHb2xkXG4gICAgXSxcbiAgfVxuKTtcblxuXG4vKipcbiAqIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgYSBjb2xvciBmcm9tIHRoZSBwYWxldHRlIGJ5IGluZGV4XG4gKiBAcGFyYW0gaW5kZXggVGhlIGluZGV4IG9mIHRoZSBjb2xvciB0byBnZXRcbiAqIEBwYXJhbSBwYWxldHRlIFRoZSBjb2xvciBwYWxldHRlIHRvIHVzZVxuICogQHJldHVybnMgVGhlIGNvbG9yIGF0IHRoZSBzcGVjaWZpZWQgaW5kZXhcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldENoYXJ0Q29sb3IoaW5kZXg6IG51bWJlciwgcGFsZXR0ZTogc3RyaW5nW10pOiBzdHJpbmcge1xuICByZXR1cm4gcGFsZXR0ZVtpbmRleCAlIHBhbGV0dGUubGVuZ3RoXTtcbn1cbiJdfQ==","import { afterNextRender, Directive, ElementRef, inject, signal } from '@angular/core';\nimport * as i0 from \"@angular/core\";\n/**\n * Base component class for all chart components\n * Copied from @acorex/cdk/common NXComponent to remove external dependency\n */\nexport class AXChartComponent {\n #elementRef = inject(ElementRef);\n #isRendered = signal(false, ...(ngDevMode ? [{ debugName: \"#isRendered\" }] : []));\n isRendered = this.#isRendered.asReadonly();\n #afterNextRender = afterNextRender(() => {\n if (!this.isRendered()) {\n this.nativeElement['__axContext__'] = this;\n this.#isRendered.set(true);\n }\n });\n /**\n * Gets the native HTML element of the component\n */\n get nativeElement() {\n return this.#elementRef.nativeElement;\n }\n /**\n * Gets the host HTML element of the component (alias for nativeElement)\n * @returns T - The native DOM element associated with this component\n */\n getHostElement() {\n return this.#elementRef.nativeElement;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXChartComponent, isStandalone: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXChartComponent, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtY29tcG9uZW50LWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jaGFydHMvc3JjL2xpYi9jaGFydC1jb21wb25lbnQtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFdkY7OztHQUdHO0FBRUgsTUFBTSxPQUFnQixnQkFBZ0I7SUFDcEMsV0FBVyxHQUE0QixNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDMUQsV0FBVyxHQUFHLE1BQU0sQ0FBQyxLQUFLLHVEQUFDLENBQUM7SUFFbEIsVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLENBQUM7SUFFckQsZ0JBQWdCLEdBQUcsZUFBZSxDQUFDLEdBQUcsRUFBRTtRQUN0QyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsR0FBRyxJQUFJLENBQUM7WUFDM0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0lBRUg7O09BRUc7SUFDSCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztJQUN4QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksY0FBYztRQUNuQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBa0IsQ0FBQztJQUM3QyxDQUFDO3VHQTFCbUIsZ0JBQWdCOzJGQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRHJDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhZnRlck5leHRSZW5kZXIsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBCYXNlIGNvbXBvbmVudCBjbGFzcyBmb3IgYWxsIGNoYXJ0IGNvbXBvbmVudHNcbiAqIENvcGllZCBmcm9tIEBhY29yZXgvY2RrL2NvbW1vbiBOWENvbXBvbmVudCB0byByZW1vdmUgZXh0ZXJuYWwgZGVwZW5kZW5jeVxuICovXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWENoYXJ0Q29tcG9uZW50IHtcbiAgI2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+ID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICAjaXNSZW5kZXJlZCA9IHNpZ25hbChmYWxzZSk7XG5cbiAgcHJvdGVjdGVkIGlzUmVuZGVyZWQgPSB0aGlzLiNpc1JlbmRlcmVkLmFzUmVhZG9ubHkoKTtcblxuICAjYWZ0ZXJOZXh0UmVuZGVyID0gYWZ0ZXJOZXh0UmVuZGVyKCgpID0+IHtcbiAgICBpZiAoIXRoaXMuaXNSZW5kZXJlZCgpKSB7XG4gICAgICB0aGlzLm5hdGl2ZUVsZW1lbnRbJ19fYXhDb250ZXh0X18nXSA9IHRoaXM7XG4gICAgICB0aGlzLiNpc1JlbmRlcmVkLnNldCh0cnVlKTtcbiAgICB9XG4gIH0pO1xuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBuYXRpdmUgSFRNTCBlbGVtZW50IG9mIHRoZSBjb21wb25lbnRcbiAgICovXG4gIHB1YmxpYyBnZXQgbmF0aXZlRWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuI2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBob3N0IEhUTUwgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50IChhbGlhcyBmb3IgbmF0aXZlRWxlbWVudClcbiAgICogQHJldHVybnMgVCAtIFRoZSBuYXRpdmUgRE9NIGVsZW1lbnQgYXNzb2NpYXRlZCB3aXRoIHRoaXMgY29tcG9uZW50XG4gICAqL1xuICBwdWJsaWMgZ2V0SG9zdEVsZW1lbnQ8VCA9IEhUTUxFbGVtZW50PigpOiBUIHtcbiAgICByZXR1cm4gdGhpcy4jZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50IGFzIFQ7XG4gIH1cbn1cbiJdfQ==","/**\n * Resolves any CSS `<color>` the browser understands — including\n * `rgb(var(--token))`, `hsl(var(--token))`, `color-mix()`, etc. — to a computed\n * `rgb()` / `rgba()` string, using the cascade from `scopeElement` (e.g. the chart\n * container) so design tokens on ancestors apply.\n */\nexport function resolveCssColorInContext(scopeElement, cssColor) {\n if (typeof window === 'undefined' || typeof document === 'undefined' || !getComputedStyle) {\n return cssColor;\n }\n const input = cssColor?.trim();\n if (!input) {\n return cssColor;\n }\n const probe = document.createElement('span');\n probe.style.cssText =\n 'position:absolute;left:-9999px;top:-9999px;visibility:hidden;pointer-events:none;';\n probe.style.color = input;\n scopeElement.appendChild(probe);\n void probe.offsetHeight;\n const resolved = getComputedStyle(probe).color;\n probe.remove();\n return resolved || cssColor;\n}\n/**\n * Compute edge-aware tooltip position with intelligent placement,\n * considering available space in all directions and preventing overflow.\n */\nexport function computeTooltipPosition(containerRect, tooltipRect, clientX, clientY, gap) {\n const cursorX = clientX - containerRect.left;\n const cursorY = clientY - containerRect.top;\n if (!tooltipRect) {\n return {\n x: Math.min(cursorX + gap, containerRect.width - gap),\n y: Math.max(gap, Math.min(cursorY, containerRect.height - gap)),\n };\n }\n // Calculate available space in each direction\n const spaceRight = containerRect.width - cursorX;\n const spaceLeft = cursorX;\n const spaceBelow = containerRect.height - cursorY;\n const spaceAbove = cursorY;\n // Determine best horizontal position\n let x;\n if (spaceRight >= tooltipRect.width + gap) {\n // Position to the right of cursor\n x = cursorX + gap;\n }\n else if (spaceLeft >= tooltipRect.width + gap) {\n // Position to the left of cursor\n x = cursorX - tooltipRect.width - gap;\n }\n else {\n // Center horizontally if neither side has enough space\n x = Math.max(gap, Math.min((containerRect.width - tooltipRect.width) / 2, containerRect.width - tooltipRect.width - gap));\n }\n // Determine best vertical position\n let y;\n if (spaceBelow >= tooltipRect.height + gap) {\n // Position below cursor\n y = cursorY + gap;\n }\n else if (spaceAbove >= tooltipRect.height + gap) {\n // Position above cursor\n y = cursorY - tooltipRect.height - gap;\n }\n else {\n // Center vertically if neither direction has enough space\n y = Math.max(gap, Math.min((containerRect.height - tooltipRect.height) / 2, containerRect.height - tooltipRect.height - gap));\n }\n // Ensure tooltip stays within container bounds\n x = Math.max(gap, Math.min(x, containerRect.width - tooltipRect.width - gap));\n y = Math.max(gap, Math.min(y, containerRect.height - tooltipRect.height - gap));\n return { x, y };\n}\nexport function mapEasingName(option) {\n switch (option) {\n case 'linear':\n return 'easeLinear';\n case 'ease':\n return 'easePolyInOut';\n case 'ease-in':\n return 'easePolyIn';\n case 'ease-out':\n return 'easePolyOut';\n case 'ease-in-out':\n return 'easePolyInOut';\n case 'cubic':\n return 'easeCubic';\n case 'cubic-in':\n return 'easeCubicIn';\n case 'cubic-out':\n return 'easeCubicOut';\n case 'cubic-in-out':\n return 'easeCubicInOut';\n default:\n return 'easeCubicOut';\n }\n}\n/**\n * Formats large numbers with abbreviations (K, M, B, T)\n */\nexport function formatLargeNumber(value) {\n if (value === 0)\n return '0';\n const absValue = Math.abs(value);\n const sign = value < 0 ? '-' : '';\n if (absValue >= 1e12) {\n return `${sign}${(absValue / 1e12).toFixed(1)}T`;\n }\n if (absValue >= 1e9) {\n return `${sign}${(absValue / 1e9).toFixed(1)}B`;\n }\n if (absValue >= 1e6) {\n return `${sign}${(absValue / 1e6).toFixed(1)}M`;\n }\n if (absValue >= 1e3) {\n return `${sign}${(absValue / 1e3).toFixed(1)}K`;\n }\n return value.toLocaleString();\n}\n/**\n * Returns a D3 easing function for the provided option.\n */\nexport function getEasingFunction(d3, option) {\n const name = mapEasingName(option);\n const easing = d3[name];\n return typeof easing === 'function' ? easing : d3.easeCubicOut;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jaGFydHMvc3JjL2xpYi9jaGFydC11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxZQUF5QixFQUFFLFFBQWdCO0lBQ2xGLElBQUksT0FBTyxNQUFNLEtBQUssV0FBVyxJQUFJLE9BQU8sUUFBUSxLQUFLLFdBQVcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDMUYsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQUNELE1BQU0sS0FBSyxHQUFHLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUMvQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDWCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3QyxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU87UUFDakIsbUZBQW1GLENBQUM7SUFDdEYsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQzFCLFlBQVksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEMsS0FBSyxLQUFLLENBQUMsWUFBWSxDQUFDO0lBQ3hCLE1BQU0sUUFBUSxHQUFHLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUMvQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7SUFFZixPQUFPLFFBQVEsSUFBSSxRQUFRLENBQUM7QUFDOUIsQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQU0sVUFBVSxzQkFBc0IsQ0FDcEMsYUFBc0IsRUFDdEIsV0FBMkIsRUFDM0IsT0FBZSxFQUNmLE9BQWUsRUFDZixHQUFXO0lBRVgsTUFBTSxPQUFPLEdBQUcsT0FBTyxHQUFHLGFBQWEs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QVEsR0FBRyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUNsRCxDQUFDO0lBQ0QsSUFBSSxRQUFRLElBQUksR0FBRyxFQUFFLENBQUM7UUFDcEIsT0FBTyxHQUFHLElBQUksR0FBRyxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUNsRCxDQUFDO0lBQ0QsSUFBSSxRQUFRLElBQUksR0FBRyxFQUFFLENBQUM7UUFDcEIsT0FBTyxHQUFHLElBQUksR0FBRyxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUNsRCxDQUFDO0lBRUQsT0FBTyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7QUFDaEMsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUFDLEVBQXVCLEVBQUUsTUFBZTtJQUN4RSxNQUFNLElBQUksR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbkMsTUFBTSxNQUFNLEdBQUksRUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2pDLE9BQU8sT0FBTyxNQUFNLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFFLEVBQVUsQ0FBQyxZQUFZLENBQUM7QUFDMUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFRvb2x0aXBQb3NpdGlvbiA9IHsgeDogbnVtYmVyOyB5OiBudW1iZXIgfTtcblxuLyoqXG4gKiBSZXNvbHZlcyBhbnkgQ1NTIGA8Y29sb3I+YCB0aGUgYnJvd3NlciB1bmRlcnN0YW5kcyDigJQgaW5jbHVkaW5nXG4gKiBgcmdiKHZhcigtLXRva2VuKSlgLCBgaHNsKHZhcigtLXRva2VuKSlgLCBgY29sb3ItbWl4KClgLCBldGMuIOKAlCB0byBhIGNvbXB1dGVkXG4gKiBgcmdiKClgIC8gYHJnYmEoKWAgc3RyaW5nLCB1c2luZyB0aGUgY2FzY2FkZSBmcm9tIGBzY29wZUVsZW1lbnRgIChlLmcuIHRoZSBjaGFydFxuICogY29udGFpbmVyKSBzbyBkZXNpZ24gdG9rZW5zIG9uIGFuY2VzdG9ycyBhcHBseS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVDc3NDb2xvckluQ29udGV4dChzY29wZUVsZW1lbnQ6IEhUTUxFbGVtZW50LCBjc3NDb2xvcjogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnIHx8IHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcgfHwgIWdldENvbXB1dGVkU3R5bGUpIHtcbiAgICByZXR1cm4gY3NzQ29sb3I7XG4gIH1cbiAgY29uc3QgaW5wdXQgPSBjc3NDb2xvcj8udHJpbSgpO1xuICBpZiAoIWlucHV0KSB7XG4gICAgcmV0dXJuIGNzc0NvbG9yO1xuICB9XG5cbiAgY29uc3QgcHJvYmUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XG4gIHByb2JlLnN0eWxlLmNzc1RleHQgPVxuICAgICdwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi05OTk5cHg7dG9wOi05OTk5cHg7dmlzaWJpbGl0eTpoaWRkZW47cG9pbnRlci1ldmVudHM6bm9uZTsnO1xuICBwcm9iZS5zdHlsZS5jb2xvciA9IGlucHV0O1xuICBzY29wZUVsZW1lbnQuYXBwZW5kQ2hpbGQocHJvYmUpO1xuICB2b2lkIHByb2JlLm9mZnNldEhlaWdodDtcbiAgY29uc3QgcmVzb2x2ZWQgPSBnZXRDb21wdXRlZFN0eWxlKHByb2JlKS5jb2xvcjtcbiAgcHJvYmUucmVtb3ZlKCk7XG5cbiAgcmV0dXJuIHJlc29sdmVkIHx8IGNzc0NvbG9yO1xufVxuXG4vKipcbiAqIENvbXB1dGUgZWRnZS1hd2FyZSB0b29sdGlwIHBvc2l0aW9uIHdpdGggaW50ZWxsaWdlbnQgcGxhY2VtZW50LFxuICogY29uc2lkZXJpbmcgYXZhaWxhYmxlIHNwYWNlIGluIGFsbCBkaXJlY3Rpb25zIGFuZCBwcmV2ZW50aW5nIG92ZXJmbG93LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY29tcHV0ZVRvb2x0aXBQb3NpdGlvbihcbiAgY29udGFpbmVyUmVjdDogRE9NUmVjdCxcbiAgdG9vbHRpcFJlY3Q6IERPTVJlY3QgfCBudWxsLFxuICBjbGllbnRYOiBudW1iZXIsXG4gIGNsaWVudFk6IG51bWJlcixcbiAgZ2FwOiBudW1iZXIsXG4pOiBUb29sdGlwUG9zaXRpb24ge1xuICBjb25zdCBjdXJzb3JYID0gY2xpZW50WCAtIGNvbnRhaW5lclJlY3QubGVmdDtcbiAgY29uc3QgY3Vyc29yWSA9IGNsaWVudFkgLSBjb250YWluZXJSZWN0LnRvcDtcblxuICBpZiAoIXRvb2x0aXBSZWN0KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHg6IE1hdGgubWluKGN1cnNvclggKyBnYXAsIGNvbnRhaW5lclJlY3Qud2lkdGggLSBnYXApLFxuICAgICAgeTogTWF0aC5tYXgoZ2FwLCBNYXRoLm1pbihjdXJzb3JZLCBjb250YWluZXJSZWN0LmhlaWdodCAtIGdhcCkpLFxuICAgIH07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgYXZhaWxhYmxlIHNwYWNlIGluIGVhY2ggZGlyZWN0aW9uXG4gIGNvbnN0IHNwYWNlUmlnaHQgPSBjb250YWluZXJSZWN0LndpZHRoIC0gY3Vyc29yWDtcbiAgY29uc3Qgc3BhY2VMZWZ0ID0gY3Vyc29yWDtcbiAgY29uc3Qgc3BhY2VCZWxvdyA9IGNvbnRhaW5lclJlY3QuaGVpZ2h0IC0gY3Vyc29yWTtcbiAgY29uc3Qgc3BhY2VBYm92ZSA9IGN1cnNvclk7XG5cbiAgLy8gRGV0ZXJtaW5lIGJlc3QgaG9yaXpvbnRhbCBwb3NpdGlvblxuICBsZXQgeDogbnVtYmVyO1xuICBpZiAoc3BhY2VSaWdodCA+PSB0b29sdGlwUmVjdC53aWR0aCArIGdhcCkge1xuICAgIC8vIFBvc2l0aW9uIHRvIHRoZSByaWdodCBvZiBjdXJzb3JcbiAgICB4ID0gY3Vyc29yWCArIGdhcDtcbiAgfSBlbHNlIGlmIChzcGFjZUxlZnQgPj0gdG9vbHRpcFJlY3Qud2lkdGggKyBnYXApIHtcbiAgICAvLyBQb3NpdGlvbiB0byB0aGUgbGVmdCBvZiBjdXJzb3JcbiAgICB4ID0gY3Vyc29yWCAtIHRvb2x0aXBSZWN0LndpZHRoIC0gZ2FwO1xuICB9IGVsc2Uge1xuICAgIC8vIENlbnRlciBob3Jpem9udGFsbHkgaWYgbmVpdGhlciBzaWRlIGhhcyBlbm91Z2ggc3BhY2VcbiAgICB4ID0gTWF0aC5tYXgoXG4gICAgICBnYXAsXG4gICAgICBNYXRoLm1pbigoY29udGFpbmVyUmVjdC53aWR0aCAtIHRvb2x0aXBSZWN0LndpZHRoKSAvIDIsIGNvbnRhaW5lclJlY3Qud2lkdGggLSB0b29sdGlwUmVjdC53aWR0aCAtIGdhcCksXG4gICAgKTtcbiAgfVxuXG4gIC8vIERldGVybWluZSBiZXN0IHZlcnRpY2FsIHBvc2l0aW9uXG4gIGxldCB5OiBudW1iZXI7XG4gIGlmIChzcGFjZUJlbG93ID49IHRvb2x0aXBSZWN0LmhlaWdodCArIGdhcCkge1xuICAgIC8vIFBvc2l0aW9uIGJlbG93IGN1cnNvclxuICAgIHkgPSBjdXJzb3JZICsgZ2FwO1xuICB9IGVsc2UgaWYgKHNwYWNlQWJvdmUgPj0gdG9vbHRpcFJlY3QuaGVpZ2h0ICsgZ2FwKSB7XG4gICAgLy8gUG9zaXRpb24gYWJvdmUgY3Vyc29yXG4gICAgeSA9IGN1cnNvclkgLSB0b29sdGlwUmVjdC5oZWlnaHQgLSBnYXA7XG4gIH0gZWxzZSB7XG4gICAgLy8gQ2VudGVyIHZlcnRpY2FsbHkgaWYgbmVpdGhlciBkaXJlY3Rpb24gaGFzIGVub3VnaCBzcGFjZVxuICAgIHkgPSBNYXRoLm1heChcbiAgICAgIGdhcCxcbiAgICAgIE1hdGgubWluKChjb250YWluZXJSZWN0LmhlaWdodCAtIHRvb2x0aXBSZWN0LmhlaWdodCkgLyAyLCBjb250YWluZXJSZWN0LmhlaWdodCAtIHRvb2x0aXBSZWN0LmhlaWdodCAtIGdhcCksXG4gICAgKTtcbiAgfVxuXG4gIC8vIEVuc3VyZSB0b29sdGlwIHN0YXlzIHdpdGhpbiBjb250YWluZXIgYm91bmRzXG4gIHggPSBNYXRoLm1heChnYXAsIE1hdGgubWluKHgsIGNvbnRhaW5lclJlY3Qud2lkdGggLSB0b29sdGlwUmVjdC53aWR0aCAtIGdhcCkpO1xuICB5ID0gTWF0aC5tYXgoZ2FwLCBNYXRoLm1pbih5LCBjb250YWluZXJSZWN0LmhlaWdodCAtIHRvb2x0aXBSZWN0LmhlaWdodCAtIGdhcCkpO1xuXG4gIHJldHVybiB7IHgsIHkgfTtcbn1cblxuLyoqXG4gKiBNYXAgZWFzaW5nIG9wdGlvbiB0byBkMyBlYXNpbmcgZnVuY3Rpb24gbmFtZSB0aGF0IGNhbGxlcnMgY2FuIGxvb2t1cCBvbiBkMy5cbiAqIEtlZXBzIG1hcHBpbmcgY29uc2lzdGVudCBhY3Jvc3MgY2hhcnRzLlxuICovXG5leHBvcnQgdHlwZSBEM0Vhc2luZ05hbWUgPVxuICB8ICdlYXNlTGluZWFyJ1xuICB8ICdlYXNlUG9seUluT3V0J1xuICB8ICdlYXNlUG9seUluJ1xuICB8ICdlYXNlUG9seU91dCdcbiAgfCAnZWFzZUN1YmljJ1xuICB8ICdlYXNlQ3ViaWNJbidcbiAgfCAnZWFzZUN1YmljT3V0J1xuICB8ICdlYXNlQ3ViaWNJbk91dCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBtYXBFYXNpbmdOYW1lKG9wdGlvbj86IHN0cmluZyk6IEQzRWFzaW5nTmFtZSB7XG4gIHN3aXRjaCAob3B0aW9uKSB7XG4gICAgY2FzZSAnbGluZWFyJzpcbiAgICAgIHJldHVybiAnZWFzZUxpbmVhcic7XG4gICAgY2FzZSAnZWFzZSc6XG4gICAgICByZXR1cm4gJ2Vhc2VQb2x5SW5PdXQnO1xuICAgIGNhc2UgJ2Vhc2UtaW4nOlxuICAgICAgcmV0dXJuICdlYXNlUG9seUluJztcbiAgICBjYXNlICdlYXNlLW91dCc6XG4gICAgICByZXR1cm4gJ2Vhc2VQb2x5T3V0JztcbiAgICBjYXNlICdlYXNlLWluLW91dCc6XG4gICAgICByZXR1cm4gJ2Vhc2VQb2x5SW5PdXQnO1xuICAgIGNhc2UgJ2N1YmljJzpcbiAgICAgIHJldHVybiAnZWFzZUN1YmljJztcbiAgICBjYXNlICdjdWJpYy1pbic6XG4gICAgICByZXR1cm4gJ2Vhc2VDdWJpY0luJztcbiAgICBjYXNlICdjdWJpYy1vdXQnOlxuICAgICAgcmV0dXJuICdlYXNlQ3ViaWNPdXQnO1xuICAgIGNhc2UgJ2N1YmljLWluLW91dCc6XG4gICAgICByZXR1cm4gJ2Vhc2VDdWJpY0luT3V0JztcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuICdlYXNlQ3ViaWNPdXQnO1xuICB9XG59XG5cbi8qKlxuICogRm9ybWF0cyBsYXJnZSBudW1iZXJzIHdpdGggYWJicmV2aWF0aW9ucyAoSywgTSwgQiwgVClcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdExhcmdlTnVtYmVyKHZhbHVlOiBudW1iZXIpOiBzdHJpbmcge1xuICBpZiAodmFsdWUgPT09IDApIHJldHVybiAnMCc7XG5cbiAgY29uc3QgYWJzVmFsdWUgPSBNYXRoLmFicyh2YWx1ZSk7XG4gIGNvbnN0IHNpZ24gPSB2YWx1ZSA8IDAgPyAnLScgOiAnJztcblxuICBpZiAoYWJzVmFsdWUgPj0gMWUxMikge1xuICAgIHJldHVybiBgJHtzaWdufSR7KGFic1ZhbHVlIC8gMWUxMikudG9GaXhlZCgxKX1UYDtcbiAgfVxuICBpZiAoYWJzVmFsdWUgPj0gMWU5KSB7XG4gICAgcmV0dXJuIGAke3NpZ259JHsoYWJzVmFsdWUgLyAxZTkpLnRvRml4ZWQoMSl9QmA7XG4gIH1cbiAgaWYgKGFic1ZhbHVlID49IDFlNikge1xuICAgIHJldHVybiBgJHtzaWdufSR7KGFic1ZhbHVlIC8gMWU2KS50b0ZpeGVkKDEpfU1gO1xuICB9XG4gIGlmIChhYnNWYWx1ZSA+PSAxZTMpIHtcbiAgICByZXR1cm4gYCR7c2lnbn0keyhhYnNWYWx1ZSAvIDFlMykudG9GaXhlZCgxKX1LYDtcbiAgfVxuXG4gIHJldHVybiB2YWx1ZS50b0xvY2FsZVN0cmluZygpO1xufVxuXG4vKipcbiAqIFJldHVybnMgYSBEMyBlYXNpbmcgZnVuY3Rpb24gZm9yIHRoZSBwcm92aWRlZCBvcHRpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRFYXNpbmdGdW5jdGlvbihkMzogdHlwZW9mIGltcG9ydCgnZDMnKSwgb3B0aW9uPzogc3RyaW5nKTogKHQ6IG51bWJlcikgPT4gbnVtYmVyIHtcbiAgY29uc3QgbmFtZSA9IG1hcEVhc2luZ05hbWUob3B0aW9uKTtcbiAgY29uc3QgZWFzaW5nID0gKGQzIGFzIGFueSlbbmFtZV07XG4gIHJldHVybiB0eXBlb2YgZWFzaW5nID09PSAnZnVuY3Rpb24nID8gZWFzaW5nIDogKGQzIGFzIGFueSkuZWFzZUN1YmljT3V0O1xufVxuIl19","export const AX_CHARTS = 'ACOREX_CHARTS';\nexport * from './lib/chart-base.interface';\nexport * from './lib/chart-colors';\nexport * from './lib/chart-component-base';\nexport * from './lib/chart-types';\nexport * from './lib/chart-utils';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jaGFydHMvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxlQUFlLENBQUM7QUFDekMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEFYX0NIQVJUUyA9ICdBQ09SRVhfQ0hBUlRTJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NoYXJ0LWJhc2UuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NoYXJ0LWNvbG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jaGFydC1jb21wb25lbnQtYmFzZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jaGFydC10eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jaGFydC11dGlscyc7XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNoYXJ0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NoYXJ0cy9zcmMvYWNvcmV4LWNoYXJ0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acorex-charts.mjs","sources":["../../../../packages/charts/src/lib/chart-colors.ts","../../../../packages/charts/src/lib/chart-component-base.ts","../../../../packages/charts/src/lib/chart-utils.ts","../../../../packages/charts/src/index.ts","../../../../packages/charts/src/acorex-charts.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\n// Default color palette for charts\nexport const AX_CHART_COLOR_PALETTE = new InjectionToken<string[]>(\n 'AX_CHART_COLOR_PALETTE',\n {\n providedIn: 'root',\n factory: () => [\n '#FF6B6B', // Vibrant Red\n '#4ECDC4', // Electric Teal\n '#45B7D1', // Bright Blue\n '#96CEB4', // Fresh Green\n '#FFEEAD', // Bright Yellow\n '#D4A5A5', // Rose Pink\n '#9B59B6', // Rich Purple\n '#3498DB', // Deep Blue\n '#E67E22', // Bright Orange\n '#2ECC71', // Emerald Green\n '#E74C3C', // Cherry Red\n '#1ABC9C', // Turquoise\n '#F1C40F', // Golden Yellow\n '#8E44AD', // Deep Purple\n '#16A085', // Dark Teal\n\n // --- Extended Colors (new) ---\n '#27AE60', // Forest Green\n '#2980B9', // Strong Blue\n '#F39C12', // Vivid Orange\n '#C0392B', // Dark Red\n '#7D3C98', // Plum Purple\n '#2C3E50', // Midnight Blue\n '#D35400', // Burnt Orange\n '#BDC3C7', // Soft Silver\n '#34495E', // Slate Gray\n '#1F618D', // Royal Blue\n '#58D68D', // Mint Green\n '#5DADE2', // Sky Blue\n '#F1948A', // Soft Coral\n '#A569BD', // Lavender Purple\n '#F8C471', // Warm Gold\n ],\n }\n);\n\n\n/**\n * Helper function to get a color from the palette by index\n * @param index The index of the color to get\n * @param palette The color palette to use\n * @returns The color at the specified index\n */\nexport function getChartColor(index: number, palette: string[]): string {\n return palette[index % palette.length];\n}\n","import { afterNextRender, Directive, ElementRef, inject, signal } from '@angular/core';\n\n/**\n * Base component class for all chart components\n * Copied from @acorex/cdk/common NXComponent to remove external dependency\n */\n@Directive()\nexport abstract class AXChartComponent {\n #elementRef: ElementRef<HTMLElement> = inject(ElementRef);\n #isRendered = signal(false);\n\n protected isRendered = this.#isRendered.asReadonly();\n\n #afterNextRender = afterNextRender(() => {\n if (!this.isRendered()) {\n this.nativeElement['__axContext__'] = this;\n this.#isRendered.set(true);\n }\n });\n\n /**\n * Gets the native HTML element of the component\n */\n public get nativeElement(): HTMLElement {\n return this.#elementRef.nativeElement;\n }\n\n /**\n * Gets the host HTML element of the component (alias for nativeElement)\n * @returns T - The native DOM element associated with this component\n */\n public getHostElement<T = HTMLElement>(): T {\n return this.#elementRef.nativeElement as T;\n }\n}\n","export type TooltipPosition = { x: number; y: number };\n\n/**\n * Resolves any CSS `<color>` the browser understands — including\n * `rgb(var(--token))`, `hsl(var(--token))`, `color-mix()`, etc. — to a computed\n * `rgb()` / `rgba()` string, using the cascade from `scopeElement` (e.g. the chart\n * container) so design tokens on ancestors apply.\n */\nexport function resolveCssColorInContext(scopeElement: HTMLElement, cssColor: string): string {\n if (typeof window === 'undefined' || typeof document === 'undefined' || !getComputedStyle) {\n return cssColor;\n }\n const input = cssColor?.trim();\n if (!input) {\n return cssColor;\n }\n\n const probe = document.createElement('span');\n probe.style.cssText =\n 'position:absolute;left:-9999px;top:-9999px;visibility:hidden;pointer-events:none;';\n probe.style.color = input;\n scopeElement.appendChild(probe);\n void probe.offsetHeight;\n const resolved = getComputedStyle(probe).color;\n probe.remove();\n\n return resolved || cssColor;\n}\n\n/**\n * Compute edge-aware tooltip position with intelligent placement,\n * considering available space in all directions and preventing overflow.\n */\nexport function computeTooltipPosition(\n containerRect: DOMRect,\n tooltipRect: DOMRect | null,\n clientX: number,\n clientY: number,\n gap: number,\n): TooltipPosition {\n const cursorX = clientX - containerRect.left;\n const cursorY = clientY - containerRect.top;\n\n if (!tooltipRect) {\n return {\n x: Math.min(cursorX + gap, containerRect.width - gap),\n y: Math.max(gap, Math.min(cursorY, containerRect.height - gap)),\n };\n }\n\n // Calculate available space in each direction\n const spaceRight = containerRect.width - cursorX;\n const spaceLeft = cursorX;\n const spaceBelow = containerRect.height - cursorY;\n const spaceAbove = cursorY;\n\n // Determine best horizontal position\n let x: number;\n if (spaceRight >= tooltipRect.width + gap) {\n // Position to the right of cursor\n x = cursorX + gap;\n } else if (spaceLeft >= tooltipRect.width + gap) {\n // Position to the left of cursor\n x = cursorX - tooltipRect.width - gap;\n } else {\n // Center horizontally if neither side has enough space\n x = Math.max(\n gap,\n Math.min((containerRect.width - tooltipRect.width) / 2, containerRect.width - tooltipRect.width - gap),\n );\n }\n\n // Determine best vertical position\n let y: number;\n if (spaceBelow >= tooltipRect.height + gap) {\n // Position below cursor\n y = cursorY + gap;\n } else if (spaceAbove >= tooltipRect.height + gap) {\n // Position above cursor\n y = cursorY - tooltipRect.height - gap;\n } else {\n // Center vertically if neither direction has enough space\n y = Math.max(\n gap,\n Math.min((containerRect.height - tooltipRect.height) / 2, containerRect.height - tooltipRect.height - gap),\n );\n }\n\n // Ensure tooltip stays within container bounds\n x = Math.max(gap, Math.min(x, containerRect.width - tooltipRect.width - gap));\n y = Math.max(gap, Math.min(y, containerRect.height - tooltipRect.height - gap));\n\n return { x, y };\n}\n\n/**\n * Map easing option to d3 easing function name that callers can lookup on d3.\n * Keeps mapping consistent across charts.\n */\nexport type D3EasingName =\n | 'easeLinear'\n | 'easePolyInOut'\n | 'easePolyIn'\n | 'easePolyOut'\n | 'easeCubic'\n | 'easeCubicIn'\n | 'easeCubicOut'\n | 'easeCubicInOut';\n\nexport function mapEasingName(option?: string): D3EasingName {\n switch (option) {\n case 'linear':\n return 'easeLinear';\n case 'ease':\n return 'easePolyInOut';\n case 'ease-in':\n return 'easePolyIn';\n case 'ease-out':\n return 'easePolyOut';\n case 'ease-in-out':\n return 'easePolyInOut';\n case 'cubic':\n return 'easeCubic';\n case 'cubic-in':\n return 'easeCubicIn';\n case 'cubic-out':\n return 'easeCubicOut';\n case 'cubic-in-out':\n return 'easeCubicInOut';\n default:\n return 'easeCubicOut';\n }\n}\n\n/**\n * Formats large numbers with abbreviations (K, M, B, T)\n */\nexport function formatLargeNumber(value: number): string {\n if (value === 0) return '0';\n\n const absValue = Math.abs(value);\n const sign = value < 0 ? '-' : '';\n\n if (absValue >= 1e12) {\n return `${sign}${(absValue / 1e12).toFixed(1)}T`;\n }\n if (absValue >= 1e9) {\n return `${sign}${(absValue / 1e9).toFixed(1)}B`;\n }\n if (absValue >= 1e6) {\n return `${sign}${(absValue / 1e6).toFixed(1)}M`;\n }\n if (absValue >= 1e3) {\n return `${sign}${(absValue / 1e3).toFixed(1)}K`;\n }\n\n return value.toLocaleString();\n}\n\n/**\n * Returns a D3 easing function for the provided option.\n */\nexport function getEasingFunction(d3: typeof import('d3'), option?: string): (t: number) => number {\n const name = mapEasingName(option);\n const easing = (d3 as any)[name];\n return typeof easing === 'function' ? easing : (d3 as any).easeCubicOut;\n}\n","export const AX_CHARTS = 'ACOREX_CHARTS';\nexport * from './lib/chart-base.interface';\nexport * from './lib/chart-colors';\nexport * from './lib/chart-component-base';\nexport * from './lib/chart-types';\nexport * from './lib/chart-utils';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAEA;MACa,sBAAsB,GAAG,IAAI,cAAc,CACtD,wBAAwB,EACxB;AACE,IAAA,UAAU,EAAE,MAAM;IAClB,OAAO,EAAE,MAAM;AACb,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;;AAGT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACT,QAAA,SAAS;AACV,KAAA;AACF,CAAA;AAIH;;;;;AAKG;AACG,SAAU,aAAa,CAAC,KAAa,EAAE,OAAiB,EAAA;IAC5D,OAAO,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;AACxC;;ACnDA;;;AAGG;MAEmB,gBAAgB,CAAA;AACpC,IAAA,WAAW,GAA4B,MAAM,CAAC,UAAU,CAAC;AACzD,IAAA,WAAW,GAAG,MAAM,CAAC,KAAK,kFAAC;AAEjB,IAAA,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE;AAEpD,IAAA,gBAAgB,GAAG,eAAe,CAAC,MAAK;AACtC,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE;AACtB,YAAA,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,GAAG,IAAI;AAC1C,YAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;QAC5B;AACF,IAAA,CAAC,CAAC;AAEF;;AAEG;AACH,IAAA,IAAW,aAAa,GAAA;AACtB,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa;IACvC;AAEA;;;AAGG;IACI,cAAc,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,aAAkB;IAC5C;uGA1BoB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBADrC;;;ACJD;;;;;AAKG;AACG,SAAU,wBAAwB,CAAC,YAAyB,EAAE,QAAgB,EAAA;AAClF,IAAA,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,QAAQ,KAAK,WAAW,IAAI,CAAC,gBAAgB,EAAE;AACzF,QAAA,OAAO,QAAQ;IACjB;AACA,IAAA,MAAM,KAAK,GAAG,QAAQ,EAAE,IAAI,EAAE;IAC9B,IAAI,CAAC,KAAK,EAAE;AACV,QAAA,OAAO,QAAQ;IACjB;IAEA,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC;IAC5C,KAAK,CAAC,KAAK,CAAC,OAAO;AACjB,QAAA,mFAAmF;AACrF,IAAA,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK;AACzB,IAAA,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC;IAC/B,KAAK,KAAK,CAAC,YAAY;IACvB,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC,KAAK;IAC9C,KAAK,CAAC,MAAM,EAAE;IAEd,OAAO,QAAQ,IAAI,QAAQ;AAC7B;AAEA;;;AAGG;AACG,SAAU,sBAAsB,CACpC,aAAsB,EACtB,WAA2B,EAC3B,OAAe,EACf,OAAe,EACf,GAAW,EAAA;AAEX,IAAA,MAAM,OAAO,GAAG,OAAO,GAAG,aAAa,CAAC,IAAI;AAC5C,IAAA,MAAM,OAAO,GAAG,OAAO,GAAG,aAAa,CAAC,GAAG;IAE3C,IAAI,CAAC,WAAW,EAAE;QAChB,OAAO;AACL,YAAA,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,GAAG,EAAE,aAAa,CAAC,KAAK,GAAG,GAAG,CAAC;AACrD,YAAA,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;SAChE;IACH;;AAGA,IAAA,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,GAAG,OAAO;IAChD,MAAM,SAAS,GAAG,OAAO;AACzB,IAAA,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,GAAG,OAAO;IACjD,MAAM,UAAU,GAAG,OAAO;;AAG1B,IAAA,IAAI,CAAS;IACb,IAAI,UAAU,IAAI,WAAW,CAAC,KAAK,GAAG,GAAG,EAAE;;AAEzC,QAAA,CAAC,GAAG,OAAO,GAAG,GAAG;IACnB;SAAO,IAAI,SAAS,IAAI,WAAW,CAAC,KAAK,GAAG,GAAG,EAAE;;QAE/C,CAAC,GAAG,OAAO,GAAG,WAAW,CAAC,KAAK,GAAG,GAAG;IACvC;SAAO;;AAEL,QAAA,CAAC,GAAG,IAAI,CAAC,GAAG,CACV,GAAG,EACH,IAAI,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,IAAI,CAAC,EAAE,aAAa,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,GAAG,GAAG,CAAC,CACvG;IACH;;AAGA,IAAA,IAAI,CAAS;IACb,IAAI,UAAU,IAAI,WAAW,CAAC,MAAM,GAAG,GAAG,EAAE;;AAE1C,QAAA,CAAC,GAAG,OAAO,GAAG,GAAG;IACnB;SAAO,IAAI,UAAU,IAAI,WAAW,CAAC,MAAM,GAAG,GAAG,EAAE;;QAEjD,CAAC,GAAG,OAAO,GAAG,WAAW,CAAC,MAAM,GAAG,GAAG;IACxC;SAAO;;AAEL,QAAA,CAAC,GAAG,IAAI,CAAC,GAAG,CACV,GAAG,EACH,IAAI,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,IAAI,CAAC,EAAE,aAAa,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,GAAG,GAAG,CAAC,CAC3G;IACH;;IAGA,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;IAC7E,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;AAE/E,IAAA,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE;AACjB;AAgBM,SAAU,aAAa,CAAC,MAAe,EAAA;IAC3C,QAAQ,MAAM;AACZ,QAAA,KAAK,QAAQ;AACX,YAAA,OAAO,YAAY;AACrB,QAAA,KAAK,MAAM;AACT,YAAA,OAAO,eAAe;AACxB,QAAA,KAAK,SAAS;AACZ,YAAA,OAAO,YAAY;AACrB,QAAA,KAAK,UAAU;AACb,YAAA,OAAO,aAAa;AACtB,QAAA,KAAK,aAAa;AAChB,YAAA,OAAO,eAAe;AACxB,QAAA,KAAK,OAAO;AACV,YAAA,OAAO,WAAW;AACpB,QAAA,KAAK,UAAU;AACb,YAAA,OAAO,aAAa;AACtB,QAAA,KAAK,WAAW;AACd,YAAA,OAAO,cAAc;AACvB,QAAA,KAAK,cAAc;AACjB,YAAA,OAAO,gBAAgB;AACzB,QAAA;AACE,YAAA,OAAO,cAAc;;AAE3B;AAEA;;AAEG;AACG,SAAU,iBAAiB,CAAC,KAAa,EAAA;IAC7C,IAAI,KAAK,KAAK,CAAC;AAAE,QAAA,OAAO,GAAG;IAE3B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;AAChC,IAAA,MAAM,IAAI,GAAG,KAAK,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE;AAEjC,IAAA,IAAI,QAAQ,IAAI,IAAI,EAAE;AACpB,QAAA,OAAO,CAAA,EAAG,IAAI,CAAA,EAAG,CAAC,QAAQ,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG;IAClD;AACA,IAAA,IAAI,QAAQ,IAAI,GAAG,EAAE;AACnB,QAAA,OAAO,CAAA,EAAG,IAAI,CAAA,EAAG,CAAC,QAAQ,GAAG,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG;IACjD;AACA,IAAA,IAAI,QAAQ,IAAI,GAAG,EAAE;AACnB,QAAA,OAAO,CAAA,EAAG,IAAI,CAAA,EAAG,CAAC,QAAQ,GAAG,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG;IACjD;AACA,IAAA,IAAI,QAAQ,IAAI,GAAG,EAAE;AACnB,QAAA,OAAO,CAAA,EAAG,IAAI,CAAA,EAAG,CAAC,QAAQ,GAAG,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG;IACjD;AAEA,IAAA,OAAO,KAAK,CAAC,cAAc,EAAE;AAC/B;AAEA;;AAEG;AACG,SAAU,iBAAiB,CAAC,EAAuB,EAAE,MAAe,EAAA;AACxE,IAAA,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC;AAClC,IAAA,MAAM,MAAM,GAAI,EAAU,CAAC,IAAI,CAAC;AAChC,IAAA,OAAO,OAAO,MAAM,KAAK,UAAU,GAAG,MAAM,GAAI,EAAU,CAAC,YAAY;AACzE;;ACtKO,MAAM,SAAS,GAAG;;ACAzB;;AAEG;;;;"}
|
package/package.json
CHANGED
|
@@ -1,57 +1,58 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@acorex/charts",
|
|
3
|
-
"version": "21.0.2-next.
|
|
3
|
+
"version": "21.0.2-next.34",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"d3": ">=7.9.0"
|
|
6
6
|
},
|
|
7
7
|
"sideEffects": false,
|
|
8
8
|
"module": "fesm2022/acorex-charts.mjs",
|
|
9
|
-
"typings": "
|
|
9
|
+
"typings": "types/acorex-charts.d.ts",
|
|
10
10
|
"exports": {
|
|
11
11
|
"./package.json": {
|
|
12
12
|
"default": "./package.json"
|
|
13
13
|
},
|
|
14
14
|
".": {
|
|
15
|
-
"types": "./
|
|
15
|
+
"types": "./types/acorex-charts.d.ts",
|
|
16
16
|
"default": "./fesm2022/acorex-charts.mjs"
|
|
17
17
|
},
|
|
18
18
|
"./bar-chart": {
|
|
19
|
-
"types": "./bar-chart
|
|
19
|
+
"types": "./types/acorex-charts-bar-chart.d.ts",
|
|
20
20
|
"default": "./fesm2022/acorex-charts-bar-chart.mjs"
|
|
21
21
|
},
|
|
22
22
|
"./chart-legend": {
|
|
23
|
-
"types": "./chart-legend
|
|
23
|
+
"types": "./types/acorex-charts-chart-legend.d.ts",
|
|
24
24
|
"default": "./fesm2022/acorex-charts-chart-legend.mjs"
|
|
25
25
|
},
|
|
26
26
|
"./chart-tooltip": {
|
|
27
|
-
"types": "./chart-tooltip
|
|
27
|
+
"types": "./types/acorex-charts-chart-tooltip.d.ts",
|
|
28
28
|
"default": "./fesm2022/acorex-charts-chart-tooltip.mjs"
|
|
29
29
|
},
|
|
30
30
|
"./donut-chart": {
|
|
31
|
-
"types": "./donut-chart
|
|
31
|
+
"types": "./types/acorex-charts-donut-chart.d.ts",
|
|
32
32
|
"default": "./fesm2022/acorex-charts-donut-chart.mjs"
|
|
33
33
|
},
|
|
34
34
|
"./funnel-chart": {
|
|
35
|
-
"types": "./funnel-chart
|
|
35
|
+
"types": "./types/acorex-charts-funnel-chart.d.ts",
|
|
36
36
|
"default": "./fesm2022/acorex-charts-funnel-chart.mjs"
|
|
37
37
|
},
|
|
38
38
|
"./gauge-chart": {
|
|
39
|
-
"types": "./gauge-chart
|
|
39
|
+
"types": "./types/acorex-charts-gauge-chart.d.ts",
|
|
40
40
|
"default": "./fesm2022/acorex-charts-gauge-chart.mjs"
|
|
41
41
|
},
|
|
42
42
|
"./heatmap-chart": {
|
|
43
|
-
"types": "./heatmap-chart
|
|
43
|
+
"types": "./types/acorex-charts-heatmap-chart.d.ts",
|
|
44
44
|
"default": "./fesm2022/acorex-charts-heatmap-chart.mjs"
|
|
45
45
|
},
|
|
46
46
|
"./hierarchy-chart": {
|
|
47
|
-
"types": "./hierarchy-chart
|
|
47
|
+
"types": "./types/acorex-charts-hierarchy-chart.d.ts",
|
|
48
48
|
"default": "./fesm2022/acorex-charts-hierarchy-chart.mjs"
|
|
49
49
|
},
|
|
50
50
|
"./line-chart": {
|
|
51
|
-
"types": "./line-chart
|
|
51
|
+
"types": "./types/acorex-charts-line-chart.d.ts",
|
|
52
52
|
"default": "./fesm2022/acorex-charts-line-chart.mjs"
|
|
53
53
|
}
|
|
54
54
|
},
|
|
55
|
+
"type": "module",
|
|
55
56
|
"dependencies": {
|
|
56
57
|
"tslib": "^2.3.0"
|
|
57
58
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as _acorex_charts_bar_chart from '@acorex/charts/bar-chart';
|
|
1
2
|
import * as _acorex_charts from '@acorex/charts';
|
|
2
3
|
import { NXNativeEvent, AXAnimationEasing, AXChartComponent, AXChartComponentBase } from '@acorex/charts';
|
|
3
4
|
import * as d3 from 'd3';
|
|
@@ -176,7 +177,7 @@ declare class AXBarChartComponent extends AXChartComponent implements OnDestroy,
|
|
|
176
177
|
animationDuration?: number;
|
|
177
178
|
animationDelay?: number;
|
|
178
179
|
animationEasing?: _acorex_charts.AXAnimationEasing;
|
|
179
|
-
messages?: AXBarChartMessages;
|
|
180
|
+
messages?: _acorex_charts_bar_chart.AXBarChartMessages;
|
|
180
181
|
}>;
|
|
181
182
|
protected effectiveMessages: _angular_core.Signal<{
|
|
182
183
|
noData: string;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as _acorex_charts_donut_chart from '@acorex/charts/donut-chart';
|
|
1
2
|
import * as _acorex_charts from '@acorex/charts';
|
|
2
3
|
import { AXAnimationEasing, AXChartComponent, AXChartComponentBase } from '@acorex/charts';
|
|
3
4
|
import * as d3 from 'd3';
|
|
@@ -165,7 +166,7 @@ declare class AXDonutChartComponent extends AXChartComponent implements OnDestro
|
|
|
165
166
|
cornerRadius?: number;
|
|
166
167
|
animationDuration?: number;
|
|
167
168
|
animationEasing?: _acorex_charts.AXAnimationEasing;
|
|
168
|
-
messages?: AXDonutChartMessages;
|
|
169
|
+
messages?: _acorex_charts_donut_chart.AXDonutChartMessages;
|
|
169
170
|
}>;
|
|
170
171
|
private readonly TOOLTIP_GAP;
|
|
171
172
|
private readonly HIGHLIGHT_TRANSITION_DURATION;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as _acorex_charts_funnel_chart from '@acorex/charts/funnel-chart';
|
|
1
2
|
import * as _acorex_charts from '@acorex/charts';
|
|
2
3
|
import { AXAnimationEasing, AXChartComponent, AXChartComponentBase } from '@acorex/charts';
|
|
3
4
|
import * as d3 from 'd3';
|
|
@@ -110,7 +111,7 @@ declare class AXFunnelChartComponent extends AXChartComponent implements OnDestr
|
|
|
110
111
|
showTooltip?: boolean;
|
|
111
112
|
animationDuration?: number;
|
|
112
113
|
animationEasing?: _acorex_charts.AXAnimationEasing;
|
|
113
|
-
messages?: AXFunnelChartMessages;
|
|
114
|
+
messages?: _acorex_charts_funnel_chart.AXFunnelChartMessages;
|
|
114
115
|
}>;
|
|
115
116
|
constructor();
|
|
116
117
|
ngOnDestroy(): void;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as _acorex_charts_gauge_chart from '@acorex/charts/gauge-chart';
|
|
1
2
|
import * as _acorex_charts from '@acorex/charts';
|
|
2
3
|
import { AXAnimationEasing, AXChartComponent, AXChartComponentBase } from '@acorex/charts';
|
|
3
4
|
import * as d3 from 'd3';
|
|
@@ -132,7 +133,7 @@ declare class AXGaugeChartComponent extends AXChartComponent implements OnDestro
|
|
|
132
133
|
label?: string;
|
|
133
134
|
animationDuration?: number;
|
|
134
135
|
animationEasing?: _acorex_charts.AXAnimationEasing;
|
|
135
|
-
messages?: AXGaugeChartMessages;
|
|
136
|
+
messages?: _acorex_charts_gauge_chart.AXGaugeChartMessages;
|
|
136
137
|
}>;
|
|
137
138
|
private readonly TOOLTIP_GAP;
|
|
138
139
|
private readonly HALF_CIRCLE_RADIANS;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as _acorex_charts_heatmap_chart from '@acorex/charts/heatmap-chart';
|
|
1
2
|
import * as _acorex_charts from '@acorex/charts';
|
|
2
3
|
import { AXAnimationEasing, AXChartComponent } from '@acorex/charts';
|
|
3
4
|
import * as _angular_core from '@angular/core';
|
|
@@ -15,6 +16,19 @@ interface AXHeatmapMessages {
|
|
|
15
16
|
noDataHelp?: string;
|
|
16
17
|
noDataIcon?: string;
|
|
17
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* Heatmap chart options interface
|
|
21
|
+
*
|
|
22
|
+
* Component supports the following CSS custom properties (design tokens):
|
|
23
|
+
* - `--ax-comp-heatmap-chart-labels-color`: Color for axis tick labels.
|
|
24
|
+
* Default: `--ax-sys-color-on-lightest-surface` (applied with 0.7 opacity)
|
|
25
|
+
* - `--ax-comp-heatmap-chart-axis-label-color`: Color for X/Y axis titles.
|
|
26
|
+
* Default: `--ax-sys-color-on-lightest-surface`
|
|
27
|
+
* - `--ax-comp-heatmap-chart-axis-color`: Color for axis lines.
|
|
28
|
+
* Default: `--ax-sys-color-on-lightest-surface`
|
|
29
|
+
* - `--ax-comp-heatmap-chart-bg-color`: Background color for the chart.
|
|
30
|
+
* Default: transparent
|
|
31
|
+
*/
|
|
18
32
|
interface AXHeatmapChartOption {
|
|
19
33
|
width?: number;
|
|
20
34
|
height?: number;
|
|
@@ -70,6 +84,7 @@ declare class AXHeatmapChartComponent extends AXChartComponent implements OnDest
|
|
|
70
84
|
private readonly MAX_LABEL_LENGTH;
|
|
71
85
|
private readonly TICK_AREA_PADDING;
|
|
72
86
|
private readonly X_AXIS_TITLE_GAP;
|
|
87
|
+
private readonly X_AXIS_TITLE_FONT_SIZE;
|
|
73
88
|
private readonly MIN_FONT_SIZE_X_AXIS;
|
|
74
89
|
private readonly MAX_FONT_SIZE_X_AXIS;
|
|
75
90
|
private readonly defaultConfig;
|
|
@@ -116,7 +131,7 @@ declare class AXHeatmapChartComponent extends AXChartComponent implements OnDest
|
|
|
116
131
|
showTooltip?: boolean;
|
|
117
132
|
animationDuration?: number;
|
|
118
133
|
animationEasing?: _acorex_charts.AXAnimationEasing;
|
|
119
|
-
messages?: AXHeatmapMessages;
|
|
134
|
+
messages?: _acorex_charts_heatmap_chart.AXHeatmapMessages;
|
|
120
135
|
}>;
|
|
121
136
|
constructor();
|
|
122
137
|
private init;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import * as _acorex_charts from '@acorex/charts';
|
|
2
2
|
import { NXNativeEvent, AXAnimationEasing, AXChartComponent, AXChartComponentBase } from '@acorex/charts';
|
|
3
|
+
import * as _acorex_charts_hierarchy_chart from '@acorex/charts/hierarchy-chart';
|
|
3
4
|
import * as _angular_core from '@angular/core';
|
|
4
|
-
import { TemplateRef, InjectionToken } from '@angular/core';
|
|
5
|
+
import { OnDestroy, TemplateRef, InjectionToken } from '@angular/core';
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* Represents a node in the hierarchy chart.
|
|
@@ -285,7 +286,7 @@ interface AXHierarchyChartToggleEvent {
|
|
|
285
286
|
*
|
|
286
287
|
* Supports both default node styling and custom node templates.
|
|
287
288
|
*/
|
|
288
|
-
declare class AXHierarchyChartComponent extends AXChartComponent implements AXChartComponentBase {
|
|
289
|
+
declare class AXHierarchyChartComponent extends AXChartComponent implements AXChartComponentBase, OnDestroy {
|
|
289
290
|
private chartContainer;
|
|
290
291
|
customNodeTemplate: _angular_core.Signal<TemplateRef<AXHierarchyChartNodeContext>>;
|
|
291
292
|
private ngZone;
|
|
@@ -298,6 +299,7 @@ declare class AXHierarchyChartComponent extends AXChartComponent implements AXCh
|
|
|
298
299
|
private _dimensions;
|
|
299
300
|
private _nodeElements;
|
|
300
301
|
private _chartData;
|
|
302
|
+
private embeddedViews;
|
|
301
303
|
data: _angular_core.InputSignal<AXHierarchyChartNode | AXHierarchyChartNode[]>;
|
|
302
304
|
options: _angular_core.InputSignal<AXHierarchyChartOption>;
|
|
303
305
|
nodeTemplate: _angular_core.InputSignal<TemplateRef<AXHierarchyChartNodeContext>>;
|
|
@@ -308,7 +310,7 @@ declare class AXHierarchyChartComponent extends AXChartComponent implements AXCh
|
|
|
308
310
|
protected effectiveOptions: _angular_core.Signal<{
|
|
309
311
|
width?: number;
|
|
310
312
|
height?: number;
|
|
311
|
-
margin?: AXHierarchyChartMargin;
|
|
313
|
+
margin?: _acorex_charts_hierarchy_chart.AXHierarchyChartMargin;
|
|
312
314
|
nodeRadius?: number;
|
|
313
315
|
nodeStrokeWidth?: number;
|
|
314
316
|
linkWidth?: number;
|
|
@@ -324,7 +326,7 @@ declare class AXHierarchyChartComponent extends AXChartComponent implements AXCh
|
|
|
324
326
|
className?: string;
|
|
325
327
|
animationDuration?: number;
|
|
326
328
|
animationEasing?: _acorex_charts.AXAnimationEasing;
|
|
327
|
-
messages?: AXHierarchyChartMessages;
|
|
329
|
+
messages?: _acorex_charts_hierarchy_chart.AXHierarchyChartMessages;
|
|
328
330
|
}>;
|
|
329
331
|
protected effectiveMessages: _angular_core.Signal<{
|
|
330
332
|
noData: string;
|
|
@@ -368,6 +370,8 @@ declare class AXHierarchyChartComponent extends AXChartComponent implements AXCh
|
|
|
368
370
|
* Clear existing chart
|
|
369
371
|
*/
|
|
370
372
|
cleanupChart(): void;
|
|
373
|
+
ngOnDestroy(): void;
|
|
374
|
+
private destroyEmbeddedViews;
|
|
371
375
|
updateChart(): void;
|
|
372
376
|
/**
|
|
373
377
|
* Get D3 easing function from string name
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as _acorex_charts_line_chart from '@acorex/charts/line-chart';
|
|
1
2
|
import * as _acorex_charts from '@acorex/charts';
|
|
2
3
|
import { AXAnimationEasing, NXNativeEvent, AXChartComponent, AXChartComponentBase } from '@acorex/charts';
|
|
3
4
|
import * as d3 from 'd3';
|
|
@@ -162,7 +163,7 @@ declare class AXLineChartComponent extends AXChartComponent implements OnInit, A
|
|
|
162
163
|
showCrosshair?: boolean;
|
|
163
164
|
animationDuration?: number;
|
|
164
165
|
animationEasing?: _acorex_charts.AXAnimationEasing;
|
|
165
|
-
messages?: AXLineChartMessages;
|
|
166
|
+
messages?: _acorex_charts_line_chart.AXLineChartMessages;
|
|
166
167
|
}>;
|
|
167
168
|
protected effectiveMessages: _angular_core.Signal<{
|
|
168
169
|
noData: string;
|
|
@@ -262,6 +263,7 @@ declare class AXLineChartComponent extends AXChartComponent implements OnInit, A
|
|
|
262
263
|
private handlePointHover;
|
|
263
264
|
private showCrosshairLines;
|
|
264
265
|
private updateTooltipPosition;
|
|
266
|
+
private scheduleTooltipPosition;
|
|
265
267
|
private handlePointClick;
|
|
266
268
|
private showNoDataMessage;
|
|
267
269
|
private showAllSeriesHiddenMessage;
|
|
File without changes
|
|
File without changes
|
|
File without changes
|