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

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 +5 -5
  3. package/dist/orbcharts-core.umd.js +1 -1
  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 +367 -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
@@ -1,18 +1,18 @@
1
- import { Observable, Subject, BehaviorSubject } from 'rxjs'
2
- import type { ChartType } from './Chart'
3
- import type { EventTypeMap } from './Event'
4
- import type { ChartParamsPartial } from './ChartParams'
5
- // import type { Data } from './Data'
6
- import type { DataFormatterPartialTypeMap } from './DataFormatter'
7
- import type { DataTypeMap } from './Data'
8
- import type { DataFormatterTypeMap } from './DataFormatter'
9
- import type { PluginEntity } from './Plugin'
10
-
11
- export interface ContextSubject<T extends ChartType> {
12
- data$: Subject<DataTypeMap<T>>
13
- dataFormatter$: Subject<DataFormatterPartialTypeMap<T>>
14
- plugins$: Subject<PluginEntity<T, any, any>[]>
15
- // pluginParams$: Subject<{[keys: string]: unknown}>
16
- chartParams$: Subject<ChartParamsPartial>
17
- event$: Subject<EventTypeMap<T>>
18
- }
1
+ import { Observable, Subject, BehaviorSubject } from 'rxjs'
2
+ import type { ChartType } from './Chart'
3
+ import type { EventTypeMap } from './Event'
4
+ import type { ChartParamsPartial } from './ChartParams'
5
+ // import type { Data } from './Data'
6
+ import type { DataFormatterPartialTypeMap } from './DataFormatter'
7
+ import type { DataTypeMap } from './Data'
8
+ import type { DataFormatterTypeMap } from './DataFormatter'
9
+ import type { PluginEntity } from './Plugin'
10
+
11
+ export interface ContextSubject<T extends ChartType> {
12
+ data$: Subject<DataTypeMap<T>>
13
+ dataFormatter$: Subject<DataFormatterPartialTypeMap<T>>
14
+ plugins$: Subject<PluginEntity<T, any, any>[]>
15
+ // pluginParams$: Subject<{[keys: string]: unknown}>
16
+ chartParams$: Subject<ChartParamsPartial>
17
+ event$: Subject<EventTypeMap<T>>
18
+ }
package/src/types/Data.ts CHANGED
@@ -1,45 +1,45 @@
1
- import { ChartType } from './Chart'
2
- import { DataSeries, DataSeriesDatum, DataSeriesValue } from './DataSeries'
3
- import { DataGrid, DataGridDatum, DataGridValue } from './DataGrid'
4
- import { DataMultiGrid, DataMultiGridDatum, DataMultiGridValue } from './DataMultiGrid'
5
- import { DataMultiValue, DataMultiValueDatum, DataMultiValueValue } from './DataMultiValue'
6
- import { DataTree, DataTreeDatum, DataTreeObj } from './DataTree'
7
- import { DataRelationship, Node, Edge } from './DataRelationship'
8
-
9
- // 基本欄位(皆為可選,無填寫則在計算時產生預設值)
10
- export interface DatumBase {
11
- id?: string
12
- label?: string
13
- description?: string
14
- data?: any // 使用者注入的資料
15
- }
16
-
17
- // 需具備value的datum
18
- export interface DatumValue {
19
- value: number | null
20
- }
21
-
22
- // 透過類型選擇Data
23
- export type DataTypeMap<T extends ChartType> = T extends 'series' ? DataSeries
24
- : T extends 'grid' ? DataGrid
25
- : T extends 'multiGrid' ? DataMultiGrid
26
- : T extends 'multiValue' ? DataMultiValue
27
- : T extends 'relationship' ? DataRelationship
28
- : T extends 'tree' ? DataTree
29
- : unknown
30
-
31
- // 透過類型選擇Datum
32
- export type DatumTypeMap<T extends ChartType> = T extends 'series' ? DataSeriesDatum | DataSeriesValue
33
- : T extends 'grid' ? DataGridDatum | DataGridValue
34
- : T extends 'multiGrid' ? DataMultiGridDatum | DataMultiGridValue
35
- : T extends 'multiValue' ? DataMultiValueDatum | DataMultiValueValue
36
- : T extends 'relationship' ? Node | Edge
37
- : T extends 'tree' ? DataTreeDatum | DataTreeObj
38
- : unknown
39
-
40
- // export type Data = DataSeries
41
- // | DataGrid
42
- // | DataMultiGrid
43
- // | DataMultiValue
44
- // | DataTree
45
- // | DataRelationship
1
+ import { ChartType } from './Chart'
2
+ import { DataSeries, DataSeriesDatum, DataSeriesValue } from './DataSeries'
3
+ import { DataGrid, DataGridDatum, DataGridValue } from './DataGrid'
4
+ import { DataMultiGrid, DataMultiGridDatum, DataMultiGridValue } from './DataMultiGrid'
5
+ import { DataMultiValue, DataMultiValueDatum, DataMultiValueValue } from './DataMultiValue'
6
+ import { DataTree, DataTreeDatum, DataTreeObj } from './DataTree'
7
+ import { DataRelationship, Node, Edge } from './DataRelationship'
8
+
9
+ // 基本欄位(皆為可選,無填寫則在計算時產生預設值)
10
+ export interface DatumBase {
11
+ id?: string
12
+ label?: string
13
+ description?: string
14
+ data?: any // 使用者注入的資料
15
+ }
16
+
17
+ // 需具備value的datum
18
+ export interface DatumValue {
19
+ value: number | null
20
+ }
21
+
22
+ // 透過類型選擇Data
23
+ export type DataTypeMap<T extends ChartType> = T extends 'series' ? DataSeries
24
+ : T extends 'grid' ? DataGrid
25
+ : T extends 'multiGrid' ? DataMultiGrid
26
+ : T extends 'multiValue' ? DataMultiValue
27
+ : T extends 'relationship' ? DataRelationship
28
+ : T extends 'tree' ? DataTree
29
+ : unknown
30
+
31
+ // 透過類型選擇Datum
32
+ export type DatumTypeMap<T extends ChartType> = T extends 'series' ? DataSeriesDatum | DataSeriesValue
33
+ : T extends 'grid' ? DataGridDatum | DataGridValue
34
+ : T extends 'multiGrid' ? DataMultiGridDatum | DataMultiGridValue
35
+ : T extends 'multiValue' ? DataMultiValueDatum | DataMultiValueValue
36
+ : T extends 'relationship' ? Node | Edge
37
+ : T extends 'tree' ? DataTreeDatum | DataTreeObj
38
+ : unknown
39
+
40
+ // export type Data = DataSeries
41
+ // | DataGrid
42
+ // | DataMultiGrid
43
+ // | DataMultiValue
44
+ // | DataTree
45
+ // | DataRelationship
@@ -1,74 +1,74 @@
1
- import type { ChartType } from './Chart'
2
- import type { ChartParams } from './ChartParams'
3
- import type { DataTypeMap, DatumTypeMap } from './Data'
4
- import type { ComputedDataTypeMap, ComputedDatumTypeMap } from './ComputedData'
5
- import type { DataFormatterSeries, DataFormatterSeriesPartial } from './DataFormatterSeries'
6
- import type { DataFormatterGrid, DataFormatterGridPartial } from './DataFormatterGrid'
7
- import type { DataFormatterMultiGrid, DataFormatterMultiGridPartial } from './DataFormatterMultiGrid'
8
- import type { DataFormatterMultiValue, DataFormatterMultiValuePartial } from './DataFormatterMultiValue'
9
- import type { DataFormatterTree, DataFormatterTreePartial } from './DataFormatterTree'
10
- import type { DataFormatterRelationship, DataFormatterRelationshipPartial } from './DataFormatterRelationship'
11
- import type { AxisPosition } from './Axis'
12
-
13
-
14
- // dataFormatter計算當中會使用的資料
15
- export interface DataFormatterContext<T extends ChartType> {
16
- data: DataTypeMap<T>
17
- dataFormatter: DataFormatterTypeMap<T>
18
- chartParams: ChartParams
19
- // layout: Layout
20
- }
21
-
22
-
23
- // 透過類型選擇DataFormatter
24
- export type DataFormatterTypeMap<T extends ChartType> = T extends 'series' ? DataFormatterSeries
25
- : T extends 'grid' ? DataFormatterGrid
26
- : T extends 'multiGrid' ? DataFormatterMultiGrid
27
- : T extends 'multiValue' ? DataFormatterMultiValue
28
- : T extends 'relationship' ? DataFormatterRelationship
29
- : T extends 'tree' ? DataFormatterTree
30
- : DataFormatterBase<T>
31
-
32
- // 透過類型選擇DataFormatter(可選欄位)
33
- export type DataFormatterPartialTypeMap<T extends ChartType> = T extends 'series' ? DataFormatterSeriesPartial
34
- : T extends 'grid' ? DataFormatterGridPartial
35
- : T extends 'multiGrid' ? DataFormatterMultiGridPartial
36
- : T extends 'multiValue' ? DataFormatterMultiValuePartial
37
- : T extends 'relationship' ? DataFormatterRelationshipPartial
38
- : T extends 'tree' ? DataFormatterTreePartial
39
- : DataFormatterBasePartial<T>
40
-
41
- // 基本介面
42
- export interface DataFormatterBase<T extends ChartType> {
43
- type: T
44
- }
45
-
46
- export type DataFormatterBasePartial<T extends ChartType> = Partial<DataFormatterBase<T>>
47
-
48
- export interface DataFormatterValueAxis {
49
- position: AxisPosition
50
- scaleDomain: [number | 'auto', number | 'auto']
51
- scaleRange: [number, number]
52
- label: string
53
- }
54
-
55
- export interface DataFormatterGroupAxis {
56
- position: AxisPosition
57
- scaleDomain: [number | 'auto', number | 'auto']
58
- scalePadding: number
59
- label: string
60
- }
61
-
62
-
63
- // export type ValueFormat = string | ((text: d3.NumberValue) => string)
64
-
65
- export type VisibleFilter<T extends ChartType> = (datum: ComputedDatumTypeMap<T>, context: DataFormatterContext<T>) => boolean | null
66
-
67
- // export type TooltipContentFormat<T extends ChartType> = (datum: DatumTypeMap<T>, rowIndex: number, columnIndex: number, context: DataFormatterContext<T>) => string | null
68
-
69
- export interface DataFormatterContainer {
70
- gap: number
71
- rowAmount: number
72
- columnAmount: number
73
- }
74
-
1
+ import type { ChartType } from './Chart'
2
+ import type { ChartParams } from './ChartParams'
3
+ import type { DataTypeMap, DatumTypeMap } from './Data'
4
+ import type { ComputedDataTypeMap, ComputedDatumTypeMap } from './ComputedData'
5
+ import type { DataFormatterSeries, DataFormatterSeriesPartial } from './DataFormatterSeries'
6
+ import type { DataFormatterGrid, DataFormatterGridPartial } from './DataFormatterGrid'
7
+ import type { DataFormatterMultiGrid, DataFormatterMultiGridPartial } from './DataFormatterMultiGrid'
8
+ import type { DataFormatterMultiValue, DataFormatterMultiValuePartial } from './DataFormatterMultiValue'
9
+ import type { DataFormatterTree, DataFormatterTreePartial } from './DataFormatterTree'
10
+ import type { DataFormatterRelationship, DataFormatterRelationshipPartial } from './DataFormatterRelationship'
11
+ import type { AxisPosition } from './Axis'
12
+
13
+
14
+ // dataFormatter計算當中會使用的資料
15
+ export interface DataFormatterContext<T extends ChartType> {
16
+ data: DataTypeMap<T>
17
+ dataFormatter: DataFormatterTypeMap<T>
18
+ chartParams: ChartParams
19
+ // layout: Layout
20
+ }
21
+
22
+
23
+ // 透過類型選擇DataFormatter
24
+ export type DataFormatterTypeMap<T extends ChartType> = T extends 'series' ? DataFormatterSeries
25
+ : T extends 'grid' ? DataFormatterGrid
26
+ : T extends 'multiGrid' ? DataFormatterMultiGrid
27
+ : T extends 'multiValue' ? DataFormatterMultiValue
28
+ : T extends 'relationship' ? DataFormatterRelationship
29
+ : T extends 'tree' ? DataFormatterTree
30
+ : DataFormatterBase<T>
31
+
32
+ // 透過類型選擇DataFormatter(可選欄位)
33
+ export type DataFormatterPartialTypeMap<T extends ChartType> = T extends 'series' ? DataFormatterSeriesPartial
34
+ : T extends 'grid' ? DataFormatterGridPartial
35
+ : T extends 'multiGrid' ? DataFormatterMultiGridPartial
36
+ : T extends 'multiValue' ? DataFormatterMultiValuePartial
37
+ : T extends 'relationship' ? DataFormatterRelationshipPartial
38
+ : T extends 'tree' ? DataFormatterTreePartial
39
+ : DataFormatterBasePartial<T>
40
+
41
+ // 基本介面
42
+ export interface DataFormatterBase<T extends ChartType> {
43
+ type: T
44
+ }
45
+
46
+ export type DataFormatterBasePartial<T extends ChartType> = Partial<DataFormatterBase<T>>
47
+
48
+ export interface DataFormatterValueAxis {
49
+ position: AxisPosition
50
+ scaleDomain: [number | 'auto', number | 'auto']
51
+ scaleRange: [number, number]
52
+ label: string
53
+ }
54
+
55
+ export interface DataFormatterGroupAxis {
56
+ position: AxisPosition
57
+ scaleDomain: [number | 'auto', number | 'auto']
58
+ scalePadding: number
59
+ label: string
60
+ }
61
+
62
+
63
+ // export type ValueFormat = string | ((text: d3.NumberValue) => string)
64
+
65
+ export type VisibleFilter<T extends ChartType> = (datum: ComputedDatumTypeMap<T>, context: DataFormatterContext<T>) => boolean | null
66
+
67
+ // export type TooltipContentFormat<T extends ChartType> = (datum: DatumTypeMap<T>, rowIndex: number, columnIndex: number, context: DataFormatterContext<T>) => string | null
68
+
69
+ export interface DataFormatterContainer {
70
+ gap: number
71
+ rowAmount: number
72
+ columnAmount: number
73
+ }
74
+
@@ -1,68 +1,68 @@
1
- import type {
2
- DataFormatterBase,
3
- DataFormatterBasePartial,
4
- DataFormatterValueAxis,
5
- DataFormatterGroupAxis,
6
- VisibleFilter,
7
- DataFormatterContainer
8
- } from './DataFormatter'
9
-
10
-
11
- export type SeriesDirection = 'row' | 'column' // default: 'row'
12
-
13
- export interface DataFormatterGrid extends DataFormatterBase<'grid'> {
14
- visibleFilter: VisibleFilter<'grid'>
15
- grid: DataFormatterGridGrid
16
- container: DataFormatterContainer
17
- }
18
-
19
- export interface DataFormatterGridPartial extends DataFormatterBasePartial<'grid'> {
20
- visibleFilter?: VisibleFilter<'grid'>
21
- grid?: DataFormatterGridGridPartial
22
- container?: Partial<DataFormatterContainer>
23
- }
24
-
25
- export interface DataFormatterGridGrid {
26
- // gridData: DataFormatterGridGridData
27
- // slotIndex: number | null
28
- // seriesSlotIndexes: number[] | null
29
- seriesDirection: SeriesDirection
30
- rowLabels: string[]
31
- columnLabels: string[]
32
- valueAxis: DataFormatterValueAxis
33
- groupAxis: DataFormatterGroupAxis
34
- separateSeries: boolean
35
- }
36
-
37
- export interface DataFormatterGridGridPartial {
38
- // gridData?: Partial<DataFormatterGridGridData>
39
- // slotIndex?: number | null
40
- // seriesSlotIndexes?: number[] | null
41
- seriesDirection?: SeriesDirection
42
- rowLabels?: string[]
43
- columnLabels?: string[]
44
- valueAxis?: Partial<DataFormatterValueAxis>
45
- groupAxis?: Partial<DataFormatterGroupAxis>
46
- separateSeries?: boolean
47
- }
48
-
49
- export interface DataFormatterGridContainer {
50
- gap: number
51
- rowAmount: number
52
- columnAmount: number
53
- }
54
-
55
- // grid欄位
56
- // export interface DataFormatterGridGridData {
57
- // seriesDirection: SeriesDirection
58
- // rowLabels: string[]
59
- // columnLabels: string[]
60
- // }
61
-
62
- // const test: DataFormatterGridPartial = {
63
- // type: 'grid',
64
- // grid: {
65
- // rowLabels: [],
66
- // // a: ''
67
- // }
1
+ import type {
2
+ DataFormatterBase,
3
+ DataFormatterBasePartial,
4
+ DataFormatterValueAxis,
5
+ DataFormatterGroupAxis,
6
+ VisibleFilter,
7
+ DataFormatterContainer
8
+ } from './DataFormatter'
9
+
10
+
11
+ export type SeriesDirection = 'row' | 'column' // default: 'row'
12
+
13
+ export interface DataFormatterGrid extends DataFormatterBase<'grid'> {
14
+ visibleFilter: VisibleFilter<'grid'>
15
+ grid: DataFormatterGridGrid
16
+ container: DataFormatterContainer
17
+ }
18
+
19
+ export interface DataFormatterGridPartial extends DataFormatterBasePartial<'grid'> {
20
+ visibleFilter?: VisibleFilter<'grid'>
21
+ grid?: DataFormatterGridGridPartial
22
+ container?: Partial<DataFormatterContainer>
23
+ }
24
+
25
+ export interface DataFormatterGridGrid {
26
+ // gridData: DataFormatterGridGridData
27
+ // slotIndex: number | null
28
+ // seriesSlotIndexes: number[] | null
29
+ seriesDirection: SeriesDirection
30
+ rowLabels: string[]
31
+ columnLabels: string[]
32
+ valueAxis: DataFormatterValueAxis
33
+ groupAxis: DataFormatterGroupAxis
34
+ separateSeries: boolean
35
+ }
36
+
37
+ export interface DataFormatterGridGridPartial {
38
+ // gridData?: Partial<DataFormatterGridGridData>
39
+ // slotIndex?: number | null
40
+ // seriesSlotIndexes?: number[] | null
41
+ seriesDirection?: SeriesDirection
42
+ rowLabels?: string[]
43
+ columnLabels?: string[]
44
+ valueAxis?: Partial<DataFormatterValueAxis>
45
+ groupAxis?: Partial<DataFormatterGroupAxis>
46
+ separateSeries?: boolean
47
+ }
48
+
49
+ export interface DataFormatterGridContainer {
50
+ gap: number
51
+ rowAmount: number
52
+ columnAmount: number
53
+ }
54
+
55
+ // grid欄位
56
+ // export interface DataFormatterGridGridData {
57
+ // seriesDirection: SeriesDirection
58
+ // rowLabels: string[]
59
+ // columnLabels: string[]
60
+ // }
61
+
62
+ // const test: DataFormatterGridPartial = {
63
+ // type: 'grid',
64
+ // grid: {
65
+ // rowLabels: [],
66
+ // // a: ''
67
+ // }
68
68
  // }
@@ -1,45 +1,45 @@
1
- import type { VisibleFilter, DataFormatterContainer } from './DataFormatter'
2
- import type { DataFormatterGridGrid, DataFormatterGridGridPartial } from './DataFormatterGrid'
3
- import type {
4
- DataFormatterBase,
5
- DataFormatterBasePartial,
6
- DataFormatterValueAxis,
7
- DataFormatterGroupAxis,
8
- DataFormatterContext } from './DataFormatter'
9
- import type { AxisPosition } from './Axis'
10
-
11
- export interface DataFormatterMultiGrid extends DataFormatterBase<'multiGrid'> {
12
- visibleFilter: VisibleFilter<'multiGrid'>
13
- gridList: Array<DataFormatterGridGrid>
14
- container: DataFormatterMultiGridContainer
15
- separateGrid: boolean
16
- }
17
-
18
- export interface DataFormatterMultiGridPartial extends DataFormatterBasePartial<'multiGrid'> {
19
- // visibleFilter?: VisibleFilter<'multiGrid'>
20
- gridList?: Array<DataFormatterGridGridPartial>
21
- container?: Partial<DataFormatterMultiGridContainer>
22
- separateGrid?: boolean
23
- }
24
-
25
- export interface DataFormatterMultiGridGrid extends DataFormatterGridGrid {
26
-
27
- }
28
-
29
- export interface DataFormatterMultiGridGridPartial extends DataFormatterGridGridPartial {
30
-
31
- }
32
-
33
- // container
34
- export interface DataFormatterMultiGridContainer extends DataFormatterContainer {
35
-
36
- }
37
-
38
- // multiGrid欄位
39
- // export interface DataFormatterMultiGridMultiGrid {
40
- // grid: DataFormatterGridGridData
41
- // valueAxis: DataFormatterValueAxis // default: 'left'
42
- // groupAxis: DataFormatterGroupAxis // default: 'bottom'
43
- // colorsPredicate: (datum: DataGridDatum | DataGridValue, rowIndex: number, columnIndex: number, context: DataFormatterContext<'grid'>) => string
44
- // // colors: Colors
1
+ import type { VisibleFilter, DataFormatterContainer } from './DataFormatter'
2
+ import type { DataFormatterGridGrid, DataFormatterGridGridPartial } from './DataFormatterGrid'
3
+ import type {
4
+ DataFormatterBase,
5
+ DataFormatterBasePartial,
6
+ DataFormatterValueAxis,
7
+ DataFormatterGroupAxis,
8
+ DataFormatterContext } from './DataFormatter'
9
+ import type { AxisPosition } from './Axis'
10
+
11
+ export interface DataFormatterMultiGrid extends DataFormatterBase<'multiGrid'> {
12
+ visibleFilter: VisibleFilter<'multiGrid'>
13
+ gridList: Array<DataFormatterGridGrid>
14
+ container: DataFormatterMultiGridContainer
15
+ separateGrid: boolean
16
+ }
17
+
18
+ export interface DataFormatterMultiGridPartial extends DataFormatterBasePartial<'multiGrid'> {
19
+ // visibleFilter?: VisibleFilter<'multiGrid'>
20
+ gridList?: Array<DataFormatterGridGridPartial>
21
+ container?: Partial<DataFormatterMultiGridContainer>
22
+ separateGrid?: boolean
23
+ }
24
+
25
+ export interface DataFormatterMultiGridGrid extends DataFormatterGridGrid {
26
+
27
+ }
28
+
29
+ export interface DataFormatterMultiGridGridPartial extends DataFormatterGridGridPartial {
30
+
31
+ }
32
+
33
+ // container
34
+ export interface DataFormatterMultiGridContainer extends DataFormatterContainer {
35
+
36
+ }
37
+
38
+ // multiGrid欄位
39
+ // export interface DataFormatterMultiGridMultiGrid {
40
+ // grid: DataFormatterGridGridData
41
+ // valueAxis: DataFormatterValueAxis // default: 'left'
42
+ // groupAxis: DataFormatterGroupAxis // default: 'bottom'
43
+ // colorsPredicate: (datum: DataGridDatum | DataGridValue, rowIndex: number, columnIndex: number, context: DataFormatterContext<'grid'>) => string
44
+ // // colors: Colors
45
45
  // }
@@ -1,24 +1,24 @@
1
- import { DataMultiValueDatum, DataMultiValue } from './DataMultiValue'
2
- import { DataFormatterBase, DataFormatterBasePartial, DataFormatterValueAxis, VisibleFilter } from './DataFormatter'
3
-
4
- export interface DataFormatterMultiValue extends DataFormatterBase<'multiValue'> {
5
- visibleFilter: VisibleFilter<'multiValue'>
6
- // labelFormat: (datum: unknown) => string
7
- categoryLabels: string[]
8
- multiValue: Array<DataFormatterMultiValueMultiValue>
9
- xAxis: DataFormatterValueAxis
10
- yAxis: DataFormatterValueAxis
11
- }
12
-
13
- export interface DataFormatterMultiValuePartial extends DataFormatterBasePartial<'multiValue'> {
14
- visibleFilter?: VisibleFilter<'multiValue'>
15
- categoryLabels?: string[]
16
- multiValue?: Array<Partial<DataFormatterMultiValueMultiValue>>
17
- xAxis?: Partial<DataFormatterValueAxis>
18
- yAxis?: Partial<DataFormatterValueAxis>
19
- }
20
-
21
- // multiValue欄位
22
- export interface DataFormatterMultiValueMultiValue {
23
- // unitLabel: string
1
+ import { DataMultiValueDatum, DataMultiValue } from './DataMultiValue'
2
+ import { DataFormatterBase, DataFormatterBasePartial, DataFormatterValueAxis, VisibleFilter } from './DataFormatter'
3
+
4
+ export interface DataFormatterMultiValue extends DataFormatterBase<'multiValue'> {
5
+ visibleFilter: VisibleFilter<'multiValue'>
6
+ // labelFormat: (datum: unknown) => string
7
+ categoryLabels: string[]
8
+ multiValue: Array<DataFormatterMultiValueMultiValue>
9
+ xAxis: DataFormatterValueAxis
10
+ yAxis: DataFormatterValueAxis
11
+ }
12
+
13
+ export interface DataFormatterMultiValuePartial extends DataFormatterBasePartial<'multiValue'> {
14
+ visibleFilter?: VisibleFilter<'multiValue'>
15
+ categoryLabels?: string[]
16
+ multiValue?: Array<Partial<DataFormatterMultiValueMultiValue>>
17
+ xAxis?: Partial<DataFormatterValueAxis>
18
+ yAxis?: Partial<DataFormatterValueAxis>
19
+ }
20
+
21
+ // multiValue欄位
22
+ export interface DataFormatterMultiValueMultiValue {
23
+ // unitLabel: string
24
24
  }
@@ -1,26 +1,26 @@
1
- import { Node, Edge, DataRelationship } from './DataRelationship'
2
- import { DataFormatterBase, DataFormatterBasePartial, VisibleFilter } from './DataFormatter'
3
-
4
- export interface DataFormatterRelationship extends DataFormatterBase<'relationship'> {
5
- visibleFilter: VisibleFilter<'relationship'>
6
- categoryLabels: string[]
7
- // node: DataFormatterRelationshipNode
8
- // edge: DataFormatterRelationshipEdge
9
- }
10
-
11
- export interface DataFormatterRelationshipPartial extends DataFormatterBasePartial<'relationship'> {
12
- visibleFilter?: VisibleFilter<'relationship'>
13
- categoryLabels?: string[]
14
- // node: Partial<DataFormatterRelationshipNode>
15
- // edge: Partial<DataFormatterRelationshipEdge>
16
- }
17
-
18
- // export interface DataFormatterRelationshipNode {
19
- // labelFormat: (node: unknown) => string
20
- // descriptionFormat: (node: unknown) => string
21
- // }
22
-
23
- // export interface DataFormatterRelationshipEdge {
24
- // labelFormat: (edge: unknown, startNode: unknown, endNode: unknown) => string
25
- // descriptionFormat: (edge: unknown, startNode: unknown, endNode: unknown) => string
1
+ import { Node, Edge, DataRelationship } from './DataRelationship'
2
+ import { DataFormatterBase, DataFormatterBasePartial, VisibleFilter } from './DataFormatter'
3
+
4
+ export interface DataFormatterRelationship extends DataFormatterBase<'relationship'> {
5
+ visibleFilter: VisibleFilter<'relationship'>
6
+ categoryLabels: string[]
7
+ // node: DataFormatterRelationshipNode
8
+ // edge: DataFormatterRelationshipEdge
9
+ }
10
+
11
+ export interface DataFormatterRelationshipPartial extends DataFormatterBasePartial<'relationship'> {
12
+ visibleFilter?: VisibleFilter<'relationship'>
13
+ categoryLabels?: string[]
14
+ // node: Partial<DataFormatterRelationshipNode>
15
+ // edge: Partial<DataFormatterRelationshipEdge>
16
+ }
17
+
18
+ // export interface DataFormatterRelationshipNode {
19
+ // labelFormat: (node: unknown) => string
20
+ // descriptionFormat: (node: unknown) => string
21
+ // }
22
+
23
+ // export interface DataFormatterRelationshipEdge {
24
+ // labelFormat: (edge: unknown, startNode: unknown, endNode: unknown) => string
25
+ // descriptionFormat: (edge: unknown, startNode: unknown, endNode: unknown) => string
26
26
  // }
@@ -1,20 +1,20 @@
1
- import { DataSeriesDatum, DataSeriesValue, DataSeries } from './DataSeries'
2
- import { DataFormatterBase, DataFormatterBasePartial, VisibleFilter, DataFormatterContainer } from './DataFormatter'
3
-
4
- export interface DataFormatterSeries extends DataFormatterBase<'series'> {
5
- visibleFilter: VisibleFilter<'series'>
6
- sort: ((a: DataSeriesDatum | DataSeriesValue, b: DataSeriesDatum | number) => number) | null
7
- seriesLabels: string[]
8
- container: DataFormatterContainer
9
- separateSeries: boolean
10
- sumSeries: boolean
11
- }
12
-
13
- export interface DataFormatterSeriesPartial extends DataFormatterBasePartial<'series'> {
14
- visibleFilter?: VisibleFilter<'series'>
15
- sort?: ((a: DataSeriesDatum | DataSeriesValue, b: DataSeriesDatum | number) => number) | null
16
- seriesLabels?: string[]
17
- container?: Partial<DataFormatterContainer>
18
- separateSeries?: boolean
19
- sumSeries?: boolean
20
- }
1
+ import type { ComputedDatumSeries } from './ComputedDataSeries'
2
+ import type { DataFormatterBase, DataFormatterBasePartial, VisibleFilter, DataFormatterContainer } from './DataFormatter'
3
+
4
+ export interface DataFormatterSeries extends DataFormatterBase<'series'> {
5
+ visibleFilter: VisibleFilter<'series'>
6
+ sort: ((a: ComputedDatumSeries, b: ComputedDatumSeries) => number) | null
7
+ seriesLabels: string[]
8
+ container: DataFormatterContainer
9
+ separateSeries: boolean
10
+ sumSeries: boolean
11
+ }
12
+
13
+ export interface DataFormatterSeriesPartial extends DataFormatterBasePartial<'series'> {
14
+ visibleFilter?: VisibleFilter<'series'>
15
+ sort?: ((a: ComputedDatumSeries, b: ComputedDatumSeries) => number) | null
16
+ seriesLabels?: string[]
17
+ container?: Partial<DataFormatterContainer>
18
+ separateSeries?: boolean
19
+ sumSeries?: boolean
20
+ }