@skdx/angular-charts 0.35.0 → 0.37.0

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.
@@ -19,9 +19,9 @@ class SkdxMapChartComponent extends SkdxSizedBase {
19
19
  /** A full color scale for the regions. */
20
20
  this.colorScale = input(/* @ts-ignore */
21
21
  ...(ngDevMode ? [undefined, { debugName: "colorScale" }] : /* istanbul ignore next */ []));
22
- /** Draw the color scale under the map. */
23
- this.colorLegend = input(false, /* @ts-ignore */
24
- ...(ngDevMode ? [{ debugName: "colorLegend" }] : /* istanbul ignore next */ []));
22
+ /** Draw the color scale under the map; an object sets orientation and title. */
23
+ this.colorLegend = input(/* @ts-ignore */
24
+ ...(ngDevMode ? [undefined, { debugName: "colorLegend" }] : /* istanbul ignore next */ []));
25
25
  this.projection = input(/* @ts-ignore */
26
26
  ...(ngDevMode ? [undefined, { debugName: "projection" }] : /* istanbul ignore next */ []));
27
27
  /** A marker layer; markers with a value are sized by it. */
@@ -1 +1 @@
1
- {"version":3,"file":"skdx-angular-charts-map.mjs","sources":["../../src/map/index.ts","../../src/map/skdx-angular-charts-map.ts"],"sourcesContent":["/*\n * Copyright (c) 2026 SkandaDX\n * This file is part of the SkandaDX organization.\n * Licensed under the MIT License. See LICENSE in the repository root.\n */\n\nimport { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\n\nimport {\n layoutMap,\n SkdxChartRootComponent,\n SkdxSizedBase,\n type ColorScale,\n type MapFeature,\n type MapLine,\n type MapPoint,\n} from '@skdx/angular-charts/internal';\n\n/** A choropleth of GeoJSON regions, opacity by value. */\n@Component({\n selector: 'skdx-map-chart',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkdxChartRootComponent],\n template: `\n <skdx-chart-root\n [layout]=\"layout()\"\n [options]=\"options()\"\n kind=\"map\"\n [label]=\"label() ?? 'Map'\"\n [zoomable]=\"zoomable()\"\n [selectionMode]=\"selectionMode()\"\n [editable]=\"editable()\"\n [syncId]=\"syncId()\"\n [crosshair]=\"syncedCrosshair()\"\n [responsive]=\"!!responsive()\"\n (itemClick)=\"itemClick.emit($event)\"\n (dataIssue)=\"dataIssue.emit($event)\"\n (taskChange)=\"taskChange.emit($event)\"\n (hiddenSeriesChange)=\"toggle($event)\"\n (zoomChange)=\"zoom.set($event)\"\n (viewChange)=\"view.set($event)\"\n (selectedChange)=\"selected.set($event)\"\n (highlightedChange)=\"highlighted.set($event)\"\n (syncChange)=\"sync($event)\"\n (measured)=\"measuredWidth.set($event)\"\n ></skdx-chart-root>\n `,\n})\nexport class SkdxMapChartComponent extends SkdxSizedBase {\n readonly features = input.required<MapFeature[]>();\n /** The region color; each region's opacity follows its value. */\n readonly color = input<string>();\n /** A full color scale for the regions. */\n readonly colorScale = input<ColorScale>();\n /** Draw the color scale under the map. */\n readonly colorLegend = input(false);\n readonly projection = input<'equirectangular' | 'mercator'>();\n /** A marker layer; markers with a value are sized by it. */\n readonly points = input<MapPoint[]>();\n /** A line layer: routes and connections. */\n readonly lines = input<MapLine[]>();\n /** Marker radius range in pixels. */\n readonly sizeRange = input<[number, number]>();\n /** Write each region's name at its centre. */\n readonly labels = input(false);\n\n protected readonly layout = computed(() =>\n layoutMap({\n ...this.sized(),\n features: this.features(),\n color: this.color(),\n colorScale: this.colorScale(),\n colorLegend: this.colorLegend(),\n projection: this.projection(),\n points: this.points(),\n lines: this.lines(),\n sizeRange: this.sizeRange(),\n labels: this.labels(),\n }),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skdx-angular-charts-map.mjs","sources":["../../src/map/index.ts","../../src/map/skdx-angular-charts-map.ts"],"sourcesContent":["/*\n * Copyright (c) 2026 SkandaDX\n * This file is part of the SkandaDX organization.\n * Licensed under the MIT License. See LICENSE in the repository root.\n */\n\nimport { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\n\nimport {\n layoutMap,\n SkdxChartRootComponent,\n SkdxSizedBase,\n type ColorLegendOptions,\n type ColorScale,\n type MapFeature,\n type MapLine,\n type MapPoint,\n} from '@skdx/angular-charts/internal';\n\n/** A choropleth of GeoJSON regions, opacity by value. */\n@Component({\n selector: 'skdx-map-chart',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkdxChartRootComponent],\n template: `\n <skdx-chart-root\n [layout]=\"layout()\"\n [options]=\"options()\"\n kind=\"map\"\n [label]=\"label() ?? 'Map'\"\n [zoomable]=\"zoomable()\"\n [selectionMode]=\"selectionMode()\"\n [editable]=\"editable()\"\n [syncId]=\"syncId()\"\n [crosshair]=\"syncedCrosshair()\"\n [responsive]=\"!!responsive()\"\n (itemClick)=\"itemClick.emit($event)\"\n (dataIssue)=\"dataIssue.emit($event)\"\n (taskChange)=\"taskChange.emit($event)\"\n (hiddenSeriesChange)=\"toggle($event)\"\n (zoomChange)=\"zoom.set($event)\"\n (viewChange)=\"view.set($event)\"\n (selectedChange)=\"selected.set($event)\"\n (highlightedChange)=\"highlighted.set($event)\"\n (syncChange)=\"sync($event)\"\n (measured)=\"measuredWidth.set($event)\"\n ></skdx-chart-root>\n `,\n})\nexport class SkdxMapChartComponent extends SkdxSizedBase {\n readonly features = input.required<MapFeature[]>();\n /** The region color; each region's opacity follows its value. */\n readonly color = input<string>();\n /** A full color scale for the regions. */\n readonly colorScale = input<ColorScale>();\n /** Draw the color scale under the map; an object sets orientation and title. */\n readonly colorLegend = input<boolean | ColorLegendOptions>();\n readonly projection = input<'equirectangular' | 'mercator'>();\n /** A marker layer; markers with a value are sized by it. */\n readonly points = input<MapPoint[]>();\n /** A line layer: routes and connections. */\n readonly lines = input<MapLine[]>();\n /** Marker radius range in pixels. */\n readonly sizeRange = input<[number, number]>();\n /** Write each region's name at its centre. */\n readonly labels = input(false);\n\n protected readonly layout = computed(() =>\n layoutMap({\n ...this.sized(),\n features: this.features(),\n color: this.color(),\n colorScale: this.colorScale(),\n colorLegend: this.colorLegend(),\n projection: this.projection(),\n points: this.points(),\n lines: this.lines(),\n sizeRange: this.sizeRange(),\n labels: this.labels(),\n }),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -16,9 +16,6 @@ class SkdxScatterChartComponent extends SkdxSizedBase {
16
16
  /** Bubble radius range in pixels. */
17
17
  this.sizeRange = input(/* @ts-ignore */
18
18
  ...(ngDevMode ? [undefined, { debugName: "sizeRange" }] : /* istanbul ignore next */ []));
19
- /** Least-squares line per series. */
20
- this.trendline = input(false, /* @ts-ignore */
21
- ...(ngDevMode ? [{ debugName: "trendline" }] : /* istanbul ignore next */ []));
22
19
  /** Write each point's label next to it. */
23
20
  this.labels = input(false, /* @ts-ignore */
24
21
  ...(ngDevMode ? [{ debugName: "labels" }] : /* istanbul ignore next */ []));
@@ -33,14 +30,25 @@ class SkdxScatterChartComponent extends SkdxSizedBase {
33
30
  /** Colors points by their `value`. */
34
31
  this.colorScale = input(/* @ts-ignore */
35
32
  ...(ngDevMode ? [undefined, { debugName: "colorScale" }] : /* istanbul ignore next */ []));
36
- /** Draw the color scale under the plot. */
37
- this.colorLegend = input(false, /* @ts-ignore */
38
- ...(ngDevMode ? [{ debugName: "colorLegend" }] : /* istanbul ignore next */ []));
33
+ /** Draw the color scale under the plot; an object sets orientation and title. */
34
+ this.colorLegend = input(/* @ts-ignore */
35
+ ...(ngDevMode ? [undefined, { debugName: "colorLegend" }] : /* istanbul ignore next */ []));
36
+ /** Extra invisible hover radius in pixels. */
37
+ this.hitRadius = input(/* @ts-ignore */
38
+ ...(ngDevMode ? [undefined, { debugName: "hitRadius" }] : /* istanbul ignore next */ []));
39
+ /** Ring offset in pixels for overlapping points. */
40
+ this.jitter = input(/* @ts-ignore */
41
+ ...(ngDevMode ? [undefined, { debugName: "jitter" }] : /* istanbul ignore next */ []));
42
+ /** Least-squares fit per series; true is linear. */
43
+ this.trendline = input(/* @ts-ignore */
44
+ ...(ngDevMode ? [undefined, { debugName: "trendline" }] : /* istanbul ignore next */ []));
45
+ /** Systematic sampling above this many points. */
46
+ this.sampling = input(/* @ts-ignore */
47
+ ...(ngDevMode ? [undefined, { debugName: "sampling" }] : /* istanbul ignore next */ []));
39
48
  this.layout = computed(() => layoutScatterChart({
40
49
  ...this.sized(),
41
50
  series: this.series(),
42
51
  sizeRange: this.sizeRange(),
43
- trendline: this.trendline(),
44
52
  labels: this.labels(),
45
53
  xAxis: this.xAxis(),
46
54
  yAxis: this.yAxis(),
@@ -48,11 +56,15 @@ class SkdxScatterChartComponent extends SkdxSizedBase {
48
56
  annotations: this.annotations(),
49
57
  colorScale: this.colorScale(),
50
58
  colorLegend: this.colorLegend(),
59
+ hitRadius: this.hitRadius(),
60
+ jitter: this.jitter(),
61
+ trendline: this.trendline(),
62
+ sampling: this.sampling(),
51
63
  }), /* @ts-ignore */
52
64
  ...(ngDevMode ? [{ debugName: "layout" }] : /* istanbul ignore next */ []));
53
65
  }
54
66
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SkdxScatterChartComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
55
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.4", type: SkdxScatterChartComponent, isStandalone: true, selector: "skdx-scatter-chart", inputs: { series: { classPropertyName: "series", publicName: "series", isSignal: true, isRequired: true, transformFunction: null }, sizeRange: { classPropertyName: "sizeRange", publicName: "sizeRange", isSignal: true, isRequired: false, transformFunction: null }, trendline: { classPropertyName: "trendline", publicName: "trendline", isSignal: true, isRequired: false, transformFunction: null }, labels: { classPropertyName: "labels", publicName: "labels", isSignal: true, isRequired: false, transformFunction: null }, xAxis: { classPropertyName: "xAxis", publicName: "xAxis", isSignal: true, isRequired: false, transformFunction: null }, yAxis: { classPropertyName: "yAxis", publicName: "yAxis", isSignal: true, isRequired: false, transformFunction: null }, references: { classPropertyName: "references", publicName: "references", isSignal: true, isRequired: false, transformFunction: null }, annotations: { classPropertyName: "annotations", publicName: "annotations", isSignal: true, isRequired: false, transformFunction: null }, colorScale: { classPropertyName: "colorScale", publicName: "colorScale", isSignal: true, isRequired: false, transformFunction: null }, colorLegend: { classPropertyName: "colorLegend", publicName: "colorLegend", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: `
67
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.4", type: SkdxScatterChartComponent, isStandalone: true, selector: "skdx-scatter-chart", inputs: { series: { classPropertyName: "series", publicName: "series", isSignal: true, isRequired: true, transformFunction: null }, sizeRange: { classPropertyName: "sizeRange", publicName: "sizeRange", isSignal: true, isRequired: false, transformFunction: null }, labels: { classPropertyName: "labels", publicName: "labels", isSignal: true, isRequired: false, transformFunction: null }, xAxis: { classPropertyName: "xAxis", publicName: "xAxis", isSignal: true, isRequired: false, transformFunction: null }, yAxis: { classPropertyName: "yAxis", publicName: "yAxis", isSignal: true, isRequired: false, transformFunction: null }, references: { classPropertyName: "references", publicName: "references", isSignal: true, isRequired: false, transformFunction: null }, annotations: { classPropertyName: "annotations", publicName: "annotations", isSignal: true, isRequired: false, transformFunction: null }, colorScale: { classPropertyName: "colorScale", publicName: "colorScale", isSignal: true, isRequired: false, transformFunction: null }, colorLegend: { classPropertyName: "colorLegend", publicName: "colorLegend", isSignal: true, isRequired: false, transformFunction: null }, hitRadius: { classPropertyName: "hitRadius", publicName: "hitRadius", isSignal: true, isRequired: false, transformFunction: null }, jitter: { classPropertyName: "jitter", publicName: "jitter", isSignal: true, isRequired: false, transformFunction: null }, trendline: { classPropertyName: "trendline", publicName: "trendline", isSignal: true, isRequired: false, transformFunction: null }, sampling: { classPropertyName: "sampling", publicName: "sampling", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: `
56
68
  <skdx-chart-root
57
69
  [layout]="layout()"
58
70
  [options]="options()"
@@ -109,7 +121,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
109
121
  ></skdx-chart-root>
110
122
  `,
111
123
  }]
112
- }], propDecorators: { series: [{ type: i0.Input, args: [{ isSignal: true, alias: "series", required: true }] }], sizeRange: [{ type: i0.Input, args: [{ isSignal: true, alias: "sizeRange", required: false }] }], trendline: [{ type: i0.Input, args: [{ isSignal: true, alias: "trendline", required: false }] }], labels: [{ type: i0.Input, args: [{ isSignal: true, alias: "labels", required: false }] }], xAxis: [{ type: i0.Input, args: [{ isSignal: true, alias: "xAxis", required: false }] }], yAxis: [{ type: i0.Input, args: [{ isSignal: true, alias: "yAxis", required: false }] }], references: [{ type: i0.Input, args: [{ isSignal: true, alias: "references", required: false }] }], annotations: [{ type: i0.Input, args: [{ isSignal: true, alias: "annotations", required: false }] }], colorScale: [{ type: i0.Input, args: [{ isSignal: true, alias: "colorScale", required: false }] }], colorLegend: [{ type: i0.Input, args: [{ isSignal: true, alias: "colorLegend", required: false }] }] } });
124
+ }], propDecorators: { series: [{ type: i0.Input, args: [{ isSignal: true, alias: "series", required: true }] }], sizeRange: [{ type: i0.Input, args: [{ isSignal: true, alias: "sizeRange", required: false }] }], labels: [{ type: i0.Input, args: [{ isSignal: true, alias: "labels", required: false }] }], xAxis: [{ type: i0.Input, args: [{ isSignal: true, alias: "xAxis", required: false }] }], yAxis: [{ type: i0.Input, args: [{ isSignal: true, alias: "yAxis", required: false }] }], references: [{ type: i0.Input, args: [{ isSignal: true, alias: "references", required: false }] }], annotations: [{ type: i0.Input, args: [{ isSignal: true, alias: "annotations", required: false }] }], colorScale: [{ type: i0.Input, args: [{ isSignal: true, alias: "colorScale", required: false }] }], colorLegend: [{ type: i0.Input, args: [{ isSignal: true, alias: "colorLegend", required: false }] }], hitRadius: [{ type: i0.Input, args: [{ isSignal: true, alias: "hitRadius", required: false }] }], jitter: [{ type: i0.Input, args: [{ isSignal: true, alias: "jitter", required: false }] }], trendline: [{ type: i0.Input, args: [{ isSignal: true, alias: "trendline", required: false }] }], sampling: [{ type: i0.Input, args: [{ isSignal: true, alias: "sampling", required: false }] }] } });
113
125
 
114
126
  /**
115
127
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"skdx-angular-charts-scatter.mjs","sources":["../../src/scatter/index.ts","../../src/scatter/skdx-angular-charts-scatter.ts"],"sourcesContent":["/*\n * Copyright (c) 2026 SkandaDX\n * This file is part of the SkandaDX organization.\n * Licensed under the MIT License. See LICENSE in the repository root.\n */\n\nimport { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\n\nimport {\n layoutScatterChart,\n SkdxChartRootComponent,\n SkdxSizedBase,\n type Annotation,\n type AxisOptions,\n type ColorScale,\n type Reference,\n type ScatterSeries,\n} from '@skdx/angular-charts/internal';\n\n/** One dot per `[x, y]` pair, or a bubble per `[x, y, size]` triple, on two linear axes. */\n@Component({\n selector: 'skdx-scatter-chart',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkdxChartRootComponent],\n template: `\n <skdx-chart-root\n [layout]=\"layout()\"\n [options]=\"options()\"\n kind=\"scatter\"\n [label]=\"label() ?? 'Scatter chart'\"\n [zoomable]=\"zoomable()\"\n [selectionMode]=\"selectionMode()\"\n [editable]=\"editable()\"\n [syncId]=\"syncId()\"\n [crosshair]=\"syncedCrosshair()\"\n [responsive]=\"!!responsive()\"\n (itemClick)=\"itemClick.emit($event)\"\n (dataIssue)=\"dataIssue.emit($event)\"\n (taskChange)=\"taskChange.emit($event)\"\n (hiddenSeriesChange)=\"toggle($event)\"\n (zoomChange)=\"zoom.set($event)\"\n (viewChange)=\"view.set($event)\"\n (selectedChange)=\"selected.set($event)\"\n (highlightedChange)=\"highlighted.set($event)\"\n (syncChange)=\"sync($event)\"\n (measured)=\"measuredWidth.set($event)\"\n ></skdx-chart-root>\n `,\n})\nexport class SkdxScatterChartComponent extends SkdxSizedBase {\n readonly series = input.required<ScatterSeries[]>();\n /** Bubble radius range in pixels. */\n readonly sizeRange = input<[number, number]>();\n /** Least-squares line per series. */\n readonly trendline = input(false);\n /** Write each point's label next to it. */\n readonly labels = input(false);\n readonly xAxis = input<AxisOptions>();\n readonly yAxis = input<AxisOptions>();\n readonly references = input<Reference[]>();\n readonly annotations = input<Annotation[]>();\n /** Colors points by their `value`. */\n readonly colorScale = input<ColorScale>();\n /** Draw the color scale under the plot. */\n readonly colorLegend = input(false);\n\n protected readonly layout = computed(() =>\n layoutScatterChart({\n ...this.sized(),\n series: this.series(),\n sizeRange: this.sizeRange(),\n trendline: this.trendline(),\n labels: this.labels(),\n xAxis: this.xAxis(),\n yAxis: this.yAxis(),\n references: this.references(),\n annotations: this.annotations(),\n colorScale: this.colorScale(),\n colorLegend: this.colorLegend(),\n }),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skdx-angular-charts-scatter.mjs","sources":["../../src/scatter/index.ts","../../src/scatter/skdx-angular-charts-scatter.ts"],"sourcesContent":["/*\n * Copyright (c) 2026 SkandaDX\n * This file is part of the SkandaDX organization.\n * Licensed under the MIT License. See LICENSE in the repository root.\n */\n\nimport { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\n\nimport {\n layoutScatterChart,\n SkdxChartRootComponent,\n SkdxSizedBase,\n type Annotation,\n type AxisOptions,\n type ColorLegendOptions,\n type ColorScale,\n type Reference,\n type ScatterSeries,\n} from '@skdx/angular-charts/internal';\n\n/** One dot per `[x, y]` pair, or a bubble per `[x, y, size]` triple, on two linear axes. */\n@Component({\n selector: 'skdx-scatter-chart',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkdxChartRootComponent],\n template: `\n <skdx-chart-root\n [layout]=\"layout()\"\n [options]=\"options()\"\n kind=\"scatter\"\n [label]=\"label() ?? 'Scatter chart'\"\n [zoomable]=\"zoomable()\"\n [selectionMode]=\"selectionMode()\"\n [editable]=\"editable()\"\n [syncId]=\"syncId()\"\n [crosshair]=\"syncedCrosshair()\"\n [responsive]=\"!!responsive()\"\n (itemClick)=\"itemClick.emit($event)\"\n (dataIssue)=\"dataIssue.emit($event)\"\n (taskChange)=\"taskChange.emit($event)\"\n (hiddenSeriesChange)=\"toggle($event)\"\n (zoomChange)=\"zoom.set($event)\"\n (viewChange)=\"view.set($event)\"\n (selectedChange)=\"selected.set($event)\"\n (highlightedChange)=\"highlighted.set($event)\"\n (syncChange)=\"sync($event)\"\n (measured)=\"measuredWidth.set($event)\"\n ></skdx-chart-root>\n `,\n})\nexport class SkdxScatterChartComponent extends SkdxSizedBase {\n readonly series = input.required<ScatterSeries[]>();\n /** Bubble radius range in pixels. */\n readonly sizeRange = input<[number, number]>();\n /** Write each point's label next to it. */\n readonly labels = input(false);\n readonly xAxis = input<AxisOptions>();\n readonly yAxis = input<AxisOptions>();\n readonly references = input<Reference[]>();\n readonly annotations = input<Annotation[]>();\n /** Colors points by their `value`. */\n readonly colorScale = input<ColorScale>();\n /** Draw the color scale under the plot; an object sets orientation and title. */\n readonly colorLegend = input<boolean | ColorLegendOptions>();\n /** Extra invisible hover radius in pixels. */\n readonly hitRadius = input<number>();\n /** Ring offset in pixels for overlapping points. */\n readonly jitter = input<number>();\n /** Least-squares fit per series; true is linear. */\n readonly trendline = input<\n boolean | 'linear' | 'exponential' | 'logarithmic' | 'power' | 'polynomial'\n >();\n /** Systematic sampling above this many points. */\n readonly sampling = input<'none' | 'auto' | { threshold: number }>();\n\n protected readonly layout = computed(() =>\n layoutScatterChart({\n ...this.sized(),\n series: this.series(),\n sizeRange: this.sizeRange(),\n labels: this.labels(),\n xAxis: this.xAxis(),\n yAxis: this.yAxis(),\n references: this.references(),\n annotations: this.annotations(),\n colorScale: this.colorScale(),\n colorLegend: this.colorLegend(),\n hitRadius: this.hitRadius(),\n jitter: this.jitter(),\n trendline: this.trendline(),\n sampling: this.sampling(),\n }),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"skdx-angular-charts.mjs","sources":["../../src/public-api.ts","../../src/skdx-angular-charts.ts"],"sourcesContent":["/*\n * Copyright (c) 2026 SkandaDX\n * This file is part of the SkandaDX organization.\n * Licensed under the MIT License. See LICENSE in the repository root.\n */\n\nexport { SkdxBarChartComponent } from '@skdx/angular-charts/bar';\nexport { SkdxLineChartComponent } from '@skdx/angular-charts/line';\nexport { SkdxAreaChartComponent } from '@skdx/angular-charts/area';\nexport { SkdxPieChartComponent } from '@skdx/angular-charts/pie';\nexport { SkdxScatterChartComponent } from '@skdx/angular-charts/scatter';\nexport { SkdxSparklineComponent } from '@skdx/angular-charts/sparkline';\nexport { SkdxRadarChartComponent } from '@skdx/angular-charts/radar';\nexport { SkdxHeatmapComponent } from '@skdx/angular-charts/heatmap';\nexport { SkdxFunnelChartComponent } from '@skdx/angular-charts/funnel';\nexport { SkdxSankeyChartComponent } from '@skdx/angular-charts/sankey';\nexport { SkdxTreemapComponent } from '@skdx/angular-charts/treemap';\nexport { SkdxCandlestickChartComponent } from '@skdx/angular-charts/candlestick';\nexport { SkdxWaterfallChartComponent } from '@skdx/angular-charts/waterfall';\nexport { SkdxGanttChartComponent } from '@skdx/angular-charts/gantt';\nexport { SkdxBoxplotComponent } from '@skdx/angular-charts/boxplot';\nexport { SkdxSunburstChartComponent } from '@skdx/angular-charts/sunburst';\nexport { SkdxChordChartComponent } from '@skdx/angular-charts/chord';\nexport { SkdxMapChartComponent } from '@skdx/angular-charts/map';\nexport { SkdxRadialBarChartComponent } from '@skdx/angular-charts/radial';\nexport { SkdxGaugeChartComponent } from '@skdx/angular-charts/gauge';\nexport { SkdxBubbleChartComponent } from '@skdx/angular-charts/bubble';\nexport { SkdxHistogramComponent } from '@skdx/angular-charts/histogram';\nexport { SkdxBulletChartComponent } from '@skdx/angular-charts/bullet';\nexport { SkdxComboChartComponent } from '@skdx/angular-charts/combo';\nexport { SkdxRangeChartComponent } from '@skdx/angular-charts/range';\nexport { SkdxNetworkChartComponent } from '@skdx/angular-charts/network';\nexport { SkdxTimelineChartComponent } from '@skdx/angular-charts/timeline';\nexport { SkdxMarimekkoChartComponent } from '@skdx/angular-charts/marimekko';\nexport { SkdxParallelCoordinatesChartComponent } from '@skdx/angular-charts/parallel';\nexport { SkdxLinearGaugeComponent } from '@skdx/angular-charts/linear-gauge';\nexport { SkdxDumbbellChartComponent } from '@skdx/angular-charts/dumbbell';\nexport { SkdxParetoChartComponent } from '@skdx/angular-charts/pareto';\nexport { SkdxBumpChartComponent } from '@skdx/angular-charts/bump';\nexport { SkdxPolarAreaChartComponent } from '@skdx/angular-charts/polar-area';\nexport { SkdxSwarmPlotComponent } from '@skdx/angular-charts/swarm';\nexport { SkdxWaffleChartComponent } from '@skdx/angular-charts/waffle';\nexport { SkdxTreeChartComponent } from '@skdx/angular-charts/tree';\nexport { SkdxOrganizationChartComponent } from '@skdx/angular-charts/organization';\nexport { SkdxCirclePackingChartComponent } from '@skdx/angular-charts/circle-packing';\nexport { SkdxIcicleChartComponent } from '@skdx/angular-charts/icicle';\nexport {\n csv,\n exportChart,\n seriesCsv,\n svgMarkup,\n makeFormatter,\n} from '@skdx/angular-charts/internal';\nexport type { SelectionMode } from '@skdx/angular-charts/internal';\nexport type {\n AxisOptions,\n AccessibleTableOptions,\n Annotation,\n BoxplotSeries,\n BoxSummary,\n CandlestickOverlay,\n ChartDataIssue,\n ChartExportOptions,\n ChartItemId,\n ChartItemRef,\n ChordLink,\n ColorScale,\n DumbbellDatum,\n BumpChartInput,\n PolarAreaChartInput,\n SwarmPlotInput,\n WaffleChartInput,\n ErrorValue,\n HighlightScope,\n LegendOptions,\n MapLine,\n MapView,\n SyncState,\n TaskChange,\n GroupedBoxSeries,\n RadarMetric,\n Sampling,\n SankeyNode,\n Selection,\n SeriesTransform,\n TooltipOptions,\n Band,\n BubblePoint,\n BubbleSeries,\n BulletDatum,\n ComboSeries,\n MapPoint,\n MarkerSymbol,\n NetworkEdge,\n NetworkNode,\n RangeChartSeries,\n ScatterPoint,\n TimelineEvent,\n WaterfallDatum,\n MarimekkoCategory,\n ParallelDimension,\n ParallelRow,\n CalendarCell,\n Candle,\n CartesianSeries,\n Category,\n ChartItem,\n Curve,\n Datum,\n Format,\n GanttTask,\n GeoMultiPolygon,\n GeoPolygon,\n MapFeature,\n RadialBand,\n RangeSeries,\n Reference,\n SankeyLink,\n ScatterSeries,\n Series,\n TreeNode,\n Value,\n Variant,\n XAxisOptions,\n TreeChartInput,\n OrganizationChartInput,\n CirclePackingInput,\n IcicleInput,\n Zoom,\n} from '@skdx/angular-charts/internal';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;AAIG;;ACJH;;AAEG"}
1
+ {"version":3,"file":"skdx-angular-charts.mjs","sources":["../../src/public-api.ts","../../src/skdx-angular-charts.ts"],"sourcesContent":["/*\n * Copyright (c) 2026 SkandaDX\n * This file is part of the SkandaDX organization.\n * Licensed under the MIT License. See LICENSE in the repository root.\n */\n\nexport { SkdxBarChartComponent } from '@skdx/angular-charts/bar';\nexport { SkdxLineChartComponent } from '@skdx/angular-charts/line';\nexport { SkdxAreaChartComponent } from '@skdx/angular-charts/area';\nexport { SkdxPieChartComponent } from '@skdx/angular-charts/pie';\nexport { SkdxScatterChartComponent } from '@skdx/angular-charts/scatter';\nexport { SkdxSparklineComponent } from '@skdx/angular-charts/sparkline';\nexport { SkdxRadarChartComponent } from '@skdx/angular-charts/radar';\nexport { SkdxHeatmapComponent } from '@skdx/angular-charts/heatmap';\nexport { SkdxFunnelChartComponent } from '@skdx/angular-charts/funnel';\nexport { SkdxSankeyChartComponent } from '@skdx/angular-charts/sankey';\nexport { SkdxTreemapComponent } from '@skdx/angular-charts/treemap';\nexport { SkdxCandlestickChartComponent } from '@skdx/angular-charts/candlestick';\nexport { SkdxWaterfallChartComponent } from '@skdx/angular-charts/waterfall';\nexport { SkdxGanttChartComponent } from '@skdx/angular-charts/gantt';\nexport { SkdxBoxplotComponent } from '@skdx/angular-charts/boxplot';\nexport { SkdxSunburstChartComponent } from '@skdx/angular-charts/sunburst';\nexport { SkdxChordChartComponent } from '@skdx/angular-charts/chord';\nexport { SkdxMapChartComponent } from '@skdx/angular-charts/map';\nexport { SkdxRadialBarChartComponent } from '@skdx/angular-charts/radial';\nexport { SkdxGaugeChartComponent } from '@skdx/angular-charts/gauge';\nexport { SkdxBubbleChartComponent } from '@skdx/angular-charts/bubble';\nexport { SkdxHistogramComponent } from '@skdx/angular-charts/histogram';\nexport { SkdxBulletChartComponent } from '@skdx/angular-charts/bullet';\nexport { SkdxComboChartComponent } from '@skdx/angular-charts/combo';\nexport { SkdxRangeChartComponent } from '@skdx/angular-charts/range';\nexport { SkdxNetworkChartComponent } from '@skdx/angular-charts/network';\nexport { SkdxTimelineChartComponent } from '@skdx/angular-charts/timeline';\nexport { SkdxMarimekkoChartComponent } from '@skdx/angular-charts/marimekko';\nexport { SkdxParallelCoordinatesChartComponent } from '@skdx/angular-charts/parallel';\nexport { SkdxLinearGaugeComponent } from '@skdx/angular-charts/linear-gauge';\nexport { SkdxDumbbellChartComponent } from '@skdx/angular-charts/dumbbell';\nexport { SkdxParetoChartComponent } from '@skdx/angular-charts/pareto';\nexport { SkdxBumpChartComponent } from '@skdx/angular-charts/bump';\nexport { SkdxPolarAreaChartComponent } from '@skdx/angular-charts/polar-area';\nexport { SkdxSwarmPlotComponent } from '@skdx/angular-charts/swarm';\nexport { SkdxWaffleChartComponent } from '@skdx/angular-charts/waffle';\nexport { SkdxTreeChartComponent } from '@skdx/angular-charts/tree';\nexport { SkdxOrganizationChartComponent } from '@skdx/angular-charts/organization';\nexport { SkdxCirclePackingChartComponent } from '@skdx/angular-charts/circle-packing';\nexport { SkdxIcicleChartComponent } from '@skdx/angular-charts/icicle';\nexport {\n csv,\n exportChart,\n seriesCsv,\n svgMarkup,\n makeFormatter,\n} from '@skdx/angular-charts/internal';\nexport type { SelectionMode } from '@skdx/angular-charts/internal';\nexport type {\n AxisOptions,\n AccessibleTableOptions,\n Annotation,\n BoxplotSeries,\n BoxSummary,\n CandlestickOverlay,\n ChartDataIssue,\n ChartExportOptions,\n ChartItemId,\n ChartItemRef,\n ChordLink,\n ColorScale,\n DumbbellDatum,\n BumpChartInput,\n PolarAreaChartInput,\n SwarmPlotInput,\n WaffleChartInput,\n MarimekkoChartInput,\n TimelineChartInput,\n ParallelCoordinatesInput,\n ErrorValue,\n HighlightScope,\n LegendOptions,\n MapLine,\n MapView,\n SyncState,\n TaskChange,\n GroupedBoxSeries,\n RadarMetric,\n Sampling,\n SankeyNode,\n Selection,\n SeriesTransform,\n TooltipOptions,\n Band,\n BubblePoint,\n BubbleSeries,\n BulletDatum,\n ComboSeries,\n MapPoint,\n MarkerSymbol,\n NetworkEdge,\n NetworkNode,\n RangeChartSeries,\n ScatterPoint,\n TimelineEvent,\n WaterfallDatum,\n MarimekkoCategory,\n ParallelDimension,\n ParallelRow,\n CalendarCell,\n Candle,\n CartesianSeries,\n Category,\n ChartItem,\n Curve,\n Datum,\n Format,\n GanttTask,\n GeoMultiPolygon,\n GeoPolygon,\n MapFeature,\n RadialBand,\n RangeSeries,\n Reference,\n SankeyLink,\n ScatterSeries,\n Series,\n TreeNode,\n Value,\n Variant,\n XAxisOptions,\n TreeChartInput,\n OrganizationChartInput,\n CirclePackingInput,\n IcicleInput,\n Zoom,\n} from '@skdx/angular-charts/internal';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;AAIG;;ACJH;;AAEG"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skdx/angular-charts",
3
- "version": "0.35.0",
3
+ "version": "0.37.0",
4
4
  "description": "Forty SVG charts as standalone Angular components, from bar and line to sankey, radial bar and choropleth map — colored by @skdx/tokens",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
@@ -20,7 +20,7 @@
20
20
  "peerDependencies": {
21
21
  "@angular/common": "^22.0.0",
22
22
  "@angular/core": "^22.0.0",
23
- "@skdx/tokens": "^0.35.0"
23
+ "@skdx/tokens": "^0.37.0"
24
24
  },
25
25
  "dependencies": {
26
26
  "tslib": "^2.3.0"
@@ -1,5 +1,5 @@
1
1
  import * as _skdx_angular_charts_internal from '@skdx/angular-charts/internal';
2
- import { SkdxSizedBase, BubbleSeries, AxisOptions, Reference, Annotation, ColorScale } from '@skdx/angular-charts/internal';
2
+ import { SkdxSizedBase, BubbleSeries, AxisOptions, Reference, Annotation, ColorScale, ColorLegendOptions } from '@skdx/angular-charts/internal';
3
3
  import * as _angular_core from '@angular/core';
4
4
 
5
5
  /** Three quantities per mark: x, y and a magnitude the bubble's area follows. */
@@ -17,11 +17,21 @@ declare class SkdxBubbleChartComponent extends SkdxSizedBase {
17
17
  readonly annotations: _angular_core.InputSignal<Annotation[] | undefined>;
18
18
  /** Colors bubbles by their `value` (or `z`). */
19
19
  readonly colorScale: _angular_core.InputSignal<ColorScale | undefined>;
20
- /** Draw the color scale under the plot. */
21
- readonly colorLegend: _angular_core.InputSignal<boolean>;
20
+ /** Draw the color scale under the plot; an object sets orientation and title. */
21
+ readonly colorLegend: _angular_core.InputSignal<boolean | ColorLegendOptions | undefined>;
22
+ /** Extra invisible hover radius in pixels. */
23
+ readonly hitRadius: _angular_core.InputSignal<number | undefined>;
24
+ /** Ring offset in pixels for overlapping points. */
25
+ readonly jitter: _angular_core.InputSignal<number | undefined>;
26
+ /** Least-squares fit per series; true is linear. */
27
+ readonly trendline: _angular_core.InputSignal<boolean | "linear" | "exponential" | "logarithmic" | "power" | "polynomial" | undefined>;
28
+ /** Systematic sampling above this many points. */
29
+ readonly sampling: _angular_core.InputSignal<{
30
+ threshold: number;
31
+ } | "none" | "auto" | undefined>;
22
32
  protected readonly layout: _angular_core.Signal<_skdx_angular_charts_internal.Canvas>;
23
33
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SkdxBubbleChartComponent, never>;
24
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SkdxBubbleChartComponent, "skdx-bubble-chart", never, { "series": { "alias": "series"; "required": true; "isSignal": true; }; "sizeRange": { "alias": "sizeRange"; "required": false; "isSignal": true; }; "labels": { "alias": "labels"; "required": false; "isSignal": true; }; "xAxis": { "alias": "xAxis"; "required": false; "isSignal": true; }; "yAxis": { "alias": "yAxis"; "required": false; "isSignal": true; }; "zAxis": { "alias": "zAxis"; "required": false; "isSignal": true; }; "references": { "alias": "references"; "required": false; "isSignal": true; }; "annotations": { "alias": "annotations"; "required": false; "isSignal": true; }; "colorScale": { "alias": "colorScale"; "required": false; "isSignal": true; }; "colorLegend": { "alias": "colorLegend"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
34
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SkdxBubbleChartComponent, "skdx-bubble-chart", never, { "series": { "alias": "series"; "required": true; "isSignal": true; }; "sizeRange": { "alias": "sizeRange"; "required": false; "isSignal": true; }; "labels": { "alias": "labels"; "required": false; "isSignal": true; }; "xAxis": { "alias": "xAxis"; "required": false; "isSignal": true; }; "yAxis": { "alias": "yAxis"; "required": false; "isSignal": true; }; "zAxis": { "alias": "zAxis"; "required": false; "isSignal": true; }; "references": { "alias": "references"; "required": false; "isSignal": true; }; "annotations": { "alias": "annotations"; "required": false; "isSignal": true; }; "colorScale": { "alias": "colorScale"; "required": false; "isSignal": true; }; "colorLegend": { "alias": "colorLegend"; "required": false; "isSignal": true; }; "hitRadius": { "alias": "hitRadius"; "required": false; "isSignal": true; }; "jitter": { "alias": "jitter"; "required": false; "isSignal": true; }; "trendline": { "alias": "trendline"; "required": false; "isSignal": true; }; "sampling": { "alias": "sampling"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
25
35
  }
26
36
 
27
37
  export { SkdxBubbleChartComponent };
@@ -20,8 +20,8 @@ declare class SkdxGaugeChartComponent extends SkdxSizedBase {
20
20
  readonly bands: _angular_core.InputSignal<Band[] | undefined>;
21
21
  /** A marker at this value. */
22
22
  readonly target: _angular_core.InputSignal<number | undefined>;
23
- /** Tick count including both ends; 0 for none. Defaults to 5. */
24
- readonly ticks: _angular_core.InputSignal<number | undefined>;
23
+ /** Tick count including both ends; false or 0 for none, true for 5. Defaults to 5. */
24
+ readonly ticks: _angular_core.InputSignal<number | boolean | undefined>;
25
25
  /** Write the tick values. */
26
26
  readonly tickLabels: _angular_core.InputSignal<boolean>;
27
27
  /** Text in the middle; defaults to the formatted value. */
@@ -1,5 +1,5 @@
1
1
  import * as _skdx_angular_charts_internal from '@skdx/angular-charts/internal';
2
- import { SkdxSizedBase, Value, CalendarCell, ColorScale } from '@skdx/angular-charts/internal';
2
+ import { SkdxSizedBase, Value, CalendarCell, ColorScale, ColorLegendOptions } from '@skdx/angular-charts/internal';
3
3
  import * as _angular_core from '@angular/core';
4
4
 
5
5
  /** A grid of cells whose opacity follows the value; `calendar` lays days out as weekday rows and week columns. */
@@ -24,8 +24,8 @@ declare class SkdxHeatmapComponent extends SkdxSizedBase {
24
24
  readonly weekStart: _angular_core.InputSignal<"monday" | "sunday" | undefined>;
25
25
  /** A full color scale; wins over color/diverging/steps/domain. */
26
26
  readonly colorScale: _angular_core.InputSignal<ColorScale | undefined>;
27
- /** Draw the color scale under the grid. */
28
- readonly colorLegend: _angular_core.InputSignal<boolean>;
27
+ /** Draw the color scale under the grid; an object sets orientation and title. */
28
+ readonly colorLegend: _angular_core.InputSignal<boolean | ColorLegendOptions | undefined>;
29
29
  /** Fill for null cells. */
30
30
  readonly missingColor: _angular_core.InputSignal<string | undefined>;
31
31
  /** Gap between cells in pixels. */
@@ -576,6 +576,16 @@ interface BubbleChartInput extends Sized {
576
576
  colorScale?: ColorScale | undefined;
577
577
  /** Draw the `colorScale` legend under the plot, or beside it. @default false */
578
578
  colorLegend?: boolean | ColorLegendOptions | undefined;
579
+ /** Extra invisible radius around each bubble that still counts as a hover/click. @default 0 */
580
+ hitRadius?: number | undefined;
581
+ /** Deterministic jitter in pixels applied to overlapping bubbles. @default 0 */
582
+ jitter?: number | undefined;
583
+ /** Least-squares fit per series: `true` is linear. @default false */
584
+ trendline?: boolean | 'linear' | 'exponential' | 'logarithmic' | 'power' | 'polynomial' | undefined;
585
+ /** Above this many bubbles every k-th one is kept (systematic sampling). @default 'none' */
586
+ sampling?: 'none' | 'auto' | {
587
+ threshold: number;
588
+ } | undefined;
579
589
  }
580
590
  /** A qualitative sector of a gauge or bullet scale. */
581
591
  interface Band {
@@ -800,7 +810,7 @@ interface NetworkNode extends Identified {
800
810
  /** Category, for color and the legend. */
801
811
  group?: string | undefined;
802
812
  color?: string | undefined;
803
- /** Position in data units, used by `layout: 'manual'`. */
813
+ /** Position in data units, used by `arrange: 'manual'`. */
804
814
  x?: number | undefined;
805
815
  y?: number | undefined;
806
816
  }
@@ -1,5 +1,5 @@
1
1
  import * as _skdx_angular_charts_internal from '@skdx/angular-charts/internal';
2
- import { SkdxSizedBase, MapFeature, ColorScale, MapPoint, MapLine } from '@skdx/angular-charts/internal';
2
+ import { SkdxSizedBase, MapFeature, ColorScale, ColorLegendOptions, MapPoint, MapLine } from '@skdx/angular-charts/internal';
3
3
  import * as _angular_core from '@angular/core';
4
4
 
5
5
  /** A choropleth of GeoJSON regions, opacity by value. */
@@ -9,8 +9,8 @@ declare class SkdxMapChartComponent extends SkdxSizedBase {
9
9
  readonly color: _angular_core.InputSignal<string | undefined>;
10
10
  /** A full color scale for the regions. */
11
11
  readonly colorScale: _angular_core.InputSignal<ColorScale | undefined>;
12
- /** Draw the color scale under the map. */
13
- readonly colorLegend: _angular_core.InputSignal<boolean>;
12
+ /** Draw the color scale under the map; an object sets orientation and title. */
13
+ readonly colorLegend: _angular_core.InputSignal<boolean | ColorLegendOptions | undefined>;
14
14
  readonly projection: _angular_core.InputSignal<"equirectangular" | "mercator" | undefined>;
15
15
  /** A marker layer; markers with a value are sized by it. */
16
16
  readonly points: _angular_core.InputSignal<MapPoint[] | undefined>;
@@ -1,5 +1,5 @@
1
1
  import * as _skdx_angular_charts_internal from '@skdx/angular-charts/internal';
2
- import { SkdxSizedBase, ScatterSeries, AxisOptions, Reference, Annotation, ColorScale } from '@skdx/angular-charts/internal';
2
+ import { SkdxSizedBase, ScatterSeries, AxisOptions, Reference, Annotation, ColorScale, ColorLegendOptions } from '@skdx/angular-charts/internal';
3
3
  import * as _angular_core from '@angular/core';
4
4
 
5
5
  /** One dot per `[x, y]` pair, or a bubble per `[x, y, size]` triple, on two linear axes. */
@@ -7,8 +7,6 @@ declare class SkdxScatterChartComponent extends SkdxSizedBase {
7
7
  readonly series: _angular_core.InputSignal<ScatterSeries[]>;
8
8
  /** Bubble radius range in pixels. */
9
9
  readonly sizeRange: _angular_core.InputSignal<[number, number] | undefined>;
10
- /** Least-squares line per series. */
11
- readonly trendline: _angular_core.InputSignal<boolean>;
12
10
  /** Write each point's label next to it. */
13
11
  readonly labels: _angular_core.InputSignal<boolean>;
14
12
  readonly xAxis: _angular_core.InputSignal<AxisOptions | undefined>;
@@ -17,11 +15,21 @@ declare class SkdxScatterChartComponent extends SkdxSizedBase {
17
15
  readonly annotations: _angular_core.InputSignal<Annotation[] | undefined>;
18
16
  /** Colors points by their `value`. */
19
17
  readonly colorScale: _angular_core.InputSignal<ColorScale | undefined>;
20
- /** Draw the color scale under the plot. */
21
- readonly colorLegend: _angular_core.InputSignal<boolean>;
18
+ /** Draw the color scale under the plot; an object sets orientation and title. */
19
+ readonly colorLegend: _angular_core.InputSignal<boolean | ColorLegendOptions | undefined>;
20
+ /** Extra invisible hover radius in pixels. */
21
+ readonly hitRadius: _angular_core.InputSignal<number | undefined>;
22
+ /** Ring offset in pixels for overlapping points. */
23
+ readonly jitter: _angular_core.InputSignal<number | undefined>;
24
+ /** Least-squares fit per series; true is linear. */
25
+ readonly trendline: _angular_core.InputSignal<boolean | "linear" | "exponential" | "logarithmic" | "power" | "polynomial" | undefined>;
26
+ /** Systematic sampling above this many points. */
27
+ readonly sampling: _angular_core.InputSignal<{
28
+ threshold: number;
29
+ } | "none" | "auto" | undefined>;
22
30
  protected readonly layout: _angular_core.Signal<_skdx_angular_charts_internal.Canvas>;
23
31
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SkdxScatterChartComponent, never>;
24
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SkdxScatterChartComponent, "skdx-scatter-chart", never, { "series": { "alias": "series"; "required": true; "isSignal": true; }; "sizeRange": { "alias": "sizeRange"; "required": false; "isSignal": true; }; "trendline": { "alias": "trendline"; "required": false; "isSignal": true; }; "labels": { "alias": "labels"; "required": false; "isSignal": true; }; "xAxis": { "alias": "xAxis"; "required": false; "isSignal": true; }; "yAxis": { "alias": "yAxis"; "required": false; "isSignal": true; }; "references": { "alias": "references"; "required": false; "isSignal": true; }; "annotations": { "alias": "annotations"; "required": false; "isSignal": true; }; "colorScale": { "alias": "colorScale"; "required": false; "isSignal": true; }; "colorLegend": { "alias": "colorLegend"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
32
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SkdxScatterChartComponent, "skdx-scatter-chart", never, { "series": { "alias": "series"; "required": true; "isSignal": true; }; "sizeRange": { "alias": "sizeRange"; "required": false; "isSignal": true; }; "labels": { "alias": "labels"; "required": false; "isSignal": true; }; "xAxis": { "alias": "xAxis"; "required": false; "isSignal": true; }; "yAxis": { "alias": "yAxis"; "required": false; "isSignal": true; }; "references": { "alias": "references"; "required": false; "isSignal": true; }; "annotations": { "alias": "annotations"; "required": false; "isSignal": true; }; "colorScale": { "alias": "colorScale"; "required": false; "isSignal": true; }; "colorLegend": { "alias": "colorLegend"; "required": false; "isSignal": true; }; "hitRadius": { "alias": "hitRadius"; "required": false; "isSignal": true; }; "jitter": { "alias": "jitter"; "required": false; "isSignal": true; }; "trendline": { "alias": "trendline"; "required": false; "isSignal": true; }; "sampling": { "alias": "sampling"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
25
33
  }
26
34
 
27
35
  export { SkdxScatterChartComponent };
@@ -38,4 +38,4 @@ export { SkdxTreeChartComponent } from '@skdx/angular-charts/tree';
38
38
  export { SkdxOrganizationChartComponent } from '@skdx/angular-charts/organization';
39
39
  export { SkdxCirclePackingChartComponent } from '@skdx/angular-charts/circle-packing';
40
40
  export { SkdxIcicleChartComponent } from '@skdx/angular-charts/icicle';
41
- export { AccessibleTableOptions, Annotation, AxisOptions, Band, BoxSummary, BoxplotSeries, BubblePoint, BubbleSeries, BulletDatum, BumpChartInput, CalendarCell, Candle, CandlestickOverlay, CartesianSeries, Category, ChartDataIssue, ChartExportOptions, ChartItem, ChartItemId, ChartItemRef, ChordLink, CirclePackingInput, ColorScale, ComboSeries, Curve, Datum, DumbbellDatum, ErrorValue, Format, GanttTask, GeoMultiPolygon, GeoPolygon, GroupedBoxSeries, HighlightScope, IcicleInput, LegendOptions, MapFeature, MapLine, MapPoint, MapView, MarimekkoCategory, MarkerSymbol, NetworkEdge, NetworkNode, OrganizationChartInput, ParallelDimension, ParallelRow, PolarAreaChartInput, RadarMetric, RadialBand, RangeChartSeries, RangeSeries, Reference, Sampling, SankeyLink, SankeyNode, ScatterPoint, ScatterSeries, Selection, SelectionMode, Series, SeriesTransform, SwarmPlotInput, SyncState, TaskChange, TimelineEvent, TooltipOptions, TreeChartInput, TreeNode, Value, Variant, WaffleChartInput, WaterfallDatum, XAxisOptions, Zoom, csv, exportChart, makeFormatter, seriesCsv, svgMarkup } from '@skdx/angular-charts/internal';
41
+ export { AccessibleTableOptions, Annotation, AxisOptions, Band, BoxSummary, BoxplotSeries, BubblePoint, BubbleSeries, BulletDatum, BumpChartInput, CalendarCell, Candle, CandlestickOverlay, CartesianSeries, Category, ChartDataIssue, ChartExportOptions, ChartItem, ChartItemId, ChartItemRef, ChordLink, CirclePackingInput, ColorScale, ComboSeries, Curve, Datum, DumbbellDatum, ErrorValue, Format, GanttTask, GeoMultiPolygon, GeoPolygon, GroupedBoxSeries, HighlightScope, IcicleInput, LegendOptions, MapFeature, MapLine, MapPoint, MapView, MarimekkoCategory, MarimekkoChartInput, MarkerSymbol, NetworkEdge, NetworkNode, OrganizationChartInput, ParallelCoordinatesInput, ParallelDimension, ParallelRow, PolarAreaChartInput, RadarMetric, RadialBand, RangeChartSeries, RangeSeries, Reference, Sampling, SankeyLink, SankeyNode, ScatterPoint, ScatterSeries, Selection, SelectionMode, Series, SeriesTransform, SwarmPlotInput, SyncState, TaskChange, TimelineChartInput, TimelineEvent, TooltipOptions, TreeChartInput, TreeNode, Value, Variant, WaffleChartInput, WaterfallDatum, XAxisOptions, Zoom, csv, exportChart, makeFormatter, seriesCsv, svgMarkup } from '@skdx/angular-charts/internal';