@orbcharts/core 3.0.0-alpha.43 → 3.0.0-alpha.45

Sign up to get free protection for your applications and to get access to all the features.
Files changed (85) hide show
  1. package/LICENSE +200 -200
  2. package/dist/orbcharts-core.es.js +97 -97
  3. package/dist/orbcharts-core.umd.js +2 -2
  4. package/dist/src/series/seriesObservables.d.ts +3 -3
  5. package/dist/src/types/ContextObserverSeries.d.ts +1 -1
  6. package/dist/src/types/DataFormatterSeries.d.ts +3 -3
  7. package/package.json +41 -41
  8. package/src/AbstractChart.ts +48 -48
  9. package/src/GridChart.ts +20 -20
  10. package/src/MultiGridChart.ts +20 -20
  11. package/src/MultiValueChart.ts +20 -20
  12. package/src/RelationshipChart.ts +20 -20
  13. package/src/SeriesChart.ts +20 -20
  14. package/src/TreeChart.ts +20 -20
  15. package/src/base/createBaseChart.ts +368 -367
  16. package/src/base/createBasePlugin.ts +89 -89
  17. package/src/defaults.ts +220 -220
  18. package/src/defineGridPlugin.ts +3 -3
  19. package/src/defineMultiGridPlugin.ts +3 -3
  20. package/src/defineMultiValuePlugin.ts +3 -3
  21. package/src/defineNoneDataPlugin.ts +4 -4
  22. package/src/defineRelationshipPlugin.ts +3 -3
  23. package/src/defineSeriesPlugin.ts +3 -3
  24. package/src/defineTreePlugin.ts +3 -3
  25. package/src/grid/computeGridData.ts +134 -134
  26. package/src/grid/createGridContextObserver.ts +147 -147
  27. package/src/grid/gridObservables.ts +573 -573
  28. package/src/index.ts +21 -21
  29. package/src/multiGrid/computeMultiGridData.ts +130 -130
  30. package/src/multiGrid/createMultiGridContextObserver.ts +40 -40
  31. package/src/multiGrid/multiGridObservables.ts +350 -350
  32. package/src/multiValue/computeMultiValueData.ts +143 -143
  33. package/src/multiValue/createMultiValueContextObserver.ts +12 -12
  34. package/src/relationship/computeRelationshipData.ts +118 -118
  35. package/src/relationship/createRelationshipContextObserver.ts +12 -12
  36. package/src/series/computeSeriesData.ts +90 -90
  37. package/src/series/createSeriesContextObserver.ts +93 -93
  38. package/src/series/seriesObservables.ts +175 -175
  39. package/src/tree/computeTreeData.ts +131 -131
  40. package/src/tree/createTreeContextObserver.ts +61 -61
  41. package/src/tree/treeObservables.ts +94 -94
  42. package/src/types/Chart.ts +48 -48
  43. package/src/types/ChartParams.ts +51 -51
  44. package/src/types/ComputedData.ts +83 -83
  45. package/src/types/ComputedDataGrid.ts +13 -13
  46. package/src/types/ComputedDataMultiGrid.ts +2 -2
  47. package/src/types/ComputedDataMultiValue.ts +9 -9
  48. package/src/types/ComputedDataRelationship.ts +19 -19
  49. package/src/types/ComputedDataSeries.ts +7 -7
  50. package/src/types/ComputedDataTree.ts +19 -19
  51. package/src/types/ContextObserver.ts +38 -38
  52. package/src/types/ContextObserverGrid.ts +41 -41
  53. package/src/types/ContextObserverMultiGrid.ts +15 -15
  54. package/src/types/ContextObserverMultiValue.ts +4 -4
  55. package/src/types/ContextObserverRelationship.ts +4 -4
  56. package/src/types/ContextObserverSeries.ts +29 -29
  57. package/src/types/ContextObserverTree.ts +11 -11
  58. package/src/types/ContextSubject.ts +18 -18
  59. package/src/types/Data.ts +45 -45
  60. package/src/types/DataFormatter.ts +74 -74
  61. package/src/types/DataFormatterGrid.ts +67 -67
  62. package/src/types/DataFormatterMultiGrid.ts +44 -44
  63. package/src/types/DataFormatterMultiValue.ts +23 -23
  64. package/src/types/DataFormatterRelationship.ts +25 -25
  65. package/src/types/DataFormatterSeries.ts +20 -20
  66. package/src/types/DataFormatterTree.ts +12 -12
  67. package/src/types/DataGrid.ts +11 -11
  68. package/src/types/DataMultiGrid.ts +6 -6
  69. package/src/types/DataMultiValue.ts +12 -12
  70. package/src/types/DataRelationship.ts +27 -27
  71. package/src/types/DataSeries.ts +11 -11
  72. package/src/types/DataTree.ts +20 -20
  73. package/src/types/Event.ts +153 -153
  74. package/src/types/Layout.ts +11 -11
  75. package/src/types/Padding.ts +5 -5
  76. package/src/types/Plugin.ts +60 -60
  77. package/src/types/TransformData.ts +7 -7
  78. package/src/types/index.ts +37 -37
  79. package/src/utils/commonUtils.ts +50 -50
  80. package/src/utils/d3Utils.ts +89 -89
  81. package/src/utils/index.ts +4 -4
  82. package/src/utils/observables.ts +201 -201
  83. package/src/utils/orbchartsUtils.ts +349 -349
  84. package/tsconfig.json +13 -13
  85. package/vite.config.js +44 -44
@@ -4,7 +4,7 @@ import { ComputedDatumSeries } from './ComputedDataSeries';
4
4
 
5
5
  export interface ContextObserverSeries<PluginParams> extends ContextObserverBase<'series', PluginParams> {
6
6
  textSizePx$: Observable<number>;
7
- seriesSeparate$: Observable<boolean>;
7
+ separateSeries$: Observable<boolean>;
8
8
  visibleComputedData$: Observable<ComputedDatumSeries[][]>;
9
9
  computedLayoutData$: Observable<ComputedDatumSeries[][]>;
10
10
  visibleComputedLayoutData$: Observable<ComputedDatumSeries[][]>;
@@ -1,9 +1,9 @@
1
- import { DataSeriesDatum, DataSeriesValue } from './DataSeries';
1
+ import { ComputedDatumSeries } from './ComputedDataSeries';
2
2
  import { DataFormatterBase, DataFormatterBasePartial, VisibleFilter, DataFormatterContainer } from './DataFormatter';
3
3
 
4
4
  export interface DataFormatterSeries extends DataFormatterBase<'series'> {
5
5
  visibleFilter: VisibleFilter<'series'>;
6
- sort: ((a: DataSeriesDatum | DataSeriesValue, b: DataSeriesDatum | number) => number) | null;
6
+ sort: ((a: ComputedDatumSeries, b: ComputedDatumSeries) => number) | null;
7
7
  seriesLabels: string[];
8
8
  container: DataFormatterContainer;
9
9
  separateSeries: boolean;
@@ -11,7 +11,7 @@ export interface DataFormatterSeries extends DataFormatterBase<'series'> {
11
11
  }
12
12
  export interface DataFormatterSeriesPartial extends DataFormatterBasePartial<'series'> {
13
13
  visibleFilter?: VisibleFilter<'series'>;
14
- sort?: ((a: DataSeriesDatum | DataSeriesValue, b: DataSeriesDatum | number) => number) | null;
14
+ sort?: ((a: ComputedDatumSeries, b: ComputedDatumSeries) => number) | null;
15
15
  seriesLabels?: string[];
16
16
  container?: Partial<DataFormatterContainer>;
17
17
  separateSeries?: boolean;
package/package.json CHANGED
@@ -1,41 +1,41 @@
1
- {
2
- "name": "@orbcharts/core",
3
- "version": "3.0.0-alpha.43",
4
- "description": "OrbCharts is an open source chart library based on d3.js and rx.js",
5
- "author": "Blue Planet Inc.",
6
- "license": "Apache-2.0",
7
- "keywords": [
8
- "d3",
9
- "rxjs",
10
- "svg",
11
- "visualization",
12
- "infographic",
13
- "graph",
14
- "chart"
15
- ],
16
- "private": false,
17
- "publishConfig": {
18
- "access": "public",
19
- "registry": "https://registry.npmjs.org/"
20
- },
21
- "files": [
22
- "*"
23
- ],
24
- "module": "./dist/orbcharts-core.es.js",
25
- "types": "./dist/src/index.d.ts",
26
- "scripts": {
27
- "test": "echo \"Error: no test specified\" && exit 1",
28
- "build": "vite build --mode release"
29
- },
30
- "devDependencies": {
31
- "@types/d3": "^7.4.0",
32
- "ts-loader": "^9.4.2",
33
- "typescript": "^5.0.4",
34
- "vite": "^5.3.5",
35
- "vite-plugin-dts": "^3.7.3"
36
- },
37
- "dependencies": {
38
- "d3": "^7.8.5",
39
- "rxjs": "^7.8.1"
40
- }
41
- }
1
+ {
2
+ "name": "@orbcharts/core",
3
+ "version": "3.0.0-alpha.45",
4
+ "description": "OrbCharts is an open source chart library based on d3.js and rx.js",
5
+ "author": "Blue Planet Inc.",
6
+ "license": "Apache-2.0",
7
+ "keywords": [
8
+ "d3",
9
+ "rxjs",
10
+ "svg",
11
+ "visualization",
12
+ "infographic",
13
+ "graph",
14
+ "chart"
15
+ ],
16
+ "private": false,
17
+ "publishConfig": {
18
+ "access": "public",
19
+ "registry": "https://registry.npmjs.org/"
20
+ },
21
+ "files": [
22
+ "*"
23
+ ],
24
+ "module": "./dist/orbcharts-core.es.js",
25
+ "types": "./dist/src/index.d.ts",
26
+ "scripts": {
27
+ "test": "echo \"Error: no test specified\" && exit 1",
28
+ "build": "vite build --mode release"
29
+ },
30
+ "devDependencies": {
31
+ "@types/d3": "^7.4.0",
32
+ "ts-loader": "^9.4.2",
33
+ "typescript": "^5.0.4",
34
+ "vite": "^5.3.5",
35
+ "vite-plugin-dts": "^3.7.3"
36
+ },
37
+ "dependencies": {
38
+ "d3": "^7.8.5",
39
+ "rxjs": "^7.8.1"
40
+ }
41
+ }
@@ -1,48 +1,48 @@
1
- import * as d3 from 'd3'
2
- import {
3
- Subject } from 'rxjs'
4
- import type {
5
- ComputedDataFn,
6
- ChartEntity,
7
- ChartType,
8
- ChartParamsPartial,
9
- ContextObserverFn,
10
- ChartOptionsPartial,
11
- DataTypeMap,
12
- DataFormatterTypeMap,
13
- DataFormatterPartialTypeMap,
14
- EventTypeMap,
15
- PluginEntity } from './types'
16
- import { createBaseChart } from './base/createBaseChart'
17
-
18
- export abstract class AbstractChart<T extends ChartType> implements ChartEntity<T> {
19
- selection: d3.Selection<SVGGElement, unknown, HTMLElement, unknown>
20
- destroy: () => void
21
- data$: Subject<DataTypeMap<T>> = new Subject()
22
- dataFormatter$: Subject<DataFormatterPartialTypeMap<T>> = new Subject()
23
- plugins$: Subject<PluginEntity<T, any, any>[]> = new Subject()
24
- chartParams$: Subject<ChartParamsPartial> = new Subject()
25
- event$: Subject<EventTypeMap<T>> = new Subject()
26
-
27
- constructor (
28
- { defaultDataFormatter, computedDataFn, contextObserverFn }: {
29
- defaultDataFormatter: DataFormatterTypeMap<T>
30
- computedDataFn: ComputedDataFn<T>
31
- contextObserverFn: ContextObserverFn<T>
32
- },
33
- element: HTMLElement | Element,
34
- options?: ChartOptionsPartial<T>
35
- ) {
36
- const baseChart = createBaseChart({ defaultDataFormatter, computedDataFn, contextObserverFn })
37
- const chartEntity = baseChart(element, options)
38
-
39
- this.selection = chartEntity.selection
40
- this.destroy = chartEntity.destroy
41
- this.data$ = chartEntity.data$
42
- this.dataFormatter$ = chartEntity.dataFormatter$
43
- this.plugins$ = chartEntity.plugins$
44
- this.chartParams$ = chartEntity.chartParams$
45
- this.event$ = chartEntity.event$
46
- }
47
-
48
- }
1
+ import * as d3 from 'd3'
2
+ import {
3
+ Subject } from 'rxjs'
4
+ import type {
5
+ ComputedDataFn,
6
+ ChartEntity,
7
+ ChartType,
8
+ ChartParamsPartial,
9
+ ContextObserverFn,
10
+ ChartOptionsPartial,
11
+ DataTypeMap,
12
+ DataFormatterTypeMap,
13
+ DataFormatterPartialTypeMap,
14
+ EventTypeMap,
15
+ PluginEntity } from './types'
16
+ import { createBaseChart } from './base/createBaseChart'
17
+
18
+ export abstract class AbstractChart<T extends ChartType> implements ChartEntity<T> {
19
+ selection: d3.Selection<SVGGElement, unknown, HTMLElement, unknown>
20
+ destroy: () => void
21
+ data$: Subject<DataTypeMap<T>> = new Subject()
22
+ dataFormatter$: Subject<DataFormatterPartialTypeMap<T>> = new Subject()
23
+ plugins$: Subject<PluginEntity<T, any, any>[]> = new Subject()
24
+ chartParams$: Subject<ChartParamsPartial> = new Subject()
25
+ event$: Subject<EventTypeMap<T>> = new Subject()
26
+
27
+ constructor (
28
+ { defaultDataFormatter, computedDataFn, contextObserverFn }: {
29
+ defaultDataFormatter: DataFormatterTypeMap<T>
30
+ computedDataFn: ComputedDataFn<T>
31
+ contextObserverFn: ContextObserverFn<T>
32
+ },
33
+ element: HTMLElement | Element,
34
+ options?: ChartOptionsPartial<T>
35
+ ) {
36
+ const baseChart = createBaseChart({ defaultDataFormatter, computedDataFn, contextObserverFn })
37
+ const chartEntity = baseChart(element, options)
38
+
39
+ this.selection = chartEntity.selection
40
+ this.destroy = chartEntity.destroy
41
+ this.data$ = chartEntity.data$
42
+ this.dataFormatter$ = chartEntity.dataFormatter$
43
+ this.plugins$ = chartEntity.plugins$
44
+ this.chartParams$ = chartEntity.chartParams$
45
+ this.event$ = chartEntity.event$
46
+ }
47
+
48
+ }
package/src/GridChart.ts CHANGED
@@ -1,21 +1,21 @@
1
- import type {
2
- ChartEntity,
3
- ChartOptionsPartial } from './types'
4
- import { DATA_FORMATTER_GRID_DEFAULT } from './defaults'
5
- import { computeGridData } from './grid/computeGridData'
6
- import { createGridContextObserver } from './grid/createGridContextObserver'
7
- import { AbstractChart } from './AbstractChart'
8
-
9
- export class GridChart extends AbstractChart<'grid'> implements ChartEntity<'grid'> {
10
- constructor (element: HTMLElement | Element, options?: ChartOptionsPartial<'grid'>) {
11
- super(
12
- {
13
- defaultDataFormatter: DATA_FORMATTER_GRID_DEFAULT,
14
- computedDataFn: computeGridData,
15
- contextObserverFn: createGridContextObserver
16
- },
17
- element,
18
- options
19
- )
20
- }
1
+ import type {
2
+ ChartEntity,
3
+ ChartOptionsPartial } from './types'
4
+ import { DATA_FORMATTER_GRID_DEFAULT } from './defaults'
5
+ import { computeGridData } from './grid/computeGridData'
6
+ import { createGridContextObserver } from './grid/createGridContextObserver'
7
+ import { AbstractChart } from './AbstractChart'
8
+
9
+ export class GridChart extends AbstractChart<'grid'> implements ChartEntity<'grid'> {
10
+ constructor (element: HTMLElement | Element, options?: ChartOptionsPartial<'grid'>) {
11
+ super(
12
+ {
13
+ defaultDataFormatter: DATA_FORMATTER_GRID_DEFAULT,
14
+ computedDataFn: computeGridData,
15
+ contextObserverFn: createGridContextObserver
16
+ },
17
+ element,
18
+ options
19
+ )
20
+ }
21
21
  }
@@ -1,21 +1,21 @@
1
- import type {
2
- ChartEntity,
3
- ChartOptionsPartial } from './types'
4
- import { DATA_FORMATTER_MULTI_GRID_DEFAULT } from './defaults'
5
- import { computeMultiGridData } from './multiGrid/computeMultiGridData'
6
- import { createMultiGridContextObserver } from './multiGrid/createMultiGridContextObserver'
7
- import { AbstractChart } from './AbstractChart'
8
-
9
- export class MultiGridChart extends AbstractChart<'multiGrid'> implements ChartEntity<'multiGrid'> {
10
- constructor (element: HTMLElement | Element, options?: ChartOptionsPartial<'multiGrid'>) {
11
- super(
12
- {
13
- defaultDataFormatter: DATA_FORMATTER_MULTI_GRID_DEFAULT,
14
- computedDataFn: computeMultiGridData,
15
- contextObserverFn: createMultiGridContextObserver
16
- },
17
- element,
18
- options
19
- )
20
- }
1
+ import type {
2
+ ChartEntity,
3
+ ChartOptionsPartial } from './types'
4
+ import { DATA_FORMATTER_MULTI_GRID_DEFAULT } from './defaults'
5
+ import { computeMultiGridData } from './multiGrid/computeMultiGridData'
6
+ import { createMultiGridContextObserver } from './multiGrid/createMultiGridContextObserver'
7
+ import { AbstractChart } from './AbstractChart'
8
+
9
+ export class MultiGridChart extends AbstractChart<'multiGrid'> implements ChartEntity<'multiGrid'> {
10
+ constructor (element: HTMLElement | Element, options?: ChartOptionsPartial<'multiGrid'>) {
11
+ super(
12
+ {
13
+ defaultDataFormatter: DATA_FORMATTER_MULTI_GRID_DEFAULT,
14
+ computedDataFn: computeMultiGridData,
15
+ contextObserverFn: createMultiGridContextObserver
16
+ },
17
+ element,
18
+ options
19
+ )
20
+ }
21
21
  }
@@ -1,21 +1,21 @@
1
- import type {
2
- ChartEntity,
3
- ChartOptionsPartial } from './types'
4
- import { DATA_FORMATTER_MULTI_VALUE_DEFAULT } from './defaults'
5
- import { computeMultiValueData } from './multiValue/computeMultiValueData'
6
- import { createMultiValueContextObserver } from './multiValue/createMultiValueContextObserver'
7
- import { AbstractChart } from './AbstractChart'
8
-
9
- export class MultiValueChart extends AbstractChart<'multiValue'> implements ChartEntity<'multiValue'> {
10
- constructor (element: HTMLElement | Element, options?: ChartOptionsPartial<'multiValue'>) {
11
- super(
12
- {
13
- defaultDataFormatter: DATA_FORMATTER_MULTI_VALUE_DEFAULT,
14
- computedDataFn: computeMultiValueData,
15
- contextObserverFn: createMultiValueContextObserver
16
- },
17
- element,
18
- options
19
- )
20
- }
1
+ import type {
2
+ ChartEntity,
3
+ ChartOptionsPartial } from './types'
4
+ import { DATA_FORMATTER_MULTI_VALUE_DEFAULT } from './defaults'
5
+ import { computeMultiValueData } from './multiValue/computeMultiValueData'
6
+ import { createMultiValueContextObserver } from './multiValue/createMultiValueContextObserver'
7
+ import { AbstractChart } from './AbstractChart'
8
+
9
+ export class MultiValueChart extends AbstractChart<'multiValue'> implements ChartEntity<'multiValue'> {
10
+ constructor (element: HTMLElement | Element, options?: ChartOptionsPartial<'multiValue'>) {
11
+ super(
12
+ {
13
+ defaultDataFormatter: DATA_FORMATTER_MULTI_VALUE_DEFAULT,
14
+ computedDataFn: computeMultiValueData,
15
+ contextObserverFn: createMultiValueContextObserver
16
+ },
17
+ element,
18
+ options
19
+ )
20
+ }
21
21
  }
@@ -1,21 +1,21 @@
1
- import type {
2
- ChartEntity,
3
- ChartOptionsPartial } from './types'
4
- import { DATA_FORMATTER_RELATIONAL_DEFAULT} from './defaults'
5
- import { computeRelationshipData } from './relationship/computeRelationshipData'
6
- import { createRelationshipContextObserver } from './relationship/createRelationshipContextObserver'
7
- import { AbstractChart } from './AbstractChart'
8
-
9
- export class RelationshipChart extends AbstractChart<'relationship'> implements ChartEntity<'relationship'> {
10
- constructor (element: HTMLElement | Element, options?: ChartOptionsPartial<'relationship'>) {
11
- super(
12
- {
13
- defaultDataFormatter: DATA_FORMATTER_RELATIONAL_DEFAULT,
14
- computedDataFn: computeRelationshipData,
15
- contextObserverFn: createRelationshipContextObserver
16
- },
17
- element,
18
- options
19
- )
20
- }
1
+ import type {
2
+ ChartEntity,
3
+ ChartOptionsPartial } from './types'
4
+ import { DATA_FORMATTER_RELATIONAL_DEFAULT} from './defaults'
5
+ import { computeRelationshipData } from './relationship/computeRelationshipData'
6
+ import { createRelationshipContextObserver } from './relationship/createRelationshipContextObserver'
7
+ import { AbstractChart } from './AbstractChart'
8
+
9
+ export class RelationshipChart extends AbstractChart<'relationship'> implements ChartEntity<'relationship'> {
10
+ constructor (element: HTMLElement | Element, options?: ChartOptionsPartial<'relationship'>) {
11
+ super(
12
+ {
13
+ defaultDataFormatter: DATA_FORMATTER_RELATIONAL_DEFAULT,
14
+ computedDataFn: computeRelationshipData,
15
+ contextObserverFn: createRelationshipContextObserver
16
+ },
17
+ element,
18
+ options
19
+ )
20
+ }
21
21
  }
@@ -1,21 +1,21 @@
1
- import type {
2
- ChartEntity,
3
- ChartOptionsPartial } from './types'
4
- import { DATA_FORMATTER_SERIES_DEFAULT } from './defaults'
5
- import { computeSeriesData } from './series/computeSeriesData'
6
- import { createSeriesContextObserver } from './series/createSeriesContextObserver'
7
- import { AbstractChart } from './AbstractChart'
8
-
9
- export class SeriesChart extends AbstractChart<'series'> implements ChartEntity<'series'> {
10
- constructor (element: HTMLElement | Element, options?: ChartOptionsPartial<'series'>) {
11
- super(
12
- {
13
- defaultDataFormatter: DATA_FORMATTER_SERIES_DEFAULT,
14
- computedDataFn: computeSeriesData,
15
- contextObserverFn: createSeriesContextObserver
16
- },
17
- element,
18
- options
19
- )
20
- }
1
+ import type {
2
+ ChartEntity,
3
+ ChartOptionsPartial } from './types'
4
+ import { DATA_FORMATTER_SERIES_DEFAULT } from './defaults'
5
+ import { computeSeriesData } from './series/computeSeriesData'
6
+ import { createSeriesContextObserver } from './series/createSeriesContextObserver'
7
+ import { AbstractChart } from './AbstractChart'
8
+
9
+ export class SeriesChart extends AbstractChart<'series'> implements ChartEntity<'series'> {
10
+ constructor (element: HTMLElement | Element, options?: ChartOptionsPartial<'series'>) {
11
+ super(
12
+ {
13
+ defaultDataFormatter: DATA_FORMATTER_SERIES_DEFAULT,
14
+ computedDataFn: computeSeriesData,
15
+ contextObserverFn: createSeriesContextObserver
16
+ },
17
+ element,
18
+ options
19
+ )
20
+ }
21
21
  }
package/src/TreeChart.ts CHANGED
@@ -1,21 +1,21 @@
1
- import type {
2
- ChartEntity,
3
- ChartOptionsPartial } from './types'
4
- import { DATA_FORMATTER_TREE_DEFAULT } from './defaults'
5
- import { computeTreeData } from './tree/computeTreeData'
6
- import { createTreeContextObserver } from './tree/createTreeContextObserver'
7
- import { AbstractChart } from './AbstractChart'
8
-
9
- export class TreeChart extends AbstractChart<'tree'> implements ChartEntity<'tree'> {
10
- constructor (element: HTMLElement | Element, options?: ChartOptionsPartial<'tree'>) {
11
- super(
12
- {
13
- defaultDataFormatter: DATA_FORMATTER_TREE_DEFAULT,
14
- computedDataFn: computeTreeData,
15
- contextObserverFn: createTreeContextObserver
16
- },
17
- element,
18
- options
19
- )
20
- }
1
+ import type {
2
+ ChartEntity,
3
+ ChartOptionsPartial } from './types'
4
+ import { DATA_FORMATTER_TREE_DEFAULT } from './defaults'
5
+ import { computeTreeData } from './tree/computeTreeData'
6
+ import { createTreeContextObserver } from './tree/createTreeContextObserver'
7
+ import { AbstractChart } from './AbstractChart'
8
+
9
+ export class TreeChart extends AbstractChart<'tree'> implements ChartEntity<'tree'> {
10
+ constructor (element: HTMLElement | Element, options?: ChartOptionsPartial<'tree'>) {
11
+ super(
12
+ {
13
+ defaultDataFormatter: DATA_FORMATTER_TREE_DEFAULT,
14
+ computedDataFn: computeTreeData,
15
+ contextObserverFn: createTreeContextObserver
16
+ },
17
+ element,
18
+ options
19
+ )
20
+ }
21
21
  }