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'; 11/* * 12 * 13 * Namespace 14 * 15 * */ 16/** 17 * Shared Highcharts properties. 18 * @private 19 */ 20var Globals; 21(function (Globals) { 22 /* * 23 * 24 * Constants 25 * 26 * */ 27 Globals.SVG_NS = 'http://www.w3.org/2000/svg', Globals.product = 'Highcharts', Globals.version = '@product.version@', Globals.win = (typeof window !== 'undefined' ? 28 window : 29 {}), // eslint-disable-line node/no-unsupported-features/es-builtins 30 Globals.doc = Globals.win.document, Globals.svg = (Globals.doc && 31 Globals.doc.createElementNS && 32 !!Globals.doc.createElementNS(Globals.SVG_NS, 'svg').createSVGRect), Globals.pageLang = Globals.doc?.documentElement?.closest('[lang]')?.lang, Globals.userAgent = (Globals.win.navigator && Globals.win.navigator.userAgent) || '', Globals.isChrome = Globals.win.chrome, Globals.isFirefox = Globals.userAgent.indexOf('Firefox') !== -1, Globals.isMS = /(edge|msie|trident)/i.test(Globals.userAgent) && !Globals.win.opera, Globals.isSafari = !Globals.isChrome && Globals.userAgent.indexOf('Safari') !== -1, Globals.isTouchDevice = /(Mobile|Android|Windows Phone)/.test(Globals.userAgent), Globals.isWebKit = Globals.userAgent.indexOf('AppleWebKit') !== -1, Globals.deg2rad = Math.PI * 2 / 360, Globals.marginNames = [ 33 'plotTop', 34 'marginRight', 35 'marginBottom', 36 'plotLeft' 37 ], Globals.noop = function () { }, Globals.supportsPassiveEvents = (function () { 38 // Checks whether the browser supports passive events, (#11353). 39 let supportsPassive = false; 40 // Object.defineProperty doesn't work on IE as well as passive 41 // events - instead of using polyfill, we can exclude IE totally. 42 if (!Globals.isMS) { 43 const opts = Object.defineProperty({}, 'passive', { 44 get: function () { 45 supportsPassive = true; 46 } 47 }); 48 if (Globals.win.addEventListener && Globals.win.removeEventListener) { 49 Globals.win.addEventListener('testPassive', Globals.noop, opts); 50 Globals.win.removeEventListener('testPassive', Globals.noop, opts); 51 } 52 } 53 return supportsPassive; 54 }()); 55 /** 56 * An array containing the current chart objects in the page. A chart's 57 * position in the array is preserved throughout the page's lifetime. When 58 * a chart is destroyed, the array item becomes `undefined`. 59 * 60 * @name Highcharts.charts 61 * @type {Array<Highcharts.Chart|undefined>} 62 */ 63 Globals.charts = []; 64 /** 65 * A shared registry between all bundles to keep track of applied 66 * compositions. 67 * @private 68 */ 69 Globals.composed = []; 70 /** 71 * A hook for defining additional date format specifiers. New 72 * specifiers are defined as key-value pairs by using the 73 * specifier as key, and a function which takes the timestamp as 74 * value. This function returns the formatted portion of the 75 * date. 76 * 77 * Using `dateFormats` is also a convenient way to define new keys for 78 * complex locale-aware date formats compatible with the 79 * [Intl.DateTimeFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat) 80 * browser API, whenever the built-in formats are not sufficient. 81 * 82 * @sample highcharts/global/dateformats/ 83 * Adding support for week number 84 * @sample highcharts/global/dateformats-object/ 85 * A locale-aware date format using `Intl.DateTimeFormat` 86 * 87 * @name Highcharts.dateFormats 88 * @type {Record<string, Highcharts.TimeFormatCallbackFunction>} 89 */ 90 Globals.dateFormats = {}; 91 /** 92 * @private 93 * @deprecated 94 * @todo Use only `Core/Series/SeriesRegistry.seriesTypes` 95 */ 96 Globals.seriesTypes = {}; 97 /** 98 * @private 99 */ 100 Globals.symbolSizes = {}; 101 /* * 102 * 103 * Properties 104 * 105 * */ 106 // eslint-disable-next-line prefer-const 107 Globals.chartCount = 0; 108})(Globals || (Globals = {})); 109/* * 110 * 111 * Default Export 112 * 113 * */ 114export default Globals; 115/* * 116 * 117 * API Declarations 118 * 119 * */ 120/** 121 * Theme options that should get applied to the chart. In module mode it 122 * might not be possible to change this property because of read-only 123 * restrictions, instead use {@link Highcharts.setOptions}. 124 * 125 * @deprecated 126 * @name Highcharts.theme 127 * @type {Highcharts.Options} 128 */ 129(''); // Keeps doclets above in JS file
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.