LangOptions.js 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338
  1. /* *
  2. *
  3. * (c) 2009-2020 Øystein Moseng
  4. *
  5. * Default lang/i18n options for accessibility.
  6. *
  7. * License: www.highcharts.com/license
  8. *
  9. * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
  10. *
  11. * */
  12. 'use strict';
  13. var langOptions = {
  14. /**
  15. * Configure the accessibility strings in the chart. Requires the
  16. * [accessibility module](https://code.highcharts.com/modules/accessibility.js)
  17. * to be loaded. For a description of the module and information on its
  18. * features, see
  19. * [Highcharts Accessibility](https://www.highcharts.com/docs/chart-concepts/accessibility).
  20. *
  21. * For more dynamic control over the accessibility functionality, see
  22. * [accessibility.pointDescriptionFormatter](#accessibility.pointDescriptionFormatter),
  23. * [accessibility.seriesDescriptionFormatter](#accessibility.seriesDescriptionFormatter),
  24. * and
  25. * [accessibility.screenReaderSectionFormatter](#accessibility.screenReaderSectionFormatter).
  26. *
  27. * @since 6.0.6
  28. * @optionparent lang.accessibility
  29. */
  30. accessibility: {
  31. defaultChartTitle: 'Chart',
  32. chartContainerLabel: '{title}. Highcharts interactive chart.',
  33. svgContainerLabel: 'Interactive chart',
  34. drillUpButton: '{buttonText}',
  35. credits: 'Chart credits: {creditsStr}',
  36. /**
  37. * Thousands separator to use when formatting numbers for screen
  38. * readers. Note that many screen readers will not handle space as a
  39. * thousands separator, and will consider "11 700" as two numbers.
  40. *
  41. * Set to `null` to use the separator defined in
  42. * [lang.thousandsSep](lang.thousandsSep).
  43. *
  44. * @since 7.1.0
  45. */
  46. thousandsSep: ',',
  47. /**
  48. * Title element text for the chart SVG element. Leave this
  49. * empty to disable adding the title element. Browsers will display
  50. * this content when hovering over elements in the chart. Assistive
  51. * technology may use this element to label the chart.
  52. *
  53. * @since 6.0.8
  54. */
  55. svgContainerTitle: '',
  56. /**
  57. * Set a label on the container wrapping the SVG.
  58. *
  59. * @see [chartContainerLabel](#lang.accessibility.chartContainerLabel)
  60. *
  61. * @since 8.0.0
  62. */
  63. graphicContainerLabel: '',
  64. /**
  65. * Language options for the screen reader information sections added
  66. * before and after the charts.
  67. *
  68. * @since 8.0.0
  69. */
  70. screenReaderSection: {
  71. beforeRegionLabel: 'Chart screen reader information.',
  72. afterRegionLabel: '',
  73. /**
  74. * Language options for annotation descriptions.
  75. *
  76. * @since 8.0.1
  77. */
  78. annotations: {
  79. heading: 'Chart annotations summary',
  80. descriptionSinglePoint: '{annotationText}. Related to {annotationPoint}',
  81. descriptionMultiplePoints: '{annotationText}. Related to {annotationPoint}' +
  82. '{ Also related to, #each(additionalAnnotationPoints)}',
  83. descriptionNoPoints: '{annotationText}'
  84. },
  85. /**
  86. * Label for the end of the chart. Announced by screen readers.
  87. *
  88. * @since 8.0.0
  89. */
  90. endOfChartMarker: 'End of interactive chart.'
  91. },
  92. /**
  93. * Language options for sonification.
  94. *
  95. * @since 8.0.1
  96. */
  97. sonification: {
  98. playAsSoundButtonText: 'Play as sound, {chartTitle}',
  99. playAsSoundClickAnnouncement: 'Play'
  100. },
  101. /**
  102. * Language options for accessibility of the legend.
  103. *
  104. * @since 8.0.0
  105. */
  106. legend: {
  107. legendLabel: 'Toggle series visibility',
  108. legendItem: 'Hide {itemName}'
  109. },
  110. /**
  111. * Chart and map zoom accessibility language options.
  112. *
  113. * @since 8.0.0
  114. */
  115. zoom: {
  116. mapZoomIn: 'Zoom chart',
  117. mapZoomOut: 'Zoom out chart',
  118. resetZoomButton: 'Reset zoom'
  119. },
  120. /**
  121. * Range selector language options for accessibility.
  122. *
  123. * @since 8.0.0
  124. */
  125. rangeSelector: {
  126. minInputLabel: 'Select start date.',
  127. maxInputLabel: 'Select end date.',
  128. buttonText: 'Select range {buttonText}'
  129. },
  130. /**
  131. * Accessibility language options for the data table.
  132. *
  133. * @since 8.0.0
  134. */
  135. table: {
  136. viewAsDataTableButtonText: 'View as data table, {chartTitle}',
  137. tableSummary: 'Table representation of chart.'
  138. },
  139. /**
  140. * Default announcement for new data in charts. If addPoint or
  141. * addSeries is used, and only one series/point is added, the
  142. * `newPointAnnounce` and `newSeriesAnnounce` strings are used.
  143. * The `...Single` versions will be used if there is only one chart
  144. * on the page, and the `...Multiple` versions will be used if there
  145. * are multiple charts on the page. For all other new data events,
  146. * the `newDataAnnounce` string will be used.
  147. *
  148. * @since 7.1.0
  149. */
  150. announceNewData: {
  151. newDataAnnounce: 'Updated data for chart {chartTitle}',
  152. newSeriesAnnounceSingle: 'New data series: {seriesDesc}',
  153. newPointAnnounceSingle: 'New data point: {pointDesc}',
  154. newSeriesAnnounceMultiple: 'New data series in chart {chartTitle}: {seriesDesc}',
  155. newPointAnnounceMultiple: 'New data point in chart {chartTitle}: {pointDesc}'
  156. },
  157. /**
  158. * Descriptions of lesser known series types. The relevant
  159. * description is added to the screen reader information region
  160. * when these series types are used.
  161. *
  162. * @since 6.0.6
  163. */
  164. seriesTypeDescriptions: {
  165. boxplot: 'Box plot charts are typically used to display ' +
  166. 'groups of statistical data. Each data point in the ' +
  167. 'chart can have up to 5 values: minimum, lower quartile, ' +
  168. 'median, upper quartile, and maximum.',
  169. arearange: 'Arearange charts are line charts displaying a ' +
  170. 'range between a lower and higher value for each point.',
  171. areasplinerange: 'These charts are line charts displaying a ' +
  172. 'range between a lower and higher value for each point.',
  173. bubble: 'Bubble charts are scatter charts where each data ' +
  174. 'point also has a size value.',
  175. columnrange: 'Columnrange charts are column charts ' +
  176. 'displaying a range between a lower and higher value for ' +
  177. 'each point.',
  178. errorbar: 'Errorbar series are used to display the ' +
  179. 'variability of the data.',
  180. funnel: 'Funnel charts are used to display reduction of data ' +
  181. 'in stages.',
  182. pyramid: 'Pyramid charts consist of a single pyramid with ' +
  183. 'item heights corresponding to each point value.',
  184. waterfall: 'A waterfall chart is a column chart where each ' +
  185. 'column contributes towards a total end value.'
  186. },
  187. /**
  188. * Chart type description strings. This is added to the chart
  189. * information region.
  190. *
  191. * If there is only a single series type used in the chart, we use
  192. * the format string for the series type, or default if missing.
  193. * There is one format string for cases where there is only a single
  194. * series in the chart, and one for multiple series of the same
  195. * type.
  196. *
  197. * @since 6.0.6
  198. */
  199. chartTypes: {
  200. /* eslint-disable max-len */
  201. emptyChart: 'Empty chart',
  202. mapTypeDescription: 'Map of {mapTitle} with {numSeries} data series.',
  203. unknownMap: 'Map of unspecified region with {numSeries} data series.',
  204. combinationChart: 'Combination chart with {numSeries} data series.',
  205. defaultSingle: 'Chart with {numPoints} data {#plural(numPoints, points, point)}.',
  206. defaultMultiple: 'Chart with {numSeries} data series.',
  207. splineSingle: 'Line chart with {numPoints} data {#plural(numPoints, points, point)}.',
  208. splineMultiple: 'Line chart with {numSeries} lines.',
  209. lineSingle: 'Line chart with {numPoints} data {#plural(numPoints, points, point)}.',
  210. lineMultiple: 'Line chart with {numSeries} lines.',
  211. columnSingle: 'Bar chart with {numPoints} {#plural(numPoints, bars, bar)}.',
  212. columnMultiple: 'Bar chart with {numSeries} data series.',
  213. barSingle: 'Bar chart with {numPoints} {#plural(numPoints, bars, bar)}.',
  214. barMultiple: 'Bar chart with {numSeries} data series.',
  215. pieSingle: 'Pie chart with {numPoints} {#plural(numPoints, slices, slice)}.',
  216. pieMultiple: 'Pie chart with {numSeries} pies.',
  217. scatterSingle: 'Scatter chart with {numPoints} {#plural(numPoints, points, point)}.',
  218. scatterMultiple: 'Scatter chart with {numSeries} data series.',
  219. boxplotSingle: 'Boxplot with {numPoints} {#plural(numPoints, boxes, box)}.',
  220. boxplotMultiple: 'Boxplot with {numSeries} data series.',
  221. bubbleSingle: 'Bubble chart with {numPoints} {#plural(numPoints, bubbles, bubble)}.',
  222. bubbleMultiple: 'Bubble chart with {numSeries} data series.'
  223. },
  224. /**
  225. * Axis description format strings.
  226. *
  227. * @since 6.0.6
  228. */
  229. axis: {
  230. /* eslint-disable max-len */
  231. xAxisDescriptionSingular: 'The chart has 1 X axis displaying {names[0]}. {ranges[0]}',
  232. xAxisDescriptionPlural: 'The chart has {numAxes} X axes displaying {#each(names, -1) }and {names[-1]}.',
  233. yAxisDescriptionSingular: 'The chart has 1 Y axis displaying {names[0]}. {ranges[0]}',
  234. yAxisDescriptionPlural: 'The chart has {numAxes} Y axes displaying {#each(names, -1) }and {names[-1]}.',
  235. timeRangeDays: 'Range: {range} days.',
  236. timeRangeHours: 'Range: {range} hours.',
  237. timeRangeMinutes: 'Range: {range} minutes.',
  238. timeRangeSeconds: 'Range: {range} seconds.',
  239. rangeFromTo: 'Range: {rangeFrom} to {rangeTo}.',
  240. rangeCategories: 'Range: {numCategories} categories.'
  241. },
  242. /**
  243. * Exporting menu format strings for accessibility module.
  244. *
  245. * @since 6.0.6
  246. */
  247. exporting: {
  248. chartMenuLabel: 'Chart menu',
  249. menuButtonLabel: 'View chart menu',
  250. exportRegionLabel: 'Chart menu'
  251. },
  252. /**
  253. * Lang configuration for different series types. For more dynamic
  254. * control over the series element descriptions, see
  255. * [accessibility.seriesDescriptionFormatter](#accessibility.seriesDescriptionFormatter).
  256. *
  257. * @since 6.0.6
  258. */
  259. series: {
  260. /**
  261. * Lang configuration for the series main summary. Each series
  262. * type has two modes:
  263. *
  264. * 1. This series type is the only series type used in the
  265. * chart
  266. *
  267. * 2. This is a combination chart with multiple series types
  268. *
  269. * If a definition does not exist for the specific series type
  270. * and mode, the 'default' lang definitions are used.
  271. *
  272. * @since 6.0.6
  273. */
  274. summary: {
  275. /* eslint-disable max-len */
  276. 'default': '{name}, series {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.',
  277. defaultCombination: '{name}, series {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.',
  278. line: '{name}, line {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.',
  279. lineCombination: '{name}, series {ix} of {numSeries}. Line with {numPoints} data {#plural(numPoints, points, point)}.',
  280. spline: '{name}, line {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.',
  281. splineCombination: '{name}, series {ix} of {numSeries}. Line with {numPoints} data {#plural(numPoints, points, point)}.',
  282. column: '{name}, bar series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bars, bar)}.',
  283. columnCombination: '{name}, series {ix} of {numSeries}. Bar series with {numPoints} {#plural(numPoints, bars, bar)}.',
  284. bar: '{name}, bar series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bars, bar)}.',
  285. barCombination: '{name}, series {ix} of {numSeries}. Bar series with {numPoints} {#plural(numPoints, bars, bar)}.',
  286. pie: '{name}, pie {ix} of {numSeries} with {numPoints} {#plural(numPoints, slices, slice)}.',
  287. pieCombination: '{name}, series {ix} of {numSeries}. Pie with {numPoints} {#plural(numPoints, slices, slice)}.',
  288. scatter: '{name}, scatter plot {ix} of {numSeries} with {numPoints} {#plural(numPoints, points, point)}.',
  289. scatterCombination: '{name}, series {ix} of {numSeries}, scatter plot with {numPoints} {#plural(numPoints, points, point)}.',
  290. boxplot: '{name}, boxplot {ix} of {numSeries} with {numPoints} {#plural(numPoints, boxes, box)}.',
  291. boxplotCombination: '{name}, series {ix} of {numSeries}. Boxplot with {numPoints} {#plural(numPoints, boxes, box)}.',
  292. bubble: '{name}, bubble series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bubbles, bubble)}.',
  293. bubbleCombination: '{name}, series {ix} of {numSeries}. Bubble series with {numPoints} {#plural(numPoints, bubbles, bubble)}.',
  294. map: '{name}, map {ix} of {numSeries} with {numPoints} {#plural(numPoints, areas, area)}.',
  295. mapCombination: '{name}, series {ix} of {numSeries}. Map with {numPoints} {#plural(numPoints, areas, area)}.',
  296. mapline: '{name}, line {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.',
  297. maplineCombination: '{name}, series {ix} of {numSeries}. Line with {numPoints} data {#plural(numPoints, points, point)}.',
  298. mapbubble: '{name}, bubble series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bubbles, bubble)}.',
  299. mapbubbleCombination: '{name}, series {ix} of {numSeries}. Bubble series with {numPoints} {#plural(numPoints, bubbles, bubble)}.'
  300. },
  301. /**
  302. * User supplied description text. This is added in the point
  303. * comment description by default if present.
  304. *
  305. * @since 6.0.6
  306. */
  307. description: '{description}',
  308. /**
  309. * xAxis description for series if there are multiple xAxes in
  310. * the chart.
  311. *
  312. * @since 6.0.6
  313. */
  314. xAxisDescription: 'X axis, {name}',
  315. /**
  316. * yAxis description for series if there are multiple yAxes in
  317. * the chart.
  318. *
  319. * @since 6.0.6
  320. */
  321. yAxisDescription: 'Y axis, {name}',
  322. /**
  323. * Description for the value of null points.
  324. *
  325. * @since 8.0.0
  326. */
  327. nullPointValue: 'No value',
  328. /**
  329. * Description for annotations on a point, as it is made available
  330. * to assistive technology.
  331. *
  332. * @since 8.0.1
  333. */
  334. pointAnnotationsDescription: '{Annotation: #each(annotations). }'
  335. }
  336. }
  337. };
  338. export default langOptions;