@skdx/angular-charts 0.33.0 → 0.34.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.
- package/README.md +96 -41
- package/fesm2022/skdx-angular-charts-area.mjs +14 -2
- package/fesm2022/skdx-angular-charts-area.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-bar.mjs +18 -15
- package/fesm2022/skdx-angular-charts-bar.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-boxplot.mjs +18 -6
- package/fesm2022/skdx-angular-charts-boxplot.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-candlestick.mjs +41 -8
- package/fesm2022/skdx-angular-charts-candlestick.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-chord.mjs +18 -6
- package/fesm2022/skdx-angular-charts-chord.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-funnel.mjs +29 -8
- package/fesm2022/skdx-angular-charts-funnel.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-gantt.mjs +23 -11
- package/fesm2022/skdx-angular-charts-gantt.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-heatmap.mjs +53 -15
- package/fesm2022/skdx-angular-charts-heatmap.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-internal.mjs +2709 -494
- package/fesm2022/skdx-angular-charts-internal.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-line.mjs +14 -2
- package/fesm2022/skdx-angular-charts-line.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-map.mjs +35 -8
- package/fesm2022/skdx-angular-charts-map.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-pie.mjs +37 -5
- package/fesm2022/skdx-angular-charts-pie.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-radar.mjs +35 -8
- package/fesm2022/skdx-angular-charts-radar.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-radial.mjs +108 -0
- package/fesm2022/skdx-angular-charts-radial.mjs.map +1 -0
- package/fesm2022/skdx-angular-charts-sankey.mjs +18 -6
- package/fesm2022/skdx-angular-charts-sankey.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-scatter.mjs +37 -5
- package/fesm2022/skdx-angular-charts-scatter.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-sparkline.mjs +42 -8
- package/fesm2022/skdx-angular-charts-sparkline.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-sunburst.mjs +18 -6
- package/fesm2022/skdx-angular-charts-sunburst.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-treemap.mjs +26 -6
- package/fesm2022/skdx-angular-charts-treemap.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts-waterfall.mjs +18 -6
- package/fesm2022/skdx-angular-charts-waterfall.mjs.map +1 -1
- package/fesm2022/skdx-angular-charts.mjs +2 -0
- package/fesm2022/skdx-angular-charts.mjs.map +1 -1
- package/package.json +7 -3
- package/types/skdx-angular-charts-area.d.ts +1 -1
- package/types/skdx-angular-charts-bar.d.ts +5 -13
- package/types/skdx-angular-charts-boxplot.d.ts +2 -2
- package/types/skdx-angular-charts-candlestick.d.ts +10 -4
- package/types/skdx-angular-charts-chord.d.ts +2 -2
- package/types/skdx-angular-charts-funnel.d.ts +5 -3
- package/types/skdx-angular-charts-gantt.d.ts +6 -6
- package/types/skdx-angular-charts-heatmap.d.ts +16 -8
- package/types/skdx-angular-charts-internal.d.ts +581 -44
- package/types/skdx-angular-charts-line.d.ts +1 -1
- package/types/skdx-angular-charts-map.d.ts +4 -3
- package/types/skdx-angular-charts-pie.d.ts +10 -2
- package/types/skdx-angular-charts-radar.d.ts +8 -3
- package/types/skdx-angular-charts-radial.d.ts +34 -0
- package/types/skdx-angular-charts-sankey.d.ts +2 -2
- package/types/skdx-angular-charts-scatter.d.ts +10 -3
- package/types/skdx-angular-charts-sparkline.d.ts +13 -5
- package/types/skdx-angular-charts-sunburst.d.ts +2 -2
- package/types/skdx-angular-charts-treemap.d.ts +4 -4
- package/types/skdx-angular-charts-waterfall.d.ts +2 -2
- package/types/skdx-angular-charts.d.ts +2 -1
|
@@ -7,23 +7,49 @@ import { SkdxSizedBase, layoutScatterChart, SkdxChartRootComponent } from '@skdx
|
|
|
7
7
|
* This file is part of the SkandaDX organization.
|
|
8
8
|
* Licensed under the MIT License. See LICENSE in the repository root.
|
|
9
9
|
*/
|
|
10
|
-
/** One dot per `[x, y]` pair on two linear axes. */
|
|
10
|
+
/** One dot per `[x, y]` pair, or a bubble per `[x, y, size]` triple, on two linear axes. */
|
|
11
11
|
class SkdxScatterChartComponent extends SkdxSizedBase {
|
|
12
12
|
constructor() {
|
|
13
13
|
super(...arguments);
|
|
14
14
|
this.series = input.required(/* @ts-ignore */
|
|
15
15
|
...(ngDevMode ? [{ debugName: "series" }] : /* istanbul ignore next */ []));
|
|
16
|
-
|
|
16
|
+
/** Bubble radius range in pixels. */
|
|
17
|
+
this.sizeRange = input(/* @ts-ignore */
|
|
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
|
+
this.xAxis = input(/* @ts-ignore */
|
|
23
|
+
...(ngDevMode ? [undefined, { debugName: "xAxis" }] : /* istanbul ignore next */ []));
|
|
24
|
+
this.yAxis = input(/* @ts-ignore */
|
|
25
|
+
...(ngDevMode ? [undefined, { debugName: "yAxis" }] : /* istanbul ignore next */ []));
|
|
26
|
+
this.references = input(/* @ts-ignore */
|
|
27
|
+
...(ngDevMode ? [undefined, { debugName: "references" }] : /* istanbul ignore next */ []));
|
|
28
|
+
this.layout = computed(() => layoutScatterChart({
|
|
29
|
+
...this.sized(),
|
|
30
|
+
series: this.series(),
|
|
31
|
+
sizeRange: this.sizeRange(),
|
|
32
|
+
trendline: this.trendline(),
|
|
33
|
+
xAxis: this.xAxis(),
|
|
34
|
+
yAxis: this.yAxis(),
|
|
35
|
+
references: this.references(),
|
|
36
|
+
}), /* @ts-ignore */
|
|
17
37
|
...(ngDevMode ? [{ debugName: "layout" }] : /* istanbul ignore next */ []));
|
|
18
38
|
}
|
|
19
39
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SkdxScatterChartComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
20
|
-
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 } }, usesInheritance: true, ngImport: i0, template: `
|
|
40
|
+
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 }, 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 } }, usesInheritance: true, ngImport: i0, template: `
|
|
21
41
|
<skdx-chart-root
|
|
22
42
|
[layout]="layout()"
|
|
23
43
|
kind="scatter"
|
|
24
44
|
[label]="label() ?? 'Scatter chart'"
|
|
45
|
+
[zoomable]="zoomable()"
|
|
46
|
+
[responsive]="responsive()"
|
|
47
|
+
(itemClick)="itemClick.emit($event)"
|
|
48
|
+
(hiddenSeriesChange)="toggle($event)"
|
|
49
|
+
(zoomChange)="zoom.set($event)"
|
|
50
|
+
(measured)="measuredWidth.set($event)"
|
|
25
51
|
></skdx-chart-root>
|
|
26
|
-
`, isInline: true, dependencies: [{ kind: "component", type: SkdxChartRootComponent, selector: "skdx-chart-root", inputs: ["layout", "kind", "label"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
52
|
+
`, isInline: true, dependencies: [{ kind: "component", type: SkdxChartRootComponent, selector: "skdx-chart-root", inputs: ["layout", "kind", "label", "zoomable", "responsive"], outputs: ["itemClick", "hiddenSeriesChange", "zoomChange", "measured"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
27
53
|
}
|
|
28
54
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SkdxScatterChartComponent, decorators: [{
|
|
29
55
|
type: Component,
|
|
@@ -37,10 +63,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
|
|
|
37
63
|
[layout]="layout()"
|
|
38
64
|
kind="scatter"
|
|
39
65
|
[label]="label() ?? 'Scatter chart'"
|
|
66
|
+
[zoomable]="zoomable()"
|
|
67
|
+
[responsive]="responsive()"
|
|
68
|
+
(itemClick)="itemClick.emit($event)"
|
|
69
|
+
(hiddenSeriesChange)="toggle($event)"
|
|
70
|
+
(zoomChange)="zoom.set($event)"
|
|
71
|
+
(measured)="measuredWidth.set($event)"
|
|
40
72
|
></skdx-chart-root>
|
|
41
73
|
`,
|
|
42
74
|
}]
|
|
43
|
-
}], propDecorators: { series: [{ type: i0.Input, args: [{ isSignal: true, alias: "series", required: true }] }] } });
|
|
75
|
+
}], 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 }] }], 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 }] }] } });
|
|
44
76
|
|
|
45
77
|
/**
|
|
46
78
|
* 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 type
|
|
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 AxisOptions,\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 kind=\"scatter\"\n [label]=\"label() ?? 'Scatter chart'\"\n [zoomable]=\"zoomable()\"\n [responsive]=\"responsive()\"\n (itemClick)=\"itemClick.emit($event)\"\n (hiddenSeriesChange)=\"toggle($event)\"\n (zoomChange)=\"zoom.set($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 readonly xAxis = input<AxisOptions>();\n readonly yAxis = input<AxisOptions>();\n readonly references = input<Reference[]>();\n\n protected readonly layout = computed(() =>\n layoutScatterChart({\n ...this.sized(),\n series: this.series(),\n sizeRange: this.sizeRange(),\n trendline: this.trendline(),\n xAxis: this.xAxis(),\n yAxis: this.yAxis(),\n references: this.references(),\n }),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ import { SkdxSizedBase, layoutSparkline, SkdxChartRootComponent } from '@skdx/an
|
|
|
7
7
|
* This file is part of the SkandaDX organization.
|
|
8
8
|
* Licensed under the MIT License. See LICENSE in the repository root.
|
|
9
9
|
*/
|
|
10
|
-
/** A small axis-less trend line with
|
|
10
|
+
/** A small axis-less trend: an area, a bare line or bars, with optional extremes and last value. */
|
|
11
11
|
class SkdxSparklineComponent extends SkdxSizedBase {
|
|
12
12
|
constructor() {
|
|
13
13
|
super(...arguments);
|
|
@@ -15,17 +15,45 @@ class SkdxSparklineComponent extends SkdxSizedBase {
|
|
|
15
15
|
...(ngDevMode ? [{ debugName: "data" }] : /* istanbul ignore next */ []));
|
|
16
16
|
this.color = input(/* @ts-ignore */
|
|
17
17
|
...(ngDevMode ? [undefined, { debugName: "color" }] : /* istanbul ignore next */ []));
|
|
18
|
-
this.
|
|
19
|
-
...(ngDevMode ? [{ debugName: "
|
|
18
|
+
this.curve = input(/* @ts-ignore */
|
|
19
|
+
...(ngDevMode ? [undefined, { debugName: "curve" }] : /* istanbul ignore next */ []));
|
|
20
|
+
this.variant = input(/* @ts-ignore */
|
|
21
|
+
...(ngDevMode ? [undefined, { debugName: "variant" }] : /* istanbul ignore next */ []));
|
|
22
|
+
/** Color by direction: success when rising, danger when falling. */
|
|
23
|
+
this.trend = input(false, /* @ts-ignore */
|
|
24
|
+
...(ngDevMode ? [{ debugName: "trend" }] : /* istanbul ignore next */ []));
|
|
25
|
+
/** Mark the minimum and maximum. */
|
|
26
|
+
this.extremes = input(false, /* @ts-ignore */
|
|
27
|
+
...(ngDevMode ? [{ debugName: "extremes" }] : /* istanbul ignore next */ []));
|
|
28
|
+
/** Write the last value after the line. */
|
|
29
|
+
this.lastValue = input(false, /* @ts-ignore */
|
|
30
|
+
...(ngDevMode ? [{ debugName: "lastValue" }] : /* istanbul ignore next */ []));
|
|
31
|
+
this.layout = computed(() => layoutSparkline({
|
|
32
|
+
...this.sized(),
|
|
33
|
+
data: this.data(),
|
|
34
|
+
color: this.color(),
|
|
35
|
+
curve: this.curve(),
|
|
36
|
+
variant: this.variant(),
|
|
37
|
+
trend: this.trend(),
|
|
38
|
+
extremes: this.extremes(),
|
|
39
|
+
lastValue: this.lastValue(),
|
|
40
|
+
}), /* @ts-ignore */
|
|
41
|
+
...(ngDevMode ? [{ debugName: "layout" }] : /* istanbul ignore next */ []));
|
|
20
42
|
}
|
|
21
43
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SkdxSparklineComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
22
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.4", type: SkdxSparklineComponent, isStandalone: true, selector: "skdx-sparkline", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: `
|
|
44
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.4", type: SkdxSparklineComponent, isStandalone: true, selector: "skdx-sparkline", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, curve: { classPropertyName: "curve", publicName: "curve", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, trend: { classPropertyName: "trend", publicName: "trend", isSignal: true, isRequired: false, transformFunction: null }, extremes: { classPropertyName: "extremes", publicName: "extremes", isSignal: true, isRequired: false, transformFunction: null }, lastValue: { classPropertyName: "lastValue", publicName: "lastValue", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: `
|
|
23
45
|
<skdx-chart-root
|
|
24
|
-
[layout]="
|
|
46
|
+
[layout]="layout()"
|
|
25
47
|
kind="sparkline"
|
|
26
48
|
[label]="label() ?? 'Sparkline'"
|
|
49
|
+
[zoomable]="zoomable()"
|
|
50
|
+
[responsive]="responsive()"
|
|
51
|
+
(itemClick)="itemClick.emit($event)"
|
|
52
|
+
(hiddenSeriesChange)="toggle($event)"
|
|
53
|
+
(zoomChange)="zoom.set($event)"
|
|
54
|
+
(measured)="measuredWidth.set($event)"
|
|
27
55
|
></skdx-chart-root>
|
|
28
|
-
`, isInline: true, dependencies: [{ kind: "component", type: SkdxChartRootComponent, selector: "skdx-chart-root", inputs: ["layout", "kind", "label"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
56
|
+
`, isInline: true, dependencies: [{ kind: "component", type: SkdxChartRootComponent, selector: "skdx-chart-root", inputs: ["layout", "kind", "label", "zoomable", "responsive"], outputs: ["itemClick", "hiddenSeriesChange", "zoomChange", "measured"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
29
57
|
}
|
|
30
58
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SkdxSparklineComponent, decorators: [{
|
|
31
59
|
type: Component,
|
|
@@ -36,13 +64,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
|
|
|
36
64
|
imports: [SkdxChartRootComponent],
|
|
37
65
|
template: `
|
|
38
66
|
<skdx-chart-root
|
|
39
|
-
[layout]="
|
|
67
|
+
[layout]="layout()"
|
|
40
68
|
kind="sparkline"
|
|
41
69
|
[label]="label() ?? 'Sparkline'"
|
|
70
|
+
[zoomable]="zoomable()"
|
|
71
|
+
[responsive]="responsive()"
|
|
72
|
+
(itemClick)="itemClick.emit($event)"
|
|
73
|
+
(hiddenSeriesChange)="toggle($event)"
|
|
74
|
+
(zoomChange)="zoom.set($event)"
|
|
75
|
+
(measured)="measuredWidth.set($event)"
|
|
42
76
|
></skdx-chart-root>
|
|
43
77
|
`,
|
|
44
78
|
}]
|
|
45
|
-
}], propDecorators: { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: true }] }], color: [{ type: i0.Input, args: [{ isSignal: true, alias: "color", required: false }] }] } });
|
|
79
|
+
}], propDecorators: { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: true }] }], color: [{ type: i0.Input, args: [{ isSignal: true, alias: "color", required: false }] }], curve: [{ type: i0.Input, args: [{ isSignal: true, alias: "curve", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], trend: [{ type: i0.Input, args: [{ isSignal: true, alias: "trend", required: false }] }], extremes: [{ type: i0.Input, args: [{ isSignal: true, alias: "extremes", required: false }] }], lastValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "lastValue", required: false }] }] } });
|
|
46
80
|
|
|
47
81
|
/**
|
|
48
82
|
* Generated bundle index. Do not edit.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skdx-angular-charts-sparkline.mjs","sources":["../../src/sparkline/index.ts","../../src/sparkline/skdx-angular-charts-sparkline.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 layoutSparkline,\n SkdxChartRootComponent,\n SkdxSizedBase,\n} from '@skdx/angular-charts/internal';\n\n/** A small axis-less trend line with
|
|
1
|
+
{"version":3,"file":"skdx-angular-charts-sparkline.mjs","sources":["../../src/sparkline/index.ts","../../src/sparkline/skdx-angular-charts-sparkline.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 layoutSparkline,\n SkdxChartRootComponent,\n SkdxSizedBase,\n type Curve,\n type Value,\n} from '@skdx/angular-charts/internal';\n\n/** A small axis-less trend: an area, a bare line or bars, with optional extremes and last value. */\n@Component({\n selector: 'skdx-sparkline',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkdxChartRootComponent],\n template: `\n <skdx-chart-root\n [layout]=\"layout()\"\n kind=\"sparkline\"\n [label]=\"label() ?? 'Sparkline'\"\n [zoomable]=\"zoomable()\"\n [responsive]=\"responsive()\"\n (itemClick)=\"itemClick.emit($event)\"\n (hiddenSeriesChange)=\"toggle($event)\"\n (zoomChange)=\"zoom.set($event)\"\n (measured)=\"measuredWidth.set($event)\"\n ></skdx-chart-root>\n `,\n})\nexport class SkdxSparklineComponent extends SkdxSizedBase {\n readonly data = input.required<Value[]>();\n readonly color = input<string>();\n readonly curve = input<Curve>();\n readonly variant = input<'area' | 'line' | 'bar'>();\n /** Color by direction: success when rising, danger when falling. */\n readonly trend = input(false);\n /** Mark the minimum and maximum. */\n readonly extremes = input(false);\n /** Write the last value after the line. */\n readonly lastValue = input(false);\n\n protected readonly layout = computed(() =>\n layoutSparkline({\n ...this.sized(),\n data: this.data(),\n color: this.color(),\n curve: this.curve(),\n variant: this.variant(),\n trend: this.trend(),\n extremes: this.extremes(),\n lastValue: this.lastValue(),\n }),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -7,23 +7,29 @@ import { SkdxSizedBase, layoutSunburst, SkdxChartRootComponent } from '@skdx/ang
|
|
|
7
7
|
* This file is part of the SkandaDX organization.
|
|
8
8
|
* Licensed under the MIT License. See LICENSE in the repository root.
|
|
9
9
|
*/
|
|
10
|
-
/** Nested rings, one per tree depth, children
|
|
10
|
+
/** Nested rings, one per tree depth, children inside their parent's span. */
|
|
11
11
|
class SkdxSunburstChartComponent extends SkdxSizedBase {
|
|
12
12
|
constructor() {
|
|
13
13
|
super(...arguments);
|
|
14
14
|
this.data = input.required(/* @ts-ignore */
|
|
15
15
|
...(ngDevMode ? [{ debugName: "data" }] : /* istanbul ignore next */ []));
|
|
16
|
-
this.
|
|
17
|
-
...(ngDevMode ? [{ debugName: "
|
|
16
|
+
this.layout = computed(() => layoutSunburst({ ...this.sized(), data: this.data() }), /* @ts-ignore */
|
|
17
|
+
...(ngDevMode ? [{ debugName: "layout" }] : /* istanbul ignore next */ []));
|
|
18
18
|
}
|
|
19
19
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SkdxSunburstChartComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
20
20
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.4", type: SkdxSunburstChartComponent, isStandalone: true, selector: "skdx-sunburst-chart", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: `
|
|
21
21
|
<skdx-chart-root
|
|
22
|
-
[layout]="
|
|
22
|
+
[layout]="layout()"
|
|
23
23
|
kind="sunburst"
|
|
24
24
|
[label]="label() ?? 'Sunburst chart'"
|
|
25
|
+
[zoomable]="zoomable()"
|
|
26
|
+
[responsive]="responsive()"
|
|
27
|
+
(itemClick)="itemClick.emit($event)"
|
|
28
|
+
(hiddenSeriesChange)="toggle($event)"
|
|
29
|
+
(zoomChange)="zoom.set($event)"
|
|
30
|
+
(measured)="measuredWidth.set($event)"
|
|
25
31
|
></skdx-chart-root>
|
|
26
|
-
`, isInline: true, dependencies: [{ kind: "component", type: SkdxChartRootComponent, selector: "skdx-chart-root", inputs: ["layout", "kind", "label"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
32
|
+
`, isInline: true, dependencies: [{ kind: "component", type: SkdxChartRootComponent, selector: "skdx-chart-root", inputs: ["layout", "kind", "label", "zoomable", "responsive"], outputs: ["itemClick", "hiddenSeriesChange", "zoomChange", "measured"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
27
33
|
}
|
|
28
34
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SkdxSunburstChartComponent, decorators: [{
|
|
29
35
|
type: Component,
|
|
@@ -34,9 +40,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
|
|
|
34
40
|
imports: [SkdxChartRootComponent],
|
|
35
41
|
template: `
|
|
36
42
|
<skdx-chart-root
|
|
37
|
-
[layout]="
|
|
43
|
+
[layout]="layout()"
|
|
38
44
|
kind="sunburst"
|
|
39
45
|
[label]="label() ?? 'Sunburst chart'"
|
|
46
|
+
[zoomable]="zoomable()"
|
|
47
|
+
[responsive]="responsive()"
|
|
48
|
+
(itemClick)="itemClick.emit($event)"
|
|
49
|
+
(hiddenSeriesChange)="toggle($event)"
|
|
50
|
+
(zoomChange)="zoom.set($event)"
|
|
51
|
+
(measured)="measuredWidth.set($event)"
|
|
40
52
|
></skdx-chart-root>
|
|
41
53
|
`,
|
|
42
54
|
}]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skdx-angular-charts-sunburst.mjs","sources":["../../src/sunburst/index.ts","../../src/sunburst/skdx-angular-charts-sunburst.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 layoutSunburst,\n SkdxChartRootComponent,\n SkdxSizedBase,\n type TreeNode,\n} from '@skdx/angular-charts/internal';\n\n/** Nested rings, one per tree depth, children
|
|
1
|
+
{"version":3,"file":"skdx-angular-charts-sunburst.mjs","sources":["../../src/sunburst/index.ts","../../src/sunburst/skdx-angular-charts-sunburst.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 layoutSunburst,\n SkdxChartRootComponent,\n SkdxSizedBase,\n type TreeNode,\n} from '@skdx/angular-charts/internal';\n\n/** Nested rings, one per tree depth, children inside their parent's span. */\n@Component({\n selector: 'skdx-sunburst-chart',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkdxChartRootComponent],\n template: `\n <skdx-chart-root\n [layout]=\"layout()\"\n kind=\"sunburst\"\n [label]=\"label() ?? 'Sunburst chart'\"\n [zoomable]=\"zoomable()\"\n [responsive]=\"responsive()\"\n (itemClick)=\"itemClick.emit($event)\"\n (hiddenSeriesChange)=\"toggle($event)\"\n (zoomChange)=\"zoom.set($event)\"\n (measured)=\"measuredWidth.set($event)\"\n ></skdx-chart-root>\n `,\n})\nexport class SkdxSunburstChartComponent extends SkdxSizedBase {\n readonly data = input.required<TreeNode[]>();\n\n protected readonly layout = computed(() =>\n layoutSunburst({ ...this.sized(), data: this.data() }),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAAA;;;;AAIG;AAWH;AAoBM,MAAO,0BAA2B,SAAQ,aAAa,CAAA;AAnB7D,IAAA,WAAA,GAAA;;QAoBW,IAAA,CAAA,IAAI,GAAG,KAAK,CAAC,QAAQ;iFAAc;QAEzB,IAAA,CAAA,MAAM,GAAG,QAAQ,CAAC,MACnC,cAAc,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;mFACvD;AACF,IAAA;8GANY,0BAA0B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0BAA0B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAd3B;;;;;;;;;;;;AAYT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAbS,sBAAsB,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,WAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAerB,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAnBtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,UAAU,EAAE,IAAI;oBAChB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,OAAO,EAAE,CAAC,sBAAsB,CAAC;AACjC,oBAAA,QAAQ,EAAE;;;;;;;;;;;;AAYT,EAAA,CAAA;AACF,iBAAA;;;AClCD;;AAEG;;"}
|
|
@@ -7,19 +7,29 @@ import { SkdxSizedBase, layoutTreemap, SkdxChartRootComponent } from '@skdx/angu
|
|
|
7
7
|
* This file is part of the SkandaDX organization.
|
|
8
8
|
* Licensed under the MIT License. See LICENSE in the repository root.
|
|
9
9
|
*/
|
|
10
|
-
/** Squarified tiles
|
|
10
|
+
/** Squarified tiles by value; branches are outlined and their children tiled inside. */
|
|
11
11
|
class SkdxTreemapComponent extends SkdxSizedBase {
|
|
12
12
|
constructor() {
|
|
13
13
|
super(...arguments);
|
|
14
14
|
this.data = input.required(/* @ts-ignore */
|
|
15
15
|
...(ngDevMode ? [{ debugName: "data" }] : /* istanbul ignore next */ []));
|
|
16
|
-
this.
|
|
17
|
-
...(ngDevMode ? [{ debugName: "
|
|
16
|
+
this.layout = computed(() => layoutTreemap({ ...this.sized(), data: this.data() }), /* @ts-ignore */
|
|
17
|
+
...(ngDevMode ? [{ debugName: "layout" }] : /* istanbul ignore next */ []));
|
|
18
18
|
}
|
|
19
19
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SkdxTreemapComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
20
20
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.4", type: SkdxTreemapComponent, isStandalone: true, selector: "skdx-treemap", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: `
|
|
21
|
-
<skdx-chart-root
|
|
22
|
-
|
|
21
|
+
<skdx-chart-root
|
|
22
|
+
[layout]="layout()"
|
|
23
|
+
kind="treemap"
|
|
24
|
+
[label]="label() ?? 'Treemap'"
|
|
25
|
+
[zoomable]="zoomable()"
|
|
26
|
+
[responsive]="responsive()"
|
|
27
|
+
(itemClick)="itemClick.emit($event)"
|
|
28
|
+
(hiddenSeriesChange)="toggle($event)"
|
|
29
|
+
(zoomChange)="zoom.set($event)"
|
|
30
|
+
(measured)="measuredWidth.set($event)"
|
|
31
|
+
></skdx-chart-root>
|
|
32
|
+
`, isInline: true, dependencies: [{ kind: "component", type: SkdxChartRootComponent, selector: "skdx-chart-root", inputs: ["layout", "kind", "label", "zoomable", "responsive"], outputs: ["itemClick", "hiddenSeriesChange", "zoomChange", "measured"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
23
33
|
}
|
|
24
34
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SkdxTreemapComponent, decorators: [{
|
|
25
35
|
type: Component,
|
|
@@ -29,7 +39,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
|
|
|
29
39
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
30
40
|
imports: [SkdxChartRootComponent],
|
|
31
41
|
template: `
|
|
32
|
-
<skdx-chart-root
|
|
42
|
+
<skdx-chart-root
|
|
43
|
+
[layout]="layout()"
|
|
44
|
+
kind="treemap"
|
|
45
|
+
[label]="label() ?? 'Treemap'"
|
|
46
|
+
[zoomable]="zoomable()"
|
|
47
|
+
[responsive]="responsive()"
|
|
48
|
+
(itemClick)="itemClick.emit($event)"
|
|
49
|
+
(hiddenSeriesChange)="toggle($event)"
|
|
50
|
+
(zoomChange)="zoom.set($event)"
|
|
51
|
+
(measured)="measuredWidth.set($event)"
|
|
52
|
+
></skdx-chart-root>
|
|
33
53
|
`,
|
|
34
54
|
}]
|
|
35
55
|
}], propDecorators: { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: true }] }] } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skdx-angular-charts-treemap.mjs","sources":["../../src/treemap/index.ts","../../src/treemap/skdx-angular-charts-treemap.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
|
|
1
|
+
{"version":3,"file":"skdx-angular-charts-treemap.mjs","sources":["../../src/treemap/index.ts","../../src/treemap/skdx-angular-charts-treemap.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 layoutTreemap,\n SkdxChartRootComponent,\n SkdxSizedBase,\n type TreeNode,\n} from '@skdx/angular-charts/internal';\n\n/** Squarified tiles by value; branches are outlined and their children tiled inside. */\n@Component({\n selector: 'skdx-treemap',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkdxChartRootComponent],\n template: `\n <skdx-chart-root\n [layout]=\"layout()\"\n kind=\"treemap\"\n [label]=\"label() ?? 'Treemap'\"\n [zoomable]=\"zoomable()\"\n [responsive]=\"responsive()\"\n (itemClick)=\"itemClick.emit($event)\"\n (hiddenSeriesChange)=\"toggle($event)\"\n (zoomChange)=\"zoom.set($event)\"\n (measured)=\"measuredWidth.set($event)\"\n ></skdx-chart-root>\n `,\n})\nexport class SkdxTreemapComponent extends SkdxSizedBase {\n readonly data = input.required<TreeNode[]>();\n\n protected readonly layout = computed(() => layoutTreemap({ ...this.sized(), data: this.data() }));\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAAA;;;;AAIG;AAWH;AAoBM,MAAO,oBAAqB,SAAQ,aAAa,CAAA;AAnBvD,IAAA,WAAA,GAAA;;QAoBW,IAAA,CAAA,IAAI,GAAG,KAAK,CAAC,QAAQ;iFAAc;QAEzB,IAAA,CAAA,MAAM,GAAG,QAAQ,CAAC,MAAM,aAAa,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;mFAAC;AAClG,IAAA;8GAJY,oBAAoB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAdrB;;;;;;;;;;;;AAYT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAbS,sBAAsB,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,WAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAerB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAnBhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,UAAU,EAAE,IAAI;oBAChB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,OAAO,EAAE,CAAC,sBAAsB,CAAC;AACjC,oBAAA,QAAQ,EAAE;;;;;;;;;;;;AAYT,EAAA,CAAA;AACF,iBAAA;;;AClCD;;AAEG;;"}
|
|
@@ -7,7 +7,7 @@ import { SkdxSizedBase, layoutWaterfall, SkdxChartRootComponent } from '@skdx/an
|
|
|
7
7
|
* This file is part of the SkandaDX organization.
|
|
8
8
|
* Licensed under the MIT License. See LICENSE in the repository root.
|
|
9
9
|
*/
|
|
10
|
-
/** Signed deltas stacked on
|
|
10
|
+
/** Signed deltas stacked on the running total, with an optional closing total bar. */
|
|
11
11
|
class SkdxWaterfallChartComponent extends SkdxSizedBase {
|
|
12
12
|
constructor() {
|
|
13
13
|
super(...arguments);
|
|
@@ -16,17 +16,23 @@ class SkdxWaterfallChartComponent extends SkdxSizedBase {
|
|
|
16
16
|
/** Label of a final bar showing the running total. */
|
|
17
17
|
this.total = input(/* @ts-ignore */
|
|
18
18
|
...(ngDevMode ? [undefined, { debugName: "total" }] : /* istanbul ignore next */ []));
|
|
19
|
-
this.
|
|
20
|
-
...(ngDevMode ? [{ debugName: "
|
|
19
|
+
this.layout = computed(() => layoutWaterfall({ ...this.sized(), data: this.data(), total: this.total() }), /* @ts-ignore */
|
|
20
|
+
...(ngDevMode ? [{ debugName: "layout" }] : /* istanbul ignore next */ []));
|
|
21
21
|
}
|
|
22
22
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SkdxWaterfallChartComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
23
23
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.4", type: SkdxWaterfallChartComponent, isStandalone: true, selector: "skdx-waterfall-chart", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null }, total: { classPropertyName: "total", publicName: "total", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: `
|
|
24
24
|
<skdx-chart-root
|
|
25
|
-
[layout]="
|
|
25
|
+
[layout]="layout()"
|
|
26
26
|
kind="waterfall"
|
|
27
27
|
[label]="label() ?? 'Waterfall chart'"
|
|
28
|
+
[zoomable]="zoomable()"
|
|
29
|
+
[responsive]="responsive()"
|
|
30
|
+
(itemClick)="itemClick.emit($event)"
|
|
31
|
+
(hiddenSeriesChange)="toggle($event)"
|
|
32
|
+
(zoomChange)="zoom.set($event)"
|
|
33
|
+
(measured)="measuredWidth.set($event)"
|
|
28
34
|
></skdx-chart-root>
|
|
29
|
-
`, isInline: true, dependencies: [{ kind: "component", type: SkdxChartRootComponent, selector: "skdx-chart-root", inputs: ["layout", "kind", "label"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
35
|
+
`, isInline: true, dependencies: [{ kind: "component", type: SkdxChartRootComponent, selector: "skdx-chart-root", inputs: ["layout", "kind", "label", "zoomable", "responsive"], outputs: ["itemClick", "hiddenSeriesChange", "zoomChange", "measured"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
30
36
|
}
|
|
31
37
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SkdxWaterfallChartComponent, decorators: [{
|
|
32
38
|
type: Component,
|
|
@@ -37,9 +43,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
|
|
|
37
43
|
imports: [SkdxChartRootComponent],
|
|
38
44
|
template: `
|
|
39
45
|
<skdx-chart-root
|
|
40
|
-
[layout]="
|
|
46
|
+
[layout]="layout()"
|
|
41
47
|
kind="waterfall"
|
|
42
48
|
[label]="label() ?? 'Waterfall chart'"
|
|
49
|
+
[zoomable]="zoomable()"
|
|
50
|
+
[responsive]="responsive()"
|
|
51
|
+
(itemClick)="itemClick.emit($event)"
|
|
52
|
+
(hiddenSeriesChange)="toggle($event)"
|
|
53
|
+
(zoomChange)="zoom.set($event)"
|
|
54
|
+
(measured)="measuredWidth.set($event)"
|
|
43
55
|
></skdx-chart-root>
|
|
44
56
|
`,
|
|
45
57
|
}]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skdx-angular-charts-waterfall.mjs","sources":["../../src/waterfall/index.ts","../../src/waterfall/skdx-angular-charts-waterfall.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
|
|
1
|
+
{"version":3,"file":"skdx-angular-charts-waterfall.mjs","sources":["../../src/waterfall/index.ts","../../src/waterfall/skdx-angular-charts-waterfall.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 layoutWaterfall,\n SkdxChartRootComponent,\n SkdxSizedBase,\n type Datum,\n} from '@skdx/angular-charts/internal';\n\n/** Signed deltas stacked on the running total, with an optional closing total bar. */\n@Component({\n selector: 'skdx-waterfall-chart',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkdxChartRootComponent],\n template: `\n <skdx-chart-root\n [layout]=\"layout()\"\n kind=\"waterfall\"\n [label]=\"label() ?? 'Waterfall chart'\"\n [zoomable]=\"zoomable()\"\n [responsive]=\"responsive()\"\n (itemClick)=\"itemClick.emit($event)\"\n (hiddenSeriesChange)=\"toggle($event)\"\n (zoomChange)=\"zoom.set($event)\"\n (measured)=\"measuredWidth.set($event)\"\n ></skdx-chart-root>\n `,\n})\nexport class SkdxWaterfallChartComponent extends SkdxSizedBase {\n readonly data = input.required<Datum[]>();\n /** Label of a final bar showing the running total. */\n readonly total = input<string>();\n\n protected readonly layout = computed(() =>\n layoutWaterfall({ ...this.sized(), data: this.data(), total: this.total() }),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAAA;;;;AAIG;AAWH;AAoBM,MAAO,2BAA4B,SAAQ,aAAa,CAAA;AAnB9D,IAAA,WAAA,GAAA;;QAoBW,IAAA,CAAA,IAAI,GAAG,KAAK,CAAC,QAAQ;iFAAW;;AAEhC,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK;6FAAU;AAEb,QAAA,IAAA,CAAA,MAAM,GAAG,QAAQ,CAAC,MACnC,eAAe,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;mFAC7E;AACF,IAAA;8GARY,2BAA2B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA3B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,2BAA2B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAd5B;;;;;;;;;;;;AAYT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAbS,sBAAsB,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,WAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAerB,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAnBvC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,sBAAsB;AAChC,oBAAA,UAAU,EAAE,IAAI;oBAChB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,OAAO,EAAE,CAAC,sBAAsB,CAAC;AACjC,oBAAA,QAAQ,EAAE;;;;;;;;;;;;AAYT,EAAA,CAAA;AACF,iBAAA;;;AClCD;;AAEG;;"}
|
|
@@ -16,6 +16,8 @@ export { SkdxBoxplotComponent } from '@skdx/angular-charts/boxplot';
|
|
|
16
16
|
export { SkdxSunburstChartComponent } from '@skdx/angular-charts/sunburst';
|
|
17
17
|
export { SkdxChordChartComponent } from '@skdx/angular-charts/chord';
|
|
18
18
|
export { SkdxMapChartComponent } from '@skdx/angular-charts/map';
|
|
19
|
+
export { SkdxRadialBarChartComponent } from '@skdx/angular-charts/radial';
|
|
20
|
+
export { csv, makeFormatter, seriesCsv, svgMarkup } from '@skdx/angular-charts/internal';
|
|
19
21
|
|
|
20
22
|
/*
|
|
21
23
|
* Copyright (c) 2026 SkandaDX
|
|
@@ -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 type {\n Candle,\n Datum,\n GanttTask,\n GeoMultiPolygon,\n GeoPolygon,\n MapFeature,\n SankeyLink,\n ScatterSeries,\n Series,\n TreeNode,\n} from '@skdx/angular-charts/internal';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"
|
|
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 { csv, seriesCsv, svgMarkup, makeFormatter } from '@skdx/angular-charts/internal';\nexport type {\n AxisOptions,\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 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,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skdx/angular-charts",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.34.0",
|
|
4
|
+
"description": "Nineteen 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": {
|
|
7
7
|
"access": "public"
|
|
@@ -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.
|
|
23
|
+
"@skdx/tokens": "^0.34.0"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
26
|
"tslib": "^2.3.0"
|
|
@@ -87,6 +87,10 @@
|
|
|
87
87
|
"types": "./types/skdx-angular-charts-radar.d.ts",
|
|
88
88
|
"default": "./fesm2022/skdx-angular-charts-radar.mjs"
|
|
89
89
|
},
|
|
90
|
+
"./radial": {
|
|
91
|
+
"types": "./types/skdx-angular-charts-radial.d.ts",
|
|
92
|
+
"default": "./fesm2022/skdx-angular-charts-radial.mjs"
|
|
93
|
+
},
|
|
90
94
|
"./sankey": {
|
|
91
95
|
"types": "./types/skdx-angular-charts-sankey.d.ts",
|
|
92
96
|
"default": "./fesm2022/skdx-angular-charts-sankey.mjs"
|
|
@@ -2,7 +2,7 @@ import * as i0 from '@angular/core';
|
|
|
2
2
|
import * as _skdx_angular_charts_internal from '@skdx/angular-charts/internal';
|
|
3
3
|
import { SkdxChartBase } from '@skdx/angular-charts/internal';
|
|
4
4
|
|
|
5
|
-
/**
|
|
5
|
+
/** Filled, optionally stacked, areas down to zero; series may also be bars, lines or ranges. */
|
|
6
6
|
declare class SkdxAreaChartComponent extends SkdxChartBase {
|
|
7
7
|
protected readonly layout: i0.Signal<_skdx_angular_charts_internal.Canvas>;
|
|
8
8
|
static ɵfac: i0.ɵɵFactoryDeclaration<SkdxAreaChartComponent, never>;
|
|
@@ -1,20 +1,12 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
1
2
|
import * as _skdx_angular_charts_internal from '@skdx/angular-charts/internal';
|
|
2
3
|
import { SkdxChartBase } from '@skdx/angular-charts/internal';
|
|
3
|
-
import * as _angular_core from '@angular/core';
|
|
4
4
|
|
|
5
|
-
/**
|
|
6
|
-
* Grouped or stacked vertical bars, one per value.
|
|
7
|
-
*
|
|
8
|
-
* ```html
|
|
9
|
-
* <skdx-bar-chart [series]="[{ name: 'Sales', data: [3, 5, 2] }]" [categories]="['Q1', 'Q2', 'Q3']"></skdx-bar-chart>
|
|
10
|
-
* ```
|
|
11
|
-
*/
|
|
5
|
+
/** Grouped, stacked, horizontal or histogram bars; series may also be lines, areas or ranges. */
|
|
12
6
|
declare class SkdxBarChartComponent extends SkdxChartBase {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SkdxBarChartComponent, never>;
|
|
17
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SkdxBarChartComponent, "skdx-bar-chart", never, { "stacked": { "alias": "stacked"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
7
|
+
protected readonly layout: i0.Signal<_skdx_angular_charts_internal.Canvas>;
|
|
8
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SkdxBarChartComponent, never>;
|
|
9
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SkdxBarChartComponent, "skdx-bar-chart", never, {}, {}, never, never, true, never>;
|
|
18
10
|
}
|
|
19
11
|
|
|
20
12
|
export { SkdxBarChartComponent };
|
|
@@ -2,10 +2,10 @@ import * as _skdx_angular_charts_internal from '@skdx/angular-charts/internal';
|
|
|
2
2
|
import { SkdxSizedBase, Series } from '@skdx/angular-charts/internal';
|
|
3
3
|
import * as _angular_core from '@angular/core';
|
|
4
4
|
|
|
5
|
-
/**
|
|
5
|
+
/** One Tukey box per series over its raw samples. */
|
|
6
6
|
declare class SkdxBoxplotComponent extends SkdxSizedBase {
|
|
7
7
|
readonly series: _angular_core.InputSignal<Series[]>;
|
|
8
|
-
protected readonly
|
|
8
|
+
protected readonly layout: _angular_core.Signal<_skdx_angular_charts_internal.Canvas>;
|
|
9
9
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SkdxBoxplotComponent, never>;
|
|
10
10
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SkdxBoxplotComponent, "skdx-boxplot", never, { "series": { "alias": "series"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
11
11
|
}
|
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
import * as _skdx_angular_charts_internal from '@skdx/angular-charts/internal';
|
|
2
|
-
import { SkdxSizedBase, Candle } from '@skdx/angular-charts/internal';
|
|
2
|
+
import { SkdxSizedBase, Candle, AxisOptions, Reference } from '@skdx/angular-charts/internal';
|
|
3
3
|
import * as _angular_core from '@angular/core';
|
|
4
4
|
|
|
5
|
-
/**
|
|
5
|
+
/** Candles or OHLC bars on a time axis, with an optional volume pane, references, zoom and brush. */
|
|
6
6
|
declare class SkdxCandlestickChartComponent extends SkdxSizedBase {
|
|
7
7
|
readonly data: _angular_core.InputSignal<Candle[]>;
|
|
8
|
-
|
|
8
|
+
readonly scale: _angular_core.InputSignal<"linear" | "log" | undefined>;
|
|
9
|
+
readonly variant: _angular_core.InputSignal<"candlestick" | "ohlc" | undefined>;
|
|
10
|
+
readonly xAxis: _angular_core.InputSignal<Pick<AxisOptions, "format"> | undefined>;
|
|
11
|
+
readonly references: _angular_core.InputSignal<Reference[] | undefined>;
|
|
12
|
+
readonly brush: _angular_core.InputSignal<boolean>;
|
|
13
|
+
readonly crosshair: _angular_core.InputSignal<boolean>;
|
|
14
|
+
protected readonly layout: _angular_core.Signal<_skdx_angular_charts_internal.Canvas>;
|
|
9
15
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SkdxCandlestickChartComponent, never>;
|
|
10
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SkdxCandlestickChartComponent, "skdx-candlestick-chart", never, { "data": { "alias": "data"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
16
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SkdxCandlestickChartComponent, "skdx-candlestick-chart", never, { "data": { "alias": "data"; "required": true; "isSignal": true; }; "scale": { "alias": "scale"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "xAxis": { "alias": "xAxis"; "required": false; "isSignal": true; }; "references": { "alias": "references"; "required": false; "isSignal": true; }; "brush": { "alias": "brush"; "required": false; "isSignal": true; }; "crosshair": { "alias": "crosshair"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
11
17
|
}
|
|
12
18
|
|
|
13
19
|
export { SkdxCandlestickChartComponent };
|
|
@@ -2,12 +2,12 @@ import * as _skdx_angular_charts_internal from '@skdx/angular-charts/internal';
|
|
|
2
2
|
import { SkdxSizedBase } from '@skdx/angular-charts/internal';
|
|
3
3
|
import * as _angular_core from '@angular/core';
|
|
4
4
|
|
|
5
|
-
/**
|
|
5
|
+
/** Groups around a circle with ribbons for the flows between them. */
|
|
6
6
|
declare class SkdxChordChartComponent extends SkdxSizedBase {
|
|
7
7
|
readonly names: _angular_core.InputSignal<string[]>;
|
|
8
8
|
/** `matrix[i][j]` is the flow from `i` to `j`. */
|
|
9
9
|
readonly matrix: _angular_core.InputSignal<number[][]>;
|
|
10
|
-
protected readonly
|
|
10
|
+
protected readonly layout: _angular_core.Signal<_skdx_angular_charts_internal.Canvas>;
|
|
11
11
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SkdxChordChartComponent, never>;
|
|
12
12
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SkdxChordChartComponent, "skdx-chord-chart", never, { "names": { "alias": "names"; "required": true; "isSignal": true; }; "matrix": { "alias": "matrix"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
13
13
|
}
|
|
@@ -2,12 +2,14 @@ import * as _skdx_angular_charts_internal from '@skdx/angular-charts/internal';
|
|
|
2
2
|
import { SkdxSizedBase, Datum } from '@skdx/angular-charts/internal';
|
|
3
3
|
import * as _angular_core from '@angular/core';
|
|
4
4
|
|
|
5
|
-
/**
|
|
5
|
+
/** Stages narrowing with their value, or a pyramid; vertical or horizontal. */
|
|
6
6
|
declare class SkdxFunnelChartComponent extends SkdxSizedBase {
|
|
7
7
|
readonly data: _angular_core.InputSignal<Datum[]>;
|
|
8
|
-
|
|
8
|
+
readonly orientation: _angular_core.InputSignal<"vertical" | "horizontal" | undefined>;
|
|
9
|
+
readonly variant: _angular_core.InputSignal<"funnel" | "pyramid" | undefined>;
|
|
10
|
+
protected readonly layout: _angular_core.Signal<_skdx_angular_charts_internal.Canvas>;
|
|
9
11
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SkdxFunnelChartComponent, never>;
|
|
10
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SkdxFunnelChartComponent, "skdx-funnel-chart", never, { "data": { "alias": "data"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
12
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SkdxFunnelChartComponent, "skdx-funnel-chart", never, { "data": { "alias": "data"; "required": true; "isSignal": true; }; "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
11
13
|
}
|
|
12
14
|
|
|
13
15
|
export { SkdxFunnelChartComponent };
|