@semcore/d3-chart 2.2.6 → 2.3.0-1

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 (217) hide show
  1. package/CHANGELOG.md +3 -9
  2. package/lib/cjs/Area.js +16 -9
  3. package/lib/cjs/Area.js.map +1 -1
  4. package/lib/cjs/Axis.js +56 -17
  5. package/lib/cjs/Axis.js.map +1 -1
  6. package/lib/cjs/Bar.js +20 -9
  7. package/lib/cjs/Bar.js.map +1 -1
  8. package/lib/cjs/Bubble.js +20 -11
  9. package/lib/cjs/Bubble.js.map +1 -1
  10. package/lib/cjs/ClipPath.js +1 -0
  11. package/lib/cjs/ClipPath.js.map +1 -1
  12. package/lib/cjs/Donut.js +22 -12
  13. package/lib/cjs/Donut.js.map +1 -1
  14. package/lib/cjs/Dots.js +10 -9
  15. package/lib/cjs/Dots.js.map +1 -1
  16. package/lib/cjs/GroupBar.js +12 -8
  17. package/lib/cjs/GroupBar.js.map +1 -1
  18. package/lib/cjs/HorizontalBar.js +20 -9
  19. package/lib/cjs/HorizontalBar.js.map +1 -1
  20. package/lib/cjs/Hover.js +8 -4
  21. package/lib/cjs/Hover.js.map +1 -1
  22. package/lib/cjs/Line.js +15 -9
  23. package/lib/cjs/Line.js.map +1 -1
  24. package/lib/cjs/Plot.js +46 -8
  25. package/lib/cjs/Plot.js.map +1 -1
  26. package/lib/cjs/RadialTree.js +25 -13
  27. package/lib/cjs/RadialTree.js.map +1 -1
  28. package/lib/cjs/ReferenceLine.js +10 -10
  29. package/lib/cjs/ResponsiveContainer.js +0 -1
  30. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  31. package/lib/cjs/ScatterPlot.js +17 -8
  32. package/lib/cjs/ScatterPlot.js.map +1 -1
  33. package/lib/cjs/StackBar.js +12 -8
  34. package/lib/cjs/StackBar.js.map +1 -1
  35. package/lib/cjs/StackedArea.js +8 -7
  36. package/lib/cjs/StackedArea.js.map +1 -1
  37. package/lib/cjs/Tooltip.js +8 -8
  38. package/lib/cjs/Venn.js +25 -9
  39. package/lib/cjs/Venn.js.map +1 -1
  40. package/lib/cjs/a11y/PlotA11yModule.js +185 -0
  41. package/lib/cjs/a11y/PlotA11yModule.js.map +1 -0
  42. package/lib/cjs/a11y/PlotA11yView.js +285 -0
  43. package/lib/cjs/a11y/PlotA11yView.js.map +1 -0
  44. package/lib/cjs/a11y/bezier.js +44 -0
  45. package/lib/cjs/a11y/bezier.js.map +1 -0
  46. package/lib/cjs/a11y/datasets/charts-a11y.js +591 -0
  47. package/lib/cjs/a11y/datasets/charts-a11y.js.map +1 -0
  48. package/lib/cjs/a11y/datasets/gold.json +7961 -0
  49. package/lib/cjs/a11y/datasets/imdb.json +10002 -0
  50. package/lib/cjs/a11y/datasets/readme.md +5 -0
  51. package/lib/cjs/a11y/datasets/stores.json +6274 -0
  52. package/lib/cjs/a11y/datasets/titanic.json +5436 -0
  53. package/lib/cjs/a11y/focus.js +57 -0
  54. package/lib/cjs/a11y/focus.js.map +1 -0
  55. package/lib/cjs/a11y/hints.js +141 -0
  56. package/lib/cjs/a11y/hints.js.map +1 -0
  57. package/lib/cjs/a11y/insights.js +785 -0
  58. package/lib/cjs/a11y/insights.js.map +1 -0
  59. package/lib/cjs/a11y/intl.js +31 -0
  60. package/lib/cjs/a11y/intl.js.map +1 -0
  61. package/lib/cjs/a11y/locale.js +48 -0
  62. package/lib/cjs/a11y/locale.js.map +1 -0
  63. package/lib/cjs/a11y/serialize.js +439 -0
  64. package/lib/cjs/a11y/serialize.js.map +1 -0
  65. package/lib/cjs/a11y/summarize.js +21 -0
  66. package/lib/cjs/a11y/summarize.js.map +1 -0
  67. package/lib/cjs/a11y/translations/module/de.json +5 -0
  68. package/lib/cjs/a11y/translations/module/en.json +5 -0
  69. package/lib/cjs/a11y/translations/module/es.json +5 -0
  70. package/lib/cjs/a11y/translations/module/fr.json +5 -0
  71. package/lib/cjs/a11y/translations/module/it.json +5 -0
  72. package/lib/cjs/a11y/translations/module/ja.json +5 -0
  73. package/lib/cjs/a11y/translations/module/ko.json +5 -0
  74. package/lib/cjs/a11y/translations/module/pt.json +5 -0
  75. package/lib/cjs/a11y/translations/module/tr.json +5 -0
  76. package/lib/cjs/a11y/translations/module/translations.js +46 -0
  77. package/lib/cjs/a11y/translations/module/translations.js.map +1 -0
  78. package/lib/cjs/a11y/translations/module/vi.json +5 -0
  79. package/lib/cjs/a11y/translations/module/zh.json +5 -0
  80. package/lib/cjs/a11y/translations/view/de.json +42 -0
  81. package/lib/cjs/a11y/translations/view/en.csv +41 -0
  82. package/lib/cjs/a11y/translations/view/en.json +42 -0
  83. package/lib/cjs/a11y/translations/view/es.json +42 -0
  84. package/lib/cjs/a11y/translations/view/fr.json +42 -0
  85. package/lib/cjs/a11y/translations/view/it.json +42 -0
  86. package/lib/cjs/a11y/translations/view/ja.json +42 -0
  87. package/lib/cjs/a11y/translations/view/ko.json +42 -0
  88. package/lib/cjs/a11y/translations/view/pt.json +42 -0
  89. package/lib/cjs/a11y/translations/view/tr.json +42 -0
  90. package/lib/cjs/a11y/translations/view/translations.js +46 -0
  91. package/lib/cjs/a11y/translations/view/translations.js.map +1 -0
  92. package/lib/cjs/a11y/translations/view/vi.json +42 -0
  93. package/lib/cjs/a11y/translations/view/zh.json +42 -0
  94. package/lib/cjs/createElement.js +3 -1
  95. package/lib/cjs/createElement.js.map +1 -1
  96. package/lib/cjs/style/plot.shadow.css +10 -0
  97. package/lib/cjs/style/plotA11yModule.shadow.css +13 -0
  98. package/lib/cjs/style/plotA11yView.shadow.css +39 -0
  99. package/lib/cjs/types/Plot.d.ts +75 -0
  100. package/lib/cjs/utils.js +9 -1
  101. package/lib/cjs/utils.js.map +1 -1
  102. package/lib/es6/Area.js +16 -9
  103. package/lib/es6/Area.js.map +1 -1
  104. package/lib/es6/Axis.js +56 -17
  105. package/lib/es6/Axis.js.map +1 -1
  106. package/lib/es6/Bar.js +20 -9
  107. package/lib/es6/Bar.js.map +1 -1
  108. package/lib/es6/Bubble.js +20 -11
  109. package/lib/es6/Bubble.js.map +1 -1
  110. package/lib/es6/ClipPath.js +1 -0
  111. package/lib/es6/ClipPath.js.map +1 -1
  112. package/lib/es6/Donut.js +22 -12
  113. package/lib/es6/Donut.js.map +1 -1
  114. package/lib/es6/Dots.js +10 -9
  115. package/lib/es6/Dots.js.map +1 -1
  116. package/lib/es6/GroupBar.js +12 -8
  117. package/lib/es6/GroupBar.js.map +1 -1
  118. package/lib/es6/HorizontalBar.js +20 -9
  119. package/lib/es6/HorizontalBar.js.map +1 -1
  120. package/lib/es6/Hover.js +8 -4
  121. package/lib/es6/Hover.js.map +1 -1
  122. package/lib/es6/Line.js +15 -9
  123. package/lib/es6/Line.js.map +1 -1
  124. package/lib/es6/Plot.js +48 -9
  125. package/lib/es6/Plot.js.map +1 -1
  126. package/lib/es6/RadialTree.js +25 -13
  127. package/lib/es6/RadialTree.js.map +1 -1
  128. package/lib/es6/ReferenceLine.js +10 -10
  129. package/lib/es6/ResponsiveContainer.js +0 -1
  130. package/lib/es6/ResponsiveContainer.js.map +1 -1
  131. package/lib/es6/ScatterPlot.js +17 -8
  132. package/lib/es6/ScatterPlot.js.map +1 -1
  133. package/lib/es6/StackBar.js +12 -8
  134. package/lib/es6/StackBar.js.map +1 -1
  135. package/lib/es6/StackedArea.js +8 -7
  136. package/lib/es6/StackedArea.js.map +1 -1
  137. package/lib/es6/Tooltip.js +8 -8
  138. package/lib/es6/Venn.js +25 -9
  139. package/lib/es6/Venn.js.map +1 -1
  140. package/lib/es6/a11y/PlotA11yModule.js +160 -0
  141. package/lib/es6/a11y/PlotA11yModule.js.map +1 -0
  142. package/lib/es6/a11y/PlotA11yView.js +254 -0
  143. package/lib/es6/a11y/PlotA11yView.js.map +1 -0
  144. package/lib/es6/a11y/bezier.js +35 -0
  145. package/lib/es6/a11y/bezier.js.map +1 -0
  146. package/lib/es6/a11y/datasets/charts-a11y.js +590 -0
  147. package/lib/es6/a11y/datasets/charts-a11y.js.map +1 -0
  148. package/lib/es6/a11y/datasets/gold.json +7961 -0
  149. package/lib/es6/a11y/datasets/imdb.json +10002 -0
  150. package/lib/es6/a11y/datasets/readme.md +5 -0
  151. package/lib/es6/a11y/datasets/stores.json +6274 -0
  152. package/lib/es6/a11y/datasets/titanic.json +5436 -0
  153. package/lib/es6/a11y/focus.js +48 -0
  154. package/lib/es6/a11y/focus.js.map +1 -0
  155. package/lib/es6/a11y/hints.js +123 -0
  156. package/lib/es6/a11y/hints.js.map +1 -0
  157. package/lib/es6/a11y/insights.js +779 -0
  158. package/lib/es6/a11y/insights.js.map +1 -0
  159. package/lib/es6/a11y/intl.js +18 -0
  160. package/lib/es6/a11y/intl.js.map +1 -0
  161. package/lib/es6/a11y/locale.js +36 -0
  162. package/lib/es6/a11y/locale.js.map +1 -0
  163. package/lib/es6/a11y/serialize.js +423 -0
  164. package/lib/es6/a11y/serialize.js.map +1 -0
  165. package/lib/es6/a11y/summarize.js +10 -0
  166. package/lib/es6/a11y/summarize.js.map +1 -0
  167. package/lib/es6/a11y/translations/module/de.json +5 -0
  168. package/lib/es6/a11y/translations/module/en.json +5 -0
  169. package/lib/es6/a11y/translations/module/es.json +5 -0
  170. package/lib/es6/a11y/translations/module/fr.json +5 -0
  171. package/lib/es6/a11y/translations/module/it.json +5 -0
  172. package/lib/es6/a11y/translations/module/ja.json +5 -0
  173. package/lib/es6/a11y/translations/module/ko.json +5 -0
  174. package/lib/es6/a11y/translations/module/pt.json +5 -0
  175. package/lib/es6/a11y/translations/module/tr.json +5 -0
  176. package/lib/es6/a11y/translations/module/translations.js +25 -0
  177. package/lib/es6/a11y/translations/module/translations.js.map +1 -0
  178. package/lib/es6/a11y/translations/module/vi.json +5 -0
  179. package/lib/es6/a11y/translations/module/zh.json +5 -0
  180. package/lib/es6/a11y/translations/view/de.json +42 -0
  181. package/lib/es6/a11y/translations/view/en.csv +41 -0
  182. package/lib/es6/a11y/translations/view/en.json +42 -0
  183. package/lib/es6/a11y/translations/view/es.json +42 -0
  184. package/lib/es6/a11y/translations/view/fr.json +42 -0
  185. package/lib/es6/a11y/translations/view/it.json +42 -0
  186. package/lib/es6/a11y/translations/view/ja.json +42 -0
  187. package/lib/es6/a11y/translations/view/ko.json +42 -0
  188. package/lib/es6/a11y/translations/view/pt.json +42 -0
  189. package/lib/es6/a11y/translations/view/tr.json +42 -0
  190. package/lib/es6/a11y/translations/view/translations.js +25 -0
  191. package/lib/es6/a11y/translations/view/translations.js.map +1 -0
  192. package/lib/es6/a11y/translations/view/vi.json +42 -0
  193. package/lib/es6/a11y/translations/view/zh.json +42 -0
  194. package/lib/es6/createElement.js +3 -1
  195. package/lib/es6/createElement.js.map +1 -1
  196. package/lib/es6/style/plot.shadow.css +10 -0
  197. package/lib/es6/style/plotA11yModule.shadow.css +13 -0
  198. package/lib/es6/style/plotA11yView.shadow.css +39 -0
  199. package/lib/es6/types/Plot.d.ts +75 -0
  200. package/lib/es6/utils.js +5 -0
  201. package/lib/es6/utils.js.map +1 -1
  202. package/lib/types/Plot.d.ts +75 -0
  203. package/lib/types/a11y/PlotA11yModule.d.ts +12 -0
  204. package/lib/types/a11y/PlotA11yView.d.ts +3 -0
  205. package/lib/types/a11y/bezier.d.ts +8 -0
  206. package/lib/types/a11y/datasets/charts-a11y.d.ts +0 -0
  207. package/lib/types/a11y/focus.d.ts +5 -0
  208. package/lib/types/a11y/hints.d.ts +99 -0
  209. package/lib/types/a11y/insights.d.ts +54 -0
  210. package/lib/types/a11y/intl.d.ts +8 -0
  211. package/lib/types/a11y/locale.d.ts +3 -0
  212. package/lib/types/a11y/serialize.d.ts +16 -0
  213. package/lib/types/a11y/summarize.d.ts +2 -0
  214. package/lib/types/a11y/translations/module/translations.d.ts +5 -0
  215. package/lib/types/a11y/translations/view/translations.d.ts +5 -0
  216. package/lib/types/utils.d.ts +1 -0
  217. package/package.json +3 -2
@@ -0,0 +1,42 @@
1
+ {
2
+ "chart-summary": "O gráfico representa {entities} de {label}: {entitiesList}.",
3
+ "chart-summary-no-label": "O gráfico representa {entities}: {entitiesList}.",
4
+ "entity-type-time-series": "{count} séries temporais",
5
+ "entity-type-clusters-single-size": "{count} {count, plural, one {agrupamento} other {agrupamentos}} de tamanho {size}",
6
+ "entity-type-clusters-multiple-size": "{count} {count, plural, one {agrupamento} other {agrupamentos}} com tamanhos de {minSize} a {maxSize}",
7
+ "entity-type-clusters-label-anonymous": "agrupamento {relativeSize} de tamanho {size} perto do cruzamento entre {x} {xLabel} e {y} {yLabel}",
8
+ "entity-type-clusters-label": "agrupamento {relativeSize} {labels} de tamanho {size} perto do cruzamento entre {x} {xLabel} e {y} {yLabel}",
9
+ "entity-type-values": "{count} {count, plural, one {valor} other {valores}}",
10
+ "entity-type-grouped-values-single-size": "{groupsCount} {groupsCount, plural, one {grupo contendo} other {grupos, cada um contendo}} {valuesCount} {valuesCount, plural, one {valor} other {valores}}",
11
+ "entity-type-grouped-values-multiple-size": "{groupsCount} {groupsCount, plural, one {grupo contendo} other {grupos, cada um contendo}} de {minValuesCount} a {maxValuesCount} valores",
12
+ "value-labeled": "{label} com valor {value}",
13
+ "values-group": "O grupo {label} contém {values}",
14
+ "additional-axe": "Representação de {label} de {from} a {to}",
15
+ "additional-axe-no-label": "dados representados de {from} a {to}",
16
+ "time-series-detailed-trend": "{general}, também {locals}",
17
+ "time-series-general-trend": "{dataKey} {trend} de {from} a {to}",
18
+ "time-series-local-trend": "{trend} de {from} a {to}",
19
+ "trend-strong-reduction": "em forte queda",
20
+ "trend-reduction": "em queda",
21
+ "trend-weak-reduction": "em ligeira queda",
22
+ "trend-static": "constante em todo o período",
23
+ "trend-weak-growth": "em ligeira alta",
24
+ "trend-growth": "em alta",
25
+ "trend-strong-growth": "em forte alta",
26
+ "relative-size-significantly-smaller": "significativamente pequeno",
27
+ "relative-size-smaller": "pequeno",
28
+ "relative-size-slightly-smaller": "ligeiramente pequeno",
29
+ "relative-size-average": "médio",
30
+ "relative-size-slightly-bigger": "ligeiramente grande",
31
+ "relative-size-bigger": "grande",
32
+ "relative-size-significantly-bigger": "significativamente grande",
33
+ "ellipsis": "mais {leftCount}",
34
+ "view-default-plot-label": "Gráfico",
35
+ "view-label": "Dados sobre {plotLabel}",
36
+ "view-close": "Fechar",
37
+ "view-skip-plot": "Pular para o conteúdo depois do gráfico",
38
+ "view-go-to-table": "Pular para a tabela de dados do gráfico",
39
+ "view-data-summary": "Resumo dos dados",
40
+ "view-summary-placeholder": "Gerando resumo de dados do gráfico",
41
+ "view-table": "Tabela de dados"
42
+ }
@@ -0,0 +1,42 @@
1
+ {
2
+ "chart-summary": "Grafik, {entities}/{label} temsil ediyor: {entitiesList}.",
3
+ "chart-summary-no-label": "Grafik, {entities} temsil ediyor: {entitiesList}.",
4
+ "entity-type-time-series": "{count} zaman serisi",
5
+ "entity-type-clusters-single-size": "{size} boyutunda {count} {count, plural, one {küme} other {küme}}",
6
+ "entity-type-clusters-multiple-size": "{minSize} ila {maxSize} boyutlarında {count} {count, plural, one {küme} other {küme}}",
7
+ "entity-type-clusters-label-anonymous": "{x} {xLabel} ve {y} {yLabel} fiyatı kesişimi civarında {relativeSize} {size} boyutuna sahip küme",
8
+ "entity-type-clusters-label": "{x} {xLabel} ve {y} {yLabel} fiyatı kesişimi civarında {relativeSize} {size} boyutuna sahip {labels} küme",
9
+ "entity-type-values": "{count} {count, plural, one {değerinde} other {değerinde}}",
10
+ "entity-type-grouped-values-single-size": "{groupsCount} {groupsCount, plural, one {grup, her biri} other {grup, her biri}} {valuesCount} {valuesCount, plural, one {değerli} other {değerli}}",
11
+ "entity-type-grouped-values-multiple-size": "{groupsCount} {groupsCount, plural, one {grup, her biri} other {grup, her biri}} {minValuesCount} ila {maxValuesCount} değerlerinde",
12
+ "value-labeled": "{value} değerinde {label}",
13
+ "values-group": "Grup {label} {values} içerir",
14
+ "additional-axe": "{label} {from} ila {to} arasında temsil edilir",
15
+ "additional-axe-no-label": "{from} ila {to} arasındaki veriler temsil edilir",
16
+ "time-series-detailed-trend": "{general}, aynı zamanda {locals}",
17
+ "time-series-general-trend": "{dataKey} {trend} {from} ila {to}",
18
+ "time-series-local-trend": "{trend} {from} ila {to}",
19
+ "trend-strong-reduction": "güçlü azalma var",
20
+ "trend-reduction": "reddedilen",
21
+ "trend-weak-reduction": "hafif azalma var",
22
+ "trend-static": "tüm dönemlerde aynı",
23
+ "trend-weak-growth": "hafif büyüme var",
24
+ "trend-growth": "büyüyen",
25
+ "trend-strong-growth": "güçlü büyüme var",
26
+ "relative-size-significantly-smaller": "önemli ölçüde küçük",
27
+ "relative-size-smaller": "küçük",
28
+ "relative-size-slightly-smaller": "biraz küçük",
29
+ "relative-size-average": "ortalama",
30
+ "relative-size-slightly-bigger": "biraz büyük",
31
+ "relative-size-bigger": "büyük",
32
+ "relative-size-significantly-bigger": "önemli ölçüde büyük",
33
+ "ellipsis": "{leftCount} daha fazla",
34
+ "view-default-plot-label": "Grafik",
35
+ "view-label": "{plotLabel} verileri",
36
+ "view-close": "Kapat",
37
+ "view-skip-plot": "Çizimden sonra içeriğe geç",
38
+ "view-go-to-table": "Veri tablosu çizmeye geç",
39
+ "view-data-summary": "Veri özeti",
40
+ "view-summary-placeholder": "Grafik veri özeti oluşturuluyor",
41
+ "view-table": "Veri tablosu"
42
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.translations = void 0;
9
+
10
+ var _de = _interopRequireDefault(require("./de.json"));
11
+
12
+ var _en = _interopRequireDefault(require("./en.json"));
13
+
14
+ var _es = _interopRequireDefault(require("./es.json"));
15
+
16
+ var _fr = _interopRequireDefault(require("./fr.json"));
17
+
18
+ var _it = _interopRequireDefault(require("./it.json"));
19
+
20
+ var _ja = _interopRequireDefault(require("./ja.json"));
21
+
22
+ var _ko = _interopRequireDefault(require("./ko.json"));
23
+
24
+ var _pt = _interopRequireDefault(require("./pt.json"));
25
+
26
+ var _tr = _interopRequireDefault(require("./tr.json"));
27
+
28
+ var _vi = _interopRequireDefault(require("./vi.json"));
29
+
30
+ var _zh = _interopRequireDefault(require("./zh.json"));
31
+
32
+ var translations = {
33
+ de: _de["default"],
34
+ en: _en["default"],
35
+ es: _es["default"],
36
+ fr: _fr["default"],
37
+ it: _it["default"],
38
+ ja: _ja["default"],
39
+ ko: _ko["default"],
40
+ pt: _pt["default"],
41
+ tr: _tr["default"],
42
+ vi: _vi["default"],
43
+ zh: _zh["default"]
44
+ };
45
+ exports.translations = translations;
46
+ //# sourceMappingURL=translations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"translations.js","names":["translations","de","en","es","fr","it","ja","ko","pt","tr","vi","zh"],"sources":["../../../../../src/a11y/translations/view/translations.ts"],"sourcesContent":["import de from './de.json';\nimport en from './en.json';\nimport es from './es.json';\nimport fr from './fr.json';\nimport it from './it.json';\nimport ja from './ja.json';\nimport ko from './ko.json';\nimport pt from './pt.json';\nimport tr from './tr.json';\nimport vi from './vi.json';\nimport zh from './zh.json';\n\nexport const translations = {\n de,\n en,\n es,\n fr,\n it,\n ja,\n ko,\n pt,\n tr,\n vi,\n zh,\n} as { [locale: string]: { [message: string]: string } };\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEO,IAAMA,YAAY,GAAG;EAC1BC,EAAE,EAAFA,cAD0B;EAE1BC,EAAE,EAAFA,cAF0B;EAG1BC,EAAE,EAAFA,cAH0B;EAI1BC,EAAE,EAAFA,cAJ0B;EAK1BC,EAAE,EAAFA,cAL0B;EAM1BC,EAAE,EAAFA,cAN0B;EAO1BC,EAAE,EAAFA,cAP0B;EAQ1BC,EAAE,EAAFA,cAR0B;EAS1BC,EAAE,EAAFA,cAT0B;EAU1BC,EAAE,EAAFA,cAV0B;EAW1BC,EAAE,EAAFA;AAX0B,CAArB"}
@@ -0,0 +1,42 @@
1
+ {
2
+ "chart-summary": "Biểu đồ đại diện {entities} của {label}: {entitiesList}.",
3
+ "chart-summary-no-label": "Biểu đồ đại diện {entities}: {entitiesList}.",
4
+ "entity-type-time-series": "{count} chuỗi thời gian",
5
+ "entity-type-clusters-single-size": "{count} {count, plural, other {cụm}} size {size}",
6
+ "entity-type-clusters-multiple-size": "{count} {count, plural, other {cụm}} size từ {minSize} tới {maxSize}",
7
+ "entity-type-clusters-label-anonymous": "{relativeSize} Cụm size {size} xung quanh {yLabel} của {x} {xLabel} và {y}",
8
+ "entity-type-clusters-label": "{relativeSize} cụm {labels} size {size} xung quanh {yLabel} của {x} {xLabel} và {y}",
9
+ "entity-type-values": "{count} {count, plural, other {giá trị}}",
10
+ "entity-type-grouped-values-single-size": "{groupsCount} {groupsCount, plural, other {mỗi nhóm chứa}} {valuesCount} {valuesCount, plural, other {giá trị}}",
11
+ "entity-type-grouped-values-multiple-size": "{groupsCount} {groupsCount, plural, other {nhóm chứa}} từ {minValuesCount} tới {maxValuesCount} giá trị",
12
+ "value-labeled": "{label} có giá trị {value}",
13
+ "values-group": "nhóm {label} chứa {values}",
14
+ "additional-axe": "{label} từ {from} tới {to}",
15
+ "additional-axe-no-label": "dữ liệu từ {from} tới {to}",
16
+ "time-series-detailed-trend": "{general}, cũng {locals}",
17
+ "time-series-general-trend": "{dataKey} {trend} từ {from} tới {to}",
18
+ "time-series-local-trend": "{trend} từ {from} tới {to}",
19
+ "trend-strong-reduction": "giảm mạnh",
20
+ "trend-reduction": "đang giảm",
21
+ "trend-weak-reduction": "giảm nhẹ",
22
+ "trend-static": "giống nhau trong tất cả các kỳ",
23
+ "trend-weak-growth": "giảm nhẹ",
24
+ "trend-growth": "đang tăng",
25
+ "trend-strong-growth": "tăng mạnh",
26
+ "relative-size-significantly-smaller": "tương đối nhỏ",
27
+ "relative-size-smaller": "nhỏ",
28
+ "relative-size-slightly-smaller": "hơi nhỏ",
29
+ "relative-size-average": "trung bình",
30
+ "relative-size-slightly-bigger": "hơi to",
31
+ "relative-size-bigger": "to",
32
+ "relative-size-significantly-bigger": "tương đối to",
33
+ "ellipsis": "thêm {leftCount}",
34
+ "view-default-plot-label": "Biểu đồ",
35
+ "view-label": "dữ liệu {plotLabel}",
36
+ "view-close": "Đóng",
37
+ "view-skip-plot": "Chuyển đến nội dung sau biểu đồ",
38
+ "view-go-to-table": "Bỏ qua bảng dữ liệu biểu đồ",
39
+ "view-data-summary": "Tóm tắt dữ liệu",
40
+ "view-summary-placeholder": "Tạo tóm tắt dữ liệu biểu đồ",
41
+ "view-table": "Bảng dữ liệu"
42
+ }
@@ -0,0 +1,42 @@
1
+ {
2
+ "chart-summary": "图表代表{label}的{entities}:{entitiesList}。",
3
+ "chart-summary-no-label": "图表代表{entities}:{entitiesList}。",
4
+ "entity-type-time-series": "{count} 个时间序列",
5
+ "entity-type-clusters-single-size": "{count} 个大小为 {size} 的{count, plural, one {群集} other {群集}} ",
6
+ "entity-type-clusters-multiple-size": "{count} 个从 {minSize} 到 {maxSize} 的{count, plural, one {群集} other {群集}} ",
7
+ "entity-type-clusters-label-anonymous": "大小为 {size} 的{relativeSize}群集,围绕 {x} {xLabel} 和 {y} {yLabel} 的交叉",
8
+ "entity-type-clusters-label": "大小为 {size} 的{relativeSize}群集{labels},围绕 {x} {xLabel} 和 {y} {yLabel} 的交叉",
9
+ "entity-type-values": "{count} {count, plural, one {个数值} other {个数值}}",
10
+ "entity-type-grouped-values-single-size": "{groupsCount} 个包含 {valuesCount} 个{valuesCount, plural, one {值} other {值}}的{groupsCount, plural, one {分组} other {分组}}",
11
+ "entity-type-grouped-values-multiple-size": "{groupsCount} 个包含从 {minValuesCount} 到 {maxValuesCount} 数值的{groupsCount, plural, one {分组} other {分组}}",
12
+ "value-labeled": "{label},数值为 {value}",
13
+ "values-group": "集合 {label} 包含 {values}",
14
+ "additional-axe": "从 {from} 到 {to} 的{label}",
15
+ "additional-axe-no-label": "从 {from} 到 {to} 的数据",
16
+ "time-series-detailed-trend": "{general},另外 {locals}",
17
+ "time-series-general-trend": "{dataKey} {trend}(从 {from} 到 {to})",
18
+ "time-series-local-trend": "从 {from} {trend}到 {to}",
19
+ "trend-strong-reduction": "剧烈下降",
20
+ "trend-reduction": "下降",
21
+ "trend-weak-reduction": "略微下降",
22
+ "trend-static": "同期持平",
23
+ "trend-weak-growth": "略微上升",
24
+ "trend-growth": "增长",
25
+ "trend-strong-growth": "剧烈上升",
26
+ "relative-size-significantly-smaller": "极小",
27
+ "relative-size-smaller": "小",
28
+ "relative-size-slightly-smaller": "略小",
29
+ "relative-size-average": "平均偏差",
30
+ "relative-size-slightly-bigger": "略大",
31
+ "relative-size-bigger": "大",
32
+ "relative-size-significantly-bigger": "极大",
33
+ "ellipsis": "还有 {leftCount} 个",
34
+ "view-default-plot-label": "图表",
35
+ "view-label": "{plotLabel} 数据",
36
+ "view-close": "关闭",
37
+ "view-skip-plot": "跳到图示后的内容",
38
+ "view-go-to-table": "跳到图示数据表",
39
+ "view-data-summary": "数据摘要",
40
+ "view-summary-placeholder": "生成图表数据摘要",
41
+ "view-table": "数据表"
42
+ }
@@ -94,7 +94,9 @@ function createElementRender() {
94
94
 
95
95
  return [/*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, {
96
96
  key: "child-above"
97
- }, childrenPosition === 'above' ? children : null), /*#__PURE__*/_react["default"].createElement(Tag, (0, _extends2["default"])({}, (0, _propsForElement["default"])(_objectSpread({
97
+ }, childrenPosition === 'above' ? children : null), /*#__PURE__*/_react["default"].createElement(Tag, (0, _extends2["default"])({
98
+ "aria-hidden": true
99
+ }, (0, _propsForElement["default"])(_objectSpread({
98
100
  __excludeProps: EXCLUDE_PROPS
99
101
  }, mergedProps), Tag), {
100
102
  key: "element"
@@ -1 +1 @@
1
- {"version":3,"file":"createElement.js","names":["EXCLUDE_PROPS","createElementRender","Element","React","forwardRef","ref","render","childrenPosition","xS","x","yS","y","source","props","_children","children","Children","getOriginChildren","mergedProps","assignProps","useForkRef","_child","Tag","tag","undefined","Error","propsForElement","__excludeProps","elementEnhancement","init","asProps","WrapperComponent","isFunction","$rootProps","WrapComponent","ElementWithContext","useContext","Plot","CONTEXT_COMPONENT","displayName","createBaseComponent","hoistNonReactStatics","createElement","ElementRoot","child","options","createComponent","enhancements","Object","keys","forEach","n"],"sources":["../../src/createElement.jsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport createComponent, { createBaseComponent, CONTEXT_COMPONENT } from '@semcore/core';\nimport Plot from './Plot';\nimport assignProps from '@semcore/utils/lib/assignProps';\nimport { useForkRef } from '@semcore/utils/lib/ref';\nimport propsForElement from '@semcore/utils/lib/propsForElement';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport hoistNonReactStatics from 'hoist-non-react-statics';\n\nconst EXCLUDE_PROPS = ['data', 'scale'];\n\nfunction createElementRender() {\n const Element = React.forwardRef(function (\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n { render, childrenPosition = 'below', x: xS, y: yS, ...source },\n ref,\n ) {\n const {\n forwardRef = null,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n children: _children,\n Children,\n x = xS,\n y = yS,\n ...props\n } = Element.props;\n let children = getOriginChildren(Children);\n\n let mergedProps = assignProps(\n {\n x: xS,\n y: yS,\n ...props,\n ref: useForkRef(forwardRef, ref),\n },\n {\n x,\n y,\n ...source,\n },\n );\n\n if (typeof children === 'function') {\n const _child = mergedProps.children;\n mergedProps = assignProps(children(mergedProps), mergedProps);\n children = mergedProps.children;\n mergedProps.children = _child;\n }\n\n const Tag = typeof render === 'string' ? mergedProps.tag || render : render;\n\n if (childrenPosition === 'inside') {\n mergedProps.children = children === undefined ? mergedProps.children : children;\n }\n\n if (!Tag) {\n throw new Error('Element expected render prop to be passed');\n }\n return [\n <React.Fragment key=\"child-above\">\n {childrenPosition === 'above' ? children : null}\n </React.Fragment>,\n <Tag\n {...propsForElement(\n {\n __excludeProps: EXCLUDE_PROPS,\n ...mergedProps,\n },\n Tag,\n )}\n key=\"element\"\n />,\n <React.Fragment key=\"child-below\">\n {childrenPosition === 'below' ? children : null}\n </React.Fragment>,\n ];\n });\n\n Element.props = {};\n return Element;\n}\n\nfunction elementEnhancement() {\n return {\n init: function () {\n this.Element = createElementRender();\n },\n asProps: function ({ $rootProps, ...props }, WrapperComponent, isFunction) {\n if (isFunction) {\n return {\n ...$rootProps,\n ...props,\n Element: this.Element,\n };\n }\n return {\n ...$rootProps,\n ...props,\n };\n },\n render: function (render, props) {\n this.Element.props = props;\n return render;\n },\n };\n}\n\nfunction WrapComponent(Element) {\n function ElementWithContext(props, ref) {\n const { $rootProps } = useContext(Plot[CONTEXT_COMPONENT]);\n return <Element ref={ref} $rootProps={$rootProps} {...props} />;\n }\n\n ElementWithContext.displayName = Element.displayName;\n\n const WrapperComponent = createBaseComponent(ElementWithContext);\n WrapperComponent.displayName = Element.displayName;\n\n return hoistNonReactStatics(WrapperComponent, Element);\n}\n\nfunction createElement(ElementRoot, child = {}, options = {}) {\n const Element = createComponent(ElementRoot, child, {\n ...options,\n enhancements: [elementEnhancement],\n });\n\n Object.keys(child).forEach((n) => {\n Element[n] = WrapComponent(Element[n]);\n });\n\n return WrapComponent(Element);\n}\n\nexport default createElement;\n"],"mappings":"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"}
1
+ {"version":3,"file":"createElement.js","names":["EXCLUDE_PROPS","createElementRender","Element","React","forwardRef","ref","render","childrenPosition","xS","x","yS","y","source","props","_children","children","Children","getOriginChildren","mergedProps","assignProps","useForkRef","_child","Tag","tag","undefined","Error","propsForElement","__excludeProps","elementEnhancement","init","asProps","WrapperComponent","isFunction","$rootProps","WrapComponent","ElementWithContext","useContext","Plot","CONTEXT_COMPONENT","displayName","createBaseComponent","hoistNonReactStatics","createElement","ElementRoot","child","options","createComponent","enhancements","Object","keys","forEach","n"],"sources":["../../src/createElement.jsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport createComponent, { createBaseComponent, CONTEXT_COMPONENT } from '@semcore/core';\nimport Plot from './Plot';\nimport assignProps from '@semcore/utils/lib/assignProps';\nimport { useForkRef } from '@semcore/utils/lib/ref';\nimport propsForElement from '@semcore/utils/lib/propsForElement';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport hoistNonReactStatics from 'hoist-non-react-statics';\n\nconst EXCLUDE_PROPS = ['data', 'scale'];\n\nfunction createElementRender() {\n const Element = React.forwardRef(function (\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n { render, childrenPosition = 'below', x: xS, y: yS, ...source },\n ref,\n ) {\n const {\n forwardRef = null,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n children: _children,\n Children,\n x = xS,\n y = yS,\n ...props\n } = Element.props;\n let children = getOriginChildren(Children);\n\n let mergedProps = assignProps(\n {\n x: xS,\n y: yS,\n ...props,\n ref: useForkRef(forwardRef, ref),\n },\n {\n x,\n y,\n ...source,\n },\n );\n\n if (typeof children === 'function') {\n const _child = mergedProps.children;\n mergedProps = assignProps(children(mergedProps), mergedProps);\n children = mergedProps.children;\n mergedProps.children = _child;\n }\n\n const Tag = typeof render === 'string' ? mergedProps.tag || render : render;\n\n if (childrenPosition === 'inside') {\n mergedProps.children = children === undefined ? mergedProps.children : children;\n }\n\n if (!Tag) {\n throw new Error('Element expected render prop to be passed');\n }\n return [\n <React.Fragment key=\"child-above\">\n {childrenPosition === 'above' ? children : null}\n </React.Fragment>,\n <Tag\n aria-hidden\n {...propsForElement(\n {\n __excludeProps: EXCLUDE_PROPS,\n ...mergedProps,\n },\n Tag,\n )}\n key=\"element\"\n />,\n <React.Fragment key=\"child-below\">\n {childrenPosition === 'below' ? children : null}\n </React.Fragment>,\n ];\n });\n\n Element.props = {};\n return Element;\n}\n\nfunction elementEnhancement() {\n return {\n init: function () {\n this.Element = createElementRender();\n },\n asProps: function ({ $rootProps, ...props }, WrapperComponent, isFunction) {\n if (isFunction) {\n return {\n ...$rootProps,\n ...props,\n Element: this.Element,\n };\n }\n return {\n ...$rootProps,\n ...props,\n };\n },\n render: function (render, props) {\n this.Element.props = props;\n return render;\n },\n };\n}\n\nfunction WrapComponent(Element) {\n function ElementWithContext(props, ref) {\n const { $rootProps } = useContext(Plot[CONTEXT_COMPONENT]);\n return <Element ref={ref} $rootProps={$rootProps} {...props} />;\n }\n\n ElementWithContext.displayName = Element.displayName;\n\n const WrapperComponent = createBaseComponent(ElementWithContext);\n WrapperComponent.displayName = Element.displayName;\n\n return hoistNonReactStatics(WrapperComponent, Element);\n}\n\nfunction createElement(ElementRoot, child = {}, options = {}) {\n const Element = createComponent(ElementRoot, child, {\n ...options,\n enhancements: [elementEnhancement],\n });\n\n Object.keys(child).forEach((n) => {\n Element[n] = WrapComponent(Element[n]);\n });\n\n return WrapComponent(Element);\n}\n\nexport default createElement;\n"],"mappings":"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"}
@@ -4,3 +4,13 @@
4
4
  SPlot {
5
5
  overflow: hidden;
6
6
  }
7
+ SPlot:active,
8
+ SPlot:focus {
9
+ outline: 0;
10
+ text-decoration: none;
11
+ }
12
+
13
+ SPlot[keyboardFocused] {
14
+ border: 1px solid var(--blue-400);
15
+ box-shadow: var(--keyboard-focus);
16
+ }
@@ -0,0 +1,13 @@
1
+ @import '@semcore/utils/style/var.css';
2
+ @import '@semcore/d3-chart/src/style/var.css';
3
+
4
+ SPlotA11yModule {
5
+ user-select: none;
6
+ pointer-events: none;
7
+ opacity: 0;
8
+ }
9
+ SPlotA11yModule:focus {
10
+ user-select: all;
11
+ pointer-events: all;
12
+ opacity: 1;
13
+ }
@@ -0,0 +1,39 @@
1
+ @import '@semcore/utils/style/var.css';
2
+ @import '@semcore/d3-chart/src/style/var.css';
3
+
4
+ SPlotA11yView {
5
+ user-select: none;
6
+ pointer-events: none;
7
+ opacity: 0;
8
+ background-color: white;
9
+ color: black;
10
+ border: 3px solid black;
11
+ font-size: 10px;
12
+ padding: 2px;
13
+ width: 200px;
14
+ height: 200px;
15
+ max-width: 80%;
16
+ max-height: 80%;
17
+ overflow: auto;
18
+ }
19
+ SPlotA11yView:focus-within,
20
+ SPlotA11yView:focus {
21
+ user-select: all;
22
+ pointer-events: all;
23
+ opacity: 1;
24
+ z-index: 100;
25
+ position: relative;
26
+ display: block;
27
+ }
28
+ SPlotA11yView a {
29
+ cursor: pointer;
30
+ text-decoration: underline;
31
+ margin-bottom: 8px;
32
+ display: block;
33
+ }
34
+
35
+ SPlotA11yView table,
36
+ SPlotA11yView td,
37
+ SPlotA11yView th {
38
+ border: 1px solid black;
39
+ }
@@ -9,8 +9,83 @@ export interface IPlotProps extends IContext, IBoxProps {
9
9
  /** Height of the svg element
10
10
  * @default 0*/
11
11
  height?: number;
12
+ /** Human readable chart name (e.g "Last market trends") */
13
+ label?: string;
14
+ /**
15
+ * Locale for displaying the days of a week and months, to be transferred to `Intl`
16
+ * @default en
17
+ * */
18
+ locale?: NavigatorLanguage['language'];
19
+ /** Optional prop to tune up alt text generating for charts */
20
+ a11yAltTextConfig?: PlotSummarizerConfig;
12
21
  }
13
22
 
23
+ export type PlotSummarizerConfig = {
24
+ /** Totally disable automatic data summarization */
25
+ disable?: boolean;
26
+ /** Disable automatic data summarization and use provided text */
27
+ override?: string;
28
+ /** Tuning up time series trends analyzing. Represents angle tangens of time series change of different strength */
29
+ trendTangens?: {
30
+ /** Angle tangens of time series that have meaningful trending change
31
+ * @default 1/15
32
+ */
33
+ static?: number;
34
+ /** Angle tangens of time series that have weak trending change
35
+ * @default 1/10
36
+ */
37
+ weak?: number;
38
+ /** Angle tangens of time series that have medium trending change
39
+ * @default 1/5
40
+ */
41
+ medium?: number;
42
+ /** Angle tangens of time series that have strong trending change
43
+ * @default Infinity
44
+ */
45
+ strong?: number;
46
+ };
47
+ /** Tuning up time series local trends detection based on moving averages */
48
+ movingAverage?: {
49
+ /** Frame size of long moving average
50
+ * @default Math.sqrt(data.length)
51
+ */
52
+ longSize?: number;
53
+ /** Frame size of short moving average
54
+ * @default Math.sqrt(data.length)/2
55
+ */
56
+ shortSize?: number;
57
+ /** Absolute difference between values on moving averages crossing to
58
+ * be handled as local trend change.
59
+ * @default StandardDeviation/10
60
+ */
61
+ notableDiff?: number;
62
+ };
63
+ /** The way data to be interpreted as. By default is based on used used Plot elements and data structure.
64
+ */
65
+ dataType?: 'time-series' | 'points-cloud' | 'values-set';
66
+ /** Grid size to split data of point clouds into clusters.
67
+ */
68
+ clustersGridSize?: number;
69
+ /** Limits some output lists in chart alt text
70
+ * @default 100
71
+ * **/
72
+ maxListSymbols?: number;
73
+ /** Always add time to dates in chart alt text **/
74
+ datesWithTime?: boolean;
75
+ /** Described clusters count before text "and X more"
76
+ * @default false
77
+ * **/
78
+ clustersLimit?: number;
79
+ /** Described values count before text "and X more"
80
+ * @default false
81
+ * **/
82
+ valuesLimit?: number;
83
+ /** Described grouped value groups count before text "and X more"
84
+ * @default false
85
+ * **/
86
+ groupsLimit?: number;
87
+ };
88
+
14
89
  declare const Plot: <T>(props: CProps<IPlotProps & T>) => ReturnEl;
15
90
 
16
91
  export default Plot;
package/lib/cjs/utils.js CHANGED
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.scaleOfBandwidth = exports.roundedPath = exports.minMax = exports.memoize = exports.measureText = exports.invert = exports.getNullData = exports.getIndexFromData = exports.getBandwidth = exports.eventToPoint = exports.definedNullData = exports.definedData = exports.CONSTANT = void 0;
8
+ exports.uniqueId = exports.scaleOfBandwidth = exports.roundedPath = exports.minMax = exports.memoize = exports.measureText = exports.invert = exports.getNullData = exports.getIndexFromData = exports.getBandwidth = exports.eventToPoint = exports.definedNullData = exports.definedData = exports.CONSTANT = void 0;
9
9
 
10
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
11
 
@@ -244,4 +244,12 @@ var measureText = memoize(function (text, fontSize) {
244
244
  return textWidth;
245
245
  });
246
246
  exports.measureText = measureText;
247
+ var idCounter = 0;
248
+
249
+ var uniqueId = function uniqueId() {
250
+ var prefix = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'id-';
251
+ return "".concat(prefix).concat(idCounter++);
252
+ };
253
+
254
+ exports.uniqueId = uniqueId;
247
255
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["CONSTANT","VIRTUAL_ELEMENT","Symbol","eventToPoint","event","svgRoot","node","currentTarget","target","rect","getBoundingClientRect","clientX","left","clientLeft","clientY","top","clientTop","invert","scale","value","range","domain","scaleQuantize","slice","reverse","definedNullData","x","y","plot","definedData","undefined","scaleOfBandwidth","bandwidth","minMax","data","key","extent","d","getNullData","defined","name","reduce","acc","i","push","prev","next","defNext","find","length","defPrev","getIndexFromData","bisect","bisector","center","step","index","findIndex","console","warn","roundedPath","w","h","r","tl","tr","bl","br","result","getBandwidth","Math","abs","memoize","func","results","args","argsKey","join","measureText","text","fontSize","span","document","createElement","style","split","line","append","createTextNode","display","body","textWidth","offsetWidth","remove"],"sources":["../../src/utils.ts"],"sourcesContent":["import { extent, bisector, Numeric } from 'd3-array';\nimport {\n scaleQuantize,\n ScaleIdentity,\n ScaleTime,\n ScaleContinuousNumeric,\n ScaleBand,\n ScalePoint,\n NumberValue,\n} from 'd3-scale';\nimport React from 'react';\n\nconst CONSTANT = {\n VIRTUAL_ELEMENT: Symbol('VIRTUAL_ELEMENT'),\n} as const;\n\nexport { CONSTANT };\n\nexport const eventToPoint = (event: React.MouseEvent<HTMLElement>, svgRoot: SVGElement) => {\n const node = (event.currentTarget || event.target) as HTMLElement;\n const rect = svgRoot.getBoundingClientRect();\n return [event.clientX - rect.left - node.clientLeft, event.clientY - rect.top - node.clientTop];\n};\n\ntype InvertableScale =\n | ScaleIdentity\n | ScaleTime<unknown, unknown>\n | ScaleContinuousNumeric<unknown, unknown>;\nexport const invert = <Scale extends InvertableScale = InvertableScale>(\n scale: Scale,\n value: number,\n) => {\n if (scale.invert) return scale.invert(value);\n\n const range = scale.range() as number[];\n const domain = scale.domain();\n\n return scaleQuantize()\n .domain((range[0] <= range[1] ? range : range.slice().reverse()) as NumberValue[])\n .range((range[0] <= range[1] ? domain : domain.slice().reverse()) as number[])(value);\n};\n\nexport const definedNullData = (x: number, y: number) => (plot: { [xOrY: number]: unknown }) =>\n plot[x] !== null && plot[y] !== null;\n\nexport const definedData = (x: number, y: number) => (plot: { [xOrY: number]: unknown }) =>\n plot[x] !== null && plot[x] !== undefined && plot[y] !== null && plot[y] !== undefined;\n\nexport const scaleOfBandwidth = <Scale extends ScaleBand<{}>>(scale: Scale, value: number) =>\n scale.bandwidth ? scale(value)! + scale.bandwidth() / 2 : scale(value);\n\nexport const minMax = <\n Key extends string = string,\n Data extends Iterable<{ [key in Key]: Numeric | null | undefined }> = Iterable<{\n [key in Key]: Numeric | null | undefined;\n }>,\n>(\n data: Data,\n key: Key,\n) => {\n if (typeof key === 'string') {\n return extent(data, (d) => d[key]);\n }\n return extent(data, key);\n};\n\nexport const getNullData = <\n Name extends string = string,\n Data extends { [name in Name]?: unknown | null } = {},\n>(\n data: Data[],\n defined: (data: Data) => boolean,\n name: Name,\n) =>\n data.reduce((acc, d, i, data) => {\n if (defined(d)) {\n acc.push({\n [name]: null,\n } as Data);\n } else {\n const prev = data[i - 1];\n const next = data[i + 1];\n\n if (i === 0) {\n const defNext = data.find(defined);\n acc.push({\n ...d,\n [name]: defNext ? defNext[name] : null,\n });\n }\n\n // prev\n if (prev && defined(prev)) {\n acc.push(prev);\n }\n\n // next\n if (next && defined(next)) {\n acc.push(next);\n }\n\n if (data.length - 1 === i) {\n const defPrev = data.slice().reverse().find(defined);\n acc.push({\n ...d,\n [name]: defPrev ? defPrev[name] : null,\n });\n }\n }\n return acc;\n }, [] as Data[]);\n\ntype IndexFromDataScale =\n | ScaleIdentity\n | ScaleTime<unknown, unknown>\n | ScaleContinuousNumeric<unknown, unknown>\n | ScaleBand<{}>\n | ScalePoint<{}>;\nexport const getIndexFromData = <\n Data extends {\n [key: string]: number;\n } = {},\n Scale extends IndexFromDataScale = IndexFromDataScale,\n>(\n data: Data[],\n scale: Scale,\n key: string,\n value: number,\n) => {\n // detect line chart\n if ('invert' in scale && typeof scale.invert === 'function') {\n const bisect = bisector((d: { [key: string]: number }) => d[key]).center;\n return bisect(data, value);\n }\n // detect bar chart\n else if ('step' in scale && typeof scale.step !== 'undefined') {\n const index = data.findIndex((d) => d[key] === value);\n return index >= 0 ? index : null;\n } else {\n // eslint-disable-next-line no-console\n console.warn('[d3-chart/utils/getIndexFromData] encountered incompatible scale type');\n return null;\n }\n};\n\nexport const roundedPath = (\n x: number,\n y: number,\n w: number,\n h: number,\n r: number,\n tl = false,\n tr = false,\n bl = false,\n br = false,\n) => {\n let result = 'M' + (x + r) + ',' + y;\n result += 'h' + (w - 2 * r);\n if (tr) {\n result += 'a' + r + ',' + r + ' 0 0 1 ' + r + ',' + r;\n } else {\n result += 'h' + r;\n result += 'v' + r;\n }\n result += 'v' + (h - 2 * r);\n if (br) {\n result += 'a' + r + ',' + r + ' 0 0 1 ' + -r + ',' + r;\n } else {\n result += 'v' + r;\n result += 'h' + -r;\n }\n result += 'h' + (2 * r - w);\n if (bl) {\n result += 'a' + r + ',' + r + ' 0 0 1 ' + -r + ',' + -r;\n } else {\n result += 'h' + -r;\n result += 'v' + -r;\n }\n result += 'v' + (2 * r - h);\n if (tl) {\n result += 'a' + r + ',' + r + ' 0 0 1 ' + r + ',' + -r;\n } else {\n result += 'v' + -r;\n result += 'h' + r;\n }\n result += 'z';\n return result;\n};\n\nexport const getBandwidth = <Scale extends ScaleBand<{}>>(scale: Scale) => {\n if ('bandwidth' in scale) {\n return scale.bandwidth();\n }\n\n const range = scale.range();\n const domain = scale.domain();\n return Math.abs(range[range.length - 1] - range[0]) / domain.length;\n};\n\nexport const memoize = <Func extends (...args: any[]) => any>(func: Func): Func => {\n const results: { [cacheKey: string]: any } = {};\n return ((...args: any[]) => {\n const argsKey = args.join(',');\n if (!results[argsKey]) {\n results[argsKey] = func(...args);\n }\n return results[argsKey];\n }) as Func;\n};\n\nexport const measureText = memoize((text: string, fontSize?: number) => {\n if (!text) return 0;\n\n const span = document.createElement('span');\n if (fontSize) {\n span.style.fontSize = `${fontSize}px`;\n }\n for (const line of text.split('\\n')) {\n span.append(document.createTextNode(line));\n span.append(document.createElement('br'));\n }\n span.style.display = 'inline-block';\n document.body.append(span);\n const textWidth = span.offsetWidth;\n span.remove();\n return textWidth;\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","names":["CONSTANT","VIRTUAL_ELEMENT","Symbol","eventToPoint","event","svgRoot","node","currentTarget","target","rect","getBoundingClientRect","clientX","left","clientLeft","clientY","top","clientTop","invert","scale","value","range","domain","scaleQuantize","slice","reverse","definedNullData","x","y","plot","definedData","undefined","scaleOfBandwidth","bandwidth","minMax","data","key","extent","d","getNullData","defined","name","reduce","acc","i","push","prev","next","defNext","find","length","defPrev","getIndexFromData","bisect","bisector","center","step","index","findIndex","console","warn","roundedPath","w","h","r","tl","tr","bl","br","result","getBandwidth","Math","abs","memoize","func","results","args","argsKey","join","measureText","text","fontSize","span","document","createElement","style","split","line","append","createTextNode","display","body","textWidth","offsetWidth","remove","idCounter","uniqueId","prefix"],"sources":["../../src/utils.ts"],"sourcesContent":["import { extent, bisector, Numeric } from 'd3-array';\nimport {\n scaleQuantize,\n ScaleIdentity,\n ScaleTime,\n ScaleContinuousNumeric,\n ScaleBand,\n ScalePoint,\n NumberValue,\n} from 'd3-scale';\nimport React from 'react';\n\nconst CONSTANT = {\n VIRTUAL_ELEMENT: Symbol('VIRTUAL_ELEMENT'),\n} as const;\n\nexport { CONSTANT };\n\nexport const eventToPoint = (event: React.MouseEvent<HTMLElement>, svgRoot: SVGElement) => {\n const node = (event.currentTarget || event.target) as HTMLElement;\n const rect = svgRoot.getBoundingClientRect();\n return [event.clientX - rect.left - node.clientLeft, event.clientY - rect.top - node.clientTop];\n};\n\ntype InvertableScale =\n | ScaleIdentity\n | ScaleTime<unknown, unknown>\n | ScaleContinuousNumeric<unknown, unknown>;\nexport const invert = <Scale extends InvertableScale = InvertableScale>(\n scale: Scale,\n value: number,\n) => {\n if (scale.invert) return scale.invert(value);\n\n const range = scale.range() as number[];\n const domain = scale.domain();\n\n return scaleQuantize()\n .domain((range[0] <= range[1] ? range : range.slice().reverse()) as NumberValue[])\n .range((range[0] <= range[1] ? domain : domain.slice().reverse()) as number[])(value);\n};\n\nexport const definedNullData = (x: number, y: number) => (plot: { [xOrY: number]: unknown }) =>\n plot[x] !== null && plot[y] !== null;\n\nexport const definedData = (x: number, y: number) => (plot: { [xOrY: number]: unknown }) =>\n plot[x] !== null && plot[x] !== undefined && plot[y] !== null && plot[y] !== undefined;\n\nexport const scaleOfBandwidth = <Scale extends ScaleBand<{}>>(scale: Scale, value: number) =>\n scale.bandwidth ? scale(value)! + scale.bandwidth() / 2 : scale(value);\n\nexport const minMax = <\n Key extends string = string,\n Data extends Iterable<{ [key in Key]: Numeric | null | undefined }> = Iterable<{\n [key in Key]: Numeric | null | undefined;\n }>,\n>(\n data: Data,\n key: Key,\n) => {\n if (typeof key === 'string') {\n return extent(data, (d) => d[key]);\n }\n return extent(data, key);\n};\n\nexport const getNullData = <\n Name extends string = string,\n Data extends { [name in Name]?: unknown | null } = {},\n>(\n data: Data[],\n defined: (data: Data) => boolean,\n name: Name,\n) =>\n data.reduce((acc, d, i, data) => {\n if (defined(d)) {\n acc.push({\n [name]: null,\n } as Data);\n } else {\n const prev = data[i - 1];\n const next = data[i + 1];\n\n if (i === 0) {\n const defNext = data.find(defined);\n acc.push({\n ...d,\n [name]: defNext ? defNext[name] : null,\n });\n }\n\n // prev\n if (prev && defined(prev)) {\n acc.push(prev);\n }\n\n // next\n if (next && defined(next)) {\n acc.push(next);\n }\n\n if (data.length - 1 === i) {\n const defPrev = data.slice().reverse().find(defined);\n acc.push({\n ...d,\n [name]: defPrev ? defPrev[name] : null,\n });\n }\n }\n return acc;\n }, [] as Data[]);\n\ntype IndexFromDataScale =\n | ScaleIdentity\n | ScaleTime<unknown, unknown>\n | ScaleContinuousNumeric<unknown, unknown>\n | ScaleBand<{}>\n | ScalePoint<{}>;\nexport const getIndexFromData = <\n Data extends {\n [key: string]: number;\n } = {},\n Scale extends IndexFromDataScale = IndexFromDataScale,\n>(\n data: Data[],\n scale: Scale,\n key: string,\n value: number,\n) => {\n // detect line chart\n if ('invert' in scale && typeof scale.invert === 'function') {\n const bisect = bisector((d: { [key: string]: number }) => d[key]).center;\n return bisect(data, value);\n }\n // detect bar chart\n else if ('step' in scale && typeof scale.step !== 'undefined') {\n const index = data.findIndex((d) => d[key] === value);\n return index >= 0 ? index : null;\n } else {\n // eslint-disable-next-line no-console\n console.warn('[d3-chart/utils/getIndexFromData] encountered incompatible scale type');\n return null;\n }\n};\n\nexport const roundedPath = (\n x: number,\n y: number,\n w: number,\n h: number,\n r: number,\n tl = false,\n tr = false,\n bl = false,\n br = false,\n) => {\n let result = 'M' + (x + r) + ',' + y;\n result += 'h' + (w - 2 * r);\n if (tr) {\n result += 'a' + r + ',' + r + ' 0 0 1 ' + r + ',' + r;\n } else {\n result += 'h' + r;\n result += 'v' + r;\n }\n result += 'v' + (h - 2 * r);\n if (br) {\n result += 'a' + r + ',' + r + ' 0 0 1 ' + -r + ',' + r;\n } else {\n result += 'v' + r;\n result += 'h' + -r;\n }\n result += 'h' + (2 * r - w);\n if (bl) {\n result += 'a' + r + ',' + r + ' 0 0 1 ' + -r + ',' + -r;\n } else {\n result += 'h' + -r;\n result += 'v' + -r;\n }\n result += 'v' + (2 * r - h);\n if (tl) {\n result += 'a' + r + ',' + r + ' 0 0 1 ' + r + ',' + -r;\n } else {\n result += 'v' + -r;\n result += 'h' + r;\n }\n result += 'z';\n return result;\n};\n\nexport const getBandwidth = <Scale extends ScaleBand<{}>>(scale: Scale) => {\n if ('bandwidth' in scale) {\n return scale.bandwidth();\n }\n\n const range = scale.range();\n const domain = scale.domain();\n return Math.abs(range[range.length - 1] - range[0]) / domain.length;\n};\n\nexport const memoize = <Func extends (...args: any[]) => any>(func: Func): Func => {\n const results: { [cacheKey: string]: any } = {};\n return ((...args: any[]) => {\n const argsKey = args.join(',');\n if (!results[argsKey]) {\n results[argsKey] = func(...args);\n }\n return results[argsKey];\n }) as Func;\n};\n\nexport const measureText = memoize((text: string, fontSize?: number) => {\n if (!text) return 0;\n\n const span = document.createElement('span');\n if (fontSize) {\n span.style.fontSize = `${fontSize}px`;\n }\n for (const line of text.split('\\n')) {\n span.append(document.createTextNode(line));\n span.append(document.createElement('br'));\n }\n span.style.display = 'inline-block';\n document.body.append(span);\n const textWidth = span.offsetWidth;\n span.remove();\n return textWidth;\n});\n\nlet idCounter = 0;\nexport const uniqueId = (prefix = 'id-') => `${prefix}${idCounter++}`;\n"],"mappings":"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"}
package/lib/es6/Area.js CHANGED
@@ -26,18 +26,18 @@ var style = (
26
26
  /*__reshadow_css_start__*/
27
27
  _sstyled.insert(
28
28
  /*__inner_css_start__*/
29
- ".___SArea_1noqr_gg_{fill:#2bb3ff;fill-opacity:.2}.___SArea_1noqr_gg_.__color_1noqr_gg_{fill:var(--color_1noqr)}.___SAreaLine_1noqr_gg_{stroke:#2bb3ff;stroke-width:3;fill:transparent}.___SAreaLine_1noqr_gg_.__color_1noqr_gg_{stroke:var(--color_1noqr)}.___SArea_1noqr_gg_,.___SAreaLine_1noqr_gg_{transition-property:d;transition-duration:var(--duration_1noqr);transition-timing-function:ease-in-out}.___SNull_1noqr_gg_{fill:transparent;stroke:#8a8e9b;stroke-dasharray:4}.___SNull_1noqr_gg_.__hide_1noqr_gg_{display:none}"
29
+ ".___SArea_wiwov_gg_{fill:#2bb3ff;fill-opacity:.2}.___SArea_wiwov_gg_.__color_wiwov_gg_{fill:var(--color_wiwov)}.___SAreaLine_wiwov_gg_{stroke:#2bb3ff;stroke-width:3;fill:transparent}.___SAreaLine_wiwov_gg_.__color_wiwov_gg_{stroke:var(--color_wiwov)}.___SArea_wiwov_gg_,.___SAreaLine_wiwov_gg_{transition-property:d;transition-duration:var(--duration_wiwov);transition-timing-function:ease-in-out}.___SNull_wiwov_gg_{fill:transparent;stroke:#8a8e9b;stroke-dasharray:4}.___SNull_wiwov_gg_.__hide_wiwov_gg_{display:none}"
30
30
  /*__inner_css_end__*/
31
- , "1noqr_gg_")
31
+ , "wiwov_gg_")
32
32
  /*__reshadow_css_end__*/
33
33
  , {
34
- "__SArea": "___SArea_1noqr_gg_",
35
- "_color": "__color_1noqr_gg_",
36
- "--color": "--color_1noqr",
37
- "__SAreaLine": "___SAreaLine_1noqr_gg_",
38
- "--duration": "--duration_1noqr",
39
- "__SNull": "___SNull_1noqr_gg_",
40
- "_hide": "__hide_1noqr_gg_"
34
+ "__SArea": "___SArea_wiwov_gg_",
35
+ "_color": "__color_wiwov_gg_",
36
+ "--color": "--color_wiwov",
37
+ "__SAreaLine": "___SAreaLine_wiwov_gg_",
38
+ "--duration": "--duration_wiwov",
39
+ "__SNull": "___SNull_wiwov_gg_",
40
+ "_hide": "__hide_wiwov_gg_"
41
41
  });
42
42
 
43
43
  var AreaRoot = /*#__PURE__*/function (_Component) {
@@ -117,14 +117,20 @@ var AreaRoot = /*#__PURE__*/function (_Component) {
117
117
  uid = _this$asProps4.uid,
118
118
  size = _this$asProps4.size,
119
119
  duration = _this$asProps4.duration,
120
+ x = _this$asProps4.x,
121
+ y = _this$asProps4.y,
120
122
  Children = _this$asProps4.Children;
121
123
  var advanceMode = !!findComponent(Children, [Area.Line.displayName]);
124
+ this.asProps.dataHintsHandler.specifyDataRowFields(x, y);
125
+ this.asProps.dataHintsHandler.establishDataType('time-series');
122
126
  return _ref = sstyled(styles), /*#__PURE__*/React.createElement(React.Fragment, null, !advanceMode && /*#__PURE__*/React.createElement(SAreaLine, _ref.cn("SAreaLine", {
127
+ "aria-hidden": true,
123
128
  "clipPath": "url(#".concat(uid, ")"),
124
129
  "d": d3Line(data),
125
130
  "color": color,
126
131
  "use:duration": "".concat(duration, "ms")
127
132
  })), /*#__PURE__*/React.createElement(SArea, _ref.cn("SArea", {
133
+ "aria-hidden": true,
128
134
  "clipPath": "url(#".concat(uid, ")"),
129
135
  "render": "path",
130
136
  "d": d3(data),
@@ -132,6 +138,7 @@ var AreaRoot = /*#__PURE__*/function (_Component) {
132
138
  "color": color,
133
139
  "use:duration": "".concat(duration, "ms")
134
140
  })), duration && /*#__PURE__*/React.createElement(ClipPath, _ref.cn("ClipPath", {
141
+ "aria-hidden": true,
135
142
  "setAttributeTag": function setAttributeTag(rect) {
136
143
  rect.setAttribute('width', size[0]);
137
144
  },