Files
ai/charting_library/bundles/chart-bottom-toolbar.fa391f32d66e5615a75e.js

24 lines
72 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

(self.webpackChunktradingview=self.webpackChunktradingview||[]).push([[7260],{59142:function(e,t){var n,a,s;a=[t],n=function(e){"use strict";function t(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}Object.defineProperty(e,"__esModule",{value:!0});var n=!1;if("undefined"!=typeof window){var a={get passive(){n=!0}};window.addEventListener("testPassive",null,a),window.removeEventListener("testPassive",null,a)}var s="undefined"!=typeof window&&window.navigator&&window.navigator.platform&&/iP(ad|hone|od)/.test(window.navigator.platform),i=[],o=!1,r=-1,l=void 0,c=void 0,d=function(e){return i.some((function(t){return!(!t.options.allowTouchMove||!t.options.allowTouchMove(e))}))},u=function(e){var t=e||window.event;return!!d(t.target)||1<t.touches.length||(t.preventDefault&&t.preventDefault(),!1)},h=function(){setTimeout((function(){void 0!==c&&(document.body.style.paddingRight=c,c=void 0),void 0!==l&&(document.body.style.overflow=l,l=void 0)}))};e.disableBodyScroll=function(e,a){if(s){if(!e)return void console.error("disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.");if(e&&!i.some((function(t){return t.targetElement===e}))){var h={targetElement:e,options:a||{}};i=[].concat(t(i),[h]),e.ontouchstart=function(e){1===e.targetTouches.length&&(r=e.targetTouches[0].clientY)},e.ontouchmove=function(t){var n,a,s,i;1===t.targetTouches.length&&(a=e,i=(n=t).targetTouches[0].clientY-r,!d(n.target)&&(a&&0===a.scrollTop&&0<i||(s=a)&&s.scrollHeight-s.scrollTop<=s.clientHeight&&i<0?u(n):n.stopPropagation()))},o||(document.addEventListener("touchmove",u,n?{passive:!1}:void 0),o=!0)}}else{p=a,setTimeout((function(){if(void 0===c){var e=!!p&&!0===p.reserveScrollBarGap,t=window.innerWidth-document.documentElement.clientWidth;e&&0<t&&(c=document.body.style.paddingRight,document.body.style.paddingRight=t+"px")}void 0===l&&(l=document.body.style.overflow,document.body.style.overflow="hidden")}));var m={targetElement:e,options:a||{}};i=[].concat(t(i),[m])}var p},e.clearAllBodyScrollLocks=function(){s?(i.forEach((function(e){e.targetElement.ontouchstart=null,e.targetElement.ontouchmove=null})),o&&(document.removeEventListener("touchmove",u,n?{passive:!1}:void 0),o=!1),i=[],r=-1):(h(),i=[])},e.enableBodyScroll=function(e){if(s){if(!e)return void console.error("enableBodyScroll unsuccessful - targetElement must be provided when calling enableBodyScroll on IOS devices.");e.ontouchstart=null,e.ontouchmove=null,i=i.filter((function(t){return t.targetElement!==e})),o&&0===i.length&&(document.removeEventListener("touchmove",u,n?{passive:!1}:void 0),o=!1)}else 1===i.length&&i[0].targetElement===e?(h(),i=[]):i=i.filter((function(t){return t.targetElement!==e}))}},void 0===(s="function"==typeof n?n.apply(t,a):n)||(e.exports=s)},97754:(e,t)=>{var n;!function(){"use strict";var a={}.hasOwnProperty;function s(){for(var e=[],t=0;t<arguments.length;t++){var n=arguments[t];if(n){var i=typeof n
;if("string"===i||"number"===i)e.push(n);else if(Array.isArray(n)&&n.length){var o=s.apply(null,n);o&&e.push(o)}else if("object"===i)for(var r in n)a.call(n,r)&&n[r]&&e.push(r)}}return e.join(" ")}e.exports?(s.default=s,e.exports=s):void 0===(n=function(){return s}.apply(t,[]))||(e.exports=n)}()},33319:e=>{e.exports={loader:"loader-PZ4hqS2H",static:"static-PZ4hqS2H",item:"item-PZ4hqS2H","tv-button-loader":"tv-button-loader-PZ4hqS2H",medium:"medium-PZ4hqS2H",small:"small-PZ4hqS2H",black:"black-PZ4hqS2H",white:"white-PZ4hqS2H",gray:"gray-PZ4hqS2H",primary:"primary-PZ4hqS2H","loader-initial":"loader-initial-PZ4hqS2H","loader-appear":"loader-appear-PZ4hqS2H"}},68550:e=>{e.exports={item:"item-bWEYVlEJ",interactive:"interactive-bWEYVlEJ",hovered:"hovered-bWEYVlEJ",disabled:"disabled-bWEYVlEJ",active:"active-bWEYVlEJ",shortcut:"shortcut-bWEYVlEJ",normal:"normal-bWEYVlEJ",big:"big-bWEYVlEJ",iconCell:"iconCell-bWEYVlEJ",icon:"icon-bWEYVlEJ",checkmark:"checkmark-bWEYVlEJ",content:"content-bWEYVlEJ",label:"label-bWEYVlEJ",checked:"checked-bWEYVlEJ",toolbox:"toolbox-bWEYVlEJ",showToolboxOnHover:"showToolboxOnHover-bWEYVlEJ",arrowIcon:"arrowIcon-bWEYVlEJ",subMenu:"subMenu-bWEYVlEJ",invisibleHotkey:"invisibleHotkey-bWEYVlEJ"}},3651:e=>{e.exports={item:"item-X2LmiiGx",emptyIcons:"emptyIcons-X2LmiiGx",loading:"loading-X2LmiiGx",disabled:"disabled-X2LmiiGx",interactive:"interactive-X2LmiiGx",hovered:"hovered-X2LmiiGx",normal:"normal-X2LmiiGx",big:"big-X2LmiiGx",icon:"icon-X2LmiiGx",label:"label-X2LmiiGx",title:"title-X2LmiiGx",nested:"nested-X2LmiiGx",shortcut:"shortcut-X2LmiiGx",remove:"remove-X2LmiiGx"}},94725:e=>{e.exports={separator:"separator-LQ6E1iWj"}},45829:e=>{e.exports={separator:"separator-w5iW5vBm",small:"small-w5iW5vBm",normal:"normal-w5iW5vBm",large:"large-w5iW5vBm"}},86355:e=>{e.exports={tabs:"tabs-g47ZTMzc",tab:"tab-g47ZTMzc",noBorder:"noBorder-g47ZTMzc",disabled:"disabled-g47ZTMzc",active:"active-g47ZTMzc",defaultCursor:"defaultCursor-g47ZTMzc",slider:"slider-g47ZTMzc",content:"content-g47ZTMzc"}},26996:(e,t,n)=>{"use strict";n.d(t,{Loader:()=>c});var a,s=n(50959),i=n(97754),o=n(74991),r=n(33319),l=n.n(r);!function(e){e[e.Initial=0]="Initial",e[e.Appear=1]="Appear",e[e.Active=2]="Active"}(a||(a={}));class c extends s.PureComponent{constructor(e){super(e),this._stateChangeTimeout=null,this.state={state:a.Initial}}render(){const{className:e,color:t="black",size:n="medium",staticPosition:a}=this.props,o=i(l().item,l()[t],l()[n]);return s.createElement("span",{className:i(l().loader,a&&l().static,this._getStateClass(),e)},s.createElement("span",{className:o}),s.createElement("span",{className:o}),s.createElement("span",{className:o}))}componentDidMount(){this.setState({state:a.Appear}),this._stateChangeTimeout=setTimeout((()=>{this.setState({state:a.Active})}),2*o.dur)}componentWillUnmount(){this._stateChangeTimeout&&(clearTimeout(this._stateChangeTimeout),this._stateChangeTimeout=null)}_getStateClass(){switch(this.state.state){case a.Initial:return l()["loader-initial"];case a.Appear:return l()["loader-appear"];default:
return""}}}},42142:(e,t,n)=>{"use strict";n.d(t,{FragmentMap:()=>s});var a=n(50959);function s(e){if(e.map){return a.Children.toArray(e.children).map(e.map)}return e.children}},99025:(e,t,n)=>{"use strict";n.d(t,{Hint:()=>r});var a=n(50959),s=n(97754),i=n.n(s),o=n(68550);function r(e){const{text:t="",className:n}=e;return a.createElement("span",{className:i()(o.shortcut,n)},t)}},23829:(e,t,n)=>{"use strict";n.d(t,{ContextMenuItem:()=>p});var a=n(50959),s=n(97754),i=n.n(s),o=n(9745),r=n(26996),l=n(54627),c=n(99025),d=n(39750),u=n(79978),h=n(69311),m=n(3651);function p(e){const{isTitle:t,isLoading:n,isHovered:s,active:p,checkable:g,disabled:v,checked:f,icon:b,iconChecked:_,hint:y,subItems:S,label:C,onClick:E,children:x,toolbox:k,jsxLabel:M,size:w="normal"}=e,T=(0,a.useContext)(l.EmptyIconsContext),W=!!S.length;return n?a.createElement("li",{className:i()(m.item,m.loading,m[w])},a.createElement(r.Loader,null)):a.createElement("li",{className:i()(m.item,m.interactive,t&&m.title,v&&m.disabled,s&&m.hovered,p&&m.active,T&&m.emptyIcons,m[w]),onClick:E},a.createElement(o.Icon,{className:i()(m.icon),icon:function(){if(g&&f)return _||b||d;return b}()}),a.createElement("span",{className:i()(m.label)},null!=M?M:C),!!k&&a.createElement(o.Icon,{onClick:function(){k&&k.action()},className:m.remove,icon:h}),!W&&y&&a.createElement(c.Hint,{className:m.shortcut,text:y}),W&&a.createElement(o.Icon,{className:m.nested,icon:u}),x)}},54627:(e,t,n)=>{"use strict";n.d(t,{EmptyIconsContext:()=>a});const a=n(50959).createContext(!1)},1109:(e,t,n)=>{"use strict";n.d(t,{Separator:()=>o});var a=n(50959),s=n(97754),i=n(94725);function o(e){return a.createElement("div",{className:s(i.separator,e.className)})}},51613:(e,t,n)=>{"use strict";n.d(t,{PopupMenuSeparator:()=>r});var a=n(50959),s=n(97754),i=n.n(s),o=n(45829);function r(e){const{size:t="normal",className:n,ariaHidden:s=!1}=e;return a.createElement("div",{className:i()(o.separator,"small"===t&&o.small,"normal"===t&&o.normal,"large"===t&&o.large,n),role:"separator","aria-hidden":s})}},64205:(e,t,n)=>{"use strict";n.d(t,{DEFAULT_SLIDER_THEME:()=>r,SliderItem:()=>l,factory:()=>c});var a=n(50959),s=n(97754),i=n(50151),o=n(86355);const r=o;function l(e){const t=s(e.className,o.tab,{[o.active]:e.isActive,[o.disabled]:e.isDisabled,[o.defaultCursor]:!!e.shouldUseDefaultCursor,[o.noBorder]:!!e.noBorder});return a.createElement("div",{className:t,onClick:e.onClick,ref:e.reference,"data-type":"tab-item","data-value":e.value,"data-name":"tab-item-"+e.value.toString().toLowerCase()},e.children)}function c(e){return class extends a.PureComponent{constructor(){super(...arguments),this.activeTab={current:null}}componentDidUpdate(){(0,i.ensureNotNull)(this._slider).style.transition="transform 350ms",this._componentDidUpdate()}componentDidMount(){this._componentDidUpdate()}render(){const{className:t}=this.props,n=this._generateTabs();return a.createElement("div",{className:s(t,o.tabs),"data-name":this.props["data-name"]},n,a.createElement(e,{reference:e=>{this._slider=e}}))}_generateTabs(){
return this.activeTab.current=null,a.Children.map(this.props.children,(e=>{const t=e,n=Boolean(t.props.isActive),s={reference:e=>{n&&(this.activeTab.current=e),t.props.reference&&t.props.reference(e)}};return a.cloneElement(t,s)}))}_componentDidUpdate(){const e=(0,i.ensureNotNull)(this._slider).style;if(this.activeTab.current){const t=this.activeTab.current.offsetWidth,n=this.activeTab.current.offsetLeft;e.transform=`translateX(${n}px)`,e.width=`${t}px`,e.opacity="1"}else e.opacity="0"}}}c((function(e){return a.createElement("div",{className:o.slider,ref:e.reference})}))},40173:(e,t,n)=>{"use strict";function a(e,t,n={}){return Object.assign({},e,function(e,t,n={}){const a=Object.assign({},t);for(const s of Object.keys(t)){const i=n[s]||s;i in e&&(a[s]=[e[i],t[s]].join(" "))}return a}(e,t,n))}n.d(t,{mergeThemes:()=>a})},6132:(e,t,n)=>{"use strict";var a=n(22134);function s(){}function i(){}i.resetWarningCache=s,e.exports=function(){function e(e,t,n,s,i,o){if(o!==a){var r=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw r.name="Invariant Violation",r}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:s};return n.PropTypes=n,n}},19036:(e,t,n)=>{e.exports=n(6132)()},22134:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},95257:(e,t)=>{"use strict";var n=Symbol.for("react.element"),a=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),r=Symbol.for("react.provider"),l=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),u=Symbol.for("react.memo"),h=Symbol.for("react.lazy"),m=Symbol.iterator;var p={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,v={};function f(e,t,n){this.props=e,this.context=t,this.refs=v,this.updater=n||p}function b(){}function _(e,t,n){this.props=e,this.context=t,this.refs=v,this.updater=n||p}f.prototype.isReactComponent={},f.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},f.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},b.prototype=f.prototype;var y=_.prototype=new b;y.constructor=_,g(y,f.prototype),y.isPureReactComponent=!0;var S=Array.isArray,C=Object.prototype.hasOwnProperty,E={current:null},x={key:!0,ref:!0,__self:!0,__source:!0};function k(e,t,a){var s,i={},o=null,r=null;if(null!=t)for(s in void 0!==t.ref&&(r=t.ref),void 0!==t.key&&(o=""+t.key),
t)C.call(t,s)&&!x.hasOwnProperty(s)&&(i[s]=t[s]);var l=arguments.length-2;if(1===l)i.children=a;else if(1<l){for(var c=Array(l),d=0;d<l;d++)c[d]=arguments[d+2];i.children=c}if(e&&e.defaultProps)for(s in l=e.defaultProps)void 0===i[s]&&(i[s]=l[s]);return{$$typeof:n,type:e,key:o,ref:r,props:i,_owner:E.current}}function M(e){return"object"==typeof e&&null!==e&&e.$$typeof===n}var w=/\/+/g;function T(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function W(e,t,s,i,o){var r=typeof e;"undefined"!==r&&"boolean"!==r||(e=null);var l=!1;if(null===e)l=!0;else switch(r){case"string":case"number":l=!0;break;case"object":switch(e.$$typeof){case n:case a:l=!0}}if(l)return o=o(l=e),e=""===i?"."+T(l,0):i,S(o)?(s="",null!=e&&(s=e.replace(w,"$&/")+"/"),W(o,t,s,"",(function(e){return e}))):null!=o&&(M(o)&&(o=function(e,t){return{$$typeof:n,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(o,s+(!o.key||l&&l.key===o.key?"":(""+o.key).replace(w,"$&/")+"/")+e)),t.push(o)),1;if(l=0,i=""===i?".":i+":",S(e))for(var c=0;c<e.length;c++){var d=i+T(r=e[c],c);l+=W(r,t,s,d,o)}else if(d=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=m&&e[m]||e["@@iterator"])?e:null}(e),"function"==typeof d)for(e=d.call(e),c=0;!(r=e.next()).done;)l+=W(r=r.value,t,s,d=i+T(r,c++),o);else if("object"===r)throw t=String(e),Error("Objects are not valid as a React child (found: "+("[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return l}function z(e,t,n){if(null==e)return e;var a=[],s=0;return W(e,a,"","",(function(e){return t.call(n,e,s++)})),a}function R(e){if(-1===e._status){var t=e._result;(t=t()).then((function(t){0!==e._status&&-1!==e._status||(e._status=1,e._result=t)}),(function(t){0!==e._status&&-1!==e._status||(e._status=2,e._result=t)})),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var A={current:null},j={transition:null},L={ReactCurrentDispatcher:A,ReactCurrentBatchConfig:j,ReactCurrentOwner:E};t.Children={map:z,forEach:function(e,t,n){z(e,(function(){t.apply(this,arguments)}),n)},count:function(e){var t=0;return z(e,(function(){t++})),t},toArray:function(e){return z(e,(function(e){return e}))||[]},only:function(e){if(!M(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},t.Component=f,t.Fragment=s,t.Profiler=o,t.PureComponent=_,t.StrictMode=i,t.Suspense=d,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=L,t.cloneElement=function(e,t,a){if(null==e)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var s=g({},e.props),i=e.key,o=e.ref,r=e._owner;if(null!=t){if(void 0!==t.ref&&(o=t.ref,r=E.current),void 0!==t.key&&(i=""+t.key),e.type&&e.type.defaultProps)var l=e.type.defaultProps
;for(c in t)C.call(t,c)&&!x.hasOwnProperty(c)&&(s[c]=void 0===t[c]&&void 0!==l?l[c]:t[c])}var c=arguments.length-2;if(1===c)s.children=a;else if(1<c){l=Array(c);for(var d=0;d<c;d++)l[d]=arguments[d+2];s.children=l}return{$$typeof:n,type:e.type,key:i,ref:o,props:s,_owner:r}},t.createContext=function(e){return(e={$$typeof:l,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null}).Provider={$$typeof:r,_context:e},e.Consumer=e},t.createElement=k,t.createFactory=function(e){var t=k.bind(null,e);return t.type=e,t},t.createRef=function(){return{current:null}},t.forwardRef=function(e){return{$$typeof:c,render:e}},t.isValidElement=M,t.lazy=function(e){return{$$typeof:h,_payload:{_status:-1,_result:e},_init:R}},t.memo=function(e,t){return{$$typeof:u,type:e,compare:void 0===t?null:t}},t.startTransition=function(e){var t=j.transition;j.transition={};try{e()}finally{j.transition=t}},t.unstable_act=function(){throw Error("act(...) is not supported in production builds of React.")},t.useCallback=function(e,t){return A.current.useCallback(e,t)},t.useContext=function(e){return A.current.useContext(e)},t.useDebugValue=function(){},t.useDeferredValue=function(e){return A.current.useDeferredValue(e)},t.useEffect=function(e,t){return A.current.useEffect(e,t)},t.useId=function(){return A.current.useId()},t.useImperativeHandle=function(e,t,n){return A.current.useImperativeHandle(e,t,n)},t.useInsertionEffect=function(e,t){return A.current.useInsertionEffect(e,t)},t.useLayoutEffect=function(e,t){return A.current.useLayoutEffect(e,t)},t.useMemo=function(e,t){return A.current.useMemo(e,t)},t.useReducer=function(e,t,n){return A.current.useReducer(e,t,n)},t.useRef=function(e){return A.current.useRef(e)},t.useState=function(e){return A.current.useState(e)},t.useSyncExternalStore=function(e,t,n){return A.current.useSyncExternalStore(e,t,n)},t.useTransition=function(){return A.current.useTransition()},t.version="18.2.0"},50959:(e,t,n)=>{"use strict";e.exports=n(95257)},78838:e=>{e.exports={button:"button-MHRXYii0",hover:"hover-MHRXYii0",inner:"inner-MHRXYii0"}},77907:e=>{e.exports={title:"title-t_2RnW3_"}},26756:e=>{e.exports={toolbar:"toolbar-uWw2aReP",dateRangeWrapper:"dateRangeWrapper-uWw2aReP",seriesControlWrapper:"seriesControlWrapper-uWw2aReP",dateRangeExpanded:"dateRangeExpanded-uWw2aReP",dateRangeCollapsed:"dateRangeCollapsed-uWw2aReP",item:"item-uWw2aReP",first:"first-uWw2aReP",last:"last-uWw2aReP",inline:"inline-uWw2aReP",timezone:"timezone-uWw2aReP",session:"session-uWw2aReP",icon:"icon-uWw2aReP",hidden:"hidden-uWw2aReP",collapsed:"collapsed-uWw2aReP"}},35900:e=>{e.exports={button:"button-wVK1yQmF",separator:"separator-wVK1yQmF"}},46632:e=>{e.exports={button:"button-rgQ5VWWu",hover:"hover-rgQ5VWWu",icon:"icon-rgQ5VWWu"}},92194:e=>{e.exports={separator:"separator-tdPP3m5x"}},87017:e=>{e.exports={headerMenuText:"headerMenuText-kxGYI1CJ"}},87457:e=>{e.exports={button:"button-WB93ygW4"}},81195:e=>{e.exports={item:"item-Jc9IXW74",hover:"hover-Jc9IXW74",isActive:"isActive-Jc9IXW74",
isFirst:"isFirst-Jc9IXW74",isLast:"isLast-Jc9IXW74"}},7595:e=>{e.exports={slider:"slider-yrq2LKUD",inner:"inner-yrq2LKUD"}},19731:e=>{e.exports={sliderRow:"sliderRow-hx8kZa1R"}},81384:(e,t,n)=>{"use strict";n.d(t,{ToolWidgetMenuSummary:()=>o});var a=n(50959),s=n(97754),i=n(77907);function o(e){return a.createElement("div",{className:s(e.className,i.title)},e.children)}},33366:(e,t,n)=>{"use strict";n.r(t),n.d(t,{BottomToolbarRenderer:()=>at});var a=n(50959),s=n(962),i=n(44352),o=n(19036),r=n(97754),l=n(2484),c=n(37536),d=n(39313),u=n(59064),h=n(90692),m=n(16396),p=n(51613),g=n(50151),v=n(51768),f=n(10654),b=n(26867),_=n.n(b);class y{constructor(e){this._state={ranges:[]},this._change=new(_()),this._rangeChangedListenerBound=this._onRangeChanged.bind(this);const{chartWidget:t}=this._context=e;t.withModel(null,(()=>{const e=t.model(),n=e.mainSeries();n.onStatusChanged().subscribe(this,this._updateAvailableRanges),l.enabled("update_timeframes_set_on_symbol_resolve")&&n.dataEvents().symbolResolved().subscribe(this,this._updateAvailableRanges),n.priceScale().properties().childs().lockScale.subscribe(this,this._updateAvailableRanges);const a=e.model().appliedTimeFrame();a.subscribe(this._rangeChangedListenerBound),this._rangeChangedListenerBound(a.value()),this._updateAvailableRanges()}))}state(){return this._state}onChange(){return this._change}selectRange(e){this._setState({activeRange:e.value.value});const{chartWidgetCollection:t}=this._context,n={val:e.value,res:e.targetResolution};t.setTimeFrame(n)}destroy(){const{chartWidget:e}=this._context;e.withModel(null,(()=>{const t=e.model(),n=t.mainSeries();n.onStatusChanged().unsubscribe(this,this._updateAvailableRanges),l.enabled("update_timeframes_set_on_symbol_resolve")&&n.dataEvents().symbolResolved().unsubscribe(this,this._updateAvailableRanges),n.priceScale().properties().childs().lockScale.unsubscribe(this,this._updateAvailableRanges),t.model().appliedTimeFrame().unsubscribe(this._rangeChangedListenerBound)})),this._change.destroy()}_setState(e){this._state=Object.assign({},this._state,e),this._change.fire(this._state)}_onRangeChanged(e){let t;null!==e&&"period-back"===e.val.type&&(t=e.val.value),this._setState({activeRange:t})}_updateAvailableRanges(){const{availableTimeFrames:e,chartWidget:t}=this._context;if(!t.hasModel())return;const n=t.model().mainSeries(),a=n.status();if(2===a||1===a)return;const s=e(n.symbolInfo(),n.status());0!==s.length&&this._setState({ranges:s})}}const S=(0,f.registryContextType)();function C(e){var t;return(t=class extends a.PureComponent{constructor(e,t){super(e,t),this._handleUpdate=e=>{this.setState(e)},this._handleSelectRange=e=>{var t,n;(0,v.trackEvent)("GUI","Chart Bottom Toolbar",`range ${e.value}`),null===(n=(t=this.props).onSelectRange)||void 0===n||n.call(t,e),this._binding.selectRange(e)},(0,f.validateRegistry)(t,{availableTimeFrames:o.any.isRequired,chartWidgetCollection:o.any.isRequired,chartWidget:o.any.isRequired}),E.has(t.chartWidget)||E.set(t.chartWidget,new y(t));const n=this._binding=(0,
g.ensureDefined)(E.get(t.chartWidget));this.state=n.state()}componentDidMount(){this._binding.onChange().subscribe(this,this._handleUpdate)}componentWillUnmount(){this._binding.onChange().unsubscribe(this,this._handleUpdate)}render(){return a.createElement(e,{goToDateButton:this.props.goToDateButton,className:this.props.className,ranges:this.state.ranges,activeRange:this.state.activeRange,onSelectRange:this._handleSelectRange})}}).contextType=S,t}const E=new WeakMap;var x=n(68009),k=n(23829),M=n(1109),w=n(86339),T=n(90752),W=n(35900);function z(e){const{ranges:t,activeRange:n,onSelectRange:s}=e;return a.createElement(a.Fragment,null,t.map((e=>a.createElement(k.ContextMenuItem,{key:e.value.value,label:e.description||e.text,active:n===e.value.value,checked:n===e.value.value,checkable:!0,disabled:!1,onClick:i.bind(null,e),doNotCloseOnClick:!1,subItems:[]}))));function i(e){e&&s&&s(e),(0,u.globalCloseMenu)()}}function R(e){const{onGoToDateClick:t}=e;return a.createElement(a.Fragment,null,a.createElement(M.Separator,{className:W.separator}),a.createElement(k.ContextMenuItem,{icon:T,label:(0,w.appendEllipsis)(i.t(null,void 0,n(369))),onClick:t,active:!1,checked:!1,checkable:!1,disabled:!1,doNotCloseOnClick:!1,subItems:[]}))}const A={title:i.t(null,void 0,n(60222)),goToDate:(0,w.appendEllipsis)(i.t(null,void 0,n(369)))},j=(0,f.registryContextType)();class L extends a.PureComponent{constructor(e,t){super(e,t),this._handleGoToDateClick=()=>{const{chartWidget:e}=this.context;(0,x.showGoToDateDialog)(e),(0,u.globalCloseMenu)()},this._handleRangeSelect=e=>{e&&this.props.onSelectRange&&this.props.onSelectRange(e),(0,u.globalCloseMenu)()},this._renderChildren=e=>{const{ranges:t,activeRange:n,goToDateButton:s}=this.props;return e?a.createElement(a.Fragment,null,a.createElement(z,{ranges:t,activeRange:n,onSelectRange:this._handleRangeSelect}),s&&a.createElement(R,{onGoToDateClick:this._handleGoToDateClick})):a.createElement(a.Fragment,null,t.map((e=>a.createElement(m.PopupMenuItem,{key:e.value.value,label:e.description||e.text,isActive:n===e.value.value,onClick:this._handleRangeSelect,onClickArg:e}))),s&&a.createElement(p.PopupMenuSeparator,null),s&&a.createElement(m.PopupMenuItem,{label:A.goToDate,onClick:this._handleGoToDateClick}))},(0,f.validateRegistry)(t,{chartWidget:o.any.isRequired})}render(){return a.createElement(h.MatchMedia,{rule:"screen and (max-width: 430px)"},(e=>a.createElement(c.ToolWidgetMenu,{className:W.button,content:A.title,arrow:!0,verticalAttachEdge:d.VerticalAttachEdge.Top,verticalDropDirection:d.VerticalDropDirection.FromBottomToTop,horizontalMargin:4,"data-name":"date-ranges-menu",isDrawer:e,onClick:this._trackClick},this._renderChildren(e))))}_trackClick(){0}}L.contextType=j;const N=C(L);var P=n(64205),I=n(81195);function B(e){const t=r(e.className,I.item,{[I.isActive]:e.isActive,[I.isFirst]:e.isFirst,[I.isLast]:e.isLast});return a.createElement("div",{className:t,onClick:e.onClick,ref:e.reference},e.children)}var D=n(40173),H=n(7595);const F=(0,D.mergeThemes)(P.DEFAULT_SLIDER_THEME,H);var U=n(19731)
;const O=(0,P.factory)((function(e){return a.createElement("div",{className:r(e.className,F.slider),ref:e.reference},a.createElement("div",{className:F.inner}))}));const V=C((function(e){const{className:t,ranges:n,activeRange:s,onSelectRange:i}=e;return a.createElement(O,{className:r(U.sliderRow,t),"data-name":"date-ranges-tabs"},n.map(((e,t)=>a.createElement(B,{key:e.value.value,value:e.value.value,isFirst:0===t,isLast:t===n.length-1,isActive:s===e.value.value,onClick:i&&i.bind(null,e)},a.createElement("div",{title:e.description||e.text,className:"apply-common-tooltip"},e.text)))))}));var q=n(9745),Y=n(61814),G=n(68335),Z=n(15270),$=n(46632);const J=(0,Y.hotKeySerialize)({keys:[(0,G.humanReadableModifiers)(G.Modifiers.Alt,!1),"G"],text:"{0} + {1}"}),X=(0,f.registryContextType)();class K extends a.PureComponent{constructor(e,t){super(e,t),this._handleClick=()=>{const{chartWidget:e}=this.context;(0,v.trackEvent)("GUI","Chart Bottom Toolbar","go to"),(0,x.showGoToDateDialog)(e)},(0,f.validateRegistry)(t,{chartWidget:o.any.isRequired})}render(){const{className:e,ranges:t}=this.props;return t.length>0&&a.createElement("div",{className:r("apply-common-tooltip",$.button,e),"data-name":"go-to-date","data-tooltip-hotkey":J,onClick:this._handleClick,title:i.t(null,void 0,n(369))},a.createElement(q.Icon,{className:$.icon,icon:Z}))}}K.contextType=X;const Q=C(K);var ee=n(78838);function te(e){const{reference:t,className:n,children:s,...i}=e;return a.createElement("button",{...i,className:r(n,ee.button),ref:t},a.createElement("span",{className:ee.inner},s))}var ne=n(43925),ae=n(78831),se=n(43986),ie=n(60223);class oe extends a.PureComponent{constructor(e){super(e),this._element=null,this._menuShown=!1,this._preventShowingMenu=!1,this._handleRef=e=>{this._element=e},this._onMouseDown=()=>{this._preventShowingMenu=this._menuShown},this._showMenu=()=>{if(this._preventShowingMenu)return void ie.ContextMenuManager.hideAll();const{getActions:e}=this.props,t=(0,g.ensureNotNull)(this._element),n=e();if(0===n.length)return;const a=t.getBoundingClientRect();ie.ContextMenuManager.showMenu(n,{clientX:a.left,clientY:a.top,attachToYBy:"bottom"},void 0,{menuName:"TimezoneMenuContextMenu"},(()=>{this._menuShown=!1})).then((()=>{this._menuShown=!0}))}}render(){const{children:e}=this.props;return a.createElement("span",{onClick:this._showMenu,onMouseDown:this._onMouseDown,ref:this._handleRef},e)}}var re=n(32769),le=n(74914),ce=n(51620),de=n(87457);const ue={hint:i.t(null,void 0,n(87492))};const he=(0,f.registryContextType)();class me extends a.PureComponent{constructor(e,t){super(e,t),this._timeFormatter=new ae.TimeFormatter((0,le.getHourMinuteSecondFormat)(ce.timeHoursFormatProperty.value())),this._tickInterval=void 0,this._tickClock=()=>{const{chartApiInstance:e}=this.context;if(void 0!==this._timezone){const t=(0,re.utc_to_cal)(this._timezone,e.serverTime());this.setState({time:this._timeFormatter.format(t)})}},this._getActions=()=>{if(!this.props.withMenu)return[];const{chartWidget:e}=this.context;return function(e){e.updateActions()
;const t=e.actions();return t&&t.applyTimeZone instanceof se.Action?t.applyTimeZone.getSubItems():[]}(e)},(0,f.validateRegistry)(t,{chartWidget:o.any.isRequired,chartApiInstance:o.any.isRequired}),this.state={time:""}}componentDidMount(){const{chartWidget:e}=this.context;this._tickInterval=setInterval(this._tickClock,1e3),e.withModel(null,(()=>{const t=e.model();t.model().mainSeries().dataEvents().symbolResolved().subscribe(this,this.updateTimezonesButton),t.model().properties().childs().timezone.subscribe(this,this.updateTimezonesButton),ce.timeHoursFormatProperty.subscribe(this,this._timeHoursFormatPropertyChanged)}))}componentWillUnmount(){const{chartWidget:e}=this.context;clearInterval(this._tickInterval),e.withModel(null,(()=>{const t=e.model();t.model().mainSeries().dataEvents().symbolResolved().unsubscribe(this,this.updateTimezonesButton),t.model().properties().childs().timezone.unsubscribe(this,this.updateTimezonesButton),ce.timeHoursFormatProperty.unsubscribe(this,this._timeHoursFormatPropertyChanged)}))}render(){const{className:e,withMenu:t}=this.props,{time:n}=this.state,s=void 0!==this._timezone?(0,ne.parseTzOffset)(this._timezone.name()).string:null;return a.createElement(oe,{getActions:this._getActions},a.createElement(te,{className:r(e,de.button,"apply-common-tooltip"),title:t?ue.hint:void 0,disabled:!t,"data-name":"time-zone-menu"},n&&s&&`${n} (${s})`))}updateTimezonesButton(){const{chartWidget:e}=this.context;if(!e.hasModel())return;if(null===e.model().mainSeries().symbolInfo())return;let t=e.model().model().timezone();if("exchange"===t){const n=(0,g.ensureNotNull)(e.model().mainSeries().symbolInfo()).timezone;n&&(t=n)}this._timezone=(0,re.get_timezone)(t),this._tickClock()}_timeHoursFormatPropertyChanged(){this._timeFormatter=new ae.TimeFormatter((0,le.getHourMinuteSecondFormat)(ce.timeHoursFormatProperty.value())),this.updateTimezonesButton()}}me.contextType=he;var pe=n(92194);function ge(e){return a.createElement("span",{className:r(pe.separator,e.className)})}var ve=n(94206),fe=n(47539),be=n(49483);class _e{constructor(e,t,n){this._highlighted=!1,this._chartWidget=e,this._priceScaleGetter=t,this._owner=n,this._setHighlight=this._setHighlight.bind(this),this._removeHighlight=this._removeHighlight.bind(this)}destroy(){this._highlighted&&this._removeHighlight()}handlers(){const e=be.CheckMobile.any();return{onMouseEnter:e?void 0:this._setHighlight,onMouseLeave:e?void 0:this._removeHighlight}}_setHighlight(){if(!this._chartWidget.hasModel())return;const e=this._chartWidget.model().model(),t=e.paneForSource(e.mainSeries()),n=this._priceScaleGetter();if(null===t||null===n)return;const a=this._chartWidget.paneByState(t);if(null!==a){const t=a.rightPriceAxisesContainer().findAxisWidgetForScale(n);let s=null;null!==t&&(s=t.axisInfo());const i=a.leftPriceAxisesContainer().findAxisWidgetForScale(n);null!==i&&(s=i.axisInfo());const o=a.highlightedPriceAxis();null!==s&&o.value().axis!==s&&(o.setValue({owner:this._owner,axis:s}),e.lightUpdate(),this._highlighted=!0)}}_removeHighlight(){
if(!this._chartWidget.hasModel())return;const e=this._chartWidget.model().model(),t=e.paneForSource(e.mainSeries());if(null===t)return;const n=this._chartWidget.paneByState(t);if(null!==n){const t=n.highlightedPriceAxis(),a=t.value();null!==a.axis&&a.owner===this._owner&&(t.setValue({owner:this._owner,axis:null}),e.lightUpdate(),this._highlighted=!1)}}}const ye=(0,f.registryContextType)(),Se=new fe.TranslatedString("toggle log scale",i.t(null,void 0,n(60166)));const Ce=(0,f.registryContextType)(),Ee=new fe.TranslatedString("toggle auto scale",i.t(null,void 0,n(63060)));const xe=(0,f.registryContextType)(),ke=new fe.TranslatedString("toggle percentage scale",i.t(null,void 0,n(68642)));const Me=(0,f.registryContextType)();var we=n(42142),Te=n(33933),We=n(81384),ze=n(12272),Re=n(87017);const Ae=new fe.TranslatedString("change session",i.t(null,void 0,n(65303))),je={hint:i.t(null,void 0,n(25866)),headerMenuText:i.t(null,void 0,n(44794))},Le=(0,f.registryContextType)();class Ne extends a.PureComponent{constructor(e,t){super(e,t),(0,f.validateRegistry)(t,{chartWidget:o.any.isRequired,chartApiInstance:o.any.isRequired}),this.state={availableSessions:[]}}componentDidMount(){const{chartWidget:e}=this.context;e.withModel(null,(()=>{const t=e.model();t.model().mainSeries().dataEvents().symbolResolved().subscribe(this,this.updateSessionButton),t.model().mainSeries().properties().childs().sessionId.subscribe(this,this.updateSessionButton),this.updateSessionButton()}))}componentWillUnmount(){const{chartWidget:e}=this.context;e.withModel(null,(()=>{const t=e.model();t.model().mainSeries().dataEvents().symbolResolved().unsubscribe(this,this.updateSessionButton),t.model().mainSeries().properties().childs().sessionId.unsubscribe(this,this.updateSessionButton)}))}render(){const{className:e,withMenu:t}=this.props,{sessionName:n}=this.state;return a.createElement(c.ToolWidgetMenu,{arrow:!1,isDisabled:!t,content:n,className:e,closeOnClickOutside:!0,title:t?je.hint:void 0,"data-name":"session-menu",verticalDropDirection:d.VerticalDropDirection.FromBottomToTop,verticalAttachEdge:d.VerticalAttachEdge.Top,onClick:this._trackClick},this._menuItems())}updateSessionButton(){var e,t;const{chartWidget:n}=this.context;if(!n.model())return;const a=n.model().mainSeries().symbolInfo();if(null===a)return;const s=a.subsession_id,i=null!==(t=null===(e=a.subsessions)||void 0===e?void 0:e.filter((e=>!e.private)))&&void 0!==t?t:[],o=i.find((e=>e.id===s));this.setState({sessionId:s,sessionName:(0,ze.translateSessionShortDescription)((null==o?void 0:o.description)||""),availableSessions:i})}_menuItems(){if(!this.props.withMenu)return[];const{chartWidget:e}=this.context,{availableSessions:t}=this.state;if(!e.model())return[];const n=e.model().mainSeries(),s=[a.createElement(We.ToolWidgetMenuSummary,{key:"header_menu_text",className:Re.headerMenuText},je.headerMenuText.toUpperCase())];for(const i of t){const t={category:"SetSession",event:i.id},o=()=>{e.model().setProperty(n.properties().childs().sessionId,i.id,Ae)};s.push(a.createElement(m.PopupMenuItem,{
key:i.id,label:(0,ze.translateSessionDescription)(i.description),isActive:this.state.sessionId===i.id,trackEventObject:t,onClick:o}))}return s}_trackClick(){0}}Ne.contextType=Le;var Pe=n(21868),Ie=n(83863),Be=n(26756);const De={extLabel:i.t(null,void 0,n(8877)),extHint:i.t(null,void 0,n(41421)),percentageHint:i.t(null,void 0,n(43737)),logLabel:i.t(null,{context:"scale"},n(885)),logHint:i.t(null,void 0,n(21329)),autoLabel:i.t(null,{context:"scale"},n(99247)),autoHint:i.t(null,void 0,n(60879)),fullscreenHint:i.t(null,void 0,n(98948)),adjLabel:i.t(null,{context:"adjustments"},n(38219)),adjHint:i.t(null,void 0,n(9994)),adjForDividendsOnlyHint:i.t(null,void 0,n(1217)),adjForSplitsOnlyHint:i.t(null,void 0,n(18540)),backAdjustLabel:i.t(null,{context:"adjustments"},n(53457)),backAdjustHint:i.t(null,void 0,n(10989)),settlementAsCloseLabel:i.t(null,{context:"adjustments"},n(17077)),settlementAsCloseHint:i.t(null,void 0,n(23500))},He=(Fe=e=>a.createElement(ve.ToolWidgetButton,{text:De.logLabel,title:De.logHint,className:e.className,isActive:e.isLogarithm,isGrouped:!0,onClick:Xe(e.onClick,"log",e.isLogarithm),onMouseEnter:e.onMouseEnter,onMouseLeave:e.onMouseLeave,"data-name":"logarithm"}),(Ue=class extends a.PureComponent{constructor(e,t){super(e,t),this._priceScale=null,this._handleSelect=()=>{const e=this.context.chartWidget.model(),t=(0,g.ensureNotNull)(this.state.series),n=t.priceScale(),a=n.mode();t.priceScale().isLockScale()||e.setPriceScaleMode({log:!a.log},n,Se)},(0,f.validateRegistry)(t,{chartWidget:o.any.isRequired}),this.state={isActive:!1,series:null},this._priceAxisHighlighter=new _e(this.context.chartWidget,(()=>this._priceScale),"logarithm")}componentDidMount(){const e=this.context.chartWidget;e.withModel(null,(()=>{const t=e.model().mainSeries(),n=t.priceScale();this._handleMainSeriesPriceScaleChanged(n),t.priceScaleChanged().subscribe(this,this._handleMainSeriesPriceScaleChanged),this._handleModeChanged({},n.mode()),this.setState({isActive:t.priceScale().isLog(),series:t})}))}componentWillUnmount(){const e=this.context.chartWidget;e.withModel(null,(()=>{e.model().mainSeries().priceScaleChanged().unsubscribe(this,this._handleMainSeriesPriceScaleChanged)})),null!==this._priceScale&&(this._priceScale.modeChanged().unsubscribeAll(this),this._priceScale=null),this._priceAxisHighlighter.destroy()}render(){const{className:e}=this.props,{isActive:t,series:n}=this.state;return a.createElement(Fe,{...this._priceAxisHighlighter.handlers(),className:e,isLogarithm:t,isDisabled:null===n,onClick:this._handleSelect})}_handleMainSeriesPriceScaleChanged(e){null!==this._priceScale&&this._priceScale.modeChanged().unsubscribe(this,this._handleModeChanged),this._priceScale=e,this._priceScale.modeChanged().subscribe(this,this._handleModeChanged),this._handleModeChanged({},e.mode())}_handleModeChanged(e,t){Boolean(t.log)!==this.state.isActive&&this.setState({isActive:Boolean(t.log)})}}).contextType=ye,Ue);var Fe,Ue;const Oe=function(e){var t;return(t=class extends a.PureComponent{constructor(e,t){super(e,t),this._priceScale=null,
this._handleSelect=()=>{const e=this.context.chartWidget.model(),t=(0,g.ensureNotNull)(this.state.series).priceScale(),n=t.mode();e.setPriceScaleMode({autoScale:!n.autoScale},t,Ee)},(0,f.validateRegistry)(t,{chartWidget:o.any.isRequired}),this.state={isActive:!1,series:null},this._priceAxisHighlighter=new _e(this.context.chartWidget,(()=>this._priceScale),"auto")}componentDidMount(){const e=this.context.chartWidget;e.withModel(null,(()=>{const t=e.model().mainSeries(),n=t.priceScale();this._handleMainSeriesPriceScaleChanged(n),t.priceScaleChanged().subscribe(this,this._handleMainSeriesPriceScaleChanged),this._handleModeChanged({},n.mode()),this.setState({isActive:t.priceScale().isAutoScale(),series:t})}))}componentWillUnmount(){const e=this.context.chartWidget;e.withModel(null,(()=>{e.model().mainSeries().priceScaleChanged().unsubscribe(this,this._handleMainSeriesPriceScaleChanged)})),null!==this._priceScale&&(this._priceScale.modeChanged().unsubscribeAll(this),this._priceScale=null),this._priceAxisHighlighter.destroy()}render(){const{className:t}=this.props,{isActive:n,series:s}=this.state;return a.createElement(e,{...this._priceAxisHighlighter.handlers(),className:t,isAuto:n,isDisabled:null===s,onClick:this._handleSelect})}_handleMainSeriesPriceScaleChanged(e){null!==this._priceScale&&this._priceScale.modeChanged().unsubscribe(this,this._handleModeChanged),this._priceScale=e,this._priceScale.modeChanged().subscribe(this,this._handleModeChanged),this._handleModeChanged({},e.mode())}_handleModeChanged(e,t){Boolean(t.autoScale)!==this.state.isActive&&this.setState({isActive:Boolean(t.autoScale)})}}).contextType=Ce,t}((e=>a.createElement(ve.ToolWidgetButton,{text:De.autoLabel,title:De.autoHint,className:e.className,isActive:e.isAuto,isGrouped:!0,onClick:Xe(e.onClick,"auto",e.isAuto),onMouseEnter:e.onMouseEnter,onMouseLeave:e.onMouseLeave,"data-name":"auto"}))),Ve=function(e){var t;return(t=class extends a.PureComponent{constructor(e,t){super(e,t),this._priceScale=null,this._handleSelect=()=>{const e=this.context.chartWidget.model(),t=(0,g.ensureNotNull)(this.state.series),n=t.priceScale(),a=n.mode();t.priceScale().isLockScale()||e.setPriceScaleMode({percentage:!a.percentage},n,ke)},(0,f.validateRegistry)(t,{chartWidget:o.any.isRequired}),this.state={isActive:!1,series:null},this._priceAxisHighlighter=new _e(this.context.chartWidget,(()=>this._priceScale),"percentage")}componentDidMount(){const e=this.context.chartWidget;e.withModel(null,(()=>{const t=e.model().mainSeries(),n=t.priceScale();this._handleMainSeriesPriceScaleChanged(n),t.priceScaleChanged().subscribe(this,this._handleMainSeriesPriceScaleChanged),this._handleScaleChange({},n.mode()),this.setState({isActive:t.priceScale().isPercentage(),series:t})}))}componentWillUnmount(){const e=this.context.chartWidget;e.withModel(null,(()=>{e.model().mainSeries().priceScaleChanged().unsubscribe(this,this._handleMainSeriesPriceScaleChanged)})),null!==this._priceScale&&(this._priceScale.modeChanged().unsubscribeAll(this),this._priceScale=null),
this._priceAxisHighlighter.destroy()}render(){const{className:t}=this.props,{isActive:n,series:s}=this.state;return a.createElement(e,{...this._priceAxisHighlighter.handlers(),className:t,isPercentage:n,isDisabled:null===s,onClick:this._handleSelect})}_handleMainSeriesPriceScaleChanged(e){null!==this._priceScale&&this._priceScale.modeChanged().unsubscribe(this,this._handleScaleChange),this._priceScale=e,this._priceScale.modeChanged().subscribe(this,this._handleScaleChange),this._handleScaleChange({},e.mode())}_handleScaleChange(e,t){Boolean(t.percentage)!==this.state.isActive&&this.setState({isActive:Boolean(t.percentage)})}}).contextType=xe,t}((e=>a.createElement(ve.ToolWidgetButton,{icon:Pe,title:De.percentageHint,className:e.className,isActive:e.isPercentage,isDisabled:e.isDisabled,isGrouped:!0,onClick:Xe(e.onClick,"percent",e.isPercentage),onMouseEnter:e.onMouseEnter,onMouseLeave:e.onMouseLeave,"data-name":"percentage"})));const qe=(0,Y.hotKeySerialize)({keys:[(0,G.humanReadableModifiers)(G.Modifiers.Alt,!1),"Enter"],text:"{0} + {1}"}),Ye=function(e){var t;return(t=class extends a.PureComponent{constructor(e,t){super(e,t),this._handleClick=e=>{const{resizerDetacher:t,chartWidgetCollection:n}=this.context;e.shiftKey&&t.detachable.value()?t.detach():this.state.isFullscreen?t.exitFullscreen():t.requestFullscreen()},this._handleLayoutChange=e=>{this.setState({isFullscreen:e})},this._handlePhoneSize=()=>{0},(0,f.validateRegistry)(t,{chartWidgetCollection:o.any.isRequired,resizerDetacher:o.any.isRequired});const{resizerDetacher:n}=t;this.state={isFullscreen:n.fullscreen.value(),isChangeLayoutButton:this._isChangeLayoutButton()}}componentDidMount(){const{resizerDetacher:e,chartWidgetCollection:t}=this.context,{mobileChangeLayoutEnabled:n}=this.props;e.fullscreen.subscribe(this._handleLayoutChange)}componentWillUnmount(){const{resizerDetacher:e,chartWidgetCollection:t}=this.context,{mobileChangeLayoutEnabled:n}=this.props;e.fullscreen.unsubscribe(this._handleLayoutChange)}render(){const{className:t}=this.props,{isFullscreen:n,isChangeLayoutButton:s}=this.state;return a.createElement(e,{className:t,isFullscreen:n,onClick:this._handleClick})}_isChangeLayoutButton(){return!1}}).contextType=Me,t}((e=>a.createElement(ve.ToolWidgetButton,{icon:Ie,title:De.fullscreenHint,className:e.className,isActive:e.isFullscreen,onClick:Xe(e.onClick,"maximize chart",e.isFullscreen),"data-tooltip-hotkey":qe,"data-name":"fullscreen"}))),Ge={properties:!0,fullscreen:!0,preventPhoneLayout:!0},Ze={fullscreen:Number.MIN_SAFE_INTEGER,preventPhoneLayout:Number.MIN_SAFE_INTEGER,properties:Number.MIN_SAFE_INTEGER,separator:-2,timeZones:-1,auto:0,logarithm:1,percentage:2,session:3,adj:4,backAdj:5,settlementAsClose:6},$e=(()=>{const e=new Map;return e.set(He,"logarithm"),e.set(Ve,"percentage"),e.set(Oe,"auto"),e.set(Ne,"session"),e.set(Ye,"fullscreen"),e})();function Je(e){0}function Xe(e,t,n){return t=>{e(t)}}const Ke={dateRangeMode:"hidden",separator:!0,timeZones:!0,fullscreen:!0,preventPhoneLayout:!0,properties:!0,auto:!0,logarithm:!0,percentage:!0,
session:!0,adj:!0,backAdj:!0,settlementAsClose:!0},Qe=(0,f.registryContextType)();class et extends a.PureComponent{constructor(e,t){var n,i;super(e,t),this._timezoneButtonRef=null,this._layout=Object.assign({},Ke),this._raf=null,this._toolbar=null,this._rangeExpanded=null,this._rangeCollapsed=null,this._seriesComponents={},this._resizeObserver=null,this._injector=(n=()=>this._layout,i=(e,t)=>this._seriesComponents[t]=e,(e,t,s)=>{if(a.isValidElement(e)&&"string"!=typeof e.type){const{props:o}=e;if("string"==typeof o.className){const l={className:r(o.className,0===t&&Be.first,t===s.length-1&&Be.last)},c=n(),d=(0,g.ensureDefined)($e.get(e.type));return a.createElement("div",{key:null===e.key?void 0:e.key,className:r(Be.inline,c[d]&&Be.collapsed),ref:e=>i(e,d),onClick:()=>Je()},a.cloneElement(e,l))}}return e}),this._updateButtonsVisibility=()=>{const{chartWidget:e}=this.context,t=e.model().model(),n=t.mainSeries(),a=n.symbolInfo(),s=!n.isDWMProperty().value();if(n.symbolResolvingActive().value())return void this._setStateWithResize({intervalAllowsSessionButton:s});const i=((null==a?void 0:a.subsessions)||[]).filter((e=>!e.private)).length>1;this._setStateWithResize({intervalAllowsSessionButton:s,symbolAllowsSessionButton:i})},this._handleResize=()=>{null===this._raf&&(this._raf=requestAnimationFrame((()=>{const e=this._layout,t=(0,g.ensureNotNull)(this._toolbar),n=(0,g.ensureNotNull)(this._rangeExpanded),a=(i=function(e){const t={};return Object.keys(e).forEach((n=>{const a=e[n];if(null!==a){const e=s.findDOMNode(a);null!==e&&(t[n]=e)}})),t}(this._seriesComponents),Object.keys(i).map((e=>({name:e,width:i[e].offsetWidth}))).sort(((e,t)=>Ze[e.name]-Ze[t.name])));var i;const o=t.offsetWidth,r=a.reduce(((e,t)=>e+t.width),0),l=n.offsetWidth,c=!Boolean(n.textContent)||o-r-l<=0?"collapsed":"expanded";if(Object.assign(e,{dateRangeMode:c}),"expanded"!==c){const t=o-(0,g.ensureNotNull)(this._rangeCollapsed).offsetWidth-0;let n=0,s=0;for(const i of a)n+=i.width,i.name in Ge?(s+=i.width,Object.assign(e,{[i.name]:!1})):Object.assign(e,{[i.name]:t<=n});t<=s&&Object.assign(e,{dateRangeMode:"hidden"})}else Object.assign(e,{separator:!1,timeZones:!1,fullscreen:!1,preventPhoneLayout:!1,properties:!1,auto:!1,logarithm:!1,percentage:!1,session:!1,adj:!1,settlementAsClose:!1,backAdj:!1});this._applyResizing(),this._raf=null})))},this._handleTimezoneButtonRef=e=>{this._timezoneButtonRef=e},this._handleMeasure=()=>{null!==this._toolbar&&this.resizeUI()},this._handleFullscreenableChange=e=>{this._setStateWithResize({isFullscreenable:e})},this._handlePreventPhoneLayoutButtonVisibility=()=>{0},this._handleToolbarRef=e=>this._toolbar=e,this._handleRangeCollapsedRef=e=>this._rangeCollapsed=e,this._handleRangeExpandedRef=e=>{this._updateResizeObserver(this._rangeExpanded,e),this._rangeExpanded=e},this._handleTimeZonesRef=e=>{this._updateResizeObserver(this._seriesComponents.timeZones,e),this._seriesComponents.timeZones=e},this._handleSessionsRef=e=>{this._updateResizeObserver(this._seriesComponents.session,e),this._seriesComponents.session=e},
this._handleSeparatorRef=e=>{this._seriesComponents.separator=e},this._updateResizeObserver=(e,t)=>{this._resizeObserver&&e!==t&&(e&&this._resizeObserver.unobserve(e),t&&this._resizeObserver.observe(t))},(0,f.validateRegistry)(t,{onContentBoxChanged:o.any.isRequired,chartApiInstance:o.any.isRequired,chartWidget:o.any.isRequired,chartWidgetCollection:o.any.isRequired,resizerDetacher:o.any.isRequired});const{resizerDetacher:l}=this.context;this.state={isFullscreenable:l.fullscreenable.value(),isPreventPhoneLayoutButton:this._isPreventPhoneLayoutButton()},this._resizeObserver=new ResizeObserver(this._handleMeasure)}componentDidMount(){const{onContentBoxChanged:e,resizerDetacher:t,chartWidgetCollection:n,chartWidget:a}=this.context;e.subscribe(this,this._handleResize),t.fullscreenable.subscribe(this._handleFullscreenableChange),a.withModel(null,(()=>{const e=a.model(),t=e.model();e.mainSeries().isDWMProperty().subscribe(this,this._updateButtonsVisibility),t.symbolSourceResolvingActive().subscribe(this._updateButtonsVisibility),t.symbolSourceCollectionChanged().subscribe(this,this._updateButtonsVisibility),this._updateButtonsVisibility()})),this.updateTimezonesButton(),this.resizeUI()}componentWillUnmount(){var e;const{onContentBoxChanged:t,resizerDetacher:n,chartWidgetCollection:a,chartWidget:s}=this.context;t.unsubscribe(this,this._handleResize),n.fullscreenable.unsubscribe(this._handleFullscreenableChange),null===(e=this._resizeObserver)||void 0===e||e.disconnect(),s.withModel(null,(()=>{const e=s.model(),t=e.model();e.mainSeries().isDWMProperty().unsubscribe(this,this._updateButtonsVisibility),e.mainSeries().isBackAdjustmentForbiddenProperty().unsubscribe(this,this._updateButtonsVisibility),e.mainSeries().isSettlementAsCloseForbiddenProperty().unsubscribe(this,this._updateButtonsVisibility),t.symbolSourceCollectionChanged().unsubscribe(this,this._updateButtonsVisibility),t.symbolSourceResolvingActive().unsubscribe(this._updateButtonsVisibility)})),null!==this._raf&&(cancelAnimationFrame(this._raf),this._raf=null)}render(){const e=this._layout,{timeFramesWidgetEnabled:t,timeWidgetEnabled:n,percentageScaleButtonEnabled:s,logScaleButtonEnabled:i,autoScaleButtonEnabled:o,fullscreenButtonEnabled:c}=this.props;return a.createElement("div",{className:Be.toolbar,ref:this._handleToolbarRef,onContextMenu:Te.preventDefault},t&&a.createElement(we.FragmentMap,null,a.createElement("div",{className:r(Be.dateRangeWrapper,"collapsed"!==e.dateRangeMode&&Be.collapsed),ref:this._handleRangeCollapsedRef},a.createElement("div",{className:r(Be.dateRangeCollapsed)},a.createElement(N,{goToDateButton:this.props.goToDateEnabled}))),a.createElement("div",{className:r(Be.dateRangeWrapper,"expanded"!==e.dateRangeMode&&Be.collapsed),ref:this._handleRangeExpandedRef},a.createElement("div",{className:r(Be.dateRangeExpanded)},a.createElement(V,{onSelectRange:this._trackRangeButtonClick}),this.props.goToDateEnabled&&a.createElement(ge,null),this.props.goToDateEnabled&&a.createElement(Q,null)))),a.createElement("div",{className:Be.seriesControlWrapper
},n&&a.createElement("div",{className:r(Be.inline,e.timeZones&&Be.collapsed),ref:this._handleTimeZonesRef},a.createElement("div",{className:Be.inline,onClick:this._trackTimezonesButtonClick},a.createElement(me,{className:Be.timezone,withMenu:this.props.timezoneMenuEnabled,ref:this._handleTimezoneButtonRef}))),this.props.sessionIdButtonEnabled&&this.state.symbolAllowsSessionButton&&this.state.intervalAllowsSessionButton&&a.createElement("div",{className:r(Be.inline,e.session&&Be.collapsed),ref:this._handleSessionsRef},a.createElement("div",{className:Be.inline},a.createElement(Ne,{className:Be.session,withMenu:this.props.sessionIdButtonEnabled}))),a.createElement("div",{ref:this._handleSeparatorRef,className:r(Be.inline,e.separator&&Be.collapsed)},a.createElement(ge,null)),a.createElement(we.FragmentMap,{map:this._injector},!1,!1,!1,s&&!l.enabled("fundamental_widget")&&a.createElement(Ve,{className:Be.icon}),i&&a.createElement(He,{className:Be.item}),o&&a.createElement(Oe,{className:Be.item}),c&&this.state.isFullscreenable&&a.createElement(Ye,{className:Be.icon,mobileChangeLayoutEnabled:this.props.mobileChangeLayoutEnabled}),!1)))}updateTimezonesButton(){null!==this._timezoneButtonRef&&this._timezoneButtonRef.updateTimezonesButton()}resizeUI(){this._handleResize()}_trackRangeButtonClick(e){0}_trackTimezonesButtonClick(){Je()}_setStateWithResize(e){Object.assign(this._layout,Ke),this._applyResizing(),this.setState(e,(()=>this._handleResize()))}_applyResizing(){const{dateRangeMode:e,...t}=this._layout;this._rangeExpanded&&this._rangeExpanded.classList.toggle(Be.collapsed,"expanded"!==e),this._rangeCollapsed&&this._rangeCollapsed.classList.toggle(Be.collapsed,"collapsed"!==e),Object.keys(t).forEach((e=>{const n=e,a=this._seriesComponents[n];a&&a.classList.toggle(Be.collapsed,t[n])}))}_isPreventPhoneLayoutButton(){return!1}}et.contextType=Qe;const tt={onContentBoxChanged:o.any,computeContentBox:o.any,chartWidget:o.any,chartApiInstance:o.any,chartWidgetCollection:o.any,resizerDetacher:o.any,availableTimeFrames:o.any};class nt extends a.PureComponent{constructor(e){super(e),this._setActiveChart=e=>{this._defineRegistry(e),this.setState({chartWidget:e})};const t=this.props.chartWidgetCollection.activeChartWidget.value();this.state={chartWidget:t},this._defineRegistry(t)}componentDidMount(){this.props.chartWidgetCollection.activeChartWidget.subscribe(this._setActiveChart)}componentWillUnmount(){this.props.chartWidgetCollection.activeChartWidget.unsubscribe(this._setActiveChart)}render(){const{chartWidget:e}=this.state;if(!e)return null;const{options:t}=this.props,n={timeFramesWidgetEnabled:t.timeFramesWidgetEnabled,goToDateEnabled:t.timeFramesWidget.goToDateEnabled,timeWidgetEnabled:t.timeWidgetEnabled,timezoneMenuEnabled:t.timeWidget&&t.timeWidget.timezoneMenuEnabled,sessionIdButtonEnabled:t.sessionIdButtonEnabled,backAdjustmentButtonEnabled:t.backAdjustmentButtonEnabled,settlementAsCloseButtonEnabled:t.settlementAsCloseButtonEnabled,adjustForDividendsButtonEnabled:t.adjustForDividendsButtonEnabled,
logScaleButtonEnabled:t.logScaleButtonEnabled,percentageScaleButtonEnabled:t.percentageScaleButtonEnabled,autoScaleButtonEnabled:t.autoScaleButtonEnabled,fullscreenButtonEnabled:t.fullscreenButtonEnabled,mobileChangeLayoutEnabled:t.mobileChangeLayoutEnabled};return a.createElement(f.RegistryProvider,{validation:tt,value:this._registry},a.createElement(et,{key:e.id(),...n}))}_defineRegistry(e){const{onContentBoxChanged:t,computeContentBox:n,chartApiInstance:a,chartWidgetCollection:s,options:{timeFramesWidgetEnabled:i,timeFramesWidget:o}}=this.props,r=i?o.availableTimeFrames:void 0;this._registry={onContentBoxChanged:t,computeContentBox:n,chartWidget:e,availableTimeFrames:r,chartApiInstance:a,chartWidgetCollection:s,resizerDetacher:e.getResizerDetacher()}}}class at{constructor(e,t,n,i,o,r,l){this._container=e;const c=a.createElement(nt,{onContentBoxChanged:t,computeContentBox:n,chartWidgetCollection:i,chartApiInstance:o,chartWidgetOptions:r,options:l});s.render(c,e),e.setAttribute("data-initialized","true")}destroy(){s.unmountComponentAtNode(this._container),this._container.removeAttribute("data-initialized")}}},10654:(e,t,n)=>{"use strict";n.d(t,{validateRegistry:()=>r,RegistryProvider:()=>l,registryContextType:()=>c});var a=n(50959),s=n(19036),i=n.n(s);const o=a.createContext({});function r(e,t){i().checkPropTypes(t,e,"context","RegistryContext")}function l(e){const{validation:t,value:n}=e;return r(n,t),a.createElement(o.Provider,{value:n},e.children)}function c(){return o}},79978:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18" fill="none"><path stroke="currentColor" d="M8 5l3.5 3.5L8 12"/></svg>'},83863:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18"><path fill="none" stroke="currentColor" d="M11 1.5h3.5a2 2 0 0 1 2 2V7m0 5v2.5a2 2 0 0 1-2 2H11m-4 0H3.5a2 2 0 0 1-2-2V11m0-4V3.5a2 2 0 0 1 2-2H7"/></svg>'},21868:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14"><g fill="none" stroke="currentColor"><circle cx="3.5" cy="3.5" r="2"/><circle cx="10.5" cy="10.5" r="2"/><path stroke-linecap="square" d="M9.5 1.5l-5 11"/></g></svg>'},39750:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28" width="28" height="28" fill="none"><path stroke="currentColor" stroke-linecap="round" stroke-width="1.5" d="M7 15l5 5L23 9"/></svg>'},69311:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18" fill="none"><path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M9.7 9l4.65-4.65-.7-.7L9 8.29 4.35 3.65l-.7.7L8.29 9l-4.64 4.65.7.7L9 9.71l4.65 4.64.7-.7L9.71 9z"/></svg>'},90752:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28" width="28" height="28" fill="none"><path stroke="currentColor" d="M5.5 13v-2.5m8.5 11h6.5a2 2 0 0 0 2-2v-9m-17 0v-2c0-1.1.9-2 2-2h13a2 2 0 0 1 2 2v2m-17 0h17"/><path fill="currentColor" d="M10 4h1v4h-1V4zM17 4h1v4h-1V4z"/><path stroke="currentColor" d="M4 18.5h7.5m0 0L8 22m3.5-3.5L8 15"/></svg>'},15270:e=>{
e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18" fill="none"><path stroke="currentColor" d="M1.5 8V6.5m7.5 9h5.5a2 2 0 0 0 2-2v-7m-15 0v-2c0-1.1.9-2 2-2h11a2 2 0 0 1 2 2v2m-15 0h15"/><path fill="currentColor" d="M5 1h1v3H5V1zM12 1h1v3h-1V1z"/><path stroke="currentColor" d="M0 12.5h7.5m0 0L4 16m3.5-3.5L4 9"/></svg>'},38219:e=>{e.exports={ar:["تعديل"],ca_ES:["aj"],cs:"adj",de:["Anp."],el:"adj",en:"adj",es:["aj"],fa:"adj",fr:"adj",he_IL:["התאם"],hu_HU:"adj",id_ID:["penyesuaian"],it:["adg"],ja:["調整"],ko:["조정"],ms_MY:["laras"],nl_NL:"adj",pl:"adj",pt:["ajustes"],ro:"adj",ru:["коррект."],sv:"adj",th:"adj",tr:["dzlt"],vi:["đ.chỉnh"],zh:["调整"],zh_TW:["調整"]}},53457:e=>{e.exports={ar:"b-adj",ca_ES:"b-adj",cs:"b-adj",de:"b-adj",el:"b-adj",en:"b-adj",es:"b-adj",fa:"b-adj",fr:"b-adj",he_IL:"b-adj",hu_HU:"b-adj",id_ID:"b-adj",it:["b-adg"],ja:"b-adj",ko:"b-adj",ms_MY:"b-adj",nl_NL:"b-adj",pl:"b-adj",pt:"b-adj",ro:"b-adj",ru:["корр"],sv:"b-adj",th:"b-adj",tr:"b-adj",vi:"b-adj",zh:["b-调整"],zh_TW:["b-調整"]}},17077:e=>{e.exports={ar:["ضبط"],ca_ES:"set",cs:"set",de:["setzen"],el:"set",en:"set",es:"set",fa:"set",fr:["fixer"],he_IL:["הגדר"],hu_HU:"set",id_ID:["SET"],it:"set",ja:"set",ko:["셋"],ms_MY:"set",nl_NL:"set",pl:["ustaw"],pt:["definir"],ro:"set",ru:["расч.цена"],sv:["ställ in"],th:"set",tr:"set",vi:"set",zh:["清算价"],zh_TW:["清算價"]}},99247:e=>{e.exports={ar:["تلقائي"],ca_ES:"auto",cs:["automatické"],de:"auto",el:["αυτοματο"],en:"auto",es:"auto",fa:["خودکار"],fr:["automatique"],he_IL:["אוטומטי"],hu_HU:"auto",id_ID:"auto",it:"auto",ja:["自動"],ko:["자동"],ms_MY:"auto",nl_NL:"auto",pl:"auto",pt:"auto",ro:"auto",ru:["авто"],sv:"auto",th:["อัตโนมัติ"],tr:["otomatik"],vi:["tự động"],zh:["自动"],zh_TW:["自動"]}},885:e=>{e.exports={ar:["لوغاريتمي"],ca_ES:"log",cs:"log",de:"log",el:"log",en:"log",es:"log",fa:"log",fr:"log",he_IL:["לוג"],hu_HU:"log",id_ID:"log",it:"log",ja:["ログスケール"],ko:["로그"],ms_MY:"log",nl_NL:"log",pl:"log",pt:"log",ro:"log",ru:["лог"],sv:["logg"],th:["ล็อก"],tr:"log",vi:"log",zh:"log",zh_TW:"log"}},9994:e=>{e.exports={ar:["تعديل البيانات لأرباح الأسهم"],ca_ES:["Ajusta dades dels dividends"],cs:"Adjust data for dividends",de:["Daten für Dividenden anpassen"],el:"Adjust data for dividends",en:"Adjust data for dividends",es:["Ajustar datos de los dividendos"],fa:"Adjust data for dividends",fr:["Ajuster les données pour les dividendes"],he_IL:["התאם נתונים לדיבידנדים"],hu_HU:"Adjust data for dividends",id_ID:["Sesuaikan data untuk dividen"],it:["Adegua i dati a seconda dei dividendi"],ja:["配当でデータを調整"],ko:["배당에 따른 데이터 조정"],ms_MY:["Laras data untuk dividen"],nl_NL:"Adjust data for dividends",pl:["Dopasuj dane według dywidend"],pt:["Ajustar dados de dividendos"],ro:"Adjust data for dividends",ru:["Корректировать данные на дивиденды"],sv:["Justera data för utdelning"],th:["ปรับเปลี่ยนข้อมูลเนื่องจากเงินปันผล"],tr:["Verileri temettülere göre düzelt"],vi:["Điều chỉnh dữ liệu cho Cổ tức"],zh:["调整股息数据"],zh_TW:["調整股息數據"]}},10989:e=>{e.exports={ar:["ضبط لتغييرات العقود"],
ca_ES:["Ajusta els canvis dels contractes"],cs:"Adjust for contract changes",de:["Veränderungen der Kontraktgrößen und Verfalltage"],el:"Adjust for contract changes",en:"Adjust for contract changes",es:["Ajustar los cambios de los contratos"],fa:"Adjust for contract changes",fr:["Ajustement pour les changements de contrat"],he_IL:["התאם לשינויים בחוזה"],hu_HU:"Adjust for contract changes",id_ID:["Penyesuaian untuk perubahan kontrak"],it:["Incorpora variazioni dovute al cambio di contratto"],ja:["限月の切り替えを調整"],ko:["컨트랙트 변경 조절"],ms_MY:["Laraskan untuk perubahan-perubahan kontrak"],nl_NL:"Adjust for contract changes",pl:["Dostosuj do zmian w kontrakcie"],pt:["Ajustes para mudanças no contrato"],ro:"Adjust for contract changes",ru:["Корректировать с учётом изменений контрактов"],sv:["Förändringar i avtalens storlek och datum för upphörande"],th:["ปรับตามการเปลี่ยนแปลงสัญญา"],tr:["Sözleşme değişiklikleri için ayarlama"],vi:["Điều chỉnh để thay đổi hợp đồng"],zh:["根据合约变更调整"],zh_TW:["調整合約變更"]}},369:e=>{e.exports={ar:["الذهاب إلى"],ca_ES:["Anar a"],cs:"Go to",de:["Gehe zu"],el:"Go to",en:"Go to",es:["Ir a"],fa:["برو به"],fr:["Aller à"],he_IL:["עבור ל"],hu_HU:["Ugrás ide:"],id_ID:["Menuju ke"],it:["Vai a"],ja:["移動"],ko:["가기"],ms_MY:["Pergi ke"],nl_NL:"Go to",pl:["Idź do..."],pt:["Ir para"],ro:"Go to",ru:["Перейти к дате"],sv:["Hoppa till"],th:["ไปที่"],tr:["Tarihe git"],vi:["Đến"],zh:["前往到"],zh_TW:["前往到"]}},41421:e=>{e.exports={ar:["ساعات التداول المُمددة متاحة فقط على النطاقات الصغرى خلال اليوم للرسوم البيانية"],ca_ES:["L'horari ampliat només està disponible per a gràfics intradia"],cs:"Extended Hours is available only for intraday charts",de:["Verlängerte Handelszeiten sind nur für Intraday-Charts verfügbar"],el:"Extended Hours is available only for intraday charts",en:"Extended Hours is available only for intraday charts",es:["El horario ampliado solo se encuentra disponible para gráficos intradía"],fa:"Extended Hours is available only for intraday charts",fr:["L'option Horaires étendus est disponible uniquement pour les graphiques intrajournaliers"],he_IL:["שעות מורחבות זמינות רק עבור גרפים תוך-יומיים"],hu_HU:"Extended Hours is available only for intraday charts",id_ID:["Jam Perpanjangan hanya tersedia bagi chart intrahari"],it:["Gli orari di negoziazione estesi sono disponibili solo per i grafici intraday"],ja:["時間外取引の機能は、イントラデイのチャートでのみ利用できます"],ko:["확장시간은 인트라데이 차트에서만 가능합니다"],ms_MY:["Waktu Dilanjutkan hanya tersedia untuk carta intra hari"],nl_NL:"Extended Hours is available only for intraday charts",pl:["Sesja rozszerzona dostępna jest wyłącznie dla wykresów intraday"],pt:["O Horário Estendido está disponível apenas para gráficos intradiário"],ro:"Extended Hours is available only for intraday charts",ru:["Функция расширенных торговых часов доступна только для внутридневных графиков"],sv:["Utökade timmar är endast tillgänglig för intradagsdiagram"],th:["ชั่วโมงที่เพิ่มเติมขึ้นมาใช้ได้สำหรับกราฟแบบระหว่างวันเท่านั้น"],tr:["Uzatılmış saatler sadece gün içi grafiklerde kullanılabilir"],
vi:["Tính năng Thời gian Giao dịch Ngoài giờ chỉ có sẵn cho các biểu đồ trong ngày"],zh:["延长时段仅适用于日内图表"],zh_TW:["延長時段僅適用於日內圖表"]}},1217:e=>{e.exports={ar:["يتم ضبط بيانات الرمز الرئيسي لتوزيعات الأرباح فقط"],ca_ES:["Les dades del símbol principal s'ajusten només als dividends"],cs:"Main symbol data is adjusted for dividends only",de:["Die Daten des Hauptsymbols sind nur für die Dividenden angepasst"],el:"Main symbol data is adjusted for dividends only",en:"Main symbol data is adjusted for dividends only",es:["Los datos del símbolo principal se ajustan solo a los dividendos"],fa:"Main symbol data is adjusted for dividends only",fr:["Les données du symbole principal sont ajustées pour les dividendes uniquement"],he_IL:["הנתונים של הסימול הראשי מותאמים לדיבידנדים בלבד"],hu_HU:"Main symbol data is adjusted for dividends only",id_ID:["Data simbol utama disesuaikan hanya untuk deviden"],it:["I dati del simbolo principale sono adeguati solo per lo stacco dei dividendi"],ja:["メインシンボルのデータは配当のみで調整されています。"],ko:["메인 심볼 데이터는 디비든드에 대해서만 조정됩니다"],ms_MY:["Data utama simbol adalah diselaraskan untuk dividend sahaja"],nl_NL:"Main symbol data is adjusted for dividends only",pl:["Dane głównego symbolu są dostosowywane tylko do dywidend"],pt:["Os dados do símbolo principal são ajustados apenas para dividendos"],ro:"Main symbol data is adjusted for dividends only",ru:["Данные по основному инструменту корректируются только для дивидендов"],sv:["Uppgifterna om huvudsymbolen justeras endast för utdelningar."],th:["ข้อมูลสัญลักษณ์หลักถูกปรับเป็นเงินปันผลเท่านั้น"],tr:["Ana sembol verileri yalnızca temettüler için ayarlanır"],vi:["Dữ liệu của mã chính chỉ được điều chỉnh cho cổ tức"],zh:["主要商品数据仅针对股息进行调整"],zh_TW:["主要商品數據僅針對股息進行調整"]}},18540:e=>{e.exports={ar:["يتم ضبط بيانات الرمز الرئيسي للتقسيمات فقط"],ca_ES:["Les dades del símbol principal s'ajusten només als splits"],cs:"Main symbol data is adjusted for splits only",de:["Die Daten des Hauptsymbols werden nur für Splits angepasst"],el:"Main symbol data is adjusted for splits only",en:"Main symbol data is adjusted for splits only",es:["Los datos del símbolo principal se ajustan solo a los splits"],fa:"Main symbol data is adjusted for splits only",fr:["Les données du symbole principal sont ajustées pour les fractions uniquement"],he_IL:["הנתונים של הסימול הראשי מותאמים לספליטים בלבד"],hu_HU:"Main symbol data is adjusted for splits only",id_ID:["Data simbol utama disesuaikan hanya untuk pecahan."],it:["I dati del simbolo principale sono adeguati solo per i frazionamenti"],ja:["メインシンボルのデータは株式分割でのみ調整されています。"],ko:["메인 심볼 데이터는 스플릿에 대해서만 조정됩니다"],ms_MY:["Data utama simbol adalah diselaraskan untuk pembahagian sahaja"],nl_NL:"Main symbol data is adjusted for splits only",pl:["Dane głównego symbolu są dostosowywane tylko do podziałów"],pt:["Os dados do símbolo principal são ajustados apenas para desdobramentos"],ro:"Main symbol data is adjusted for splits only",ru:["Данные по основному инструменту корректируются только для сплитов"],sv:["Uppgifter om huvudsymbolen justeras endast för splits."],
th:["ข้อมูลสัญลักษณ์หลักถูกปรับสำหรับการแยกเท่านั้น"],tr:["Ana sembol verileri yalnızca bölmeler için ayarlanır"],vi:["Dữ liệu của mã chính chỉ được điều chỉnh để tách"],zh:["主要商品数据仅针对拆分进行调整"],zh_TW:["主要商品數據僅針對拆分進行調整"]}},44794:e=>{e.exports={ar:["الجلسات"],ca_ES:"Sessions",cs:"Sessions",de:"Sessions",el:"Sessions",en:"Sessions",es:["Sesiones"],fa:"Sessions",fr:"Sessions",he_IL:["סשנים"],hu_HU:"Sessions",id_ID:["Sesi"],it:["Sessioni"],ja:["セッション"],ko:["세션"],ms_MY:["Sesi-sesi"],nl_NL:"Sessions",pl:["Sesje"],pt:["Sessões"],ro:"Sessions",ru:["Сессии"],sv:["Sessioner"],th:["เซสชั่น"],tr:["Oturum"],vi:["Phiên"],zh:["交易时段"],zh_TW:["交易時段"]}},98948:e=>{e.exports={ar:["تبديل تكبير الرسم البياني"],ca_ES:["Alterna maximitzar gràfic"],cs:"Toggle Maximize Chart",de:["Auf maximierten Chart umschalten"],el:"Toggle Maximize Chart",en:"Toggle Maximize Chart",es:["Alternar maximizar gráfico"],fa:"Toggle Maximize Chart",fr:["Agrandir le graphique"],he_IL:["החלף לגרף מקסימלי"],hu_HU:["Maximális Chat Kiterjesztése"],id_ID:["Toggle Memperbesar Chart"],it:["Espandi/riduci grafico"],ja:["チャート最大化切り替え"],ko:["차트최대화토글"],ms_MY:["Carta Memaksimumkan Togol"],nl_NL:"Toggle Maximize Chart",pl:["Maksymalizuj wykres"],pt:["Alternar para gráfico maximizado"],ro:"Toggle Maximize Chart",ru:["Развернуть/свернуть график"],sv:["Slå på/av maximering av diagram"],th:["สลับเป็นชาร์ตขนาดใหญ่ที่สุด"],tr:["Grafik Maksimize Değiştir"],vi:["Chuyển đổi Tối đa hoá Biểu đồ"],zh:["切换为最大化图表"],zh_TW:["切換最大化圖表"]}},60879:e=>{e.exports={ar:["نطاق قياس تلقائي"],ca_ES:["Alterna l'escala automàtica"],cs:["Přepnout na Auto Stupnici"],de:["Auf automatische Skalierung umschalten"],el:["Αυτόματη κλίμακα"],en:"Toggle Auto Scale",es:["Alternar escala automática"],fa:"Toggle Auto Scale",fr:["Mise à l'échelle automatique"],he_IL:["הפעל/כבה קנה מידה אוטומטיות"],hu_HU:["Váltás Automata Méretezés"],id_ID:["Toggle Skala Otomatis"],it:["Seleziona/deseleziona scala automatica"],ja:["自動スケール切り替え"],ko:["자동눈금토글"],ms_MY:["Skala Auto Togol"],nl_NL:["Schakel autoschaal"],pl:["Włącz skalę automatyczną"],pt:["Alternar Para Escala Automática"],ro:"Toggle Auto Scale",ru:["Автоматический масштаб вкл/выкл"],sv:["Växla skala automatiskt"],th:["สลับเป็นสเกลอัตโนมัติ"],tr:["Otomatik Ölçeklendirmeyi Aç/Kapat"],vi:["Chuyển đổi Tỷ lệ tự động"],zh:["切换为自动坐标"],zh_TW:["切換為自動刻度"]}},21329:e=>{e.exports={ar:["نطاق قياس لوغاريتمي"],ca_ES:["Alterna l'escala logarítmica"],cs:["Přepnout Log Měřítko"],de:["Auf logarithmische Skalierung umschalten"],el:["Λογαριθμική κλίμακα"],en:"Toggle Log Scale",es:["Alternar escala logarítmica"],fa:"Toggle Log Scale",fr:["Mise à l'échelle logarithmique"],he_IL:["הפעל/כבה סקאלה לוגריתמית"],hu_HU:["Váltás Log Skála"],id_ID:["Toggle Skala Log"],it:["Seleziona/Deseleziona scala logaritmica"],ja:["ログスケール切り替え"],ko:["로그눈금토글"],ms_MY:["Skala Log Togol"],nl_NL:["Schakel log schaal"],pl:["Przełącz na skalę logarytmiczną"],pt:["Alternar Para Escala Logarítmica"],ro:"Toggle Log Scale",ru:["Логарифмическая шкала вкл/выкл"],sv:["Slå på/av Log-skala"],th:["สลับเป็นมาตราแบบล๊อก"],
tr:["Logaritmik Ölçeklendirmeyi Aç/Kapat"],vi:["Chuyển đổi Quy mô Đăng nhập"],zh:["切换为对数坐标"],zh_TW:["切換為對數刻度"]}},43737:e=>{e.exports={ar:["نطاق قياس النسبة المئوية"],ca_ES:["Altarna percentatge"],cs:["Přepnout na Procenta"],de:["Auf Prozent umschalten"],el:["Ποσοστιαία κλίμακα"],en:"Toggle Percentage",es:["Alternar porcentaje"],fa:"Toggle Percentage",fr:["Echelle en pourcentage"],he_IL:["החלף אחוזים"],hu_HU:["Váltás Százalék"],id_ID:["Toggle Persentase"],it:["Seleziona/Deseleziona percentuale"],ja:["%スケール切り替え"],ko:["백분율토글"],ms_MY:["Peratusan Togol"],nl_NL:["Schakel percentage"],pl:["Włącz skalę procentową"],pt:["Alternar Para Percentagem"],ro:"Toggle Percentage",ru:["Процентная шкала вкл/выкл"],sv:["Slå på/av procentsats"],th:["สลับเป็นเปอร์เซ็นต์"],tr:["Yüzde Olarak Değiştir"],vi:["Chuyển đồi Phần trăm"],zh:["切换为百分比坐标"],zh_TW:["切換為百分比"]}},87492:e=>{e.exports={ar:["توقيت"],ca_ES:["Zona horària"],cs:["Časové pásmo"],de:["Zeitzone"],el:"Timezone",en:"Timezone",es:["Zona horaria"],fa:"Timezone",fr:["Fuseau horaire"],he_IL:["אזור זמן"],hu_HU:["Időzóna"],id_ID:["Zona waktu"],it:["Fuso orario"],ja:["タイムゾーン"],ko:["타임존"],ms_MY:["Zon Waktu"],nl_NL:"Timezone",pl:["Strefa czasowa"],pt:["Fuso Horário"],ro:"Timezone",ru:["Часовой пояс"],sv:["Tidszon"],th:["เขตเวลา"],tr:["Saat Dilimi"],vi:["Múi giờ"],zh:["时区"],zh_TW:["時區"]}},23500:e=>{e.exports={ar:["استخدم التسوية في أقرب وقت على الفاصل الزمني اليومي"],ca_ES:["Fer servir la liquidació com a tancament en intervals diaris"],cs:"Use settlement as close on daily interval",de:["Settlement als Schlusskurs im Tagesintervall verwenden"],el:"Use settlement as close on daily interval",en:"Use settlement as close on daily interval",es:["Utilizar la liquidación como cierre en intervalos diarios"],fa:"Use settlement as close on daily interval",fr:["Utiliser le règlement comme proche de l'intervalle quotidien"],he_IL:["השתמש בסליקה כסגירה באינטרוול יומי"],hu_HU:"Use settlement as close on daily interval",id_ID:["Gunakan penyelesaian sedekat mungkin pada interval harian"],it:["Usa il settlement come chiusura nel giornaliero"],ja:["日足で清算価格を終値として利用"],ko:["데일리 클로즈를 청산가로 쓰기"],ms_MY:["Gunakan penyelesaian sebagai penutup pada selang masa harian"],nl_NL:"Use settlement as close on daily interval",pl:["Użyj ceny rozliczenia jako dziennej ceny zamknięcia"],pt:["Usar a liquidação como fechamento no intervalo diário"],ro:"Use settlement as close on daily interval",ru:["Использовать расчетную цену для цены закрытия на дневном интервале"],sv:["Använd avräkning så nära daglig intervallängd"],th:["ใช้การชำระราคาที่ใกล้เคียงกันในแต่ละวัน"],tr:["Ödemeyi günlük aralıklarla yakın olarak kullanma"],vi:["Sử dụng giải quyết càng gần vào khoảng thời gian hàng ngày"],zh:["使用结算价作为每日周期的收盘价"],zh_TW:["使用結算價做為日圖的收盤價"]}},8877:e=>{e.exports={ar:"ext",ca_ES:"ext",cs:"ext",de:["verl."],el:"ext",en:"ext",es:"ext",fa:"ext",fr:"ext",he_IL:["הרחב"],hu_HU:"ext",id_ID:["perp"],it:["est"],ja:["時間外"],ko:["확장"],ms_MY:["dilanjutkan"],nl_NL:"ext",pl:["rozsz"],pt:["est"],ro:"ext",ru:["расш"],sv:["utökad"],th:["ต่อ"],tr:["ek"],
vi:["mở rộng"],zh:["延时"],zh_TW:["延時"]}}}]);