@acorex/charts 21.0.1-next.51 → 21.0.1-next.53
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 +4 -4
- package/fesm2022/acorex-charts-bar-chart.mjs.map +1 -1
- package/fesm2022/acorex-charts-chart-legend.mjs +5 -5
- package/fesm2022/acorex-charts-chart-legend.mjs.map +1 -1
- package/fesm2022/acorex-charts-chart-tooltip.mjs +4 -4
- package/fesm2022/acorex-charts-chart-tooltip.mjs.map +1 -1
- package/fesm2022/acorex-charts-donut-chart.mjs +4 -4
- package/fesm2022/acorex-charts-donut-chart.mjs.map +1 -1
- package/fesm2022/acorex-charts-gauge-chart.mjs +4 -4
- package/fesm2022/acorex-charts-gauge-chart.mjs.map +1 -1
- package/fesm2022/acorex-charts-hierarchy-chart.mjs +4 -4
- package/fesm2022/acorex-charts-hierarchy-chart.mjs.map +1 -1
- package/fesm2022/acorex-charts-line-chart.mjs +4 -4
- package/fesm2022/acorex-charts-line-chart.mjs.map +1 -1
- package/fesm2022/acorex-charts.mjs +3 -3
- package/fesm2022/acorex-charts.mjs.map +1 -1
- package/package.json +12 -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/{gauge-chart/index.d.ts → types/acorex-charts-gauge-chart.d.ts} +2 -1
- package/{hierarchy-chart/index.d.ts → types/acorex-charts-hierarchy-chart.d.ts} +3 -2
- package/{line-chart/index.d.ts → types/acorex-charts-line-chart.d.ts} +2 -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
|
@@ -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.1.3", ngImport: i0, type: AXChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
79
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.3", 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.1.3", 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 * 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jaGFydHMvc3JjL2xpYi9jaGFydC11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsc0JBQXNCLENBQ3BDLGFBQXNCLEVBQ3RCLFdBQTJCLEVBQzNCLE9BQWUsRUFDZixPQUFlLEVBQ2YsR0FBVztJQUVYLE1BQU0sT0FBTyxHQUFHLE9BQU8sR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDO0lBQzdDLE1BQU0sT0FBTyxHQUFHLE9BQU8sR0FBRyxhQUFhLENBQUMsR0FBRyxDQUFDO0lBRTVDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNqQixPQUFPO1lBQ0wsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxHQUFHLEdBQUcsRUFBRSxhQUFhLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQztZQUNyRCxDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsYUFBYSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsQ0FBQztTQUNoRSxDQUFDO0lBQ0osQ0FBQztJQUVELDhDQUE4QztJQUM5QyxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQztJQUNqRCxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUM7SUFDMUIsTUFBTSxVQUFVLEdBQUcsYUFBYSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUM7SUFDbEQsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDO0lBRTNCLHFDQUFxQztJQUNyQyxJQUFJLENBQVMsQ0FBQztJQUNkLElBQUksVUFBVSxJQUFJLFdBQVcsQ0FBQyxLQUFLLEdBQUcsR0FBRyxFQUFFLENBQUM7UUFDMUMsa0NBQWtDO1FBQ2xDLENBQUMsR0FBRyxPQUFPLEdBQUcsR0FB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dCI6WyJleHBvcnQgdHlwZSBUb29sdGlwUG9zaXRpb24gPSB7IHg6IG51bWJlcjsgeTogbnVtYmVyIH07XG5cbi8qKlxuICogQ29tcHV0ZSBlZGdlLWF3YXJlIHRvb2x0aXAgcG9zaXRpb24gd2l0aCBpbnRlbGxpZ2VudCBwbGFjZW1lbnQsXG4gKiBjb25zaWRlcmluZyBhdmFpbGFibGUgc3BhY2UgaW4gYWxsIGRpcmVjdGlvbnMgYW5kIHByZXZlbnRpbmcgb3ZlcmZsb3cuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb21wdXRlVG9vbHRpcFBvc2l0aW9uKFxuICBjb250YWluZXJSZWN0OiBET01SZWN0LFxuICB0b29sdGlwUmVjdDogRE9NUmVjdCB8IG51bGwsXG4gIGNsaWVudFg6IG51bWJlcixcbiAgY2xpZW50WTogbnVtYmVyLFxuICBnYXA6IG51bWJlcixcbik6IFRvb2x0aXBQb3NpdGlvbiB7XG4gIGNvbnN0IGN1cnNvclggPSBjbGllbnRYIC0gY29udGFpbmVyUmVjdC5sZWZ0O1xuICBjb25zdCBjdXJzb3JZID0gY2xpZW50WSAtIGNvbnRhaW5lclJlY3QudG9wO1xuXG4gIGlmICghdG9vbHRpcFJlY3QpIHtcbiAgICByZXR1cm4ge1xuICAgICAgeDogTWF0aC5taW4oY3Vyc29yWCArIGdhcCwgY29udGFpbmVyUmVjdC53aWR0aCAtIGdhcCksXG4gICAgICB5OiBNYXRoLm1heChnYXAsIE1hdGgubWluKGN1cnNvclksIGNvbnRhaW5lclJlY3QuaGVpZ2h0IC0gZ2FwKSksXG4gICAgfTtcbiAgfVxuXG4gIC8vIENhbGN1bGF0ZSBhdmFpbGFibGUgc3BhY2UgaW4gZWFjaCBkaXJlY3Rpb25cbiAgY29uc3Qgc3BhY2VSaWdodCA9IGNvbnRhaW5lclJlY3Qud2lkdGggLSBjdXJzb3JYO1xuICBjb25zdCBzcGFjZUxlZnQgPSBjdXJzb3JYO1xuICBjb25zdCBzcGFjZUJlbG93ID0gY29udGFpbmVyUmVjdC5oZWlnaHQgLSBjdXJzb3JZO1xuICBjb25zdCBzcGFjZUFib3ZlID0gY3Vyc29yWTtcblxuICAvLyBEZXRlcm1pbmUgYmVzdCBob3Jpem9udGFsIHBvc2l0aW9uXG4gIGxldCB4OiBudW1iZXI7XG4gIGlmIChzcGFjZVJpZ2h0ID49IHRvb2x0aXBSZWN0LndpZHRoICsgZ2FwKSB7XG4gICAgLy8gUG9zaXRpb24gdG8gdGhlIHJpZ2h0IG9mIGN1cnNvclxuICAgIHggPSBjdXJzb3JYICsgZ2FwO1xuICB9IGVsc2UgaWYgKHNwYWNlTGVmdCA+PSB0b29sdGlwUmVjdC53aWR0aCArIGdhcCkge1xuICAgIC8vIFBvc2l0aW9uIHRvIHRoZSBsZWZ0IG9mIGN1cnNvclxuICAgIHggPSBjdXJzb3JYIC0gdG9vbHRpcFJlY3Qud2lkdGggLSBnYXA7XG4gIH0gZWxzZSB7XG4gICAgLy8gQ2VudGVyIGhvcml6b250YWxseSBpZiBuZWl0aGVyIHNpZGUgaGFzIGVub3VnaCBzcGFjZVxuICAgIHggPSBNYXRoLm1heChcbiAgICAgIGdhcCxcbiAgICAgIE1hdGgubWluKChjb250YWluZXJSZWN0LndpZHRoIC0gdG9vbHRpcFJlY3Qud2lkdGgpIC8gMiwgY29udGFpbmVyUmVjdC53aWR0aCAtIHRvb2x0aXBSZWN0LndpZHRoIC0gZ2FwKSxcbiAgICApO1xuICB9XG5cbiAgLy8gRGV0ZXJtaW5lIGJlc3QgdmVydGljYWwgcG9zaXRpb25cbiAgbGV0IHk6IG51bWJlcjtcbiAgaWYgKHNwYWNlQmVsb3cgPj0gdG9vbHRpcFJlY3QuaGVpZ2h0ICsgZ2FwKSB7XG4gICAgLy8gUG9zaXRpb24gYmVsb3cgY3Vyc29yXG4gICAgeSA9IGN1cnNvclkgKyBnYXA7XG4gIH0gZWxzZSBpZiAoc3BhY2VBYm92ZSA+PSB0b29sdGlwUmVjdC5oZWlnaHQgKyBnYXApIHtcbiAgICAvLyBQb3NpdGlvbiBhYm92ZSBjdXJzb3JcbiAgICB5ID0gY3Vyc29yWSAtIHRvb2x0aXBSZWN0LmhlaWdodCAtIGdhcDtcbiAgfSBlbHNlIHtcbiAgICAvLyBDZW50ZXIgdmVydGljYWxseSBpZiBuZWl0aGVyIGRpcmVjdGlvbiBoYXMgZW5vdWdoIHNwYWNlXG4gICAgeSA9IE1hdGgubWF4KFxuICAgICAgZ2FwLFxuICAgICAgTWF0aC5taW4oKGNvbnRhaW5lclJlY3QuaGVpZ2h0IC0gdG9vbHRpcFJlY3QuaGVpZ2h0KSAvIDIsIGNvbnRhaW5lclJlY3QuaGVpZ2h0IC0gdG9vbHRpcFJlY3QuaGVpZ2h0IC0gZ2FwKSxcbiAgICApO1xuICB9XG5cbiAgLy8gRW5zdXJlIHRvb2x0aXAgc3RheXMgd2l0aGluIGNvbnRhaW5lciBib3VuZHNcbiAgeCA9IE1hdGgubWF4KGdhcCwgTWF0aC5taW4oeCwgY29udGFpbmVyUmVjdC53aWR0aCAtIHRvb2x0aXBSZWN0LndpZHRoIC0gZ2FwKSk7XG4gIHkgPSBNYXRoLm1heChnYXAsIE1hdGgubWluKHksIGNvbnRhaW5lclJlY3QuaGVpZ2h0IC0gdG9vbHRpcFJlY3QuaGVpZ2h0IC0gZ2FwKSk7XG5cbiAgcmV0dXJuIHsgeCwgeSB9O1xufVxuXG4vKipcbiAqIE1hcCBlYXNpbmcgb3B0aW9uIHRvIGQzIGVhc2luZyBmdW5jdGlvbiBuYW1lIHRoYXQgY2FsbGVycyBjYW4gbG9va3VwIG9uIGQzLlxuICogS2VlcHMgbWFwcGluZyBjb25zaXN0ZW50IGFjcm9zcyBjaGFydHMuXG4gKi9cbmV4cG9ydCB0eXBlIEQzRWFzaW5nTmFtZSA9XG4gIHwgJ2Vhc2VMaW5lYXInXG4gIHwgJ2Vhc2VQb2x5SW5PdXQnXG4gIHwgJ2Vhc2VQb2x5SW4nXG4gIHwgJ2Vhc2VQb2x5T3V0J1xuICB8ICdlYXNlQ3ViaWMnXG4gIHwgJ2Vhc2VDdWJpY0luJ1xuICB8ICdlYXNlQ3ViaWNPdXQnXG4gIHwgJ2Vhc2VDdWJpY0luT3V0JztcblxuZXhwb3J0IGZ1bmN0aW9uIG1hcEVhc2luZ05hbWUob3B0aW9uPzogc3RyaW5nKTogRDNFYXNpbmdOYW1lIHtcbiAgc3dpdGNoIChvcHRpb24pIHtcbiAgICBjYXNlICdsaW5lYXInOlxuICAgICAgcmV0dXJuICdlYXNlTGluZWFyJztcbiAgICBjYXNlICdlYXNlJzpcbiAgICAgIHJldHVybiAnZWFzZVBvbHlJbk91dCc7XG4gICAgY2FzZSAnZWFzZS1pbic6XG4gICAgICByZXR1cm4gJ2Vhc2VQb2x5SW4nO1xuICAgIGNhc2UgJ2Vhc2Utb3V0JzpcbiAgICAgIHJldHVybiAnZWFzZVBvbHlPdXQnO1xuICAgIGNhc2UgJ2Vhc2UtaW4tb3V0JzpcbiAgICAgIHJldHVybiAnZWFzZVBvbHlJbk91dCc7XG4gICAgY2FzZSAnY3ViaWMnOlxuICAgICAgcmV0dXJuICdlYXNlQ3ViaWMnO1xuICAgIGNhc2UgJ2N1YmljLWluJzpcbiAgICAgIHJldHVybiAnZWFzZUN1YmljSW4nO1xuICAgIGNhc2UgJ2N1YmljLW91dCc6XG4gICAgICByZXR1cm4gJ2Vhc2VDdWJpY091dCc7XG4gICAgY2FzZSAnY3ViaWMtaW4tb3V0JzpcbiAgICAgIHJldHVybiAnZWFzZUN1YmljSW5PdXQnO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gJ2Vhc2VDdWJpY091dCc7XG4gIH1cbn1cblxuLyoqXG4gKiBGb3JtYXRzIGxhcmdlIG51bWJlcnMgd2l0aCBhYmJyZXZpYXRpb25zIChLLCBNLCBCLCBUKVxuICovXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0TGFyZ2VOdW1iZXIodmFsdWU6IG51bWJlcik6IHN0cmluZyB7XG4gIGlmICh2YWx1ZSA9PT0gMCkgcmV0dXJuICcwJztcblxuICBjb25zdCBhYnNWYWx1ZSA9IE1hdGguYWJzKHZhbHVlKTtcbiAgY29uc3Qgc2lnbiA9IHZhbHVlIDwgMCA/ICctJyA6ICcnO1xuXG4gIGlmIChhYnNWYWx1ZSA+PSAxZTEyKSB7XG4gICAgcmV0dXJuIGAke3NpZ259JHsoYWJzVmFsdWUgLyAxZTEyKS50b0ZpeGVkKDEpfVRgO1xuICB9XG4gIGlmIChhYnNWYWx1ZSA+PSAxZTkpIHtcbiAgICByZXR1cm4gYCR7c2lnbn0keyhhYnNWYWx1ZSAvIDFlOSkudG9GaXhlZCgxKX1CYDtcbiAgfVxuICBpZiAoYWJzVmFsdWUgPj0gMWU2KSB7XG4gICAgcmV0dXJuIGAke3NpZ259JHsoYWJzVmFsdWUgLyAxZTYpLnRvRml4ZWQoMSl9TWA7XG4gIH1cbiAgaWYgKGFic1ZhbHVlID49IDFlMykge1xuICAgIHJldHVybiBgJHtzaWdufSR7KGFic1ZhbHVlIC8gMWUzKS50b0ZpeGVkKDEpfUtgO1xuICB9XG5cbiAgcmV0dXJuIHZhbHVlLnRvTG9jYWxlU3RyaW5nKCk7XG59XG5cbi8qKlxuICogUmV0dXJucyBhIEQzIGVhc2luZyBmdW5jdGlvbiBmb3IgdGhlIHByb3ZpZGVkIG9wdGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEVhc2luZ0Z1bmN0aW9uKGQzOiB0eXBlb2YgaW1wb3J0KCdkMycpLCBvcHRpb24/OiBzdHJpbmcpOiAodDogbnVtYmVyKSA9PiBudW1iZXIge1xuICBjb25zdCBuYW1lID0gbWFwRWFzaW5nTmFtZShvcHRpb24pO1xuICBjb25zdCBlYXNpbmcgPSAoZDMgYXMgYW55KVtuYW1lXTtcbiAgcmV0dXJuIHR5cGVvZiBlYXNpbmcgPT09ICdmdW5jdGlvbicgPyBlYXNpbmcgOiAoZDMgYXMgYW55KS5lYXNlQ3ViaWNPdXQ7XG59XG4iXX0=","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 * 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":"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"}
|
package/package.json
CHANGED
|
@@ -1,48 +1,48 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@acorex/charts",
|
|
3
|
-
"version": "21.0.1-next.
|
|
3
|
+
"version": "21.0.1-next.53",
|
|
4
4
|
"peerDependencies": {
|
|
5
|
-
"@angular/common": ">=
|
|
6
|
-
"@angular/core": ">=
|
|
5
|
+
"@angular/common": ">=21.0.0",
|
|
6
|
+
"@angular/core": ">=21.0.0",
|
|
7
7
|
"d3": ">=7.9.0"
|
|
8
8
|
},
|
|
9
9
|
"sideEffects": false,
|
|
10
10
|
"module": "fesm2022/acorex-charts.mjs",
|
|
11
|
-
"typings": "
|
|
11
|
+
"typings": "types/acorex-charts.d.ts",
|
|
12
12
|
"exports": {
|
|
13
13
|
"./package.json": {
|
|
14
14
|
"default": "./package.json"
|
|
15
15
|
},
|
|
16
16
|
".": {
|
|
17
|
-
"types": "./
|
|
17
|
+
"types": "./types/acorex-charts.d.ts",
|
|
18
18
|
"default": "./fesm2022/acorex-charts.mjs"
|
|
19
19
|
},
|
|
20
20
|
"./bar-chart": {
|
|
21
|
-
"types": "./bar-chart
|
|
21
|
+
"types": "./types/acorex-charts-bar-chart.d.ts",
|
|
22
22
|
"default": "./fesm2022/acorex-charts-bar-chart.mjs"
|
|
23
23
|
},
|
|
24
24
|
"./chart-legend": {
|
|
25
|
-
"types": "./chart-legend
|
|
25
|
+
"types": "./types/acorex-charts-chart-legend.d.ts",
|
|
26
26
|
"default": "./fesm2022/acorex-charts-chart-legend.mjs"
|
|
27
27
|
},
|
|
28
28
|
"./chart-tooltip": {
|
|
29
|
-
"types": "./chart-tooltip
|
|
29
|
+
"types": "./types/acorex-charts-chart-tooltip.d.ts",
|
|
30
30
|
"default": "./fesm2022/acorex-charts-chart-tooltip.mjs"
|
|
31
31
|
},
|
|
32
32
|
"./donut-chart": {
|
|
33
|
-
"types": "./donut-chart
|
|
33
|
+
"types": "./types/acorex-charts-donut-chart.d.ts",
|
|
34
34
|
"default": "./fesm2022/acorex-charts-donut-chart.mjs"
|
|
35
35
|
},
|
|
36
36
|
"./gauge-chart": {
|
|
37
|
-
"types": "./gauge-chart
|
|
37
|
+
"types": "./types/acorex-charts-gauge-chart.d.ts",
|
|
38
38
|
"default": "./fesm2022/acorex-charts-gauge-chart.mjs"
|
|
39
39
|
},
|
|
40
40
|
"./hierarchy-chart": {
|
|
41
|
-
"types": "./hierarchy-chart
|
|
41
|
+
"types": "./types/acorex-charts-hierarchy-chart.d.ts",
|
|
42
42
|
"default": "./fesm2022/acorex-charts-hierarchy-chart.mjs"
|
|
43
43
|
},
|
|
44
44
|
"./line-chart": {
|
|
45
|
-
"types": "./line-chart
|
|
45
|
+
"types": "./types/acorex-charts-line-chart.d.ts",
|
|
46
46
|
"default": "./fesm2022/acorex-charts-line-chart.mjs"
|
|
47
47
|
}
|
|
48
48
|
},
|
|
@@ -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';
|
|
@@ -174,7 +175,7 @@ declare class AXBarChartComponent extends AXChartComponent implements OnDestroy,
|
|
|
174
175
|
animationDuration?: number;
|
|
175
176
|
animationDelay?: number;
|
|
176
177
|
animationEasing?: _acorex_charts.AXAnimationEasing;
|
|
177
|
-
messages?: AXBarChartMessages;
|
|
178
|
+
messages?: _acorex_charts_bar_chart.AXBarChartMessages;
|
|
178
179
|
}>;
|
|
179
180
|
protected effectiveMessages: _angular_core.Signal<{
|
|
180
181
|
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_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,5 +1,6 @@
|
|
|
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
5
|
import { TemplateRef, InjectionToken } from '@angular/core';
|
|
5
6
|
|
|
@@ -308,7 +309,7 @@ declare class AXHierarchyChartComponent extends AXChartComponent implements AXCh
|
|
|
308
309
|
protected effectiveOptions: _angular_core.Signal<{
|
|
309
310
|
width?: number;
|
|
310
311
|
height?: number;
|
|
311
|
-
margin?: AXHierarchyChartMargin;
|
|
312
|
+
margin?: _acorex_charts_hierarchy_chart.AXHierarchyChartMargin;
|
|
312
313
|
nodeRadius?: number;
|
|
313
314
|
nodeStrokeWidth?: number;
|
|
314
315
|
linkWidth?: number;
|
|
@@ -324,7 +325,7 @@ declare class AXHierarchyChartComponent extends AXChartComponent implements AXCh
|
|
|
324
325
|
className?: string;
|
|
325
326
|
animationDuration?: number;
|
|
326
327
|
animationEasing?: _acorex_charts.AXAnimationEasing;
|
|
327
|
-
messages?: AXHierarchyChartMessages;
|
|
328
|
+
messages?: _acorex_charts_hierarchy_chart.AXHierarchyChartMessages;
|
|
328
329
|
}>;
|
|
329
330
|
protected effectiveMessages: _angular_core.Signal<{
|
|
330
331
|
noData: string;
|
|
@@ -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;
|
|
File without changes
|
|
File without changes
|
|
File without changes
|