@orbcharts/plugins-basic 3.0.0-beta.1 → 3.0.0-beta.10

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 (212) hide show
  1. package/LICENSE +200 -200
  2. package/dist/{src → orbcharts-plugins-basic/src}/base/BaseBars.d.ts +2 -2
  3. package/dist/{src → orbcharts-plugins-basic/src}/base/BaseBarsTriangle.d.ts +2 -2
  4. package/dist/{src → orbcharts-plugins-basic/src}/base/BaseDots.d.ts +2 -2
  5. package/dist/{src → orbcharts-plugins-basic/src}/base/BaseGroupAxis.d.ts +2 -2
  6. package/dist/{src → orbcharts-plugins-basic/src}/base/BaseLegend.d.ts +1 -1
  7. package/dist/{src → orbcharts-plugins-basic/src}/base/BaseLineAreas.d.ts +3 -3
  8. package/dist/{src → orbcharts-plugins-basic/src}/base/BaseLines.d.ts +3 -3
  9. package/dist/{src/base/BaseBarStack.d.ts → orbcharts-plugins-basic/src/base/BaseStackedBar.d.ts} +6 -6
  10. package/dist/{src → orbcharts-plugins-basic/src}/base/BaseValueAxis.d.ts +3 -2
  11. package/dist/{src → orbcharts-plugins-basic/src}/grid/defaults.d.ts +4 -4
  12. package/dist/{src → orbcharts-plugins-basic/src}/grid/gridObservables.d.ts +5 -5
  13. package/dist/{src → orbcharts-plugins-basic/src}/grid/index.d.ts +2 -2
  14. package/dist/orbcharts-plugins-basic/src/grid/plugins/StackedBar.d.ts +1 -0
  15. package/dist/orbcharts-plugins-basic/src/grid/plugins/StackedValueAxis.d.ts +1 -0
  16. package/dist/orbcharts-plugins-basic/src/index.d.ts +7 -0
  17. package/dist/{src → orbcharts-plugins-basic/src}/multiGrid/defaults.d.ts +4 -4
  18. package/dist/{src → orbcharts-plugins-basic/src}/multiGrid/index.d.ts +3 -3
  19. package/dist/orbcharts-plugins-basic/src/multiGrid/plugins/MultiStackedBar.d.ts +1 -0
  20. package/dist/orbcharts-plugins-basic/src/multiGrid/plugins/MultiStackedValueAxis.d.ts +1 -0
  21. package/dist/orbcharts-plugins-basic/src/multiGrid/plugins/OverlappingStackedValueAxes.d.ts +1 -0
  22. package/dist/orbcharts-plugins-basic/src/multiValue/defaults.d.ts +9 -0
  23. package/dist/orbcharts-plugins-basic/src/multiValue/index.d.ts +8 -0
  24. package/dist/orbcharts-plugins-basic/src/multiValue/multiValueObservables.d.ts +33 -0
  25. package/dist/orbcharts-plugins-basic/src/multiValue/plugins/MultiValueLegend.d.ts +1 -0
  26. package/dist/orbcharts-plugins-basic/src/multiValue/plugins/MultiValueTooltip.d.ts +1 -0
  27. package/dist/orbcharts-plugins-basic/src/multiValue/plugins/Scatter.d.ts +3 -0
  28. package/dist/orbcharts-plugins-basic/src/multiValue/plugins/ScatterBubbles.d.ts +3 -0
  29. package/dist/orbcharts-plugins-basic/src/multiValue/plugins/XYAux.d.ts +3 -0
  30. package/dist/orbcharts-plugins-basic/src/multiValue/plugins/XYAxes.d.ts +3 -0
  31. package/dist/orbcharts-plugins-basic/src/multiValue/plugins/XYZoom.d.ts +1 -0
  32. package/dist/orbcharts-plugins-basic/src/relationship/defaults.d.ts +6 -0
  33. package/dist/orbcharts-plugins-basic/src/relationship/index.d.ts +5 -0
  34. package/dist/orbcharts-plugins-basic/src/relationship/plugins/ForceDirected.d.ts +3 -0
  35. package/dist/orbcharts-plugins-basic/src/relationship/plugins/ForceDirectedBubbles.d.ts +3 -0
  36. package/dist/orbcharts-plugins-basic/src/relationship/plugins/RelationshipLegend.d.ts +1 -0
  37. package/dist/orbcharts-plugins-basic/src/relationship/plugins/RelationshipTooltip.d.ts +1 -0
  38. package/dist/orbcharts-plugins-basic/src/relationship/relationshipObservables.d.ts +1 -0
  39. package/dist/{src → orbcharts-plugins-basic/src}/series/seriesObservables.d.ts +3 -3
  40. package/dist/{src → orbcharts-plugins-basic/src}/utils/commonUtils.d.ts +1 -1
  41. package/dist/{src → orbcharts-plugins-basic/src}/utils/d3Utils.d.ts +2 -2
  42. package/dist/{src → orbcharts-plugins-basic/src}/utils/observables.d.ts +1 -1
  43. package/dist/{src → orbcharts-plugins-basic/src}/utils/orbchartsUtils.d.ts +3 -3
  44. package/dist/orbcharts-plugins-basic.es.js +13264 -10298
  45. package/dist/orbcharts-plugins-basic.umd.js +105 -55
  46. package/dist/src/index.d.ts +1 -5
  47. package/lib/core-types.ts +7 -7
  48. package/lib/core.ts +6 -6
  49. package/lib/plugins-basic-types.ts +6 -6
  50. package/package.json +44 -44
  51. package/src/base/BaseBars.ts +765 -765
  52. package/src/base/BaseBarsTriangle.ts +676 -674
  53. package/src/base/BaseDots.ts +464 -515
  54. package/src/base/BaseGroupAxis.ts +679 -679
  55. package/src/base/BaseLegend.ts +684 -680
  56. package/src/base/BaseLineAreas.ts +629 -629
  57. package/src/base/BaseLines.ts +706 -706
  58. package/src/base/{BaseBarStack.ts → BaseStackedBar.ts} +782 -780
  59. package/src/base/BaseTooltip.ts +385 -382
  60. package/src/base/BaseValueAxis.ts +583 -580
  61. package/src/base/types.ts +2 -2
  62. package/src/const.ts +30 -30
  63. package/src/grid/defaults.ts +246 -244
  64. package/src/grid/gridObservables.ts +554 -545
  65. package/src/grid/index.ts +16 -16
  66. package/src/grid/plugins/Bars.ts +69 -69
  67. package/src/grid/plugins/BarsPN.ts +66 -66
  68. package/src/grid/plugins/BarsTriangle.ts +73 -73
  69. package/src/grid/plugins/Dots.ts +68 -68
  70. package/src/grid/plugins/GridLegend.ts +107 -107
  71. package/src/grid/plugins/GridTooltip.ts +66 -66
  72. package/src/grid/plugins/GridZoom.ts +218 -218
  73. package/src/grid/plugins/GroupAux.ts +1103 -1098
  74. package/src/grid/plugins/GroupAxis.ts +97 -97
  75. package/src/grid/plugins/LineAreas.ts +65 -65
  76. package/src/grid/plugins/Lines.ts +59 -59
  77. package/src/grid/plugins/{BarStack.ts → StackedBar.ts} +64 -64
  78. package/src/grid/plugins/{ValueStackAxis.ts → StackedValueAxis.ts} +96 -95
  79. package/src/grid/plugins/ValueAxis.ts +94 -93
  80. package/src/index.ts +6 -9
  81. package/src/multiGrid/defaults.ts +224 -224
  82. package/src/multiGrid/index.ts +15 -15
  83. package/src/multiGrid/multiGridObservables.ts +49 -49
  84. package/src/multiGrid/plugins/MultiBars.ts +108 -108
  85. package/src/multiGrid/plugins/MultiBarsTriangle.ts +114 -114
  86. package/src/multiGrid/plugins/MultiDots.ts +102 -102
  87. package/src/multiGrid/plugins/MultiGridLegend.ts +159 -159
  88. package/src/multiGrid/plugins/MultiGridTooltip.ts +66 -66
  89. package/src/multiGrid/plugins/MultiGroupAxis.ts +137 -137
  90. package/src/multiGrid/plugins/MultiLineAreas.ts +107 -107
  91. package/src/multiGrid/plugins/MultiLines.ts +101 -101
  92. package/src/multiGrid/plugins/{MultiBarStack.ts → MultiStackedBar.ts} +106 -106
  93. package/src/multiGrid/plugins/{MultiValueStackAxis.ts → MultiStackedValueAxis.ts} +134 -133
  94. package/src/multiGrid/plugins/MultiValueAxis.ts +134 -133
  95. package/src/multiGrid/plugins/{OverlappingValueStackAxes.ts → OverlappingStackedValueAxes.ts} +299 -298
  96. package/src/multiGrid/plugins/OverlappingValueAxes.ts +300 -299
  97. package/src/multiValue/defaults.ts +167 -0
  98. package/src/multiValue/index.ts +9 -0
  99. package/src/multiValue/multiValueObservables.ts +297 -0
  100. package/src/multiValue/plugins/MultiValueLegend.ts +107 -0
  101. package/src/multiValue/plugins/MultiValueTooltip.ts +66 -0
  102. package/src/multiValue/plugins/Scatter.ts +426 -0
  103. package/src/multiValue/plugins/ScatterBubbles.ts +554 -0
  104. package/src/multiValue/plugins/XYAux.ts +682 -0
  105. package/src/multiValue/plugins/XYAxes.ts +685 -0
  106. package/src/multiValue/plugins/XYZoom.ts +300 -0
  107. package/src/noneData/defaults.ts +102 -102
  108. package/src/noneData/index.ts +3 -3
  109. package/src/noneData/plugins/Container.ts +28 -28
  110. package/src/noneData/plugins/Tooltip.ts +374 -374
  111. package/src/relationship/defaults.ts +196 -0
  112. package/src/relationship/index.ts +5 -0
  113. package/src/relationship/plugins/ForceDirected.ts +1167 -0
  114. package/src/relationship/plugins/ForceDirectedBubbles.ts +1391 -0
  115. package/src/relationship/plugins/RelationshipLegend.ts +100 -0
  116. package/src/relationship/plugins/RelationshipTooltip.ts +66 -0
  117. package/src/relationship/relationshipObservables.ts +50 -0
  118. package/src/series/defaults.ts +206 -206
  119. package/src/series/index.ts +9 -9
  120. package/src/series/plugins/Bubbles.ts +606 -603
  121. package/src/series/plugins/Pie.ts +623 -623
  122. package/src/series/plugins/PieEventTexts.ts +284 -283
  123. package/src/series/plugins/PieLabels.ts +640 -640
  124. package/src/series/plugins/Rose.ts +516 -516
  125. package/src/series/plugins/RoseLabels.ts +600 -600
  126. package/src/series/plugins/SeriesLegend.ts +107 -107
  127. package/src/series/plugins/SeriesTooltip.ts +66 -66
  128. package/src/series/seriesObservables.ts +145 -145
  129. package/src/series/seriesUtils.ts +51 -51
  130. package/src/tree/defaults.ts +78 -78
  131. package/src/tree/index.ts +4 -4
  132. package/src/tree/plugins/TreeLegend.ts +100 -107
  133. package/src/tree/plugins/TreeMap.ts +333 -333
  134. package/src/tree/plugins/TreeTooltip.ts +66 -66
  135. package/src/utils/commonUtils.ts +21 -21
  136. package/src/utils/d3Graphics.ts +174 -174
  137. package/src/utils/d3Utils.ts +74 -73
  138. package/src/utils/observables.ts +14 -14
  139. package/src/utils/orbchartsUtils.ts +116 -100
  140. package/tsconfig.base.json +13 -13
  141. package/tsconfig.json +2 -2
  142. package/vite.config.js +22 -22
  143. package/dist/src/grid/plugins/BarStack.d.ts +0 -1
  144. package/dist/src/grid/plugins/ValueStackAxis.d.ts +0 -1
  145. package/dist/src/multiGrid/plugins/MultiBarStack.d.ts +0 -1
  146. package/dist/src/multiGrid/plugins/MultiValueStackAxis.d.ts +0 -1
  147. package/dist/src/multiGrid/plugins/OverlappingValueStackAxes.d.ts +0 -1
  148. package/dist/src/multiValue/plugins/Scatter.d.ts +0 -0
  149. package/dist/src/multiValue/plugins/ScatterAxes.d.ts +0 -0
  150. package/dist/src/noneData/plugins/Container.d.ts +0 -1
  151. package/dist/src/noneData/plugins/Tooltip.d.ts +0 -3
  152. package/dist/src/relationship/index.d.ts +0 -0
  153. package/dist/src/relationship/plugins/Relationship.d.ts +0 -0
  154. package/src/base/BaseGroupArea.ts +0 -0
  155. package/src/multiValue/plugins/ScatterAxes.ts +0 -0
  156. package/src/relationship/plugins/Relationship.ts +0 -0
  157. /package/dist/{lib → orbcharts-plugins-basic/lib}/core-types.d.ts +0 -0
  158. /package/dist/{lib → orbcharts-plugins-basic/lib}/core.d.ts +0 -0
  159. /package/dist/{lib → orbcharts-plugins-basic/lib}/plugins-basic-types.d.ts +0 -0
  160. /package/dist/{src → orbcharts-plugins-basic/src}/base/BaseTooltip.d.ts +0 -0
  161. /package/dist/{src → orbcharts-plugins-basic/src}/base/types.d.ts +0 -0
  162. /package/dist/{src → orbcharts-plugins-basic/src}/const.d.ts +0 -0
  163. /package/dist/{src → orbcharts-plugins-basic/src}/grid/plugins/Bars.d.ts +0 -0
  164. /package/dist/{src → orbcharts-plugins-basic/src}/grid/plugins/BarsPN.d.ts +0 -0
  165. /package/dist/{src → orbcharts-plugins-basic/src}/grid/plugins/BarsTriangle.d.ts +0 -0
  166. /package/dist/{src → orbcharts-plugins-basic/src}/grid/plugins/Dots.d.ts +0 -0
  167. /package/dist/{src → orbcharts-plugins-basic/src}/grid/plugins/GridLegend.d.ts +0 -0
  168. /package/dist/{src → orbcharts-plugins-basic/src}/grid/plugins/GridTooltip.d.ts +0 -0
  169. /package/dist/{src → orbcharts-plugins-basic/src}/grid/plugins/GridZoom.d.ts +0 -0
  170. /package/dist/{src → orbcharts-plugins-basic/src}/grid/plugins/GroupAux.d.ts +0 -0
  171. /package/dist/{src → orbcharts-plugins-basic/src}/grid/plugins/GroupAxis.d.ts +0 -0
  172. /package/dist/{src → orbcharts-plugins-basic/src}/grid/plugins/LineAreas.d.ts +0 -0
  173. /package/dist/{src → orbcharts-plugins-basic/src}/grid/plugins/Lines.d.ts +0 -0
  174. /package/dist/{src → orbcharts-plugins-basic/src}/grid/plugins/ValueAxis.d.ts +0 -0
  175. /package/dist/{src → orbcharts-plugins-basic/src}/multiGrid/multiGridObservables.d.ts +0 -0
  176. /package/dist/{src → orbcharts-plugins-basic/src}/multiGrid/plugins/MultiBars.d.ts +0 -0
  177. /package/dist/{src → orbcharts-plugins-basic/src}/multiGrid/plugins/MultiBarsTriangle.d.ts +0 -0
  178. /package/dist/{src → orbcharts-plugins-basic/src}/multiGrid/plugins/MultiDots.d.ts +0 -0
  179. /package/dist/{src → orbcharts-plugins-basic/src}/multiGrid/plugins/MultiGridLegend.d.ts +0 -0
  180. /package/dist/{src → orbcharts-plugins-basic/src}/multiGrid/plugins/MultiGridTooltip.d.ts +0 -0
  181. /package/dist/{src → orbcharts-plugins-basic/src}/multiGrid/plugins/MultiGroupAxis.d.ts +0 -0
  182. /package/dist/{src → orbcharts-plugins-basic/src}/multiGrid/plugins/MultiLineAreas.d.ts +0 -0
  183. /package/dist/{src → orbcharts-plugins-basic/src}/multiGrid/plugins/MultiLines.d.ts +0 -0
  184. /package/dist/{src → orbcharts-plugins-basic/src}/multiGrid/plugins/MultiValueAxis.d.ts +0 -0
  185. /package/dist/{src → orbcharts-plugins-basic/src}/multiGrid/plugins/OverlappingValueAxes.d.ts +0 -0
  186. /package/dist/{src/grid → orbcharts-plugins-basic/src/multiValue}/plugins/Ranking.d.ts +0 -0
  187. /package/dist/{src/grid → orbcharts-plugins-basic/src/multiValue}/plugins/RankingAxis.d.ts +0 -0
  188. /package/dist/{src → orbcharts-plugins-basic/src}/noneData/defaults.d.ts +0 -0
  189. /package/dist/{src → orbcharts-plugins-basic/src}/noneData/index.d.ts +0 -0
  190. /package/dist/{src/base/BaseGroupArea.d.ts → orbcharts-plugins-basic/src/noneData/plugins/Container.d.ts} +0 -0
  191. /package/dist/{src/multiValue/index.d.ts → orbcharts-plugins-basic/src/noneData/plugins/Tooltip.d.ts} +0 -0
  192. /package/dist/{src → orbcharts-plugins-basic/src}/series/defaults.d.ts +0 -0
  193. /package/dist/{src → orbcharts-plugins-basic/src}/series/index.d.ts +0 -0
  194. /package/dist/{src → orbcharts-plugins-basic/src}/series/plugins/Bubbles.d.ts +0 -0
  195. /package/dist/{src → orbcharts-plugins-basic/src}/series/plugins/Pie.d.ts +0 -0
  196. /package/dist/{src → orbcharts-plugins-basic/src}/series/plugins/PieEventTexts.d.ts +0 -0
  197. /package/dist/{src → orbcharts-plugins-basic/src}/series/plugins/PieLabels.d.ts +0 -0
  198. /package/dist/{src → orbcharts-plugins-basic/src}/series/plugins/Rose.d.ts +0 -0
  199. /package/dist/{src → orbcharts-plugins-basic/src}/series/plugins/RoseLabels.d.ts +0 -0
  200. /package/dist/{src → orbcharts-plugins-basic/src}/series/plugins/SeriesLegend.d.ts +0 -0
  201. /package/dist/{src → orbcharts-plugins-basic/src}/series/plugins/SeriesTooltip.d.ts +0 -0
  202. /package/dist/{src → orbcharts-plugins-basic/src}/series/plugins/Waffle.d.ts +0 -0
  203. /package/dist/{src → orbcharts-plugins-basic/src}/series/seriesUtils.d.ts +0 -0
  204. /package/dist/{src → orbcharts-plugins-basic/src}/tree/defaults.d.ts +0 -0
  205. /package/dist/{src → orbcharts-plugins-basic/src}/tree/index.d.ts +0 -0
  206. /package/dist/{src → orbcharts-plugins-basic/src}/tree/plugins/TreeLegend.d.ts +0 -0
  207. /package/dist/{src → orbcharts-plugins-basic/src}/tree/plugins/TreeMap.d.ts +0 -0
  208. /package/dist/{src → orbcharts-plugins-basic/src}/tree/plugins/TreeTooltip.d.ts +0 -0
  209. /package/dist/{src → orbcharts-plugins-basic/src}/utils/d3Graphics.d.ts +0 -0
  210. /package/dist/{vite.config.d.ts → orbcharts-plugins-basic/vite.config.d.ts} +0 -0
  211. /package/src/{grid → multiValue}/plugins/Ranking.ts +0 -0
  212. /package/src/{grid → multiValue}/plugins/RankingAxis.ts +0 -0
@@ -1,14 +1,14 @@
1
- import * as d3 from 'd3'
2
- import { Observable, merge, distinctUntilChanged, fromEvent } from 'rxjs'
3
-
4
- export function d3EventObservable(selection: d3.Selection<any, any, any, any>, event: any) {
5
- // Start with an observable that will never emit
6
- let obs = new Observable(() => {});
7
- selection.each(function () {
8
- // Create observables from each of the elements
9
- const events = fromEvent(this as any, event);
10
- // Merge the observables into one
11
- obs = merge(obs, events);
12
- });
13
- return obs;
14
- }
1
+ import * as d3 from 'd3'
2
+ import { Observable, merge, distinctUntilChanged, fromEvent } from 'rxjs'
3
+
4
+ export function d3EventObservable(selection: d3.Selection<any, any, any, any>, event: any) {
5
+ // Start with an observable that will never emit
6
+ let obs: Observable<MouseEvent> = new Observable(() => {});
7
+ selection.each(function () {
8
+ // Create observables from each of the elements
9
+ const events: Observable<MouseEvent> = fromEvent(this, event);
10
+ // Merge the observables into one
11
+ obs = merge(obs, events);
12
+ });
13
+ return obs;
14
+ }
@@ -1,100 +1,116 @@
1
- import type {
2
- AxisPosition,
3
- ColorType,
4
- ChartParams,
5
- ComputedDatumBase,
6
- ComputedDatumSeriesValue,
7
- ComputedDatumCategoryValue } from '../../lib/core-types'
8
- import { getMinAndMax } from './commonUtils'
9
-
10
- // 取得最小及最大值 - datum格式陣列資料
11
- export function getMinAndMaxValue (data: ComputedDatumBase[]): [number, number] {
12
- const arr = data
13
- .filter(d => d.value != null && d.visible != false)
14
- .map(d => d.value as number)
15
- return getMinAndMax(arr)
16
- }
17
-
18
- // 取得colorType顏色
19
- export function getColor (colorType: ColorType, fullChartParams: ChartParams) {
20
- const colors = fullChartParams.colors[fullChartParams.colorScheme]
21
- // 對應series資料中第1個顏色
22
- if (colorType === 'series') {
23
- return colors.series[0]
24
- }
25
- // 對應colorType設定的顏色
26
- // return colors[colorType] != null
27
- // ? colors[colorType]
28
- // : colors.primary
29
- return colorType == 'none'
30
- ? 'none'
31
- : colors[colorType] != undefined
32
- ? colors[colorType]
33
- : colors.primary // 如果比對不到
34
- }
35
-
36
- export function getSeriesValueColor () {
37
-
38
- }
39
-
40
- export function getCategoryValueColor ({ datum, colorType, fullChartParams }: { datum: ComputedDatumCategoryValue, colorType: ColorType, fullChartParams: ChartParams }) {
41
-
42
- }
43
-
44
- // // 取得Series顏色 @Q@ 待重構完後刪除
45
- // export function getSeriesColor (seriesIndex: number, fullChartParams: ChartParams) {
46
- // const colorIndex = seriesIndex < fullChartParams.colors[fullChartParams.colorScheme].series.length
47
- // ? seriesIndex
48
- // : seriesIndex % fullChartParams.colors[fullChartParams.colorScheme].series.length
49
- // return fullChartParams.colors[fullChartParams.colorScheme].series[colorIndex]
50
- // }
51
-
52
- // 取得Datum顏色 @Q@ 待重構完後刪除
53
- export function getDatumColor ({ datum, colorType, fullChartParams }: { datum: ComputedDatumBase, colorType: ColorType, fullChartParams: ChartParams }) {
54
- // 對應series資料中的顏色
55
- if (colorType === 'series') {
56
- if ((datum as unknown as ComputedDatumSeriesValue).color) {
57
- return (datum as unknown as ComputedDatumSeriesValue).color
58
- } else {
59
- // 非series類型的資料則回傳陣列中第1個顏色
60
- return fullChartParams.colors[fullChartParams.colorScheme].series[0]
61
- }
62
- }
63
- // 對應colorType設定的顏色
64
- return colorType == 'none'
65
- ? 'none'
66
- : fullChartParams.colors[fullChartParams.colorScheme][colorType] != undefined
67
- ? fullChartParams.colors[fullChartParams.colorScheme][colorType]
68
- : fullChartParams.colors[fullChartParams.colorScheme].primary
69
- }
70
-
71
- export function getClassName (pluginName: string, elementName: string, modifier?: string) {
72
- const modifierText = modifier ? `--${modifier}` : ''
73
- return `orbcharts-${pluginName}__${elementName}${modifierText}`
74
- }
75
-
76
- export function getUniID (pluginName: string, elementName: string) {
77
- const textLength = 5
78
- // 英文+數字
79
- const randomText: string = Math.random().toString(36).substr(2, textLength)
80
-
81
- return getClassName(pluginName, elementName, randomText)
82
- }
83
-
84
-
85
- export function calcAxesSize ({ xAxisPosition, yAxisPosition, width, height }: {
86
- xAxisPosition: AxisPosition
87
- yAxisPosition: AxisPosition
88
- width: number
89
- height: number
90
- }) {
91
- if ((xAxisPosition === 'bottom' || xAxisPosition === 'top') && (yAxisPosition === 'left' || yAxisPosition === 'right')) {
92
- return { width, height }
93
- } else if ((xAxisPosition === 'left' || xAxisPosition === 'right') && (yAxisPosition === 'bottom' || yAxisPosition === 'top')) {
94
- return {
95
- width: height,
96
- height: width
97
- }
98
- }
99
- }
100
-
1
+ import type {
2
+ AxisPosition,
3
+ ColorType,
4
+ ChartParams,
5
+ ComputedDatumBase,
6
+ ComputedDatumBaseValue,
7
+ ComputedDatumBaseSeries,
8
+ ComputedDatumBaseCategory } from '../../lib/core-types'
9
+ import { getMinMax } from './commonUtils'
10
+
11
+ // 取得最小及最大值 - datum格式陣列資料
12
+ export function getMinMaxValue (data: (ComputedDatumBase & ComputedDatumBaseValue)[]): [number, number] {
13
+ const arr = data
14
+ .filter(d => d.value != null && d.visible != false)
15
+ .map(d => d.value as number)
16
+ return getMinMax(arr)
17
+ }
18
+
19
+ // 取得colorType顏色
20
+ export function getColor (colorType: ColorType, fullChartParams: ChartParams) {
21
+ const colors = fullChartParams.colors[fullChartParams.colorScheme]
22
+ // 對應series資料中第1個顏色
23
+ if (colorType === 'label') {
24
+ return colors.label[0]
25
+ }
26
+ // 對應colorType設定的顏色
27
+ // return colors[colorType] != null
28
+ // ? colors[colorType]
29
+ // : colors.primary
30
+ return colorType == 'none'
31
+ ? 'none'
32
+ : colors[colorType] != undefined
33
+ ? colors[colorType]
34
+ : colors.primary // 如果比對不到
35
+ }
36
+
37
+ export function getSeriesValueColor () {
38
+
39
+ }
40
+
41
+ export function getCategoryValueColor ({ datum, colorType, fullChartParams }: { datum: ComputedDatumBaseCategory, colorType: ColorType, fullChartParams: ChartParams }) {
42
+
43
+ }
44
+
45
+ // // 取得Series顏色 @Q@ 待重構完後刪除
46
+ // export function getSeriesColor (seriesIndex: number, fullChartParams: ChartParams) {
47
+ // const colorIndex = seriesIndex < fullChartParams.colors[fullChartParams.colorScheme].series.length
48
+ // ? seriesIndex
49
+ // : seriesIndex % fullChartParams.colors[fullChartParams.colorScheme].series.length
50
+ // return fullChartParams.colors[fullChartParams.colorScheme].series[colorIndex]
51
+ // }
52
+
53
+ // 取得Datum顏色 @Q@ 待重構完後刪除
54
+ export function getDatumColor ({ datum, colorType, fullChartParams }: { datum: ComputedDatumBase, colorType: ColorType, fullChartParams: ChartParams }) {
55
+ // 對應series資料中的顏色
56
+ if (colorType === 'label') {
57
+ if ((datum as unknown as ComputedDatumBaseSeries).color) {
58
+ return (datum as unknown as ComputedDatumBaseSeries).color
59
+ } else {
60
+ // series類型的資料則回傳陣列中第1個顏色
61
+ return fullChartParams.colors[fullChartParams.colorScheme].label[0]
62
+ }
63
+ }
64
+ // 對應colorType設定的顏色
65
+ return colorType == 'none'
66
+ ? 'none'
67
+ : fullChartParams.colors[fullChartParams.colorScheme][colorType] != undefined
68
+ ? fullChartParams.colors[fullChartParams.colorScheme][colorType]
69
+ : fullChartParams.colors[fullChartParams.colorScheme].primary
70
+ }
71
+
72
+ export function getClassName (pluginName: string, elementName: string, modifier?: string) {
73
+ const modifierText = modifier ? `--${modifier}` : ''
74
+ return `orbcharts-${pluginName}__${elementName}${modifierText}`
75
+ }
76
+
77
+ export function getUniID (pluginName: string, elementName: string) {
78
+ const textLength = 5
79
+ // 英文+數字
80
+ const randomText: string = Math.random().toString(36).substr(2, textLength)
81
+
82
+ return getClassName(pluginName, elementName, randomText)
83
+ }
84
+
85
+
86
+ export function calcAxesSize ({ xAxisPosition, yAxisPosition, width, height }: {
87
+ xAxisPosition: AxisPosition
88
+ yAxisPosition: AxisPosition
89
+ width: number
90
+ height: number
91
+ }) {
92
+ if ((xAxisPosition === 'bottom' || xAxisPosition === 'top') && (yAxisPosition === 'left' || yAxisPosition === 'right')) {
93
+ return { width, height }
94
+ } else if ((xAxisPosition === 'left' || xAxisPosition === 'right') && (yAxisPosition === 'bottom' || yAxisPosition === 'top')) {
95
+ return {
96
+ width: height,
97
+ height: width
98
+ }
99
+ }
100
+ }
101
+
102
+ // export function getTicks (minValue: number, maxValue: number, defaultTicks: number | null) {
103
+ // let valueLength = maxValue - minValue
104
+ // if (defaultTicks === null) {
105
+ // if (valueLength <= 1) {
106
+ // return 1
107
+ // } else {
108
+ // // d3.js自動判斷
109
+ // return null
110
+ // }
111
+ // } else if (valueLength < defaultTicks) {
112
+ // return Math.ceil(valueLength)
113
+ // } else {
114
+ // return defaultTicks
115
+ // }
116
+ // }
@@ -1,14 +1,14 @@
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
- }
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.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-plugins-basic',
18
- formats: ["es", "umd"],
19
- fileName: format => `orbcharts-plugins-basic.${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-plugins-basic',
18
+ formats: ["es", "umd"],
19
+ fileName: format => `orbcharts-plugins-basic.${format}.js`
20
+ },
21
+ }
22
+ }
23
23
  })
@@ -1 +0,0 @@
1
- export declare const BarStack: import('@orbcharts/core-types/dist/src/types/Plugin').PluginConstructor<"grid", "BarStack", import('@orbcharts/plugins-basic-types').BarStackParams>;
@@ -1 +0,0 @@
1
- export declare const ValueStackAxis: import('@orbcharts/core-types/dist/src/types/Plugin').PluginConstructor<"grid", "ValueStackAxis", import('@orbcharts/plugins-basic-types').ValueStackAxisParams>;
@@ -1 +0,0 @@
1
- export declare const MultiBarStack: import('@orbcharts/core-types/dist/src/types/Plugin').PluginConstructor<"multiGrid", "MultiBarStack", import('@orbcharts/plugins-basic-types').MultiBarStackParams>;
@@ -1 +0,0 @@
1
- export declare const MultiValueStackAxis: import('@orbcharts/core-types/dist/src/types/Plugin').PluginConstructor<"multiGrid", "MultiValueStackAxis", import('@orbcharts/plugins-basic-types').MultiValueAxisParams>;
@@ -1 +0,0 @@
1
- export declare const OverlappingValueStackAxes: import('@orbcharts/core-types/dist/src/types/Plugin').PluginConstructor<"multiGrid", "OverlappingValueStackAxes", import('@orbcharts/plugins-basic-types').OverlappingValueStackAxesParams>;
File without changes
File without changes
@@ -1 +0,0 @@
1
- export declare const Container: import('@orbcharts/core-types/dist/src/types/Plugin').PluginConstructor<any, "Container", import('@orbcharts/plugins-basic-types').ContainerPluginParams>;
@@ -1,3 +0,0 @@
1
- import { PluginConstructor } from '../../../lib/core-types';
2
-
3
- export declare const Tooltip: PluginConstructor<any, "Tooltip", import('@orbcharts/plugins-basic-types').TooltipParams>;
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes