@orbcharts/core 3.0.0-alpha.43 → 3.0.0-alpha.45
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/LICENSE +200 -200
- package/dist/orbcharts-core.es.js +97 -97
- package/dist/orbcharts-core.umd.js +2 -2
- package/dist/src/series/seriesObservables.d.ts +3 -3
- package/dist/src/types/ContextObserverSeries.d.ts +1 -1
- package/dist/src/types/DataFormatterSeries.d.ts +3 -3
- package/package.json +41 -41
- package/src/AbstractChart.ts +48 -48
- package/src/GridChart.ts +20 -20
- package/src/MultiGridChart.ts +20 -20
- package/src/MultiValueChart.ts +20 -20
- package/src/RelationshipChart.ts +20 -20
- package/src/SeriesChart.ts +20 -20
- package/src/TreeChart.ts +20 -20
- package/src/base/createBaseChart.ts +368 -367
- package/src/base/createBasePlugin.ts +89 -89
- package/src/defaults.ts +220 -220
- package/src/defineGridPlugin.ts +3 -3
- package/src/defineMultiGridPlugin.ts +3 -3
- package/src/defineMultiValuePlugin.ts +3 -3
- package/src/defineNoneDataPlugin.ts +4 -4
- package/src/defineRelationshipPlugin.ts +3 -3
- package/src/defineSeriesPlugin.ts +3 -3
- package/src/defineTreePlugin.ts +3 -3
- package/src/grid/computeGridData.ts +134 -134
- package/src/grid/createGridContextObserver.ts +147 -147
- package/src/grid/gridObservables.ts +573 -573
- package/src/index.ts +21 -21
- package/src/multiGrid/computeMultiGridData.ts +130 -130
- package/src/multiGrid/createMultiGridContextObserver.ts +40 -40
- package/src/multiGrid/multiGridObservables.ts +350 -350
- package/src/multiValue/computeMultiValueData.ts +143 -143
- package/src/multiValue/createMultiValueContextObserver.ts +12 -12
- package/src/relationship/computeRelationshipData.ts +118 -118
- package/src/relationship/createRelationshipContextObserver.ts +12 -12
- package/src/series/computeSeriesData.ts +90 -90
- package/src/series/createSeriesContextObserver.ts +93 -93
- package/src/series/seriesObservables.ts +175 -175
- package/src/tree/computeTreeData.ts +131 -131
- package/src/tree/createTreeContextObserver.ts +61 -61
- package/src/tree/treeObservables.ts +94 -94
- package/src/types/Chart.ts +48 -48
- package/src/types/ChartParams.ts +51 -51
- package/src/types/ComputedData.ts +83 -83
- package/src/types/ComputedDataGrid.ts +13 -13
- package/src/types/ComputedDataMultiGrid.ts +2 -2
- package/src/types/ComputedDataMultiValue.ts +9 -9
- package/src/types/ComputedDataRelationship.ts +19 -19
- package/src/types/ComputedDataSeries.ts +7 -7
- package/src/types/ComputedDataTree.ts +19 -19
- package/src/types/ContextObserver.ts +38 -38
- package/src/types/ContextObserverGrid.ts +41 -41
- package/src/types/ContextObserverMultiGrid.ts +15 -15
- package/src/types/ContextObserverMultiValue.ts +4 -4
- package/src/types/ContextObserverRelationship.ts +4 -4
- package/src/types/ContextObserverSeries.ts +29 -29
- package/src/types/ContextObserverTree.ts +11 -11
- package/src/types/ContextSubject.ts +18 -18
- package/src/types/Data.ts +45 -45
- package/src/types/DataFormatter.ts +74 -74
- package/src/types/DataFormatterGrid.ts +67 -67
- package/src/types/DataFormatterMultiGrid.ts +44 -44
- package/src/types/DataFormatterMultiValue.ts +23 -23
- package/src/types/DataFormatterRelationship.ts +25 -25
- package/src/types/DataFormatterSeries.ts +20 -20
- package/src/types/DataFormatterTree.ts +12 -12
- package/src/types/DataGrid.ts +11 -11
- package/src/types/DataMultiGrid.ts +6 -6
- package/src/types/DataMultiValue.ts +12 -12
- package/src/types/DataRelationship.ts +27 -27
- package/src/types/DataSeries.ts +11 -11
- package/src/types/DataTree.ts +20 -20
- package/src/types/Event.ts +153 -153
- package/src/types/Layout.ts +11 -11
- package/src/types/Padding.ts +5 -5
- package/src/types/Plugin.ts +60 -60
- package/src/types/TransformData.ts +7 -7
- package/src/types/index.ts +37 -37
- package/src/utils/commonUtils.ts +50 -50
- package/src/utils/d3Utils.ts +89 -89
- package/src/utils/index.ts +4 -4
- package/src/utils/observables.ts +201 -201
- package/src/utils/orbchartsUtils.ts +349 -349
- package/tsconfig.json +13 -13
- 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 {
|
2
|
-
import { DataFormatterBase, DataFormatterBasePartial, VisibleFilter, DataFormatterContainer } from './DataFormatter'
|
3
|
-
|
4
|
-
export interface DataFormatterSeries extends DataFormatterBase<'series'> {
|
5
|
-
visibleFilter: VisibleFilter<'series'>
|
6
|
-
sort: ((a:
|
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:
|
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
|
+
}
|