@praxisui/charts 9.0.0-beta.72 → 9.0.0-beta.73

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.
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "schemaVersion": "1.0.0",
3
- "generatedAt": "2026-07-12T00:55:35.176Z",
3
+ "generatedAt": "2026-07-12T01:34:40.567Z",
4
4
  "packageName": "@praxisui/charts",
5
- "packageVersion": "9.0.0-beta.72",
5
+ "packageVersion": "9.0.0-beta.73",
6
6
  "sourceRegistry": "praxis-component-registry-ingestion",
7
7
  "sourceRegistryVersion": "1.0.0",
8
8
  "componentCount": 2,
@@ -1439,6 +1439,7 @@ class PraxisChartComponent {
1439
1439
  settingsPanel = inject(SETTINGS_PANEL_BRIDGE, { optional: true });
1440
1440
  destroyRef = inject(DestroyRef);
1441
1441
  resizeObserver = signal(null, ...(ngDevMode ? [{ debugName: "resizeObserver" }] : /* istanbul ignore next */ []));
1442
+ resizeObserverHost = null;
1442
1443
  shellObserver = signal(null, ...(ngDevMode ? [{ debugName: "shellObserver" }] : /* istanbul ignore next */ []));
1443
1444
  currentLoadState = signal('idle', ...(ngDevMode ? [{ debugName: "currentLoadState" }] : /* istanbul ignore next */ []));
1444
1445
  remoteResolvedData = signal(null, ...(ngDevMode ? [{ debugName: "remoteResolvedData" }] : /* istanbul ignore next */ []));
@@ -1706,7 +1707,9 @@ class PraxisChartComponent {
1706
1707
  this.renderAttempt();
1707
1708
  if (this.loadState() !== 'ready') {
1708
1709
  this.cancelScheduledRender();
1710
+ this.cancelScheduledResize();
1709
1711
  this.deferredRenderAttempts = 0;
1712
+ this.destroyResizeObserver();
1710
1713
  this.engine.destroy();
1711
1714
  return;
1712
1715
  }
@@ -1730,7 +1733,7 @@ class PraxisChartComponent {
1730
1733
  });
1731
1734
  this.destroyRef.onDestroy(() => {
1732
1735
  this.clearEditorSessionSubscriptions();
1733
- this.resizeObserver()?.disconnect();
1736
+ this.destroyResizeObserver();
1734
1737
  this.shellObserver()?.disconnect();
1735
1738
  this.cancelScheduledResize();
1736
1739
  this.cancelScheduledRender();
@@ -1870,16 +1873,23 @@ class PraxisChartComponent {
1870
1873
  }
1871
1874
  }
1872
1875
  ensureResizeObserver(host) {
1873
- if (this.resizeObserver()) {
1876
+ if (this.resizeObserver() && this.resizeObserverHost === host) {
1874
1877
  return;
1875
1878
  }
1879
+ this.destroyResizeObserver();
1876
1880
  const observer = new ResizeObserver(() => {
1877
1881
  this.scheduleChartRender();
1878
1882
  this.scheduleEngineResize();
1879
1883
  });
1880
1884
  observer.observe(host);
1885
+ this.resizeObserverHost = host;
1881
1886
  this.resizeObserver.set(observer);
1882
1887
  }
1888
+ destroyResizeObserver() {
1889
+ this.resizeObserver()?.disconnect();
1890
+ this.resizeObserver.set(null);
1891
+ this.resizeObserverHost = null;
1892
+ }
1883
1893
  hasRenderableSize(host) {
1884
1894
  const rect = host.getBoundingClientRect();
1885
1895
  const width = rect.width || host.clientWidth || host.offsetWidth;
@@ -1953,6 +1963,9 @@ class PraxisChartComponent {
1953
1963
  this.scheduleEngineResize();
1954
1964
  }
1955
1965
  scheduleEngineResize() {
1966
+ if (this.loadState() !== 'ready') {
1967
+ return;
1968
+ }
1956
1969
  if (typeof requestAnimationFrame !== 'function') {
1957
1970
  this.engine.resize();
1958
1971
  return;
@@ -1962,6 +1975,9 @@ class PraxisChartComponent {
1962
1975
  }
1963
1976
  this.resizeFrameId = requestAnimationFrame(() => {
1964
1977
  this.resizeFrameId = null;
1978
+ if (this.loadState() !== 'ready') {
1979
+ return;
1980
+ }
1965
1981
  this.engine.resize();
1966
1982
  });
1967
1983
  }
@@ -3318,7 +3334,7 @@ const CARTESIAN_GRID_TOP_WITHOUT_TITLE = 48;
3318
3334
  const CARTESIAN_GRID_BOTTOM_WITH_LEGEND = 64;
3319
3335
  const CARTESIAN_GRID_BOTTOM_WITHOUT_LEGEND = 40;
3320
3336
  const DEFAULT_VALUE_LOCALE = 'pt-BR';
3321
- class PraxisChartOptionBuilderService {
3337
+ class EChartsOptionBuilderService {
3322
3338
  transformer;
3323
3339
  constructor(transformer) {
3324
3340
  this.transformer = transformer;
@@ -3811,10 +3827,10 @@ class PraxisChartOptionBuilderService {
3811
3827
  }
3812
3828
  return Math.min(Math.max(value, 0), 20);
3813
3829
  }
3814
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: PraxisChartOptionBuilderService, deps: [{ token: PraxisChartDataTransformerService }], target: i0.ɵɵFactoryTarget.Injectable });
3815
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: PraxisChartOptionBuilderService, providedIn: 'root' });
3830
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EChartsOptionBuilderService, deps: [{ token: PraxisChartDataTransformerService }], target: i0.ɵɵFactoryTarget.Injectable });
3831
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EChartsOptionBuilderService, providedIn: 'root' });
3816
3832
  }
3817
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: PraxisChartOptionBuilderService, decorators: [{
3833
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EChartsOptionBuilderService, decorators: [{
3818
3834
  type: Injectable,
3819
3835
  args: [{ providedIn: 'root' }]
3820
3836
  }], ctorParameters: () => [{ type: PraxisChartDataTransformerService }] });
@@ -3843,22 +3859,31 @@ use([
3843
3859
  class EChartsEngineAdapter {
3844
3860
  optionBuilder;
3845
3861
  chart;
3862
+ currentHost;
3846
3863
  clickHost;
3847
3864
  domClickHandler;
3848
3865
  zrenderClickHandler;
3849
3866
  lastSeriesClickAt = 0;
3867
+ lastGridClick;
3850
3868
  constructor(optionBuilder) {
3851
3869
  this.optionBuilder = optionBuilder;
3852
3870
  }
3853
3871
  render(host, payload) {
3872
+ if (this.chart && this.currentHost !== host) {
3873
+ this.disposeChart();
3874
+ }
3854
3875
  if (!this.chart) {
3855
- this.chart = init(host);
3876
+ this.chart = this.createChart(host);
3877
+ this.currentHost = host;
3856
3878
  }
3857
3879
  const option = this.optionBuilder.build(payload.config, payload.data);
3858
- this.chart?.setOption(option, true);
3859
- this.chart?.off('click');
3860
- this.chart?.on('click', (params) => {
3880
+ const chart = this.chart;
3881
+ chart.setOption(option, true);
3882
+ this.detachHandlers();
3883
+ chart.off('click');
3884
+ chart.on('click', (params) => {
3861
3885
  this.lastSeriesClickAt = Date.now();
3886
+ this.lastGridClick = undefined;
3862
3887
  payload.onPointClick?.({
3863
3888
  chartId: payload.config.id,
3864
3889
  seriesId: params?.seriesId,
@@ -3868,13 +3893,7 @@ class EChartsEngineAdapter {
3868
3893
  data: pointData(params?.name, params?.data ?? params?.value),
3869
3894
  });
3870
3895
  });
3871
- const zrender = this.chart?.getZr?.();
3872
- if (zrender && this.zrenderClickHandler) {
3873
- zrender.off?.('click', this.zrenderClickHandler);
3874
- }
3875
- if (this.clickHost && this.domClickHandler) {
3876
- this.clickHost.removeEventListener('click', this.domClickHandler, true);
3877
- }
3896
+ const zrender = chart?.getZr?.();
3878
3897
  this.zrenderClickHandler = (event) => {
3879
3898
  window.setTimeout(() => {
3880
3899
  if (Date.now() - this.lastSeriesClickAt < 80) {
@@ -3905,6 +3924,21 @@ class EChartsEngineAdapter {
3905
3924
  this.chart?.resize();
3906
3925
  }
3907
3926
  destroy() {
3927
+ this.disposeChart();
3928
+ }
3929
+ createChart(host) {
3930
+ return init(host);
3931
+ }
3932
+ disposeChart() {
3933
+ this.detachHandlers();
3934
+ this.chart?.off('click');
3935
+ this.chart?.dispose();
3936
+ this.chart = undefined;
3937
+ this.currentHost = undefined;
3938
+ this.lastSeriesClickAt = 0;
3939
+ this.lastGridClick = undefined;
3940
+ }
3941
+ detachHandlers() {
3908
3942
  const zrender = this.chart?.getZr?.();
3909
3943
  if (zrender && this.zrenderClickHandler) {
3910
3944
  zrender.off?.('click', this.zrenderClickHandler);
@@ -3915,8 +3949,6 @@ class EChartsEngineAdapter {
3915
3949
  this.clickHost = undefined;
3916
3950
  this.domClickHandler = undefined;
3917
3951
  this.zrenderClickHandler = undefined;
3918
- this.chart?.dispose();
3919
- this.chart = undefined;
3920
3952
  }
3921
3953
  emitCategoryClickFromGrid(event, payload) {
3922
3954
  const chart = this.chart;
@@ -3944,23 +3976,43 @@ class EChartsEngineAdapter {
3944
3976
  return;
3945
3977
  }
3946
3978
  const category = categories[categoryIndex];
3947
- const series = firstOptionEntry(option?.series);
3948
- const value = Array.isArray(series?.data) ? series.data[categoryIndex] : undefined;
3979
+ const categoryValue = category == null ? undefined : String(category);
3980
+ const categoryField = horizontal
3981
+ ? payload.config.axes?.y?.field
3982
+ : payload.config.axes?.x?.field
3983
+ ?? payload.config.series.find((series) => series.categoryField)?.categoryField;
3984
+ const signature = JSON.stringify({
3985
+ chartId: payload.config.id,
3986
+ category: categoryValue,
3987
+ horizontal,
3988
+ categoryIndex,
3989
+ });
3990
+ if (this.isDuplicateGridClick(signature)) {
3991
+ return;
3992
+ }
3993
+ const data = { category: categoryValue };
3994
+ if (categoryField && categoryValue !== undefined) {
3995
+ data[categoryField] = categoryValue;
3996
+ }
3949
3997
  payload.onPointClick?.({
3950
3998
  chartId: payload.config.id,
3951
- seriesId: series?.id,
3952
- seriesName: series?.name,
3953
- category: category == null ? undefined : String(category),
3954
- value: pointValue(value),
3955
- data: pointData(category, value),
3999
+ category: categoryValue,
4000
+ data,
3956
4001
  });
3957
4002
  }
3958
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EChartsEngineAdapter, deps: [{ token: PraxisChartOptionBuilderService }], target: i0.ɵɵFactoryTarget.Injectable });
4003
+ isDuplicateGridClick(signature) {
4004
+ const now = Date.now();
4005
+ const duplicate = this.lastGridClick?.signature === signature
4006
+ && now - this.lastGridClick.at < 80;
4007
+ this.lastGridClick = { signature, at: now };
4008
+ return duplicate;
4009
+ }
4010
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EChartsEngineAdapter, deps: [{ token: EChartsOptionBuilderService }], target: i0.ɵɵFactoryTarget.Injectable });
3959
4011
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EChartsEngineAdapter });
3960
4012
  }
3961
4013
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EChartsEngineAdapter, decorators: [{
3962
4014
  type: Injectable
3963
- }], ctorParameters: () => [{ type: PraxisChartOptionBuilderService }] });
4015
+ }], ctorParameters: () => [{ type: EChartsOptionBuilderService }] });
3964
4016
  function firstOptionEntry(value) {
3965
4017
  return Array.isArray(value) ? value[0] : value;
3966
4018
  }
@@ -6211,7 +6263,7 @@ function provideChartEngineFactory(options) {
6211
6263
  return {
6212
6264
  provide: PRAXIS_CHART_ENGINE_FACTORY,
6213
6265
  useFactory: (optionBuilder) => () => new EChartsEngineAdapter(optionBuilder),
6214
- deps: [PraxisChartOptionBuilderService],
6266
+ deps: [EChartsOptionBuilderService],
6215
6267
  };
6216
6268
  }
6217
6269
  function providePraxisCharts(options = {}) {
@@ -8218,4 +8270,4 @@ const PRAXIS_CHARTS_AUTHORING_MANIFEST = {
8218
8270
  * Generated bundle index. Do not edit.
8219
8271
  */
8220
8272
 
8221
- export { AnalyticsChartConfigAdapterService, AnalyticsChartContractService, ChartContractNormalizerService, ChartContractValidationService, ChartEditorDefaultsService, ChartEditorPreviewMapperService, PRAXIS_CHARTS_AUTHORING_MANIFEST, PRAXIS_CHARTS_I18N, PRAXIS_CHART_BACKEND_MOCK_BAR, PRAXIS_CHART_BACKEND_MOCK_COMBO, PRAXIS_CHART_BACKEND_MOCK_DONUT, PRAXIS_CHART_BACKEND_MOCK_HORIZONTAL_BAR, PRAXIS_CHART_BACKEND_MOCK_MULTI_METRIC_BAR, PRAXIS_CHART_BACKEND_MOCK_SCATTER, PRAXIS_CHART_BACKEND_MOCK_STACKED_AREA, PRAXIS_CHART_BACKEND_MOCK_TIMESERIES, PRAXIS_CHART_COMPONENT_METADATA, PRAXIS_CHART_DRILLDOWN_DATA_BY_MONTH, PRAXIS_CHART_DRILLDOWN_PANEL_METADATA, PRAXIS_CHART_ENGINE, PRAXIS_CHART_ENGINE_FACTORY, PRAXIS_CHART_PALETTE_TOKENS, PRAXIS_CHART_STATE_PROBE_COMPONENT_METADATA, PRAXIS_CHART_THEME_VARIANTS, PraxisChartBackendPayloadAdapterService, PraxisChartCanonicalContractMapperService, PraxisChartComponent, PraxisChartCompositionShowcaseComponent, PraxisChartConfigEditor, PraxisChartDataTransformerService, PraxisChartDrilldownPanelComponent, PraxisChartOptionBuilderService, PraxisChartSchemaMapperService, PraxisChartStateProbeComponent, PraxisChartStatsApiService, PraxisChartWidgetConfigEditor, PraxisMicroVisualizationComponent, buildPraxisChartInteractiveCanvasPage, buildPraxisChartInteractiveWidgetPage, buildPraxisChartMockCanvasPage, buildPraxisChartMockWidgetPage, createPraxisChartsI18nConfig, isPraxisChartPaletteToken, providePraxisChartDrilldownPanelMetadata, providePraxisChartStateProbeMetadata, providePraxisCharts, providePraxisChartsI18n, providePraxisChartsMetadata, resolvePraxisChartPaletteToken, resolvePraxisChartsText };
8273
+ export { AnalyticsChartConfigAdapterService, AnalyticsChartContractService, ChartContractNormalizerService, ChartContractValidationService, ChartEditorDefaultsService, ChartEditorPreviewMapperService, PRAXIS_CHARTS_AUTHORING_MANIFEST, PRAXIS_CHARTS_I18N, PRAXIS_CHART_BACKEND_MOCK_BAR, PRAXIS_CHART_BACKEND_MOCK_COMBO, PRAXIS_CHART_BACKEND_MOCK_DONUT, PRAXIS_CHART_BACKEND_MOCK_HORIZONTAL_BAR, PRAXIS_CHART_BACKEND_MOCK_MULTI_METRIC_BAR, PRAXIS_CHART_BACKEND_MOCK_SCATTER, PRAXIS_CHART_BACKEND_MOCK_STACKED_AREA, PRAXIS_CHART_BACKEND_MOCK_TIMESERIES, PRAXIS_CHART_COMPONENT_METADATA, PRAXIS_CHART_DRILLDOWN_DATA_BY_MONTH, PRAXIS_CHART_DRILLDOWN_PANEL_METADATA, PRAXIS_CHART_ENGINE, PRAXIS_CHART_ENGINE_FACTORY, PRAXIS_CHART_PALETTE_TOKENS, PRAXIS_CHART_STATE_PROBE_COMPONENT_METADATA, PRAXIS_CHART_THEME_VARIANTS, PraxisChartBackendPayloadAdapterService, PraxisChartCanonicalContractMapperService, PraxisChartComponent, PraxisChartCompositionShowcaseComponent, PraxisChartConfigEditor, PraxisChartDataTransformerService, PraxisChartDrilldownPanelComponent, PraxisChartSchemaMapperService, PraxisChartStateProbeComponent, PraxisChartStatsApiService, PraxisChartWidgetConfigEditor, PraxisMicroVisualizationComponent, buildPraxisChartInteractiveCanvasPage, buildPraxisChartInteractiveWidgetPage, buildPraxisChartMockCanvasPage, buildPraxisChartMockWidgetPage, createPraxisChartsI18nConfig, isPraxisChartPaletteToken, providePraxisChartDrilldownPanelMetadata, providePraxisChartStateProbeMetadata, providePraxisCharts, providePraxisChartsI18n, providePraxisChartsMetadata, resolvePraxisChartPaletteToken, resolvePraxisChartsText };
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "@praxisui/charts",
3
- "version": "9.0.0-beta.72",
3
+ "version": "9.0.0-beta.73",
4
4
  "description": "Metadata-driven charts library for Praxis UI Angular with engine adapters and Apache ECharts as the initial renderer.",
5
5
  "peerDependencies": {
6
6
  "@angular/common": "^21.0.0",
7
7
  "@angular/core": "^21.0.0",
8
- "@praxisui/core": "^9.0.0-beta.72",
8
+ "@praxisui/core": "^9.0.0-beta.73",
9
9
  "@angular/forms": "^21.0.0",
10
10
  "@angular/material": "^21.0.0",
11
- "@praxisui/table": "^9.0.0-beta.72",
11
+ "@praxisui/table": "^9.0.0-beta.73",
12
12
  "rxjs": "~7.8.0"
13
13
  },
14
14
  "dependencies": {
@@ -4,7 +4,6 @@ import { InjectionToken, Provider, AfterViewInit, OnChanges, OnDestroy, SimpleCh
4
4
  import * as _praxisui_core from '@praxisui/core';
5
5
  import { PraxisTextValue, PraxisPresentationVisualizationConfig, PraxisPresentationVisualizationPoint, PraxisPresentationVisualizationSegment, PraxisPresentationVisualizationThreshold, WidgetDefinition, WidgetShellConfig, WidgetInstance, ComponentMetadataRegistry, ApiUrlConfig, PraxisI18nService, PraxisAnalyticsProjection, AnalyticsSchemaContractService, AnalyticsPresentationResolver, WidgetPageDefinition, SettingsValueProvider, PraxisI18nDictionary, PraxisI18nConfig, PraxisI18nMessageDescriptor, ComponentAuthoringManifest, ComponentDocMeta } from '@praxisui/core';
6
6
  import { Observable, BehaviorSubject } from 'rxjs';
7
- import { EChartsCoreOption } from 'echarts';
8
7
  import { HttpClient } from '@angular/common/http';
9
8
 
10
9
  type PraxisChartAxisType = 'category' | 'value' | 'time';
@@ -468,6 +467,7 @@ declare class PraxisChartComponent {
468
467
  private readonly settingsPanel;
469
468
  private readonly destroyRef;
470
469
  private readonly resizeObserver;
470
+ private resizeObserverHost;
471
471
  private readonly shellObserver;
472
472
  private readonly currentLoadState;
473
473
  private readonly remoteResolvedData;
@@ -515,6 +515,7 @@ declare class PraxisChartComponent {
515
515
  private extractPointMetricValue;
516
516
  private executeRemoteDataRequest;
517
517
  private ensureResizeObserver;
518
+ private destroyResizeObserver;
518
519
  private hasRenderableSize;
519
520
  private toCssSize;
520
521
  private toCssAspectRatio;
@@ -847,32 +848,6 @@ declare class PraxisChartDataTransformerService {
847
848
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<PraxisChartDataTransformerService>;
848
849
  }
849
850
 
850
- declare class PraxisChartOptionBuilderService {
851
- private readonly transformer;
852
- constructor(transformer: PraxisChartDataTransformerService);
853
- build(config: PraxisChartConfig, rows: PraxisChartDataRow[]): EChartsCoreOption;
854
- private resolveText;
855
- private resolveTextColor;
856
- private hasText;
857
- private buildTitle;
858
- private buildLegend;
859
- private buildGrid;
860
- private buildCartesianYAxis;
861
- private primaryValueFormat;
862
- private seriesLabelFormat;
863
- private axisLabelFormatter;
864
- private formatValue;
865
- private formatDateValue;
866
- private isDateFormat;
867
- private readDateParts;
868
- private parseCurrencyFormat;
869
- private normalizeCurrencyDisplay;
870
- private parseNumberFormat;
871
- private clampDecimals;
872
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<PraxisChartOptionBuilderService, never>;
873
- static ɵprov: _angular_core.ɵɵInjectableDeclaration<PraxisChartOptionBuilderService>;
874
- }
875
-
876
851
  declare class PraxisChartMetadataRegistrationService {
877
852
  private readonly registry;
878
853
  private registered;
@@ -1401,5 +1376,5 @@ declare function providePraxisChartDrilldownPanelMetadata(): Provider;
1401
1376
  declare const PRAXIS_CHART_STATE_PROBE_COMPONENT_METADATA: ComponentDocMeta;
1402
1377
  declare function providePraxisChartStateProbeMetadata(): Provider;
1403
1378
 
1404
- export { AnalyticsChartConfigAdapterService, AnalyticsChartContractService, ChartContractNormalizerService, ChartContractValidationService, ChartEditorDefaultsService, ChartEditorPreviewMapperService, PRAXIS_CHARTS_AUTHORING_MANIFEST, PRAXIS_CHARTS_I18N, PRAXIS_CHART_BACKEND_MOCK_BAR, PRAXIS_CHART_BACKEND_MOCK_COMBO, PRAXIS_CHART_BACKEND_MOCK_DONUT, PRAXIS_CHART_BACKEND_MOCK_HORIZONTAL_BAR, PRAXIS_CHART_BACKEND_MOCK_MULTI_METRIC_BAR, PRAXIS_CHART_BACKEND_MOCK_SCATTER, PRAXIS_CHART_BACKEND_MOCK_STACKED_AREA, PRAXIS_CHART_BACKEND_MOCK_TIMESERIES, PRAXIS_CHART_COMPONENT_METADATA, PRAXIS_CHART_DRILLDOWN_DATA_BY_MONTH, PRAXIS_CHART_DRILLDOWN_PANEL_METADATA, PRAXIS_CHART_ENGINE, PRAXIS_CHART_ENGINE_FACTORY, PRAXIS_CHART_PALETTE_TOKENS, PRAXIS_CHART_STATE_PROBE_COMPONENT_METADATA, PRAXIS_CHART_THEME_VARIANTS, PraxisChartBackendPayloadAdapterService, PraxisChartCanonicalContractMapperService, PraxisChartComponent, PraxisChartCompositionShowcaseComponent, PraxisChartConfigEditor, PraxisChartDataTransformerService, PraxisChartDrilldownPanelComponent, PraxisChartOptionBuilderService, PraxisChartSchemaMapperService, PraxisChartStateProbeComponent, PraxisChartStatsApiService, PraxisChartWidgetConfigEditor, PraxisMicroVisualizationComponent, buildPraxisChartInteractiveCanvasPage, buildPraxisChartInteractiveWidgetPage, buildPraxisChartMockCanvasPage, buildPraxisChartMockWidgetPage, createPraxisChartsI18nConfig, isPraxisChartPaletteToken, providePraxisChartDrilldownPanelMetadata, providePraxisChartStateProbeMetadata, providePraxisCharts, providePraxisChartsI18n, providePraxisChartsMetadata, resolvePraxisChartPaletteToken, resolvePraxisChartsText };
1379
+ export { AnalyticsChartConfigAdapterService, AnalyticsChartContractService, ChartContractNormalizerService, ChartContractValidationService, ChartEditorDefaultsService, ChartEditorPreviewMapperService, PRAXIS_CHARTS_AUTHORING_MANIFEST, PRAXIS_CHARTS_I18N, PRAXIS_CHART_BACKEND_MOCK_BAR, PRAXIS_CHART_BACKEND_MOCK_COMBO, PRAXIS_CHART_BACKEND_MOCK_DONUT, PRAXIS_CHART_BACKEND_MOCK_HORIZONTAL_BAR, PRAXIS_CHART_BACKEND_MOCK_MULTI_METRIC_BAR, PRAXIS_CHART_BACKEND_MOCK_SCATTER, PRAXIS_CHART_BACKEND_MOCK_STACKED_AREA, PRAXIS_CHART_BACKEND_MOCK_TIMESERIES, PRAXIS_CHART_COMPONENT_METADATA, PRAXIS_CHART_DRILLDOWN_DATA_BY_MONTH, PRAXIS_CHART_DRILLDOWN_PANEL_METADATA, PRAXIS_CHART_ENGINE, PRAXIS_CHART_ENGINE_FACTORY, PRAXIS_CHART_PALETTE_TOKENS, PRAXIS_CHART_STATE_PROBE_COMPONENT_METADATA, PRAXIS_CHART_THEME_VARIANTS, PraxisChartBackendPayloadAdapterService, PraxisChartCanonicalContractMapperService, PraxisChartComponent, PraxisChartCompositionShowcaseComponent, PraxisChartConfigEditor, PraxisChartDataTransformerService, PraxisChartDrilldownPanelComponent, PraxisChartSchemaMapperService, PraxisChartStateProbeComponent, PraxisChartStatsApiService, PraxisChartWidgetConfigEditor, PraxisMicroVisualizationComponent, buildPraxisChartInteractiveCanvasPage, buildPraxisChartInteractiveWidgetPage, buildPraxisChartMockCanvasPage, buildPraxisChartMockWidgetPage, createPraxisChartsI18nConfig, isPraxisChartPaletteToken, providePraxisChartDrilldownPanelMetadata, providePraxisChartStateProbeMetadata, providePraxisCharts, providePraxisChartsI18n, providePraxisChartsMetadata, resolvePraxisChartPaletteToken, resolvePraxisChartsText };
1405
1380
  export type { AnalyticsChartConfigAdapterOptions, AnalyticsChartContractDefinition, AnalyticsChartContractLoadOptions, AnalyticsChartContractLoadResult, AnalyticsChartContractSource, ChartConfigEditorApplyEvent, ChartConfigEditorResetEvent, ChartConfigEditorSaveEvent, ChartContractIssueSeverity, ChartContractValidationIssue, ChartContractValidationResult, ChartEditorFieldOption, ChartEditorPreviewPayload, ChartEditorResourceOption, ChartEditorTargetOption, PraxisChartAggregation, PraxisChartAxisConfig, PraxisChartAxisLabelConfig, PraxisChartAxisPosition, PraxisChartAxisType, PraxisChartBackendPayload, PraxisChartBackendWidgetPayload, PraxisChartCanvasItem, PraxisChartCartesianSeries, PraxisChartConfig, PraxisChartConfigEditorData, PraxisChartCrossFilterEvent, PraxisChartDataRow, PraxisChartDataSource, PraxisChartDeclarativeEventAction, PraxisChartDistributionStatsRequest, PraxisChartEmptyStateConfig, PraxisChartEngineAdapter, PraxisChartEngineFactory, PraxisChartEngineRenderPayload, PraxisChartErrorStateConfig, PraxisChartGroupByStatsRequest, PraxisChartInteractionConfig, PraxisChartLegendConfig, PraxisChartLoadState, PraxisChartLocalDataSource, PraxisChartMetricConfig, PraxisChartMotionConfig, PraxisChartMotionPreset, PraxisChartPaletteToken, PraxisChartPieSlice, PraxisChartPointEvent, PraxisChartPrimitive, PraxisChartQueryConfig, PraxisChartQueryContext, PraxisChartQueryMetricConfig, PraxisChartQueryRequestEvent, PraxisChartRemoteDataResolver, PraxisChartRemoteDataResolverResult, PraxisChartRemoteDataSource, PraxisChartSchemaMeta, PraxisChartSelectionEvent, PraxisChartSeriesConfig, PraxisChartSeriesLabelConfig, PraxisChartSizingConfig, PraxisChartSizingMode, PraxisChartStateConfig, PraxisChartStatsDistributionMode, PraxisChartStatsGranularity, PraxisChartStatsMetricOperation, PraxisChartStatsMetricRequest, PraxisChartStatsOperation, PraxisChartStatsOrderBy, PraxisChartStatsRequest, PraxisChartSurfaceConfig, PraxisChartSurfaceMode, PraxisChartThemeConfig, PraxisChartThemeVariant, PraxisChartTimeSeriesStatsRequest, PraxisChartTooltipConfig, PraxisChartTransformedData, PraxisChartType, PraxisChartWidgetEditorInputs, PraxisChartWidgetEditorValue, PraxisChartWidgetInstance, PraxisChartWidgetLike, PraxisChartWidgetResolution, PraxisChartWidgetSchema, PraxisChartsI18nOptions, PraxisChartsProviderOptions, PraxisChartsText, PraxisXUiChartAggregation, PraxisXUiChartAggregationConfig, PraxisXUiChartContract, PraxisXUiChartDimension, PraxisXUiChartEventAction, PraxisXUiChartEvents, PraxisXUiChartFilter, PraxisXUiChartKind, PraxisXUiChartMetric, PraxisXUiChartMotion, PraxisXUiChartMotionPreset, PraxisXUiChartPreset, PraxisXUiChartRefresh, PraxisXUiChartRuntimeHints, PraxisXUiChartSizing, PraxisXUiChartSizingMode, PraxisXUiChartSort, PraxisXUiChartSource, PraxisXUiChartSourceKind, PraxisXUiChartState, PraxisXUiChartStateDescriptor, PraxisXUiChartStatsDistributionMode, PraxisXUiChartStatsOperation, PraxisXUiChartStatsOrderBy, PraxisXUiChartStatsSourceOptions, PraxisXUiChartSurface, PraxisXUiChartSurfaceMode, PraxisXUiChartTextValue, PraxisXUiChartTheme, PraxisXUiChartToggleableFeature };