@primeui/chart-core 1.0.0-beta.1 → 1.0.0-rc.1

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/LICENSE.md ADDED
@@ -0,0 +1,35 @@
1
+ # PrimeUI Pro License
2
+
3
+ This package is a **PrimeUI Pro** component by PrimeTek Informatics — an advanced, framework-independent UI component.
4
+
5
+ PrimeUI Pro components are commercial software. They are not available under the MIT license or a free Community license. A valid commercial license is required.
6
+
7
+ ## How PrimeUI Pro May Be Used
8
+
9
+ This component may be used under either of the following:
10
+
11
+ ### Standalone Commercial License
12
+
13
+ Purchased individually, licensed per developer, perpetual, with one year of updates. The component is framework-independent and may be used with any UI library, including PrimeNG, PrimeReact, PrimeVue, or others.
14
+
15
+ ### Included with PrimeUI Commercial Suite
16
+
17
+ PrimeUI Commercial Suite license holders receive access to all PrimeUI Pro components released within their update period at no additional cost.
18
+
19
+ ## License Key
20
+
21
+ A valid license key is required to use this software. License verification is performed offline, with no telemetry and no remote connection. A missing, invalid, or expired key may cause the software to display a license notice.
22
+
23
+ ## Full Terms
24
+
25
+ The complete license terms, pricing, and renewal information are available at:
26
+
27
+ **https://primeui.dev/licenses/commercial**
28
+
29
+ ## Restrictions
30
+
31
+ This software is distributed as a compiled package. You may not reverse-engineer, decompile, or extract its source code, redistribute it as a component library or development tool, or remove its license mechanisms. Redistributing the component so that third parties can develop with it requires a separate OEM License. See the full terms for details.
32
+
33
+ ---
34
+
35
+ © 2026 PrimeTek Informatics. All rights reserved.
package/README.md CHANGED
@@ -1 +1,13 @@
1
1
  # PrimeUI Chart Core
2
+
3
+ `@primeui/chart-core` is the framework-agnostic chart API for PrimeUI. It provides the shared rendering engine, data model, and configuration API consumed by framework-specific chart packages.
4
+
5
+ ## Install
6
+
7
+ ```bash
8
+ pnpm add @primeui/chart-core
9
+ ```
10
+
11
+ ## License
12
+
13
+ Licensed under the [PrimeUI Pro License](https://primeui.dev/licenses/commercial) - Copyright (c) [PrimeTek Informatics](https://www.primetek.com.tr)
@@ -3,7 +3,7 @@ export { computeCrosshairLayout, normalizeCrosshairConfig } from '../chunks/chun
3
3
  import '../chunks/chunk-FSWYYRPX.mjs';
4
4
  export { barFindAllNearest, barFindNearest, barHitTest } from '../chunks/chunk-TW3KLJVO.mjs';
5
5
  import '../chunks/chunk-ZZCVDIU5.mjs';
6
- import '../chunks/chunk-BYAAMQBN.mjs';
6
+ import '../chunks/chunk-72M66Y2U.mjs';
7
7
  import '../chunks/chunk-P2LG7GDM.mjs';
8
8
  import '../chunks/chunk-7LZWQVTL.mjs';
9
9
  export { candlestickFindAllNearest, candlestickHitTest } from '../chunks/chunk-AZPJMIZE.mjs';
@@ -28,7 +28,7 @@ import '../chunks/chunk-7I2SNJ2X.mjs';
28
28
  import '../chunks/chunk-HBTCRORW.mjs';
29
29
  import '../chunks/chunk-XMSAUIVL.mjs';
30
30
  import '../chunks/chunk-FQAFGPW6.mjs';
31
- import '../chunks/chunk-LJ6BXF3H.mjs';
31
+ import '../chunks/chunk-FYVMRQFF.mjs';
32
32
  import '../chunks/chunk-RJ3ZOZTS.mjs';
33
33
  import '../chunks/chunk-UF2TPGQB.mjs';
34
34
  import '../chunks/chunk-DWBJKYLH.mjs';
@@ -1,4 +1,4 @@
1
- import { getCategoryLabelAnchor } from './chunk-LJ6BXF3H.mjs';
1
+ import { getCategoryLabelAnchor } from './chunk-FYVMRQFF.mjs';
2
2
  import { resolveBandGeometry, buildWedgePath, buildCircleSvgPath, buildPolygonPath, resolveLineGeometry } from './chunk-CFA2SUBF.mjs';
3
3
  import { safeFormat } from './chunk-DIJFKY6H.mjs';
4
4
  import { formatCompactValue, measureFontMetrics, svgAnchorToCanvasAlign, formatTooltipValue } from './chunk-56MASQS2.mjs';
@@ -11,7 +11,7 @@ import { createSvgGroup, setAttr, adjustBrightness, createSvgDefs, appendChild,
11
11
  import { calculateNiceDomain, generateNiceTicks, toRad } from './chunk-K7AGQTVK.mjs';
12
12
 
13
13
  // src/renderers/radar.layout.ts
14
- function calculateRadarLayout(datasets, chartArea, globalFont, sharedCategories, sharedDomain, perAxisDomains, referenceBoundaryValues, perSpokeDomains, tickCount) {
14
+ function calculateRadarLayout(datasets, chartArea, globalFont, sharedCategories, sharedDomain, perAxisDomains, referenceBoundaryValues, perSpokeDomains, tickCount, showCategoryLabels = true) {
15
15
  const categories = sharedCategories ?? extractCategories(datasets);
16
16
  const categoryCount = categories.length;
17
17
  const angleStep = categoryCount > 0 ? 360 / categoryCount : 0;
@@ -56,7 +56,7 @@ function calculateRadarLayout(datasets, chartArea, globalFont, sharedCategories,
56
56
  const resolvedLabelFontSize = resolveFontSize(DEFAULT_RADIAL_LABEL_FONT_SIZE, globalFont);
57
57
  const resolvedFontFamily = resolveFontFamily(void 0, globalFont);
58
58
  const labelPadding = measureText("Xg", resolvedLabelFontSize).height;
59
- const labelMargins = calculateLabelMargins(categories, angleStep, labelPadding, resolvedLabelFontSize);
59
+ const labelMargins = showCategoryLabels ? calculateLabelMargins(categories, angleStep, labelPadding, resolvedLabelFontSize) : { top: 0, right: 0, bottom: 0, left: 0 };
60
60
  const adjustedArea = {
61
61
  x: chartArea.x + labelMargins.left,
62
62
  y: chartArea.y + labelMargins.top,
@@ -673,7 +673,7 @@ function resolveBorderProps(props, item, index, value, category, seriesIndex, se
673
673
  if (!borderColor && !borderStrokeWidth && !borderRadius && !borderDash && borderDashOffset === void 0 && !hoverColor && !hoverBorderColor && opacity === void 0) return {};
674
674
  return { borderColor, borderStrokeWidth, borderRadius, borderDash, borderDashOffset, hoverColor, hoverBorderColor, opacity };
675
675
  }
676
- function calculatePolarLayout(datasets, chartArea, stackConfig, globalFont, sharedCategories, sharedDomain) {
676
+ function calculatePolarLayout(datasets, chartArea, stackConfig, globalFont, sharedCategories, sharedDomain, showCategoryLabels = true) {
677
677
  const categories = sharedCategories ?? extractCategories(datasets);
678
678
  const categoryCount = categories.length;
679
679
  const angleStep = categoryCount > 0 ? 360 / categoryCount : 0;
@@ -748,7 +748,7 @@ function calculatePolarLayout(datasets, chartArea, stackConfig, globalFont, shar
748
748
  const resolvedLabelFontSize = resolveFontSize(DEFAULT_RADIAL_LABEL_FONT_SIZE, globalFont);
749
749
  const resolvedFontFamily = resolveFontFamily(void 0, globalFont);
750
750
  const labelPadding = measureText("Xg", resolvedLabelFontSize).height;
751
- const labelMargins = calculateLabelMargins(categories, angleStep, labelPadding, resolvedLabelFontSize);
751
+ const labelMargins = showCategoryLabels ? calculateLabelMargins(categories, angleStep, labelPadding, resolvedLabelFontSize) : { top: 0, right: 0, bottom: 0, left: 0 };
752
752
  const adjustedArea = {
753
753
  x: chartArea.x + labelMargins.left,
754
754
  y: chartArea.y + labelMargins.top,
@@ -1,4 +1,4 @@
1
- import { calculatePolarLayout, hitTestPolar } from './chunk-LJ6BXF3H.mjs';
1
+ import { calculatePolarLayout, hitTestPolar } from './chunk-FYVMRQFF.mjs';
2
2
  import { resolveSharedRadialGrid } from './chunk-CFA2SUBF.mjs';
3
3
  import { resolvePolarLabels } from './chunk-RH3OQ2VX.mjs';
4
4
  import { renderResolvedLabels } from './chunk-G3DYNMWT.mjs';
@@ -67,7 +67,7 @@ var PolarRendererController = class {
67
67
  update(input) {
68
68
  this.lastInput = input;
69
69
  this.svgGroup = input.svgGroup ?? null;
70
- const { datasets, datasetVisibility, chartArea, features, globalFont, sharedContext, yAxes } = input;
70
+ const { datasets, datasetVisibility, chartArea, features, globalFont, sharedContext, xAxes, yAxes } = input;
71
71
  this._hasPolarDatasets = Array.from(datasets.values()).some((ds) => ds.type === "polar");
72
72
  if (!this._hasPolarDatasets) {
73
73
  this._layout = null;
@@ -133,8 +133,10 @@ var PolarRendererController = class {
133
133
  if (isStacked) {
134
134
  stackConfig = { mode: stackingFeature?.mode === "percent" ? "percent" : "normal" };
135
135
  }
136
+ const defaultXAxis = xAxes ? Array.from(xAxes.values())[0] : void 0;
137
+ const xAxisProps = defaultXAxis?.props;
136
138
  const targetLayout = {
137
- ...calculatePolarLayout(polarEntries, chartArea, stackConfig, globalFont, sharedContext?.categories, sharedContext?.domain),
139
+ ...calculatePolarLayout(polarEntries, chartArea, stackConfig, globalFont, sharedContext?.categories, sharedContext?.domain, xAxisProps?.showLabels !== false),
138
140
  datasetIndex: 0
139
141
  };
140
142
  this._layout = targetLayout;
@@ -6,7 +6,7 @@ import { buildColorIndexMap, isGradientColor, resolveSwatchColor, getPrimaryColo
6
6
  import { calculateNiceDomain, generateNiceTicks, toRad } from './chunk-K7AGQTVK.mjs';
7
7
 
8
8
  // src/series/radar/geometry.ts
9
- function calculateRadarLayout(datasets, chartArea, globalFont, sharedCategories, sharedDomain, perAxisDomains, referenceBoundaryValues, perSpokeDomains, tickCount) {
9
+ function calculateRadarLayout(datasets, chartArea, globalFont, sharedCategories, sharedDomain, perAxisDomains, referenceBoundaryValues, perSpokeDomains, tickCount, showCategoryLabels = true) {
10
10
  const categories = sharedCategories ?? extractCategories(datasets);
11
11
  const categoryCount = categories.length;
12
12
  const angleStep = categoryCount > 0 ? 360 / categoryCount : 0;
@@ -51,7 +51,7 @@ function calculateRadarLayout(datasets, chartArea, globalFont, sharedCategories,
51
51
  const resolvedLabelFontSize = resolveFontSize(DEFAULT_RADIAL_LABEL_FONT_SIZE, globalFont);
52
52
  const resolvedFontFamily = resolveFontFamily(void 0, globalFont);
53
53
  const labelPadding = measureText("Xg", resolvedLabelFontSize).height;
54
- const labelMargins = calculateLabelMargins(categories, angleStep, labelPadding, resolvedLabelFontSize);
54
+ const labelMargins = showCategoryLabels ? calculateLabelMargins(categories, angleStep, labelPadding, resolvedLabelFontSize) : { top: 0, right: 0, bottom: 0, left: 0 };
55
55
  const adjustedArea = {
56
56
  x: chartArea.x + labelMargins.left,
57
57
  y: chartArea.y + labelMargins.top,
@@ -1,6 +1,6 @@
1
1
  import { resolveSharedRadialGrid } from './chunk-CFA2SUBF.mjs';
2
2
  import { resolveRadarLabels } from './chunk-RH3OQ2VX.mjs';
3
- import { calculateRadarLayout, hitTestRadar } from './chunk-3CUSPV47.mjs';
3
+ import { calculateRadarLayout, hitTestRadar } from './chunk-NUHW3U7G.mjs';
4
4
  import { renderResolvedLabels } from './chunk-G3DYNMWT.mjs';
5
5
  import { AnimatedScene, resolveAnimatedProps, RADAR_ANIMATABLE_PROPS } from './chunk-JS47MSB2.mjs';
6
6
  import { renderCustomMarkersCanvas } from './chunk-AC5EAWIP.mjs';
@@ -565,7 +565,7 @@ var RadarRendererController = class {
565
565
  update(input) {
566
566
  this.lastInput = input;
567
567
  this.svgGroup = input.svgGroup ?? null;
568
- const { datasets, datasetVisibility, chartArea, features, globalFont, sharedContext, yAxes } = input;
568
+ const { datasets, datasetVisibility, chartArea, features, globalFont, sharedContext, xAxes, yAxes } = input;
569
569
  this._hasRadarDatasets = Array.from(datasets.values()).some((ds) => ds.type === "radar");
570
570
  if (!this._hasRadarDatasets) {
571
571
  this._fullReset();
@@ -613,9 +613,11 @@ var RadarRendererController = class {
613
613
  if (lp.y != null) referenceBoundaryValues.push(lp.y);
614
614
  }
615
615
  }
616
+ const defaultXAxis = xAxes ? Array.from(xAxes.values())[0] : void 0;
617
+ const xAxisProps = defaultXAxis?.props;
616
618
  const defaultYAxis = yAxes ? Array.from(yAxes.values()).find((a) => !a.props.category) : void 0;
617
619
  const yAxisProps = defaultYAxis?.props;
618
- const baseLayout = calculateRadarLayout(radarEntries, chartArea, globalFont, sharedContext?.categories, sharedContext?.domain, perAxisDomains, referenceBoundaryValues, perSpokeDomains, yAxisProps?.tickCount);
620
+ const baseLayout = calculateRadarLayout(radarEntries, chartArea, globalFont, sharedContext?.categories, sharedContext?.domain, perAxisDomains, referenceBoundaryValues, perSpokeDomains, yAxisProps?.tickCount, xAxisProps?.showLabels !== false);
619
621
  if (yAxisProps) {
620
622
  const g = baseLayout.grid;
621
623
  if (yAxisProps.gridShape) g.shape = yAxisProps.gridShape;
@@ -8,7 +8,7 @@ import '../chunks/chunk-FSWYYRPX.mjs';
8
8
  export { BarRendererController } from '../chunks/chunk-DORUY7GR.mjs';
9
9
  import '../chunks/chunk-TW3KLJVO.mjs';
10
10
  import '../chunks/chunk-ZZCVDIU5.mjs';
11
- import '../chunks/chunk-BYAAMQBN.mjs';
11
+ import '../chunks/chunk-72M66Y2U.mjs';
12
12
  import '../chunks/chunk-P2LG7GDM.mjs';
13
13
  import '../chunks/chunk-7LZWQVTL.mjs';
14
14
  import '../chunks/chunk-OWVSSQZ4.mjs';
@@ -37,17 +37,17 @@ import '../chunks/chunk-7I2SNJ2X.mjs';
37
37
  import '../chunks/chunk-HBTCRORW.mjs';
38
38
  import '../chunks/chunk-XMSAUIVL.mjs';
39
39
  import '../chunks/chunk-FQAFGPW6.mjs';
40
- export { PolarRendererController } from '../chunks/chunk-SY7LVXIW.mjs';
41
- import '../chunks/chunk-LJ6BXF3H.mjs';
40
+ export { PolarRendererController } from '../chunks/chunk-M5PZVFY5.mjs';
41
+ import '../chunks/chunk-FYVMRQFF.mjs';
42
42
  import '../chunks/chunk-RJ3ZOZTS.mjs';
43
43
  import '../chunks/chunk-UF2TPGQB.mjs';
44
44
  import '../chunks/chunk-DWBJKYLH.mjs';
45
45
  import '../chunks/chunk-ARVMVGWS.mjs';
46
46
  import '../chunks/chunk-4S3FOFCN.mjs';
47
- export { RadarRendererController } from '../chunks/chunk-DOC4YOCD.mjs';
47
+ export { RadarRendererController } from '../chunks/chunk-RXQ22JQS.mjs';
48
48
  import '../chunks/chunk-CFA2SUBF.mjs';
49
49
  import '../chunks/chunk-RH3OQ2VX.mjs';
50
- import '../chunks/chunk-3CUSPV47.mjs';
50
+ import '../chunks/chunk-NUHW3U7G.mjs';
51
51
  export { TreemapRendererController } from '../chunks/chunk-A5YBHYIS.mjs';
52
52
  import '../chunks/chunk-AWMO5TS3.mjs';
53
53
  import '../chunks/chunk-GAQLLQUM.mjs';
package/dist/index.d.mts CHANGED
@@ -20,7 +20,7 @@ export { resolvePolarLabels, resolveRadarLabels } from './radial/index.mjs';
20
20
  export { calculateAxisLayout, calculateAxisSpace, renderAxisCanvas, renderAxisSvg } from './renderers/axis/index.mjs';
21
21
  export { barRenderer, computeBarVisualLayout } from './series/bar/index.mjs';
22
22
  export { calculateCandlestickLayout, candlestickRenderer } from './series/candlestick/index.mjs';
23
- export { b as buildRadialGridLayout, a as buildTooltipContent, c as calculateRadarLayout, d as computeRadialComboContext, e as computeTooltipPosition, h as hitTestRadar, r as redrawRadialCanvas, f as renderCartesianFrame, g as renderCartesianOverlay, i as renderRadarSeriesCanvas, j as renderRadarSeriesSvg, k as renderRadialGridCanvas, l as renderRadialGridSvg, m as renderResolvedLabels, n as resolveSharedRadialGrid } from './tooltip.renderer-DZfza6xV.mjs';
23
+ export { b as buildRadialGridLayout, a as buildTooltipContent, c as calculateRadarLayout, d as computeRadialComboContext, e as computeTooltipPosition, h as hitTestRadar, r as redrawRadialCanvas, f as renderCartesianFrame, g as renderCartesianOverlay, i as renderRadarSeriesCanvas, j as renderRadarSeriesSvg, k as renderRadialGridCanvas, l as renderRadialGridSvg, m as renderResolvedLabels, n as resolveSharedRadialGrid } from './tooltip.renderer-C3z-UKm4.mjs';
24
24
  export { buildPieSvgChildren, updatePieCustomContent } from './series/pie/svg/index.mjs';
25
25
  export { renderCanvasCustomContent, renderCanvasDataLabels, renderCanvasSlices } from './series/pie/canvas/index.mjs';
26
26
  export { calculateHeatmapLayout, heatmapRenderer, hitTestHeatmap } from './series/heatmap/index.mjs';
package/dist/index.mjs CHANGED
@@ -8,7 +8,7 @@ export { AnimatedPropertyStore, AnimationRegistry, AxisTransitionState, CanvasCo
8
8
  export { BarRendererController } from './chunks/chunk-DORUY7GR.mjs';
9
9
  export { barFindAllNearest, barFindNearest, barHitTest } from './chunks/chunk-TW3KLJVO.mjs';
10
10
  export { animatableBarToComputedBar } from './chunks/chunk-ZZCVDIU5.mjs';
11
- export { buildTooltipContent, computeTooltipPosition, redrawRadialCanvas, renderRadialGridCanvas, renderRadialGridSvg } from './chunks/chunk-BYAAMQBN.mjs';
11
+ export { buildTooltipContent, computeTooltipPosition, redrawRadialCanvas, renderRadialGridCanvas, renderRadialGridSvg } from './chunks/chunk-72M66Y2U.mjs';
12
12
  export { renderNavigatorCanvas } from './chunks/chunk-P2LG7GDM.mjs';
13
13
  export { GRIP_LINE_GAP, HANDLE_WIDTH, NAV_DEFAULTS, buildNavigatorPaths, calculateNavigatorLayout, computeNavigatorJump, computeNavigatorJumpY, computeNavigatorPan, computeNavigatorPanY, computeNavigatorResizeBottom, computeNavigatorResizeLeft, computeNavigatorResizeRight, computeNavigatorResizeTop, computeNavigatorSelection, computeNavigatorTicks, createNavigatorScales, extractNavigatorData, hitTestNavigator, resolveNavigatorConfig } from './chunks/chunk-7LZWQVTL.mjs';
14
14
  import './chunks/chunk-OWVSSQZ4.mjs';
@@ -37,17 +37,17 @@ export { applyTipExtension, buildDualRangeFillPaths, buildFillPath, buildLinePat
37
37
  import './chunks/chunk-HBTCRORW.mjs';
38
38
  import './chunks/chunk-XMSAUIVL.mjs';
39
39
  export { renderPolarBarsSvg } from './chunks/chunk-FQAFGPW6.mjs';
40
- export { PolarRendererController } from './chunks/chunk-SY7LVXIW.mjs';
41
- export { calculatePolarLayout, calculateRadarLayout, computeRadialComboContext, hitTestPolar, hitTestRadar, renderRadarSeriesCanvas, renderRadarSeriesSvg } from './chunks/chunk-LJ6BXF3H.mjs';
40
+ export { PolarRendererController } from './chunks/chunk-M5PZVFY5.mjs';
41
+ export { calculatePolarLayout, calculateRadarLayout, computeRadialComboContext, hitTestPolar, hitTestRadar, renderRadarSeriesCanvas, renderRadarSeriesSvg } from './chunks/chunk-FYVMRQFF.mjs';
42
42
  export { renderPolarBarsCanvas } from './chunks/chunk-RJ3ZOZTS.mjs';
43
43
  export { calculatePieLayout } from './chunks/chunk-UF2TPGQB.mjs';
44
44
  export { buildPieSvgChildren, updatePieCustomContent } from './chunks/chunk-DWBJKYLH.mjs';
45
45
  import './chunks/chunk-ARVMVGWS.mjs';
46
46
  export { findSliceAtPoint, isFullCircle } from './chunks/chunk-4S3FOFCN.mjs';
47
- export { RadarRendererController } from './chunks/chunk-DOC4YOCD.mjs';
47
+ export { RadarRendererController } from './chunks/chunk-RXQ22JQS.mjs';
48
48
  export { buildRadialGridLayout, resolveSharedRadialGrid } from './chunks/chunk-CFA2SUBF.mjs';
49
49
  export { resolvePolarLabels, resolveRadarLabels } from './chunks/chunk-RH3OQ2VX.mjs';
50
- import './chunks/chunk-3CUSPV47.mjs';
50
+ import './chunks/chunk-NUHW3U7G.mjs';
51
51
  export { TreemapRendererController } from './chunks/chunk-A5YBHYIS.mjs';
52
52
  export { computeDrillOutOrigin, computeZoomTransform } from './chunks/chunk-AWMO5TS3.mjs';
53
53
  export { scatterRenderer } from './chunks/chunk-GAQLLQUM.mjs';
@@ -1,7 +1,7 @@
1
1
  export { calculateAxisLayout, calculateAxisSpace, renderAxisCanvas, renderAxisSvg } from './axis/index.mjs';
2
2
  export { barRenderer, calculateBarLayout, computeBarDatasetTotals, computeBarLabelPosition, computeBarRenderStates, computeBarVisualLayout, hitTestBar } from '../series/bar/index.mjs';
3
3
  export { calculateCandlestickLayout, candlestickRenderer, findNearestCandleIndex, hitTestCandlestick } from '../series/candlestick/index.mjs';
4
- export { T as TooltipPosition, o as TooltipPositionInput, p as TooltipPositionStyle, b as buildRadialGridLayout, a as buildTooltipContent, q as calculateLabelMargins, c as calculateRadarLayout, d as computeRadialComboContext, e as computeTooltipPosition, s as extractCategories, t as getCategoryLabelAnchor, h as hitTestRadar, r as redrawRadialCanvas, f as renderCartesianFrame, g as renderCartesianOverlay, i as renderRadarSeriesCanvas, j as renderRadarSeriesSvg, k as renderRadialGridCanvas, l as renderRadialGridSvg, m as renderResolvedLabels, n as resolveSharedRadialGrid, u as resolveValues } from '../tooltip.renderer-DZfza6xV.mjs';
4
+ export { T as TooltipPosition, o as TooltipPositionInput, p as TooltipPositionStyle, b as buildRadialGridLayout, a as buildTooltipContent, q as calculateLabelMargins, c as calculateRadarLayout, d as computeRadialComboContext, e as computeTooltipPosition, s as extractCategories, t as getCategoryLabelAnchor, h as hitTestRadar, r as redrawRadialCanvas, f as renderCartesianFrame, g as renderCartesianOverlay, i as renderRadarSeriesCanvas, j as renderRadarSeriesSvg, k as renderRadialGridCanvas, l as renderRadialGridSvg, m as renderResolvedLabels, n as resolveSharedRadialGrid, u as resolveValues } from '../tooltip.renderer-C3z-UKm4.mjs';
5
5
  export { buildPieSvgChildren, updatePieCustomContent } from '../series/pie/svg/index.mjs';
6
6
  export { renderCanvasCustomContent, renderCanvasDataLabels, renderCanvasSlices } from '../series/pie/canvas/index.mjs';
7
7
  export { calculateHeatmapLayout, heatmapRenderer, hitTestHeatmap } from '../series/heatmap/index.mjs';
@@ -1,4 +1,4 @@
1
- export { buildTooltipContent, computeTooltipPosition, redrawRadialCanvas, renderRadialGridCanvas, renderRadialGridSvg } from '../chunks/chunk-BYAAMQBN.mjs';
1
+ export { buildTooltipContent, computeTooltipPosition, redrawRadialCanvas, renderRadialGridCanvas, renderRadialGridSvg } from '../chunks/chunk-72M66Y2U.mjs';
2
2
  export { renderNavigatorCanvas } from '../chunks/chunk-P2LG7GDM.mjs';
3
3
  export { GRIP_LINE_GAP, HANDLE_WIDTH, MIN_SELECTION_WIDTH, NAV_DEFAULTS, NAV_PADDING_Y, buildNavigatorPaths, calculateNavigatorLayout, computeNavigatorJump, computeNavigatorJumpY, computeNavigatorPan, computeNavigatorPanY, computeNavigatorResizeBottom, computeNavigatorResizeLeft, computeNavigatorResizeRight, computeNavigatorResizeTop, computeNavigatorSelection, computeNavigatorTicks, createNavigatorScales, extractNavigatorData, hitTestNavigator, resolveNavigatorConfig } from '../chunks/chunk-7LZWQVTL.mjs';
4
4
  export { calculateCandlestickLayout, candlestickRenderer, findNearestCandleIndex, hitTestCandlestick } from '../chunks/chunk-HWT6UEYE.mjs';
@@ -18,7 +18,7 @@ export { applyTipExtension, buildDualRangeFillPaths, buildFillPath, buildLinePat
18
18
  import '../chunks/chunk-HBTCRORW.mjs';
19
19
  import '../chunks/chunk-XMSAUIVL.mjs';
20
20
  export { renderPolarBarsSvg } from '../chunks/chunk-FQAFGPW6.mjs';
21
- export { calculateLabelMargins, calculatePolarLayout, calculateRadarLayout, computeRadialComboContext, extractCategories, getCategoryLabelAnchor, hitTestPolar, hitTestRadar, renderRadarSeriesCanvas, renderRadarSeriesSvg, resolveValues } from '../chunks/chunk-LJ6BXF3H.mjs';
21
+ export { calculateLabelMargins, calculatePolarLayout, calculateRadarLayout, computeRadialComboContext, extractCategories, getCategoryLabelAnchor, hitTestPolar, hitTestRadar, renderRadarSeriesCanvas, renderRadarSeriesSvg, resolveValues } from '../chunks/chunk-FYVMRQFF.mjs';
22
22
  export { renderPolarBarsCanvas } from '../chunks/chunk-RJ3ZOZTS.mjs';
23
23
  export { applyRingLayoutToProps, calculateMultiRingLayout, calculatePieLayout, computeSliceRenderStates, hitTestPie } from '../chunks/chunk-UF2TPGQB.mjs';
24
24
  export { buildPieSvgChildren, updatePieCustomContent } from '../chunks/chunk-DWBJKYLH.mjs';
@@ -8,7 +8,7 @@ import '../../../chunks/chunk-FSWYYRPX.mjs';
8
8
  import '../../../chunks/chunk-DORUY7GR.mjs';
9
9
  import '../../../chunks/chunk-TW3KLJVO.mjs';
10
10
  import '../../../chunks/chunk-ZZCVDIU5.mjs';
11
- import '../../../chunks/chunk-BYAAMQBN.mjs';
11
+ import '../../../chunks/chunk-72M66Y2U.mjs';
12
12
  import '../../../chunks/chunk-P2LG7GDM.mjs';
13
13
  import '../../../chunks/chunk-7LZWQVTL.mjs';
14
14
  import '../../../chunks/chunk-OWVSSQZ4.mjs';
@@ -37,17 +37,17 @@ import '../../../chunks/chunk-7I2SNJ2X.mjs';
37
37
  import '../../../chunks/chunk-HBTCRORW.mjs';
38
38
  import '../../../chunks/chunk-XMSAUIVL.mjs';
39
39
  import '../../../chunks/chunk-FQAFGPW6.mjs';
40
- import '../../../chunks/chunk-SY7LVXIW.mjs';
41
- import '../../../chunks/chunk-LJ6BXF3H.mjs';
40
+ import '../../../chunks/chunk-M5PZVFY5.mjs';
41
+ import '../../../chunks/chunk-FYVMRQFF.mjs';
42
42
  import '../../../chunks/chunk-RJ3ZOZTS.mjs';
43
43
  import '../../../chunks/chunk-UF2TPGQB.mjs';
44
44
  import '../../../chunks/chunk-DWBJKYLH.mjs';
45
45
  import '../../../chunks/chunk-ARVMVGWS.mjs';
46
46
  import '../../../chunks/chunk-4S3FOFCN.mjs';
47
- import '../../../chunks/chunk-DOC4YOCD.mjs';
47
+ import '../../../chunks/chunk-RXQ22JQS.mjs';
48
48
  import '../../../chunks/chunk-CFA2SUBF.mjs';
49
49
  import '../../../chunks/chunk-RH3OQ2VX.mjs';
50
- import '../../../chunks/chunk-3CUSPV47.mjs';
50
+ import '../../../chunks/chunk-NUHW3U7G.mjs';
51
51
  import '../../../chunks/chunk-A5YBHYIS.mjs';
52
52
  import '../../../chunks/chunk-AWMO5TS3.mjs';
53
53
  import '../../../chunks/chunk-GAQLLQUM.mjs';
@@ -8,7 +8,7 @@ import '../../../chunks/chunk-FSWYYRPX.mjs';
8
8
  import '../../../chunks/chunk-DORUY7GR.mjs';
9
9
  import '../../../chunks/chunk-TW3KLJVO.mjs';
10
10
  import '../../../chunks/chunk-ZZCVDIU5.mjs';
11
- import '../../../chunks/chunk-BYAAMQBN.mjs';
11
+ import '../../../chunks/chunk-72M66Y2U.mjs';
12
12
  import '../../../chunks/chunk-P2LG7GDM.mjs';
13
13
  import '../../../chunks/chunk-7LZWQVTL.mjs';
14
14
  import '../../../chunks/chunk-OWVSSQZ4.mjs';
@@ -37,17 +37,17 @@ import '../../../chunks/chunk-7I2SNJ2X.mjs';
37
37
  import '../../../chunks/chunk-HBTCRORW.mjs';
38
38
  import '../../../chunks/chunk-XMSAUIVL.mjs';
39
39
  import '../../../chunks/chunk-FQAFGPW6.mjs';
40
- import '../../../chunks/chunk-SY7LVXIW.mjs';
41
- import '../../../chunks/chunk-LJ6BXF3H.mjs';
40
+ import '../../../chunks/chunk-M5PZVFY5.mjs';
41
+ import '../../../chunks/chunk-FYVMRQFF.mjs';
42
42
  import '../../../chunks/chunk-RJ3ZOZTS.mjs';
43
43
  import '../../../chunks/chunk-UF2TPGQB.mjs';
44
44
  import '../../../chunks/chunk-DWBJKYLH.mjs';
45
45
  import '../../../chunks/chunk-ARVMVGWS.mjs';
46
46
  import '../../../chunks/chunk-4S3FOFCN.mjs';
47
- import '../../../chunks/chunk-DOC4YOCD.mjs';
47
+ import '../../../chunks/chunk-RXQ22JQS.mjs';
48
48
  import '../../../chunks/chunk-CFA2SUBF.mjs';
49
49
  import '../../../chunks/chunk-RH3OQ2VX.mjs';
50
- import '../../../chunks/chunk-3CUSPV47.mjs';
50
+ import '../../../chunks/chunk-NUHW3U7G.mjs';
51
51
  import '../../../chunks/chunk-A5YBHYIS.mjs';
52
52
  import '../../../chunks/chunk-AWMO5TS3.mjs';
53
53
  import '../../../chunks/chunk-GAQLLQUM.mjs';
@@ -8,7 +8,7 @@ import '../../../chunks/chunk-FSWYYRPX.mjs';
8
8
  import '../../../chunks/chunk-DORUY7GR.mjs';
9
9
  import '../../../chunks/chunk-TW3KLJVO.mjs';
10
10
  import '../../../chunks/chunk-ZZCVDIU5.mjs';
11
- import '../../../chunks/chunk-BYAAMQBN.mjs';
11
+ import '../../../chunks/chunk-72M66Y2U.mjs';
12
12
  import '../../../chunks/chunk-P2LG7GDM.mjs';
13
13
  import '../../../chunks/chunk-7LZWQVTL.mjs';
14
14
  import '../../../chunks/chunk-OWVSSQZ4.mjs';
@@ -37,17 +37,17 @@ import '../../../chunks/chunk-7I2SNJ2X.mjs';
37
37
  import '../../../chunks/chunk-HBTCRORW.mjs';
38
38
  import '../../../chunks/chunk-XMSAUIVL.mjs';
39
39
  import '../../../chunks/chunk-FQAFGPW6.mjs';
40
- import '../../../chunks/chunk-SY7LVXIW.mjs';
41
- import '../../../chunks/chunk-LJ6BXF3H.mjs';
40
+ import '../../../chunks/chunk-M5PZVFY5.mjs';
41
+ import '../../../chunks/chunk-FYVMRQFF.mjs';
42
42
  import '../../../chunks/chunk-RJ3ZOZTS.mjs';
43
43
  import '../../../chunks/chunk-UF2TPGQB.mjs';
44
44
  import { updatePieCustomContent, buildPieSvgChildren } from '../../../chunks/chunk-DWBJKYLH.mjs';
45
45
  import '../../../chunks/chunk-ARVMVGWS.mjs';
46
46
  import '../../../chunks/chunk-4S3FOFCN.mjs';
47
- import '../../../chunks/chunk-DOC4YOCD.mjs';
47
+ import '../../../chunks/chunk-RXQ22JQS.mjs';
48
48
  import '../../../chunks/chunk-CFA2SUBF.mjs';
49
49
  import '../../../chunks/chunk-RH3OQ2VX.mjs';
50
- import '../../../chunks/chunk-3CUSPV47.mjs';
50
+ import '../../../chunks/chunk-NUHW3U7G.mjs';
51
51
  import '../../../chunks/chunk-A5YBHYIS.mjs';
52
52
  import '../../../chunks/chunk-AWMO5TS3.mjs';
53
53
  import '../../../chunks/chunk-GAQLLQUM.mjs';
@@ -1,5 +1,5 @@
1
- export { PolarRendererController } from '../../../chunks/chunk-SY7LVXIW.mjs';
2
- import '../../../chunks/chunk-LJ6BXF3H.mjs';
1
+ export { PolarRendererController } from '../../../chunks/chunk-M5PZVFY5.mjs';
2
+ import '../../../chunks/chunk-FYVMRQFF.mjs';
3
3
  import '../../../chunks/chunk-4S3FOFCN.mjs';
4
4
  import '../../../chunks/chunk-CFA2SUBF.mjs';
5
5
  import '../../../chunks/chunk-RH3OQ2VX.mjs';
@@ -1,5 +1,5 @@
1
- import { PolarRendererController } from '../../../chunks/chunk-SY7LVXIW.mjs';
2
- import '../../../chunks/chunk-LJ6BXF3H.mjs';
1
+ import { PolarRendererController } from '../../../chunks/chunk-M5PZVFY5.mjs';
2
+ import '../../../chunks/chunk-FYVMRQFF.mjs';
3
3
  import { renderPolarBarsCanvas } from '../../../chunks/chunk-RJ3ZOZTS.mjs';
4
4
  import '../../../chunks/chunk-4S3FOFCN.mjs';
5
5
  import '../../../chunks/chunk-CFA2SUBF.mjs';
@@ -1,6 +1,6 @@
1
1
  import { renderPolarBarsSvg } from '../../../chunks/chunk-FQAFGPW6.mjs';
2
- import { PolarRendererController } from '../../../chunks/chunk-SY7LVXIW.mjs';
3
- import '../../../chunks/chunk-LJ6BXF3H.mjs';
2
+ import { PolarRendererController } from '../../../chunks/chunk-M5PZVFY5.mjs';
3
+ import '../../../chunks/chunk-FYVMRQFF.mjs';
4
4
  import '../../../chunks/chunk-4S3FOFCN.mjs';
5
5
  import '../../../chunks/chunk-CFA2SUBF.mjs';
6
6
  import '../../../chunks/chunk-RH3OQ2VX.mjs';
@@ -15,7 +15,7 @@ export { renderPolarBarsCanvas } from './canvas/index.mjs';
15
15
  * - Grouped (no stackId): subdivide sector by dataset count
16
16
  * - Stacked (shared stackId): bars stack radially outward
17
17
  */
18
- declare function calculatePolarLayout(datasets: PolarDatasetEntry[], chartArea: BoxArea, stackConfig?: PolarStackConfig, globalFont?: GlobalFont, sharedCategories?: string[], sharedDomain?: [number, number]): Omit<PolarRenderData, 'datasetIndex'>;
18
+ declare function calculatePolarLayout(datasets: PolarDatasetEntry[], chartArea: BoxArea, stackConfig?: PolarStackConfig, globalFont?: GlobalFont, sharedCategories?: string[], sharedDomain?: [number, number], showCategoryLabels?: boolean): Omit<PolarRenderData, 'datasetIndex'>;
19
19
  /**
20
20
  * Find which polar bar contains the given point.
21
21
  * Iterates in reverse for z-order (last drawn = top = checked first).
@@ -1,6 +1,6 @@
1
1
  import '../../chunks/chunk-XMSAUIVL.mjs';
2
2
  export { renderPolarBarsSvg } from '../../chunks/chunk-FQAFGPW6.mjs';
3
- export { calculatePolarLayout, hitTestPolar } from '../../chunks/chunk-LJ6BXF3H.mjs';
3
+ export { calculatePolarLayout, hitTestPolar } from '../../chunks/chunk-FYVMRQFF.mjs';
4
4
  export { renderPolarBarsCanvas } from '../../chunks/chunk-RJ3ZOZTS.mjs';
5
5
  import '../../chunks/chunk-4S3FOFCN.mjs';
6
6
  import '../../chunks/chunk-QIYJUZ7I.mjs';
@@ -1,7 +1,7 @@
1
- export { RadarRendererController } from '../../../chunks/chunk-DOC4YOCD.mjs';
1
+ export { RadarRendererController } from '../../../chunks/chunk-RXQ22JQS.mjs';
2
2
  import '../../../chunks/chunk-CFA2SUBF.mjs';
3
3
  import '../../../chunks/chunk-RH3OQ2VX.mjs';
4
- import '../../../chunks/chunk-3CUSPV47.mjs';
4
+ import '../../../chunks/chunk-NUHW3U7G.mjs';
5
5
  import '../../../chunks/chunk-G3DYNMWT.mjs';
6
6
  import '../../../chunks/chunk-7IKKWWRT.mjs';
7
7
  import '../../../chunks/chunk-LBNP5PJA.mjs';
@@ -1,8 +1,8 @@
1
1
  import { renderRadarSeriesCanvas } from '../../../chunks/chunk-XPZTRMU2.mjs';
2
- import { RadarRendererController } from '../../../chunks/chunk-DOC4YOCD.mjs';
2
+ import { RadarRendererController } from '../../../chunks/chunk-RXQ22JQS.mjs';
3
3
  import '../../../chunks/chunk-CFA2SUBF.mjs';
4
4
  import '../../../chunks/chunk-RH3OQ2VX.mjs';
5
- import '../../../chunks/chunk-3CUSPV47.mjs';
5
+ import '../../../chunks/chunk-NUHW3U7G.mjs';
6
6
  import '../../../chunks/chunk-G3DYNMWT.mjs';
7
7
  import '../../../chunks/chunk-7IKKWWRT.mjs';
8
8
  import '../../../chunks/chunk-LBNP5PJA.mjs';
@@ -1,8 +1,8 @@
1
1
  import { renderRadarSeriesSvg } from '../../../chunks/chunk-FNMLVZOA.mjs';
2
- import { RadarRendererController } from '../../../chunks/chunk-DOC4YOCD.mjs';
2
+ import { RadarRendererController } from '../../../chunks/chunk-RXQ22JQS.mjs';
3
3
  import '../../../chunks/chunk-CFA2SUBF.mjs';
4
4
  import '../../../chunks/chunk-RH3OQ2VX.mjs';
5
- import '../../../chunks/chunk-3CUSPV47.mjs';
5
+ import '../../../chunks/chunk-NUHW3U7G.mjs';
6
6
  import '../../../chunks/chunk-G3DYNMWT.mjs';
7
7
  import '../../../chunks/chunk-7IKKWWRT.mjs';
8
8
  import '../../../chunks/chunk-LBNP5PJA.mjs';
@@ -3,7 +3,7 @@ export { renderRadarSeriesSvg } from './svg/index.mjs';
3
3
  export { renderRadarSeriesCanvas } from './canvas/index.mjs';
4
4
 
5
5
  /** Calculate radar layout — categories, domain, angles, point coordinates, grid levels. */
6
- declare function calculateRadarLayout(datasets: RadarDatasetEntry[], chartArea: BoxArea, globalFont?: GlobalFont, sharedCategories?: string[], sharedDomain?: [number, number], perAxisDomains?: Map<string, [number, number]>, referenceBoundaryValues?: number[], perSpokeDomains?: Map<number, [number, number]>, tickCount?: number): Omit<RadarRenderData, 'datasetIndex'>;
6
+ declare function calculateRadarLayout(datasets: RadarDatasetEntry[], chartArea: BoxArea, globalFont?: GlobalFont, sharedCategories?: string[], sharedDomain?: [number, number], perAxisDomains?: Map<string, [number, number]>, referenceBoundaryValues?: number[], perSpokeDomains?: Map<number, [number, number]>, tickCount?: number, showCategoryLabels?: boolean): Omit<RadarRenderData, 'datasetIndex'>;
7
7
  /** Hit test radar points — nearest point at (x,y) or null. */
8
8
  declare function hitTestRadar(x: number, y: number, layout: RadarRenderData, theme: Required<ChartTheme>): StandardHitTestResult | null;
9
9
  /**
@@ -1,6 +1,6 @@
1
1
  export { renderRadarSeriesSvg } from '../../chunks/chunk-FNMLVZOA.mjs';
2
2
  export { renderRadarSeriesCanvas } from '../../chunks/chunk-XPZTRMU2.mjs';
3
- export { calculateLabelMargins, calculateRadarLayout, computeRadialComboContext, extractCategories, getCategoryLabelAnchor, hitTestRadar, resolveValues } from '../../chunks/chunk-3CUSPV47.mjs';
3
+ export { calculateLabelMargins, calculateRadarLayout, computeRadialComboContext, extractCategories, getCategoryLabelAnchor, hitTestRadar, resolveValues } from '../../chunks/chunk-NUHW3U7G.mjs';
4
4
  import '../../chunks/chunk-QIYJUZ7I.mjs';
5
5
  import '../../chunks/chunk-AJ24XDEK.mjs';
6
6
  import '../../chunks/chunk-IFJPDARC.mjs';
@@ -37,7 +37,7 @@ declare function renderCartesianOverlay(params: CartesianOverlayParams): void;
37
37
  * - x = center.x + cos(angleRad) * r
38
38
  * - y = center.y + sin(angleRad) * r
39
39
  */
40
- declare function calculateRadarLayout(datasets: RadarDatasetEntry[], chartArea: BoxArea, globalFont?: GlobalFont, sharedCategories?: string[], sharedDomain?: [number, number], perAxisDomains?: Map<string, [number, number]>, referenceBoundaryValues?: number[], perSpokeDomains?: Map<number, [number, number]>, tickCount?: number): Omit<RadarRenderData, 'datasetIndex'>;
40
+ declare function calculateRadarLayout(datasets: RadarDatasetEntry[], chartArea: BoxArea, globalFont?: GlobalFont, sharedCategories?: string[], sharedDomain?: [number, number], perAxisDomains?: Map<string, [number, number]>, referenceBoundaryValues?: number[], perSpokeDomains?: Map<number, [number, number]>, tickCount?: number, showCategoryLabels?: boolean): Omit<RadarRenderData, 'datasetIndex'>;
41
41
  /**
42
42
  * Extract merged category list from all datasets (preserving first dataset's order).
43
43
  * Exported for reuse by polar renderer.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@primeui/chart-core",
3
- "version": "1.0.0-beta.1",
3
+ "version": "1.0.0-rc.1",
4
4
  "author": "PrimeTek Informatics",
5
5
  "description": "Chart API for PrimeUI.",
6
6
  "keywords": [
@@ -8,13 +8,8 @@
8
8
  "primeui"
9
9
  ],
10
10
  "license": "SEE LICENSE IN LICENSE.md",
11
- "repository": {
12
- "type": "git",
13
- "url": "git+https://github.com/primefaces/primeui.git",
14
- "directory": "packages/components/chart/chart-core"
15
- },
16
11
  "bugs": {
17
- "url": "https://github.com/primefaces/primeui/issues"
12
+ "url": "https://support.primeui.dev"
18
13
  },
19
14
  "main": "./dist/index.mjs",
20
15
  "exports": {
@@ -36,11 +31,11 @@
36
31
  "files": [
37
32
  "dist",
38
33
  "README.md",
39
- "LICENSE"
34
+ "LICENSE.md"
40
35
  ],
41
36
  "dependencies": {
42
- "@primeui/chart-types": "1.0.0-beta.1",
43
- "@primeui/core": "1.0.0-beta.1"
37
+ "@primeui/core": "1.0.0-rc.1",
38
+ "@primeui/chart-types": "1.0.0-rc.1"
44
39
  },
45
40
  "scripts": {
46
41
  "build": "cross-env NODE_ENV=production INPUT_DIR=src/ OUTPUT_DIR=dist/ pnpm run build:package",
package/LICENSE DELETED
@@ -1,23 +0,0 @@
1
- # License
2
-
3
- MIT License
4
-
5
- Copyright (c) 2026 PrimeTek
6
-
7
- Permission is hereby granted, free of charge, to any person obtaining a copy
8
- of this software and associated documentation files (the "Software"), to deal
9
- in the Software without restriction, including without limitation the rights
10
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
- copies of the Software, and to permit persons to whom the Software is
12
- furnished to do so, subject to the following conditions:
13
-
14
- The above copyright notice and this permission notice shall be included in all
15
- copies or substantial portions of the Software.
16
-
17
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23
- SOFTWARE.