@orbcharts/core 3.0.0-alpha.61 → 3.0.0-alpha.62

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.
Files changed (215) hide show
  1. package/LICENSE +200 -200
  2. package/dist/lib/core-types.d.ts +1 -0
  3. package/dist/orbcharts-core.es.js +3054 -2609
  4. package/dist/orbcharts-core.umd.js +6 -2
  5. package/dist/src/AbstractChart.d.ts +5 -3
  6. package/dist/src/GridChart.d.ts +1 -1
  7. package/dist/src/MultiGridChart.d.ts +1 -1
  8. package/dist/src/MultiValueChart.d.ts +1 -1
  9. package/dist/src/RelationshipChart.d.ts +1 -1
  10. package/dist/src/SeriesChart.d.ts +1 -1
  11. package/dist/src/TreeChart.d.ts +1 -1
  12. package/dist/src/base/createBaseChart.d.ts +1 -1
  13. package/dist/src/base/createBasePlugin.d.ts +1 -1
  14. package/dist/src/base/validators/chartOptionsValidator.d.ts +3 -0
  15. package/dist/src/base/validators/chartParamsValidator.d.ts +3 -0
  16. package/dist/src/base/validators/elementValidator.d.ts +3 -0
  17. package/dist/src/base/validators/pluginsValidator.d.ts +3 -0
  18. package/dist/src/defaults.d.ts +1 -16
  19. package/dist/src/defineGridPlugin.d.ts +1 -1
  20. package/dist/src/defineMultiGridPlugin.d.ts +1 -1
  21. package/dist/src/defineMultiValuePlugin.d.ts +1 -1
  22. package/dist/src/defineNoneDataPlugin.d.ts +1 -1
  23. package/dist/src/defineRelationshipPlugin.d.ts +1 -1
  24. package/dist/src/defineSeriesPlugin.d.ts +1 -1
  25. package/dist/src/defineTreePlugin.d.ts +1 -1
  26. package/dist/src/grid/computedDataFn.d.ts +4 -0
  27. package/dist/src/grid/contextObserverCallback.d.ts +3 -0
  28. package/dist/src/grid/dataFormatterValidator.d.ts +3 -0
  29. package/dist/src/grid/dataValidator.d.ts +3 -0
  30. package/dist/src/index.d.ts +1 -1
  31. package/dist/src/multiGrid/computedDataFn.d.ts +3 -0
  32. package/dist/src/multiGrid/contextObserverCallback.d.ts +3 -0
  33. package/dist/src/multiGrid/dataFormatterValidator.d.ts +3 -0
  34. package/dist/src/multiGrid/dataValidator.d.ts +3 -0
  35. package/dist/src/multiValue/computedDataFn.d.ts +3 -0
  36. package/dist/src/multiValue/contextObserverCallback.d.ts +3 -0
  37. package/dist/src/multiValue/dataFormatterValidator.d.ts +3 -0
  38. package/dist/src/multiValue/dataValidator.d.ts +3 -0
  39. package/dist/src/relationship/computedDataFn.d.ts +3 -0
  40. package/dist/src/relationship/contextObserverCallback.d.ts +3 -0
  41. package/dist/src/relationship/dataFormatterValidator.d.ts +3 -0
  42. package/dist/src/relationship/dataValidator.d.ts +3 -0
  43. package/dist/src/series/computedDataFn.d.ts +3 -0
  44. package/dist/src/series/contextObserverCallback.d.ts +3 -0
  45. package/dist/src/series/dataFormatterValidator.d.ts +3 -0
  46. package/dist/src/series/dataValidator.d.ts +3 -0
  47. package/dist/src/tree/computedDataFn.d.ts +3 -0
  48. package/dist/src/tree/contextObserverCallback.d.ts +3 -0
  49. package/dist/src/tree/dataFormatterValidator.d.ts +3 -0
  50. package/dist/src/tree/dataValidator.d.ts +3 -0
  51. package/dist/src/utils/commonUtils.d.ts +1 -0
  52. package/dist/src/utils/errorMessage.d.ts +14 -0
  53. package/dist/src/{grid → utils}/gridObservables.d.ts +2 -2
  54. package/dist/src/utils/index.d.ts +7 -3
  55. package/dist/src/{multiGrid → utils}/multiGridObservables.d.ts +1 -1
  56. package/dist/src/utils/observables.d.ts +2 -1
  57. package/dist/src/utils/orbchartsUtils.d.ts +1 -12
  58. package/dist/src/{series → utils}/seriesObservables.d.ts +3 -3
  59. package/dist/src/{tree → utils}/treeObservables.d.ts +1 -1
  60. package/dist/src/utils/validator.d.ts +3 -0
  61. package/lib/core-types.ts +7 -0
  62. package/package.json +42 -41
  63. package/src/AbstractChart.ts +57 -48
  64. package/src/GridChart.ts +24 -20
  65. package/src/MultiGridChart.ts +24 -20
  66. package/src/MultiValueChart.ts +24 -20
  67. package/src/RelationshipChart.ts +24 -20
  68. package/src/SeriesChart.ts +24 -20
  69. package/src/TreeChart.ts +24 -20
  70. package/src/base/createBaseChart.ts +500 -388
  71. package/src/base/createBasePlugin.ts +152 -95
  72. package/src/base/validators/chartOptionsValidator.ts +24 -0
  73. package/src/base/validators/chartParamsValidator.ts +134 -0
  74. package/src/base/validators/elementValidator.ts +14 -0
  75. package/src/base/validators/pluginsValidator.ts +15 -0
  76. package/src/defaults.ts +232 -228
  77. package/src/defineGridPlugin.ts +3 -3
  78. package/src/defineMultiGridPlugin.ts +3 -3
  79. package/src/defineMultiValuePlugin.ts +3 -3
  80. package/src/defineNoneDataPlugin.ts +4 -4
  81. package/src/defineRelationshipPlugin.ts +3 -3
  82. package/src/defineSeriesPlugin.ts +3 -3
  83. package/src/defineTreePlugin.ts +3 -3
  84. package/src/grid/{computeGridData.ts → computedDataFn.ts} +129 -134
  85. package/src/grid/{createGridContextObserver.ts → contextObserverCallback.ts} +155 -155
  86. package/src/grid/dataFormatterValidator.ts +9 -0
  87. package/src/grid/dataValidator.ts +9 -0
  88. package/src/index.ts +20 -21
  89. package/src/multiGrid/{computeMultiGridData.ts → computedDataFn.ts} +123 -130
  90. package/src/multiGrid/{createMultiGridContextObserver.ts → contextObserverCallback.ts} +41 -41
  91. package/src/multiGrid/dataFormatterValidator.ts +9 -0
  92. package/src/multiGrid/dataValidator.ts +9 -0
  93. package/src/multiValue/{computeMultiValueData.ts → computedDataFn.ts} +176 -179
  94. package/src/multiValue/{createMultiValueContextObserver.ts → contextObserverCallback.ts} +12 -12
  95. package/src/multiValue/dataFormatterValidator.ts +9 -0
  96. package/src/multiValue/dataValidator.ts +9 -0
  97. package/src/relationship/{computeRelationshipData.ts → computedDataFn.ts} +125 -118
  98. package/src/relationship/{createRelationshipContextObserver.ts → contextObserverCallback.ts} +12 -12
  99. package/src/relationship/dataFormatterValidator.ts +9 -0
  100. package/src/relationship/dataValidator.ts +9 -0
  101. package/src/series/{computeSeriesData.ts → computedDataFn.ts} +88 -90
  102. package/src/series/{createSeriesContextObserver.ts → contextObserverCallback.ts} +100 -93
  103. package/src/series/dataFormatterValidator.ts +9 -0
  104. package/src/series/dataValidator.ts +9 -0
  105. package/src/tree/{computeTreeData.ts → computedDataFn.ts} +130 -132
  106. package/src/tree/{createTreeContextObserver.ts → contextObserverCallback.ts} +61 -61
  107. package/src/tree/dataFormatterValidator.ts +9 -0
  108. package/src/tree/dataValidator.ts +9 -0
  109. package/src/utils/commonUtils.ts +54 -50
  110. package/src/utils/d3Utils.ts +108 -108
  111. package/src/utils/errorMessage.ts +43 -0
  112. package/src/{grid → utils}/gridObservables.ts +611 -614
  113. package/src/utils/index.ts +10 -4
  114. package/src/{multiGrid → utils}/multiGridObservables.ts +366 -365
  115. package/src/utils/observables.ts +218 -202
  116. package/src/utils/orbchartsUtils.ts +352 -349
  117. package/src/{series → utils}/seriesObservables.ts +175 -175
  118. package/src/{tree → utils}/treeObservables.ts +94 -94
  119. package/src/utils/validator.ts +126 -0
  120. package/tsconfig.base.json +13 -13
  121. package/tsconfig.json +2 -2
  122. package/vite-env.d.ts +7 -0
  123. package/vite.config.js +22 -22
  124. package/dist/src/grid/computeGridData.d.ts +0 -6
  125. package/dist/src/grid/createGridContextObserver.d.ts +0 -3
  126. package/dist/src/multiGrid/computeMultiGridData.d.ts +0 -3
  127. package/dist/src/multiGrid/createMultiGridContextObserver.d.ts +0 -3
  128. package/dist/src/multiValue/computeMultiValueData.d.ts +0 -3
  129. package/dist/src/multiValue/createMultiValueContextObserver.d.ts +0 -3
  130. package/dist/src/relationship/computeRelationshipData.d.ts +0 -3
  131. package/dist/src/relationship/createRelationshipContextObserver.d.ts +0 -3
  132. package/dist/src/series/computeSeriesData.d.ts +0 -3
  133. package/dist/src/series/createSeriesContextObserver.d.ts +0 -3
  134. package/dist/src/tree/computeTreeData.d.ts +0 -3
  135. package/dist/src/tree/createTreeContextObserver.d.ts +0 -3
  136. package/dist/src/types/Axis.d.ts +0 -1
  137. package/dist/src/types/Chart.d.ts +0 -45
  138. package/dist/src/types/ChartParams.d.ts +0 -36
  139. package/dist/src/types/ComputedData.d.ts +0 -42
  140. package/dist/src/types/ComputedDataGrid.d.ts +0 -5
  141. package/dist/src/types/ComputedDataMultiGrid.d.ts +0 -3
  142. package/dist/src/types/ComputedDataMultiValue.d.ts +0 -6
  143. package/dist/src/types/ComputedDataRelationship.d.ts +0 -18
  144. package/dist/src/types/ComputedDataSeries.d.ts +0 -5
  145. package/dist/src/types/ComputedDataTree.d.ts +0 -7
  146. package/dist/src/types/ContextObserver.d.ts +0 -28
  147. package/dist/src/types/ContextObserverGrid.d.ts +0 -41
  148. package/dist/src/types/ContextObserverMultiGrid.d.ts +0 -15
  149. package/dist/src/types/ContextObserverMultiValue.d.ts +0 -4
  150. package/dist/src/types/ContextObserverRelationship.d.ts +0 -4
  151. package/dist/src/types/ContextObserverSeries.d.ts +0 -27
  152. package/dist/src/types/ContextObserverTree.d.ts +0 -11
  153. package/dist/src/types/ContextSubject.d.ts +0 -15
  154. package/dist/src/types/Data.d.ts +0 -19
  155. package/dist/src/types/DataFormatter.d.ts +0 -41
  156. package/dist/src/types/DataFormatterGrid.d.ts +0 -34
  157. package/dist/src/types/DataFormatterMultiGrid.d.ts +0 -20
  158. package/dist/src/types/DataFormatterMultiValue.d.ts +0 -18
  159. package/dist/src/types/DataFormatterRelationship.d.ts +0 -10
  160. package/dist/src/types/DataFormatterSeries.d.ts +0 -19
  161. package/dist/src/types/DataFormatterTree.d.ts +0 -7
  162. package/dist/src/types/DataGrid.d.ts +0 -6
  163. package/dist/src/types/DataMultiGrid.d.ts +0 -6
  164. package/dist/src/types/DataMultiValue.d.ts +0 -7
  165. package/dist/src/types/DataRelationship.d.ts +0 -21
  166. package/dist/src/types/DataSeries.d.ts +0 -6
  167. package/dist/src/types/DataTree.d.ts +0 -15
  168. package/dist/src/types/Event.d.ts +0 -56
  169. package/dist/src/types/Layout.d.ts +0 -8
  170. package/dist/src/types/Padding.d.ts +0 -6
  171. package/dist/src/types/Plugin.d.ts +0 -37
  172. package/dist/src/types/TransformData.d.ts +0 -8
  173. package/dist/src/types/index.d.ts +0 -37
  174. package/src/types/Axis.ts +0 -1
  175. package/src/types/Chart.ts +0 -54
  176. package/src/types/ChartParams.ts +0 -51
  177. package/src/types/ComputedData.ts +0 -84
  178. package/src/types/ComputedDataGrid.ts +0 -14
  179. package/src/types/ComputedDataMultiGrid.ts +0 -3
  180. package/src/types/ComputedDataMultiValue.ts +0 -9
  181. package/src/types/ComputedDataRelationship.ts +0 -20
  182. package/src/types/ComputedDataSeries.ts +0 -8
  183. package/src/types/ComputedDataTree.ts +0 -20
  184. package/src/types/ContextObserver.ts +0 -38
  185. package/src/types/ContextObserverGrid.ts +0 -43
  186. package/src/types/ContextObserverMultiGrid.ts +0 -17
  187. package/src/types/ContextObserverMultiValue.ts +0 -5
  188. package/src/types/ContextObserverRelationship.ts +0 -5
  189. package/src/types/ContextObserverSeries.ts +0 -29
  190. package/src/types/ContextObserverTree.ts +0 -11
  191. package/src/types/ContextSubject.ts +0 -18
  192. package/src/types/Data.ts +0 -45
  193. package/src/types/DataFormatter.ts +0 -74
  194. package/src/types/DataFormatterGrid.ts +0 -68
  195. package/src/types/DataFormatterMultiGrid.ts +0 -45
  196. package/src/types/DataFormatterMultiValue.ts +0 -24
  197. package/src/types/DataFormatterRelationship.ts +0 -26
  198. package/src/types/DataFormatterSeries.ts +0 -20
  199. package/src/types/DataFormatterTree.ts +0 -12
  200. package/src/types/DataGrid.ts +0 -11
  201. package/src/types/DataMultiGrid.ts +0 -7
  202. package/src/types/DataMultiValue.ts +0 -12
  203. package/src/types/DataRelationship.ts +0 -28
  204. package/src/types/DataSeries.ts +0 -11
  205. package/src/types/DataTree.ts +0 -20
  206. package/src/types/Event.ts +0 -153
  207. package/src/types/Layout.ts +0 -12
  208. package/src/types/Padding.ts +0 -6
  209. package/src/types/Plugin.ts +0 -60
  210. package/src/types/TransformData.ts +0 -8
  211. package/src/types/index.ts +0 -37
  212. /package/dist/src/{multiValue → utils}/multiValueObservables.d.ts +0 -0
  213. /package/dist/src/{relationship → utils}/relationshipObservables.d.ts +0 -0
  214. /package/src/{multiValue → utils}/multiValueObservables.ts +0 -0
  215. /package/src/{relationship → utils}/relationshipObservables.ts +0 -0
@@ -1,14 +1,14 @@
1
- {
2
- "compilerOptions": {
3
- "outDir": "./dist/",
4
- "sourceMap": true,
5
- "noImplicitAny": true,
6
- "module": "es6",
7
- "target": "es5",
8
- "jsx": "react",
9
- "allowJs": true,
10
- "moduleResolution": "node",
11
- "allowSyntheticDefaultImports" : true,
12
- "esModuleInterop" : true
13
- }
1
+ {
2
+ "compilerOptions": {
3
+ "outDir": "./dist/",
4
+ "sourceMap": true,
5
+ "noImplicitAny": true,
6
+ "module": "esnext",
7
+ "target": "es5",
8
+ "jsx": "react",
9
+ "allowJs": true,
10
+ "moduleResolution": "node",
11
+ "allowSyntheticDefaultImports" : true,
12
+ "esModuleInterop" : true
13
+ }
14
14
  }
package/tsconfig.json CHANGED
@@ -1,3 +1,3 @@
1
- {
2
- "extends": "./tsconfig.base.json"
1
+ {
2
+ "extends": "./tsconfig.base.json"
3
3
  }
package/vite-env.d.ts ADDED
@@ -0,0 +1,7 @@
1
+ interface ImportMetaEnv {
2
+ readonly MODE: 'development' | 'production'
3
+ }
4
+
5
+ interface ImportMeta {
6
+ readonly env: ImportMetaEnv;
7
+ }
package/vite.config.js CHANGED
@@ -1,23 +1,23 @@
1
- import { defineConfig } from 'vite'
2
- import dts from 'vite-plugin-dts'
3
-
4
- export default defineConfig(({ command, mode }) => {
5
- return {
6
- plugins: [
7
- dts({
8
- insertTypesEntry: true
9
- })
10
- ],
11
- compilerOptions: {
12
- composite: true
13
- },
14
- build: {
15
- lib: {
16
- entry: "src/index.ts",
17
- name: 'orbcharts-core',
18
- formats: ["es", "umd"],
19
- fileName: format => `orbcharts-core.${format}.js`
20
- },
21
- }
22
- }
1
+ import { defineConfig } from 'vite'
2
+ import dts from 'vite-plugin-dts'
3
+
4
+ export default defineConfig(({ command, mode }) => {
5
+ return {
6
+ plugins: [
7
+ dts({
8
+ insertTypesEntry: true
9
+ })
10
+ ],
11
+ compilerOptions: {
12
+ composite: true
13
+ },
14
+ build: {
15
+ lib: {
16
+ entry: "src/index.ts",
17
+ name: 'orbcharts-core',
18
+ formats: ["es", "umd"],
19
+ fileName: format => `orbcharts-core.${format}.js`
20
+ },
21
+ }
22
+ }
23
23
  })
@@ -1,6 +0,0 @@
1
- import { ComputedDataFn } from '../types/ComputedData';
2
- import { DataGrid, DataGridDatum } from '../types/DataGrid';
3
- import { DataFormatterGridGrid } from '../types/DataFormatterGrid';
4
-
5
- export declare function createTransposedDataGrid(data: DataGrid, dataFormatterGrid: DataFormatterGridGrid): DataGridDatum[][];
6
- export declare const computeGridData: ComputedDataFn<'grid'>;
@@ -1,3 +0,0 @@
1
- import { ContextObserverFn } from '../types';
2
-
3
- export declare const createGridContextObserver: ContextObserverFn<'grid'>;
@@ -1,3 +0,0 @@
1
- import { ComputedDataFn } from '../types/ComputedData';
2
-
3
- export declare const computeMultiGridData: ComputedDataFn<'multiGrid'>;
@@ -1,3 +0,0 @@
1
- import { ContextObserverFn } from '../types';
2
-
3
- export declare const createMultiGridContextObserver: ContextObserverFn<'multiGrid'>;
@@ -1,3 +0,0 @@
1
- import { ComputedDataFn } from '../types/ComputedData';
2
-
3
- export declare const computeMultiValueData: ComputedDataFn<'multiValue'>;
@@ -1,3 +0,0 @@
1
- import { ContextObserverFn } from '../types';
2
-
3
- export declare const createMultiValueContextObserver: ContextObserverFn<'multiValue'>;
@@ -1,3 +0,0 @@
1
- import { ComputedDataFn } from '../types/ComputedData';
2
-
3
- export declare const computeRelationshipData: ComputedDataFn<'relationship'>;
@@ -1,3 +0,0 @@
1
- import { ContextObserverFn } from '../types';
2
-
3
- export declare const createRelationshipContextObserver: ContextObserverFn<'relationship'>;
@@ -1,3 +0,0 @@
1
- import { ComputedDataFn } from '../types/ComputedData';
2
-
3
- export declare const computeSeriesData: ComputedDataFn<'series'>;
@@ -1,3 +0,0 @@
1
- import { ContextObserverFn } from '../types';
2
-
3
- export declare const createSeriesContextObserver: ContextObserverFn<'series'>;
@@ -1,3 +0,0 @@
1
- import { ComputedDataFn } from '../types/ComputedData';
2
-
3
- export declare const computeTreeData: ComputedDataFn<'tree'>;
@@ -1,3 +0,0 @@
1
- import { ContextObserverFn } from '../types';
2
-
3
- export declare const createTreeContextObserver: ContextObserverFn<'tree'>;
@@ -1 +0,0 @@
1
- export type AxisPosition = 'top' | 'bottom' | 'left' | 'right';
@@ -1,45 +0,0 @@
1
- import { ChartParams, ChartParamsPartial } from './ChartParams';
2
- import { ContextSubject } from './ContextSubject';
3
- import { ContextObserverFn } from './ContextObserver';
4
- import { ComputedDataFn } from './ComputedData';
5
- import { DataFormatterTypeMap, DataFormatterPartialTypeMap } from './DataFormatter';
6
-
7
- export type ChartType = 'series' | 'grid' | 'multiGrid' | 'multiValue' | 'tree' | 'relationship';
8
- export interface CreateBaseChart {
9
- <T extends ChartType>({ defaultDataFormatter, computedDataFn, contextObserverFn }: {
10
- defaultDataFormatter: DataFormatterTypeMap<T>;
11
- computedDataFn: ComputedDataFn<T>;
12
- contextObserverFn: ContextObserverFn<T>;
13
- }): CreateChart<T>;
14
- }
15
- export interface CreateChart<T extends ChartType> {
16
- (element: HTMLElement | Element, options?: ChartOptionsPartial<T>): ChartEntity<T>;
17
- }
18
- export interface ChartEntity<T extends ChartType> extends ContextSubject<T> {
19
- selection: d3.Selection<SVGGElement, unknown, HTMLElement, unknown>;
20
- destroy: () => void;
21
- }
22
- export interface ChartOptions<T extends ChartType> {
23
- preset: Preset<T, unknown>;
24
- width: number | 'auto';
25
- height: number | 'auto';
26
- }
27
- export interface ChartOptionsPartial<T extends ChartType> {
28
- preset?: Preset<T, unknown>;
29
- width?: number | 'auto';
30
- height?: number | 'auto';
31
- }
32
- export interface Preset<T extends ChartType, AllPluginParams> {
33
- name: string;
34
- description: string;
35
- chartParams: ChartParams;
36
- dataFormatter: DataFormatterTypeMap<T>;
37
- allPluginParams: AllPluginParams;
38
- }
39
- export interface PresetPartial<T extends ChartType, AllPluginParams> {
40
- name?: string;
41
- description?: string;
42
- chartParams?: ChartParamsPartial;
43
- dataFormatter?: DataFormatterPartialTypeMap<T>;
44
- allPluginParams?: AllPluginParams;
45
- }
@@ -1,36 +0,0 @@
1
- import { Padding } from './Padding';
2
-
3
- export interface ChartParams {
4
- padding: Padding;
5
- highlightTarget: HighlightTarget;
6
- highlightDefault: string | null;
7
- colorScheme: 'dark' | 'light';
8
- colors: {
9
- light: ColorScheme;
10
- dark: ColorScheme;
11
- };
12
- styles: Styles;
13
- transitionDuration: number;
14
- transitionEase: string;
15
- }
16
- export type ChartParamsPartial = Partial<ChartParams | {
17
- padding: Partial<Padding>;
18
- colors: Partial<{
19
- light: Partial<ColorScheme>;
20
- dark: Partial<ColorScheme>;
21
- }>;
22
- styles: Partial<Styles>;
23
- }>;
24
- export type HighlightTarget = 'series' | 'group' | 'category' | 'datum' | 'none';
25
- export interface Styles {
26
- textSize: string | number;
27
- unhighlightedOpacity: number;
28
- }
29
- export interface ColorScheme {
30
- series: string[];
31
- primary: string;
32
- secondary: string;
33
- white: string;
34
- background: string;
35
- }
36
- export type ColorType = 'none' | keyof ColorScheme;
@@ -1,42 +0,0 @@
1
- import { ChartType } from './Chart';
2
- import { ComputedDataSeries, ComputedDatumSeries } from './ComputedDataSeries';
3
- import { ComputedDataGrid, ComputedDatumGrid } from './ComputedDataGrid';
4
- import { ComputedDataMultiGrid } from './ComputedDataMultiGrid';
5
- import { ComputedDataMultiValue, ComputedDatumMultiValue } from './ComputedDataMultiValue';
6
- import { ComputedDataRelationship, ComputedNode } from './ComputedDataRelationship';
7
- import { ComputedDataTree } from './ComputedDataTree';
8
- import { DataFormatterContext } from './DataFormatter';
9
-
10
- export interface ComputedDataFn<T extends ChartType> {
11
- (dataFormatterContext: DataFormatterContext<T>): ComputedDataTypeMap<T>;
12
- }
13
- export interface ComputedDatumBase {
14
- id: string;
15
- index: number;
16
- label: string;
17
- value: number | null;
18
- visible: boolean;
19
- description: string;
20
- data: any;
21
- }
22
- export interface ComputedDatumSeriesValue {
23
- color: string;
24
- seriesIndex: number;
25
- seriesLabel: string;
26
- seq: number;
27
- }
28
- export interface ComputedDatumGridValue {
29
- gridIndex: number;
30
- color: string;
31
- seriesIndex: number;
32
- seriesLabel: string;
33
- groupIndex: number;
34
- groupLabel: string;
35
- }
36
- export interface ComputedDatumCategoryValue {
37
- color: string;
38
- categoryIndex: number;
39
- categoryLabel: string | null;
40
- }
41
- export type ComputedDataTypeMap<T extends ChartType> = T extends 'series' ? ComputedDataSeries : T extends 'grid' ? ComputedDataGrid : T extends 'multiGrid' ? ComputedDataMultiGrid : T extends 'multiValue' ? ComputedDataMultiValue : T extends 'relationship' ? ComputedDataRelationship : T extends 'tree' ? ComputedDataTree : ComputedDatumBase;
42
- export type ComputedDatumTypeMap<T extends ChartType> = T extends 'series' ? ComputedDatumSeries : T extends 'grid' ? ComputedDatumGrid : T extends 'multiGrid' ? ComputedDatumGrid : T extends 'multiValue' ? ComputedDatumMultiValue : T extends 'relationship' ? ComputedNode : T extends 'tree' ? ComputedDataTree : unknown;
@@ -1,5 +0,0 @@
1
- import { ComputedDatumBase, ComputedDatumGridValue } from './ComputedData';
2
-
3
- export interface ComputedDatumGrid extends ComputedDatumBase, ComputedDatumGridValue {
4
- }
5
- export type ComputedDataGrid = ComputedDatumGrid[][];
@@ -1,3 +0,0 @@
1
- import { ComputedDataGrid } from './ComputedDataGrid';
2
-
3
- export type ComputedDataMultiGrid = ComputedDataGrid[];
@@ -1,6 +0,0 @@
1
- import { ComputedDatumBase, ComputedDatumCategoryValue } from './ComputedData';
2
-
3
- export type ComputedDataMultiValue = ComputedDatumMultiValue[][];
4
- export interface ComputedDatumMultiValue extends ComputedDatumBase, ComputedDatumCategoryValue {
5
- axis: number;
6
- }
@@ -1,18 +0,0 @@
1
- import { ComputedDatumBase, ComputedDatumCategoryValue } from './ComputedData';
2
-
3
- export type ComputedDataRelationship = {
4
- nodes: ComputedNode[];
5
- edges: ComputedEdge[];
6
- };
7
- export interface ComputedNode extends ComputedDatumBase, ComputedDatumCategoryValue {
8
- startNodes: ComputedNode[];
9
- startNodeIds: string[];
10
- endNodes: ComputedNode[];
11
- endNodeIds: string[];
12
- }
13
- export interface ComputedEdge extends ComputedDatumBase {
14
- startNode: ComputedNode;
15
- startNodeId: string;
16
- endNode: ComputedNode;
17
- endNodeId: string;
18
- }
@@ -1,5 +0,0 @@
1
- import { ComputedDatumBase, ComputedDatumSeriesValue } from './ComputedData';
2
-
3
- export interface ComputedDatumSeries extends ComputedDatumBase, ComputedDatumSeriesValue {
4
- }
5
- export type ComputedDataSeries = ComputedDatumSeries[][];
@@ -1,7 +0,0 @@
1
- import { ComputedDatumBase, ComputedDatumCategoryValue } from './ComputedData';
2
-
3
- export interface ComputedDataTree extends ComputedDatumBase, ComputedDatumCategoryValue {
4
- level: number;
5
- seq: number;
6
- children?: ComputedDataTree[];
7
- }
@@ -1,28 +0,0 @@
1
- import { Observable } from 'rxjs';
2
- import { ChartType } from './Chart';
3
- import { ChartParams } from './ChartParams';
4
- import { DataFormatterTypeMap } from './DataFormatter';
5
- import { ComputedDataTypeMap } from './ComputedData';
6
- import { Layout } from './Layout';
7
- import { ContextObserverGrid } from './ContextObserverGrid';
8
- import { ContextObserverMultiGrid } from './ContextObserverMultiGrid';
9
- import { ContextObserverMultiValue } from './ContextObserverMultiValue';
10
- import { ContextObserverRelationship } from './ContextObserverRelationship';
11
- import { ContextObserverSeries } from './ContextObserverSeries';
12
- import { ContextObserverTree } from './ContextObserverTree';
13
- import { ContextSubject } from './ContextSubject';
14
-
15
- export interface ContextObserverFn<T extends ChartType> {
16
- ({ subject, observer }: {
17
- subject: ContextSubject<T>;
18
- observer: ContextObserverBase<T, unknown>;
19
- }): ContextObserverTypeMap<T, unknown>;
20
- }
21
- export type ContextObserverTypeMap<T extends ChartType, PluginParams> = T extends 'series' ? ContextObserverSeries<PluginParams> : T extends 'grid' ? ContextObserverGrid<PluginParams> : T extends 'multiGrid' ? ContextObserverMultiGrid<PluginParams> : T extends 'multiValue' ? ContextObserverMultiValue<PluginParams> : T extends 'relationship' ? ContextObserverRelationship<PluginParams> : T extends 'tree' ? ContextObserverTree<PluginParams> : ContextObserverBase<ChartType, PluginParams>;
22
- export interface ContextObserverBase<T extends ChartType, PluginParams> {
23
- fullParams$: Observable<PluginParams>;
24
- fullChartParams$: Observable<ChartParams>;
25
- fullDataFormatter$: Observable<DataFormatterTypeMap<T>>;
26
- computedData$: Observable<ComputedDataTypeMap<T>>;
27
- layout$: Observable<Layout>;
28
- }
@@ -1,41 +0,0 @@
1
- import { Observable } from 'rxjs';
2
- import { ContextObserverBase } from './ContextObserver';
3
- import { ComputedDataGrid, ComputedDatumGrid } from './ComputedDataGrid';
4
- import { TransformData } from './TransformData';
5
-
6
- export interface ContextObserverGrid<PluginParams> extends ContextObserverBase<'grid', PluginParams>, ContextObserverGridDetail {
7
- textSizePx$: Observable<number>;
8
- }
9
- export interface ContextObserverGridDetail {
10
- isSeriesSeprate$: Observable<boolean>;
11
- gridContainerPosition$: Observable<GridContainerPosition[]>;
12
- gridAxesTransform$: Observable<TransformData>;
13
- gridAxesReverseTransform$: Observable<TransformData>;
14
- gridGraphicTransform$: Observable<TransformData>;
15
- gridGraphicReverseScale$: Observable<[number, number][]>;
16
- gridAxesSize$: Observable<{
17
- width: number;
18
- height: number;
19
- }>;
20
- gridHighlight$: Observable<ComputedDatumGrid[]>;
21
- seriesLabels$: Observable<string[]>;
22
- SeriesDataMap$: Observable<Map<string, ComputedDatumGrid[]>>;
23
- GroupDataMap$: Observable<Map<string, ComputedDatumGrid[]>>;
24
- computedLayoutData$: Observable<ComputedLayoutDataGrid>;
25
- visibleComputedData$: Observable<ComputedDataGrid>;
26
- visibleComputedLayoutData$: Observable<ComputedLayoutDataGrid>;
27
- computedStackedData$: Observable<ComputedDataGrid>;
28
- }
29
- export type ComputedLayoutDataGrid = ComputedLayoutDatumGrid[][];
30
- export interface ComputedLayoutDatumGrid extends ComputedDatumGrid {
31
- axisX: number;
32
- axisY: number;
33
- axisYFromZero: number;
34
- }
35
- export interface GridContainerPosition {
36
- slotIndex: number;
37
- rowIndex: number;
38
- columnIndex: number;
39
- translate: [number, number];
40
- scale: [number, number];
41
- }
@@ -1,15 +0,0 @@
1
- import { Observable } from 'rxjs';
2
- import { ContextObserverBase } from './ContextObserver';
3
- import { ComputedDataGrid } from './ComputedDataGrid';
4
- import { DataFormatterGrid } from './DataFormatterGrid';
5
- import { GridContainerPosition, ContextObserverGridDetail } from './ContextObserverGrid';
6
-
7
- export interface ContextObserverMultiGrid<PluginParams> extends ContextObserverBase<'multiGrid', PluginParams> {
8
- textSizePx$: Observable<number>;
9
- multiGridContainerPosition$: Observable<GridContainerPosition[][]>;
10
- multiGridEachDetail$: Observable<ContextObserverMultiGridDetail[]>;
11
- }
12
- export interface ContextObserverMultiGridDetail extends ContextObserverGridDetail {
13
- computedData$: Observable<ComputedDataGrid>;
14
- dataFormatter$: Observable<DataFormatterGrid>;
15
- }
@@ -1,4 +0,0 @@
1
- import { ContextObserverBase } from './ContextObserver';
2
-
3
- export interface ContextObserverMultiValue<PluginParams> extends ContextObserverBase<'multiValue', PluginParams> {
4
- }
@@ -1,4 +0,0 @@
1
- import { ContextObserverBase } from './ContextObserver';
2
-
3
- export interface ContextObserverRelationship<PluginParams> extends ContextObserverBase<'relationship', PluginParams> {
4
- }
@@ -1,27 +0,0 @@
1
- import { Observable } from 'rxjs';
2
- import { ContextObserverBase } from './ContextObserver';
3
- import { ComputedDatumSeries } from './ComputedDataSeries';
4
-
5
- export interface ContextObserverSeries<PluginParams> extends ContextObserverBase<'series', PluginParams> {
6
- textSizePx$: Observable<number>;
7
- separateSeries$: Observable<boolean>;
8
- visibleComputedData$: Observable<ComputedDatumSeries[][]>;
9
- computedLayoutData$: Observable<ComputedDatumSeries[][]>;
10
- visibleComputedLayoutData$: Observable<ComputedDatumSeries[][]>;
11
- seriesHighlight$: Observable<ComputedDatumSeries[]>;
12
- seriesLabels$: Observable<string[]>;
13
- SeriesDataMap$: Observable<Map<string, ComputedDatumSeries[]>>;
14
- seriesContainerPosition$: Observable<SeriesContainerPosition[]>;
15
- SeriesContainerPositionMap$: Observable<Map<string, SeriesContainerPosition>>;
16
- }
17
- export interface SeriesContainerPosition {
18
- slotIndex: number;
19
- rowIndex: number;
20
- columnIndex: number;
21
- startX: number;
22
- startY: number;
23
- centerX: number;
24
- centerY: number;
25
- width: number;
26
- height: number;
27
- }
@@ -1,11 +0,0 @@
1
- import { Observable } from 'rxjs';
2
- import { ContextObserverBase } from './ContextObserver';
3
- import { ComputedDataTree } from './ComputedDataTree';
4
-
5
- export interface ContextObserverTree<PluginParams> extends ContextObserverBase<'tree', PluginParams> {
6
- textSizePx$: Observable<number>;
7
- treeHighlight$: Observable<ComputedDataTree[]>;
8
- existCategoryLabels$: Observable<string[]>;
9
- CategoryDataMap$: Observable<Map<string, ComputedDataTree[]>>;
10
- visibleComputedData$: Observable<ComputedDataTree>;
11
- }
@@ -1,15 +0,0 @@
1
- import { Subject } from 'rxjs';
2
- import { ChartType } from './Chart';
3
- import { EventTypeMap } from './Event';
4
- import { ChartParamsPartial } from './ChartParams';
5
- import { DataFormatterPartialTypeMap } from './DataFormatter';
6
- import { DataTypeMap } from './Data';
7
- import { PluginEntity } from './Plugin';
8
-
9
- export interface ContextSubject<T extends ChartType> {
10
- data$: Subject<DataTypeMap<T>>;
11
- dataFormatter$: Subject<DataFormatterPartialTypeMap<T>>;
12
- plugins$: Subject<PluginEntity<T, any, any>[]>;
13
- chartParams$: Subject<ChartParamsPartial>;
14
- event$: Subject<EventTypeMap<T>>;
15
- }
@@ -1,19 +0,0 @@
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
- export interface DatumBase {
10
- id?: string;
11
- label?: string;
12
- description?: string;
13
- data?: any;
14
- }
15
- export interface DatumValue {
16
- value: number | null;
17
- }
18
- export type DataTypeMap<T extends ChartType> = T extends 'series' ? DataSeries : T extends 'grid' ? DataGrid : T extends 'multiGrid' ? DataMultiGrid : T extends 'multiValue' ? DataMultiValue : T extends 'relationship' ? DataRelationship : T extends 'tree' ? DataTree : unknown;
19
- export type DatumTypeMap<T extends ChartType> = T extends 'series' ? DataSeriesDatum | DataSeriesValue : T extends 'grid' ? DataGridDatum | DataGridValue : T extends 'multiGrid' ? DataMultiGridDatum | DataMultiGridValue : T extends 'multiValue' ? DataMultiValueDatum | DataMultiValueValue : T extends 'relationship' ? Node | Edge : T extends 'tree' ? DataTreeDatum | DataTreeObj : unknown;
@@ -1,41 +0,0 @@
1
- import { ChartType } from './Chart';
2
- import { ChartParams } from './ChartParams';
3
- import { DataTypeMap } from './Data';
4
- import { ComputedDatumTypeMap } from './ComputedData';
5
- import { DataFormatterSeries, DataFormatterSeriesPartial } from './DataFormatterSeries';
6
- import { DataFormatterGrid, DataFormatterGridPartial } from './DataFormatterGrid';
7
- import { DataFormatterMultiGrid, DataFormatterMultiGridPartial } from './DataFormatterMultiGrid';
8
- import { DataFormatterMultiValue, DataFormatterMultiValuePartial } from './DataFormatterMultiValue';
9
- import { DataFormatterTree, DataFormatterTreePartial } from './DataFormatterTree';
10
- import { DataFormatterRelationship, DataFormatterRelationshipPartial } from './DataFormatterRelationship';
11
- import { AxisPosition } from './Axis';
12
-
13
- export interface DataFormatterContext<T extends ChartType> {
14
- data: DataTypeMap<T>;
15
- dataFormatter: DataFormatterTypeMap<T>;
16
- chartParams: ChartParams;
17
- }
18
- export type DataFormatterTypeMap<T extends ChartType> = T extends 'series' ? DataFormatterSeries : T extends 'grid' ? DataFormatterGrid : T extends 'multiGrid' ? DataFormatterMultiGrid : T extends 'multiValue' ? DataFormatterMultiValue : T extends 'relationship' ? DataFormatterRelationship : T extends 'tree' ? DataFormatterTree : DataFormatterBase<T>;
19
- export type DataFormatterPartialTypeMap<T extends ChartType> = T extends 'series' ? DataFormatterSeriesPartial : T extends 'grid' ? DataFormatterGridPartial : T extends 'multiGrid' ? DataFormatterMultiGridPartial : T extends 'multiValue' ? DataFormatterMultiValuePartial : T extends 'relationship' ? DataFormatterRelationshipPartial : T extends 'tree' ? DataFormatterTreePartial : DataFormatterBasePartial<T>;
20
- export interface DataFormatterBase<T extends ChartType> {
21
- type: T;
22
- }
23
- export type DataFormatterBasePartial<T extends ChartType> = Partial<DataFormatterBase<T>>;
24
- export interface DataFormatterValueAxis {
25
- position: AxisPosition;
26
- scaleDomain: [number | 'min' | 'auto', number | 'max' | 'auto'];
27
- scaleRange: [number, number];
28
- label: string;
29
- }
30
- export interface DataFormatterGroupAxis {
31
- position: AxisPosition;
32
- scaleDomain: [number, number | 'max'];
33
- scalePadding: number;
34
- label: string;
35
- }
36
- export type VisibleFilter<T extends ChartType> = (datum: ComputedDatumTypeMap<T>, context: DataFormatterContext<T>) => boolean | null;
37
- export interface DataFormatterContainer {
38
- gap: number;
39
- rowAmount: number;
40
- columnAmount: number;
41
- }
@@ -1,34 +0,0 @@
1
- import { DataFormatterBase, DataFormatterBasePartial, DataFormatterValueAxis, DataFormatterGroupAxis, VisibleFilter, DataFormatterContainer } from './DataFormatter';
2
-
3
- export type SeriesDirection = 'row' | 'column';
4
- export interface DataFormatterGrid extends DataFormatterBase<'grid'> {
5
- visibleFilter: VisibleFilter<'grid'>;
6
- grid: DataFormatterGridGrid;
7
- container: DataFormatterContainer;
8
- }
9
- export interface DataFormatterGridPartial extends DataFormatterBasePartial<'grid'> {
10
- visibleFilter?: VisibleFilter<'grid'>;
11
- grid?: DataFormatterGridGridPartial;
12
- container?: Partial<DataFormatterContainer>;
13
- }
14
- export interface DataFormatterGridGrid {
15
- seriesDirection: SeriesDirection;
16
- rowLabels: string[];
17
- columnLabels: string[];
18
- valueAxis: DataFormatterValueAxis;
19
- groupAxis: DataFormatterGroupAxis;
20
- separateSeries: boolean;
21
- }
22
- export interface DataFormatterGridGridPartial {
23
- seriesDirection?: SeriesDirection;
24
- rowLabels?: string[];
25
- columnLabels?: string[];
26
- valueAxis?: Partial<DataFormatterValueAxis>;
27
- groupAxis?: Partial<DataFormatterGroupAxis>;
28
- separateSeries?: boolean;
29
- }
30
- export interface DataFormatterGridContainer {
31
- gap: number;
32
- rowAmount: number;
33
- columnAmount: number;
34
- }
@@ -1,20 +0,0 @@
1
- import { VisibleFilter, DataFormatterContainer, DataFormatterBase, DataFormatterBasePartial } from './DataFormatter';
2
- import { DataFormatterGridGrid, DataFormatterGridGridPartial } from './DataFormatterGrid';
3
-
4
- export interface DataFormatterMultiGrid extends DataFormatterBase<'multiGrid'> {
5
- visibleFilter: VisibleFilter<'multiGrid'>;
6
- gridList: Array<DataFormatterGridGrid>;
7
- container: DataFormatterMultiGridContainer;
8
- separateGrid: boolean;
9
- }
10
- export interface DataFormatterMultiGridPartial extends DataFormatterBasePartial<'multiGrid'> {
11
- gridList?: Array<DataFormatterGridGridPartial>;
12
- container?: Partial<DataFormatterMultiGridContainer>;
13
- separateGrid?: boolean;
14
- }
15
- export interface DataFormatterMultiGridGrid extends DataFormatterGridGrid {
16
- }
17
- export interface DataFormatterMultiGridGridPartial extends DataFormatterGridGridPartial {
18
- }
19
- export interface DataFormatterMultiGridContainer extends DataFormatterContainer {
20
- }
@@ -1,18 +0,0 @@
1
- import { DataFormatterBase, DataFormatterBasePartial, DataFormatterValueAxis, VisibleFilter } from './DataFormatter';
2
-
3
- export interface DataFormatterMultiValue extends DataFormatterBase<'multiValue'> {
4
- visibleFilter: VisibleFilter<'multiValue'>;
5
- categoryLabels: string[];
6
- multiValue: Array<DataFormatterMultiValueMultiValue>;
7
- xAxis: DataFormatterValueAxis;
8
- yAxis: DataFormatterValueAxis;
9
- }
10
- export interface DataFormatterMultiValuePartial extends DataFormatterBasePartial<'multiValue'> {
11
- visibleFilter?: VisibleFilter<'multiValue'>;
12
- categoryLabels?: string[];
13
- multiValue?: Array<Partial<DataFormatterMultiValueMultiValue>>;
14
- xAxis?: Partial<DataFormatterValueAxis>;
15
- yAxis?: Partial<DataFormatterValueAxis>;
16
- }
17
- export interface DataFormatterMultiValueMultiValue {
18
- }