PageSourceSearch

https://www.marseille-tourisme.com/app/dist/marseille-tourisme/add…/code/es-modules/Core/Defaults.js

js marseille-tourisme.com collected 2026-09-24 08:59:05 UTC 107,419 bytes, 2,816 lines download raw bytes

1/* *
2 *
3 *  (c) 2010-2024 Torstein Honsi
4 *
5 *  License: www.highcharts.com/license
6 *
7 *  !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
8 *
9 * */
10'use strict';
11import ChartDefaults from './Chart/ChartDefaults.js';
12import H from './Globals.js';
13const { isTouchDevice } = H;
14import Palettes from './Color/Palettes.js';
15import Time from './Time.js';
16import U from './Utilities.js';
17const { fireEvent, merge } = U;
18/* *
19 *
20 *  API Options
21 *
22 * */
23/**
24 * Global default settings.
25 *
26 * @name Highcharts.defaultOptions
27 * @type {Highcharts.Options}
28 */ /**
29* @optionparent
30* @private
31*/
32const defaultOptions = {
33    /**
34     * An array containing the default colors for the chart's series. When
35     * all colors are used, new colors are pulled from the start again.
36     *
37     * Default colors can also be set on a series or series.type basis,
38     * see [column.colors](#plotOptions.column.colors),
39     * [pie.colors](#plotOptions.pie.colors).
40     *
41     * In styled mode, the colors option doesn't exist. Instead, colors
42     * are defined in CSS and applied either through series or point class
43     * names, or through the [chart.colorCount](#chart.colorCount) option.
44     *
45     * @sample {highcharts} highcharts/chart/colors/
46     *         Assign a global color theme
47     * @sample highcharts/members/theme-v10/
48     *         Latest release styled like version 10
49     *
50     * @type    {Array<(Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject)>}
51     * @default [
52     *     "#2caffe",
53     *     "#544fc5",
54     *     "#00e272",
55     *     "#fe6a35",
56     *     "#6b8abc",
57     *     "#d568fb",
58     *     "#2ee0ca",
59     *     "#fa4b42",
60     *     "#feb56a",
61     *     "#91e8e1"
62     * ]
63     */
64    colors: Palettes.colors,
65    /**
66     * Styled mode only. Configuration object for adding SVG definitions for
67     * reusable elements. See [gradients, shadows and
68     * patterns](https://www.highcharts.com/docs/chart-design-and-style/gradients-shadows-and-patterns)
69     * for more information and code examples.
70     *
71     * @type      {*}
72     * @since     5.0.0
73     * @apioption defs
74     */
75    /**
76     * @ignore-option
77     */
78    symbols: ['circle', 'diamond', 'square', 'triangle', 'triangle-down'],
79    /**
80     * An object containing language-related strings and settings. A typical
81     * setup uses `Highcharts.setOptions` to make the options apply to all
82     * charts in the same page.
83     *
84     * ```js
85     * Highcharts.setOptions({
86     *     lang: {
87     *         locale: 'fr'
88     *     }
89     * });
90     * ```
91     */
92    lang: {
93        /**
94         * The browser locale to use for date and number formatting. The actual
95         * locale used for each chart is determined in three steps:
96         * 1. If this `lang.locale` option is specified, it is used.
97         * 2. Else, look for the closest ancestor HTML element with a `lang`
98         *    attribute, typically the `<html>` element.
99         * 3. If no 'lang' attribute is found, use the default browser locale.
100         *
101         * Use `en-GB`, British English, for approximate consistency with
102         * Highcharts v < 12.
103         *
104         * @sample highcharts/lang/locale/
105         *         Set the locale using the `lang.locale` option
106         * @sample highcharts/lang/locale-attribute/
107         *         Pick up the locale from the HTML `lang` attribute
108         * @sample highcharts/members/highcharts-numberformat
109         *         Arabic locale with digits and dates         *
110         *
111         * @since 12.0.0
112         * @type {string|Array<string>}
113         */
114        locale: void 0,
115        /**
116         * The loading text that appears when the chart is set into the loading
117         * state following a call to `chart.showLoading`.
118         */
119        loading: 'Loading...',
120        /**
121         * An array containing the months names. Corresponds to the `%B` format
122         * in `Highcharts.dateFormat()`. Defaults to 'undefined',
123         * meaning the default month names are used according to the
124         * `lang.locale` setting.
125         *
126         * @type    {Array<string>}
127         */
128        months: void 0,
129        /**
130         * An array containing the months names in abbreviated form. Corresponds
131         * to the `%b` format in `Highcharts.dateFormat()`. Defaults to
132         * 'undefined', meaning the default short month names are used according
133         * to the `lang.locale` setting.
134         *
135         * @type    {Array<string>}
136         */
137        shortMonths: void 0,
138        /**
139         * An array containing the weekday names. Defaults to 'undefined',
140         * meaning the default weekday names are used according to the
141         * `lang.locale` setting.
142         *
143         * @type    {Array<string>}
144         */
145        weekdays: void 0,
146        /**
147         * Short week days, starting Sunday. Defaults to 'undefined', meaning
148         * the default short weekday names are used according to the
149         * `lang.locale` setting.
150         *
151         * @sample highcharts/lang/shortweekdays/
152         *         Finnish two-letter abbreviations
153         *
154         * @type      {Array<string>}
155         * @since     4.2.4
156         * @apioption lang.shortWeekdays
157         */
158        /**
159         * What to show in a date field for invalid dates. Defaults to an empty
160         * string.
161         *
162         * @type      {string}
163         * @since     4.1.8
164         * @product   highcharts highstock
165         * @apioption lang.invalidDate
166         */
167        /**
168         * The title appearing on hovering the zoom in button. The text itself
169         * defaults to "+" and can be changed in the button options.
170         *
171         * @type      {string}
172         * @default   Zoom in
173         * @product   highmaps
174         * @apioption lang.zoomIn
175         */
176        /**
177         * The title appearing on hovering the zoom out button. The text itself
178         * defaults to "-" and can be changed in the button options.
179         *
180         * @type      {string}
181         * @default   Zoom out
182         * @product   highmaps
183         * @apioption lang.zoomOut
184         */
185        /**
186         * The default decimal point used in the `Highcharts.numberFormat`
187         * method unless otherwise specified in the function arguments. Defaults
188         * to the locale decimal point as determined by `lang.locale`.
189         *
190         * @type      {string}
191         * @default   undefined
192         * @since     1.2.2
193         * @apioption lang.decimalPoint
194         */
195        /**
196         * [Metric prefixes](https://en.wikipedia.org/wiki/Metric_prefix) used
197         * to shorten high numbers in axis labels. Replacing any of the
198         * positions with `null` causes the full number to be written. Setting
199         * `numericSymbols` to `undefined` disables shortening altogether.
200         *
201         * @sample {highcharts} highcharts/lang/numericsymbols/
202         *         Replacing the symbols with text
203         * @sample {highstock} highcharts/lang/numericsymbols/
204         *         Replacing the symbols with text
205         *
206         * @type    {Array<string>}
207         * @default ["k", "M", "G", "T", "P", "E"]
208         * @since   2.3.0
209         */
210        numericSymbols: ['k', 'M', 'G', 'T', 'P', 'E'],
211        /**
212         * The magnitude of [numericSymbols](#lang.numericSymbol) replacements.
213         * Use 10000 for Japanese, Korean and various Chinese locales, which
214         * use symbols for 10^4, 10^8 and 10^12.
215         *
216         * @sample highcharts/lang/numericsymbolmagnitude/
217         *         10000 magnitude for Japanese
218         *
219         * @type      {number}
220         * @default   1000
221         * @since     5.0.3
222         * @apioption lang.numericSymbolMagnitude
223         */
224        /**
225         * The default thousands separator used in the `Highcharts.numberFormat`
226         * method unless otherwise specified in the function arguments. Defaults
227         * to the locale thousands separator as determined by `lang.locale`.
228         *
229         * @type      {string}
230         * @default   undefined
231         * @since     1.2.2
232         * @apioption lang.thousandsSep
233         */
234        /**
235         * The text for the label appearing when a chart is zoomed.
236         *
237         * @since 1.2.4
238         */
239        resetZoom: 'Reset zoom',
240        /**
241         * The tooltip title for the label appearing when a chart is zoomed.
242         *
243         * @since 1.2.4
244         */
245        resetZoomTitle: 'Reset zoom level 1:1'
246    },
247    /**
248     * Global options that don't apply to each chart. These options, like
249     * the `lang` options, must be set using the `Highcharts.setOptions`
250     * method.
251     *
252     * ```js
253     * Highcharts.setOptions({
254     *     global: {
255     *         buttonTheme: {
256     *             fill: '#d0d0d0'
257     *         }
258     *     }
259     * });
260     * ```
261     */
262    global: {
263        /**
264         * General theme for buttons. This applies to the zoom button, exporting
265         * context menu, map navigation, range selector buttons and custom
266         * buttons generated using the `SVGRenderer.button` function. However,
267         * each of these may be overridden with more specific options.
268         *
269         * @sample highcharts/global/buttontheme
270         *         General button theme
271         * @since 11.4.2
272         */
273        buttonTheme: {
274            /**
275             * The fill color for buttons
276             */
277            fill: "#f7f7f7" /* Palette.neutralColor3 */,
278            /**
279             * The padding of buttons
280             */
281            padding: 8,
282            /**
283             * The border radius for buttons
284             */
285            r: 2,
286            /**
287             * The stroke color for buttons
288             */
289            stroke: "#cccccc" /* Palette.neutralColor20 */,
290            /**
291             * The stroke width for buttons
292             */
293            'stroke-width': 1,
294            /**
295             * CSS styling for the buttons' text
296             */
297            style: {
298                color: "#333333" /* Palette.neutralColor80 */,
299                cursor: 'pointer',
300                fontSize: '0.8em',
301                fontWeight: 'normal'
302            },
303            /**
304             * State overrides for the buttons
305             */
306            states: {
307                /**
308                 * Hover state overrides for the buttons are applied in addition
309                 * to the normal state options
310                 */
311                hover: {
312                    fill: "#e6e6e6" /* Palette.neutralColor10 */
313                },
314                /**
315                 * Select state overrides for the buttons are applied in
316                 * addition to the normal state options
317                 */
318                select: {
319                    fill: "#e6e9ff" /* Palette.highlightColor10 */,
320                    style: {
321                        color: "#000000" /* Palette.neutralColor100 */,
322                        fontWeight: 'bold'
323                    }
324                },
325                /**
326                 * Disabled state overrides for the buttons are applied in
327                 * addition to the normal state options
328                 */
329                disabled: {
330                    /**
331                     * Disabled state CSS style overrides for the buttons' text
332                     */
333                    style: {
334                        color: "#cccccc" /* Palette.neutralColor20 */
335                    }
336                }
337            }
338        }
339    },
340    /**
341     * Time options that can apply globally or to individual charts. These
342     * settings affect how `datetime` axes are laid out, how tooltips are
343     * formatted, how series
344     * [pointIntervalUnit](#plotOptions.series.pointIntervalUnit) works and how
345     * the Highcharts Stock range selector handles time.
346     *
347     * The common use case is that all charts in the same Highcharts object
348     * share the same time settings, in which case the global settings are set
349     * using `setOptions`.
350     *
351     * ```js
352     * // Apply time settings globally
353     * Highcharts.setOptions({
354     *     time: {
355     *         timezone: 'Europe/London'
356     *     }
357     * });
358     * // Apply time settings by instance
359     * const chart = Highcharts.chart('container', {
360     *     time: {
361     *         timezone: 'America/New_York'
362     *     },
363     *     series: [{
364     *         data: [1, 4, 3, 5]
365     *     }]
366     * });
367     *
368     * // Use the Time object
369     * console.log(
370     *        'Current time in New York',
371     *        chart.time.dateFormat('%Y-%m-%d %H:%M:%S', Date.now())
372     * );
373     * ```
374     *
375     * Since v6.0.5, the time options were moved from the `global` object to the
376     * `time` object, and time options can be set on each individual chart.
377     *
378     * @sample {highcharts|highstock}
379     *         highcharts/time/timezone/
380     *         Set the timezone globally
381     * @sample {highcharts}
382     *         highcharts/time/individual/
383     *         Set the timezone per chart instance
384     * @sample {highstock}
385     *         stock/time/individual/
386     *         Set the timezone per chart instance
387     *
388     * @since     6.0.5
389     * @optionparent time
390     */
391    time: {
392        /**
393         * A custom `Date` class for advanced date handling. For example,
394         * [JDate](https://github.com/tahajahangir/jdate) can be hooked in to
395         * handle Jalali dates.
396         *
397         * @type      {*}
398         * @since     4.0.4
399         * @product   highcharts highstock gantt
400         */
401        Date: void 0,
402        /**
403         * A named time zone. Supported time zone names rely on the browser
404         * implementations, as described in the [mdn
405         * docs](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#timezone).
406         * If the given time zone is not recognized by the browser, Highcharts
407         * provides a warning and falls back to returning a 0 offset,
408         * corresponding to the UTC time zone.
409         *
410         * The time zone affects axis scaling, tickmark placement and
411         * time display in `Highcharts.dateFormat`.
412         *
413         * Setting `timezone` to `undefined` falls back to the default browser
414         * timezone setting.
415         *
416         * Until v11.2.0, this option depended on moment.js.
417         *
418         * @sample {highcharts|highstock} highcharts/time/timezone/ Europe/Oslo
419         *
420         * @type      {string}
421         * @since     5.0.7
422         * @product   highcharts highstock gantt
423         */
424        timezone: 'UTC',
425        /**
426         * The timezone offset in minutes. Positive values are west, negative
427         * values are east of UTC, as in the ECMAScript
428         * [getTimezoneOffset](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getTimezoneOffset)
429         * method. Use this to display UTC based data in a predefined time zone.
430         *
431         * This option is deprecated as of v11.4.1 and will be removed in a
432         * future release. Use the [time.timezone](#time.timezone) option
433         * instead.
434         *
435         * @see [time.getTimezoneOffset](#time.getTimezoneOffset)
436         *
437         * @sample {highcharts|highstock} highcharts/time/timezoneoffset/
438         *         Timezone offset
439         *
440         * @since     3.0.8
441         * @deprecated 11.4.2
442         * @product   highcharts highstock gantt
443         */
444        timezoneOffset: 0,
445        /**
446         * Whether to use UTC time for axis scaling, tickmark placement and
447         * time display in `Highcharts.dateFormat`. Advantages of using UTC
448         * is that the time displays equally regardless of the user agent's
449         * time zone settings. Local time can be used when the data is loaded
450         * in real time or when correct Daylight Saving Time transitions are
451         * required.
452         *
453         * Setting `useUTC` to true is equivalent to setting `time.timezone` to
454         * `"UTC"`. Setting `useUTC` to false is equivalent to setting
455         * `time.timezone` to `undefined`.
456         *
457         * @see [time.timezone](#timezone)
458         *
459         * @sample {highcharts} highcharts/time/useutc-true/
460         *         True by default
461         * @sample {highcharts} highcharts/time/useutc-false/
462         *         False
463         *
464         * @deprecated
465         */
466        useUTC: void 0
467    },
468    chart: ChartDefaults,
469    /**
470     * The chart's main title.
471     *
472     * @sample {highmaps} maps/title/title/
473     *         Title options demonstrated
474     * @sample {highcharts} highcharts/title/align-auto/
475     *         Default title alignment
476     */
477    title: {
478        /**
479         * When the title is floating, the plot area will not move to make space
480         * for it.
481         *
482         * @sample {highcharts} highcharts/chart/zoomtype-none/
483         *         False by default
484         * @sample {highcharts} highcharts/title/floating/
485         *         True - title on top of the plot area
486         * @sample {highstock} stock/chart/title-floating/
487         *         True - title on top of the plot area
488         *
489         * @type      {boolean}
490         * @default   false
491         * @since     2.1
492         * @apioption title.floating
493         */
494        /**
495         * Whether to
496         * [use HTML](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting#html)
497         * to render the text.
498         *
499         * @type      {boolean}
500         * @default   false
501         * @apioption title.useHTML
502         */
503        /**
504         * The vertical alignment of the title. Can be one of `"top"`,
505         * `"middle"` and `"bottom"`. When a value is given, the title behaves
506         * as if [floating](#title.floating) were `true`.
507         *
508         * @sample {highcharts} highcharts/title/verticalalign/
509         *         Chart title in bottom right corner
510         * @sample {highstock} stock/chart/title-verticalalign/
511         *         Chart title in bottom right corner
512         *
513         * @type      {Highcharts.VerticalAlignValue}
514         * @since     2.1
515         * @apioption title.verticalAlign
516         */
517        /**
518         * The x position of the title relative to the alignment within
519         * `chart.spacingLeft` and `chart.spacingRight`.
520         *
521         * @sample {highcharts} highcharts/title/align/
522         *         Aligned to the plot area (x = 70px = margin left - spacing
523         *         left)
524         * @sample {highstock} stock/chart/title-align/
525         *         Aligned to the plot area (x = 50px = margin left - spacing
526         *         left)
527         *
528         * @type      {number}
529         * @default   0
530         * @since     2.0
531         * @apioption title.x
532         */
533        /**
534         * The y position of the title relative to the alignment within
535         * [chart.spacingTop](#chart.spacingTop) and [chart.spacingBottom](
536         * #chart.spacingBottom). By default it depends on the font size.
537         *
538         * @sample {highcharts} highcharts/title/y/
539         *         Title inside the plot area
540         * @sample {highstock} stock/chart/title-verticalalign/
541         *         Chart title in bottom right corner
542         *
543         * @type      {number}
544         * @since     2.0
545         * @apioption title.y
546         */
547        /**
548         * CSS styles for the title. Use this for font styling, but use `align`,
549         * `x` and `y` for text alignment.
550         *
551         * Note that the default [title.minScale](#title.minScale) option also
552         * affects the rendered font size. In order to keep the font size fixed
553         * regardless of title length, set `minScale` to 1.
554         *
555         * In styled mode, the title style is given in the `.highcharts-title`
556         * class.
557         *
558         * @sample {highcharts} highcharts/title/style/
559         *         Custom color and weight
560         * @sample {highstock} stock/chart/title-style/
561         *         Custom color and weight
562         * @sample highcharts/css/titles/
563         *         Styled mode
564         *
565         * @type      {Highcharts.CSSObject}
566         * @default   {highcharts|highmaps} { "color": "#333333", "fontSize": "18px" }
567         * @default   {highstock} { "color": "#333333", "fontSize": "16px" }
568         */
569        style: {
570            color: "#333333" /* Palette.neutralColor80 */,
571            fontWeight: 'bold'
572        },
573        /**
574         * The title of the chart. To disable the title, set the `text` to
575         * `undefined`.
576         *
577         * @sample {highcharts} highcharts/title/text/
578         *         Custom title
579         * @sample {highstock} stock/chart/title-text/
580         *         Custom title
581         *
582         * @default {highcharts|highmaps} Chart title
583         * @default {highstock} undefined
584         */
585        text: 'Chart title',
586        /**
587         * The horizontal alignment of the title. Can be one of "left", "center"
588         * and "right".
589         *
590         * Since v12 it defaults to `undefined`, meaning the alignment is
591         * computed for best fit. If the text fits in one line, it aligned to
592         * the center, but if it is wrapped into multiple lines, it is aligned
593         * to the left.
594         *
595         * @sample {highcharts} highcharts/title/align-auto/
596         *         Default alignment, dynamic
597         * @sample {highcharts} highcharts/title/align/
598         *         Aligned to the plot area (x = 70px = margin left - spacing
599         *         left)
600         * @sample {highstock} stock/chart/title-align/
601         *         Aligned to the plot area (x = 50px = margin left - spacing
602         *         left)
603         *
604         * @type      {Highcharts.AlignValue}
605         * @default   undefined
606         * @since     2.0
607         * @apioption title.align
608         */
609        /**
610         * The margin between the title and the plot area, or if a subtitle
611         * is present, the margin between the subtitle and the plot area.
612         *
613         * @sample {highcharts} highcharts/title/margin-50/
614         *         A chart title margin of 50
615         * @sample {highcharts} highcharts/title/margin-subtitle/
616         *         The same margin applied with a subtitle
617         * @sample {highstock} stock/chart/title-margin/
618         *         A chart title margin of 50
619         *
620         * @since 2.1
621         */
622        margin: 15,
623        /**
624         * When the title is too wide to fit in the chart, the default behavior
625         * is to scale it down to fit, or apply word wrap if it is scaled down
626         * to `minScale` and still doesn't fit.
627         *
628         * The default value reflects the scale, when using default font sizes,
629         * when the title font size matches that of the subtitle. The title
630         * still stands out as it is bold by default.
631         *
632         * Set `minScale` to 1 to avoid downscaling.
633         *
634         * @sample {highcharts} highcharts/title/align-auto/
635         *         Downscaling demonstrated
636         *
637         * @since 12.0.0
638         */
639        minScale: 0.67
640    },
641    /**
642     * The chart's subtitle. This can be used both to display a subtitle below
643     * the main title, and to display random text anywhere in the chart. The
644     * subtitle can be updated after chart initialization through the
645     * `Chart.setTitle` method.
646     *
647     * @sample {highcharts} highcharts/title/align-auto/
648     *         Default title alignment
649     * @sample {highmaps} maps/title/subtitle/
650     *         Subtitle options demonstrated
651     */
652    subtitle: {
653        /**
654         * When the subtitle is floating, the plot area will not move to make
655         * space for it.
656         *
657         * @sample {highcharts} highcharts/subtitle/floating/
658         *         Floating title and subtitle
659         * @sample {highstock} stock/chart/subtitle-footnote
660         *         Footnote floating at bottom right of plot area
661         *
662         * @type      {boolean}
663         * @default   false
664         * @since     2.1
665         * @apioption subtitle.floating
666         */
667        /**
668         * CSS styles for the title.
669         *
670         * In styled mode, the subtitle style is given in the
671         * `.highcharts-subtitle` class.
672         *
673         * @sample {highcharts} highcharts/subtitle/style/
674         *         Custom color and weight
675         * @sample {highcharts} highcharts/css/titles/
676         *         Styled mode
677         * @sample {highstock} stock/chart/subtitle-style
678         *         Custom color and weight
679         * @sample {highstock} highcharts/css/titles/
680         *         Styled mode
681         * @sample {highmaps} highcharts/css/titles/
682         *         Styled mode
683         *
684         * @type      {Highcharts.CSSObject}
685         * @default   {"color": "#666666"}
686         * @apioption subtitle.style
687         */
688        /**
689         * Whether to
690         * [use HTML](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting#html)
691         * to render the text.
692         *
693         * @type      {boolean}
694         * @default   false
695         * @apioption subtitle.useHTML
696         */
697        /**
698         * The vertical alignment of the title. Can be one of `"top"`,
699         * `"middle"` and `"bottom"`. When middle, the subtitle behaves as
700         * floating.
701         *
702         * @sample {highcharts} highcharts/subtitle/verticalalign/
703         *         Footnote at the bottom right of plot area
704         * @sample {highstock} stock/chart/subtitle-footnote
705         *         Footnote at the bottom right of plot area
706         *
707         * @type      {Highcharts.VerticalAlignValue}
708         * @since     2.1
709         * @apioption subtitle.verticalAlign
710         */
711        /**
712         * The x position of the subtitle relative to the alignment within
713         * `chart.spacingLeft` and `chart.spacingRight`.
714         *
715         * @sample {highcharts} highcharts/subtitle/align/
716         *         Footnote at right of plot area
717         * @sample {highstock} stock/chart/subtitle-footnote
718         *         Footnote at the bottom right of plot area
719         *
720         * @type      {number}
721         * @default   0
722         * @since     2.0
723         * @apioption subtitle.x
724         */
725        /**
726         * The y position of the subtitle relative to the alignment within
727         * `chart.spacingTop` and `chart.spacingBottom`. By default the subtitle
728         * is laid out below the title unless the title is floating.
729         *
730         * @sample {highcharts} highcharts/subtitle/verticalalign/
731         *         Footnote at the bottom right of plot area
732         * @sample {highstock} stock/chart/subtitle-footnote
733         *         Footnote at the bottom right of plot area
734         *
735         * @type      {number}
736         * @since     2.0
737         * @apioption subtitle.y
738         */
739        /**
740         * CSS styles for the title.
741         *
742         * In styled mode, the subtitle style is given in the
743         * `.highcharts-subtitle` class.
744         *
745         * @sample {highcharts} highcharts/subtitle/style/
746         *         Custom color and weight
747         * @sample {highcharts} highcharts/css/titles/
748         *         Styled mode
749         * @sample {highstock} stock/chart/subtitle-style
750         *         Custom color and weight
751         * @sample {highstock} highcharts/css/titles/
752         *         Styled mode
753         * @sample {highmaps} highcharts/css/titles/
754         *         Styled mode
755         *
756         * @type      {Highcharts.CSSObject}
757         * @default   {"color": "#666666"}
758         */
759        style: {
760            color: "#666666" /* Palette.neutralColor60 */,
761            /**
762             * @type {number|string}
763             */
764            fontSize: '0.8em'
765        },
766        /**
767         * The subtitle of the chart.
768         *
769         * @sample {highcharts|highstock} highcharts/subtitle/text/
770         *         Custom subtitle
771         * @sample {highcharts|highstock} highcharts/subtitle/text-formatted/
772         *         Formatted and linked text.
773         */
774        text: ''
775        /**
776         * The horizontal alignment of the subtitle. Can be one of "left",
777         * "center" and "right". Since v12, it defaults to `undefined`, meaning
778         * the actual alignment is inherited from the alignment of the main
779         * title.
780         *
781         * @sample {highcharts} highcharts/title/align-auto/
782         *         Default title and subtitle alignment, dynamic
783         * @sample {highcharts} highcharts/subtitle/align/
784         *         Footnote at right of plot area
785         * @sample {highstock} stock/chart/subtitle-footnote
786         *         Footnote at bottom right of plot area
787         *
788         * @type  {Highcharts.AlignValue}
789         * @default undefined
790         * @since 2.0
791         * @apioption subtitle.align
792         */
793    },
794    /**
795     * The chart's caption, which will render below the chart and will be part
796     * of exported charts. The caption can be updated after chart initialization
797     * through the `Chart.update` or `Chart.caption.update` methods.
798     *
799     * @sample highcharts/caption/text/
800     *         A chart with a caption
801     * @since  7.2.0
802     */
803    caption: {
804        /**
805         * When the caption is floating, the plot area will not move to make
806         * space for it.
807         *
808         * @type      {boolean}
809         * @default   false
810         * @apioption caption.floating
811         */
812        /**
813         * The margin between the caption and the plot area.
814         */
815        margin: 15,
816        /**
817         * Whether to
818         * [use HTML](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting#html)
819         * to render the text.
820         *
821         * @type      {boolean}
822         * @default   false
823         * @apioption caption.useHTML
824         */
825        /**
826         * The x position of the caption relative to the alignment within
827         * `chart.spacingLeft` and `chart.spacingRight`.
828         *
829         * @type      {number}
830         * @default   0
831         * @apioption caption.x
832         */
833        /**
834         * The y position of the caption relative to the alignment within
835         * `chart.spacingTop` and `chart.spacingBottom`.
836         *
837         * @type      {number}
838         * @apioption caption.y
839         */
840        /**
841         * CSS styles for the caption.
842         *
843         * In styled mode, the caption style is given in the
844         * `.highcharts-caption` class.
845         *
846         * @sample {highcharts} highcharts/css/titles/
847         *         Styled mode
848         *
849         * @type      {Highcharts.CSSObject}
850         * @default   {"color": "#666666"}
851         */
852        style: {
853            color: "#666666" /* Palette.neutralColor60 */,
854            /**
855             * @type {number|string}
856             */
857            fontSize: '0.8em'
858        },
859        /**
860         * The caption text of the chart.
861         *
862         * @sample {highcharts} highcharts/caption/text/
863         *         Custom caption
864         */
865        text: '',
866        /**
867         * The horizontal alignment of the caption. Can be one of "left",
868         *  "center" and "right".
869         *
870         * @type  {Highcharts.AlignValue}
871         */
872        align: 'left',
873        /**
874         * The vertical alignment of the caption. Can be one of `"top"`,
875         * `"middle"` and `"bottom"`. When middle, the caption behaves as
876         * floating.
877         *
878         * @type      {Highcharts.VerticalAlignValue}
879         */
880        verticalAlign: 'bottom'
881    },
882    /**
883     * The plotOptions is a wrapper object for config objects for each series
884     * type. The config objects for each series can also be overridden for
885     * each series item as given in the series array.
886     *
887     * Configuration options for the series are given in three levels. Options
888     * for all series in a chart are given in the [plotOptions.series](
889     * #plotOptions.series) object. Then options for all series of a specific
890     * type are given in the plotOptions of that type, for example
891     * `plotOptions.line`. Next, options for one single series are given in
892     * [the series array](#series).
893     */
894    plotOptions: {},
895    /**
896     * The legend is a box containing a symbol and name for each series
897     * item or point item in the chart. Each series (or points in case
898     * of pie charts) is represented by a symbol and its name in the legend.
899     *
900     * It is possible to override the symbol creator function and create
901     * [custom legend symbols](https://jsfiddle.net/gh/get/library/pure/highcharts/highcharts/tree/master/samples/highcharts/studies/legend-custom-symbol/).
902     *
903     * @productdesc {highmaps}
904     * A Highmaps legend by default contains one legend item per series, but if
905     * a `colorAxis` is defined, the axis will be displayed in the legend.
906     * Either as a gradient, or as multiple legend items for `dataClasses`.
907     */
908    legend: {
909        /**
910         * The background color of the legend.
911         *
912         * @see In styled mode, the legend background fill can be applied with
913         *      the `.highcharts-legend-box` class.
914         *
915         * @sample {highcharts} highcharts/legend/backgroundcolor/
916         *         Yellowish background
917         * @sample {highstock} stock/legend/align/
918         *         Various legend options
919         * @sample {highmaps} maps/legend/border-background/
920         *         Border and background options
921         *
922         * @type      {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
923         * @apioption legend.backgroundColor
924         */
925        /**
926         * The width of the drawn border around the legend.
927         *
928         * @see In styled mode, the legend border stroke width can be applied
929         *      with the `.highcharts-legend-box` class.
930         *
931         * @sample {highcharts} highcharts/legend/borderwidth/
932         *         2px border width
933         * @sample {highstock} stock/legend/align/
934         *         Various legend options
935         * @sample {highmaps} maps/legend/border-background/
936         *         Border and background options
937         *
938         * @type      {number}
939         * @default   0
940         * @apioption legend.borderWidth
941         */
942        /**
943         * Enable or disable the legend. There is also a series-specific option,
944         * [showInLegend](#plotOptions.series.showInLegend), that can hide the
945         * series from the legend. In some series types this is `false` by
946         * default, so it must set to `true` in order to show the legend for the
947         * series.
948         *
949         * @sample {highcharts} highcharts/legend/enabled-false/ Legend disabled
950         * @sample {highstock} stock/legend/align/ Various legend options
951         * @sample {highmaps} maps/legend/enabled-false/ Legend disabled
952         *
953         * @default {highstock} false
954         * @default {highmaps} true
955         * @default {gantt} false
956         */
957        enabled: true,
958        /**
959         * The horizontal alignment of the legend box within the chart area.
960         * Valid values are `left`, `center` and `right`.
961         *
962         * In the case that the legend is aligned in a corner position, the
963         * `layout` option will determine whether to place it above/below
964         * or on the side of the plot area.
965         *
966         * @sample {highcharts} highcharts/legend/align/
967         *         Legend at the right of the chart
968         * @sample {highstock} stock/legend/align/
969         *         Various legend options
970         * @sample {highmaps} maps/legend/alignment/
971         *         Legend alignment
972         *
973         * @type  {Highcharts.AlignValue}
974         * @since 2.0
975         */
976        align: 'center',
977        /**
978         * If the [layout](legend.layout) is `horizontal` and the legend items
979         * span over two lines or more, whether to align the items into vertical
980         * columns. Setting this to `false` makes room for more items, but will
981         * look more messy.
982         *
983         * @since 6.1.0
984         */
985        alignColumns: true,
986        /**
987         * A CSS class name to apply to the legend group.
988         */
989        className: 'highcharts-no-tooltip',
990        /**
991         * General event handlers for the legend. These event hooks can
992         * also be attached to the legend at run time using the
993         * `Highcharts.addEvent` function.
994         *
995         * @declare Highcharts.LegendEventsOptionsObject
996         *
997         * @private
998         */
999        events: {},
1000        /**
1001         * Fires when the legend item belonging to the series is clicked. One
1002         * parameter, `event`, is passed to the function. The default action
1003         * is to toggle the visibility of the series, point or data class. This
1004         * can be prevented by returning `false` or calling
1005         * `event.preventDefault()`.
1006         *
1007         * @sample {highcharts} highcharts/legend/itemclick/
1008         *         Confirm hiding and showing
1009         * @sample {highcharts} highcharts/legend/pie-legend-itemclick/
1010         *         Confirm toggle visibility of pie slices
1011         *
1012         * @type      {Highcharts.LegendItemClickCallbackFunction}
1013         * @context   Highcharts.Legend
1014         * @apioption legend.events.itemClick
1015         */
1016        /**
1017         * When the legend is floating, the plot area ignores it and is allowed
1018         * to be placed below it.
1019         *
1020         * @sample {highcharts} highcharts/legend/floating-false/
1021         *         False by default
1022         * @sample {highcharts} highcharts/legend/floating-true/
1023         *         True
1024         * @sample {highmaps} maps/legend/alignment/
1025         *         Floating legend
1026         *
1027         * @type      {boolean}
1028         * @default   false
1029         * @since     2.1
1030         * @apioption legend.floating
1031         */
1032        /**
1033         * The layout of the legend items. Can be one of `horizontal` or
1034         * `vertical` or `proximate`. When `proximate`, the legend items will be
1035         * placed as close as possible to the graphs they're representing,
1036         * except in inverted charts or when the legend position doesn't allow
1037         * it.
1038         *
1039         * @sample {highcharts} highcharts/legend/layout-horizontal/
1040         *         Horizontal by default
1041         * @sample {highcharts} highcharts/legend/layout-vertical/
1042         *         Vertical
1043         * @sample highcharts/legend/layout-proximate
1044         *         Labels proximate to the data
1045         * @sample {highstock} stock/legend/layout-horizontal/
1046         *         Horizontal by default
1047         * @sample {highmaps} maps/legend/padding-itemmargin/
1048         *         Vertical with data classes
1049         * @sample {highmaps} maps/legend/layout-vertical/
1050         *         Vertical with color axis gradient
1051         *
1052         * @validvalue ["horizontal", "vertical", "proximate"]
1053         */
1054        layout: 'horizontal',
1055        /**
1056         * In a legend with horizontal layout, the itemDistance defines the
1057         * pixel distance between each item.
1058         *
1059         * @sample {highcharts} highcharts/legend/layout-horizontal/
1060         *         50px item distance
1061         * @sample {highstock} highcharts/legend/layout-horizontal/
1062         *         50px item distance
1063         *
1064         * @type      {number}
1065         * @default   {highcharts} 20
1066         * @default   {highstock} 20
1067         * @default   {highmaps} 8
1068         * @since     3.0.3
1069         * @apioption legend.itemDistance
1070         */
1071        /**
1072         * The pixel bottom margin for each legend item.
1073         *
1074         * @sample {highcharts|highstock} highcharts/legend/padding-itemmargin/
1075         *         Padding and item margins demonstrated
1076         * @sample {highmaps} maps/legend/padding-itemmargin/
1077         *         Padding and item margins demonstrated
1078         *
1079         * @since     2.2.0
1080         */
1081        itemMarginBottom: 2,
1082        /**
1083         * The pixel top margin for each legend item.
1084         *
1085         * @sample {highcharts|highstock} highcharts/legend/padding-itemmargin/
1086         *         Padding and item margins demonstrated
1087         * @sample {highmaps} maps/legend/padding-itemmargin/
1088         *         Padding and item margins demonstrated
1089         *
1090         * @since     2.2.0
1091         */
1092        itemMarginTop: 2,
1093        /**
1094         * The width for each legend item. By default the items are laid out
1095         * successively. In a [horizontal layout](legend.layout), if the items
1096         * are laid out across two rows or more, they will be vertically aligned
1097         * depending on the [legend.alignColumns](legend.alignColumns) option.
1098         *
1099         * @sample {highcharts} highcharts/legend/itemwidth-default/
1100         *         Undefined by default
1101         * @sample {highcharts} highcharts/legend/itemwidth-80/
1102         *         80 for aligned legend items
1103         *
1104         * @type      {number}
1105         * @since     2.0
1106         * @apioption legend.itemWidth
1107         */
1108        /**
1109         * A [format string](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting)
1110         * for each legend label. Available variables relates to properties on
1111         * the series, or the point in case of pies.
1112         *
1113         * @type      {string}
1114         * @default   {name}
1115         * @since     1.3
1116         * @apioption legend.labelFormat
1117         */
1118        /* eslint-disable valid-jsdoc */
1119        /**
1120         * Callback function to format each of the series' labels. The `this`
1121         * keyword refers to the series object, or the point object in case of
1122         * pie charts. By default the series or point name is printed.
1123         *
1124         * @productdesc {highmaps}
1125         * In Highmaps the context can also be a data class in case of a
1126         * `colorAxis`.
1127         *
1128         * @sample {highcharts} highcharts/legend/labelformatter/
1129         *         Add text
1130         * @sample {highmaps} maps/legend/labelformatter/
1131         *         Data classes with label formatter
1132         *
1133         * @type {Highcharts.FormatterCallbackFunction<Point|Series>}
1134         */
1135        labelFormatter: function () {
1136            // eslint-enable valid-jsdoc
1137            return this.name;
1138        },
1139        /**
1140         * Line height for the legend items. Deprecated as of 2.1\. Instead,
1141         * the line height for each item can be set using
1142         * `itemStyle.lineHeight`, and the padding between items using
1143         * `itemMarginTop` and `itemMarginBottom`.
1144         *
1145         * @sample {highcharts} highcharts/legend/lineheight/
1146         *         Setting padding
1147         *
1148         * @deprecated
1149         *
1150         * @type      {number}
1151         * @default   16
1152         * @since     2.0
1153         * @product   highcharts gantt
1154         * @apioption legend.lineHeight
1155         */
1156        /**
1157         * If the plot area sized is calculated automatically and the legend is
1158         * not floating, the legend margin is the space between the legend and
1159         * the axis labels or plot area.
1160         *
1161         * @sample {highcharts} highcharts/legend/margin-default/
1162         *         12 pixels by default
1163         * @sample {highcharts} highcharts/legend/margin-30/
1164         *         30 pixels
1165         *
1166         * @type      {number}
1167         * @default   12
1168         * @since     2.1
1169         * @apioption legend.margin
1170         */
1171        /**
1172         * Maximum pixel height for the legend. When the maximum height is
1173         * extended, navigation will show.
1174         *
1175         * @type      {number}
1176         * @since     2.3.0
1177         * @apioption legend.maxHeight
1178         */
1179        /**
1180         * The color of the drawn border around the legend.
1181         *
1182         * @see In styled mode, the legend border stroke can be applied with the
1183         *      `.highcharts-legend-box` class.
1184         *
1185         * @sample {highcharts} highcharts/legend/bordercolor/
1186         *         Brown border
1187         * @sample {highstock} stock/legend/align/
1188         *         Various legend options
1189         * @sample {highmaps} maps/legend/border-background/
1190         *         Border and background options
1191         *
1192         * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
1193         */
1194        borderColor: "#999999" /* Palette.neutralColor40 */,
1195        /**
1196         * The border corner radius of the legend.
1197         *
1198         * @sample {highcharts} highcharts/legend/borderradius-default/
1199         *         Square by default
1200         * @sample {highcharts} highcharts/legend/borderradius-round/
1201         *         5px rounded
1202         * @sample {highmaps} maps/legend/border-background/
1203         *         Border and background options
1204         */
1205        borderRadius: 0,
1206        /**
1207         * Options for the paging or navigation appearing when the legend is
1208         * overflown. Navigation works well on screen, but not in static
1209         * exported images. One way of working around that is to
1210         * [increase the chart height in
1211         * export](https://jsfiddle.net/gh/get/library/pure/highcharts/highcharts/tree/master/samples/highcharts/legend/navigation-enabled-false/).
1212         *
1213         * @sample highcharts/legend/scrollable-vertical/
1214         *         Legend with vertical scrollable extension
1215         * @sample highcharts/legend/scrollable-horizontal/
1216         *         Legend with horizontal scrollable extension
1217         *
1218         */
1219        navigation: {
1220            /**
1221             * How to animate the pages when navigating up or down. A value of
1222             * `true` applies the default navigation given in the
1223             * `chart.animation` option. Additional options can be given as an
1224             * object containing values for easing and duration.
1225             *
1226             * @sample {highcharts} highcharts/legend/navigation/
1227             *         Legend page navigation demonstrated
1228             * @sample {highstock} highcharts/legend/navigation/
1229             *         Legend page navigation demonstrated
1230             *
1231             * @type      {boolean|Partial<Highcharts.AnimationOptionsObject>}
1232             * @default   true
1233             * @since     2.2.4
1234             * @apioption legend.navigation.animation
1235             */
1236            /**
1237             * The pixel size of the up and down arrows in the legend paging
1238             * navigation.
1239             *
1240             * @sample {highcharts} highcharts/legend/navigation/
1241             *         Legend page navigation demonstrated
1242             * @sample {highstock} highcharts/legend/navigation/
1243             *         Legend page navigation demonstrated
1244             *
1245             * @type      {number}
1246             * @default   12
1247             * @since     2.2.4
1248             * @apioption legend.navigation.arrowSize
1249             */
1250            /**
1251             * Whether to enable the legend navigation. In most cases, disabling
1252             * the navigation results in an unwanted overflow.
1253             *
1254             * See also the
1255             * [adapt chart to legend](https://github.com/highcharts/adapt-chart-to-legend)
1256             * plugin for a solution to extend the chart height to make room for
1257             * the legend, optionally in exported charts only.
1258             *
1259             * @type      {boolean}
1260             * @default   true
1261             * @since     4.2.4
1262             * @apioption legend.navigation.enabled
1263             */
1264            /**
1265             * Text styles for the legend page navigation.
1266             *
1267             * @see In styled mode, the navigation items are styled with the
1268             *      `.highcharts-legend-navigation` class.
1269             *
1270             * @sample {highcharts} highcharts/legend/navigation/
1271             *         Legend page navigation demonstrated
1272             * @sample {highstock} highcharts/legend/navigation/
1273             *         Legend page navigation demonstrated
1274             *
1275             * @type      {Highcharts.CSSObject}
1276             * @since     2.2.4
1277             * @apioption legend.navigation.style
1278             */
1279            style: {
1280                /**
1281                 * @type {number|string}
1282                 */
1283                fontSize: '0.8em'
1284            },
1285            /**
1286             * The color for the active up or down arrow in the legend page
1287             * navigation.
1288             *
1289             * @see In styled mode, the active arrow be styled with the
1290             *      `.highcharts-legend-nav-active` class.
1291             *
1292             * @sample  {highcharts} highcharts/legend/navigation/
1293             *          Legend page navigation demonstrated
1294             * @sample  {highstock} highcharts/legend/navigation/
1295             *          Legend page navigation demonstrated
1296             *
1297             * @type  {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
1298             * @since 2.2.4
1299             */
1300            activeColor: "#0022ff" /* Palette.highlightColor100 */,
1301            /**
1302             * The color of the inactive up or down arrow in the legend page
1303             * navigation. .
1304             *
1305             * @see In styled mode, the inactive arrow be styled with the
1306             *      `.highcharts-legend-nav-inactive` class.
1307             *
1308             * @sample {highcharts} highcharts/legend/navigation/
1309             *         Legend page navigation demonstrated
1310             * @sample {highstock} highcharts/legend/navigation/
1311             *         Legend page navigation demonstrated
1312             *
1313             * @type  {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
1314             * @since 2.2.4
1315             */
1316            inactiveColor: "#cccccc" /* Palette.neutralColor20 */
1317        },
1318        /**
1319         * The inner padding of the legend box.
1320         *
1321         * @sample {highcharts|highstock} highcharts/legend/padding-itemmargin/
1322         *         Padding and item margins demonstrated
1323         * @sample {highmaps} maps/legend/padding-itemmargin/
1324         *         Padding and item margins demonstrated
1325         *
1326         * @type      {number}
1327         * @default   8
1328         * @since     2.2.0
1329         * @apioption legend.padding
1330         */
1331        /**
1332         * Whether to reverse the order of the legend items compared to the
1333         * order of the series or points as defined in the configuration object.
1334         *
1335         * @see [yAxis.reversedStacks](#yAxis.reversedStacks),
1336         *      [series.legendIndex](#series.legendIndex)
1337         *
1338         * @sample {highcharts} highcharts/legend/reversed/
1339         *         Stacked bar with reversed legend
1340         *
1341         * @type      {boolean}
1342         * @default   false
1343         * @since     1.2.5
1344         * @apioption legend.reversed
1345         */
1346        /**
1347         * Whether to show the symbol on the right side of the text rather than
1348         * the left side. This is common in Arabic and Hebrew.
1349         *
1350         * @sample {highcharts} highcharts/legend/rtl/
1351         *         Symbol to the right
1352         *
1353         * @type      {boolean}
1354         * @default   false
1355         * @since     2.2
1356         * @apioption legend.rtl
1357         */
1358        /**
1359         * CSS styles for the legend area. In the 1.x versions the position
1360         * of the legend area was determined by CSS. In 2.x, the position is
1361         * determined by properties like `align`, `verticalAlign`, `x` and `y`,
1362         * but the styles are still parsed for backwards compatibility.
1363         *
1364         * @deprecated
1365         *
1366         * @type      {Highcharts.CSSObject}
1367         * @product   highcharts highstock
1368         * @apioption legend.style
1369         */
1370        /**
1371         * CSS styles for each legend item. Only a subset of CSS is supported,
1372         * notably those options related to text. The default `textOverflow`
1373         * property makes long texts truncate. Set it to `undefined` to wrap
1374         * text instead. A `width` property can be added to control the text
1375         * width.
1376         *
1377         * @see In styled mode, the legend items can be styled with the
1378         *      `.highcharts-legend-item` class.
1379         *
1380         * @sample {highcharts} highcharts/legend/itemstyle/
1381         *         Bold black text
1382         * @sample {highmaps} maps/legend/itemstyle/
1383         *         Item text styles
1384         *
1385         * @type    {Highcharts.CSSObject}
1386         * @default {"color": "#333333", "cursor": "pointer", "fontSize": "0.8em", "fontWeight": "bold", "textOverflow": "ellipsis"}
1387         */
1388        itemStyle: {
1389            /**
1390             * @ignore
1391             */
1392            color: "#333333" /* Palette.neutralColor80 */,
1393            /**
1394             * @ignore
1395             */
1396            cursor: 'pointer',
1397            /**
1398             * @ignore
1399             */
1400            fontSize: '0.8em',
1401            /**
1402             * @ignore
1403             */
1404            textDecoration: 'none',
1405            /**
1406             * @ignore
1407             */
1408            textOverflow: 'ellipsis'
1409        },
1410        /**
1411         * CSS styles for each legend item in hover mode. Only a subset of
1412         * CSS is supported, notably those options related to text. Properties
1413         * are inherited from `style` unless overridden here.
1414         *
1415         * @see In styled mode, the hovered legend items can be styled with
1416         *      the `.highcharts-legend-item:hover` pseudo-class.
1417         *
1418         * @sample {highcharts} highcharts/legend/itemhoverstyle/
1419         *         Red on hover
1420         * @sample {highmaps} maps/legend/itemstyle/
1421         *         Item text styles
1422         *
1423         * @type    {Highcharts.CSSObject}
1424         * @default {"color": "#000000"}
1425         */
1426        itemHoverStyle: {
1427            /**
1428             * @ignore
1429             */
1430            color: "#000000" /* Palette.neutralColor100 */
1431        },
1432        /**
1433         * CSS styles for each legend item when the corresponding series or
1434         * point is hidden. Only a subset of CSS is supported, notably those
1435         * options related to text. Properties are inherited from `style`
1436         * unless overridden here.
1437         *
1438         * @see In styled mode, the hidden legend items can be styled with
1439         *      the `.highcharts-legend-item-hidden` class.
1440         *
1441         * @sample {highcharts} highcharts/legend/itemhiddenstyle/
1442         *         Darker gray color
1443         *
1444         * @type    {Highcharts.CSSObject}
1445         * @default {"color": "#cccccc"}
1446         */
1447        itemHiddenStyle: {
1448            /**
1449             * @ignore
1450             */
1451            color: "#666666" /* Palette.neutralColor60 */
vendor: 9,536 bytes, lines 1451-1705
1451,
1452            /**
1453             * @ignore
1454             */
1455            textDecoration: 'line-through'
1456        },
1457        /**
1458         * Whether to apply a drop shadow to the legend. A `backgroundColor`
1459         * also needs to be applied for this to take effect. The shadow can be
1460         * an object configuration containing `color`, `offsetX`, `offsetY`,
1461         * `opacity` and `width`.
1462         *
1463         * @sample {highcharts} highcharts/legend/shadow/
1464         *         White background and drop shadow
1465         * @sample {highstock} stock/legend/align/
1466         *         Various legend options
1467         * @sample {highmaps} maps/legend/border-background/
1468         *         Border and background options
1469         *
1470         * @type {boolean|Highcharts.CSSObject}
1471         */
1472        shadow: false,
1473        /**
1474         * Default styling for the checkbox next to a legend item when
1475         * `showCheckbox` is true.
1476         *
1477         * @type {Highcharts.CSSObject}
1478         * @default {"width": "13px", "height": "13px", "position":"absolute"}
1479         */
1480        itemCheckboxStyle: {
1481            /**
1482             * @ignore
1483             */
1484            position: 'absolute',
1485            /**
1486             * @ignore
1487             */
1488            width: '13px', // For IE precision
1489            /**
1490             * @ignore
1491             */
1492            height: '13px'
1493        },
1494        /// itemWidth: undefined,
1495        /**
1496         * When this is true, the legend symbol width will be the same as
1497         * the symbol height, which in turn defaults to the font size of the
1498         * legend items.
1499         *
1500         * @since 5.0.0
1501         */
1502        squareSymbol: true,
1503        /**
1504         * The pixel height of the symbol for series types that use a rectangle
1505         * in the legend. Defaults to the font size of legend items.
1506         *
1507         * Note: This option is a default source of color axis height, if the
1508         * [colorAxis.height](https://api.highcharts.com/highcharts/colorAxis.height)
1509         * option is not set.
1510         *
1511         * @productdesc {highmaps}
1512         * In Highmaps, when the symbol is the gradient of a vertical color
1513         * axis, the height defaults to 200.
1514         *
1515         * @sample {highmaps} maps/legend/layout-vertical-sized/
1516         *         Sized vertical gradient
1517         * @sample {highmaps} maps/legend/padding-itemmargin/
1518         *         No distance between data classes
1519         *
1520         * @type      {number}
1521         * @since     3.0.8
1522         * @apioption legend.symbolHeight
1523         */
1524        /**
1525         * The border radius of the symbol for series types that use a rectangle
1526         * in the legend. Defaults to half the `symbolHeight`, effectively
1527         * creating a circle.
1528         *
1529         * For color axis scales, it defaults to 3.
1530         *
1531         * @sample {highcharts} highcharts/legend/symbolradius/
1532         *         Round symbols
1533         * @sample {highstock} highcharts/legend/symbolradius/
1534         *         Round symbols
1535         * @sample {highmaps} highcharts/legend/symbolradius/
1536         *         Round symbols
1537         *
1538         * @type      {number}
1539         * @since     3.0.8
1540         * @apioption legend.symbolRadius
1541         */
1542        /**
1543         * The pixel width of the legend item symbol. When the `squareSymbol`
1544         * option is set, this defaults to the `symbolHeight`, otherwise 16.
1545         *
1546         * Note: This option is a default source of color axis width, if the
1547         * [colorAxis.width](https://api.highcharts.com/highcharts/colorAxis.width)
1548         * option is not set.
1549         *
1550         * @productdesc {highmaps}
1551         * In Highmaps, when the symbol is the gradient of a horizontal color
1552         * axis, the width defaults to 200.
1553         *
1554         * @sample {highcharts} highcharts/legend/symbolwidth/
1555         *         Greater symbol width and padding
1556         * @sample {highmaps} maps/legend/padding-itemmargin/
1557         *         Padding and item margins demonstrated
1558         * @sample {highmaps} maps/legend/layout-vertical-sized/
1559         *         Sized vertical gradient
1560         *
1561         * @type      {number}
1562         * @apioption legend.symbolWidth
1563         */
1564        /**
1565         * Whether to [use HTML](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting#html)
1566         * to render the legend item texts.
1567         *
1568         * Prior to 4.1.7, when using HTML, [legend.navigation](
1569         * #legend.navigation) was disabled.
1570         *
1571         * @sample highcharts/legend/scrollable-vertical/
1572         *         Legend with vertical scrollable extension
1573         * @sample highcharts/legend/scrollable-horizontal/
1574         *         Legend with horizontal scrollable extension
1575         *
1576         * @type      {boolean}
1577         * @default   false
1578         * @apioption legend.useHTML
1579         */
1580        /**
1581         * For a color axis with data classes, how many decimals to render in
1582         * the legend. The default preserves the decimals of the range numbers.
1583         *
1584         * @type      {number}
1585         * @default   -1
1586         * @product   highcharts highmaps
1587         * @apioption legend.valueDecimals
1588         */
1589        /**
1590         * For a color axis with data classes, a suffix for the range numbers in
1591         * the legend.
1592         *
1593         * @type      {string}
1594         * @default   ''
1595         * @product   highcharts highmaps
1596         * @apioption legend.valueSuffix
1597         */
1598        /**
1599         * The width of the legend box. If a number is set, it translates to
1600         * pixels. Since v7.0.2 it allows setting a percent string of the full
1601         * chart width, for example `40%`.
1602         *
1603         * Defaults to the full chart width for legends below or above the
1604         * chart, half the chart width for legends to the left and right.
1605         *
1606         * @sample {highcharts} highcharts/legend/width/
1607         *         Aligned to the plot area
1608         * @sample {highcharts} highcharts/legend/width-percent/
1609         *         A percent of the chart width
1610         *
1611         * @type      {number|string}
1612         * @since     2.0
1613         * @apioption legend.width
1614         */
1615        /**
1616         * The pixel padding between the legend item symbol and the legend
1617         * item text.
1618         *
1619         * @sample {highcharts} highcharts/legend/symbolpadding/
1620         *         Greater symbol width and padding
1621         */
1622        symbolPadding: 5,
1623        /**
1624         * The vertical alignment of the legend box. Can be one of `top`,
1625         * `middle` or `bottom`. Vertical position can be further determined
1626         * by the `y` option.
1627         *
1628         * In the case that the legend is aligned in a corner position, the
1629         * `layout` option will determine whether to place it above/below
1630         * or on the side of the plot area.
1631         *
1632         * When the [layout](#legend.layout) option is `proximate`, the
1633         * `verticalAlign` option doesn't apply.
1634         *
1635         * @sample {highcharts} highcharts/legend/verticalalign/
1636         *         Legend 100px from the top of the chart
1637         * @sample {highstock} stock/legend/align/
1638         *         Various legend options
1639         * @sample {highmaps} maps/legend/alignment/
1640         *         Legend alignment
1641         *
1642         * @type  {Highcharts.VerticalAlignValue}
1643         * @since 2.0
1644         */
1645        verticalAlign: 'bottom',
1646        // Width: undefined,
1647        /**
1648         * The x offset of the legend relative to its horizontal alignment
1649         * `align` within chart.spacingLeft and chart.spacingRight. Negative
1650         * x moves it to the left, positive x moves it to the right.
1651         *
1652         * @sample {highcharts} highcharts/legend/width/
1653         *         Aligned to the plot area
1654         *
1655         * @since 2.0
1656         */
1657        x: 0,
1658        /**
1659         * The vertical offset of the legend relative to it's vertical alignment
1660         * `verticalAlign` within chart.spacingTop and chart.spacingBottom.
1661         *  Negative y moves it up, positive y moves it down.
1662         *
1663         * @sample {highcharts} highcharts/legend/verticalalign/
1664         *         Legend 100px from the top of the chart
1665         * @sample {highstock} stock/legend/align/
1666         *         Various legend options
1667         * @sample {highmaps} maps/legend/alignment/
1668         *         Legend alignment
1669         *
1670         * @since 2.0
1671         */
1672        y: 0,
1673        /**
1674         * A title to be added on top of the legend.
1675         *
1676         * @sample {highcharts} highcharts/legend/title/
1677         *         Legend title
1678         * @sample {highmaps} maps/legend/alignment/
1679         *         Legend with title
1680         *
1681         * @since 3.0
1682         */
1683        title: {
1684            /**
1685             * A text or HTML string for the title.
1686             *
1687             * @type      {string}
1688             * @since     3.0
1689             * @apioption legend.title.text
1690             */
1691            /**
1692             * Generic CSS styles for the legend title.
1693             *
1694             * @see In styled mode, the legend title is styled with the
1695             *      `.highcharts-legend-title` class.
1696             *
1697             * @type    {Highcharts.CSSObject}
1698             * @default {"fontSize": "0.8em", "fontWeight": "bold"}
1699             * @since   3.0
1700             */
1701            style: {
1702                /**
1703                 * @ignore
1704                 */
1705                
1705fontSize: '0.8em',
1706                /**
1707                 * @ignore
1708                 */
1709                fontWeight: 'bold'
1710            }
1711        }
1712    },
1713    /**
1714     * The loading options control the appearance of the loading screen
1715     * that covers the plot area on chart operations. This screen only
1716     * appears after an explicit call to `chart.showLoading()`. It is a
1717     * utility for developers to communicate to the end user that something
1718     * is going on, for example while retrieving new data via an XHR connection.
1719     * The "Loading..." text itself is not part of this configuration
1720     * object, but part of the `lang` object.
1721     */
1722    loading: {
1723        /**
1724         * The duration in milliseconds of the fade out effect.
1725         *
1726         * @sample highcharts/loading/hideduration/
1727         *         Fade in and out over a second
1728         *
1729         * @type      {number}
1730         * @default   100
1731         * @since     1.2.0
1732         * @apioption loading.hideDuration
1733         */
1734        /**
1735         * The duration in milliseconds of the fade in effect.
1736         *
1737         * @sample highcharts/loading/hideduration/
1738         *         Fade in and out over a second
1739         *
1740         * @type      {number}
1741         * @default   100
1742         * @since     1.2.0
1743         * @apioption loading.showDuration
1744         */
1745        /**
1746         * CSS styles for the loading label `span`.
1747         *
1748         * @see In styled mode, the loading label is styled with the
1749         *      `.highcharts-loading-inner` class.
1750         *
1751         * @sample {highcharts|highmaps} highcharts/loading/labelstyle/
1752         *         Vertically centered
1753         * @sample {highstock} stock/loading/general/
1754         *         Label styles
1755         *
1756         * @type    {Highcharts.CSSObject}
1757         * @default {"fontWeight": "bold", "position": "relative", "top": "45%"}
1758         * @since   1.2.0
1759         */
1760        labelStyle: {
1761            /**
1762             * @ignore
1763             */
1764            fontWeight: 'bold',
1765            /**
1766             * @ignore
1767             */
1768            position: 'relative',
1769            /**
1770             * @ignore
1771             */
1772            top: '45%'
1773        },
1774        /**
1775         * CSS styles for the loading screen that covers the plot area.
1776         *
1777         * In styled mode, the loading label is styled with the
1778         * `.highcharts-loading` class.
1779         *
1780         * @sample  {highcharts|highmaps} highcharts/loading/style/
1781         *          Gray plot area, white text
1782         * @sample  {highstock} stock/loading/general/
1783         *          Gray plot area, white text
1784         *
1785         * @type    {Highcharts.CSSObject}
1786         * @default {"position": "absolute", "backgroundColor": "#ffffff", "opacity": 0.5, "textAlign": "center"}
1787         * @since   1.2.0
1788         */
1789        style: {
1790            /**
1791             * @ignore
1792             */
1793            position: 'absolute',
1794            /**
1795             * @ignore
1796             */
1797            backgroundColor: "#ffffff" /* Palette.backgroundColor */,
1798            /**
1799             * @ignore
1800             */
1801            opacity: 0.5,
1802            /**
1803             * @ignore
1804             */
1805            textAlign: 'center'
1806        }
1807    },
1808    /**
1809     * Options for the tooltip that appears when the user hovers over a
1810     * series or point.
1811     *
1812     * @declare Highcharts.TooltipOptions
1813     */
1814    tooltip: {
1815        /**
1816         * The color of the tooltip border. When `undefined`, the border takes
1817         * the color of the corresponding series or point.
1818         *
1819         * Note that the [borderWidth](#tooltip.borderWidth) is usually 0 by
1820         * default, so the border color may not be visible until a border width
1821         * is set.
1822         *
1823         * @sample {highcharts} highcharts/tooltip/bordercolor-default/ Follow
1824         *         series by default
1825         * @sample {highcharts} highcharts/tooltip/bordercolor-black/ Black
1826         *         border
1827         * @sample {highstock} stock/tooltip/general/ Styled tooltip
1828         * @sample {highmaps}
1828 maps/tooltip/background-border/ Background and
1829         *         border demo
1830         *
1831         * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
1832         * @apioption tooltip.borderColor
1833         */
1834        /**
1835         * A CSS class name to apply to the tooltip's container div,
1836         * allowing unique CSS styling for each chart.
1837         *
1838         * @type      {string}
1839         * @apioption tooltip.className
1840         */
1841        /**
1842         * Since 4.1, the crosshair definitions are moved to the Axis object
1843         * in order for a better separation from the tooltip. See
1844         * [xAxis.crosshair](#xAxis.crosshair).
1845         *
1846         * @sample {highcharts} highcharts/tooltip/crosshairs-x/
1847         *         Enable a crosshair for the x value
1848         *
1849         * @deprecated
1850         *
1851         * @type      {*}
1852         * @default   true
1853         * @apioption tooltip.crosshairs
1854         */
1855        /**
1856         * Distance from point to tooltip in pixels.
1857         *
1858         * @type      {number}
1859         * @default   16
1860         * @apioption tooltip.distance
1861         */
1862        /**
1863         * Whether the tooltip should follow the mouse as it moves across
1864         * columns, pie slices and other point types with an extent.
1865         * By default it behaves this way for pie, polygon, map, sankey
1866         * and wordcloud series by override in the `plotOptions`
1867         * for those series types.
1868         *
1869         * Does not apply if [split](#tooltip.split) is `true`.
1870         *
1871         * For touch moves to behave the same way, [followTouchMove](
1872         * #tooltip.followTouchMove) must be `true` also.
1873         *
1874         * @sample highcharts/tooltip/followpointer/
1875         *         Tooltip follow pointer comparison
1876         *
1877         * @type      {boolean}
1878         * @default   {highcharts} false
1879         * @default   {highstock} false
1880         * @default   {highmaps} true
1881         * @since     3.0
1882         * @apioption tooltip.followPointer
1883         */
1884        /**
1885         * Whether the tooltip should update as the finger moves on a touch
1886         * device. If this is `true` and [chart.panning](#chart.panning) is
1887         * set,`followTouchMove` will take over one-finger touches, so the user
1888         * needs to use two fingers for zooming and panning.
1889         *
1890         * Note the difference to [followPointer](#tooltip.followPointer) that
1891         * only defines the _position_ of the tooltip. If `followPointer` is
1892         * false in for example a column series, the tooltip will show above or
1893         * below the column, but as `followTouchMove` is true, the tooltip will
1894         * jump from column to column as the user swipes across the plot area.
1895         *
1896         * @type      {boolean}
1897         * @default   {highcharts} true
1898         * @default   {highstock} true
1899         * @default   {highmaps} false
1900         * @since     3.0.1
1901         * @apioption tooltip.followTouchMove
1902         */
1903        /**
1904         * A [format string](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting)
1905         * for the whole shared tooltip. When format strings are a requirement,
1906         * it is usually more convenient to use `headerFormat`, `pointFormat`
1907         * and `footerFormat`, but the `format` option allows combining them
1908         * into one setting.
1909         *
1910         * The context of the format string is the same as that of the
1911         * `tooltip.formatter` callback.
1912         *
1913         * @sample {highcharts} highcharts/tooltip/format-shared/
1914         *         Format for shared tooltip
1915         *
1916         * @type      {string}
1917         * @default   undefined
1918         * @since     11.1.0
1919         * @apioption tooltip.format
1920         */
1921        /**
1922         * Callback function to format the text of the tooltip from scratch. In
1923         * case of single or [shared](#tooltip.shared) tooltips, a string should
1924         * be returned. In case of [split](#tooltip.split) tooltips, it should
1925         * return an array where the first item is the header, and subsequent
1926         * items are mapped to the points. Return `false` to disable tooltip for
1927         * a specific point on series.
1928         *
1929         * A subset of HTML is supported. Unless `useHTML` is true, the HTML of
1930         * the tooltip is parsed and converted to SVG, therefore this isn't a
1931         * complete HTML renderer. The following HTML tags are supported: `b`,
1932         * `br`, `em`, `i`, `span`, `strong`. Spans can be styled with a `style`
1933         * attribute, but only text-related CSS, that is shared with SVG, is
1934         * handled.
1935         *
1936         * The context of the formatter (since v12) is the
1937         * [Point](https://api.highcharts.com/class-reference/Highcharts.Point)
1938         * instance. If the tooltip is shared or split, an array `this.points`
1939         * contains all points of the hovered x-value.
1940         *
1941         * Common properties from the Point to use in the formatter include:
1942         *
1943         * - **Point.percentage**:
1944         *   Stacked series and pies only. The point's percentage of the total.
1945         *
1946         * - **Point.points**:
1947         *   In a shared or split tooltip, this is an array containing all the
1948         *   hovered points.
1949         *
1950         * - **this.series**:
1951         *   The series object. The series name is available through
1952         *   `this.series.name`.
1953         *
1954         * - **this.total**:
1955         *   The total value at this point's x value in a stacked series, or the
1956         *   sum of all slices in a pie series.
1957         *
1958         * - **this.x**:
1959         *   The x value.
1960         *
1961         * - **this.y**:
1962         *   The y value.
1963         *
1964         * @sample {highcharts} highcharts/tooltip/formatter-simple/
1965         *         Simple string formatting
1966         * @sample {highcharts} highcharts/tooltip/formatter-shared/
1967         *         Formatting with shared tooltip
1968         * @sample {highcharts|highstock} highcharts/tooltip/formatter-split/
1969         *         Formatting with split tooltip
1970         * @sample highcharts/tooltip/formatter-conditional-default/
1971         *         Extending default formatter
1972         * @sample {highstock} stock/tooltip/formatter/
1973         *         Formatting with shared tooltip
1974         * @sample {highmaps} maps/tooltip/formatter/
1975         *         String formatting
1976         *
1977         * @type      {Highcharts.TooltipFormatterCallbackFunction}
1978         * @apioption tooltip.formatter
1979         */
1980        /**
1981         * Callback function to format the text of the tooltip for
1982         * visible null points.
1983         * Works analogously to [formatter](#tooltip.formatter).
1984         *
1985         * @sample highcharts/plotoptions/series-nullformat
1986         *         Format data label and tooltip for null point.
1987         *
1988         * @type      {Highcharts.TooltipFormatterCallbackFunction}
1989         * @apioption tooltip.nullFormatter
1990         */
1991        /**
1992         * Whether to allow the tooltip to render outside the chart's SVG
1993         * element box. By default (`false`), the tooltip is rendered within the
1994         * chart's SVG element, which results in the tooltip being aligned
1995         * inside the chart area. For small charts, this may result in clipping
1996         * or overlapping. When `true`, a separate SVG element is created and
1997         * overlaid on the page, allowing the tooltip to be aligned inside the
1998         * page itself. Beware that with this option active, CSS classes on the
1999         * chart's target container, with classnames matching the pattern
2000         * 'highcharts-*', will be set on the tooltip as well. This is done to
2001         * support theming for tooltips with this option.
2002         *
2003         * Defaults to `true` if `chart.scrollablePlotArea` is activated,
2004         * otherwise `false`.
2005         *
2006         * @sample highcharts/tooltip/outside
2007         *         Small charts with tooltips outside
2008         *
2009         * @type      {boolean|undefined}
2010         * @default   undefined
2011         * @since     6.1.1
2012         * @apioption tooltip.outside
2013         */
2014        /**
2015         * A callback function for formatting the HTML output for a single point
2016         * in the tooltip. Like the `pointFormat` string, but with more
2017         * flexibility.
2018         *
2019         * @type      {Highcharts.FormatterCallbackFunction<Highcharts.Point>}
2020         * @since     4.1.0
2021         * @context   Highcharts.Point
2022         * @apioption tooltip.pointFormatter
2023         */
2024        /**
2025         * A callback function to place the tooltip in a custom position. The
2026         * callback receives three parameters: `labelWidth`, `labelHeight` and
2027         * `point`, where point contains values for `plotX` and `plotY` telling
2028         * where the reference point is in the plot area. Add `chart.plotLeft`
2029         * and `chart.plotTop` to get the full coordinates.
2030         *
2031         * To find the actual hovered `Point` instance, use
2032         * `this.chart.hoverPoint`. For shared or split tooltips, all the hover
2033         * points are available in `this.chart.hoverPoints`.
2034         *
2035         * Since v7, when [tooltip.split](#tooltip.split) option is enabled,
2036         * positioner is called for each of the boxes separately, including
2037         * xAxis header. xAxis header is not a point, instead `point` argument
2038         * contains info: `{ plotX: Number, plotY: Number, isHeader: Boolean }`
2039         *
2040         * The return should be an object containing x and y values, for example
2041         * `{ x: 100, y: 100 }`.
2042         *
2043         * @sample {highcharts} highcharts/tooltip/positioner/
2044         *         A fixed tooltip position
2045         * @sample {highstock} stock/tooltip/positioner/
2046         *         A fixed tooltip position on top of the chart
2047         * @sample {highmaps} maps/tooltip/positioner/
2048         *         A fixed tooltip position
2049         * @sample {highstock} stock/tooltip/split-positioner/
2050         *         Split tooltip with fixed positions
2051         * @sample {highstock} stock/tooltip/positioner-scrollable-plotarea/
2052         *         Scrollable plot area combined with tooltip positioner
2053         *
2054         * @type      {Highcharts.TooltipPositionerCallbackFunction}
2055         * @since     2.2.4
2056         * @apioption tooltip.positioner
2057         */
2058        /**
2059         * Shows tooltip for all points with the same X value. Splits the
2060         * tooltip into one label per series, with the header close to the axis.
2061         * This is recommended over [shared](#tooltip.shared)
2062         * tooltips for charts with multiple line series, generally making them
2063         * easier to read. This option takes precedence over `tooltip.shared`.
2064         *
2065         * Not supported for [polar](#chart.polar) and [inverted](#chart.inverted) charts.
2066         *
2067         * @productdesc {highstock} In Highcharts Stock, tooltips are split
2068         * by default since v6.0.0. Stock charts typically contain
2069         * multi-dimension points and multiple panes, making split tooltips
2070         * the preferred layout over
2071         * the previous `shared` tooltip.
2072         *
2073         * @sample highcharts/tooltip/split/
2074         *         Split tooltip
2075         * @sample {highcharts|highstock} highcharts/tooltip/formatter-split/
2076         *         Split tooltip and custom formatter callback
2077         *
2078         * @type      {boolean}
2079         * @default   {highcharts} false
2080         * @default   {highstock} true
2081         * @since     5.0.0
2082         * @product   highcharts highstock
2083         * @apioption tooltip.split
2084         */
2085        /**
2086         * Prevents the tooltip from switching or closing, when touched or
2087         * pointed.
2088         *
2089         * @sample highcharts/tooltip/stickoncontact/
2090         *         Tooltip sticks on pointer contact
2091         *
2092         * @type      {boolean}
2093         * @since     8.0.1
2094         * @apioption tooltip.stickOnContact
2095         */
2096        /**
2097         * Use HTML to render the contents of the tooltip instead of SVG. Using
2098         * HTML allows advanced formatting like tables and images in the
2099         * tooltip. It is also recommended for rtl languages as it works around
2100         * rtl bugs in early Firefox.
2101         *
2102         * @sample {highcharts|highstock} highcharts/tooltip/footerformat/
2103         *         A table for value alignment
2104         * @sample {highcharts|highstock} highcharts/tooltip/fullhtml/
2105         *         Full HTML tooltip
2106         * @sample {highmaps} maps/tooltip/usehtml/
2107         *         Pure HTML tooltip
2108         *
2109         * @type      {boolean}
2110         * @default   false
2111         * @since     2.2
2112         * @apioption tooltip.useHTML
2113         */
2114        /**
2115         * How many decimals to show in each series' y value. This is
2116         * overridable in each series' tooltip options object. The default is to
2117         * preserve all decimals.
2118         *
2119         * @sample {highcharts|highstock} highcharts/tooltip/valuedecimals/
2120         *         Set decimals, prefix and suffix for the value
2121         * @sample {highmaps} maps/tooltip/valuedecimals/
2122         *         Set decimals, prefix and suffix for the value
2123         *
2124         * @type      {number|undefined}
2125         * @since     2.2
2126         * @apioption tooltip.valueDecimals
2127         */
2128        /**
2129         * A string to prepend to each series' y value. Overridable in each
2130         * series' tooltip options object.
2131         *
2132         * @sample {highcharts|highstock} highcharts/tooltip/valuedecimals/
2133         *         Set decimals, prefix and suffix for the value
2134         * @sample {highmaps} maps/tooltip/valuedecimals/
2135         *         Set decimals, prefix and suffix for the value
2136         *
2137         * @type      {string}
2138         * @since     2.2
2139         * @apioption tooltip.valuePrefix
2140         */
2141        /**
2142         * A string to append to each series' y value. Overridable in each
2143         * series' tooltip options object.
2144         *
2145         * @sample {highcharts|highstock} highcharts/tooltip/valuedecimals/
2146         *         Set decimals, prefix and suffix for the value
2147         * @sample {highmaps} maps/tooltip/valuedecimals/
2148         *         Set decimals, prefix and suffix for the value
2149         *
2150         * @type      {string}
2151         * @since     2.2
2152         * @apioption tooltip.valueSuffix
2153         */
2154        /**
2155         * The format for the date in the tooltip header if the X axis is a
2156         * datetime axis. The default is a best guess based on the smallest
2157         * distance between points in the chart.
2158         *
2159         * @sample {highcharts} highcharts/tooltip/xdateformat/
2160         *         A different format
2161         *
2162         * @type      {string|Highcharts.DateTimeFormatOptions}
2163         * @product   highcharts highstock gantt
2164         * @apioption tooltip.xDateFormat
2165         */
2166        /**
2167         * How many decimals to show for the `point.change`
2168         * or the `point.cumulativeSum` value when the `series.compare`
2169         * or the `series.cumulative` option is set.
2170         * This is overridable in each series' tooltip options object.
2171         *
2172         * @type      {number}
2173         * @default   2
2174         * @since     1.0.1
2175         * @product   highstock
2176         * @apioption tooltip.changeDecimals
2177         */
2178        /**
2179         * Enable or disable the tooltip.
2180         *
2181         * @sample {highcharts} highcharts/tooltip/enabled/
2182         *         Disabled
2183         * @sample {highcharts} highcharts/plotoptions/series-point-events-mouseover/
2184         *         Disable tooltip and show values on chart instead
2185         */
2186        enabled: true,
2187        /**
2188         * Enable or disable animation of the tooltip.
2189         *
2190         * @type       {boolean|Partial<Highcharts.AnimationOptionsObject>}
2191         * @since      2.3.0
2192         */
2193        animation: {
2194            duration: 300,
2195            // EaseOutCirc
2196            easing: (x) => Math.sqrt(1 - Math.pow(x - 1, 2))
2197        },
2198        /**
2199         * The radius of the rounded border corners.
2200         *
2201         * @sample {highcharts} highcharts/tooltip/bordercolor-default/
2202         *         Default border radius
2203         * @sample {highcharts}
2203 highcharts/tooltip/borderradius-0/
2204         *         Square borders
2205         * @sample {highmaps} maps/tooltip/background-border/
2206         *         Background and border demo
2207         */
2208        borderRadius: 3,
2209        /**
2210         * For series on datetime axes, the date format in the tooltip's
2211         * header will by default be guessed based on the closest data points.
2212         * This member gives the default string representations used for
2213         * each unit. For an overview of the string or object configuration, see
2214         * [dateFormat](/class-reference/Highcharts.Time#dateFormat).
2215         *
2216         * @see [xAxis.dateTimeLabelFormats](#xAxis.dateTimeLabelFormats)
2217         *
2218         * @type    {Highcharts.Dictionary<string|Highcharts.DateTimeFormatOptions>}
2219         * @product highcharts highstock gantt
2220         */
2221        dateTimeLabelFormats: {
2222            /** @internal */
2223            millisecond: '%[AebHMSL]',
2224            /** @internal */
2225            second: '%[AebHMS]',
2226            /** @internal */
2227            minute: '%[AebHM]',
2228            /** @internal */
2229            hour: '%[AebHM]',
2230            /** @internal */
2231            day: '%[AebY]',
2232            /** @internal */
2233            week: 'Week from %[AebY]',
2234            /** @internal */
2235            month: '%[BY]',
2236            /** @internal */
2237            year: '%Y'
2238        },
2239        /**
2240         * A string to append to the tooltip format.
2241         *
2242         * @sample {highcharts} highcharts/tooltip/footerformat/
2243         *         A table for value alignment
2244         * @sample {highmaps} maps/tooltip/format/
2245         *         Format demo
2246         *
2247         * @since 2.2
2248         */
2249        footerFormat: '',
2250        /**
2251         * The name of a symbol to use for the border around the tooltip
2252         * header. Applies only when [tooltip.split](#tooltip.split) is
2253         * enabled.
2254         *
2255         * Custom callbacks for symbol path generation can also be added to
2256         * `Highcharts.SVGRenderer.prototype.symbols` the same way as for
2257         * [series.marker.symbol](plotOptions.line.marker.symbol).
2258         *
2259         * @see [tooltip.shape](#tooltip.shape)
2260         *
2261         * @sample {highstock} stock/tooltip/split-positioner/
2262         *         Different shapes for header and split boxes
2263         *
2264         * @type       {Highcharts.TooltipShapeValue}
2265         * @validvalue ["callout", "rect"]
2266         * @since      7.0
2267         */
2268        headerShape: 'callout',
2269        /**
2270         * The number of milliseconds to wait until the tooltip is hidden when
2271         * mouse out from a point or chart.
2272         *
2273         * @since 3.0
2274         */
2275        hideDelay: 500,
2276        /**
2277         * Padding inside the tooltip, in pixels.
2278         *
2279         * @since 5.0.0
2280         */
2281        padding: 8,
2282        /**
2283         * The name of a symbol to use for the border around the tooltip. Can
2284         * be one of: `"callout"`, `"circle"` or `"rect"`. When
2285         * [tooltip.split](#tooltip.split)
2286         * option is enabled, shape is applied to all boxes except header, which
2287         * is controlled by
2288         * [tooltip.headerShape](#tooltip.headerShape).
2289         *
2290         * Custom callbacks for symbol path generation can also be added to
2291         * `Highcharts.SVGRenderer.prototype.symbols` the same way as for
2292         * [series.marker.symbol](plotOptions.line.marker.symbol).
2293         *
2294         * @type  {Highcharts.TooltipShapeValue}
2295         * @since 4.0
2296         */
2297        shape: 'callout',
2298        /**
2299         * Shows information in the tooltip for all points with the same X
2300         * value. When the tooltip is shared, the entire plot area will capture
2301         * mouse movement or touch events. Tooltip texts for series types with
2302         * ordered data (not pie, scatter, flags etc) will be shown in a single
2303         * bubble. This is recommended for single series charts and for
2304         * tablet/mobile optimized charts.
2305         *
2306         * See also [tooltip.split](#tooltip.split), that is better suited for
2307         * charts with many series, especially line-type series. The
2308         * `tooltip.split` option takes precedence over `tooltip.shared`.
2309         *
2310         * @sample {highcharts} highcharts/tooltip/shared-false/
2311         *         False by default
2312         * @sample {highcharts} highcharts/tooltip/shared-true/
2313         *         True
2314         * @sample {highcharts} highcharts/tooltip/shared-x-crosshair/
2315         *         True with x axis crosshair
2316         * @sample {highcharts} highcharts/tooltip/shared-true-mixed-types/
2317         *         True with mixed series types
2318         *
2319         * @since   2.1
2320         * @product highcharts highstock
2321         */
2322        shared: false,
2323        /**
2324         * Proximity snap for graphs or single points. It defaults to 10 for
2325         * mouse-powered devices and 25 for touch devices.
2326         *
2327         * Note that in most cases the whole plot area captures the mouse
2328         * movement, and in these cases `tooltip.snap` doesn't make sense. This
2329         * applies when [stickyTracking](#plotOptions.series.stickyTracking)
2330         * is `true` (default) and when the tooltip is [shared](#tooltip.shared)
2331         * or [split](#tooltip.split).
2332         *
2333         * @sample {highcharts} highcharts/tooltip/bordercolor-default/
2334         *         10 px by default
2335         * @sample {highcharts} highcharts/tooltip/snap-50/
2336         *         50 px on graph
2337         *
2338         * @type    {number}
2339         * @default 10/25
2340         * @since   1.2.0
2341         * @product highcharts highstock
2342         */
2343        snap: isTouchDevice ? 25 : 10,
2344        /**
2345         * The HTML of the tooltip header line. The context is the
2346         * [Point class](https://api.highcharts.com/class-reference/Highcharts.Point).
2347         * Variables are enclosed in curly brackets. Examples of common
2348         * variables to include are `x`, `y`, `series.name` and `series.color`
2349         * and other properties on the same form. The `point.key` variable
2350         * contains the category name, x value or datetime string depending on
2351         * the type of axis. For datetime axes, the `point.key` date format can
2352         * be set using `tooltip.xDateFormat`.
2353         *
2354         * @sample {highcharts} highcharts/tooltip/footerformat/
2355         *         An HTML table in the tooltip
2356         * @sample {highstock} highcharts/tooltip/footerformat/
2357         *         An HTML table in the tooltip
2358         * @sample {highmaps} maps/tooltip/format/
2359         *         Format demo
2360         *
2361         * @type      {string}
2362         * @apioption tooltip.headerFormat
2363         */
2364        headerFormat: '<span style="font-size: 0.8em">{ucfirst point.key}</span><br/>',
2365        /**
2366         * The HTML of the null point's line in the tooltip. Works analogously
2367         * to [pointFormat](#tooltip.pointFormat).
2368         *
2369         * @sample {highcharts} highcharts/plotoptions/series-nullformat
2370         *         Format data label and tooltip for null point.
2371         *
2372         * @type      {string}
2373         * @apioption tooltip.nullFormat
2374         */
2375        /**
2376         * The HTML of the point's line in the tooltip. The context is the
2377         * [Point class](https://api.highcharts.com/class-reference/Highcharts.Point).
2378         * Variables are enclosed in curly brackets. Examples of common
2379         * variables to include are `x`, `y`, `series.name` and `series.color`
2380         * and other properties on the same form. Furthermore, `y` can be
2381         * extended by the `tooltip.valuePrefix` and `tooltip.valueSuffix`
2382         * variables. This can also be overridden for each series, which makes
2383         * it a good hook for displaying units.
2384         *
2385         * In styled mode, the dot is colored by a class name rather than the
2386         * point color.
2387         *
2388         * @sample {highcharts} highcharts/tooltip/pointformat/
2389         *         A different point format with value suffix
2390         * @sample {highcharts|highstock} highcharts/tooltip/pointformat-extra-information/
2391         *         Show extra information about points in the tooltip
2392         * @sample {highmaps} maps/tooltip/format/
2393         *         Format demo
2394         *
2395         * @type       {string}
2396         * @since      2.2
2397         * @apioption  tooltip.pointFormat
2398         */
2399        pointFormat: '<span style="color:{point.color}">\u25CF</span> {series.name}: <b>{point.y}</b><br/>',
2400        /**
2401         * The background color or gradient for the tooltip.
2402         *
2403         * In styled mode, the stroke width is set in the
2404         * `.highcharts-tooltip-box` class.
2405         *
2406         * @sample {highcharts} highcharts/tooltip/backgroundcolor-solid/
2407         *         Yellowish background
2408         * @sample {highcharts} highcharts/tooltip/backgroundcolor-gradient/
2409         *         Gradient
2410         * @sample {highcharts} highcharts/css/tooltip-border-background/
2411         *         Tooltip in styled mode
2412         * @sample {highstock} stock/tooltip/general/
2413         *         Custom tooltip
2414         * @sample {highstock} highcharts/css/tooltip-border-background/
2415         *         Tooltip in styled mode
2416         * @sample {highmaps} maps/tooltip/background-border/
2417         *         Background and border demo
2418         * @sample {highmaps} highcharts/css/tooltip-border-background/
2419         *         Tooltip in styled mode
2420         *
2421         * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
2422         */
2423        backgroundColor: "#ffffff" /* Palette.backgroundColor */,
2424        /**
2425         * The pixel width of the tooltip border. Defaults to 0 for single
2426         * tooltips and 1 for split tooltips.
2427         *
2428         * In styled mode, the stroke width is set in the
2429         * `.highcharts-tooltip-box` class.
2430         *
2431         * @sample {highcharts} highcharts/tooltip/bordercolor-default/
2432         *         2 pixels
2433         * @sample {highcharts} highcharts/tooltip/borderwidth/
2434         *         No border (shadow only)
2435         * @sample {highcharts} highcharts/css/tooltip-border-background/
2436         *         Tooltip in styled mode
2437         * @sample {highstock} stock/tooltip/general/
2438         *         Custom tooltip
2439         * @sample {highstock} highcharts/css/tooltip-border-background/
2440         *         Tooltip in styled mode
2441         * @sample {highmaps} maps/tooltip/background-border/
2442         *         Background and border demo
2443         * @sample {highmaps} highcharts/css/tooltip-border-background/
2444         *         Tooltip in styled mode
2445         *
2446         * @type {number}
2447         */
2448        borderWidth: void 0,
2449        /**
2450         * Whether to apply a drop shadow to the tooltip.
2451         *
2452         * @sample {highcharts} highcharts/tooltip/bordercolor-default/
2453         *         True by default
2454         * @sample {highcharts} highcharts/tooltip/shadow/
2455         *         False
2456         * @sample {highmaps} maps/tooltip/positioner/
2457         *         Fixed tooltip position, border and shadow disabled
2458         *
2459         * @type {boolean|Highcharts.ShadowOptionsObject}
2460         */
2461        shadow: true,
2462        /**
2463         * Prevents the tooltip from switching or closing when touched or
2464         * pointed.
2465         *
2466         * @sample highcharts/tooltip/stickoncontact/
2467         *         Tooltip sticks on pointer contact
2468         *
2469         * @since 8.0.1
2470         */
2471        stickOnContact: false,
2472        /**
2473         * CSS styles for the tooltip. The tooltip can also be styled through
2474         * the CSS class `.highcharts-tooltip`.
2475         *
2476         * Note that the default `pointerEvents` style makes the tooltip ignore
2477         * mouse events, so in order to use clickable tooltips, this value must
2478         * be set to `auto`.
2479         *
2480         * @sample {highcharts} highcharts/tooltip/style/
2481         *         Greater padding, bold text
2482         *
2483         * @type {Highcharts.CSSObject}
2484         */
2485        style: {
2486            /** @internal */
2487            color: "#333333" /* Palette.neutralColor80 */,
2488            /** @internal */
2489            cursor: 'default',
2490            /**
2491             * @type {number|string}
2492             */
2493            fontSize: '0.8em'
2494        },
2495        /**
2496         * Use HTML to render the contents of the tooltip instead of SVG. Using
2497         * HTML allows advanced formatting like tables and images in the
2498         * tooltip. It is also recommended for rtl languages as it works around
2499         * rtl bugs in early Firefox.
2500         *
2501         * @sample {highcharts|highstock} highcharts/tooltip/footerformat/
2502         *         A table for value alignment
2503         * @sample {highcharts|highstock} highcharts/tooltip/fullhtml/
2504         *         Full HTML tooltip
2505         * @sample {highmaps} maps/tooltip/usehtml/
2506         *         Pure HTML tooltip
2507         *
2508         * @since 2.2
2509         */
2510        useHTML: false
2511    },
2512    /**
2513     * Highchart by default puts a credits label in the lower right corner
2514     * of the chart. This can be changed using these options.
2515     */
2516    credits: {
2517        /**
2518         * Credits for map source to be concatenated with conventional credit
2519         * text. By default this is a format string that collects copyright
2520         * information from the map if available.
2521         *
2522         * @see [mapTextFull](#credits.mapTextFull)
2523         * @see [text](#credits.text)
2524         *
2525         * @type      {string}
2526         * @default   \u00a9 <a href="{geojson.copyrightUrl}">{geojson.copyrightShort}</a>
2527         * @since     4.2.2
2528         * @product   highmaps
2529         * @apioption credits.mapText
2530         */
2531        /**
2532         * Detailed credits for map source to be displayed on hover of credits
2533         * text. By default this is a format string that collects copyright
2534         * information from the map if available.
2535         *
2536         * @see [mapText](#credits.mapText)
2537         * @see [text](#credits.text)
2538         *
2539         * @type      {string}
2540         * @default   {geojson.copyright}
2541         * @since     4.2.2
2542         * @product   highmaps
2543         * @apioption credits.mapTextFull
2544         */
2545        /**
2546         * Whether to show the credits text.
2547         *
2548         * @sample {highcharts} highcharts/credits/enabled-false/
2549         *         Credits disabled
2550         * @sample {highstock} stock/credits/enabled/
2551         *         Credits disabled
2552         * @sample {highmaps} maps/credits/enabled-false/
2553         *         Credits disabled
2554         */
2555        enabled: true,
2556        /**
2557         * The URL for the credits label.
2558         *
2559         * @sample {highcharts} highcharts/credits/href/
2560         *         Custom URL and text
2561         * @sample {highmaps} maps/credits/customized/
2562         *         Custom URL and text
2563         */
2564        href: 'https://www.highcharts.com?credits',
2565        /**
2566         * Position configuration for the credits label.
2567         *
2568         * @sample {highcharts} highcharts/credits/position-left/
2569         *         Left aligned
2570         * @sample {highcharts} highcharts/credits/position-left/
2571         *         Left aligned
2572         * @sample {highmaps} maps/credits/customized/
2573         *         Left aligned
2574         * @sample {highmaps} maps/credits/customized/
2575         *         Left aligned
2576         *
2577         * @type    {Highcharts.AlignObject}
2578         * @since   2.1
2579         */
2580        position: {
2581            /** @internal */
2582            align: 'right',
2583            /** @internal */
2584            x: -10,
2585            /** @internal */
2586            verticalAlign: 'bottom',
2587            /** @internal */
2588            y: -5
2589        },
2590        /**
2591         * CSS styles for the credits label.
2592         *
2593         * @see In styled mode, credits styles can be set with the
2594         *      `.highcharts-credits` class.
2595         *
2596         * @type {Highcharts.CSSObject}
2597         */
2598        style: {
2599            /** @internal */
2600            cursor: 'pointer',
2601            /** @internal */
2602            color: "#999999" /* Palette.neutralColor40 */,
2603            /**
2604             * @type {number|string}
2605             */
2606            fontSize: '0.6em'
2607        },
2608        /**
2609         * The text for the credits label.
2610         *
2611         * @productdesc {highmaps}
2612         * If a map is loaded as GeoJSON, the text defaults to
2613         * `Highcharts @ {map-credits}`. Otherwise, it defaults to
2614         * `Highcharts.com`.
2615         *
2616         * @sample {highcharts} highcharts/credits/href/
2617         *         Custom URL and text
2618         * @sample {highmaps} maps/credits/customized/
2619         *         Custom URL and text
2620         */
2621        text: 'Highcharts.com'
2622    }
2623};
2624const defaultTime = new Time(defaultOptions.time);
2625/**
2626 * Get the updated default options. Until 3.0.7, merely exposing defaultOptions
2627 * for outside modules wasn't enough because the setOptions method created a new
2628 * object.
2629 *
2630 * @function Highcharts.getOptions
2631 *
2632 * @return {Highcharts.Options}
2633 * Default options.
2634 */
2635function getOptions() {
2636    return defaultOptions;
2637}
2638/**
2639 * Merge the default options with custom options and return the new options
2640 * structure. Commonly used for defining reusable templates.
2641 *
2642 * @sample highcharts/members/setoptions Applying a global theme
2643 *
2644 * @function Highcharts.setOptions
2645 *
2646 * @param {Highcharts.Options} options
2647 * The new custom chart options.
2648 *
2649 * @return {Highcharts.Options}
2650 * Updated options.
2651 */
2652function setOptions(options) {
2653    fireEvent(H, 'setOptions', { options });
2654    // Copy in the default options
2655    merge(true, defaultOptions, options);
2656    // Update the time object
2657    if (options.time) {
2658        defaultTime.update(defaultOptions.time);
2659    }
2660    if (options.lang && 'locale' in options.lang) {
2661        defaultTime.update({
2662            locale: options.lang.locale
2663        });
2664    }
2665    return defaultOptions;
2666}
2667/* *
2668 *
2669 *  Default Export
2670 *
2671 * */
2672const DefaultOptions = {
2673    defaultOptions,
2674    defaultTime,
2675    getOptions,
2676    setOptions
2677};
2678export default DefaultOptions;
2679/* *
2680 *
2681 *  API Declarations
2682 *
2683 * */
2684/**
2685 * @typedef {"plotBox"|"spacingBox"} Highcharts.ButtonRelativeToValue
2686 */
2687/**
2688 * Gets fired when a series is added to the chart after load time, using the
2689 * `addSeries` method. Returning `false` prevents the series from being added.
2690 *
2691 * @callback Highcharts.ChartAddSeriesCallbackFunction
2692 *
2693 * @param {Highcharts.Chart} this
2694 *        The chart on which the event occurred.
2695 *
2696 * @param {Highcharts.ChartAddSeriesEventObject} event
2697 *        The event that occurred.
2698 */
2699/**
2700 * Contains common event information. Through the `options` property you can
2701 * access the series options that were passed to the `addSeries` method.
2702 *
2703 * @interface Highcharts.ChartAddSeriesEventObject
2704 */ /**
2705* The series options that were passed to the `addSeries` method.
2706* @name Highcharts.ChartAddSeriesEventObject#options
2707* @type {Highcharts.SeriesOptionsType}
2708*/ /**
2709* Prevents the default behaviour of the event.
2710* @name Highcharts.ChartAddSeriesEventObject#preventDefault
2711* @type {Function}
2712*/ /**
2713* The event target.
2714* @name Highcharts.ChartAddSeriesEventObject#target
2715* @type {Highcharts.Chart}
2716*/ /**
2717* The event type.
2718* @name Highcharts.ChartAddSeriesEventObject#type
2719* @type {"addSeries"}
2720*/
2721/**
2722 * Gets fired when clicking on the plot background.
2723 *
2724 * @callback Highcharts.ChartClickCallbackFunction
2725 *
2726 * @param {Highcharts.Chart} this
2727 *        The chart on which the event occurred.
2728 *
2729 * @param {Highcharts.PointerEventObject} event
2730 *        The event that occurred.
2731 */
2732/**
2733 * Contains an axes of the clicked spot.
2734 *
2735 * @interface Highcharts.ChartClickEventAxisObject
2736 */ /**
2737* Axis at the clicked spot.
2738* @name Highcharts.ChartClickEventAxisObject#axis
2739* @type {Highcharts.Axis}
2740*/ /**
2741* Axis value at the clicked spot.
2742* @name Highcharts.ChartClickEventAxisObject#value
2743* @type {number}
2744*/
2745/**
2746 * Contains information about the clicked spot on the chart. Remember the unit
2747 * of a datetime axis is milliseconds since 1970-01-01 00:00:00.
2748 *
2749 * @interface Highcharts.ChartClickEventObject
2750 * @extends Highcharts.PointerEventObject
2751 */ /**
2752* Information about the x-axis on the clicked spot.
2753* @name Highcharts.ChartClickEventObject#xAxis
2754* @type {Array<Highcharts.ChartClickEventAxisObject>}
2755*/ /**
2756* Information about the y-axis on the clicked spot.
2757* @name Highcharts.ChartClickEventObject#yAxis
2758* @type {Array<Highcharts.ChartClickEventAxisObject>}
2759*/ /**
2760* Information about the z-axis on the clicked spot.
2761* @name Highcharts.ChartClickEventObject#zAxis
2762* @type {Array<Highcharts.ChartClickEventAxisObject>|undefined}
2763*/
2764/**
2765 * Gets fired when the chart is finished loading.
2766 *
2767 * @callback Highcharts.ChartLoadCallbackFunction
2768 *
2769 * @param {Highcharts.Chart} this
2770 *        The chart on which the event occurred.
2771 *
2772 * @param {global.Event} event
2773 *        The event that occurred.
2774 */
2775/**
2776 * Fires when the chart is redrawn, either after a call to `chart.redraw()` or
2777 * after an axis, series or point is modified with the `redraw` option set to
2778 * `true`.
2779 *
2780 * @callback Highcharts.ChartRedrawCallbackFunction
2781 *
2782 * @param {Highcharts.Chart} this
2783 *        The chart on which the event occurred.
2784 *
2785 * @param {global.Event} event
2786 *        The event that occurred.
2787 */
2788/**
2789 * Gets fired after initial load of the chart (directly after the `load` event),
2790 * and after each redraw (directly after the `redraw` event).
2791 *
2792 * @callback Highcharts.ChartRenderCallbackFunction
2793 *
2794 * @param {Highcharts.Chart} this
2795 *        The chart on which the event occurred.
2796 *
2797 * @param {global.Event} event
2798 *        The event that occurred.
2799 */
2800/**
2801 * Gets fired when an area of the chart has been selected. The default action
2802 * for the selection event is to zoom the chart to the selected area. It can be
2803 * prevented by calling `event.preventDefault()` or return false.
2804 *
2805 * @callback Highcharts.ChartSelectionCallbackFunction
2806 *
2807 * @param {Highcharts.Chart} this
2808 *        The chart on which the event occurred.
2809 *
2810 * @param {Highcharts.SelectEventObject} event
2811 *        Event informations
2812 *
2813 * @return {boolean|undefined}
2814 *         Return false to prevent the default action, usually zoom.
2815 */
2816(''); // Detach doclets above

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.