@praxisui/charts 7.0.0-beta.0 → 8.0.0-beta.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/index.d.ts CHANGED
@@ -1,11 +1,11 @@
1
+ import * as _praxisui_charts from '@praxisui/charts';
1
2
  import * as _angular_core from '@angular/core';
2
3
  import { InjectionToken, Provider } from '@angular/core';
3
4
  import * as _praxisui_core from '@praxisui/core';
4
5
  import { PraxisTextValue, WidgetDefinition, WidgetShellConfig, WidgetInstance, ComponentMetadataRegistry, ApiUrlConfig, PraxisAnalyticsProjection, AnalyticsSchemaContractService, AnalyticsPresentationResolver, WidgetPageDefinition, SettingsValueProvider, PraxisI18nDictionary, PraxisI18nConfig, PraxisI18nMessageDescriptor, ComponentDocMeta } from '@praxisui/core';
5
- import * as _praxisui_charts from '@praxisui/charts';
6
+ import { Observable, BehaviorSubject } from 'rxjs';
6
7
  import { EChartsCoreOption } from 'echarts';
7
8
  import { HttpClient } from '@angular/common/http';
8
- import { Observable, BehaviorSubject } from 'rxjs';
9
9
 
10
10
  type PraxisChartAxisType = 'category' | 'value' | 'time';
11
11
  type PraxisChartAxisPosition = 'top' | 'bottom' | 'left' | 'right';
@@ -28,14 +28,14 @@ type PraxisChartPrimitive = string | number | boolean | Date | null | undefined;
28
28
  type PraxisChartDataRow = Record<string, PraxisChartPrimitive>;
29
29
  interface PraxisChartQueryMetricConfig {
30
30
  field?: string;
31
- aggregation?: 'sum' | 'count' | 'avg' | 'min' | 'max';
31
+ aggregation?: 'sum' | 'count' | 'distinct-count' | 'avg' | 'min' | 'max';
32
32
  alias?: string;
33
33
  }
34
34
  type PraxisChartStatsOperation = 'group-by' | 'timeseries' | 'distribution';
35
35
  type PraxisChartStatsDistributionMode = 'terms' | 'histogram';
36
36
  type PraxisChartStatsOrderBy = 'key-asc' | 'key-desc' | 'value-asc' | 'value-desc';
37
- type PraxisChartStatsGranularity = 'hour' | 'day' | 'week' | 'month' | 'quarter' | 'year';
38
- type PraxisChartStatsMetricOperation = 'COUNT' | 'SUM' | 'AVG' | 'MIN' | 'MAX';
37
+ type PraxisChartStatsGranularity = 'day' | 'week' | 'month';
38
+ type PraxisChartStatsMetricOperation = 'COUNT' | 'DISTINCT_COUNT' | 'SUM' | 'AVG' | 'MIN' | 'MAX';
39
39
  interface PraxisChartStatsMetricRequest {
40
40
  operation: PraxisChartStatsMetricOperation;
41
41
  field?: string;
@@ -114,6 +114,8 @@ interface PraxisChartInteractionConfig {
114
114
  pointClick?: boolean;
115
115
  selection?: boolean;
116
116
  drillDown?: boolean;
117
+ crossFilter?: boolean;
118
+ eventActions?: Partial<Record<'pointClick' | 'selectionChange' | 'drillDown' | 'crossFilter', PraxisChartDeclarativeEventAction>>;
117
119
  }
118
120
  interface PraxisChartPointEvent {
119
121
  chartId?: string;
@@ -123,6 +125,23 @@ interface PraxisChartPointEvent {
123
125
  value?: unknown;
124
126
  data?: unknown;
125
127
  }
128
+ interface PraxisChartDeclarativeEventAction {
129
+ action: 'filter-widget' | 'open-detail' | 'navigate' | 'update-context' | 'emit';
130
+ target?: string;
131
+ mapping?: Record<string, string>;
132
+ }
133
+ interface PraxisChartSelectionEvent extends PraxisChartPointEvent {
134
+ selected: boolean;
135
+ filters: Record<string, unknown>;
136
+ action?: PraxisChartDeclarativeEventAction;
137
+ }
138
+ interface PraxisChartCrossFilterEvent {
139
+ chartId?: string;
140
+ filters: Record<string, unknown>;
141
+ target?: string;
142
+ action?: PraxisChartDeclarativeEventAction;
143
+ source: PraxisChartSelectionEvent;
144
+ }
126
145
  interface PraxisChartQueryRequestEvent {
127
146
  chartId?: string;
128
147
  dataSource: Extract<PraxisChartDataSource, {
@@ -131,9 +150,11 @@ interface PraxisChartQueryRequestEvent {
131
150
  query?: PraxisChartQueryConfig;
132
151
  queryContext?: PraxisChartQueryContext | null;
133
152
  }
153
+ type PraxisChartRemoteDataResolverResult = PraxisChartDataRow[] | Promise<PraxisChartDataRow[]> | Observable<PraxisChartDataRow[]> | null | undefined;
154
+ type PraxisChartRemoteDataResolver = (event: PraxisChartQueryRequestEvent, config: PraxisChartConfig) => PraxisChartRemoteDataResolverResult;
134
155
 
135
156
  type PraxisChartType = 'bar' | 'combo' | 'horizontal-bar' | 'line' | 'pie' | 'donut' | 'area' | 'stacked-bar' | 'stacked-area' | 'scatter';
136
- type PraxisChartAggregation = 'sum' | 'count' | 'avg' | 'min' | 'max';
157
+ type PraxisChartAggregation = 'sum' | 'count' | 'distinct-count' | 'avg' | 'min' | 'max';
137
158
  interface PraxisChartMetricConfig {
138
159
  field?: string;
139
160
  aggregation?: PraxisChartAggregation;
@@ -164,6 +185,24 @@ interface PraxisChartTooltipConfig {
164
185
  enabled?: boolean;
165
186
  trigger?: 'item' | 'axis';
166
187
  }
188
+ type PraxisChartThemeVariant = 'default' | 'compact' | 'executive';
189
+ declare const PRAXIS_CHART_PALETTE_TOKENS: {
190
+ readonly 'brand-primary': readonly ["#1263b4", "#0f766e", "#f08c00", "#c92a2a", "#7b61ff"];
191
+ readonly 'brand-balanced': readonly ["#1263b4", "#15803d", "#7c3aed", "#c2410c", "#be123c"];
192
+ readonly status: readonly ["#15803d", "#ca8a04", "#dc2626", "#2563eb", "#7c3aed"];
193
+ readonly executive: readonly ["#14b8a6", "#f59e0b", "#e11d48", "#8b5cf6", "#38bdf8"];
194
+ };
195
+ type PraxisChartPaletteToken = keyof typeof PRAXIS_CHART_PALETTE_TOKENS;
196
+ declare function isPraxisChartPaletteToken(value: string): value is PraxisChartPaletteToken;
197
+ declare function resolvePraxisChartPaletteToken(value: string): string[] | undefined;
198
+ type PraxisChartSurfaceMode = 'auto' | 'embedded' | 'contained';
199
+ interface PraxisChartSurfaceConfig {
200
+ mode?: PraxisChartSurfaceMode;
201
+ background?: string;
202
+ borderColor?: string;
203
+ borderWidth?: number | string;
204
+ borderRadius?: number | string;
205
+ }
167
206
  interface PraxisChartThemeConfig {
168
207
  palette?: string[];
169
208
  backgroundColor?: string;
@@ -171,13 +210,23 @@ interface PraxisChartThemeConfig {
171
210
  borderRadius?: number;
172
211
  legend?: PraxisChartLegendConfig;
173
212
  tooltip?: PraxisChartTooltipConfig;
213
+ surface?: PraxisChartSurfaceConfig;
174
214
  }
215
+ declare const PRAXIS_CHART_THEME_VARIANTS: Record<PraxisChartThemeVariant, PraxisChartThemeConfig>;
175
216
 
176
217
  type PraxisChartMotionPreset = 'subtle' | 'standard' | 'expressive';
177
218
  interface PraxisChartMotionConfig {
178
219
  enabled?: boolean;
179
220
  preset?: PraxisChartMotionPreset;
180
221
  }
222
+ type PraxisChartSizingMode = 'fixed' | 'fill-container' | 'auto';
223
+ interface PraxisChartSizingConfig {
224
+ mode?: PraxisChartSizingMode;
225
+ height?: number | string;
226
+ minHeight?: number | string;
227
+ maxHeight?: number | string;
228
+ aspectRatio?: number | string;
229
+ }
181
230
  interface PraxisChartEmptyStateConfig {
182
231
  title?: PraxisTextValue;
183
232
  description?: PraxisTextValue;
@@ -199,6 +248,8 @@ interface PraxisChartConfig {
199
248
  orientation?: 'vertical' | 'horizontal';
200
249
  title?: PraxisTextValue;
201
250
  subtitle?: PraxisTextValue;
251
+ sizing?: PraxisChartSizingConfig;
252
+ /** @deprecated Use sizing.height with sizing.mode="fixed". */
202
253
  height?: number | string;
203
254
  axes?: {
204
255
  x?: PraxisChartAxisConfig;
@@ -257,7 +308,7 @@ interface PraxisXUiChartAggregationConfig {
257
308
  as?: string;
258
309
  }
259
310
  interface PraxisXUiChartStatsSourceOptions {
260
- granularity?: 'hour' | 'day' | 'week' | 'month' | 'quarter' | 'year';
311
+ granularity?: 'day' | 'week' | 'month';
261
312
  fillGaps?: boolean;
262
313
  mode?: PraxisXUiChartStatsDistributionMode;
263
314
  bucketSize?: number;
@@ -281,15 +332,32 @@ interface PraxisXUiChartSource {
281
332
  interface PraxisXUiChartToggleableFeature {
282
333
  enabled: boolean;
283
334
  }
335
+ type PraxisXUiChartSurfaceMode = 'auto' | 'embedded' | 'contained';
336
+ interface PraxisXUiChartSurface {
337
+ mode?: PraxisXUiChartSurfaceMode;
338
+ background?: string;
339
+ borderColor?: string;
340
+ borderWidth?: number | string;
341
+ borderRadius?: number | string;
342
+ }
284
343
  interface PraxisXUiChartTheme {
285
344
  palette?: string | string[];
286
345
  variant?: 'default' | 'compact' | 'executive';
346
+ surface?: PraxisXUiChartSurface;
287
347
  }
288
348
  type PraxisXUiChartMotionPreset = 'subtle' | 'standard' | 'expressive';
289
349
  interface PraxisXUiChartMotion {
290
350
  enabled?: boolean;
291
351
  preset?: PraxisXUiChartMotionPreset;
292
352
  }
353
+ type PraxisXUiChartSizingMode = 'fixed' | 'fill-container' | 'auto';
354
+ interface PraxisXUiChartSizing {
355
+ mode?: PraxisXUiChartSizingMode;
356
+ height?: number | string;
357
+ minHeight?: number | string;
358
+ maxHeight?: number | string;
359
+ aspectRatio?: number | string;
360
+ }
293
361
  interface PraxisXUiChartStateDescriptor {
294
362
  title?: PraxisXUiChartTextValue;
295
363
  description?: PraxisXUiChartTextValue;
@@ -318,6 +386,8 @@ interface PraxisXUiChartContract {
318
386
  orientation?: 'vertical' | 'horizontal';
319
387
  title?: PraxisXUiChartTextValue;
320
388
  subtitle?: PraxisXUiChartTextValue;
389
+ sizing?: PraxisXUiChartSizing;
390
+ /** @deprecated Use sizing.height with sizing.mode="fixed". */
321
391
  height?: number | string;
322
392
  source: PraxisXUiChartSource;
323
393
  dimensions?: PraxisXUiChartDimension[];
@@ -375,11 +445,14 @@ declare class PraxisChartComponent {
375
445
  readonly chartDocument: _angular_core.InputSignal<PraxisXUiChartContract | null>;
376
446
  readonly filterCriteria: _angular_core.InputSignal<Record<string, unknown> | null>;
377
447
  readonly queryContext: _angular_core.InputSignal<PraxisDataQueryContextBridge | null>;
448
+ readonly remoteDataResolver: _angular_core.InputSignal<PraxisChartRemoteDataResolver | null>;
378
449
  readonly enableCustomization: _angular_core.InputSignalWithTransform<boolean, unknown>;
379
450
  readonly availableResources: _angular_core.InputSignal<readonly ChartEditorResourceOption[]>;
380
451
  readonly availableFields: _angular_core.InputSignal<readonly ChartEditorFieldOption[]>;
381
452
  readonly availableTargets: _angular_core.InputSignal<readonly ChartEditorTargetOption[]>;
382
453
  readonly pointClick: _angular_core.OutputEmitterRef<PraxisChartPointEvent>;
454
+ readonly selectionChange: _angular_core.OutputEmitterRef<PraxisChartSelectionEvent>;
455
+ readonly crossFilter: _angular_core.OutputEmitterRef<PraxisChartCrossFilterEvent>;
383
456
  readonly queryRequest: _angular_core.OutputEmitterRef<PraxisChartQueryRequestEvent>;
384
457
  readonly loadStateChange: _angular_core.OutputEmitterRef<PraxisChartLoadState>;
385
458
  readonly chartDocumentApplied: _angular_core.OutputEmitterRef<PraxisXUiChartContract>;
@@ -405,11 +478,21 @@ declare class PraxisChartComponent {
405
478
  private readonly fillContainerHeight;
406
479
  private resizeFrameId;
407
480
  private previousRemoteSignature;
481
+ private previousRemoteDataResolver;
408
482
  private previousDocumentSignature;
409
483
  private editorSessionSubscriptions;
410
484
  readonly effectiveConfig: _angular_core.Signal<PraxisChartConfig>;
411
485
  readonly resolvedData: _angular_core.Signal<PraxisChartDataRow[]>;
412
486
  readonly resolvedHeight: _angular_core.Signal<string>;
487
+ readonly resolvedMinHeight: _angular_core.Signal<string | null>;
488
+ readonly resolvedMaxHeight: _angular_core.Signal<string | null>;
489
+ readonly resolvedAspectRatio: _angular_core.Signal<string | null>;
490
+ readonly isFillContainerMode: _angular_core.Signal<boolean>;
491
+ readonly surfaceMode: _angular_core.Signal<_praxisui_charts.PraxisChartSurfaceMode>;
492
+ readonly surfaceBackground: _angular_core.Signal<string | null>;
493
+ readonly surfaceBorderColor: _angular_core.Signal<string | null>;
494
+ readonly surfaceBorderWidth: _angular_core.Signal<string | null>;
495
+ readonly surfaceBorderRadius: _angular_core.Signal<string | null>;
413
496
  readonly renderConfig: _angular_core.Signal<PraxisChartConfig>;
414
497
  readonly loadingLabel: _angular_core.Signal<string>;
415
498
  readonly emptyTitle: _angular_core.Signal<string>;
@@ -421,15 +504,24 @@ declare class PraxisChartComponent {
421
504
  constructor();
422
505
  canOpenConfigEditor(): boolean;
423
506
  openConfigEditor(): Promise<void>;
507
+ private handlePointClick;
508
+ private buildSelectionEvent;
509
+ private buildEventFilters;
510
+ private extractPointSourceValues;
511
+ private extractPointMetricValue;
512
+ private executeRemoteDataRequest;
424
513
  private ensureResizeObserver;
514
+ private toCssSize;
515
+ private toCssAspectRatio;
425
516
  private buildRemoteSignature;
426
517
  private clearEditorSessionSubscriptions;
427
518
  private observeShellSizingContext;
519
+ private shouldFillShellContainer;
428
520
  private scheduleResizeAfterShellModeChange;
429
521
  private scheduleEngineResize;
430
522
  private cancelScheduledResize;
431
523
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<PraxisChartComponent, never>;
432
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<PraxisChartComponent, "praxis-chart", never, { "config": { "alias": "config"; "required": true; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; "chartDocument": { "alias": "chartDocument"; "required": false; "isSignal": true; }; "filterCriteria": { "alias": "filterCriteria"; "required": false; "isSignal": true; }; "queryContext": { "alias": "queryContext"; "required": false; "isSignal": true; }; "enableCustomization": { "alias": "enableCustomization"; "required": false; "isSignal": true; }; "availableResources": { "alias": "availableResources"; "required": false; "isSignal": true; }; "availableFields": { "alias": "availableFields"; "required": false; "isSignal": true; }; "availableTargets": { "alias": "availableTargets"; "required": false; "isSignal": true; }; }, { "pointClick": "pointClick"; "queryRequest": "queryRequest"; "loadStateChange": "loadStateChange"; "chartDocumentApplied": "chartDocumentApplied"; "chartDocumentSaved": "chartDocumentSaved"; }, never, never, true, never>;
524
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PraxisChartComponent, "praxis-chart", never, { "config": { "alias": "config"; "required": true; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; "chartDocument": { "alias": "chartDocument"; "required": false; "isSignal": true; }; "filterCriteria": { "alias": "filterCriteria"; "required": false; "isSignal": true; }; "queryContext": { "alias": "queryContext"; "required": false; "isSignal": true; }; "remoteDataResolver": { "alias": "remoteDataResolver"; "required": false; "isSignal": true; }; "enableCustomization": { "alias": "enableCustomization"; "required": false; "isSignal": true; }; "availableResources": { "alias": "availableResources"; "required": false; "isSignal": true; }; "availableFields": { "alias": "availableFields"; "required": false; "isSignal": true; }; "availableTargets": { "alias": "availableTargets"; "required": false; "isSignal": true; }; }, { "pointClick": "pointClick"; "selectionChange": "selectionChange"; "crossFilter": "crossFilter"; "queryRequest": "queryRequest"; "loadStateChange": "loadStateChange"; "chartDocumentApplied": "chartDocumentApplied"; "chartDocumentSaved": "chartDocumentSaved"; }, never, never, true, never>;
433
525
  }
434
526
 
435
527
  declare class PraxisChartDrilldownPanelComponent {
@@ -557,10 +649,14 @@ declare function providePraxisCharts(): Provider[];
557
649
  declare class ChartContractNormalizerService {
558
650
  normalize(input: PraxisXUiChartContract): PraxisXUiChartContract;
559
651
  private normalizeMotion;
652
+ private normalizeSizing;
560
653
  private normalizeKindSpecificFields;
561
654
  private normalizeOperationSpecificFields;
562
655
  private normalizeSourceSpecificFields;
563
656
  private isDistribution;
657
+ private normalizeCssSizeValue;
658
+ private normalizeAspectRatioValue;
659
+ private omitUndefined;
564
660
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ChartContractNormalizerService, never>;
565
661
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<ChartContractNormalizerService>;
566
662
  }
@@ -582,10 +678,15 @@ declare class ChartContractValidationService {
582
678
  private validateSource;
583
679
  private validateTheme;
584
680
  private validateMetrics;
681
+ private validateSizing;
585
682
  private validateKinds;
586
683
  private validateEvents;
587
684
  private validateEventAction;
588
685
  private error;
686
+ private validateCssSize;
687
+ private isValidCssSize;
688
+ private numericCssSize;
689
+ private isValidAspectRatio;
589
690
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ChartContractValidationService, never>;
590
691
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<ChartContractValidationService>;
591
692
  }
@@ -601,6 +702,7 @@ declare class PraxisChartCanonicalContractMapperService {
601
702
  private buildQuery;
602
703
  private buildInteractions;
603
704
  private buildTheme;
705
+ private resolveThemePalette;
604
706
  private buildMotion;
605
707
  private resolveOrientation;
606
708
  private resolveSeriesType;
@@ -670,6 +772,9 @@ declare class PraxisChartOptionBuilderService {
670
772
  constructor(transformer: PraxisChartDataTransformerService);
671
773
  build(config: PraxisChartConfig, rows: PraxisChartDataRow[]): EChartsCoreOption;
672
774
  private resolveText;
775
+ private hasText;
776
+ private buildTitle;
777
+ private buildLegend;
673
778
  private buildGrid;
674
779
  private buildCartesianYAxis;
675
780
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<PraxisChartOptionBuilderService, never>;
@@ -830,9 +935,9 @@ declare class PraxisChartCompositionShowcaseComponent {
830
935
  }>;
831
936
  protected readonly widgetPage: _angular_core.Signal<{
832
937
  composition?: _praxisui_core.WidgetPageCompositionDefinition | undefined;
938
+ state?: _praxisui_core.WidgetPageStateInput | undefined;
833
939
  canvas?: _praxisui_core.WidgetPageCanvasLayout | undefined;
834
940
  context?: Record<string, any> | undefined;
835
- state?: _praxisui_core.WidgetPageStateInput | undefined;
836
941
  widgets: _praxisui_core.WidgetInstance[];
837
942
  layout?: _praxisui_core.WidgetPageLayout | undefined;
838
943
  layoutPreset?: string | undefined;
@@ -844,9 +949,9 @@ declare class PraxisChartCompositionShowcaseComponent {
844
949
  }>;
845
950
  protected readonly canvasPage: _angular_core.Signal<({
846
951
  composition?: _praxisui_core.WidgetPageCompositionDefinition | undefined;
952
+ state?: _praxisui_core.WidgetPageStateInput | undefined;
847
953
  canvas?: _praxisui_core.WidgetPageCanvasLayout | undefined;
848
954
  context?: Record<string, any> | undefined;
849
- state?: _praxisui_core.WidgetPageStateInput | undefined;
850
955
  widgets: _praxisui_core.WidgetInstance[];
851
956
  layout?: _praxisui_core.WidgetPageLayout | undefined;
852
957
  layoutPreset?: string | undefined;
@@ -877,8 +982,8 @@ declare class PraxisChartCompositionShowcaseComponent {
877
982
  collisionPolicy?: _praxisui_core.WidgetPageCanvasCollisionPolicy;
878
983
  };
879
984
  composition?: _praxisui_core.WidgetPageCompositionDefinition | undefined;
880
- context?: Record<string, any> | undefined;
881
985
  state?: _praxisui_core.WidgetPageStateInput | undefined;
986
+ context?: Record<string, any> | undefined;
882
987
  layout?: _praxisui_core.WidgetPageLayout | undefined;
883
988
  layoutPreset?: string | undefined;
884
989
  layoutPresetOptions?: Record<string, any> | undefined;
@@ -889,9 +994,9 @@ declare class PraxisChartCompositionShowcaseComponent {
889
994
  }>;
890
995
  protected readonly resolvedPage: _angular_core.Signal<{
891
996
  composition?: _praxisui_core.WidgetPageCompositionDefinition | undefined;
997
+ state?: _praxisui_core.WidgetPageStateInput | undefined;
892
998
  canvas?: _praxisui_core.WidgetPageCanvasLayout | undefined;
893
999
  context?: Record<string, any> | undefined;
894
- state?: _praxisui_core.WidgetPageStateInput | undefined;
895
1000
  widgets: _praxisui_core.WidgetInstance[];
896
1001
  layout?: _praxisui_core.WidgetPageLayout | undefined;
897
1002
  layoutPreset?: string | undefined;
@@ -914,8 +1019,8 @@ declare class PraxisChartCompositionShowcaseComponent {
914
1019
  collisionPolicy?: _praxisui_core.WidgetPageCanvasCollisionPolicy;
915
1020
  };
916
1021
  composition?: _praxisui_core.WidgetPageCompositionDefinition | undefined;
917
- context?: Record<string, any> | undefined;
918
1022
  state?: _praxisui_core.WidgetPageStateInput | undefined;
1023
+ context?: Record<string, any> | undefined;
919
1024
  layout?: _praxisui_core.WidgetPageLayout | undefined;
920
1025
  layoutPreset?: string | undefined;
921
1026
  layoutPresetOptions?: Record<string, any> | undefined;
@@ -962,7 +1067,7 @@ interface ChartConfigEditorResetEvent {
962
1067
  type ChartEditorSection = 'general' | 'data' | 'analytics' | 'appearance' | 'motion' | 'events' | 'preview';
963
1068
  type ChartFeatureKey = 'legend' | 'labels' | 'tooltip';
964
1069
  type ChartStateKey = 'empty' | 'loading' | 'error';
965
- type ChartEventKey = 'pointClick' | 'drillDown';
1070
+ type ChartEventKey = 'pointClick' | 'selectionChange' | 'drillDown' | 'crossFilter';
966
1071
  declare class PraxisChartConfigEditor implements SettingsValueProvider {
967
1072
  readonly documentInput: _angular_core.InputSignal<PraxisXUiChartContract | null>;
968
1073
  readonly modeInput: _angular_core.InputSignal<"create" | "edit">;
@@ -985,7 +1090,7 @@ declare class PraxisChartConfigEditor implements SettingsValueProvider {
985
1090
  readonly chartKinds: PraxisXUiChartKind[];
986
1091
  readonly sourceKinds: readonly ["praxis.stats", "derived"];
987
1092
  readonly operations: PraxisXUiChartStatsOperation[];
988
- readonly timeGranularities: readonly ["hour", "day", "week", "month", "quarter", "year"];
1093
+ readonly timeGranularities: readonly ["day", "week", "month"];
989
1094
  readonly distributionModes: PraxisXUiChartStatsDistributionMode[];
990
1095
  readonly dimensionRoles: NonNullable<PraxisXUiChartDimension['role']>[];
991
1096
  readonly metricAggregations: PraxisXUiChartAggregation[];
@@ -993,6 +1098,11 @@ declare class PraxisChartConfigEditor implements SettingsValueProvider {
993
1098
  readonly metricSeriesKinds: Array<NonNullable<PraxisXUiChartMetric['seriesKind']>>;
994
1099
  readonly motionPresets: readonly ["subtle", "standard", "expressive"];
995
1100
  readonly eventActionOptions: PraxisXUiChartEventAction['action'][];
1101
+ readonly sizingModes: PraxisXUiChartSizingMode[];
1102
+ readonly surfaceModes: PraxisXUiChartSurfaceMode[];
1103
+ readonly themeVariants: PraxisChartThemeVariant[];
1104
+ readonly paletteModes: readonly ["token", "custom"];
1105
+ readonly paletteTokens: PraxisChartPaletteToken[];
996
1106
  readonly activeSection: _angular_core.WritableSignal<ChartEditorSection>;
997
1107
  private readonly injectedData;
998
1108
  private readonly defaults;
@@ -1022,6 +1132,11 @@ declare class PraxisChartConfigEditor implements SettingsValueProvider {
1022
1132
  setTitle(value: string): void;
1023
1133
  setSubtitle(value: string): void;
1024
1134
  setHeight(value: string): void;
1135
+ setSizingMode(mode: PraxisXUiChartSizingMode): void;
1136
+ setSizingHeight(value: string): void;
1137
+ setSizingMinHeight(value: string): void;
1138
+ setSizingMaxHeight(value: string): void;
1139
+ setSizingAspectRatio(value: string): void;
1025
1140
  setSourceKind(value: 'praxis.stats' | 'derived'): void;
1026
1141
  setResource(value: string): void;
1027
1142
  setOperation(value: PraxisXUiChartStatsOperation): void;
@@ -1044,7 +1159,11 @@ declare class PraxisChartConfigEditor implements SettingsValueProvider {
1044
1159
  setMotionEnabled(enabled: boolean): void;
1045
1160
  setMotionPreset(preset: 'subtle' | 'standard' | 'expressive'): void;
1046
1161
  setFeatureEnabled(feature: ChartFeatureKey, enabled: boolean): void;
1162
+ setThemeVariant(variant: PraxisChartThemeVariant | ''): void;
1163
+ setPaletteMode(mode: typeof this.paletteModes[number]): void;
1164
+ setPaletteToken(token: PraxisChartPaletteToken): void;
1047
1165
  setPalette(value: string): void;
1166
+ setSurfaceMode(mode: PraxisXUiChartSurfaceMode): void;
1048
1167
  setStateTitle(stateKey: ChartStateKey, value: string): void;
1049
1168
  setStateDescription(stateKey: ChartStateKey, value: string): void;
1050
1169
  setEventAction(eventKey: ChartEventKey, action: PraxisXUiChartEventAction['action'] | ''): void;
@@ -1061,8 +1180,16 @@ declare class PraxisChartConfigEditor implements SettingsValueProvider {
1061
1180
  bucketSizeValue(): string;
1062
1181
  bucketCountValue(): string;
1063
1182
  heightValue(): string;
1183
+ sizingModeValue(): PraxisXUiChartSizingMode;
1184
+ sizingMinHeightValue(): string;
1185
+ sizingMaxHeightValue(): string;
1186
+ sizingAspectRatioValue(): string;
1064
1187
  featureEnabled(feature: ChartFeatureKey): boolean;
1065
1188
  paletteValue(): string;
1189
+ paletteModeValue(): typeof this.paletteModes[number];
1190
+ paletteTokenValue(): PraxisChartPaletteToken;
1191
+ themeVariantValue(): PraxisChartThemeVariant | '';
1192
+ surfaceModeValue(): PraxisXUiChartSurfaceMode;
1066
1193
  stateTitle(stateKey: ChartStateKey): string;
1067
1194
  stateDescription(stateKey: ChartStateKey): string;
1068
1195
  eventAction(eventKey: ChartEventKey): PraxisXUiChartEventAction['action'] | '';
@@ -1085,6 +1212,8 @@ declare class PraxisChartConfigEditor implements SettingsValueProvider {
1085
1212
  private patchStateDescriptor;
1086
1213
  private patchEvent;
1087
1214
  private parseMappingText;
1215
+ private normalizeSizingSizeInput;
1216
+ private mergeTheme;
1088
1217
  private createApplyPayload;
1089
1218
  private createSavePayload;
1090
1219
  private patchDocument;
@@ -1131,5 +1260,5 @@ declare function providePraxisChartDrilldownPanelMetadata(): Provider;
1131
1260
  declare const PRAXIS_CHART_STATE_PROBE_COMPONENT_METADATA: ComponentDocMeta;
1132
1261
  declare function providePraxisChartStateProbeMetadata(): Provider;
1133
1262
 
1134
- export { AnalyticsChartConfigAdapterService, AnalyticsChartContractService, ChartContractNormalizerService, ChartContractValidationService, ChartEditorDefaultsService, ChartEditorPreviewMapperService, 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_STATE_PROBE_COMPONENT_METADATA, PraxisChartBackendPayloadAdapterService, PraxisChartCanonicalContractMapperService, PraxisChartComponent, PraxisChartCompositionShowcaseComponent, PraxisChartConfigEditor, PraxisChartDataTransformerService, PraxisChartDrilldownPanelComponent, PraxisChartOptionBuilderService, PraxisChartSchemaMapperService, PraxisChartStateProbeComponent, PraxisChartStatsApiService, buildPraxisChartInteractiveCanvasPage, buildPraxisChartInteractiveWidgetPage, buildPraxisChartMockCanvasPage, buildPraxisChartMockWidgetPage, createPraxisChartsI18nConfig, providePraxisChartDrilldownPanelMetadata, providePraxisChartStateProbeMetadata, providePraxisCharts, providePraxisChartsI18n, providePraxisChartsMetadata, resolvePraxisChartsText };
1135
- 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, PraxisChartDataRow, PraxisChartDataSource, PraxisChartDistributionStatsRequest, PraxisChartEmptyStateConfig, PraxisChartEngineAdapter, PraxisChartEngineRenderPayload, PraxisChartErrorStateConfig, PraxisChartGroupByStatsRequest, PraxisChartInteractionConfig, PraxisChartLegendConfig, PraxisChartLoadState, PraxisChartLocalDataSource, PraxisChartMetricConfig, PraxisChartMotionConfig, PraxisChartMotionPreset, PraxisChartPieSlice, PraxisChartPointEvent, PraxisChartPrimitive, PraxisChartQueryConfig, PraxisChartQueryContext, PraxisChartQueryMetricConfig, PraxisChartQueryRequestEvent, PraxisChartRemoteDataSource, PraxisChartSchemaMeta, PraxisChartSeriesConfig, PraxisChartSeriesLabelConfig, PraxisChartStateConfig, PraxisChartStatsDistributionMode, PraxisChartStatsGranularity, PraxisChartStatsMetricOperation, PraxisChartStatsMetricRequest, PraxisChartStatsOperation, PraxisChartStatsOrderBy, PraxisChartStatsRequest, PraxisChartThemeConfig, PraxisChartTimeSeriesStatsRequest, PraxisChartTooltipConfig, PraxisChartTransformedData, PraxisChartType, PraxisChartWidgetInstance, PraxisChartWidgetLike, PraxisChartWidgetResolution, PraxisChartWidgetSchema, PraxisChartsI18nOptions, PraxisChartsText, PraxisXUiChartAggregation, PraxisXUiChartAggregationConfig, PraxisXUiChartContract, PraxisXUiChartDimension, PraxisXUiChartEventAction, PraxisXUiChartEvents, PraxisXUiChartFilter, PraxisXUiChartKind, PraxisXUiChartMetric, PraxisXUiChartMotion, PraxisXUiChartMotionPreset, PraxisXUiChartPreset, PraxisXUiChartRefresh, PraxisXUiChartRuntimeHints, PraxisXUiChartSort, PraxisXUiChartSource, PraxisXUiChartSourceKind, PraxisXUiChartState, PraxisXUiChartStateDescriptor, PraxisXUiChartStatsDistributionMode, PraxisXUiChartStatsOperation, PraxisXUiChartStatsOrderBy, PraxisXUiChartStatsSourceOptions, PraxisXUiChartTextValue, PraxisXUiChartTheme, PraxisXUiChartToggleableFeature };
1263
+ export { AnalyticsChartConfigAdapterService, AnalyticsChartContractService, ChartContractNormalizerService, ChartContractValidationService, ChartEditorDefaultsService, ChartEditorPreviewMapperService, 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_PALETTE_TOKENS, PRAXIS_CHART_STATE_PROBE_COMPONENT_METADATA, PRAXIS_CHART_THEME_VARIANTS, PraxisChartBackendPayloadAdapterService, PraxisChartCanonicalContractMapperService, PraxisChartComponent, PraxisChartCompositionShowcaseComponent, PraxisChartConfigEditor, PraxisChartDataTransformerService, PraxisChartDrilldownPanelComponent, PraxisChartOptionBuilderService, PraxisChartSchemaMapperService, PraxisChartStateProbeComponent, PraxisChartStatsApiService, buildPraxisChartInteractiveCanvasPage, buildPraxisChartInteractiveWidgetPage, buildPraxisChartMockCanvasPage, buildPraxisChartMockWidgetPage, createPraxisChartsI18nConfig, isPraxisChartPaletteToken, providePraxisChartDrilldownPanelMetadata, providePraxisChartStateProbeMetadata, providePraxisCharts, providePraxisChartsI18n, providePraxisChartsMetadata, resolvePraxisChartPaletteToken, resolvePraxisChartsText };
1264
+ 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, 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, PraxisChartWidgetInstance, PraxisChartWidgetLike, PraxisChartWidgetResolution, PraxisChartWidgetSchema, PraxisChartsI18nOptions, 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 };
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@praxisui/charts",
3
- "version": "7.0.0-beta.0",
3
+ "version": "8.0.0-beta.1",
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": "^20.0.0",
7
7
  "@angular/core": "^20.0.0",
8
- "@praxisui/core": "^7.0.0-beta.0"
8
+ "@praxisui/core": "^8.0.0-beta.1"
9
9
  },
10
10
  "dependencies": {
11
11
  "echarts": "^6.0.0",
@@ -17,7 +17,7 @@
17
17
  },
18
18
  "repository": {
19
19
  "type": "git",
20
- "url": "https://github.com/codexrodrigues/praxis-ui-angular"
20
+ "url": "git+https://github.com/codexrodrigues/praxis-ui-angular.git"
21
21
  },
22
22
  "homepage": "https://praxisui.dev",
23
23
  "bugs": {