@orbcharts/presets-basic 3.0.0-alpha.20 → 3.0.0-alpha.22

Sign up to get free protection for your applications and to get access to all the features.
Files changed (139) hide show
  1. package/LICENSE +200 -200
  2. package/dist/orbcharts-presets-basic.es.js +244 -213
  3. package/dist/orbcharts-presets-basic.umd.js +1 -1
  4. package/dist/src/gridDataFormatterFiles/DF_GRID_PN_SCALE.d.ts +3 -0
  5. package/dist/src/gridDataFormatterFiles/index.d.ts +1 -1
  6. package/dist/src/gridPluginParamsFiles/GroupAxis/PP_GROUP_AXIS_LOOSE_TICKS.d.ts +4 -0
  7. package/dist/src/gridPluginParamsFiles/GroupAxis/PP_GROUP_AXIS_TENSE_TICKS.d.ts +4 -0
  8. package/dist/src/gridPluginParamsFiles/GroupAxis/index.d.ts +2 -0
  9. package/dist/src/index.d.ts +3 -1
  10. package/package.json +43 -43
  11. package/src/chartParamsFiles/CP_BOTTOM_AND_LEFT_PADDING.ts +13 -13
  12. package/src/chartParamsFiles/CP_BOTTOM_AND_LEFT_PADDING_WITH_SERIES_HIGHLIGHT.ts +14 -14
  13. package/src/chartParamsFiles/CP_BOTTOM_LONG_PADDING.ts +13 -13
  14. package/src/chartParamsFiles/CP_BOTTOM_LONG_PADDING_WITH_SERIES_HIGHLIGHT.ts +14 -14
  15. package/src/chartParamsFiles/CP_BOTTOM_PADDING.ts +13 -13
  16. package/src/chartParamsFiles/CP_BOTTOM_PADDING_WITH_GROUP_HIGHLIGHT.ts +14 -14
  17. package/src/chartParamsFiles/CP_BOTTOM_PADDING_WITH_SERIES_HIGHLIGHT.ts +14 -14
  18. package/src/chartParamsFiles/CP_BOTTOM_SLIGHT_PADDING.ts +13 -13
  19. package/src/chartParamsFiles/CP_LEFT_PADDING.ts +13 -13
  20. package/src/chartParamsFiles/CP_LONG_PADDING.ts +13 -13
  21. package/src/chartParamsFiles/CP_RIGHT_PADDING.ts +13 -13
  22. package/src/chartParamsFiles/CP_TOP_AND_NO_BOTTOM_PADDING.ts +13 -13
  23. package/src/chartParamsFiles/index.ts +13 -13
  24. package/src/createPreset.ts +87 -87
  25. package/src/gridDataFormatterFiles/DF_GRID_2_SERIES_SLOT.ts +16 -16
  26. package/src/gridDataFormatterFiles/DF_GRID_3_SERIES_SLOT.ts +16 -16
  27. package/src/gridDataFormatterFiles/DF_GRID_4_SERIES_SLOT.ts +16 -16
  28. package/src/gridDataFormatterFiles/DF_GRID_BOTTOM_VALUE_AXIS.ts +22 -22
  29. package/src/gridDataFormatterFiles/DF_GRID_BOTTOM_VALUE_AXIS_AND_NONE_GROUP_SCALE_PADDING.ts +17 -17
  30. package/src/gridDataFormatterFiles/DF_GRID_NONE_GROUP_SCALE_PADDING.ts +13 -13
  31. package/src/gridDataFormatterFiles/{DF_GRID_DIVERGING_SCALE.ts → DF_GRID_PN_SCALE.ts} +14 -14
  32. package/src/gridDataFormatterFiles/DF_GRID_SEPARATE_SERIES.ts +16 -16
  33. package/src/gridDataFormatterFiles/DF_LINE_AREAS_2_SERIES_SLOT.ts +19 -19
  34. package/src/gridDataFormatterFiles/DF_LINE_AREAS_3_SERIES_SLOT.ts +19 -19
  35. package/src/gridDataFormatterFiles/DF_LINE_AREAS_4_SERIES_SLOT.ts +19 -19
  36. package/src/gridDataFormatterFiles/DF_LINE_AREAS_SEPARATE_SERIES.ts +19 -19
  37. package/src/gridDataFormatterFiles/index.ts +12 -12
  38. package/src/gridPluginParamsFiles/Bars/PP_BARS_ROUND.ts +14 -14
  39. package/src/gridPluginParamsFiles/Bars/PP_BARS_THIN.ts +14 -14
  40. package/src/gridPluginParamsFiles/Bars/index.ts +1 -1
  41. package/src/gridPluginParamsFiles/Dots/PP_DOTS_ONLY_SHOW_HIGHLIGHTED.ts +12 -12
  42. package/src/gridPluginParamsFiles/Dots/PP_DOTS_SOLID.ts +14 -14
  43. package/src/gridPluginParamsFiles/Dots/index.ts +1 -1
  44. package/src/gridPluginParamsFiles/GridLegend/PP_GRID_LEGEND_BOTTOM.ts +13 -13
  45. package/src/gridPluginParamsFiles/GridLegend/PP_GRID_LEGEND_BOTTOM_WITH_LINE_LIST.ts +14 -14
  46. package/src/gridPluginParamsFiles/GridLegend/PP_GRID_LEGEND_BOTTOM_WITH_ROUND_LIST.ts +14 -14
  47. package/src/gridPluginParamsFiles/GridLegend/index.ts +2 -2
  48. package/src/gridPluginParamsFiles/GroupAxis/PP_GROUP_AXIS_LOOSE_TICKS.ts +12 -0
  49. package/src/gridPluginParamsFiles/GroupAxis/PP_GROUP_AXIS_ROTATE_LABEL.ts +12 -12
  50. package/src/gridPluginParamsFiles/GroupAxis/PP_GROUP_AXIS_TENSE_TICKS.ts +14 -0
  51. package/src/gridPluginParamsFiles/GroupAxis/index.ts +3 -1
  52. package/src/gridPluginParamsFiles/LineAreas/PP_LINE_AREAS_CURVE.ts +11 -11
  53. package/src/gridPluginParamsFiles/Lines/PP_LINES_CURVE.ts +12 -12
  54. package/src/gridPluginParamsFiles/index.ts +6 -6
  55. package/src/index.ts +403 -382
  56. package/src/multiGridDataFormatterFiles/DF_MULTI_GRID_2_GRID_SLOT.ts +21 -21
  57. package/src/multiGridDataFormatterFiles/DF_MULTI_GRID_3_GRID_SLOT.ts +24 -24
  58. package/src/multiGridDataFormatterFiles/DF_MULTI_GRID_4_GRID_SLOT.ts +27 -27
  59. package/src/multiGridDataFormatterFiles/DF_MULTI_GRID_DIVERGING.ts +35 -35
  60. package/src/multiGridDataFormatterFiles/DF_MULTI_GRID_PN.ts +35 -35
  61. package/src/multiGridDataFormatterFiles/DF_MULTI_GRID_SEPARATE_GRID.ts +21 -21
  62. package/src/multiGridDataFormatterFiles/DF_MULTI_LINE_AREAS_2_GRID_SLOT.ts +27 -27
  63. package/src/multiGridDataFormatterFiles/DF_MULTI_LINE_AREAS_3_GRID_SLOT.ts +33 -33
  64. package/src/multiGridDataFormatterFiles/DF_MULTI_LINE_AREAS_4_GRID_SLOT.ts +39 -39
  65. package/src/multiGridDataFormatterFiles/DF_MULTI_LINE_AREAS_SEPARATE_GRID.ts +27 -27
  66. package/src/multiGridDataFormatterFiles/index.ts +9 -9
  67. package/src/multiGridPluginParamsFiles/MultiBarStack/PP_MULTI_BAR_STACK_2_GRID_SLOT.ts +11 -11
  68. package/src/multiGridPluginParamsFiles/MultiBarStack/PP_MULTI_BAR_STACK_3_GRID_SLOT.ts +11 -11
  69. package/src/multiGridPluginParamsFiles/MultiBarStack/PP_MULTI_BAR_STACK_4_GRID_SLOT.ts +11 -11
  70. package/src/multiGridPluginParamsFiles/MultiBarStack/index.ts +3 -3
  71. package/src/multiGridPluginParamsFiles/MultiBars/PP_MULTI_BARS_2_GRID_SLOT.ts +11 -11
  72. package/src/multiGridPluginParamsFiles/MultiBars/PP_MULTI_BARS_3_GRID_SLOT.ts +11 -11
  73. package/src/multiGridPluginParamsFiles/MultiBars/PP_MULTI_BARS_4_GRID_SLOT.ts +11 -11
  74. package/src/multiGridPluginParamsFiles/MultiBars/PP_MULTI_BARS_ROUND.ts +14 -14
  75. package/src/multiGridPluginParamsFiles/MultiBars/index.ts +5 -5
  76. package/src/multiGridPluginParamsFiles/MultiBarsTriangle/PP_MULTI_BARS_TRIANGLE_2_GRID_SLOT.ts +11 -11
  77. package/src/multiGridPluginParamsFiles/MultiBarsTriangle/PP_MULTI_BARS_TRIANGLE_3_GRID_SLOT.ts +11 -11
  78. package/src/multiGridPluginParamsFiles/MultiBarsTriangle/PP_MULTI_BARS_TRIANGLE_4_GRID_SLOT.ts +11 -11
  79. package/src/multiGridPluginParamsFiles/MultiBarsTriangle/index.ts +2 -2
  80. package/src/multiGridPluginParamsFiles/MultiDots/PP_MULTI_DOTS_2_GRID_SLOT.ts +11 -11
  81. package/src/multiGridPluginParamsFiles/MultiDots/PP_MULTI_DOTS_3_GRID_SLOT.ts +11 -11
  82. package/src/multiGridPluginParamsFiles/MultiDots/PP_MULTI_DOTS_4_GRID_SLOT.ts +11 -11
  83. package/src/multiGridPluginParamsFiles/MultiDots/index.ts +2 -2
  84. package/src/multiGridPluginParamsFiles/MultiGridLegend/PP_MULTI_GRID_LEGEND_BOTTOM.ts +13 -13
  85. package/src/multiGridPluginParamsFiles/MultiGridLegend/PP_MULTI_GRID_LEGEND_BOTTOM_WITH_LINE_LIST.ts +27 -27
  86. package/src/multiGridPluginParamsFiles/MultiGridLegend/PP_MULTI_GRID_LEGEND_BOTTOM_WITH_RECT_AND_LINE_LIST.ts +20 -20
  87. package/src/multiGridPluginParamsFiles/MultiGridLegend/PP_MULTI_GRID_LEGEND_BOTTOM_WITH_ROUND_AND_LINE_LIST.ts +21 -21
  88. package/src/multiGridPluginParamsFiles/MultiGridLegend/index.ts +3 -3
  89. package/src/multiGridPluginParamsFiles/MultiGroupAxis/PP_MULTI_GROUP_AXIS_2_GRID_SLOT.ts +12 -12
  90. package/src/multiGridPluginParamsFiles/MultiGroupAxis/PP_MULTI_GROUP_AXIS_3_GRID_SLOT.ts +12 -12
  91. package/src/multiGridPluginParamsFiles/MultiGroupAxis/PP_MULTI_GROUP_AXIS_4_GRID_SLOT.ts +12 -12
  92. package/src/multiGridPluginParamsFiles/MultiGroupAxis/PP_MULTI_GROUP_AXIS_DIVERGING.ts +12 -12
  93. package/src/multiGridPluginParamsFiles/MultiGroupAxis/index.ts +4 -4
  94. package/src/multiGridPluginParamsFiles/MultiLineAreas/PP_MULTI_LINE_AREAS_2_GRID_SLOT.ts +11 -11
  95. package/src/multiGridPluginParamsFiles/MultiLineAreas/PP_MULTI_LINE_AREAS_3_GRID_SLOT.ts +11 -11
  96. package/src/multiGridPluginParamsFiles/MultiLineAreas/PP_MULTI_LINE_AREAS_4_GRID_SLOT.ts +11 -11
  97. package/src/multiGridPluginParamsFiles/MultiLineAreas/PP_MULTI_LINE_AREAS_CURVE.ts +11 -11
  98. package/src/multiGridPluginParamsFiles/MultiLineAreas/index.ts +3 -3
  99. package/src/multiGridPluginParamsFiles/MultiLines/PP_MULTI_LINES_2_GRID_SLOT.ts +11 -11
  100. package/src/multiGridPluginParamsFiles/MultiLines/PP_MULTI_LINES_3_GRID_SLOT.ts +11 -11
  101. package/src/multiGridPluginParamsFiles/MultiLines/PP_MULTI_LINES_4_GRID_SLOT.ts +11 -11
  102. package/src/multiGridPluginParamsFiles/MultiLines/PP_MULTI_LINES_CURVE.ts +12 -12
  103. package/src/multiGridPluginParamsFiles/MultiLines/index.ts +3 -3
  104. package/src/multiGridPluginParamsFiles/MultiValueAxis/PP_MULTI_VALUE_AXIS_2_GRID_SLOT.ts +11 -11
  105. package/src/multiGridPluginParamsFiles/MultiValueAxis/PP_MULTI_VALUE_AXIS_3_GRID_SLOT.ts +11 -11
  106. package/src/multiGridPluginParamsFiles/MultiValueAxis/PP_MULTI_VALUE_AXIS_4_GRID_SLOT.ts +11 -11
  107. package/src/multiGridPluginParamsFiles/MultiValueAxis/index.ts +3 -3
  108. package/src/multiGridPluginParamsFiles/MultiValueStackAxis/PP_MULTI_VALUE_STACK_AXIS_2_GRID_SLOT.ts +11 -11
  109. package/src/multiGridPluginParamsFiles/MultiValueStackAxis/PP_MULTI_VALUE_STACK_AXIS_3_GRID_SLOT.ts +11 -11
  110. package/src/multiGridPluginParamsFiles/MultiValueStackAxis/PP_MULTI_VALUE_STACK_AXIS_4_GRID_SLOT.ts +11 -11
  111. package/src/multiGridPluginParamsFiles/MultiValueStackAxis/index.ts +3 -3
  112. package/src/multiGridPluginParamsFiles/index.ts +9 -9
  113. package/src/seriesDataFormatterFiles/DF_SERIES_DESC.ts +9 -9
  114. package/src/seriesDataFormatterFiles/DF_SERIES_SEPARATE_SERIES.ts +9 -9
  115. package/src/seriesDataFormatterFiles/DF_SERIES_SEPARATE_SERIES_AND_DESC.ts +10 -10
  116. package/src/seriesDataFormatterFiles/DF_SERIES_SEPARATE_SERIES_AND_SUM_SERIES.ts +10 -10
  117. package/src/seriesDataFormatterFiles/DF_SERIES_SUM_SERIES.ts +9 -9
  118. package/src/seriesDataFormatterFiles/DF_SERIES_SUM_SERIES_AND_DESC.ts +10 -10
  119. package/src/seriesDataFormatterFiles/index.ts +8 -8
  120. package/src/seriesPluginParamsFiles/Bubbles/PP_BUBBLES_SCALING_BY_RADIUS.ts +11 -11
  121. package/src/seriesPluginParamsFiles/Pie/PP_PIE_DONUT.ts +12 -12
  122. package/src/seriesPluginParamsFiles/Pie/PP_PIE_HALF_DONUT.ts +14 -14
  123. package/src/seriesPluginParamsFiles/Pie/index.ts +1 -1
  124. package/src/seriesPluginParamsFiles/PieLabels/PP_PIE_LABELS_HALF_ANGLE.ts +13 -13
  125. package/src/seriesPluginParamsFiles/PieLabels/PP_PIE_LABELS_INNER.ts +13 -13
  126. package/src/seriesPluginParamsFiles/PieLabels/index.ts +1 -1
  127. package/src/seriesPluginParamsFiles/Rose/PP_ROSE_SCALING_BY_RADIUS.ts +11 -11
  128. package/src/seriesPluginParamsFiles/Rose/index.ts +2 -2
  129. package/src/seriesPluginParamsFiles/RoseLabels/PP_ROSE_LABELS_SCALING_BY_RADIUS.ts +11 -11
  130. package/src/seriesPluginParamsFiles/RoseLabels/index.ts +1 -1
  131. package/src/seriesPluginParamsFiles/SeriesLegend/PP_SERIES_LEGEND_ROUND.ts +11 -11
  132. package/src/seriesPluginParamsFiles/index.ts +5 -5
  133. package/src/treePluginParamsFiles/TreeLegend/PP_TREE_LEGEND_BOTTOM.ts +13 -13
  134. package/src/types.ts +61 -61
  135. package/tsconfig.dev.json +17 -17
  136. package/tsconfig.json +13 -13
  137. package/tsconfig.prod.json +13 -13
  138. package/vite.config.js +44 -44
  139. package/dist/src/gridDataFormatterFiles/DF_GRID_DIVERGING_SCALE.d.ts +0 -3
@@ -1,14 +1,14 @@
1
- import type { ChartParamsFile } from '../types'
2
-
3
- export const CP_TOP_AND_NO_BOTTOM_PADDING: ChartParamsFile = {
4
- id: 'CP_TOP_AND_NO_BOTTOM_PADDING',
5
- description: '間距上面留空下面不留空',
6
- data: {
7
- padding: {
8
- top: 120,
9
- right: 120,
10
- bottom: 0,
11
- left: 60
12
- },
13
- }
1
+ import type { ChartParamsFile } from '../types'
2
+
3
+ export const CP_TOP_AND_NO_BOTTOM_PADDING: ChartParamsFile = {
4
+ id: 'CP_TOP_AND_NO_BOTTOM_PADDING',
5
+ description: '間距上面留空下面不留空',
6
+ data: {
7
+ padding: {
8
+ top: 120,
9
+ right: 120,
10
+ bottom: 0,
11
+ left: 60
12
+ },
13
+ }
14
14
  }
@@ -1,13 +1,13 @@
1
- export { CP_BOTTOM_AND_LEFT_PADDING_WITH_SERIES_HIGHLIGHT } from './CP_BOTTOM_AND_LEFT_PADDING_WITH_SERIES_HIGHLIGHT'
2
- export { CP_BOTTOM_AND_LEFT_PADDING } from './CP_BOTTOM_AND_LEFT_PADDING'
3
- export { CP_BOTTOM_LONG_PADDING } from './CP_BOTTOM_LONG_PADDING'
4
- export { CP_BOTTOM_LONG_PADDING_WITH_SERIES_HIGHLIGHT } from './CP_BOTTOM_LONG_PADDING_WITH_SERIES_HIGHLIGHT'
5
- export { CP_BOTTOM_PADDING_WITH_GROUP_HIGHLIGHT } from './CP_BOTTOM_PADDING_WITH_GROUP_HIGHLIGHT'
6
- export { CP_BOTTOM_PADDING_WITH_SERIES_HIGHLIGHT } from './CP_BOTTOM_PADDING_WITH_SERIES_HIGHLIGHT'
7
- export { CP_BOTTOM_PADDING } from './CP_BOTTOM_PADDING'
8
- export { CP_BOTTOM_SLIGHT_PADDING } from './CP_BOTTOM_SLIGHT_PADDING'
9
- export { CP_LEFT_PADDING } from './CP_LEFT_PADDING'
10
- export { CP_TOP_AND_NO_BOTTOM_PADDING } from './CP_TOP_AND_NO_BOTTOM_PADDING'
11
- export { CP_RIGHT_PADDING } from './CP_RIGHT_PADDING'
12
- export { CP_LONG_PADDING } from './CP_LONG_PADDING'
13
-
1
+ export { CP_BOTTOM_AND_LEFT_PADDING_WITH_SERIES_HIGHLIGHT } from './CP_BOTTOM_AND_LEFT_PADDING_WITH_SERIES_HIGHLIGHT'
2
+ export { CP_BOTTOM_AND_LEFT_PADDING } from './CP_BOTTOM_AND_LEFT_PADDING'
3
+ export { CP_BOTTOM_LONG_PADDING } from './CP_BOTTOM_LONG_PADDING'
4
+ export { CP_BOTTOM_LONG_PADDING_WITH_SERIES_HIGHLIGHT } from './CP_BOTTOM_LONG_PADDING_WITH_SERIES_HIGHLIGHT'
5
+ export { CP_BOTTOM_PADDING_WITH_GROUP_HIGHLIGHT } from './CP_BOTTOM_PADDING_WITH_GROUP_HIGHLIGHT'
6
+ export { CP_BOTTOM_PADDING_WITH_SERIES_HIGHLIGHT } from './CP_BOTTOM_PADDING_WITH_SERIES_HIGHLIGHT'
7
+ export { CP_BOTTOM_PADDING } from './CP_BOTTOM_PADDING'
8
+ export { CP_BOTTOM_SLIGHT_PADDING } from './CP_BOTTOM_SLIGHT_PADDING'
9
+ export { CP_LEFT_PADDING } from './CP_LEFT_PADDING'
10
+ export { CP_TOP_AND_NO_BOTTOM_PADDING } from './CP_TOP_AND_NO_BOTTOM_PADDING'
11
+ export { CP_RIGHT_PADDING } from './CP_RIGHT_PADDING'
12
+ export { CP_LONG_PADDING } from './CP_LONG_PADDING'
13
+
@@ -1,88 +1,88 @@
1
- import type { PresetPartial, ChartType, ChartParamsPartial, DataFormatterPartialTypeMap } from '@orbcharts/core'
2
- import type { ChartParamsFile, DataFormatterFile, PluginParamsFile, PresetFile } from './types'
3
- import * as chartParamsFiles from './chartParamsFiles'
4
- import * as seriesDataFormatterFiles from './seriesDataFormatterFiles'
5
- import * as seriesPluginParamsFiles from './seriesPluginParamsFiles'
6
- import * as gridDataFormatterFiles from './gridDataFormatterFiles'
7
- import * as gridPluginParamsFiles from './gridPluginParamsFiles'
8
- import * as multiGridDataFormatterFiles from './multiGridDataFormatterFiles'
9
- import * as multiGridPluginParamsFiles from './multiGridPluginParamsFiles'
10
- import * as multiValueDataFormatterFiles from './multiValueDataFormatterFiles'
11
- import * as multiValuePluginParamsFiles from './multiValuePluginParamsFiles'
12
- import * as relationshipDataFormatterFiles from './relationshipDataFormatterFiles'
13
- import * as relationshipPluginParamsFiles from './relationshipPluginParamsFiles'
14
- import * as treeDataFormatterFiles from './treeDataFormatterFiles'
15
- import * as treePluginParamsFiles from './treePluginParamsFiles'
16
-
17
- const dataFormatterFilesTypeMap = {
18
- series: seriesDataFormatterFiles,
19
- grid: gridDataFormatterFiles,
20
- multiGrid: multiGridDataFormatterFiles,
21
- multiValue: multiValueDataFormatterFiles,
22
- relationship: relationshipDataFormatterFiles,
23
- tree: treeDataFormatterFiles
24
- }
25
-
26
- const pluginParamsFilesTypeMap = {
27
- series: seriesPluginParamsFiles,
28
- grid: gridPluginParamsFiles,
29
- multiGrid: multiGridPluginParamsFiles,
30
- multiValue: multiValuePluginParamsFiles,
31
- relationship: relationshipPluginParamsFiles,
32
- tree: treePluginParamsFiles
33
- }
34
-
35
- const createBasePreset = <T extends ChartType>(chartType: T, presetFile: PresetFile<T>): PresetPartial<T> => {
36
- const chartParams: ChartParamsPartial | undefined = presetFile.chartParamsId
37
- ? chartParamsFiles[presetFile.chartParamsId].data
38
- : undefined
39
- // @ts-ignore
40
- const dataFormatter: DataFormatterPartialTypeMap<T> | undefined = dataFormatterFilesTypeMap[chartType][presetFile.dataFormatterId]
41
- // @ts-ignore
42
- ? dataFormatterFilesTypeMap[chartType][presetFile.dataFormatterId].data
43
- : undefined
44
-
45
- const allPluginParams: {[key: string]: any} | undefined = presetFile.allPluginParamsIds
46
- ? presetFile.allPluginParamsIds
47
- .reduce((prev, current) => {
48
- // @ts-ignore
49
- if (pluginParamsFilesTypeMap[chartType][current]) {
50
- // @ts-ignore
51
- const pluginName = pluginParamsFilesTypeMap[chartType][current].pluginName
52
- // @ts-ignore
53
- prev[pluginName] = pluginParamsFilesTypeMap[chartType][current].data
54
- }
55
- return prev
56
- }, {})
57
- : undefined
58
-
59
- return {
60
- chartParams,
61
- dataFormatter,
62
- allPluginParams
63
- }
64
- }
65
-
66
- export const createSeriesPreset = (presetFile: PresetFile<'series'>): PresetPartial<'series'> => {
67
- return createBasePreset('series', presetFile)
68
- }
69
-
70
- export const createGridPreset = (presetFile: PresetFile<'grid'>): PresetPartial<'grid'> => {
71
- return createBasePreset('grid', presetFile)
72
- }
73
-
74
- export const createMultiGridPreset = (presetFile: PresetFile<'multiGrid'>): PresetPartial<'multiGrid'> => {
75
- return createBasePreset('multiGrid', presetFile)
76
- }
77
-
78
- export const createMultiValuePreset = (presetFile: PresetFile<'multiValue'>): PresetPartial<'multiValue'> => {
79
- return createBasePreset('multiValue', presetFile)
80
- }
81
-
82
- export const createRelationshipPreset = (presetFile: PresetFile<'relationship'>): PresetPartial<'relationship'> => {
83
- return createBasePreset('relationship', presetFile)
84
- }
85
-
86
- export const createTreePreset = (presetFile: PresetFile<'tree'>): PresetPartial<'tree'> => {
87
- return createBasePreset('tree', presetFile)
1
+ import type { PresetPartial, ChartType, ChartParamsPartial, DataFormatterPartialTypeMap } from '@orbcharts/core'
2
+ import type { ChartParamsFile, DataFormatterFile, PluginParamsFile, PresetFile } from './types'
3
+ import * as chartParamsFiles from './chartParamsFiles'
4
+ import * as seriesDataFormatterFiles from './seriesDataFormatterFiles'
5
+ import * as seriesPluginParamsFiles from './seriesPluginParamsFiles'
6
+ import * as gridDataFormatterFiles from './gridDataFormatterFiles'
7
+ import * as gridPluginParamsFiles from './gridPluginParamsFiles'
8
+ import * as multiGridDataFormatterFiles from './multiGridDataFormatterFiles'
9
+ import * as multiGridPluginParamsFiles from './multiGridPluginParamsFiles'
10
+ import * as multiValueDataFormatterFiles from './multiValueDataFormatterFiles'
11
+ import * as multiValuePluginParamsFiles from './multiValuePluginParamsFiles'
12
+ import * as relationshipDataFormatterFiles from './relationshipDataFormatterFiles'
13
+ import * as relationshipPluginParamsFiles from './relationshipPluginParamsFiles'
14
+ import * as treeDataFormatterFiles from './treeDataFormatterFiles'
15
+ import * as treePluginParamsFiles from './treePluginParamsFiles'
16
+
17
+ const dataFormatterFilesTypeMap = {
18
+ series: seriesDataFormatterFiles,
19
+ grid: gridDataFormatterFiles,
20
+ multiGrid: multiGridDataFormatterFiles,
21
+ multiValue: multiValueDataFormatterFiles,
22
+ relationship: relationshipDataFormatterFiles,
23
+ tree: treeDataFormatterFiles
24
+ }
25
+
26
+ const pluginParamsFilesTypeMap = {
27
+ series: seriesPluginParamsFiles,
28
+ grid: gridPluginParamsFiles,
29
+ multiGrid: multiGridPluginParamsFiles,
30
+ multiValue: multiValuePluginParamsFiles,
31
+ relationship: relationshipPluginParamsFiles,
32
+ tree: treePluginParamsFiles
33
+ }
34
+
35
+ const createBasePreset = <T extends ChartType>(chartType: T, presetFile: PresetFile<T>): PresetPartial<T> => {
36
+ const chartParams: ChartParamsPartial | undefined = presetFile.chartParamsId
37
+ ? chartParamsFiles[presetFile.chartParamsId].data
38
+ : undefined
39
+ // @ts-ignore
40
+ const dataFormatter: DataFormatterPartialTypeMap<T> | undefined = dataFormatterFilesTypeMap[chartType][presetFile.dataFormatterId]
41
+ // @ts-ignore
42
+ ? dataFormatterFilesTypeMap[chartType][presetFile.dataFormatterId].data
43
+ : undefined
44
+
45
+ const allPluginParams: {[key: string]: any} | undefined = presetFile.allPluginParamsIds
46
+ ? presetFile.allPluginParamsIds
47
+ .reduce((prev, current) => {
48
+ // @ts-ignore
49
+ if (pluginParamsFilesTypeMap[chartType][current]) {
50
+ // @ts-ignore
51
+ const pluginName = pluginParamsFilesTypeMap[chartType][current].pluginName
52
+ // @ts-ignore
53
+ prev[pluginName] = pluginParamsFilesTypeMap[chartType][current].data
54
+ }
55
+ return prev
56
+ }, {})
57
+ : undefined
58
+
59
+ return {
60
+ chartParams,
61
+ dataFormatter,
62
+ allPluginParams
63
+ }
64
+ }
65
+
66
+ export const createSeriesPreset = (presetFile: PresetFile<'series'>): PresetPartial<'series'> => {
67
+ return createBasePreset('series', presetFile)
68
+ }
69
+
70
+ export const createGridPreset = (presetFile: PresetFile<'grid'>): PresetPartial<'grid'> => {
71
+ return createBasePreset('grid', presetFile)
72
+ }
73
+
74
+ export const createMultiGridPreset = (presetFile: PresetFile<'multiGrid'>): PresetPartial<'multiGrid'> => {
75
+ return createBasePreset('multiGrid', presetFile)
76
+ }
77
+
78
+ export const createMultiValuePreset = (presetFile: PresetFile<'multiValue'>): PresetPartial<'multiValue'> => {
79
+ return createBasePreset('multiValue', presetFile)
80
+ }
81
+
82
+ export const createRelationshipPreset = (presetFile: PresetFile<'relationship'>): PresetPartial<'relationship'> => {
83
+ return createBasePreset('relationship', presetFile)
84
+ }
85
+
86
+ export const createTreePreset = (presetFile: PresetFile<'tree'>): PresetPartial<'tree'> => {
87
+ return createBasePreset('tree', presetFile)
88
88
  }
@@ -1,17 +1,17 @@
1
- import type { DataFormatterFile } from '../types'
2
-
3
- export const DF_GRID_2_SERIES_SLOT: DataFormatterFile<'grid'> = {
4
- id: 'DF_GRID_2_SERIES_SLOT',
5
- chartType: 'grid',
6
- description: '2個Series Slot',
7
- data: {
8
- grid: {
9
- // seriesSlotIndexes: [0, 1],
10
- separateSeries: true,
11
- },
12
- container: {
13
- rowAmount: 1,
14
- columnAmount: 2,
15
- }
16
- }
1
+ import type { DataFormatterFile } from '../types'
2
+
3
+ export const DF_GRID_2_SERIES_SLOT: DataFormatterFile<'grid'> = {
4
+ id: 'DF_GRID_2_SERIES_SLOT',
5
+ chartType: 'grid',
6
+ description: '2個Series Slot',
7
+ data: {
8
+ grid: {
9
+ // seriesSlotIndexes: [0, 1],
10
+ separateSeries: true,
11
+ },
12
+ container: {
13
+ rowAmount: 1,
14
+ columnAmount: 2,
15
+ }
16
+ }
17
17
  }
@@ -1,17 +1,17 @@
1
- import type { DataFormatterFile } from '../types'
2
-
3
- export const DF_GRID_3_SERIES_SLOT: DataFormatterFile<'grid'> = {
4
- id: 'DF_GRID_3_SERIES_SLOT',
5
- chartType: 'grid',
6
- description: '3個Series Slot',
7
- data: {
8
- grid: {
9
- // seriesSlotIndexes: [0, 1, 2],
10
- separateSeries: true,
11
- },
12
- container: {
13
- rowAmount: 1,
14
- columnAmount: 3,
15
- }
16
- }
1
+ import type { DataFormatterFile } from '../types'
2
+
3
+ export const DF_GRID_3_SERIES_SLOT: DataFormatterFile<'grid'> = {
4
+ id: 'DF_GRID_3_SERIES_SLOT',
5
+ chartType: 'grid',
6
+ description: '3個Series Slot',
7
+ data: {
8
+ grid: {
9
+ // seriesSlotIndexes: [0, 1, 2],
10
+ separateSeries: true,
11
+ },
12
+ container: {
13
+ rowAmount: 1,
14
+ columnAmount: 3,
15
+ }
16
+ }
17
17
  }
@@ -1,17 +1,17 @@
1
- import type { DataFormatterFile } from '../types'
2
-
3
- export const DF_GRID_4_SERIES_SLOT: DataFormatterFile<'grid'> = {
4
- id: 'DF_GRID_4_SERIES_SLOT',
5
- chartType: 'grid',
6
- description: '4個Series Slot',
7
- data: {
8
- grid: {
9
- // seriesSlotIndexes: [0, 1, 2, 3],
10
- separateSeries: true,
11
- },
12
- container: {
13
- rowAmount: 2,
14
- columnAmount: 2,
15
- }
16
- }
1
+ import type { DataFormatterFile } from '../types'
2
+
3
+ export const DF_GRID_4_SERIES_SLOT: DataFormatterFile<'grid'> = {
4
+ id: 'DF_GRID_4_SERIES_SLOT',
5
+ chartType: 'grid',
6
+ description: '4個Series Slot',
7
+ data: {
8
+ grid: {
9
+ // seriesSlotIndexes: [0, 1, 2, 3],
10
+ separateSeries: true,
11
+ },
12
+ container: {
13
+ rowAmount: 2,
14
+ columnAmount: 2,
15
+ }
16
+ }
17
17
  }
@@ -1,23 +1,23 @@
1
- import type { DataFormatterFile } from '../types'
2
-
3
- export const DF_GRID_BOTTOM_VALUE_AXIS: DataFormatterFile<'grid'> = {
4
- id: 'DF_GRID_BOTTOM_VALUE_AXIS',
5
- chartType: 'grid',
6
- description: '底部橫向資料圖軸',
7
- data: {
8
- grid: {
9
- valueAxis: {
10
- position: 'bottom'
11
- // position: 'top'
12
- // position: 'left'
13
- // position: 'right'
14
- },
15
- groupAxis: {
16
- position: 'left'
17
- // position: 'right'
18
- // position: 'bottom'
19
- // position: 'top'
20
- },
21
- }
22
- }
1
+ import type { DataFormatterFile } from '../types'
2
+
3
+ export const DF_GRID_BOTTOM_VALUE_AXIS: DataFormatterFile<'grid'> = {
4
+ id: 'DF_GRID_BOTTOM_VALUE_AXIS',
5
+ chartType: 'grid',
6
+ description: '底部橫向資料圖軸',
7
+ data: {
8
+ grid: {
9
+ valueAxis: {
10
+ position: 'bottom'
11
+ // position: 'top'
12
+ // position: 'left'
13
+ // position: 'right'
14
+ },
15
+ groupAxis: {
16
+ position: 'left'
17
+ // position: 'right'
18
+ // position: 'bottom'
19
+ // position: 'top'
20
+ },
21
+ }
22
+ }
23
23
  }
@@ -1,18 +1,18 @@
1
- import type { DataFormatterFile } from '../types'
2
-
3
- export const DF_GRID_BOTTOM_VALUE_AXIS_AND_NONE_GROUP_SCALE_PADDING: DataFormatterFile<'grid'> = {
4
- id: 'DF_GRID_BOTTOM_VALUE_AXIS_AND_NONE_GROUP_SCALE_PADDING',
5
- chartType: 'grid',
6
- description: '底部橫向資料圖軸及無群組圖軸的左右間距',
7
- data: {
8
- grid: {
9
- valueAxis: {
10
- position: 'bottom'
11
- },
12
- groupAxis: {
13
- position: 'left',
14
- scalePadding: 0
15
- },
16
- }
17
- }
1
+ import type { DataFormatterFile } from '../types'
2
+
3
+ export const DF_GRID_BOTTOM_VALUE_AXIS_AND_NONE_GROUP_SCALE_PADDING: DataFormatterFile<'grid'> = {
4
+ id: 'DF_GRID_BOTTOM_VALUE_AXIS_AND_NONE_GROUP_SCALE_PADDING',
5
+ chartType: 'grid',
6
+ description: '底部橫向資料圖軸及無群組圖軸的左右間距',
7
+ data: {
8
+ grid: {
9
+ valueAxis: {
10
+ position: 'bottom'
11
+ },
12
+ groupAxis: {
13
+ position: 'left',
14
+ scalePadding: 0
15
+ },
16
+ }
17
+ }
18
18
  }
@@ -1,14 +1,14 @@
1
- import type { DataFormatterFile } from '../types'
2
-
3
- export const DF_GRID_NONE_GROUP_SCALE_PADDING: DataFormatterFile<'grid'> = {
4
- id: 'DF_GRID_NONE_GROUP_SCALE_PADDING',
5
- chartType: 'grid',
6
- description: '無群組圖軸的左右間距',
7
- data: {
8
- grid: {
9
- groupAxis: {
10
- scalePadding: 0
11
- }
12
- }
13
- }
1
+ import type { DataFormatterFile } from '../types'
2
+
3
+ export const DF_GRID_NONE_GROUP_SCALE_PADDING: DataFormatterFile<'grid'> = {
4
+ id: 'DF_GRID_NONE_GROUP_SCALE_PADDING',
5
+ chartType: 'grid',
6
+ description: '無群組圖軸的左右間距',
7
+ data: {
8
+ grid: {
9
+ groupAxis: {
10
+ scalePadding: 0
11
+ }
12
+ }
13
+ }
14
14
  }
@@ -1,15 +1,15 @@
1
- import type { DataFormatterFile } from '../types'
2
-
3
- export const DF_GRID_DIVERGING_SCALE: DataFormatterFile<'grid'> = {
4
- id: 'DF_GRID_DIVERGING_SCALE',
5
- chartType: 'grid',
6
- description: '分向資料圖軸',
7
- data: {
8
- grid: {
9
- valueAxis: {
10
- scaleDomain: ['auto', 'auto'],
11
- scaleRange: [0.05, 0.95],
12
- },
13
- }
14
- }
1
+ import type { DataFormatterFile } from '../types'
2
+
3
+ export const DF_GRID_PN_SCALE: DataFormatterFile<'grid'> = {
4
+ id: 'DF_GRID_PN_SCALE',
5
+ chartType: 'grid',
6
+ description: '分向資料圖軸',
7
+ data: {
8
+ grid: {
9
+ valueAxis: {
10
+ scaleDomain: ['auto', 'auto'],
11
+ scaleRange: [0.05, 0.95],
12
+ },
13
+ }
14
+ }
15
15
  }
@@ -1,17 +1,17 @@
1
- import type { DataFormatterFile } from '../types'
2
-
3
- export const DF_GRID_SEPARATE_SERIES: DataFormatterFile<'grid'> = {
4
- id: 'DF_GRID_SEPARATE_SERIES',
5
- chartType: 'grid',
6
- description: '分開顯示Series',
7
- data: {
8
- grid: {
9
- // seriesSlotIndexes: [0, 1],
10
- separateSeries: true,
11
- },
12
- // container: {
13
- // rowAmount: 1,
14
- // columnAmount: 2,
15
- // }
16
- }
1
+ import type { DataFormatterFile } from '../types'
2
+
3
+ export const DF_GRID_SEPARATE_SERIES: DataFormatterFile<'grid'> = {
4
+ id: 'DF_GRID_SEPARATE_SERIES',
5
+ chartType: 'grid',
6
+ description: '分開顯示Series',
7
+ data: {
8
+ grid: {
9
+ // seriesSlotIndexes: [0, 1],
10
+ separateSeries: true,
11
+ },
12
+ // container: {
13
+ // rowAmount: 1,
14
+ // columnAmount: 2,
15
+ // }
16
+ }
17
17
  }
@@ -1,20 +1,20 @@
1
- import type { DataFormatterFile } from '../types'
2
-
3
- export const DF_LINE_AREAS_2_SERIES_SLOT: DataFormatterFile<'grid'> = {
4
- id: 'DF_LINE_AREAS_2_SERIES_SLOT',
5
- chartType: 'grid',
6
- description: 'LineAreas 2個Series Slot',
7
- data: {
8
- grid: {
9
- // seriesSlotIndexes: [0, 1],
10
- separateSeries: true,
11
- groupAxis: {
12
- scalePadding: 0
13
- }
14
- },
15
- container: {
16
- rowAmount: 1,
17
- columnAmount: 2,
18
- }
19
- }
1
+ import type { DataFormatterFile } from '../types'
2
+
3
+ export const DF_LINE_AREAS_2_SERIES_SLOT: DataFormatterFile<'grid'> = {
4
+ id: 'DF_LINE_AREAS_2_SERIES_SLOT',
5
+ chartType: 'grid',
6
+ description: 'LineAreas 2個Series Slot',
7
+ data: {
8
+ grid: {
9
+ // seriesSlotIndexes: [0, 1],
10
+ separateSeries: true,
11
+ groupAxis: {
12
+ scalePadding: 0
13
+ }
14
+ },
15
+ container: {
16
+ rowAmount: 1,
17
+ columnAmount: 2,
18
+ }
19
+ }
20
20
  }
@@ -1,20 +1,20 @@
1
- import type { DataFormatterFile } from '../types'
2
-
3
- export const DF_LINE_AREAS_3_SERIES_SLOT: DataFormatterFile<'grid'> = {
4
- id: 'DF_LINE_AREAS_3_SERIES_SLOT',
5
- chartType: 'grid',
6
- description: 'LineAreas 3個Series Slot',
7
- data: {
8
- grid: {
9
- // seriesSlotIndexes: [0, 1, 2],
10
- separateSeries: true,
11
- groupAxis: {
12
- scalePadding: 0
13
- }
14
- },
15
- container: {
16
- rowAmount: 1,
17
- columnAmount: 3,
18
- }
19
- }
1
+ import type { DataFormatterFile } from '../types'
2
+
3
+ export const DF_LINE_AREAS_3_SERIES_SLOT: DataFormatterFile<'grid'> = {
4
+ id: 'DF_LINE_AREAS_3_SERIES_SLOT',
5
+ chartType: 'grid',
6
+ description: 'LineAreas 3個Series Slot',
7
+ data: {
8
+ grid: {
9
+ // seriesSlotIndexes: [0, 1, 2],
10
+ separateSeries: true,
11
+ groupAxis: {
12
+ scalePadding: 0
13
+ }
14
+ },
15
+ container: {
16
+ rowAmount: 1,
17
+ columnAmount: 3,
18
+ }
19
+ }
20
20
  }
@@ -1,20 +1,20 @@
1
- import type { DataFormatterFile } from '../types'
2
-
3
- export const DF_LINE_AREAS_4_SERIES_SLOT: DataFormatterFile<'grid'> = {
4
- id: 'DF_LINE_AREAS_4_SERIES_SLOT',
5
- chartType: 'grid',
6
- description: 'LineAreas 4個Series Slot',
7
- data: {
8
- grid: {
9
- // seriesSlotIndexes: [0, 1, 2, 3],
10
- separateSeries: true,
11
- groupAxis: {
12
- scalePadding: 0
13
- }
14
- },
15
- container: {
16
- rowAmount: 2,
17
- columnAmount: 2,
18
- }
19
- }
1
+ import type { DataFormatterFile } from '../types'
2
+
3
+ export const DF_LINE_AREAS_4_SERIES_SLOT: DataFormatterFile<'grid'> = {
4
+ id: 'DF_LINE_AREAS_4_SERIES_SLOT',
5
+ chartType: 'grid',
6
+ description: 'LineAreas 4個Series Slot',
7
+ data: {
8
+ grid: {
9
+ // seriesSlotIndexes: [0, 1, 2, 3],
10
+ separateSeries: true,
11
+ groupAxis: {
12
+ scalePadding: 0
13
+ }
14
+ },
15
+ container: {
16
+ rowAmount: 2,
17
+ columnAmount: 2,
18
+ }
19
+ }
20
20
  }