54 lines
159 KiB
JavaScript
54 lines
159 KiB
JavaScript
(self.webpackChunktradingview=self.webpackChunktradingview||[]).push([[5588],{14487:(e,t)=>{var i;!function(){"use strict";var s={}.hasOwnProperty;function l(){for(var e=[],t=0;t<arguments.length;t++){var i=arguments[t];if(i){var o=typeof i;if("string"===o||"number"===o)e.push(i);else if(Array.isArray(i)&&i.length){var a=l.apply(null,i);a&&e.push(a)}else if("object"===o)for(var n in i)s.call(i,n)&&i[n]&&e.push(n)}}return e.join(" ")}e.exports?(l.default=l,e.exports=l):void 0===(i=function(){return l}.apply(t,[]))||(e.exports=i)}()},75332:e=>{e.exports={loader:"loader-UL6iwcBa",static:"static-UL6iwcBa",item:"item-UL6iwcBa","tv-button-loader":"tv-button-loader-UL6iwcBa",medium:"medium-UL6iwcBa",small:"small-UL6iwcBa",black:"black-UL6iwcBa",white:"white-UL6iwcBa",gray:"gray-UL6iwcBa",primary:"primary-UL6iwcBa"}},90741:(e,t,i)=>{"use strict";var s,l,o,a;!function(e){e.Primary="primary",e.QuietPrimary="quiet-primary",e.Secondary="secondary",e.Ghost="ghost"}(s||(s={})),function(e){e.XXSmall="xxsmall",e.XSmall="xsmall",e.Small="small",e.Medium="medium",e.Large="large",e.XLarge="xlarge",e.XXLarge="xxlarge"}(l||(l={})),function(e){e.Brand="brand",e.Blue="blue",e.Gray="gray",e.LightGray="light-gray",e.Green="green",e.Red="red",e.Black="black",e.Gradient="gradient",e.BlackFriday="black-friday",e.CyberMonday="cyber-monday",e.Coupon="coupon",e.Offer="offer",e.Space="space"}(o||(o={})),function(e){e.Semibold18px="semibold18px",e.Semibold16px="semibold16px",e.Semibold14px="semibold14px",e.Medium16px="medium16px",e.Regular16px="regular16px",e.Regular14px="regular14px",e.Regular12px="regular12px"}(a||(a={}))},61597:(e,t,i)=>{"use strict";i.d(t,{Loader:()=>d});var s,l=i(79474),o=i(14487),a=i.n(o),n=i(75332),r=i.n(n);function d(e){const{className:t,size:i="medium",staticPosition:s,color:o="black"}=e,n=a()(r().item,r()[o],r()[i]);return l.createElement("span",{className:a()(r().loader,s&&r().static,t)},l.createElement("span",{className:n}),l.createElement("span",{className:n}),l.createElement("span",{className:n}))}!function(e){e.Medium="medium",e.Small="small"}(s||(s={}))},16455:(e,t,i)=>{"use strict";function s(e){return t=>{e.forEach((e=>{"function"==typeof e?e(t):null!=e&&(e.current=t)}))}}function l(e){return s([e])}i.d(t,{isomorphicRef:()=>l,mergeRefs:()=>s})},6616:(e,t,i)=>{"use strict";function s(e){return null!=e}i.d(t,{isExistent:()=>s})},96199:(e,t,i)=>{"use strict";i.d(t,{safeShortName:()=>l});var s=i(59134);function l(e){try{return(0,s.shortName)(e)}catch(t){return e}}},36334:(e,t,i)=>{"use strict";var s=i(29365);t.createRoot=s.createRoot,s.hydrateRoot},88513:e=>{e.exports={}},95875:e=>{e.exports={marginlegendhoriz:"4px",legend:"legend-l31H9iuA",legend_withHiddenActions:"legend_withHiddenActions-l31H9iuA",item:"item-l31H9iuA",hideInvisibleHover:"hideInvisibleHover-l31H9iuA",button:"button-l31H9iuA",buttons:"buttons-l31H9iuA",withAction:"withAction-l31H9iuA",selected:"selected-l31H9iuA",last:"last-l31H9iuA",statusesWrapper:"statusesWrapper-l31H9iuA",statusesWrapper__statuses:"statusesWrapper__statuses-l31H9iuA",
|
|
text:"text-l31H9iuA",noWrapWrapper:"noWrapWrapper-l31H9iuA",noWrap:"noWrap-l31H9iuA",series:"series-l31H9iuA",valuesAdditionalWrapper:"valuesAdditionalWrapper-l31H9iuA",valueItem:"valueItem-l31H9iuA",valueTitle:"valueTitle-l31H9iuA",valueValue:"valueValue-l31H9iuA",hideUniportantValueItems:"hideUniportantValueItems-l31H9iuA",unimportant:"unimportant-l31H9iuA",valuesWrapper:"valuesWrapper-l31H9iuA",wrappable:"wrappable-l31H9iuA",directionColumn:"directionColumn-l31H9iuA",titlesWrapper:"titlesWrapper-l31H9iuA",logoWrapper:"logoWrapper-l31H9iuA",buttonsWrapper:"buttonsWrapper-l31H9iuA",pairContainer:"pairContainer-l31H9iuA",logo:"logo-l31H9iuA",hidden:"hidden-l31H9iuA",noActions:"noActions-l31H9iuA",titlesGroupWrapper:"titlesGroupWrapper-l31H9iuA",titleWrapper:"titleWrapper-l31H9iuA",title:"title-l31H9iuA",withDot:"withDot-l31H9iuA",titleWrapper__active:"titleWrapper__active-l31H9iuA",accessible:"accessible-l31H9iuA",disabled:"disabled-l31H9iuA",disabledOnInterval:"disabledOnInterval-l31H9iuA",withCustomTextColor:"withCustomTextColor-l31H9iuA",study:"study-l31H9iuA",mainTitle:"mainTitle-l31H9iuA",inputTitle:"inputTitle-l31H9iuA",hideValues:"hideValues-l31H9iuA",has5Buttons:"has5Buttons-l31H9iuA",stayInHoveredMode:"stayInHoveredMode-l31H9iuA",withTail:"withTail-l31H9iuA",loader:"loader-l31H9iuA",descTitle:"descTitle-l31H9iuA",intervalTitle:"intervalTitle-l31H9iuA",providerTitle:"providerTitle-l31H9iuA",exchangeTitle:"exchangeTitle-l31H9iuA",styleTitle:"styleTitle-l31H9iuA",priceSourceTitle:"priceSourceTitle-l31H9iuA",flagged:"flagged-l31H9iuA",medium:"medium-l31H9iuA",minimized:"minimized-l31H9iuA",micro:"micro-l31H9iuA",linked:"linked-l31H9iuA",onlyOneButtonCanBeStick:"onlyOneButtonCanBeStick-l31H9iuA",touchMode:"touchMode-l31H9iuA",buttonIcon:"buttonIcon-l31H9iuA",button__active:"button__active-l31H9iuA",flag:"flag-l31H9iuA",eye:"eye-l31H9iuA",eyeLoading:"eyeLoading-l31H9iuA","eye-animation":"eye-animation-l31H9iuA",linking:"linking-l31H9iuA",intervalEye:"intervalEye-l31H9iuA",markerContainer:"markerContainer-l31H9iuA",flagWrapper:"flagWrapper-l31H9iuA",sourcesWrapper:"sourcesWrapper-l31H9iuA",legendMainSourceWrapper:"legendMainSourceWrapper-l31H9iuA",sources:"sources-l31H9iuA",togglerWrapper:"togglerWrapper-l31H9iuA",toggler:"toggler-l31H9iuA pane-button-e6PF69Df",onlyOneSourceShown:"onlyOneSourceShown-l31H9iuA",counter:"counter-l31H9iuA",iconArrow:"iconArrow-l31H9iuA",objectTree:"objectTree-l31H9iuA",closed:"closed-l31H9iuA",saveArrowWidth:"saveArrowWidth-l31H9iuA",objectsTreeCanBeShown:"objectsTreeCanBeShown-l31H9iuA"}},91101:e=>{e.exports={"css-value-pane-controls-padding":"4px",css_value_pane_controls_margin_top:"4",css_value_pane_controls_button_size:"22",css_value_pane_controls_button_touch_size:"22",paneControls:"paneControls-JQv8nO8e",paneControls_hidden:"paneControls_hidden-JQv8nO8e",paneControls_forceHidden:"paneControls_forceHidden-JQv8nO8e",paneControls_remove:"paneControls_remove-JQv8nO8e",buttons:"buttons-JQv8nO8e",button:"button-JQv8nO8e",button_activated:"button_activated-JQv8nO8e",
|
|
touchMode:"touchMode-JQv8nO8e",maximize:"maximize-JQv8nO8e",collapse:"collapse-JQv8nO8e","maximize-animation-up-bracket":"maximize-animation-up-bracket-JQv8nO8e","maximize-animation-down-bracket":"maximize-animation-down-bracket-JQv8nO8e",minimize:"minimize-JQv8nO8e",restore:"restore-JQv8nO8e","minimize-animation-up-bracket":"minimize-animation-up-bracket-JQv8nO8e","minimize-animation-down-bracket":"minimize-animation-down-bracket-JQv8nO8e",up:"up-JQv8nO8e",buttonIcon:"buttonIcon-JQv8nO8e","up-animation":"up-animation-JQv8nO8e",down:"down-JQv8nO8e","down-animation":"down-animation-JQv8nO8e"}},65365:e=>{e.exports={blockHidden:"blockHidden-e6PF69Df","pane-button":"pane-button-e6PF69Df"}},87918:(e,t,i)=>{"use strict";var s;function l(e){e.dispatchEvent(new CustomEvent("roving-tabindex:main-element"))}function o(e){e.dispatchEvent(new CustomEvent("roving-tabindex:secondary-element"))}i.d(t,{becomeMainElement:()=>l,becomeSecondaryElement:()=>o}),function(e){e.MainElement="roving-tabindex:main-element",e.SecondaryElement="roving-tabindex:secondary-element"}(s||(s={}))},33742:(e,t,i)=>{"use strict";i.r(t),i.d(t,{ControlBarNavigation:()=>X});var s=i(85842),l=i(91599),o=i(72445),a=i(16905),n=i(68657),r=i(61626),d=i(81458),h=i(87099),u=i(11624),c=i(70327),_=i(45958),p=i(23351),g=i(37032),b=(i(64906),i(89139)),m=i(76906),v=i(43477),w=i(60669),S=i(30381),y=i(999),E=i(68954),f=i(91209),C=i(35550),V=i(43185);i(88513);const M=(0,p.humanReadableModifiers)(p.Modifiers.Alt,!1),L=(0,p.humanReadableModifiers)(p.Modifiers.Shift,!1),W=(0,p.humanReadableModifiers)(p.Modifiers.Mod,!1),A=(0,c.hotKeySerialize)({keys:[M,"R"],text:"{0} + {1}"}),H=(0,c.hotKeySerialize)({keys:[M,"Click",M,"Enter"],text:"{0} + {1}, {2} + {3}"}),x=(0,c.hotKeySerialize)({keys:[E],text:"{0}"}),T=(0,c.hotKeySerialize)({keys:[f],text:"{0}"}),B=(0,c.hotKeySerialize)({keys:[W,C],text:"{0} + {1}"}),k=(0,c.hotKeySerialize)({keys:[W,V],text:"{0} + {1}"}),D=(0,c.hotKeySerialize)({keys:[M,L,f],text:"{0} + {1} + {2}"}),I=l.t(null,void 0,i(14534)),P=l.t(null,void 0,i(87874)),R=l.t(null,void 0,i(51332)),N=l.t(null,void 0,i(71809)),O=l.t(null,void 0,i(41722)),z=l.t(null,void 0,i(8233)),F=l.t(null,void 0,i(7845)),U=l.t(null,void 0,i(60810));var Z,j;!function(e){e[e.BarVisibleDistance=100]="BarVisibleDistance",e[e.BackButtonRightMargin=14]="BackButtonRightMargin",e[e.SingleButtonWidth=36]="SingleButtonWidth",e[e.GroupMargins=14]="GroupMargins",e[e.GoToRealtimeButtonWidth=50]="GoToRealtimeButtonWidth",e[e.LeftMargin=50]="LeftMargin",e[e.TimeAxisMainPaneMargin=27]="TimeAxisMainPaneMargin",e[e.PaneControlsHeight=28]="PaneControlsHeight"}(Z||(Z={})),function(e){e.ScrollLeftRight="js-btn-group-scroll",e.ZoomInZoomOut="js-btn-group-zoom",e.Maximize="js-btn-group-maximize",e.ResetScale="js-btn-group-reset-scale"}(j||(j={}))
|
|
;const Q=`<div class="control-bar-wrapper">\n\t<div class="control-bar control-bar--hidden">\n\t\t<div class="control-bar__group js-btn-group js-btn-group-zoom">\n\t\t\t<div class="control-bar__btn control-bar__btn--zoom-out apply-common-tooltip" title="${I}" data-tooltip-hotkey="${k}">\n\t\t\t\t${b}\n\t\t\t</div>\n\t\t\t<div class="control-bar__btn control-bar__btn--zoom-in apply-common-tooltip" title="${P}" data-tooltip-hotkey="${B}">\n\t\t\t\t${v}\n\t\t\t</div>\n\t\t</div>\n\t\t<div class="control-bar__group js-btn-group js-btn-group-maximize">\n\t\t\t<div class="control-bar__btn control-bar__btn--maximize apply-common-tooltip" data-tooltip-hotkey="${H}">\n\t\t\t\t${S}\n\t\t\t</div>\n\t\t</div>\n\t\t<div class="control-bar__group js-btn-group js-btn-group-scroll">\n\t\t\t<div class="control-bar__btn control-bar__btn--move-left apply-common-tooltip" title="${O}" data-tooltip-hotkey="${x}">\n\t\t\t\t${m}\n\t\t\t</div>\n\t\t\t<div class="control-bar__btn control-bar__btn--move-right apply-common-tooltip" title="${z}" data-tooltip-hotkey="${T}">\n\t\t\t\t${m}\n\t\t\t</div>\n\t\t</div>\n\t\t<div class="control-bar__group js-btn-group js-btn-group-reset-scale">\n\t\t\t<div class="control-bar__btn control-bar__btn--turn-button control-bar__btn--btn-hidden apply-common-tooltip js-btn-reset" title="${F}" data-tooltip-hotkey="${A}">\n\t\t\t\t${w}\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>`,$=`<div class="control-bar-wrapper control-bar-wrapper--back-present">\n\t<div class="control-bar control-bar__btn control-bar__btn--btn-hidden apply-common-tooltip" title="${U}" data-tooltip-hotkey="${D}">\n\t\t${y}\n\t</div>\n</div>`,G=_.CheckMobile.any(),q="control-bar__btn--btn-hidden",K="control-bar__btn--activated",J={zoomInOut:!0,maximize:!0,scrollLeftRight:!0,resetScale:!0,goToRealtime:!0};class X{constructor(e,t,i){this._widget=(0,s.ensureNotNull)((0,h.parseHtml)(Q).querySelector(".control-bar-wrapper")),this._controlBar=(0,s.ensureNotNull)(this._widget.querySelector(".control-bar")),this._back=(0,s.ensureNotNull)((0,h.parseHtml)($).querySelector(".control-bar-wrapper")),this._btnGroups=Array.from(this._controlBar.querySelectorAll(".js-btn-group")),this._targetPaneWidget=null,this._backButtonVisible=!1,this._backButtonCanBeVisible=!1,this._boundMouseHandler=null,this._chartModel=null,this._controlBarVisible=!1,this._priceAxisChanged=null,this._resetScalesAvailable=null,this._priceAxisName="right",this._rafId=null,this._visibilityTypeProperty=null,this._boundUpdateMaximizeButtonsVisibility=this._updateMaximizeButtonsVisibility.bind(this),this._boundToggleFullscreenButtons=this._toggleFullscreenButtons.bind(this),this._paneWidth=0,this._leftPriceScaleWidth=0,this._rightPriceScaleWidth=0,this._onVisibilityTypeChange=e=>{"alwaysOn"===e||"alwaysOff"===e?(this._controlBarVisible="alwaysOn"===e,this._parent.removeEventListener("mousemove",this._controlsBarVisibilityHandler,!1),this._parent.removeEventListener("mouseleave",this._controlsBarVisibilityHandler,!1)):(this._controlBarVisible=!1,
|
|
this._parent.addEventListener("mousemove",this._controlsBarVisibilityHandler),this._parent.addEventListener("mouseleave",this._controlsBarVisibilityHandler)),this._configureBackButtonVisibility(e),this._updateControlBarVisibility()},this._visibilityBackButtonHandler=e=>{const t=this._checkIsPointerNearBox(e,this._back.getBoundingClientRect());void 0!==t&&this._backButtonCanBeVisible!==t&&(this._backButtonCanBeVisible=t,this._setRAF())},this._controlsBarVisibilityHandler=e=>{const t=this._checkIsPointerNearBox(e,this._controlBar.getBoundingClientRect());void 0!==t&&this._controlBarVisible!==t&&(this._controlBarVisible=t,this._setRAF())},this._updateControlBarVisibility=()=>{this._controlBar.classList.toggle("control-bar--hidden",!this._controlBarVisible)},this._chart=e,this._parent=t,this._options=Object.assign({},J,i),this._visibilityPrioritizedGroups=this._initGroupDescriptions(),this._init(),this._initHandlers(),this.updatePosition()}destroy(){null!==this._visibilityTypeProperty&&(this._visibilityTypeProperty.destroy(),this._visibilityTypeProperty=null),null!==this._boundMouseHandler&&(this._parent.removeEventListener("mousemove",this._boundMouseHandler,!1),this._parent.removeEventListener("mouseleave",this._boundMouseHandler,!1),this._boundMouseHandler=null),null!==this._priceAxisChanged&&(this._priceAxisChanged.unsubscribe(this,this._updateBackBtnPosition),this._priceAxisChanged=null),clearInterval(this._checkIntervalId),this._resetScalesAvailable?.destroy();const e=this._chart.getResizerDetacher();e.fullscreenable.unsubscribe(this._boundUpdateMaximizeButtonsVisibility),e.fullscreen.unsubscribe(this._boundToggleFullscreenButtons),this._chart=null}updatePosition(){const e=this._targetPaneWidget=this._getTargetPaneWidget();if(null===e)return;const t=e.getElement().querySelector(".chart-markup-table .pane");if(null===t)return;this._paneWidth=e.width(),this._leftPriceScaleWidth=this._chart.getPriceAxisMaxWidthByName("left"),this._rightPriceScaleWidth=this._chart.getPriceAxisMaxWidthByName("right");const i=this._parent.getBoundingClientRect().bottom-t.getBoundingClientRect().bottom+this._bottomMargin(e);this._widget.style.bottom=`${i}px`,this._back.style.bottom=`${i}px`,this._updateBtnGroupVisibility()}_getTargetPaneWidget(){const e=this._chart.maximizedPaneWidget();if(e)return e;const t=[...this._chart.paneWidgets()].reverse();for(const e of t)if(e.height()>=this._widget.clientHeight+28+this._bottomMargin(e))return e;return null}_bottomMargin(e){return e.containsMainSeries()?27:0}_init(){if(_.CheckMobile.any())for(const e of this._btnGroups)e.classList.add("js-hidden");this._buttons={zoomIn:this._widget.querySelector(".control-bar__btn--zoom-in"),zoomOut:this._widget.querySelector(".control-bar__btn--zoom-out"),moveLeft:this._widget.querySelector(".control-bar__btn--move-left"),moveRight:this._widget.querySelector(".control-bar__btn--move-right"),turn:this._widget.querySelector(".control-bar__btn--turn-button"),maximize:this._widget.querySelector(".control-bar__btn--maximize")},this._parent.appendChild(this._widget),
|
|
this._parent.appendChild(this._back),this._priceAxisName=(0,d.isRtl)()?"left":"right",this._chart.withModel(this,(()=>{this._chartModel=this._chart.model(),this._initVisibility(),this._priceAxisChanged=this._chart.getPriceAxisWidthChangedByName(this._priceAxisName),this._priceAxisChanged.subscribe(this,this._updateBackBtnPosition),this._resetScalesAvailable=this._chartModel.model().resetScalesAvailable().spawn(),this._resetScalesAvailable.subscribe(this._updateResetScalesButtonVisibility.bind(this),{callWithLast:!0});const e=this._chart.getResizerDetacher();e.fullscreenable.subscribe(this._boundUpdateMaximizeButtonsVisibility),e.fullscreen.subscribe(this._boundToggleFullscreenButtons,{callWithLast:!0}),this._updateMaximizeButtonsVisibility(),this._updateBackBtnPosition(),this._back.querySelector(".control-bar__btn")?.addEventListener("click",(()=>{this._chart.scrollHelper().scrollToRealtime(!0,(()=>this._checkBackButtonVisibility()))}))}))}_initHandlers(){const e=o.mobiletouch?"touchstart":"mousedown",t=o.mobiletouch?["touchend"]:["mouseup","mouseout"];this._buttons.moveLeft.addEventListener(e,(e=>{e.preventDefault(),this._chart.scrollHelper().moveByBar(1),this._trackEvent("Move Left")})),this._buttons.moveRight.addEventListener(e,(e=>{e.preventDefault(),this._chart.scrollHelper().moveByBar(-1),this._trackEvent("Move Right")}));for(const e of t)this._buttons.moveLeft.addEventListener(e,(()=>this._chart.scrollHelper().stopMove())),this._buttons.moveRight.addEventListener(e,(()=>this._chart.scrollHelper().stopMove()));this._buttons.turn.addEventListener("click",(e=>{e.preventDefault(),this._chart.GUIResetScales(),this._trackEvent("Reset to Default Settings")})),this._buttons.zoomOut.addEventListener("click",(e=>{e.preventDefault(),null!==this._chartModel&&this._chartModel.zoomOut(),this._trackEvent("Zoom Out")})),this._buttons.zoomIn.addEventListener("click",(e=>{e.preventDefault(),null!==this._chartModel&&this._chartModel.zoomIn(),this._trackEvent("Zoom In")})),this._buttons.maximize.addEventListener("click",(e=>{e.preventDefault(),this._chart.setActive(!0);this._buttons.maximize.classList.contains(K)?(this._chart.getResizerDetacher().exitFullscreen(),this._trackEvent(" Restore Chart")):(this._chart.getResizerDetacher().requestFullscreen(),this._trackEvent(" Maximize Chart"))}));const i=e=>e.addEventListener("contextmenu",(e=>e.preventDefault()));i(this._buttons.moveLeft),i(this._buttons.moveRight),i(this._buttons.turn),i(this._buttons.zoomOut),i(this._buttons.zoomIn),i(this._buttons.maximize)}_initGroupDescriptions(){return[{shouldBeHiddenOnMobile:!1,available:this._isMaximizeButtonAvailable.bind(this),className:"js-btn-group-maximize",element:this._getBtnGroup("js-btn-group-maximize"),totalWidth:50},{shouldBeHiddenOnMobile:!1,available:()=>this._options.resetScale,className:"js-btn-group-reset-scale",element:this._getBtnGroup("js-btn-group-reset-scale"),totalWidth:50},{shouldBeHiddenOnMobile:!(0,a.isFeaturesetEnabled)("show_zoom_and_move_buttons_on_touch"),available:()=>this._options.zoomInOut,
|
|
className:"js-btn-group-zoom",element:this._getBtnGroup("js-btn-group-zoom"),totalWidth:86},{shouldBeHiddenOnMobile:!(0,a.isFeaturesetEnabled)("show_zoom_and_move_buttons_on_touch"),available:()=>this._options.scrollLeftRight,className:"js-btn-group-scroll",element:this._getBtnGroup("js-btn-group-scroll"),totalWidth:86}]}_checkBackButtonVisibility(){if(null===this._chartModel||!this._options.goToRealtime)return;const e=this._backButtonCanBeVisible&&this._chartModel.timeScale().rightOffset()<0;e!==this._backButtonVisible&&(this._backButtonVisible=e,this._back.querySelector(".control-bar__btn")?.classList.toggle(q,!this._backButtonVisible))}_initVisibility(){this._visibilityTypeProperty=(0,n.combine)(((e,t)=>null!==t?"alwaysOff":e),(0,u.convertPropertyToWatchedValue)((0,r.actualBehavior)()).ownership(),(0,g.getSeriesDisplayErrorWV)((0,s.ensureNotNull)(this._chartModel).mainSeries()).ownership()),this._visibilityTypeProperty.subscribe(this._onVisibilityTypeChange,{callWithLast:!0})}_configureBackButtonVisibility(e){"alwaysOff"===e?(clearInterval(this._checkIntervalId),this._checkIntervalId=void 0):this._checkIntervalId=this._checkIntervalId??setInterval((()=>this._checkBackButtonVisibility()),1e3),_.CheckMobile.any()?this._backButtonCanBeVisible="alwaysOff"!==e:"alwaysOn"===e||"alwaysOff"===e?(this._backButtonCanBeVisible="alwaysOn"===e,this._parent.removeEventListener("mousemove",this._visibilityBackButtonHandler,!1),this._parent.removeEventListener("mouseleave",this._visibilityBackButtonHandler,!1)):(this._backButtonCanBeVisible=!1,this._parent.addEventListener("mousemove",this._visibilityBackButtonHandler),this._parent.addEventListener("mouseleave",this._visibilityBackButtonHandler)),this._checkBackButtonVisibility()}_checkIsPointerNearBox(e,t){if(!(e.buttons||null!==this._chartModel&&this._chartModel.lineBeingCreated())){if("mousemove"===e.type){const i=100-(this._targetPaneWidget?this._bottomMargin(this._targetPaneWidget):0);return e.clientX>=t.left-100&&e.clientX<=t.right+100&&e.clientY>=t.top-i&&e.clientY<=t.bottom+100}return!1}}_setRAF(){null===this._rafId&&(this._rafId=this._widget.ownerDocument.defaultView.requestAnimationFrame((()=>{this._checkBackButtonVisibility(),this._updateControlBarVisibility(),this._rafId=null})))}_updateBackBtnPosition(){if("left"===this._priceAxisName||"right"===this._priceAxisName){const e=this._chart.getPriceAxisMaxWidthByName(this._priceAxisName)+14;e&&(this._back.style.marginRight=`${e}px`)}}_updateBtnGroupVisibility(){const e=this._leftPriceScaleWidth+this._paneWidth,t=(e+this._rightPriceScaleWidth)/2;let i=2*Math.min(e-t,t-this._leftPriceScaleWidth)-50-50,s=!1;for(const e of this._visibilityPrioritizedGroups){e.enoughSpaceForGroup=!1;e.available()&&(!G||!e.shouldBeHiddenOnMobile)&&(i-=e.totalWidth,e.enoughSpaceForGroup=i>=0&&!s,s=s||!e.enoughSpaceForGroup),!e.enoughSpaceForGroup!==e.element.classList.contains("js-hidden")&&e.element.classList.toggle("js-hidden",!e.enoughSpaceForGroup)}this._updateControlBarPosition()}_getBtnGroup(e){return(0,
|
|
s.ensureDefined)(this._btnGroups.find((t=>t.classList.contains(e))))}_updateControlBarPosition(){const e=this._visibilityPrioritizedGroups.reduce(((e,t)=>e+(t.enoughSpaceForGroup?t.totalWidth:0)),0),t=(this._paneWidth+this._leftPriceScaleWidth+this._rightPriceScaleWidth)/2-Math.ceil(e/2);this._widget.style.left=`${t}px`}_updateResetScalesButtonVisibility(){if(null===this._chartModel)return;const e=this._chartModel.model().resetScalesAvailable().value();this._buttons.turn.classList.toggle(q,!e)}_updateMaximizeButtonsVisibility(){this._updateBtnGroupVisibility()}_toggleFullscreenButtons(){const e=this._chart.inFullscreen();this._buttons.maximize.classList.toggle(K,e),this._buttons.maximize.title=e?N:R}_isMaximizeButtonAvailable(){return this._options.maximize,!1}_trackEvent(e){0}}},18491:(e,t,i)=>{"use strict";i.r(t),i.d(t,{LegendWidget:()=>ns});var s=i(35433),l=i(89315),o=i(85842),a=i(7321),n=i(16905),r=i(68657),d=i(36870),h=i(89659),u=i(55482),c=i(47893),_=i(50534),p=i(45958);function g(e,t){null===e.firstChild?e.textContent=t:e.firstChild.nodeValue=t}var b=i(87918),m=i(78122),v=i(65792),w=i(1324),S=i(79474),y=i(29365),E=i(42889);function f(e){const{container:t,...i}=e;return y.render(S.createElement(E.StatusesPill,{...i}),t),()=>{y.unmountComponentAtNode(t),e.showTooltipOverrideCallback?.(!0)}}var C=i(73283),V=i(43064);const M=v.trackingModeIsAvailable?44:28;var L=i(65067),W=i(25682),A=i(79076),H=i(12133),x=i(86971),T=i(22872),B=i(82347),k=i(91599),D=i(72769),I=i(64906);function P(e){(0,I.trackEvent)("GUI","Legend action",e)}var R,N,O=i(81458),z=i(65366);function F(e){return(0,T.isObject)(e)&&"items"in e}function U(e){return void 0!==e?B.resetTransparency(e):e}function Z(e){return e.hasOwnProperty("touches")}!function(e){e[e.SeriesTitle=0]="SeriesTitle",e[e.SeriesDescription=1]="SeriesDescription",e[e.SeriesInterval=2]="SeriesInterval",e[e.SeriesProvider=3]="SeriesProvider",e[e.SeriesExchange=4]="SeriesExchange",e[e.SeriesStyle=5]="SeriesStyle",e[e.SeriesPriceSource=6]="SeriesPriceSource",e[e.DataSourceTitle=7]="DataSourceTitle",e[e.DataSourceSymbolTitle=8]="DataSourceSymbolTitle",e[e.DataSourceInput=9]="DataSourceInput"}(R||(R={})),function(e){e.Small="small",e.Large="large"}(N||(N={}));const j=new D.TranslatedString("show {title}",k.t(null,void 0,i(72509))),Q=new D.TranslatedString("hide {title}",k.t(null,void 0,i(89815))),$=k.t(null,void 0,i(97309)),G=k.t(null,void 0,i(69391));class q{constructor(e,t,i,s,l){this._titles=new H.WatchedObject([]),this._values=new h.WatchedValue([]),this._actions=[],this._loading=new h.WatchedValue(!1),this._symbolLogoViewModel=new h.WatchedValue(null),this._destroyed=!1,this._moreActionAbortController=null,this._onShowSettingsAbortController=null,this._updateLoadingStatus=()=>{this._loading.setValue(this._source.isLoading())},this._model=e,this._source=t,this._options=i,this._callbacks=s,this._contextMenuOptions=l,this._disabled=new h.WatchedValue(this._getDisabledState()),this._disabledOnInterval=new h.WatchedValue(this._getDisabledOnIntervalState()),
|
|
this._selected=new h.WatchedValue(!1),this._isTitleHidden=new h.WatchedValue(this._getTitleHiddenValue()),this._isValuesHidden=new h.WatchedValue(this._getValuesHiddenValue()),this._isRowHidden=new h.WatchedValue(this._getRowHiddenValue()),this._isEditable=new h.WatchedValue(this._getIsEditable()),(0,r.combine)(((e,t,i)=>({})),this._isTitleHidden.weakReference(),this._isValuesHidden.weakReference(),this._disabled.weakReference()).subscribe(this._updateRowVisibilities.bind(this)),this._values.subscribe((()=>{this._isValuesHidden.setValue(this._getValuesHiddenValue())}))}destroy(){this._symbolLogoViewModel.value()?.destroy(),this._destroyed=!0}titles(){return this._titles.readonly()}values(){return this._values.readonly()}actions(){return this._actions}disabled(){return this._disabled.readonly()}disabledOnInterval(){return this._disabledOnInterval.readonly()}selected(){return this._selected.readonly()}loading(){return this._loading.readonly()}isTitleHidden(){return this._isTitleHidden.readonly()}isRowHidden(){return this._isRowHidden.readonly()}isEditable(){return this._isEditable.readonly()}symbolLogoViewModel(){return this._symbolLogoViewModel}update(){this._updateTitles(),this._updateValues(),this._updateStates(),this.symbolLogoViewModel()?.value()?.update()}onToggleDisabled(){const e=this._source.properties().childs().visible,t=!e.value();this._model.setProperty(e,t,(t?j:Q).format({title:new D.TranslatedString(this._source.name(),this._source.title(z.TitleDisplayTarget.StatusLine))})),P((t?"Show":"Hide")+" source")}async onShowSettings(e,t){if(!this._source.userEditEnabled())return;const i=e||"settings";this._onShowSettingsAbortController&&!this._onShowSettingsAbortController.signal.aborted&&this._onShowSettingsAbortController.abort(i);const s=this._onShowSettingsAbortController=new AbortController;t&&s.signal.addEventListener("abort",(()=>{s.signal.reason!==i&&t()}),{once:!0});const l=()=>s.abort();P("Settings for source"),this.setSourceSelected();try{const t=await this._callbacks.showChartPropertiesForSource(this._source,e);t&&(t.visible().subscribe(l,{once:!0}),s.signal.addEventListener("abort",(()=>{t.visible().unsubscribe(l),t.hide()}),{once:!0}))}catch{l()}}setSourceSelected(){this._model.selectionMacro((e=>{e.clearSelection(),e.addSourceToSelection(this._source)}))}chartModelId(){return this._model.id()}async _moreActionHandler(e,t){if(!this._options.readOnlyMode)if(e.preventDefault(),!this._moreActionAbortController||this._moreActionAbortController.signal.aborted){const i=this._moreActionAbortController=new AbortController;i.signal.addEventListener("abort",t,{once:!0});const s=()=>i.abort();this.setSourceSelected();try{const t=await this._onShowMoreActions(e,s);i.signal.aborted&&t&&t.hide()}catch{s()}}else this._moreActionAbortController.abort()}_updateStates(){this._disabled.setValue(this._getDisabledState()),this._disabledOnInterval.setValue(this._getDisabledOnIntervalState()),this._selected.setValue(this._model.selection().isSelected(this._source)),this._isEditable.setValue(this._getIsEditable()),
|
|
this._updateLoadingStatus()}_hasValues(){return this._values.value().length>0}_getEyeTitle(){return this._disabled.value()?$:G}_getIsEditable(){return this._source.userEditEnabled()}_getDisabledState(){return!this._source.properties().visible.value()}_updateRowVisibilities(){this._isRowHidden.setValue(this._getRowHiddenValue())}_getRowHiddenValue(){return this._options.readOnlyMode&&this._disabled.value()||this._isTitleHidden.value()&&(this._isValuesHidden.value()||this._disabled.value())}async _onShowMoreActions(e,t){return P("Show source context menu"),this._callbacks.showContextMenuForSources([this._source],this._calcNewPosition(e),{...this._contextMenuOptions,isKeyboardEvent:!Z(e)&&(0,x.isKeyboardClick)(e)},{origin:"LegendPropertiesContextMenu",onClose:t})}_calcNewPosition(e){let t={};if(Z(e)&&e.touches.length>0)t={clientX:e.touches[0].clientX,clientY:e.touches[0].clientY};else if(null!==e.target){const i=e.target.getBoundingClientRect();t={clientX:(0,O.isRtl)()?i.right:i.left,clientY:i.top+i.height+3}}else{const i=e;t={clientX:i.clientX,clientY:i.clientY}}return t}}var K=i(61597),J=i(36334),X=i(65365);const Y=(ee=K.Loader,te={staticPosition:!0,size:"small"},(e,t)=>function(e,t,i,s){const l=document.createElement("span"),o=(0,J.createRoot)(l);n(!1);const{className:a}=s??{};return a&&l.classList.add(a),o.render((0,S.createElement)(t,i)),e&&r(e),{toggleVisibility:n,destroy:function(){o.unmount()},mountTo:r};function n(e){l.classList.toggle(X.blockHidden,!e)}function r(e){e.appendChild(l)}}(e,ee,te,t));var ee,te,ie=i(83991),se=i(14487),le=i.n(se),oe=i(8547),ae=i(26191),ne=i(96199),re=i(33563),de=i(22082),he=i(95875);class ue{constructor(e){this._lastDrawnLogos=[],this._logoWrapper=null,this._pairContainer=null,this._primaryLogo=null,this._secondaryLogo=null,this._logoContainer=null,this._symbolLetterContainer=null,this._abortController=new AbortController,this._updateLogoVisibility=e=>{this._logoWrapper&&this._logoWrapper.classList.toggle(he.hidden,!e)},this._updateSymbolLogo=async e=>{if(null===this._logoWrapper&&this._renderSymbolLogo(),0!==this._lastDrawnLogos.length&&0!==e.length&&(0,ie.default)(this._lastDrawnLogos,e))return;const t=await(i=e,s=this._abortController.signal,Promise.all(i.map((e=>(0,re.getImage)(`symbol_logo_${e}`,e,_e,s).then((e=>e.cloneNode())))))).catch((()=>[]));var i,s;switch(t.length){case 0:this._pairContainer?.classList.add(he.hidden),this._logoContainer?.classList.add(de.hiddenCircleLogoClass),this._updateSymbolLetter(),this._symbolLetterContainer?.classList.remove(de.hiddenCircleLogoClass),this._lastDrawnLogos=e;break;case 1:ce(this._logoContainer,t[0]),this._pairContainer?.classList.add(he.hidden),this._logoContainer?.classList.remove(de.hiddenCircleLogoClass),this._symbolLetterContainer?.classList.add(de.hiddenCircleLogoClass),this._lastDrawnLogos=e;break;case 2:ce(this._primaryLogo,t[0]),ce(this._secondaryLogo,t[1]),this._pairContainer?.classList.remove(he.hidden),this._logoContainer?.classList.add(de.hiddenCircleLogoClass),
|
|
this._symbolLetterContainer?.classList.add(de.hiddenCircleLogoClass),this._lastDrawnLogos=e}},this._model=e,this._renderSymbolLogo(),this._logoUrls=e.symbolLogoUrls().spawn(),this._logoUrls.subscribe(this._updateSymbolLogo,{callWithLast:!0}),this._isLogoVisible=e.isSymbolLogoVisible().spawn(),this._isLogoVisible.subscribe(this._updateLogoVisibility,{callWithLast:!0})}destroy(){this._logoWrapper?.remove(),this._logoWrapper=null,this._pairContainer=null,this._primaryLogo=null,this._secondaryLogo=null,this._logoContainer=null,this._symbolLetterContainer=null,this._logoUrls.destroy(),this._isLogoVisible.destroy(),this._abortController.abort()}getElement(){return this._logoWrapper}_renderSymbolLogo(){if(!this._logoWrapper){const e=this._logoWrapper=document.createElement("div");e.classList.add(he.logoWrapper),e.dataset.qaId="legend-logo-wrapper";const t=this._pairContainer=e.appendChild(document.createElement("span"));t.classList.add(he.pairContainer,he.hidden);const i=t.appendChild(document.createElement("span"));i.className=(0,oe.getBlockStyleClasses)("xxxsmall");(this._secondaryLogo=i.appendChild(document.createElement("span"))).className=le()((0,oe.getLogoStyleClasses)("xxxsmall"),he.logo);(this._primaryLogo=i.appendChild(document.createElement("span"))).className=le()((0,oe.getLogoStyleClasses)("xxxsmall"),he.logo);(this._logoContainer=e.appendChild(document.createElement("span"))).className=le()((0,ae.getStyleClasses)("xxxsmall"),he.logo,de.hiddenCircleLogoClass);(this._symbolLetterContainer=e.appendChild(document.createElement("span"))).className=le()((0,ae.getStyleClasses)("xxxsmall"),he.logo),this._updateSymbolLetter()}}_updateSymbolLetter(){if(this._symbolLetterContainer){const e=(0,ne.safeShortName)(this._model.symbol()??"")[0];g(this._symbolLetterContainer,e)}}}function ce(e,t){e&&e.replaceChildren(t)}function _e(e){e.crossOrigin="",e.decoding="async"}const pe=p.CheckMobile.any();var ge,be;!function(e){e[e.Tiny=1]="Tiny",e[e.Small=2]="Small",e[e.Medium=3]="Medium",e[e.Large=4]="Large"}(ge||(ge={})),function(e){e[e.NoIntervalForMultiChart=1]="NoIntervalForMultiChart",e[e.NoExchangeProviderAndInterval=2]="NoExchangeProviderAndInterval",e[e.AllVisible=3]="AllVisible"}(be||(be={}));function me(e,t){e.dataset.status=t?"loading":void 0}const ve=(0,C.mergeThemes)(E.DEFAULT_STATUS_RENDERER_THEME,{statusesWrap:he.statusesWrapper__statuses});class we{constructor(e,t,i){this._el=null,this._firstBlockWrapper=null,this._titlesWrapperEl=null,this._titleContainers=[],this._titleElements=[],this._valuesElements=[],this._actionsParentEl=null,this._actionAdditionalWrapperEl=null,this._actionElements=[],this._accessibleTitleButtons=[],this._accessibleActionButtons=[],this._rowMode=4,this._titlesMode=3,this._statusesWrapper=null,this._statusesWidgetState=null,this._loader=null,this._valuesParentEl=null,this._valuesAdditionalWrapperEl=null,this._symbolLogoRenderer=null,this._resizeObserver=null,this._hideInvisibleHover=null,this._hideValues=null,this._allButtonsWidth=null,this._lastStatusesWrapperWidth=null,
|
|
this._lastActionsWrapperWidth=null,this._showActionsHandler=null,this._hideActionsHandler=null,this._selectedSourceHandler=null,this._mouseEventHandlers=[],this._disableTimeout=null,this._toggleHiddenActions=null,this._updateDisabledState=(e=this._disabled.value())=>{null!==this._el&&(this._el.classList.toggle(he.disabled,e),this._updateLoadingState(),this._updateStatusWidgetVisibility(e),this._updateTitleMaxWidth())},this._updateLoadingState=(e=this._loading.value())=>{if(null!==this._el){this._el.classList.toggle(he.eyeLoading,e&&!this._disabled.value()),me(this._el,e)}null!==this._loader&&this._loader.toggleVisibility(e),this._updateShowValues()},this._updateSymbolLogoRenderer=e=>{if(this._symbolLogoRenderer?.destroy(),e){this._symbolLogoRenderer=new ue(e);const t=this._titlesStatesSpawn.value().findIndex((e=>this._isTitleWithSymbolLogo(e)));if(-1!==t){const e=this._titleContainers[t];if(e){const t=this._symbolLogoRenderer.getElement();t&&e.insertBefore(t,e.firstChild)}}}else this._symbolLogoRenderer=null},this._model=e,this._parentEl=t,this._disabled=this._model.disabled().spawn(),this._disabled.subscribe(this._updateDisabledState),this._disabledOnInterval=this._model.disabledOnInterval().spawn(),this._disabledOnInterval.subscribe(this._updateDisabledOnIntervalState.bind(this)),this._selected=this._model.selected().spawn(),this._selected.subscribe(this._updateSelectedState.bind(this)),this._loading=this._model.loading().spawn(),this._loading.subscribe(function(e,t){let i=0;return s=>{clearTimeout(i),s?e():i=setTimeout(e,t)}}(this._updateLoadingState,700)),this._isTitleHidden=this._model.isTitleHidden().spawn(),this._isRowHidden=this._model.isRowHidden().spawn(),this._isTitleHidden.subscribe(this._updateShowTitles.bind(this)),this._isRowHidden.subscribe(this._updateShowLine.bind(this)),this._titlesStatesSpawn=this._model.titles().spawn(),this._titlesStatesSpawn.subscribe(this._titlesCollectionChanged.bind(this)),this._values=this._model.values().spawn(),this._values.subscribe(this._updateValues.bind(this)),this._createValuesSpawns(),this._addValuesSpawnsSubscriptions(),e.symbolLogoViewModel().subscribe(this._updateSymbolLogoRenderer),this._updateSymbolLogoRenderer(e.symbolLogoViewModel().value()),this._actionsSpawnArray=this._model.actions().map((e=>({visible:e.visible.spawn(),active:e.active?.spawn(),title:void 0===e.title?null:e.title.spawn()})));for(let e=0;e<this._actionsSpawnArray.length;e++){const{visible:t,title:i,active:s}=this._actionsSpawnArray[e];t.subscribe(this._updateActionVisibilities.bind(this,e)),s?.subscribe((()=>this._updateActionActiveStatus(e))),i?.subscribe(this._updateActionTitle.bind(this,e))}this._withActions=i.withActions,this._isMultipleLayout=i.isMultipleLayout.spawn(),this._customTextColor=i.customTextColor.spawn(),this._customTextColor.subscribe(this._updateCustomTextColor.bind(this)),this._render(),this._updateStates(),this._updateShowTitles(),this._updateShowValues(),this._updateShowLine(),this._loader=Y((0,o.ensureNotNull)(this._valuesParentEl),{className:he.loader}),
|
|
this._withActions&&(this._toggleHiddenActions=i.toggleHiddenActions,this._showActionsHandler=(0,A.wrapHandlerWithPreventEvent)(this._showActions.bind(this)),this._hideActionsHandler=(0,A.wrapHandlerWithPreventEvent)(this._hideActions.bind(this)),this._selectedSourceHandler=(0,V.defaultPreventedHandler)(this._model.setSourceSelected.bind(this._model)),null!==this._titlesWrapperEl&&(pe||(this._titlesWrapperEl.addEventListener("mouseenter",this._showActionsHandler),this._titlesWrapperEl.addEventListener("mouseleave",this._hideActionsHandler)),this._mouseEventHandlers.push(new V.MouseEventHandler(this._titlesWrapperEl,{mouseDoubleClickEvent:this._model.onShowSettings.bind(this._model),doubleTapEvent:this._model.onShowSettings.bind(this._model),mouseClickEvent:this._selectedSourceHandler,tapEvent:this._selectedSourceHandler}))),null===this._actionAdditionalWrapperEl||null===this._actionsParentEl||pe||(this._actionAdditionalWrapperEl.addEventListener("mouseenter",this._showActionsHandler),this._actionAdditionalWrapperEl.addEventListener("mouseleave",this._hideActionsHandler),this._actionsParentEl.addEventListener("contextmenu",(e=>{e.preventDefault(),e.stopPropagation()}))))}destroy(){if(this._toggleHiddenActions=null,this._disabled.destroy(),this._disabledOnInterval.destroy(),this._selected.destroy(),this._loading.destroy(),this._isTitleHidden.destroy(),this._isRowHidden.destroy(),this._customTextColor.destroy(),this._loader?.destroy(),this._isMultipleLayout.destroy(),this._model.symbolLogoViewModel().unsubscribe(this._updateSymbolLogoRenderer),this._symbolLogoRenderer?.destroy(),null!==this._disableTimeout&&clearTimeout(this._disableTimeout),this._accessibleTitleButtons=[],this._accessibleActionButtons=[],this._statusesWidgetDestroy?.(),this._titlesStatesSpawn.destroy(),null!==this._titlesWrapperEl){for(const e of this._mouseEventHandlers)e.destroy();this._titleContainers=[],this._titleElements=[],this._withActions&&null!==this._selectedSourceHandler&&null!==this._showActionsHandler&&null!==this._hideActionsHandler&&(pe||(this._titlesWrapperEl.removeEventListener("mouseenter",this._showActionsHandler),this._titlesWrapperEl.removeEventListener("mouseleave",this._hideActionsHandler))),this._titlesWrapperEl=null}for(const e of this._actionsSpawnArray)e.visible.destroy(),e.active?.destroy(),e.title?.destroy();if(this._actionElements=[],null!==this._actionAdditionalWrapperEl&&(this._withActions&&null!==this._showActionsHandler&&null!==this._hideActionsHandler&&!pe&&(this._actionAdditionalWrapperEl.removeEventListener("mouseenter",this._showActionsHandler),this._actionAdditionalWrapperEl.removeEventListener("mouseleave",this._hideActionsHandler)),this._actionAdditionalWrapperEl=null),this._actionsParentEl=null,this._removeValuesSpawnsSubscriptions(),this._values.destroy(),null!==this._valuesParentEl&&(this._valuesElements=[],this._valuesParentEl=null),this._hideInvisibleHover?.destroy(),this._hideValues?.destroy(),null!==this._resizeObserver&&(this._resizeObserver.disconnect(),this._resizeObserver=null),null!==this._el){
|
|
const e=this._el.parentNode;e?.removeChild(this._el),this._el=null}}getElement(){return this._el}getHeight(){return null===this._el?null:24}updateMode(e,t){this._rowMode===e&&this._titlesMode===t&&null!==this._allButtonsWidth||(this._rowMode!==e&&(this._rowMode=e,this._updateActionsVisibilitiesByMode()),this._titlesMode!==t&&(this._titlesMode=t,this._updateTitlesVisibilitiesByMode()),this._updateAllButtonsWidth())}accessibleButtons(){return this._isRowHidden.value()?[]:[...this._accessibleTitleButtons,...this._accessibleActionButtons].filter((e=>!e.classList.contains(X.blockHidden)))}showActions(){null===this._el||this._el.classList.contains(he.withAction)||this._showActions()}hideActions(){null!==this._el&&this._el.classList.contains(he.withAction)&&this._hideActions()}_updateActionsVisibilitiesByMode(){}_updateTitlesVisibilitiesByMode(){}_render(){this._renderTitles(),this._renderActions(),this._renderValues();const e=this._customTextColor.value()||"";this._el=document.createElement("div"),this._el.classList.toggle(he.withCustomTextColor,Boolean(e)),me(this._el,this._loading.value()),this._firstBlockWrapper=document.createElement("div"),this._firstBlockWrapper.classList.add(he.noWrapWrapper),this._firstBlockWrapper.appendChild((0,o.ensureNotNull)(this._titlesWrapperEl)),null!==this._actionsParentEl&&this._firstBlockWrapper.appendChild(this._actionsParentEl),this._el.appendChild(this._firstBlockWrapper),this._el.appendChild((0,o.ensureNotNull)(this._valuesParentEl)),this._parentEl.append(this._el)}_renderTitles(){null===this._titlesWrapperEl&&(this._titlesWrapperEl=document.createElement("div"),this._titlesWrapperEl.classList.add(he.titlesWrapper),this._titlesWrapperEl.dataset.qaId="legend-titles");for(const e of this._titlesStatesSpawn.value())F(e)?this._renderTitlesGroup(e):this._renderSimpleTitle(e)}_renderTitlesGroup(e){const t=document.createElement("div");t.classList.add(he.titlesGroupWrapper),e.items.forEach((e=>this._renderSimpleTitle(e,t))),(0,o.ensureNotNull)(this._titlesWrapperEl).appendChild(t)}_renderSimpleTitle(e,t){const{title:i,tooltip:s,action:l}=e,a=!!l&&(!p.CheckMobile.any()||l.actionAllowedOnTouch),n=this._getAttributesForTitleState(e),r=i??"",d=this._customTextColor.value()||"",h=document.createElement("div");h.classList.add(he.titleWrapper,he.withDot),h.style.color=d,n?.className&&h.classList.add(n.className),h.dataset.qaId=["title-wrapper",n?.dataQaId].join(" ").trim(),void 0!==s&&(h.classList.add("apply-common-tooltip"),h.setAttribute("title",s));const u=document.createElement(a?"button":"div");if(u.classList.add(he.title),void 0!==l){h.classList.add(he.withAction);const e=p.CheckMobile.any()&&l.actionAllowedOnTouch,t=t=>{!this._selected.value()&&(this._selectedSourceHandler?.(t),e)||(h.classList.add(he.titleWrapper__active),l.fn((()=>h.classList.remove(he.titleWrapper__active))),a&&u.blur())};if(this._mouseEventHandlers.push(new V.MouseEventHandler(h,{mouseClickEvent:t,tapEvent:e?t:void 0},{ignoreClickAndTapOnDblClickOrDblTap:!0})),a){const e=u;this._makeItemAccessible(e,(()=>l.fn()),s??""),
|
|
this._accessibleTitleButtons.push(e)}}if(r.length>0?u.appendChild(document.createTextNode(r)):(h.classList.add(X.blockHidden),u.classList.add(X.blockHidden)),h.appendChild(u),this._isTitleWithSymbolLogo(e)){const e=this._symbolLogoRenderer?.getElement();e&&h.insertBefore(e,h.firstChild)}(t??(0,o.ensureNotNull)(this._titlesWrapperEl)).appendChild(h),this._titleContainers.push(h),this._titleElements.push(u)}_makeItemAccessible(e,t,i){""!==i&&e.setAttribute("aria-label",i),e.type="button",e.classList.add(he.accessible),e.tabIndex=-1;const s=t=>{switch(t.type){case"roving-tabindex:main-element":e.tabIndex=0;break;case"roving-tabindex:secondary-element":e.tabIndex=-1}};e.addEventListener("roving-tabindex:main-element",s),e.addEventListener("roving-tabindex:secondary-element",s),e.addEventListener("keydown",(e=>{const i=(0,c.hashFromEvent)(e);13!==i&&32!==i||(e.preventDefault(),t(e))}))}_renderActions(){if(!this._withActions)return;null===this._actionsParentEl&&(this._actionsParentEl=document.createElement("div"),this._actionsParentEl.classList.add(he.buttonsWrapper),this._actionsParentEl.dataset.name="actions",this._parentEl.append(this._actionsParentEl),this._actionAdditionalWrapperEl=document.createElement("div"),this._actionAdditionalWrapperEl.classList.add(he.buttons),this._actionsParentEl.appendChild(this._actionAdditionalWrapperEl));const e=(0,o.ensureNotNull)(this._actionAdditionalWrapperEl);this._model.actions().forEach((t=>{const i=void 0===t.disableAccessibility,s={iconSize:v.trackingModeIsAvailable?"large":"small",tag:i?"button":"div",buttonClassName:he.button,wrapIconClassName:he.buttonIcon,hiddenClassName:X.blockHidden,blurOnClick:!!i||void 0},l=(0,W.createActionElement)(t,s);if(i){const e=l;this._makeItemAccessible(e,(e=>t.action(e)),t.title?.value()??""),this._accessibleActionButtons.push(e)}this._actionElements.push(l),e.appendChild(l)}))}_initWrappersIfNotInitialized(){return null===this._valuesParentEl&&(this._valuesParentEl=document.createElement("div"),this._valuesParentEl.classList.add(he.valuesWrapper),this._valuesAdditionalWrapperEl=document.createElement("div"),this._valuesAdditionalWrapperEl.classList.add(he.valuesAdditionalWrapper),this._valuesParentEl.appendChild(this._valuesAdditionalWrapperEl)),(0,o.ensureNotNull)(this._valuesAdditionalWrapperEl)}_isWidthButtonsMode(){return null!==this._el&&(this._el.classList.contains(he.withAction)||this._disabled.value()||this._selected.value())}_isTitleHiddenByMode(e){return!1}_updateStates(e){this._updateDisabledState(),this._updateDisabledOnIntervalState(),this._updateSelectedState(),this._updateLoadingState(),e&&this._clearDisableState()}_updateValuesHTMLElHandler(e,t){g((0,o.ensure)(this._valuesElements[e].value),t),this._updateShowValues()}_updateValueColorHandler(e,t=""){(0,o.ensure)(this._valuesElements[e].value).style.color=t}_updateValueVisibleHandler(e,t){const i=(0,o.ensure)(this._valuesElements[e].value).closest(`.${he.valueItem}`);null!==i&&i.classList.toggle(X.blockHidden,!t),this._updateShowValues()}_updateShowLine(){
|
|
null!==this._el&&this._el.classList.toggle(X.blockHidden,this._isRowHidden.value())}_titlesCollectionChanged(){null!==this._titlesWrapperEl&&(this._titlesWrapperEl.innerHTML=""),this._accessibleTitleButtons=[],this._titleContainers=[],this._titleElements=[],this._renderTitles(),this._updateTitlesVisibilitiesByMode()}_createValuesSpawns(){this._valuesSpawnArray=this._values.value().map((e=>({value:e.value.spawn(),color:e.color.spawn(),visible:e.visible.spawn(),title:e.title.spawn()})))}_removeValuesSpawnsSubscriptions(){for(const e of this._valuesSpawnArray)e.value.destroy(),e.color.destroy(),e.visible.destroy(),e.title.destroy();this._valuesSpawnArray=[]}_addValuesSpawnsSubscriptions(){for(let e=0;e<this._valuesSpawnArray.length;e++){const t=this._valuesSpawnArray[e];t.value.subscribe(this._updateValuesHTMLElHandler.bind(this,e)),t.color.subscribe(this._updateValueColorHandler.bind(this,e)),t.visible.subscribe(this._updateValueVisibleHandler.bind(this,e)),t.title.subscribe(this._updateValuesTitleHTMLElHandler.bind(this,e))}}_updateShowValues(){function e(e){if(!e)return;const t=Array.from(e.children).every((e=>e.classList.contains(X.blockHidden)));e.classList.toggle(X.blockHidden,t)}e(this._valuesAdditionalWrapperEl),e(this._valuesParentEl)}_addStatusesWidget(e){this._hideInvisibleHover=e.visibility().spawn(),this._hideInvisibleHover.subscribe(this._updateHideInvisibleHoverMode.bind(this),{callWithLast:!0}),this._hideValues=(0,r.combine)(((e,t)=>e||t),e.dataSourceErrorStatusShown.weakReference(),e.isSymbolInvalidStatusShown.weakReference()),this._hideValues.subscribe(this._updateHideValuesMode.bind(this),{callWithLast:!0}),this._statusesWrapper=document.createElement("div"),this._statusesWrapper.classList.add(he.statusesWrapper),this._statusesWrapper.dataset.qaId="legend-statuses-wrapper",this._statusesWidgetState=e,this._disabled.value()?this._statusesWidgetDestroy=f({container:this._statusesWrapper,statuses:e.visibleModels(),tooltip:e.tooltip(),theme:ve,showTooltipOverrideCallback:this._showTooltipOverrideCallback()}):(this._statusesWidgetDestroy?.(),this._statusesWidgetDestroy=void 0),(0,o.ensureNotNull)(this._firstBlockWrapper).appendChild(this._statusesWrapper),this._updateStatusWidgetVisibility(this._disabled.value()),this._resizeObserver=new ResizeObserver(this._handlerRestrictTitleWidth.bind(this)),null!==this._actionsParentEl&&this._resizeObserver.observe(this._actionsParentEl),this._el&&this._resizeObserver.observe(this._el)}_updateTitleMaxWidth(){if(null===this._el||null===this._titlesWrapperEl)return;const e=this._allButtonsWidth||0,t=(this._lastActionsWrapperWidth||0)+(this._lastStatusesWrapperWidth||0),i=this._isWidthButtonsMode()?Math.max(e,t):t;this._titlesWrapperEl.style.maxWidth=i>0?`${Math.abs(this._el.clientWidth-i)}px`:""}_updateAllButtonsWidth(){this._allButtonsWidth=this._getButtonsCount()*M+1,this._updateTitleMaxWidth()}_showTooltipOverrideCallback(){}_updateHideInvisibleHoverMode(e){null!==this._el&&this._el.classList.toggle(he.hideInvisibleHover,e)}_updateHideValuesMode(e){
|
|
null!==this._el&&this._el.classList.toggle(he.hideValues,e)}_showActions(){if(null===this._el||!this._withActions)return;this._el.classList.add(he.withAction),this._toggleHiddenActions?.(!0);const e=this._valuesParentEl?.offsetTop===this._titlesWrapperEl?.offsetTop;this._el.classList.toggle(he.withTail,e),this._updateTitleMaxWidth()}_hideActions(){null!==this._el&&this._withActions&&(this._el.classList.remove(he.withAction),this._toggleHiddenActions?.(!1),null!==this._valuesParentEl&&this._valuesParentEl.classList.remove(he.withTail),this._updateTitleMaxWidth())}_handlerRestrictTitleWidth(e){if(null===this._actionsParentEl||null===this._firstBlockWrapper)return;let t=null,i=!1;for(const s of e)s.target===this._actionsParentEl&&(t=s.contentRect.width),s.target===this._el&&(i=!0);(t!==this._lastActionsWrapperWidth||i)&&(null!==t&&(this._lastActionsWrapperWidth=t),this._updateTitleMaxWidth())}_clearDisableState(){null!==this._el&&(this._el.classList.remove(he.eyeLoading),this._el.classList.remove(he.disabled),this._updateStatusWidgetVisibility(this._disabled.value()),this._updateTitleMaxWidth())}_updateDisabledOnIntervalState(){this._el?.classList.toggle(he.disabledOnInterval,this._disabledOnInterval.value())}_updateSelectedState(){null!==this._el&&this._withActions&&this._el.classList.toggle(he.selected,this._selected.value())}_updateShowTitles(){null!==this._titlesWrapperEl&&(this._titlesWrapperEl.classList.toggle(X.blockHidden,this._isTitleHidden.value()),null!==this._actionsParentEl&&this._actionsParentEl.classList.toggle(X.blockHidden,this._isTitleHidden.value()))}_updateValues(){this._removeValuesSpawnsSubscriptions(),this._createValuesSpawns(),null!==this._valuesParentEl&&null!==this._valuesAdditionalWrapperEl&&(this._valuesElements=[],this._valuesAdditionalWrapperEl.innerHTML=""),this._renderValues(),this._addValuesSpawnsSubscriptions(),this._updateShowValues()}_updateActionVisibilities(e){null!==this._actionsParentEl&&this._actionsParentEl.querySelectorAll(`.${he.button}`)[e].classList.toggle(X.blockHidden,!this._actionsSpawnArray[e].visible.value())}_updateActionTitle(e){const t=this._actionsSpawnArray[e].title;if(null===this._actionsParentEl||null===t)return;const i=this._actionsParentEl.querySelectorAll(`.${he.button}`)[e];i.setAttribute("title",t.value()),i.hasAttribute("aria-label")&&i.setAttribute("aria-label",t.value()),i.dispatchEvent(new CustomEvent("common-tooltip-update"))}_updateActionActiveStatus(e){const{active:t}=this._actionsSpawnArray[e];null!==this._actionsParentEl&&t&&this._actionsParentEl.querySelectorAll(`.${he.button}`).forEach(((i,s)=>{e===s&&i.classList.toggle(he.button__active,t.value())}))}_updateCustomTextColor(){const e=this._customTextColor.value()||"";for(const t of this._titleContainers)null!==t&&(t.style.color=e);const t=(0,o.ensureNotNull)(this._valuesParentEl).querySelectorAll(`.${he.valueTitle}`);for(let i=0;i<t.length;i++)t[i].style.color=e;(0,o.ensureNotNull)(this._el).classList.toggle(he.withCustomTextColor,Boolean(e))}_updateStatusWidgetVisibility(e){
|
|
null!==this._statusesWrapper&&(e?(this._statusesWidgetDestroy?.(),this._statusesWidgetDestroy=void 0):this._statusesWidgetDestroy=f({container:this._statusesWrapper,statuses:this._statusesWidgetState?.visibleModels()??new L.WatchedValue([]).readonly(),tooltip:this._statusesWidgetState?.tooltip()??new L.WatchedValue("").readonly(),theme:ve,showTooltipOverrideCallback:this._showTooltipOverrideCallback()}))}_isTitleWithSymbolLogo(e){return 8===e.id||0===e.id}}const Se=p.isSafari?"click":"auxclick";class ye extends we{constructor(e,t,i){super(e,t,i),this._wheelClickHandler=null,this._canUpdateRowVisibility=!0,this._globalRowVisibility=this._model.globalVisibility().spawn(),this._globalRowVisibility.subscribe(this._updateShowLine.bind(this),{callWithLast:!0}),this._has5Buttons=this._model.isAbleShowSourceCode().spawn(),this._has5Buttons.subscribe(this._update5ButtonsStyles.bind(this),{callWithLast:!0}),this._updateStates(!this._disabled.value()),i.statusesWidgetState&&this._addStatusesWidget(i.statusesWidgetState),this._selected.subscribe(this._updateTitleMaxWidth.bind(this)),i.withActions&&(this._wheelClickHandler=this._onWheelClicked.bind(this),null!==this._titlesWrapperEl&&this._titlesWrapperEl.addEventListener(Se,this._wheelClickHandler))}destroy(){this._has5Buttons.destroy(),this._globalRowVisibility&&this._globalRowVisibility.destroy(),null!==this._wheelClickHandler&&null!==this._titlesWrapperEl&&this._titlesWrapperEl.removeEventListener(Se,this._wheelClickHandler),super.destroy()}accessibleButtons(){return this._globalRowVisibility.value()?super.accessibleButtons():[]}_updateActionsVisibilitiesByMode(){if(!this._withActions)return;const e=this._model.actions(),t=[];let i=[];if(2===this._rowMode||1===this._rowMode)e[0].visible.value()&&t.push(this._actionElements[0]),e[this._actionElements.length-1].visible.value()&&t.push(this._actionElements[this._actionElements.length-1]),i=this._actionElements.slice(1,this._actionElements.length-1);else for(let i=0;i<this._actionElements.length-1;i++)e[i].visible.value()&&t.push(this._actionElements[i]);i.forEach((e=>e.classList.toggle(X.blockHidden,!0))),t.forEach((e=>e.classList.toggle(X.blockHidden,!1)))}_updateShowLine(){if(null===this._el||!this._canUpdateRowVisibility)return;const e=!this._globalRowVisibility.value();e?this._el.classList.toggle(X.blockHidden,e):super._updateShowLine()}_getButtonsCount(){return this._actionElements.filter((e=>!e.classList.contains(X.blockHidden))).length}_render(){super._render();const e=(0,o.ensureNotNull)(this._el);e.classList.add(he.item,he.study),e.dataset.qaId="legend-source-item",e.dataset.entityId=this._model.getSource().id(),e.setAttribute("role","toolbar")}_getAttributesForTitleState(e){return 7===e.id||8===e.id?{dataQaId:"legend-source-title",className:he.mainTitle}:9===e.id?{dataQaId:"legend-source-description",className:he.inputTitle}:null}_renderValues(){const e=this._initWrappersIfNotInitialized(),t=this._values.value();for(const i of t){const t=document.createElement("div");t.dataset.testIdValueTitle=i.title.value(),
|
|
t.classList.add(he.valueItem),t.classList.toggle(X.blockHidden,!i.visible.value());const s=document.createElement("div");s.classList.add(he.valueValue),s.style.color=i.color.value()||"",s.appendChild(document.createTextNode(i.value.value()));const l=i.title.value();void 0!==l&&(s.classList.add("apply-common-tooltip"),s.title=l),t.appendChild(s),this._valuesElements.push({value:s}),e.appendChild(t)}}_updateValuesTitleHTMLElHandler(e,t=""){const i=(0,o.ensure)(this._valuesElements[e].value);i.classList.toggle("apply-common-tooltip",0!==t.length),i.title=t}_update5ButtonsStyles(e){null!==this._el&&(this._el.classList.toggle(he.has5Buttons,e),this._updateAllButtonsWidth())}_onWheelClicked(e){1===e.button&&this._model.onRemoveSource()}}var Ee=i(96375);class fe extends we{constructor(e,t,i){super(e,t,i),this._clientHeight=null,this._updateLinkedState=void 0,this._flagged=this._model.flagged().spawn(),this._flagged.subscribe(this._updateFlaggedState.bind(this)),this._updateStates(),i.statusesWidgetState&&this._addStatusesWidget(i.statusesWidgetState),this._selected.subscribe(this._updateTitleMaxWidth.bind(this))}destroy(){super.destroy(),this._flagged?.destroy()}getHeight(){return null===this._el?null:(null===this._clientHeight&&(this._clientHeight=this._el.clientHeight,0===this._clientHeight&&(this._clientHeight=null)),this._clientHeight)}_updateActionsVisibilitiesByMode(){if(!this._withActions)return;const e=[];let t=[];const i=this._model.actions();if(1===this._rowMode)i[this._actionElements.length-1].visible.value()&&e.push(this._actionElements[this._actionElements.length-1]),t=this._actionElements.slice(0,this._actionElements.length-1);else for(let t=0;t<this._actionElements.length;t++)i[t].visible.value()&&e.push(this._actionElements[t]);t.forEach((e=>e.classList.toggle(X.blockHidden,!0))),e.forEach((e=>e.classList.toggle(X.blockHidden,!1)))}_updateTitlesVisibilitiesByMode(){}_isTitleHiddenByMode(e){const t=e.id;return 2!==t&&3!==t&&4!==t?super._isTitleHiddenByMode(e):2===t&&this._isMultipleLayout.value()?1===this._titlesMode:3!==this._titlesMode}_hideTitleAndItsContainerIfRequired(e){const t=this._getTitleIndexByDataName(e);if(-1===t)return;const i=this._titlesStatesSpawn.value()[t],s=this._titleContainers[t],l=this._titleElements[t],o=this._isTitleHiddenByMode(i);s?.classList.toggle(X.blockHidden,o),l?.classList.toggle(X.blockHidden,o)}_getButtonsCount(){return 1===this._rowMode?1:this._actionElements.filter((e=>!e.classList.contains(X.blockHidden))).length}_render(){super._render();const e=(0,o.ensureNotNull)(this._el);e.classList.add(he.item,he.series),e.classList.toggle(he.onlyOneButtonCanBeStick,this._model.isOneButtonCanBeStick()),e.dataset.qaId="legend-series-item",e.setAttribute("role","toolbar")}_updateStates(){super._updateStates(),this._updateFlaggedState()}_renderValues(){const e=this._initWrappersIfNotInitialized(),t=this._values.value();for(const i of t){const t=document.createElement("div");t.dataset.testIdValueTitle=i.title.value(),t.classList.add(he.valueItem),
|
|
t.classList.toggle(X.blockHidden,!i.visible.value()),t.classList.toggle(he.unimportant,i.unimportant.value());const s=document.createElement("div"),l=i.title.value()||"",o=this._customTextColor.value()||"";s.classList.add(he.valueTitle),s.classList.toggle(X.blockHidden,0===l.length),s.appendChild(document.createTextNode(l)),s.style.color=o,t.appendChild(s);const a=document.createElement("div");a.classList.add(he.valueValue),a.style.color=i.color.value()||"",a.appendChild(document.createTextNode(i.value.value())),t.appendChild(a),this._valuesElements.push({title:s,value:a}),e.appendChild(t)}}_getAttributesForTitleState(e){switch(e.id){case 0:return{dataQaId:"legend-source-title",className:he.mainTitle};case 1:return{dataQaId:"legend-source-description",className:he.descTitle};case 2:return{dataQaId:"legend-source-interval",className:he.intervalTitle};case 3:return{dataQaId:"legend-source-provider",className:he.providerTitle};case 4:return{dataQaId:"legend-source-exchange",className:he.exchangeTitle};case 5:return{dataQaId:"legend-source-style",className:he.styleTitle};case 6:return{dataQaId:"legend-source-price-source",className:he.priceSourceTitle}}return null}_updateValuesTitleHTMLElHandler(e,t=""){const i=(0,o.ensure)(this._valuesElements[e].title);g(i,t),i.classList.toggle(X.blockHidden,0===t.length),this._updateShowValues()}_isWidthButtonsMode(){return null!==this._el&&(void 0!==this._flagged&&Boolean(this._flagged.value())||this._linked?.value()||super._isWidthButtonsMode())}_showTooltipOverrideCallback(){if((0,n.isFeaturesetEnabled)("disable_show_series_statuses_tooltip"))return e=>{Ee.emit("toggle_series_status_tooltip_inner",e,this._model.chartModelId())}}_updateFlaggedState(){if(void 0===this._flagged)return;(0,o.ensureNotNull)(this._el).classList.toggle(he.flagged,Boolean(this._flagged.value())),this._updateTitleMaxWidth()}_getTitleIndexByDataName(e){return this._titlesStatesSpawn.value().findIndex((t=>t.id===e))}}var Ce,Ve=i(71518),Me=i(24242),Le=i(95254),We=i(67548);!function(e){e[e.Default=0]="Default",e[e.Micro=1]="Micro"}(Ce||(Ce={}));const Ae=(0,C.mergeThemes)(E.DEFAULT_STATUS_RENDERER_THEME,{statusesWrap:he.statusesWrapper__statuses});class He{constructor(e,t,i){this._wrapperTogger=null,this._el=null,this._counterEl=null,this._arrowIconEL=null,this._objectTreeEl=null,this._loader=Y(null),this._mode=0,this._accessibleButtons=[],this._parentEl=e,this._themedColor=t.spawn(),this._themedColor.subscribe(this._updateThemedColor.bind(this)),this._showCollapserWithOneIndicator=i.showCollapserWithOneIndicator.spawn(),this._showCollapserWithOneIndicator.subscribe(this._updateVisibility.bind(this)),this._sourceCount=i.visibleDataSourceCount.spawn(),this._sourceCount.subscribe((()=>{this._updateSourceCount(),this._updateVisibility()})),this._isStateOpen=i.isDataSourcesCollapsed.spawn(),this._isStateOpen.subscribe((()=>{this._updateState(),this._updateVisibility()})),this._isMainPane=i.isMainPane.spawn(),this._isMainPane.subscribe(this._updateObjectTreeVisibility.bind(this)),
|
|
this._isPaneCollapsed=i.isPaneCollapsed.spawn(),this._isPaneCollapsed.subscribe(this._updateVisibility.bind(this)),this._combinedStatusWidgetEl=document.createElement("div"),this._combinedStatusesWidgetState=i.combinedStatusesWidgetState,this._combinedStatusesWidgetVisibility=this._combinedStatusesWidgetState.visibility().spawn(),this._combinedStatusesWidgetVisibility.subscribe(this._updateVisibility.bind(this)),this._render(),this._updateState(),this._updateVisibility(),this._updateThemedColor(this._themedColor.value()),this._updateObjectTreeVisibility(this._isMainPane.value()),this._isLoaderVisible=(0,r.combine)(((e,t)=>!e&&t[0]),this._isStateOpen.weakReference(),i.hasLoadingDataSources.weakReference()),this._isLoaderVisible.subscribe(this._loader.toggleVisibility,{callWithLast:!0}),this._toggleStateHandler=e=>{null!==this._el&&(e.cancelable&&e.preventDefault(),e instanceof KeyboardEvent||this._el?.blur(),1!==this._mode?i.onCollapseDataSources():i.onShowObjectsTreeDialog())},null!==this._el&&(this._el.addEventListener("touchend",this._toggleStateHandler),this._el.addEventListener("click",this._toggleStateHandler),this._el.addEventListener("contextmenu",(e=>{e.preventDefault(),e.stopPropagation()}))),this._updateSourceCount()}destroy(){this._isLoaderVisible.destroy(),this._loader.destroy(),this._isPaneCollapsed.destroy(),this._sourceCount.destroy(),this._isStateOpen.destroy(),this._showCollapserWithOneIndicator.destroy(),this._combinedStatusesWidgetVisibility.destroy(),this._combinedStatusesWidgetDestroy?.(),null!==this._objectTreeEl&&(this._objectTreeEl=null),this._arrowIconEL=null,this._counterEl=null,null!==this._el&&(this._el.removeEventListener("touchend",this._toggleStateHandler),this._el.removeEventListener("click",this._toggleStateHandler),this._el.innerHTML="",this._el=null)}accessibleButtons(){return null===this._el||this._el.classList.contains(he.onlyOneSourceShown)&&1!==this._mode?[]:this._accessibleButtons}setMode(e){this._mode=e?1:0,this._updateTooltip()}_render(){this._wrapperTogger=document.createElement("div"),this._wrapperTogger.classList.add(he.togglerWrapper),this._el=document.createElement("button"),this._el.className=`${he.toggler} apply-common-tooltip`,this._el.dataset.qaId="legend-toggler";const e=this._el;e.type="button",e.classList.add(he.accessible),e.tabIndex=-1;const t=t=>{if(null!==e)switch(t.type){case"roving-tabindex:main-element":e.tabIndex=0;break;case"roving-tabindex:secondary-element":e.tabIndex=-1}};e.addEventListener("roving-tabindex:main-element",t),e.addEventListener("roving-tabindex:secondary-element",t),e.addEventListener("keydown",(e=>{const t=(0,c.hashFromEvent)(e);13!==t&&32!==t||(e.preventDefault(),this._toggleStateHandler(e))})),this._accessibleButtons.push(e),this._arrowIconEL=document.createElement("div"),this._arrowIconEL.classList.add(he.iconArrow),this._arrowIconEL.innerHTML=v.trackingModeIsAvailable?Me:Ve,this._el.appendChild(this._arrowIconEL),this._objectTreeEl=document.createElement("div"),this._objectTreeEl.classList.add(he.objectTree),
|
|
this._objectTreeEl.innerHTML=v.trackingModeIsAvailable?We:Le,this._el.appendChild(this._objectTreeEl),this._counterEl=document.createElement("div"),this._counterEl.classList.add(he.counter),this._counterEl.appendChild(document.createTextNode(String(this._sourceCount.value()))),this._el.appendChild(this._counterEl),this._wrapperTogger.appendChild(this._el),this._combinedStatusWidgetEl.classList.add(he.statusesWrapper),this._combinedStatusWidgetEl.dataset.qaId="legend-statuses-wrapper",this._wrapperTogger.appendChild(this._combinedStatusWidgetEl),!this._isStateOpen.value()&&this._combinedStatusesWidgetVisibility.value()?this._combinedStatusesWidgetDestroy=f({container:this._combinedStatusWidgetEl,statuses:this._combinedStatusesWidgetState.visibleModels(),tooltip:this._combinedStatusesWidgetState.tooltip(),theme:Ae}):(this._combinedStatusesWidgetDestroy?.(),this._combinedStatusesWidgetDestroy=void 0),this._parentEl.appendChild(this._wrapperTogger),this._loader.mountTo(this._wrapperTogger)}_updateThemedColor(e){if(null!==this._el)if(e.length>0){const[t,i,s]=(0,u.parseRgb)(e);this._el.style.backgroundColor=(0,u.rgbaToString)([t,i,s,(0,u.normalizeAlphaComponent)(.8)])}else this._el.style.removeProperty("background-color")}_updateSourceCount(){const e=this._sourceCount.value(),t=(0,o.ensureNotNull)(this._counterEl);g(t,String(e)),t.classList.toggle(X.blockHidden,e<=1),this._parentEl.classList.toggle(he.saveArrowWidth,e<=1)}_updateVisibility(){const e=this._sourceCount.value(),t=(0,o.ensureNotNull)(this._el),i=1===e&&!this._showCollapserWithOneIndicator.value()&&(this._isStateOpen.value()||!this._combinedStatusesWidgetVisibility.value()),s=e<1||this._isPaneCollapsed.value()&&(this._isMainPane.value()||this._isStateOpen.value());t.classList.toggle(X.blockHidden,!!s),t.classList.toggle(he.onlyOneSourceShown,i),t.dataset.qaId=`${t.dataset.qaId}${s?" hidden":""}${i?" only-one-source-shown":""}`,(0,o.ensureNotNull)(this._wrapperTogger).classList.toggle(X.blockHidden,i),!this._isStateOpen.value()&&this._combinedStatusesWidgetVisibility.value()?this._combinedStatusesWidgetDestroy=f({container:this._combinedStatusWidgetEl,statuses:this._combinedStatusesWidgetState.visibleModels(),tooltip:this._combinedStatusesWidgetState.tooltip(),theme:Ae}):(this._combinedStatusesWidgetDestroy?.(),this._combinedStatusesWidgetDestroy=void 0)}_updateState(){const e=!this._isStateOpen.value();this._parentEl.classList.toggle(he.closed,e),this._updateTooltip(),P((e?"Hide":"Show")+" not main sources")}_tooltip(){if(1===this._mode)return k.t(null,void 0,i(52616));const e=this._sourceCount.value(),t=k.t(null,{plural:"Hide indicators legend",count:e},i(32828)),s=k.t(null,{plural:"Show indicators legend",count:e},i(92712));return this._isStateOpen.value()?t:s}_updateTooltip(){if(null!==this._el){const e=this._tooltip();this._el.setAttribute("title",e),this._el.setAttribute("aria-label",e),this._el.dispatchEvent(new CustomEvent("common-tooltip-update"))}}_updateObjectTreeVisibility(e){(0,o.ensureNotNull)(this._el).classList.toggle(he.objectsTreeCanBeShown,e)}
|
|
}var xe;!function(e){e[e.Medium=222]="Medium",e[e.Small=205]="Small",e[e.Tiny=133]="Tiny",e[e.HideUnimportantValues=272]="HideUnimportantValues",e[e.SeriesDirectionColumn=542]="SeriesDirectionColumn",e[e.HideExchangeIntevalProvider=442]="HideExchangeIntevalProvider",e[e.HideIntervalMultiChart=192]="HideIntervalMultiChart"}(xe||(xe={}));const Te=(0,n.isFeaturesetEnabled)("object_tree_legend_mode"),Be=[27,9,37,39,38,40],ke=(0,C.mergeThemes)(E.DEFAULT_STATUS_RENDERER_THEME,{statusesWrap:he.statusesWrapper__statuses});class De{constructor(e,t){this._mode=4,this._renderToggler=null,this._mainDataSourceRenderer=null,this._dataSourceRenderers=[],this._parentEl=document.createElement("div"),this._mainDataSourceEl=null,this._dataSourcesEl=null,this._dataSourcesAdditionalWrapperEl=null,this._collapsedDataSourcesWrapperEl=null,this._collapsedDataSourcesEl=null,this._outsideEventForCollapsedTooltip=null,this._onKeyboardNavigationActivationBound=this._onKeyboardNavigationActivation.bind(this),this._onIsDataSourcesCollapsedBound=this._onIsDataSourcesCollapsed.bind(this),this._focusEventAbortController=null,this._toggleHiddenActionsTimeoutID=null,this._loader=Y(null),this._toggleHiddenActions=e=>{this._toggleHiddenActionsTimeoutID&&(clearTimeout(this._toggleHiddenActionsTimeoutID),this._toggleHiddenActionsTimeoutID=null),e?this._parentEl.classList.toggle(he.legend_withHiddenActions,e):this._toggleHiddenActionsTimeoutID=setTimeout((()=>this._parentEl.classList.toggle(he.legend_withHiddenActions,e)),100)},this._options=e,this._togglerOptions=t,this._isStudiesLegendHidden=e.isStudiesLegendHidden.spawn(),this._isStudiesLegendHidden.subscribe(this._updateLegendVisibility.bind(this)),this._isAllLegendHidden=e.isAllLegendHidden.spawn(),this._isAllLegendHidden.subscribe(this._updateLegendVisibility.bind(this)),this._updateLegendVisibility(),this._hideAllExceptFirstLine=e.hideAllExceptFirstLine.spawn(),this._hideAllExceptFirstLine.subscribe(this._updateAllHiddenExeptFirstLine.bind(this)),this._themedColor=e.themedColor.spawn(),this._themedColor.subscribe(this._setCustomBg.bind(this)),this._showBackground=e.showBackground.spawn(),this._showBackground.subscribe(this._setCustomBg.bind(this)),this._backgroundTransparency=e.backgroundTransparency.spawn(),this._backgroundTransparency.subscribe(this._setCustomBg.bind(this)),this._collapsedDataSourcesCountSpawn=e.collapsedDataSourcesCount.spawn(),this._collapsedDataSourcesCountSpawn.subscribe(this._updateCollapsedSourcesCount.bind(this)),this._collapsedDataSourcesStatusWidgetElement=document.createElement("div"),this._collapsedStatusesWidgetState=e.combinedStatusesWidgetState,this._collapsedStatusesWidgetVisibility=this._collapsedStatusesWidgetState.visibility().spawn(),this._collapsedStatusesWidgetVisibility.subscribe((()=>this._updateCollapsedSourcesCount(this._collapsedDataSourcesCountSpawn.value()))),this._showCollapsedDataSourcesTooltipHandler=this._showCollapsedDataSourcesTooltip.bind(this),this._parentEl.classList.add(he.legend),
|
|
this._parentEl.classList.toggle(he.noWrap,!v.trackingModeIsAvailable),this._parentEl.classList.toggle(he.noActions,!this._options.withActions),this._parentEl.classList.toggle(he.touchMode,v.trackingModeIsAvailable),this._parentEl.classList.toggle(he.wrappable,!this._hideAllExceptFirstLine.value()),this._parentEl.dataset.qaId="legend",this._parentEl.setAttribute("data-tooltip-show-on-focus","true"),this._parentEl.style.setProperty("--legend-source-item-button-width",`${M}px`);const i=t=>{t.preventDefault(),e.showLegendWidgetContextMenu(t)};this._mouseEventHandler=new V.MouseEventHandler(this._parentEl,{contextMenuEvent:i,touchContextMenuEvent:i}),window.addEventListener("keyboard-navigation-activation",this._onKeyboardNavigationActivationBound),this._parentEl.addEventListener("keydown",this._handleKeyDown.bind(this)),this._options.onLayoutChanged.subscribe(this,this._onLayoutChanged),this._isLoaderVisible=(0,r.combine)((e=>e[1]),e.hasLoadingDataSources.weakReference()),this._isLoaderVisible.subscribe(this._loader.toggleVisibility,{callWithLast:!0})}destroy(){this._isLoaderVisible.destroy(),this._loader.destroy(),this._focusEventAbortController?.abort();const e=document.activeElement;let t=-1;if(De._wasKeyboardNavigationActivated&&e instanceof HTMLButtonElement){null!==this._getRowRendererByChild(e)&&(t=(0,m.queryTabbableElements)(document.body).indexOf(e))}if(this._collapsedStatusesWidgetDestroy?.(),this._isStudiesLegendHidden.destroy(),this._isAllLegendHidden.destroy(),this._hideAllExceptFirstLine.destroy(),this._themedColor.destroy(),this._showBackground.destroy(),this._backgroundTransparency.destroy(),this._collapsedDataSourcesCountSpawn.destroy(),this._collapsedStatusesWidgetVisibility.destroy(),v.trackingModeIsAvailable&&null!==this._collapsedDataSourcesWrapperEl&&this._collapsedDataSourcesWrapperEl.removeEventListener("touchend",this._showCollapsedDataSourcesTooltipHandler),this._outsideEventForCollapsedTooltip&&this._outsideEventForCollapsedTooltip(),null!==this._dataSourcesAdditionalWrapperEl&&(this._dataSourcesAdditionalWrapperEl.innerHTML="",this._dataSourcesAdditionalWrapperEl=null),null!==this._dataSourcesEl&&(this._dataSourcesEl.innerHTML="",this._dataSourcesEl=null),this._togglerOptions.isDataSourcesCollapsed.unsubscribe(this._onIsDataSourcesCollapsedBound),null!==this._renderToggler&&(this._renderToggler.destroy(),this._renderToggler=null),null!==this._mainDataSourceRenderer&&(this._mainDataSourceRenderer.destroy(),this._mainDataSourceRenderer=null),0!==this._dataSourceRenderers.length){for(const e of this._dataSourceRenderers)e.destroy();this._dataSourceRenderers=[]}if(this._mouseEventHandler.destroy(),this._parentEl.innerHTML="",delete this._parentEl,window.removeEventListener("keyboard-navigation-activation",this._onKeyboardNavigationActivationBound),-1!==t){let e;window.dispatchEvent(new CustomEvent("keyboard-navigation-activation",{bubbles:!0}));const i=(0,m.queryTabbableElements)(document.body);e=t===i.length?i[0]:i[t],e&&e.focus()}}addCustomWidget(e,t){if(0===t.block){
|
|
this._renderMainDataSourceEl();const i=(0,o.ensureNotNull)(this._mainDataSourceEl);1===t.position&&e.renderTo(i,i.firstChild),0===t.position&&e.renderTo(i)}if(1===t.block){this._renderDataSourcesEl();const i=(0,o.ensureNotNull)(this._dataSourcesAdditionalWrapperEl);1===t.position&&e.renderTo(i,i.firstChild),0===t.position&&e.renderTo(i)}}firstTitle(){return this._parentEl.firstElementChild}getElement(){return this._parentEl}updateMode(e){const t=Te&&e<133?1:e<205?2:e<222?3:4,i=e<192?1:e<442?2:3;this._mode=t,null!==this._mainDataSourceRenderer&&this._mainDataSourceRenderer.updateMode(t,i);for(const e of this._dataSourceRenderers)e.updateMode(t,i);this._parentEl.classList.toggle(he.medium,3===t),this._parentEl.classList.toggle(he.minimized,2===t),this._parentEl.classList.toggle(he.micro,1===t),null!==this._renderToggler&&this._renderToggler.setMode(1===t);const s=!this._hideAllExceptFirstLine.value()&&(v.trackingModeIsAvailable||e<542);this._parentEl.classList.toggle(he.directionColumn,s),this._parentEl.classList.toggle(he.hideUniportantValueItems,!p.CheckMobile.any()&&e<=272)}getMainSourceHeight(){return null===this._mainDataSourceRenderer?0:this._mainDataSourceRenderer.getHeight()}getDataSourceHeight(){return 0===this._dataSourceRenderers.length?0:this._dataSourceRenderers[0].getHeight()}_renderMainDataSourceEl(){null===this._mainDataSourceEl&&(this._mainDataSourceEl=document.createElement("div"),this._mainDataSourceEl.classList.add(he.legendMainSourceWrapper),this._parentEl.insertBefore(this._mainDataSourceEl,this._dataSourcesEl))}_renderDataSourcesEl(){null===this._dataSourcesEl&&(this._dataSourcesEl=document.createElement("div"),this._dataSourcesEl.classList.add(he.sourcesWrapper),this._renderToggle(this._dataSourcesEl),this._dataSourcesAdditionalWrapperEl=document.createElement("div"),this._dataSourcesAdditionalWrapperEl.classList.add(he.sources),this._dataSourcesEl.appendChild(this._dataSourcesAdditionalWrapperEl),this._renderCollapsedCounter(this._dataSourcesAdditionalWrapperEl),this._parentEl.appendChild(this._dataSourcesEl))}_renderToggle(e){this._options.showToggleButton&&(this._renderToggler=new He(e,this._options.themedColor,this._togglerOptions))}_onIsDataSourcesCollapsed(e){if(e){const e=this._getAllAccessibleButtons();if(0===e.filter((e=>e.tabIndex>=0)).length){const t=this._getRowRendererByChild(e[0]);t&&this._makeRowElementTheMainOne(e[0],t)}return}if(0!==(this._mainDataSourceRenderer?.accessibleButtons()||[]).filter((e=>e.tabIndex>=0)).length)return;const t=[];this._dataSourceRenderers.forEach((e=>t.push(...e.accessibleButtons())));const i=t.filter((e=>e.tabIndex>=0));if(0!==i.length){this._focusEventAbortController&&this._focusEventAbortController.abort(),i.forEach((e=>(0,b.becomeSecondaryElement)(e)));let e=null,t=null;if(this._mainDataSourceRenderer){const i=this._mainDataSourceRenderer.accessibleButtons();i.length>0&&(e=i[0],t=this._mainDataSourceRenderer)}null===e&&this._renderToggler&&(e=this._renderToggler.accessibleButtons()[0],t=this._renderToggler),e&&t&&this._makeRowElementTheMainOne(e,t)}
|
|
}_renderCollapsedCounter(e){this._collapsedDataSourcesWrapperEl=document.createElement("div"),this._collapsedDataSourcesWrapperEl.className=`${he.item} ${he.last}`,this._collapsedDataSourcesEl=document.createElement("span"),this._collapsedDataSourcesEl.className=`${he.text} apply-common-tooltip`,this._collapsedDataSourcesWrapperEl.append(this._collapsedDataSourcesEl),this._collapsedDataSourcesStatusWidgetElement.classList.add(he.statusesWrapper),this._collapsedDataSourcesStatusWidgetElement.dataset.qaId="legend-statuses-wrapper",this._collapsedDataSourcesWrapperEl.appendChild(this._collapsedDataSourcesStatusWidgetElement),e.append(this._collapsedDataSourcesWrapperEl),v.trackingModeIsAvailable&&this._collapsedDataSourcesWrapperEl.addEventListener("touchend",this._showCollapsedDataSourcesTooltipHandler);const t=this._collapsedDataSourcesCountSpawn.value();this._updateCollapsedSourcesCount(t),this._loader.mountTo(this._collapsedDataSourcesWrapperEl)}_showCollapsedDataSourcesTooltip(){(0,w.showOnElement)(this._collapsedDataSourcesEl,{text:this._options.collapsedDataSourcesTitle.value()}),this._addOutsideEventForHideTooltip()}_addOutsideEventForHideTooltip(){null!==this._outsideEventForCollapsedTooltip&&this._outsideEventForCollapsedTooltip(),this._outsideEventForCollapsedTooltip=(0,_.addOutsideEventListener)(new CustomEvent("timestamp").timeStamp,this._collapsedDataSourcesWrapperEl,(()=>{null!==this._outsideEventForCollapsedTooltip&&this._outsideEventForCollapsedTooltip(),(0,w.hide)()}),window.document,{touchEnd:!0})}_updateCollapsedSourcesCount(e){if(null===this._collapsedDataSourcesWrapperEl||null===this._collapsedDataSourcesEl)return;const t=0===e;this._collapsedDataSourcesWrapperEl.classList.toggle(X.blockHidden,t),!t&&this._collapsedStatusesWidgetVisibility.value()?this._collapsedStatusesWidgetDestroy=f({container:this._collapsedDataSourcesStatusWidgetElement,statuses:this._collapsedStatusesWidgetState.visibleModels(),tooltip:this._collapsedStatusesWidgetState.tooltip(),theme:ke}):(this._collapsedStatusesWidgetDestroy?.(),this._collapsedStatusesWidgetDestroy=void 0),t||(g(this._collapsedDataSourcesEl,`+${e}`),this._collapsedDataSourcesEl.setAttribute("title",this._options.collapsedDataSourcesTitle.value()))}_updateLegendVisibility(){let e;const t=De._wasKeyboardNavigationActivated&&(this._isAllLegendHidden.value()||this._isStudiesLegendHidden.value());if(t){e=this._getAllAccessibleButtons().filter((e=>e.tabIndex>=0))[0]}if(this._parentEl.classList.toggle(X.blockHidden,this._isAllLegendHidden.value()),null!==this._dataSourcesEl&&this._dataSourcesEl.classList.toggle(X.blockHidden,this._isStudiesLegendHidden.value()),t){const t=this._getAllAccessibleButtons();if(e&&t.includes(e))return;if(e&&(0,b.becomeSecondaryElement)(e),0!==t.length){const e=this._getRowRendererByChild(t[0]);e&&this._makeRowElementTheMainOne(t[0],e)}}}_updateAllHiddenExeptFirstLine(){this._parentEl.classList.toggle(he.wrappable,!this._hideAllExceptFirstLine.value())}_setCustomBg(){
|
|
const e=this._showBackground.value(),t=this._themedColor.value(),i=this._backgroundTransparency.value();let s="";if(e){const[e,l,o]=(0,u.parseRgb)(t);s=(0,u.rgbaToString)([e,l,o,(0,u.normalizeAlphaComponent)(1-i/100)])}this._parentEl.style.color=s}_onLayoutChanged(e){const{newMainSource:t,removedDataSources:i,addedDataSources:s,movedDataSources:l}=e,o=document.activeElement;let a=-1,n=-1;const r=null===this._mainDataSourceRenderer&&0===this._dataSourceRenderers.length;if(De._wasKeyboardNavigationActivated&&o instanceof HTMLButtonElement){const e=this._getRowRenderers(),l=e.find((e=>e.accessibleButtons().includes(o)));if(void 0!==l){const r=l===this._mainDataSourceRenderer&&null===t,d=l instanceof ye&&i.includes(this._dataSourceRenderers.indexOf(l));if(r||d){a=e.indexOf(l);const r=(0,m.queryTabbableElements)(document.body).indexOf(o);n=0!==s.length||(void 0!==t||null!==this._mainDataSourceRenderer)&&null!==t||i.length!==this._dataSourceRenderers.length&&0!==this._dataSourceRenderers.length?r+1:r}}}void 0!==t&&(null!==t?this._addMainDataSource(t.model,t.statusesWidgetState):(this._mainDataSourceRenderer?.destroy(),this._mainDataSourceRenderer=null));const d=[];if(l.forEach((e=>{d.push({renderer:this._dataSourceRenderers[e.oldIndex],newIndex:e.newIndex})})),d.sort(((e,t)=>e.newIndex-t.newIndex)),i.forEach((e=>{this._dataSourceRenderers.splice(e,1)[0].destroy()})),0!==s.length&&(this._renderDataSourcesEl(),s.forEach((e=>{this._addDataSource(e.model,e.statusesWidgetState,e.index)}))),0!==d.length&&(this._renderDataSourcesEl(),d.forEach((e=>{this._moveDataSource(e.renderer,e.newIndex)}))),De._wasKeyboardNavigationActivated&&r&&(null!==this._mainDataSourceRenderer||this._dataSourceRenderers.length)&&window.dispatchEvent(new CustomEvent("keyboard-navigation-activation",{bubbles:!0})),-1!==a){let e,t;const i=this._getRowRenderers();for(;a<i.length;){const s=i[a],l=s.accessibleButtons();if(l.length>0){e=l[0],t=s;break}a++}if(e&&t)this._changeFocusElement(e,t);else if(-1!==n){window.dispatchEvent(new CustomEvent("keyboard-navigation-activation",{bubbles:!0}));const t=(0,m.queryTabbableElements)(document.body);e=n===t.length?t[0]:t[n],e&&(o&&(0,b.becomeSecondaryElement)(o),e.focus())}}}_addMainDataSource(e,t){this._renderMainDataSourceEl(),this._mainDataSourceRenderer=new fe(e,(0,o.ensureNotNull)(this._mainDataSourceEl),{withActions:this._options.withActions,customTextColor:this._options.customTextColor,statusesWidgetState:t,isMultipleLayout:this._options.isMultipleLayout,toggleHiddenActions:this._toggleHiddenActions}),this._updateLegendVisibility()}_addDataSource(e,t,i){const s=(0,o.ensureNotNull)(this._dataSourcesAdditionalWrapperEl),l=new ye(e,s,{withActions:this._options.withActions,customTextColor:this._options.customTextColor,statusesWidgetState:t,isMultipleLayout:this._options.isMultipleLayout,toggleHiddenActions:this._toggleHiddenActions}),a=(0,o.ensureNotNull)(l.getElement());if(null!==a){let e=this._dataSourceRenderers[i];void 0!==e?s.insertBefore(a,e.getElement()):(e=this._dataSourceRenderers[i-1],
|
|
void 0!==e&&s.insertBefore(a,(0,o.ensureNotNull)(e.getElement()).nextSibling))}this._dataSourceRenderers.splice(i,0,l),this._updateLegendVisibility()}_moveDataSource(e,t){const i=this._dataSourceRenderers.indexOf(e);if(-1===i||t===i)return;const s=(0,o.ensureNotNull)(this._dataSourcesAdditionalWrapperEl),l=(0,o.ensureNotNull)(e.getElement());let a=this._dataSourceRenderers[t];void 0!==a?s.insertBefore(l,a.getElement()):(a=this._dataSourceRenderers[t-1],void 0!==a&&s.insertBefore(l,(0,o.ensureNotNull)(a.getElement()).nextSibling)),this._dataSourceRenderers.splice(i,1),this._dataSourceRenderers.splice(t,0,e)}_onKeyboardNavigationActivation(){De._wasKeyboardNavigationActivated=!0,this._togglerOptions.isDataSourcesCollapsed.unsubscribe(this._onIsDataSourcesCollapsedBound),this._togglerOptions.isDataSourcesCollapsed.subscribe(this._onIsDataSourcesCollapsedBound);const e=this._getAllAccessibleButtons(),t=e.filter((e=>e.tabIndex>=0));if(0===t.length){const[t]=e.filter((e=>e.hasAttribute("tabIndex")));if(void 0===t)return;const i=this._getRowRendererByChild(t);if(null===i)return;this._makeRowElementTheMainOne(t,i)}if(t.length>1){const[,...e]=t;for(const t of e)(0,b.becomeSecondaryElement)(t)}}_handleKeyDown(e){if(e.defaultPrevented)return;const t=(0,c.hashFromEvent)(e);if(!Be.includes(t))return;const i=document.activeElement;if(!(i instanceof HTMLButtonElement))return;const s=this._getRowRendererByChild(i);if(null===s)return;if(27===t)return void i.blur();const l=s.accessibleButtons(),o=l.indexOf(i);if(0===l.length||-1===o)return;const a=t=>{e.preventDefault();const i=this._getRowRenderers(),l=i.indexOf(s);let o,a,n="blockNext"===t?l+1:l-1;for(;n>=0&&n<i.length;){const e=i[n],s=e.accessibleButtons();if(0!==s.length){o=e,a=s;break}n="blockNext"===t?n+1:n-1}o&&a&&this._changeFocusElement(a[0],o)},n=(0,m.mapKeyCodeToDirection)(t);switch(n){case"inlinePrev":e.preventDefault(),this._changeFocusElement(0!==o?l[o-1]:l[l.length-1],s);break;case"inlineNext":e.preventDefault(),this._changeFocusElement(o!==l.length-1?l[o+1]:l[0],s);break;case"blockPrev":case"blockNext":a(n)}}_subscribeElementToFocusEvents(e,t){this._focusEventAbortController=new AbortController,e.addEventListener("focusin",(()=>{this._focusEventAbortController=new AbortController,e.addEventListener("focusout",(i=>{const s=i.relatedTarget;null!==s&&s instanceof HTMLButtonElement&&t.accessibleButtons().includes(s)||(this._subscribeElementToFocusEvents(e,t),t instanceof He||t.hideActions())}),{once:!0,signal:this._focusEventAbortController.signal}),this._options.onLegendRowFocused(),t instanceof He||t.showActions()}),{once:!0,signal:this._focusEventAbortController.signal})}_makeRowElementTheMainOne(e,t){this._subscribeElementToFocusEvents(e,t),(0,b.becomeMainElement)(e)}_changeFocusElement(e,t){document.activeElement&&(0,b.becomeSecondaryElement)(document.activeElement),this._makeRowElementTheMainOne(e,t),e.focus()}_getRowRenderers(){let e=[];return this._mainDataSourceRenderer&&e.push(this._mainDataSourceRenderer),
|
|
this._dataSourcesEl&&!this._dataSourcesEl.classList.contains(X.blockHidden)&&(this._togglerOptions.isDataSourcesCollapsed.value()&&1!==this._mode&&(e=e.concat(this._dataSourceRenderers)),this._renderToggler&&0!==this._dataSourceRenderers.length&&e.push(this._renderToggler)),e}_getAllAccessibleButtons(){const e=[];return this._getRowRenderers().forEach((t=>{e.push(...t.accessibleButtons())})),e}_getRowRendererByChild(e){return this._getRowRenderers().find((t=>t.accessibleButtons().includes(e)))??null}}De._wasKeyboardNavigationActivated=!1;var Ie=i(59793),Pe=i(20707),Re=i(11624),Ne=i(27942),Oe=i(42016),ze=i(90141),Fe=i(49698),Ue=i(93645),Ze=i(75595),je=i(19050);const Qe=(0,n.isFeaturesetEnabled)("show_symbol_logos")&&(0,n.isFeaturesetEnabled)("show_symbol_logo_in_legend"),$e=new je.CircularCacheBuffer(100);class Ge{constructor(e,t){this._symbolLogoUrls=new h.WatchedValue([]),this._logoDataUpdated=()=>{const e=this.symbol(),t=this._logoData.value();t&&e&&$e.set(e,t);const i=$e.get(e);i?this._symbolLogoUrls.setValue((0,Fe.removeUsdFromCryptoPairLogos)((0,Fe.resolveLogoUrlsFromLogoData)(i,Ue.LogoSize.Medium))):this._symbolLogoUrls.setValue([])},this._logoModel=e,this._isLogoVisible=(0,Ze.createWVFromGetterAndSubscription)((()=>t.showLogo.value()),t.showLogo),this._logoData=this._logoModel.logoData().spawn(),this._logoData.subscribe(this._logoDataUpdated,{callWithLast:!0})}destroy(){this._isLogoVisible.destroy(),this._logoModel.destroy()}isSymbolLogoVisible(){return this._isLogoVisible}symbolLogoUrls(){return this._symbolLogoUrls}symbol(){return this._logoModel.symbol()}update(){this._logoModel.update()}}function qe(e,t){return Qe?new Ge(e,t):null}var Ke=i(10156),Je=i(73775),Xe=i(20833);const Ye=(0,Je.getLogger)("Chart.LegendWidget");class et{constructor(e){this._logoData=new L.WatchedValue(null),this._prevSymbol="",this._source=e,this._source.symbolResolved().subscribe(this,this._onSourceSymbolResolved),this.update()}destroy(){this._source.symbolResolved().unsubscribeAll(this)}symbol(){return this._source.symbol()}logoData(){return this._logoData}update(){const e=this.symbol();this._prevSymbol!==e&&(this._prevSymbol=e,this._onSourceSymbolResolved())}_onQuoteSymbolDataUpdated(e,t){const i=t.values;!this._source.symbolSameAsCurrent(e.values.pro_name)||void 0===i.logoid&&void 0===i["currency-logoid"]&&void 0===i["base-currency-logoid"]||this._logoData.setValue((0,Xe.logoDataFromQuotes)(i))}async _onSourceSymbolChange(){const e=this.symbol();let t=null;try{this._logoData.setValue(null),t=await this._source.quotesProvider().quotesSnapshot(e)}catch(e){Ye.logWarn(`Quote snapshot error: ${e}`)}finally{this.symbol()===e&&(null===t?this._logoData.setValue(null,!0):this._logoData.setValue((0,Xe.logoDataFromQuotes)(t)))}}_onSourceSymbolResolved(){{const e=this._source.symbolInfo(),t=e?.logo_urls||[];if(1===t.length)return void this._logoData.setValue({style:"single",logoid:t[0]});if(2===t.length)return void this._logoData.setValue({style:"pair",logoid:t[0],logoid2:t[1]});this._logoData.setValue(null,!0)}}}
|
|
var tt=i(3031),it=i(56646),st=i(96947),lt=i(13810);const ot=k.t(null,void 0,i(94947)),at=k.t(null,void 0,i(6486)),nt=k.t(null,void 0,i(75165)),rt=k.t(null,void 0,i(2665)),dt=k.t(null,void 0,i(97770)),ht=(0,n.isFeaturesetEnabled)("legend_inplace_edit"),ut=(0,n.isFeaturesetEnabled)("show_hide_button_in_legend"),ct=(0,n.isFeaturesetEnabled)("hide_resolution_in_legend"),_t=!(0,ze.isOnMobileAppPage)("any")||(0,n.isFeaturesetEnabled)("show_native_symbol_search_on_tap_in_legend");class pt extends q{constructor(e,t,i,s,l){super(e,t,i,s,l),this._symbolMarker=null,this._symbolMarkerIcon=null,this._flagged=new h.WatchedValue(null),this._symbolAction=null,this._symbolForMarker=null,this._isOneButtonCanBeStick=!1,this._layoutChartSyncLegendRenderer=null,this._isChartLinked=new h.WatchedValue(!1).readonly().spawn(),this._createActions(),this._updateSymbolMarker();const o=this._model.model().properties().childs().paneProperties.childs().legendProperties.childs();this._symbolLogoViewModel.setValue(qe(new et(t),o)),o.showSeriesTitle.subscribe(this,(()=>{this._isTitleHidden.setValue(this._getTitleHiddenValue())})),this._isPriceSourceHidden=(0,Pe.createWVFromGetterAndSubscription)((()=>!o.showPriceSource.value()),o.showPriceSource),this._valuesVisibleProperty=(0,Pe.combineProperty)(((e,t,i,s)=>`${e}:${t}:${i}:${s}`),o.showSeriesOHLC.weakReference(),o.showBarChange.weakReference(),o.showVolume.weakReference(),o.showLastDayChange.weakReference()),this._valuesVisibleProperty.subscribe(null,(()=>{this.update(),this._isValuesHidden.setValue(this._getValuesHiddenValue())})),this.update(),this._source.statusWV().subscribe(this._updateLoadingStatus)}destroy(){super.destroy(),this._model.model().properties().childs().paneProperties.childs().legendProperties.childs().showSeriesTitle.unsubscribeAll(this),this._source.statusWV().unsubscribe(this._updateLoadingStatus),this._valuesVisibleProperty.destroy(),this._isPriceSourceHidden.destroy(),this._symbolMarker?.destroy()}flagged(){return this._flagged}linked(){return this._isChartLinked}async onShowSettings(e,t){this._source.userEditEnabled()&&await this._callbacks.showGeneralChartProperties(Ke.TabNames.symbol)}isOneButtonCanBeStick(){return this._isOneButtonCanBeStick}_updateTitles(){const e=(0,o.ensureNotNull)(this._source.statusView()).getSplitTitle(),t=[],i=this._getChangeSymbolCallback();let s=null;""!==(0,Ie.clean)(e.title,!0)&&(s={title:(0,Ie.clean)(e.title,!0),id:0,tooltip:i?rt:void 0,action:i?{fn:i,actionAllowedOnTouch:_t}:void 0},t.push(s));const l=(0,Ie.clean)(e.description,!0);""!==l&&t.push({title:l,id:1,tooltip:i?rt:void 0,action:i?{fn:i,actionAllowedOnTouch:_t}:void 0});const a=(0,Ie.clean)(e.interval,!0);if(""!==a&&!ct){const e=this._getChangeResolutionCallback();t.push({title:a,id:2,tooltip:e?dt:void 0,action:e?{fn:e,actionAllowedOnTouch:!1}:void 0})}const n=(0,Ie.clean)(e.provider,!0);""!==n&&t.push({title:n,id:3});const r=(0,Ie.clean)(e.listedExchange,!0);""!==r&&t.push({title:r,id:4});const d=(0,Ie.clean)(e.chartStyle,!0);""!==d&&t.push({title:d,id:5})
|
|
;const h=this._isPriceSourceHidden.value()?"":(0,Ie.clean)(e.priceSource,!0);""!==h&&t.push({title:h,id:6}),this._titles.setValue(t)}_updateValues(){const e=this._source.legendView(),t=this._values.value(),i=e.marketTitle(),s=e.marketTitle().length>0,l=e.items();if(0===t.length||t.length!==l.length+1){const e={value:new h.WatchedValue(""),color:new h.WatchedValue(""),visible:new h.WatchedValue(s),title:new h.WatchedValue(i),unimportant:new h.WatchedValue(!1)},t=l.map((e=>({value:new h.WatchedValue(e.value()),color:new h.WatchedValue(U(e.color())),visible:new h.WatchedValue(e.visible()),title:new h.WatchedValue(e.title()),unimportant:new h.WatchedValue(e.unimportant())})));this._values.setValue([e].concat(t))}else{t[0].title.setValue(i),t[0].visible.setValue(s);for(let e=0;e<l.length;e++){const i=l[e];t[e+1].value.setValue(i.value()),t[e+1].color.setValue(U(i.color())),t[e+1].visible.setValue(i.visible()),t[e+1].title.setValue(i.title())}}}_updateStates(){super._updateStates(),this._updateSymbolMarker()}_getDisabledOnIntervalState(){return!1}_getTitleHiddenValue(){return!this._model.model().properties().childs().paneProperties.childs().legendProperties.childs().showSeriesTitle.value()}_getValuesHiddenValue(){return!this._hasValues()||!this._valuesVisibleProperty.value().split(":").some((e=>"true"===e))}_getChangeSymbolCallback(){if(ht&&!(0,n.isFeaturesetEnabled)("disable_legend_inplace_symbol_change"))return this._changeSymbolCallback||=async e=>{const t=this._model.mainSeries(),i=t.symbol(),s=t.properties().childs().shortName.value(),l="option"===t.symbolInfo()?.type,o=t.symbolInfo()?.pro_name;let a=t.isSpread()?i:s||i||"";if((0,n.isFeaturesetEnabled)("symbol_search_option_chain_selector")&&l&&o){const e=await resolveUnderlyingSymbol(o);e&&(a={type:"option",value:o,underlying:e})}(0,Oe.showDialog)({defaultValue:a,enableOptionsChain:(0,n.isFeaturesetEnabled)("symbol_search_option_chain_selector"),onClose:e,searchType:"chart_status_line",trackResultsOptions:{trackResults:!1,emptySearchType:"empty_result__supercharts"}})}}_getChangeResolutionCallback(){if(ht&&!(0,n.isFeaturesetEnabled)("disable_legend_inplace_resolution_change"))return this._changeResolutionCallback||=e=>{(0,Ne.showChangeIntervalDialogAsync)({initVal:this._model.mainSeries().interval(),selectOnInit:!0,onClose:e})}}_createActions(){if(ut){const e=(0,Re.convertPropertyToWatchedValue)((0,Pe.combineProperty)((e=>!e),this._source.properties().childs().visible.weakReference())),t={icon:new Map([["large",it],["small",tt]]),action:(0,A.wrapHandlerWithPreventEvent)(this.onToggleDisabled.bind(this)),visible:e,className:he.eye,title:new h.WatchedValue(this._getEyeTitle()),dataQaId:"legend-show-hide-action"};this._actions.push(t),this._disabled.subscribe((()=>{t.title?.setValue(this._getEyeTitle())}))}{const e=new h.WatchedValue(!1);this._actions.push({icon:new Map([["large",lt],["small",st]]),action:t=>{e.setValue(!0),this._moreActionHandler(t,(()=>e.setValue(!1)))},visible:new h.WatchedValue(!0),active:e.readonly(),title:new h.WatchedValue(ot),
|
|
dataQaId:"legend-more-action"})}}_getMarkerTitle(){return null!==this._symbolMarker?this._symbolMarker.isMarked()?nt:at:""}_symbolActionHandler(e){(0,A.preventDefault)(e),null!==this._symbolMarker&&(this._updateSymbolMarker(),e instanceof KeyboardEvent&&this._symbolMarker.toggle(e),P("Change flag state"))}_updateSymbolMarker(){this._isOneButtonCanBeStick=!0}}var gt=i(62352),bt=i(96759),mt=i(5003),vt=i(95786),wt=i(66411),St=i(30288),yt=i(18816),Et=i(42415),ft=i(98590),Ct=i(45090),Vt=i(52673),Mt=i(63886),Lt=i(20525);const Wt=(0,Je.getLogger)("Chart.LegendWidget"),At=k.t(null,void 0,i(30586)),Ht=k.t(null,void 0,i(93402)),xt=k.t(null,void 0,i(91126)),Tt=k.t(null,void 0,i(94947)),Bt=k.t(null,void 0,i(88244)),kt=k.t(null,void 0,i(2665)),Dt=((0,n.isFeaturesetEnabled)("study_buttons_in_legend"),(0,n.isFeaturesetEnabled)("show_hide_button_in_legend")),It=(0,n.isFeaturesetEnabled)("property_pages"),Pt=(0,n.isFeaturesetEnabled)("format_button_in_legend"),Rt=(0,n.isFeaturesetEnabled)("delete_button_in_legend"),Nt=(0,n.isFeaturesetEnabled)("legend_inplace_edit"),Ot=!(0,ze.isOnMobileAppPage)("any")||(0,n.isFeaturesetEnabled)("show_native_symbol_search_on_tap_in_legend");class zt extends q{constructor(e,t,i,s,l){super(e,t,i,s,l),this._error=new h.WatchedValue(!1),this._isAbleShowSourceCode=new h.WatchedValue(!1),this._isAbleShowSourceCodeInner=new h.WatchedValue(!1).spawn(),this._pineAction=null,this._pineActionVisible=null,this._globalVisibility=new h.WatchedValue(!0),this._updateSymbolLogoModel(),this._createActions();const o=this._model.model().properties().childs().paneProperties.childs().legendProperties.childs(),a=[o.showSeriesTitle,o.showStudyTitles];for(const e of a)e.subscribe(this,(()=>{this._isTitleHidden.setValue(this._getTitleHiddenValue())}));const n=[o.showSeriesOHLC,o.showBarChange,o.showStudyValues,o.showLastDayChange,o.showSeriesLegendCloseOnMobile];for(const e of n)e.subscribe(this,(()=>{this._isValuesHidden.setValue(this._getValuesHiddenValue())}));this.update()}destroy(){super.destroy();const e=this._model.model().properties().childs().paneProperties.childs().legendProperties.childs();e.showSeriesTitle.unsubscribeAll(this),e.showStudyTitles.unsubscribeAll(this),e.showSeriesOHLC.unsubscribeAll(this),e.showBarChange.unsubscribeAll(this),e.showStudyValues.unsubscribeAll(this),e.showLastDayChange.unsubscribeAll(this),e.showSeriesLegendCloseOnMobile.unsubscribeAll(this),this._isAbleShowSourceCodeInner.destroy()}error(){return this._error.readonly()}isAbleShowSourceCode(){return this._isAbleShowSourceCode}onRemoveSource(){if(this._source.isUserDeletable()){if((0,gt.isStudy)(this._source)&&this._source.hasChildren()){const e=this._source.getAllChildren().map((e=>e.name(!0)));(0,bt.showDeleteStudyTreeConfirm)(e,this._model.removeSource.bind(this._model,this._source,!1))}else this._model.removeSource(this._source,!1);P("Remove sources")}}async onShowSourceCode(){0}setGlobalVisibility(e){this._globalVisibility.setValue(e)}globalVisibility(){return this._globalVisibility.readonly()}getFullTitle(){
|
|
return this._titles.value().map((e=>F(e)?e.items.map((e=>e.title)).join(" "):e.title)).join(" ")}getSource(){return this._source}_updateTitles(){const e=(0,o.ensureNotNull)(this._source.statusView()),t=[],i=e.getSplitTitle()[0];if(""!==i){const s=this._getChangeSymbolCallback();t.push({title:i,id:s?8:7,tooltip:s?kt:e.titleTooltip(),action:s?{fn:s,actionAllowedOnTouch:Ot}:void 0})}const s=[];(e.getInputsTitles()??[]).forEach((e=>{const t=(0,Ie.clean)(e.value,!0);""!==t&&s.push({title:t,tooltip:e.title,id:9})})),0!==s.length&&t.push({id:9,items:s}),this._titles.setValue(t)}_updateValues(){const e=this._source.legendView();if(null===e)return;if(0===e.items().length)return;const t=this._values.value();if(0===t.length){const t=e.items().map((e=>({value:new h.WatchedValue(e.value()),color:new h.WatchedValue(U(e.color())),visible:new h.WatchedValue(e.visible()),unimportant:new h.WatchedValue(e.unimportant()),title:new h.WatchedValue(e.title())})));this._values.setValue(t)}else{const i=e.items();for(let e=0;e<i.length;e++){const s=t[e],l=i[e];s.value.setValue(l.value()),s.color.setValue(U(l.color())),s.visible.setValue(l.visible()),s.title.setValue(l.title())}}}_updateStates(){super._updateStates(),void 0!==this._error&&this._error.setValue(Boolean(this._source.isFailed()))}_getTitleHiddenValue(){const e=this._model.model().properties().childs().paneProperties.childs().legendProperties.childs();return this._isSymbolLikeStudy()?!e.showSeriesTitle.value():!e.showStudyTitles.value()}_getDisabledOnIntervalState(){return!(!(0,gt.isStudy)(this._source)&&!(0,gt.isStudyStub)(this._source))&&!this._source.isActualInterval()}_getValuesHiddenValue(){if(!this._hasValues())return!0;const e=this._model.model().properties().childs().paneProperties.childs().legendProperties.childs();return this._isSymbolLikeStudy()?!e.showSeriesOHLC.value()&&!e.showBarChange.value()&&!e.showLastDayChange.value():!e.showStudyValues.value()}_isSymbolLikeStudy(){return(0,gt.isCompareOrOverlayStudy)(this._source)}_getChangeSymbolCallback(){const e=this._source;if(Nt&&(0,vt.isSymbolSourceWithQuotesProvider)(e))return this._changeSymbolCallback||=async t=>{const i=e.symbol(),s=e.symbolInfo(),l=(0,n.isFeaturesetEnabled)("use_symbol_name_for_header_toolbar")?s?.name??(0,ne.safeShortName)(i):(0,ne.safeShortName)(i),o="spread"===s?.type,a="option"===s?.type,r=s?.pro_name;let d=o?i:l||i||"";if((0,n.isFeaturesetEnabled)("symbol_search_option_chain_selector")&&a&&r){const e=await resolveUnderlyingSymbol(r);e&&(d={type:"option",value:r,underlying:e})}try{const i=(0,wt.getSymbolSearchCompleteOverrideFunction)();await(new St.SymbolSearchUI).show({setSymbol:t=>{i(t).then((t=>{this._model.setSymbol(e,t.symbol)}))},dialogTitle:kt,defaultValue:d,enableOptionsChain:(0,n.isFeaturesetEnabled)("symbol_search_option_chain_selector"),showSpreadActions:(0,n.isFeaturesetEnabled)("show_spread_operators")&&(0,n.isFeaturesetEnabled)("studies_symbol_search_spread_operators"),onClose:t,searchType:"chart_status_line",trackResultsOptions:{trackResults:!1,
|
|
emptySearchType:"empty_result__supercharts"}})}catch(e){Wt.logError(`Another SymbolSearchUI is already opened or CustomUI rejected symbol selection ${(0,yt.getErrorMessage)(e)}`)}}}async _updateAbleShowSourceCode(){0}_updateVisibilityPineAction(e){null!==this._pineActionVisible&&(this._pineActionVisible.setValue(e),this._isAbleShowSourceCode.setValue(e))}_createActions(){if(!this._options.readOnlyMode){if(this._pineActionVisible=new h.WatchedValue(!1),this._pineAction={icon:new Map([["large",Vt],["small",Ct]]),action:(0,A.wrapHandlerWithPreventEvent)(this.onShowSourceCode.bind(this)),disableAccessibility:!0,visible:this._pineActionVisible.readonly(),title:new h.WatchedValue(Ht),dataQaId:"legend-pine-action"},Dt){const e=new h.WatchedValue(!this._getDisabledOnIntervalState()),t={icon:new Map([["large",it],["small",tt]]),action:(0,A.wrapHandlerWithPreventEvent)(this.onToggleDisabled.bind(this)),visible:e.readonly(),className:he.eye,title:new h.WatchedValue(this._getEyeTitle()),dataQaId:"legend-show-hide-action"};this._actions.push(t),this._disabled.subscribe((()=>{t.title?.setValue(this._getEyeTitle())}));{const t=new h.WatchedValue(!1),i=new h.WatchedValue(this._getDisabledOnIntervalState()),s={icon:new Map([["large",it],["small",tt]]),action:(0,A.wrapHandlerWithPreventEvent)((()=>{t.setValue(!0),this.onShowSettings(Ke.TabNames.visibility,(()=>t.setValue(!1)))})),active:t.readonly(),visible:i.readonly(),className:he.intervalEye,title:new h.WatchedValue(Bt),dataQaId:"legend-interval-show-hide-action"};this._actions.push(s),this._disabledOnInterval.subscribe((t=>{i.setValue(t),e.setValue(!t)}))}}if(It&&Pt&&(!(0,gt.isStudy)(this._source)||new mt.MetaInfoHelper(this._source.metaInfo()).hasUserEditableOptions())){const e=new h.WatchedValue(this._getIsEditable()),t=new h.WatchedValue(!1),i={icon:new Map([["large",ft],["small",Et]]),action:(0,A.wrapHandlerWithPreventEvent)((()=>{t.setValue(!0),this.onShowSettings(void 0,(()=>t.setValue(!1)))})),visible:e.readonly(),active:t.readonly(),title:new h.WatchedValue(At),dataQaId:"legend-settings-action"};this._actions.push(i),this._isEditable.subscribe((t=>{e.setValue(t)}))}if(Rt){const e=new h.WatchedValue(this._getIsEditable()),t={icon:new Map([["large",Lt],["small",Mt]]),action:(0,A.wrapHandlerWithPreventEvent)(this.onRemoveSource.bind(this)),visible:e.readonly(),title:new h.WatchedValue(xt),dataQaId:"legend-delete-action"};this._actions.push(t),this._isEditable.subscribe((t=>{e.setValue(t)}))}{const e=new h.WatchedValue(!1);this._actions.push({icon:new Map([["large",lt],["small",st]]),action:t=>{e.setValue(!0),this._moreActionHandler(t,(()=>e.setValue(!1)))},visible:this._isEditable.spawn(),active:e.readonly(),title:new h.WatchedValue(Tt),dataQaId:"legend-more-action"})}}}_updateSymbolLogoModel(){if(this._symbolLogoViewModel.value()?.destroy(),(0,n.isFeaturesetEnabled)("show_symbol_logo_for_compare_studies")&&(0,vt.isSymbolSourceWithQuotesProvider)(this._source)){
|
|
const e=this._model.model().properties().childs().paneProperties.childs().legendProperties.childs(),t=qe(new et(this._source),e);this._symbolLogoViewModel.setValue(t)}else this._symbolLogoViewModel.setValue(null)}}var Ft=i(10308),Ut=i(61950),Zt=i(37032),jt=i(51785),Qt=i(25838),$t=i(74121),Gt=i(70817);function qt(e,t,i){e.setProperty(t,!t.value(),i)}const Kt=new D.TranslatedString("change symbol description visibility",k.t(null,void 0,i(33285))),Jt=new D.TranslatedString("change open market status visibility",k.t(null,void 0,i(76249))),Xt=new D.TranslatedString("change chart values visibility",k.t(null,void 0,i(68730))),Yt=new D.TranslatedString("change last day change visibility",k.t(null,void 0,i(35682))),ei=new D.TranslatedString("change bar change visibility",k.t(null,void 0,i(67860))),ti=new D.TranslatedString("change indicator titles visibility",k.t(null,void 0,i(20426))),ii=new D.TranslatedString("change indicator inputs visibility",k.t(null,void 0,i(33533))),si=new D.TranslatedString("change indicator values visibility",k.t(null,void 0,i(15027))),li=new D.TranslatedString("change volume values visibility",k.t(null,void 0,i(52164))),oi=new D.TranslatedString("change symbol field visibility",k.t(null,void 0,i(68192))),ai=k.t(null,void 0,i(68761)),ni=k.t(null,void 0,i(65340)),ri=k.t(null,void 0,i(88580)),di=k.t(null,void 0,i(27020)),hi=k.t(null,void 0,i(89979)),ui=k.t(null,void 0,i(47062)),ci=k.t(null,void 0,i(43192)),_i=k.t(null,void 0,i(4488)),pi=k.t(null,void 0,i(73971)),gi=k.t(null,void 0,i(88725)),bi=(0,Qt.appendEllipsis)(k.t(null,void 0,i(30586))),mi=(0,n.isFeaturesetEnabled)("symbol_info_price_source"),vi=(e,t)=>e?e.dataset[t]?e.dataset[t]:e.parentElement?vi(e.parentElement,t):null:null;var wi=i(547),Si=i(40008),yi=i(79894),Ei=i(81865),fi=i(43692),Ci=i(11284),Vi=i(45983),Mi=i(47118),Li=i(28007);const Wi=k.t(null,void 0,i(19121)),Ai=k.t(null,void 0,i(36296)),Hi=k.t(null,void 0,i(2042)),xi=new Map([[!0,new Map([["small",Vi],["medium",Mi],["large",Mi]])],[!1,new Map([["small",""],["medium",""],["large",""]])]]),Ti=new Map([[!0,Li.hasError],[!1,null]]),Bi=new Map([[!0,Wi],[!1,null]]),ki=new Map([[!0,Wi],[!1,null]]),Di=new Map([[!0,Ci.colorsPalette["color-invalid-symbol"]],[!1,null]]),Ii=new Map([[!0,[Ai]],[!1,null]]),Pi=new Map([[!0,[Hi]],[!1,null]]);function Ri(e){switch(e){case 0:return Ii;case 1:return Pi;default:throw new Error("Unknown CombinedStatusWidgetType")}}var Ni=i(87184),Oi=i(83475);const zi=k.t(null,void 0,i(43541)),Fi=k.t(null,void 0,i(95330)),Ui=k.t(null,void 0,i(36105)),Zi=new Map([[!0,new Map([["small",Ni],["medium",Oi],["large",Oi]])],[!1,new Map([["small",""],["medium",""],["large",""]])]]),ji=new Map([[!0,Li.updateAvailable],[!1,null]]),Qi=new Map([[!0,zi],[!1,null]]),$i=new Map([[!0,zi],[!1,null]]),Gi=new Map([[!0,Ci.colorsPalette["color-deep-blue-a400"]],[!1,null]]),qi=new Map([[!0,[Fi]],[!1,null]]),Ki=new Map([[!0,[Ui]],[!1,null]]);function Ji(e){switch(e){case 0:return qi;case 1:return Ki;default:throw new Error("Unknown CombinedStatusWidgetType")}}var Xi;!function(e){
|
|
e[e.Legend=0]="Legend",e[e.Items=1]="Items"}(Xi||(Xi={}));class Yi extends fi.StatusesWidgetStateBase{constructor(e,t){super(t),this._dataSourceStatusWidgets=[],this._hasErrorStatus=null,this._hasUpdateStatus=null,this._hasErrorViewModel=null,this._hasUpdateViewModel=null,this._updateVisibility=()=>{const e=0===this.visibleModels().value().length;this._visibility.setValue(!e)},this._type=e}destroy(){this._hasErrorViewModel?.destroy(),this._hasUpdateViewModel?.destroy(),super.destroy()}addStatusWidget(e){this._dataSourceStatusWidgets.push(e),this._recreateHasErrorStatus(),this._recreateHasUpdateStatus(),this._createStatusesWidgetStates()}clear(){this._dataSourceStatusWidgets=[],this._hasErrorStatus?.destroy(),this._hasErrorStatus=null,this._hasUpdateStatus?.destroy(),this._hasUpdateStatus=null}async _createStatusesWidgetStates(){const e=this._hasErrorStatus;null!==e&&(null===this._hasErrorViewModel?(this._hasErrorViewModel=new Ei.BooleanStatusViewModel(e,{classNameMap:Ti,htmlMap:Ri(this._type),iconMap:xi,size:this._size,titleColorMap:Di,titleMap:ki,tooltipMap:Bi}),this._addStatusViewModelsInfos({visible:this._hasErrorViewModel.visible().spawn(),model:this._hasErrorViewModel})):this._hasErrorViewModel.updateStatus(e));const t=this._hasUpdateStatus;null!==t&&(null===this._hasUpdateViewModel?(this._hasUpdateViewModel=new Ei.BooleanStatusViewModel(t,{classNameMap:ji,htmlMap:Ji(this._type),iconMap:Zi,size:this._size,titleColorMap:Gi,titleMap:$i,tooltipMap:Qi}),this._addStatusViewModelsInfos({visible:this._hasUpdateViewModel.visible().spawn(),model:this._hasUpdateViewModel})):this._hasUpdateViewModel.updateStatus(t))}_recreateHasErrorStatus(){this._hasErrorStatus?.destroy();const e=(0,r.combine)((e=>this._dataSourceStatusWidgets.map((e=>e.dataSourceErrorStatusShown.weakReference()))),new L.WatchedValue(this._dataSourceStatusWidgets).weakReference());this._hasErrorStatus=(0,r.accumulate)((e=>e.some((e=>e))),e.ownership())}_recreateHasUpdateStatus(){this._hasUpdateStatus?.destroy();const e=(0,r.combine)((e=>this._dataSourceStatusWidgets.map((e=>e.dataUpdatedModeShown.weakReference()))),new L.WatchedValue(this._dataSourceStatusWidgets).weakReference());this._hasUpdateStatus=(0,r.accumulate)((e=>e.some((e=>e))),e.ownership())}}i(82287);var es=i(40520),ts=i(26384);const is={readOnlyMode:!1,contextMenu:{settings:!0,mainSeries:!0,studies:!0,showOpenMarketStatus:!1},symbolMarkerEnabled:!1,showToggleButton:!0,canShowSourceCode:!1,statusesWidgets:{sourceStatusesEnabled:!1,sourceStatuses:{errorSolution:!0},marketStatusEnabled:!1,marketStatus:{preMarketSolution:!0,postMarketSolution:!0},dataUpdateModeEnabled:!1,dataUpdateMode:{subscriptionFullInfo:!0},dataProblemEnabled:!1}};var ss;!function(e){e.TogglerStateSettingsKey="legend.isVisibilityToggled",e[e.TextSourceIsAlwaysTickerMaxSize=132]="TextSourceIsAlwaysTickerMaxSize"}(ss||(ss={}));(0,n.isFeaturesetEnabled)("hide_legend_by_default");const ls=(0,n.isFeaturesetEnabled)("fundamental_widget"),os=(0,
|
|
n.isFeaturesetEnabled)("legend_context_menu"),as=parseInt(ts.css_value_chart_gui_wrapper_column_gap);class ns{constructor(e,t,i,s,o,n,u,c){this._mainSeriesViewModel=null,this._dataSourceViewModels=[],this._sourcesIds=[],this._visibleDataSourceCount=new h.WatchedValue(0),this._themedColor=new h.WatchedValue(""),this._mainSeriesRowHidden=null,this._dataSourceRowsHidden=[],this._customWidgetsVisibilities=[],this._allLegendHidden=new h.WatchedValue(!1),this._studiesLegendHidden=new h.WatchedValue(!1),this._showCollapserWithOneIndicator=new h.WatchedValue(!1),this._dataSourcesLoadingStatuses=new h.WatchedValue([]),this._customWidgetsHeights=[],this._onLegendVisibilityToggled=null,this._availableHeight=0,this._collapsedDataSourcesCount=new h.WatchedValue(0),this._collapsedDataSourcesTitle=new h.WatchedValue(""),this._mainSeriesStatusesWidgetState=null,this._dataSourceStatusesWidgetStates=[],this._statusProviders=new Map,this._size=null,this._customLegendWidgetsFactoriesMap=new Map,this._customLegendWidgetsMap=new Map,this._margin=0,this._layoutChanged=new d.Delegate,this._model=e,this._paneWidget=t,this._options=(0,a.merge)((0,a.clone)(is),u),this._callbacks=c,this._mainSeriesViewModelsOptions={readOnlyMode:this._options.readOnlyMode,symbolMarkerEnabled:this._options.symbolMarkerEnabled},this._dataSourceViewModelsOptions={...this._mainSeriesViewModelsOptions,canShowSourceCode:this._options.canShowSourceCode},this._backgroundThemeName=i;const _=this._showLegendCalculatedProperty();this._isDataSourcesCollapsed=new h.WatchedValue(_.value()),_.subscribe(this,(()=>{this._isDataSourcesCollapsed.setValue(_.value())}));const p=new h.WatchedValue(this._getCustomTextColorValue()),g=this._model.model().properties().childs();g.scalesProperties.childs().textColor.subscribe(this,(()=>{p.setValue(this._getCustomTextColorValue())}));const b=g.paneProperties.childs().legendProperties.childs().showBackground,m=new h.WatchedValue(b.value());b.subscribe(this,(()=>{m.setValue(b.value())}));const v=g.paneProperties.childs().legendProperties.childs().backgroundTransparency,w=new h.WatchedValue(v.value());v.subscribe(this,(()=>{w.setValue(v.value())})),this._hideNotMainSources=s,this._hideNotMainSources.subscribe(this._updateLegendVisibilities.bind(this)),this._hideAllExceptFirstLine=o,this._hideAllExceptFirstLine.subscribe(this._updateCollapsedSourcesMode.bind(this)),this._hideWholeLegend=n,this._hideWholeLegend.subscribe(this._updateLegendVisibilities.bind(this)),this._isPaneMain=new h.WatchedValue(this._getIsPaneMainValue()),this._updateCollapsedSourcesModeThrottle=(0,l.default)(this._updateCollapsedSourcesMode.bind(this),100),this._isPaneMain.subscribe((e=>this._showCollapserWithOneIndicator.setValue(e)),{callWithLast:!0}),this._collapsedStatusesWidgetState=new Yi(1,this._options.statusesWidgets),this._toggledStatusesWidgetState=new Yi(0,this._options.statusesWidgets),this._hasLoadingDataSources=(0,r.accumulate)(((e,t)=>{const i=e.some(Boolean);return[i,!!i&&e.includes(!0,-t)]
|
|
}),this._dataSourcesLoadingStatuses.weakReference(),this._collapsedDataSourcesCount.weakReference()),this._renderer=new De({isMultipleLayout:this._model.isMultipleLayout(),withActions:!this._options.readOnlyMode,showToggleButton:this._options.showToggleButton,isStudiesLegendHidden:this._studiesLegendHidden.readonly(),isAllLegendHidden:this._allLegendHidden.readonly(),customTextColor:p.readonly(),themedColor:this._themedColor.readonly(),showBackground:m.readonly(),backgroundTransparency:w.readonly(),collapsedDataSourcesCount:this._collapsedDataSourcesCount.readonly(),collapsedDataSourcesTitle:this._collapsedDataSourcesTitle.readonly(),combinedStatusesWidgetState:this._collapsedStatusesWidgetState,showLegendWidgetContextMenu:this.onShowLegendWidgetContextMenu.bind(this),hideAllExceptFirstLine:this._hideAllExceptFirstLine,onLegendRowFocused:this._callbacks.onLegendRowFocused,onLayoutChanged:this._layoutChanged,hasLoadingDataSources:this._hasLoadingDataSources},{showCollapserWithOneIndicator:this._showCollapserWithOneIndicator.readonly(),visibleDataSourceCount:this._visibleDataSourceCount.readonly(),isDataSourcesCollapsed:this._isDataSourcesCollapsed.readonly(),hasLoadingDataSources:this._hasLoadingDataSources,isMainPane:this._isPaneMain.readonly(),onCollapseDataSources:this.onCollapseDataSources.bind(this),onShowObjectsTreeDialog:this._callbacks.showObjectsTreeDialog,isPaneCollapsed:this._paneWidget.visuallyCollapsed(),combinedStatusesWidgetState:this._toggledStatusesWidgetState})}destroy(){this._hasLoadingDataSources.destroy(),this._backgroundThemeName.release(),this._hideNotMainSources.release(),this._hideAllExceptFirstLine.release(),this._hideWholeLegend.release(),this._sourcesIds=[],null!==this._mainSeriesViewModel&&this._destroyMainDataSource();for(const[,e]of this._statusProviders)e.destroy();for(const e of this._dataSourceViewModels)e.destroy();this._dataSourceViewModels=[],this._collapsedStatusesWidgetState.destroy(),this._toggledStatusesWidgetState.destroy();for(const e of this._dataSourceStatusesWidgetStates)e.destroy();this._dataSourceStatusesWidgetStates=[],this._clearSubscriptions();for(const e of Array.from(this._customLegendWidgetsMap.keys()))this._destroyCustomWidgetFromLayerBlock(e);this._customLegendWidgetsMap.clear(),this._renderer.destroy(),delete this._renderer,this._showLegendCalculatedProperty().unsubscribeAll(this),this._showLegendOriginalProperty().unsubscribeAll(this);const e=this._model.model().properties().childs();e.scalesProperties.childs().textColor.unsubscribeAll(this),e.paneProperties.childs().legendProperties.childs().showBackground.unsubscribeAll(this),e.paneProperties.childs().legendProperties.childs().backgroundTransparency.unsubscribeAll(this),this._dataSourcesLoadingStatuses.setValue([])}addCustomWidgetToLegend(e,t){const i=this._customLegendWidgetsFactoriesMap.get(t.block)||new Map,s=i.get(t.position)||[];s.push(e),i.set(t.position,s),this._customLegendWidgetsFactoriesMap.set(t.block,i),this.updateLayout(),this._updateCustomWidgetModeBySize()}onShowLegendWidgetContextMenu(e,t){
|
|
if(this._options.readOnlyMode||!os)return Promise.resolve();P("Show legend context menu");const i=new Map;for(const e of Array.from(this._customLegendWidgetsMap.keys())){const t=(0,o.ensureDefined)(this._customLegendWidgetsMap.get(e)),s=new Map;for(const e of Array.from(t.keys())){const i=(0,o.ensureDefined)(t.get(e)),l=s.get(e)||[];for(const e of i)l.push(...e.contextMenuActions());s.set(e,l)}i.set(e,s)}return function(e,t,i,s,l,o){const a=[],n=s.get(0);if(void 0!==n){const e=n.get(1);void 0!==e&&e.length>0&&(a.push(...e),a.push(new Ft.Separator))}const r=e.model().properties().childs().paneProperties.childs().legendProperties.childs(),d=mi&&e.model().symbolSources().some((e=>void 0!==e.symbolInfo()?.price_source_id));a.push(new Ft.Action({actionId:"Chart.Legend.ToggleSymbolVisibility",options:{checkable:!0,checked:r.showSeriesTitle.value(),label:ai,statName:"Show/Hide Symbol",onExecute:()=>qt(e,r.showSeriesTitle,Kt)}})),t.showOpenMarketStatus&&"market"===e.mainSeries().marketStatusModel().status().value()&&!(0,Zt.isEconomicSymbol)(e.mainSeries().symbolInfo())&&a.push(new Ft.Action({actionId:"Chart.Legend.ToggleOpenMarketStatusVisibility",options:{checkable:!0,checked:jt.showMarketOpenStatusProperty.value(),label:ni,statName:"Show/Hide Open market status",onExecute:()=>qt(e,jt.showMarketOpenStatusProperty,Jt)}})),a.push(new Ft.Action({actionId:"Chart.Legend.ToggleOhlcValuesVisibility",options:{checkable:!0,checked:r.showSeriesOHLC.value(),label:ri,statName:"Show/Hide chart values",onExecute:()=>qt(e,r.showSeriesOHLC,Xt)}}));const h=e.mainSeries().style(),u=12!==h&&20!==h;if(u&&!$t.alwaysShowLastPriceAndLastDayChange&&a.push(new Ft.Action({actionId:"Chart.Legend.ToggleBarChangeValuesVisibility",options:{checkable:!0,checked:r.showBarChange.value(),label:hi,statName:"Show/Hide Bar Change Values",onExecute:()=>qt(e,r.showBarChange,ei)}})),20!==h&&a.push(new Ft.Action({actionId:"Chart.Legend.ToggleVolumeVisibility",options:{checkable:!0,checked:r.showVolume.value(),label:ui,statName:"Show/Hide Volume",onExecute:()=>qt(e,r.showVolume,li)}})),u&&($t.lastDayChangeAvailable||$t.alwaysShowLastPriceAndLastDayChange)){const t=$t.alwaysShowLastPriceAndLastDayChange?r.showBarChange:r.showLastDayChange;a.push(new Ft.Action({actionId:"Chart.Legend.ToggleLastDayChangeValuesVisibility",options:{checkable:!0,checked:t.value(),label:di,statName:"Show/Hide Last day change values",onExecute:()=>qt(e,t,Yt)}}))}if(d&&a.push(new Ft.Action({actionId:"Chart.Legend.TogglePriceSourceVisibility",options:{checkable:!0,checked:r.showPriceSource.value(),label:gi,statName:"Show/Hide Price Source",onExecute:()=>qt(e,r.showPriceSource,oi)}})),a.push(new Ft.Separator),void 0!==n){const e=n.get(0);void 0!==e&&e.length>0&&(a.push(...e),a.push(new Ft.Separator))}const c=s.get(1);if(void 0!==c){const e=c.get(1);void 0!==e&&e.length>0&&(a.push(...e),a.push(new Ft.Separator))}if(e.model().priceDataSources().some((e=>!(0,vt.isActingAsSymbolSource)(e)&&e.showInObjectTree()))&&(a.push(new Ft.Action({actionId:"Chart.Legend.ToggleIndicatorTitlesVisibility",
|
|
options:{checkable:!0,checked:r.showStudyTitles.value(),label:ci,statName:"Show/Hide Indicator Titles",onExecute:()=>qt(e,r.showStudyTitles,ti)}})),a.push(new Ft.Action({actionId:"Chart.Legend.ToggleIndicatorArgumentsVisibility",options:{checkable:!0,checked:r.showStudyArguments.value(),label:_i,statName:"Show/Hide Indicator Arguments",onExecute:()=>qt(e,r.showStudyArguments,ii)}})),a.push(new Ft.Action({actionId:"Chart.Legend.ToggleIndicatorValuesVisibility",options:{checkable:!0,checked:r.showStudyValues.value(),label:pi,statName:"Show/Hide Indicator Values",onExecute:()=>qt(e,r.showStudyValues,si)}}))),void 0!==c){const e=c.get(0);void 0!==e&&e.length>0&&(a.push(...e),a.push(new Ft.Separator))}t.settings&&(a[a.length-1]instanceof Ft.Separator||a.push(new Ft.Separator),a.push(new Gt.ActionWithStandardIcon({actionId:"Chart.Dialogs.ShowGeneralSettings.LegendTab",options:{label:bi,iconId:"Settings",statName:"Settings...",onExecute:()=>i(Ke.TabNames.legend)}})));const _=vi(l.target,"entityId"),p={menuName:"LegendPropertiesContextMenu",detail:{type:_?"study":"series",id:_??"_seriesId"}};return Ut.ContextMenuManager.showMenu(a,l,{statName:"LegendContextMenu"},p,o)}(this._model,this._options.contextMenu,this._callbacks.showGeneralChartProperties,i,e,t)}onCollapseDataSources(){const e=this._showLegendOriginalProperty();e.setValue(!e.value())}updateLayout(){const e=this._paneWidget.state().sourcesByGroup().legendViewSources().filter((e=>null!==e.statusView()&&e.isDisplayedInLegend())).reverse(),t=this._sourcesIds,i=this._model.mainSeries(),s=e.indexOf(i);let l;if(-1!==s){if(e.splice(s,1),!ls&&null===this._mainSeriesViewModel){const e=new pt(this._model,i,this._mainSeriesViewModelsOptions,this._callbacks,this._options.contextMenu);this._mainSeriesViewModel=e;const t=new wi.MainDataSourceStatusesWidgetState(this._statusSourceAdapter(i),this._model,this._options.statusesWidgets);this._mainSeriesStatusesWidgetState=t,l={model:e,statusesWidgetState:t}}}else null!==this._mainSeriesViewModel&&(l=null,this._destroyMainDataSource(),this._destroyCustomWidgetFromLayerBlock(0));const a=e.map((e=>e.instanceId()));this._sourcesIds=a;const n=[],r=new Map,d=[],h=[],u=this._dataSourceViewModels,c=this._dataSourceStatusesWidgetStates;let _=t.length-1;for(;_>=0;){const e=t[_],i=a.indexOf(e);if(-1===i){n.push(_),u[_].destroy(),c[_].destroy();const t=this._statusProviders.get(e);t&&(t.destroy(),this._statusProviders.delete(e))}else _!==i&&(r.set(e,{model:u[_],statusesWidgetState:c[_]}),d.push({oldIndex:_,newIndex:i}));_--}const p=[],g=[];for(let i=0;i<a.length;i++){const s=a[i];let l,n;if(r.has(s)){const e=(0,o.ensureDefined)(r.get(s));l=e.model,n=e.statusesWidgetState}else if(t[i]===s)l=u[i],n=c[i];else{const t=e[i];l=new zt(this._model,t,this._dataSourceViewModelsOptions,this._callbacks,this._options.contextMenu),n=new Si.DataSourceStatusesWidgetState(this._statusSourceAdapter(t),this._model,this._options.statusesWidgets),h.push({model:l,statusesWidgetState:n,index:i})}p.push(l),g.push(n)}this._dataSourceViewModels=p,
|
|
this._dataSourceStatusesWidgetStates=g,0===this._dataSourceViewModels.length&&this._destroyCustomWidgetFromLayerBlock(1),this._dataSourceViewModels.length&&this._recalculateLoadingDataSources(),this._recreateSubscriptions(),this._isPaneMain.setValue(this._getIsPaneMainValue()),this.update();const b=n.length||h.length||d.length;if((void 0!==l||b)&&this._layoutChanged.fire({newMainSource:l,removedDataSources:n,addedDataSources:h,movedDataSources:d}),-1!==s&&this._addCustomWidgetForLayerBlock(0),this._dataSourceViewModels.length>0&&this._addCustomWidgetForLayerBlock(1),this._updateWidgetModeBySize(),b){this._updateCollapsedSourcesMode(),this._toggledStatusesWidgetState.clear();for(const e of this._dataSourceStatusesWidgetStates)this._toggledStatusesWidgetState.addStatusWidget(e)}}update(){null!==this._mainSeriesViewModel&&this._mainSeriesViewModel.update();for(const e of this._dataSourceViewModels)e.update()}updateThemedColors(e){null===e&&(e=(0,es.getStdThemedValue)("chartProperties.paneProperties.background",this._backgroundThemeName.value())),this._themedColor.setValue(e||"")}firstTitle(){return this._renderer.firstTitle()}getElement(){return this._renderer.getElement()}addMargin(e){if(this._margin===e)return;this._margin=e;this._renderer.getElement().style.maxWidth=0===this._margin?"":`calc(100% - ${this._margin+as}px)`,this._updateWidgetModeBySize()}updateWidgetModeBySize(e){this._size=e,this._updateWidgetModeBySize()}_statusSourceAdapter(e){const t=e.instanceId();let i=this._statusProviders.get(t);return void 0===i&&(i=e!==this._model.mainSeries()?new yi.ChartModelStatusSourceAdapter(e,this._model.model()):new yi.ChartModelMainSeriesStatusSourceAdapter(this._model.mainSeries(),this._model.model()),this._statusProviders.set(t,i)),i}_updateWidgetModeBySize(){this._updateWidgetModeByWidth(),this._updateWidgetModeByHeight(),this._updateCustomWidgetModeBySize()}_updateWidgetModeByWidth(){if(null===this._size)return;const e=this._availableWidth();this._renderer.updateMode(e),this._paneWidget.hasState()&&this._paneWidget.state().containsMainSeries()&&this._model.mainSeries().setTextSourceIsAlwaysTickerRestrictionEnabled(e<=132)}_updateWidgetModeByHeight(){null!==this._size&&(this._availableHeight=.8*this._size.height,this._updateCollapsedSourcesModeThrottle())}_updateCustomWidgetModeBySize(){if(null===this._size)return;const e=(0,s.size)({width:this._availableWidth(),height:this._size.height});for(const t of Array.from(this._customLegendWidgetsMap.values()))for(const i of Array.from(t.values()))for(const t of i)t.updateWidgetModeBySize(e)}_destroyMainDataSource(){(0,o.ensureNotNull)(this._mainSeriesStatusesWidgetState).destroy(),this._mainSeriesStatusesWidgetState=null;(0,o.ensureNotNull)(this._mainSeriesViewModel).destroy(),this._mainSeriesViewModel=null}_updateCollapsedSourcesMode(){const e=this._dataSourceViewModels.length,t=this._hideAllExceptFirstLine.value(),i=null!==this._mainSeriesViewModel;if(this._collapsedStatusesWidgetState.clear(),this._availableHeight>0&&e>2){
|
|
const s=Number(this._renderer.getMainSourceHeight()),l=this._renderer.getDataSourceHeight(),o=this._getCustomWidgetsHeight();if(null!==l){const a=Math.floor((this._availableHeight-s-o)/l),n=Math.max(a,2)-1;if(e>n+1){let s="";for(let l=0;l<e;l++){const e=l<n;this._dataSourceViewModels[l].setGlobalVisibility(e&&(!t||0===l&&!i)),e||(s+=`${0===s.length?"":", "}${this._dataSourceViewModels[l].getFullTitle()}`,this._collapsedStatusesWidgetState.addStatusWidget(this._dataSourceStatusesWidgetStates[l]))}return this._collapsedDataSourcesTitle.setValue(s),void this._collapsedDataSourcesCount.setValue(e-n)}}}for(let e=0;e<this._dataSourceViewModels.length;++e)this._dataSourceViewModels[e].setGlobalVisibility(!t||0===e&&!i);this._collapsedDataSourcesCount.setValue(0),this._collapsedDataSourcesTitle.setValue("")}_getCustomWidgetsHeight(){let e=0;for(const t of Array.from(this._customLegendWidgetsMap.values()))for(const i of Array.from(t.values()))for(const t of i)e+=t.height().value();return e}_getCustomTextColorValue(){const e=this._model.model().properties().childs().scalesProperties.childs().textColor.value();for(const t of(0,es.getStdThemeNames)())if((0,es.isStdThemedDefaultValue)("chartProperties.scalesProperties.textColor",e,t))return null;return e}_clearSubscriptions(){null!==this._mainSeriesRowHidden&&(this._mainSeriesRowHidden.destroy(),this._mainSeriesRowHidden=null);for(const e of this._dataSourceRowsHidden)e.destroy();this._dataSourceRowsHidden=[];for(const e of this._customWidgetsVisibilities)e.destroy();this._customWidgetsVisibilities=[];for(const e of this._customWidgetsHeights)e.destroy();this._customWidgetsHeights=[]}_recreateSubscriptions(){this._clearSubscriptions(),null!==this._mainSeriesViewModel&&(this._mainSeriesRowHidden=this._mainSeriesViewModel.isRowHidden().spawn(),this._mainSeriesRowHidden.subscribe(this._updateLegendVisibilities.bind(this)));for(const e of this._dataSourceViewModels){const t=e.isRowHidden().spawn();this._dataSourceRowsHidden.push(t),t.subscribe(this._updateVisibleDataSourceCount.bind(this)),t.subscribe(this._updateLegendVisibilities.bind(this))}for(const e of Array.from(this._customLegendWidgetsMap.values()))for(const t of Array.from(e.values()))for(const e of t){const t=e.visibility().spawn();this._customWidgetsVisibilities.push(t),t.subscribe(this._updateLegendVisibilities.bind(this));const i=e.height().spawn();this._customWidgetsHeights.push(i),i.subscribe(this._updateCollapsedSourcesMode.bind(this))}this._updateVisibleDataSourceCount(),this._updateLegendVisibilities()}_recalculateLoadingDataSources(){this._dataSourcesLoadingStatuses.setValue(this._dataSourceViewModels.map((e=>e.loading().weakReference())))}_updateLegendVisibilities(){if(this._hideWholeLegend.value())return void this._allLegendHidden.setValue(!0);const e=0!==this._dataSourceRowsHidden.length&&this._dataSourceRowsHidden.every((e=>e.value())),t=this._hideNotMainSources.value()||e;this._studiesLegendHidden.setValue(t)
|
|
;const i=null===this._mainSeriesRowHidden||this._mainSeriesRowHidden.value(),s=this._customWidgetsVisibilities.some((e=>e.value()));this._allLegendHidden.setValue(e&&i&&!s)}_updateVisibleDataSourceCount(){const e=this._dataSourceRowsHidden.filter((e=>!e.value())).length;this._visibleDataSourceCount.setValue(e)}_setLegendVisibilityToggled(){0}_getIsPaneMainValue(){return this._paneWidget.containsMainSeries()}_showLegendCalculatedProperty(){return this._model.model().showLegend()}_showLegendOriginalProperty(){return this._model.model().properties().childs().paneProperties.childs().legendProperties.childs().showLegend}_addCustomWidgetForLayerBlock(e){const t=this._customLegendWidgetsFactoriesMap.get(e);if(void 0===t)return;const i=this._customLegendWidgetsMap.get(e)||new Map;let s=!1;for(const l of Array.from(t.keys())){const o=i.get(l)||[],a=t.get(l)||[];for(let t=o.length;t<a.length;t++){const i=a[t](this._model.model(),this._backgroundThemeName.spawnOwnership(),this._hideAllExceptFirstLine.weakReference());o.push(i),this._renderer.addCustomWidget(i,{block:e,position:l}),s=!0}s&&i.set(l,o)}s&&this._customLegendWidgetsMap.set(e,i)}_destroyCustomWidgetFromLayerBlock(e){const t=this._customLegendWidgetsMap.get(e);if(void 0!==t){for(const e of Array.from(t.values()))for(const t of e)t.destroy();t.clear(),this._customLegendWidgetsMap.delete(e)}}_availableWidth(){return null===this._size?0:Math.max(0,this._size.width-this._margin-as)}}},97743:(e,t,i)=>{"use strict";i.r(t),i.d(t,{PaneControlsWidget:()=>K});var s,l=i(64906),o=i(91599),a=i(23351),n=i(68657),r=i(90366),d=i(62352),h=i(85842),u=i(55482),c=i(25682),_=i(72445),p=i(65792),g=i(91101),b=i(65365);!function(e){e[e.ContextMenuModeWidthPt=666.65]="ContextMenuModeWidthPt",e[e.VisibleModeMinWidth=356]="VisibleModeMinWidth"}(s||(s={}));class m{constructor(e,t,i){this._parentEl=document.createElement("div"),this._listActionsWrapperEl=null,this._listActionsElements={},this._actionsSpawns={},this._onMouseEnterLeaveEventHandler=null,this._mouseOverWidget=!1,this._wrapEl=e,this._onMouseEnterLeaveEventHandler=this._onMouseEnterLeaveEvent.bind(this),this._wrapEl.addEventListener("mouseenter",this._onMouseEnterLeaveEventHandler),this._wrapEl.addEventListener("mouseleave",this._onMouseEnterLeaveEventHandler),this._actions=t,this._globalVisibility=i.globalVisibility.spawn(),this._globalVisibility.subscribe(this._updatePaneControlsWidgetVisibility.bind(this)),this._visibilityType=i.visibilityType.spawn(),this._visibilityType.subscribe(this._updatePaneControlsWidgetVisibility.bind(this)),this._separatorSelected=i.separatorSelected.spawn(),this._separatorSelected.subscribe(this._updatePaneControlsWidgetVisibility.bind(this)),this._maximized=i.maximized.spawn(),this._maximized.subscribe(this._updatePaneControlsWidgetVisibility.bind(this)),this._doNotSwitchToContextMenuMode=i.doNotSwitchToContextMenuMode,this._themedColor=i.themedColor.spawn(),this._themedColor.subscribe(this._updateThemedColor.bind(this));for(const[e,t]of Object.entries(this._actions)){const i=e;this._actionsSpawns[i]={
|
|
visible:t.visible.spawn(),title:void 0===t.title?null:t.title.spawn()},this._actionsSpawns[i].visible.subscribe(this._updateActionVisibilities.bind(this,i));const s=this._actionsSpawns[i].title;null!==s&&s.subscribe(this._updateActionTitle.bind(this,i))}this._render(),this._updatePaneControlsWidgetVisibility(),this._updateThemedColor(this._themedColor.value()),this._parentEl.classList.toggle(g.touchMode,p.trackingModeIsAvailable),this._parentEl.addEventListener("contextmenu",(e=>e.preventDefault())),this._parentEl.setAttribute("aria-hidden","true"),this._wrapEl.matches(":hover")&&this._onMouseEnterLeaveEvent({type:"mouseenter"})}destroy(){this._visibilityType.destroy(),this._themedColor.destroy(),this._separatorSelected.destroy();for(const e of Object.keys(this._actionsSpawns)){const t=e;this._actionsSpawns[t].visible.destroy();const i=this._actionsSpawns[t].title;null!==i&&i.destroy()}null!==this._onMouseEnterLeaveEventHandler&&(this._wrapEl.removeEventListener("mouseenter",this._onMouseEnterLeaveEventHandler),this._wrapEl.removeEventListener("mouseleave",this._onMouseEnterLeaveEventHandler),this._onMouseEnterLeaveEventHandler=null),this._parentEl.remove(),this._parentEl.innerHTML="",delete this._parentEl}getElement(){return this._parentEl}bottomWithMargin(){const e=this._parentEl.classList.contains(g.touchMode)?Number(g.css_value_pane_controls_button_touch_size):Number(g.css_value_pane_controls_button_size);return 2*Number(g.css_value_pane_controls_margin_top)+e}updateWidgetModeByWidth(e){const t=!this._doNotSwitchToContextMenuMode.value()&&e<356,i=!this._doNotSwitchToContextMenuMode.value()&&e<666.65,s=(0,h.ensureNotNull)(this._listActionsWrapperEl),l=(0,h.ensureNotNull)(this._listActionsElements.more);(0,h.ensureNotNull)(this._parentEl).classList.toggle(g.paneControls_remove,t),s.classList.toggle(b.blockHidden,i),l.classList.toggle(b.blockHidden,!i||!this._actions.more.visible.value())}_render(){this._renderActions(),this._parentEl.classList.add(g.paneControls),this._wrapEl.append(this._parentEl)}_renderActions(){null===this._listActionsWrapperEl&&(this._listActionsWrapperEl=document.createElement("div"),this._listActionsWrapperEl.classList.add(g.buttons),this._parentEl.append(this._listActionsWrapperEl));const e={tag:"div",buttonClassName:g.button,wrapIconClassName:g.buttonIcon,hiddenClassName:b.blockHidden};this._listActionsElements.up=(0,c.createActionElement)(this._actions.up,e),this._listActionsElements.down=(0,c.createActionElement)(this._actions.down,e),this._listActionsElements.collapse=(0,c.createActionElement)(this._actions.collapse,e),this._listActionsElements.restore=(0,c.createActionElement)(this._actions.restore,e),this._listActionsElements.close=(0,c.createActionElement)(this._actions.close,e),this._listActionsElements.maximize=(0,c.createActionElement)(this._actions.maximize,e),this._listActionsElements.minimize=(0,c.createActionElement)(this._actions.minimize,e),this._listActionsElements.restore.classList.add(g.button_activated),
|
|
this._listActionsElements.minimize.classList.add(g.button_activated),this._listActionsWrapperEl.append(this._listActionsElements.up,this._listActionsElements.down,this._listActionsElements.close,this._listActionsElements.collapse,this._listActionsElements.restore,this._listActionsElements.maximize,this._listActionsElements.minimize),this._listActionsElements.more=(0,c.createActionElement)(this._actions.more,e),this._parentEl.append(this._listActionsElements.more)}_updateActionVisibilities(e,t){(0,h.ensureNotNull)(this._listActionsElements[e]).classList.toggle(b.blockHidden,!t)}_updateActionTitle(e,t){(0,h.ensureNotNull)(this._listActionsElements[e]).setAttribute("title",t)}_onMouseEnterLeaveEvent(e){this._mouseOverWidget="mouseenter"===e.type,"visibleOnMouseOver"===this._visibilityType.value()&&this._updatePaneControlsWidgetVisibility()}_updatePaneControlsWidgetVisibility(){let e,t=!1;switch(this._visibilityType.value()){case"alwaysOff":e=!1,t=!0;break;case"alwaysOn":e=this._globalVisibility.value();break;case"visibleOnMouseOver":case"visibleOnTapSelection":e=this._globalVisibility.value()&&this._mouseOverWidget}this._separatorSelected.value()&&"visibleOnTapSelection"===this._visibilityType.value()&&(e=!0),this._maximized.value()&&_.mobiletouch&&(e=!0),this._parentEl.classList.toggle(g.paneControls_hidden,!e),this._parentEl.classList.toggle(g.paneControls_forceHidden,!this._globalVisibility.value()||t)}_updateThemedColor(e){if(e.length>0){const[t,i,s]=(0,u.parseRgb)(e);this._parentEl.style.color=(0,u.rgbaToString)([t,i,s,(0,u.normalizeAlphaComponent)(.8)])}else this._parentEl.style.removeProperty("color")}}var v=i(10308),w=i(61950),S=i(17303),y=i(62072),E=i(77255),f=i(36533),C=i(37570),V=i(96163);const M=o.t(null,void 0,i(48865)),L=M,W=(0,a.humanReadableModifiers)(a.Modifiers.Mod)+M;var A=i(89659),H=i(40520),x=i(70327),T=i(84075),B=i(12948),k=i(23643),D=i(53809),I=i(51511),P=i(72838),R=i(64895);const N=o.t(null,void 0,i(31988)),O=o.t(null,void 0,i(83501)),z=o.t(null,void 0,i(14058)),F=o.t(null,void 0,i(50559)),U=o.t(null,void 0,i(82930)),Z=o.t(null,void 0,i(89009)),j=o.t(null,void 0,i(59443)),Q=o.t(null,void 0,i(48865));var $;!function(e){e.PaneCloseButton="pane-button-close",e.PaneUpButton="pane-button-up",e.PaneDownButton="pane-button-down",e.PaneMaximizeButton="pane-button-maximize",e.PaneMinimizeButton="pane-button-minimize",e.PaneCollapseButton="pane-button-collapse",e.PaneRestoreButton="pane-button-restore",e.PaneMoreButton="pane-button-more"}($||($={}));const G=(0,x.hotKeySerialize)({keys:[""],text:Q}),q=(0,x.hotKeySerialize)({keys:[(0,a.humanReadableModifiers)(a.Modifiers.Mod,!1)],text:`{0} + ${Q}`});class K{constructor(e,t,i,s){this._actions={},this._moreCMShown=!1,this._themedColor=new A.WatchedValue(""),this._model=e,this._pane=t,this._closeButtonVisibility=new A.WatchedValue(this._getCloseButtonVisibility()),this._upButtonVisibility=new A.WatchedValue(this._getUpButtonVisibility()),this._downButtonVisibility=new A.WatchedValue(this._getDownButtonVisibility()),
|
|
this._maximizeButtonVisibility=new A.WatchedValue(this._getMaximizeButtonVisibility()),this._minimizeButtonVisibility=new A.WatchedValue(this._getMinimizeButtonVisibility()),this._collapseButtonVisibility=(0,n.combine)(((e,t,i)=>!e&&!t&&i),t.maximized().weakReference(),t.collapsed().weakReference(),t.collapsingAvailable().weakReference()),this._restoreButtonVisibility=(0,n.combine)(((e,t)=>!e&&t),t.maximized().weakReference(),t.collapsed().weakReference()),this._createActions(),this._visibilityTypeProperty=(0,r.actualBehavior)(),this._visibilityTypeProperty.subscribe(this,(e=>{this._visibilityType.setValue(e.value())})),this._visibilityType=new A.WatchedValue(this._visibilityTypeProperty.value()),this._isPaneMaximize=new A.WatchedValue(this._getIsPaneMaximizeValue()),this._isWidgetShow=new A.WatchedValue(this._getIsWidgetShow()),this._backgroundThemeName=i.backgroundThemeName,this._renderer=new m(s,this._actions,{visibilityType:this._visibilityType.readonly(),globalVisibility:this._isWidgetShow.readonly(),doNotSwitchToContextMenuMode:this._isPaneMaximize.readonly(),themedColor:this._themedColor.readonly(),separatorSelected:i.anySeparatorSelected,maximized:this._isPaneMaximize.readonly()})}destroy(){this._visibilityTypeProperty.unsubscribeAll(this),this._collapseButtonVisibility.destroy(),this._restoreButtonVisibility.destroy(),this._renderer.destroy()}getElement(){return this._renderer.getElement()}bottomWithMargin(){return this._renderer.bottomWithMargin()}action(){return this._actions}update(){this._updateButtonsVisibility(),this._isPaneMaximize.setValue(this._getIsPaneMaximizeValue()),this._isWidgetShow.setValue(this._getIsWidgetShow())}updateWidgetModeByWidth(e){this._renderer.updateWidgetModeByWidth(e)}updateThemedColors(e){null===e&&(e=(0,H.getStdThemedValue)("chartProperties.paneProperties.background",this._backgroundThemeName.value())),this._themedColor.setValue(e||"")}_updateButtonsVisibility(){this._closeButtonVisibility.setValue(this._getCloseButtonVisibility()),this._upButtonVisibility.setValue(this._getUpButtonVisibility()),this._downButtonVisibility.setValue(this._getDownButtonVisibility()),this._maximizeButtonVisibility.setValue(this._getMaximizeButtonVisibility()),this._minimizeButtonVisibility.setValue(this._getMinimizeButtonVisibility())}_createActions(){this._actions.up={icon:B,action:this._onUpDownButton.bind(this,"up"),visible:this._upButtonVisibility,title:new A.WatchedValue(O),className:g.up,dataQaId:"pane-button-up"},this._actions.down={icon:k,action:this._onUpDownButton.bind(this,"down"),visible:this._downButtonVisibility,title:new A.WatchedValue(z),className:g.down,dataQaId:"pane-button-down"},this._actions.close={icon:T,action:this._onCloseButton.bind(this),visible:this._closeButtonVisibility,title:new A.WatchedValue(N),dataQaId:"pane-button-close"},this._actions.maximize={icon:D,action:this._onToggleMaximizeButton.bind(this,"Maximize pane"),visible:this._maximizeButtonVisibility,title:new A.WatchedValue(F),hotKeyTitle:G,className:g.maximize,dataQaId:"pane-button-maximize"},
|
|
this._actions.minimize={icon:D,action:this._onToggleMaximizeButton.bind(this,"Minimize pane"),visible:this._minimizeButtonVisibility,title:new A.WatchedValue(U),hotKeyTitle:G,className:g.minimize,dataQaId:"pane-button-minimize"},this._actions.collapse={icon:P,action:this._onToggleCollapseButton.bind(this,"Collapse pane"),visible:this._collapseButtonVisibility,title:new A.WatchedValue(Z),hotKeyTitle:q,className:g.collapse,dataQaId:"pane-button-collapse"},this._actions.restore={icon:R,action:this._onToggleCollapseButton.bind(this,"Restore pane"),visible:this._restoreButtonVisibility,title:new A.WatchedValue(U),hotKeyTitle:q,className:g.restore,dataQaId:"pane-button-restore"},this._actions.more={icon:I,action:this._showButtonsInContextMenu.bind(this),visible:new A.WatchedValue(!0),title:new A.WatchedValue(j),dataQaId:"pane-button-more"}}_getCloseButtonVisibility(){let e=!1;return this._pane.containsMainSeries()||this._pane.maximized().value()||(e=this._pane.dataSources().some((e=>(0,d.isStudy)(e)))),e}_onCloseButton(){this._trackEvent("Delete pane");const e=this._model.model().panes().indexOf(this._pane);this._model.removePane(e)}_getUpButtonVisibility(){const e=this._pane,t=this._model.model().panes().indexOf(e);return this._model.model().canMovePaneUp(t)}_getDownButtonVisibility(){const e=this._model.model().panes().indexOf(this._pane);return this._model.model().canMovePaneDown(e)}_onUpDownButton(e){this._trackEvent(`Move pane ${e}`);const t=this._model.model().panes().indexOf(this._pane);this._model.rearrangePanes(t,e)}_getMaximizeButtonVisibility(){return this._model.model().panes().length>1&&!this._pane.maximized().value()}_getMinimizeButtonVisibility(){return this._model.model().panes().length>1&&this._pane.maximized().value()}_onToggleMaximizeButton(e){this._trackEvent(e),this._model.toggleMaximizedPane(this._pane)}_onToggleCollapseButton(e){this._trackEvent(e),this._model.toggleCollapsedPane(this._pane)}_showButtonsInContextMenu(e){e.preventDefault(),this._moreCMShown||function(e,t,i){const s=[];if(e.maximize.visible.value()){const t=(0,h.ensure)(e.maximize.title),i=(0,h.ensureNotNull)(e.maximize.action);s.push(new v.Action({actionId:"Chart.PaneControls.MaximizePane",options:{icon:f,label:t.value(),statName:"Maximize Pane",shortcutHint:L,onExecute:()=>i()}}))}else if(e.minimize.visible.value()){const t=(0,h.ensure)(e.minimize.title),i=(0,h.ensureNotNull)(e.minimize.action);s.push(new v.Action({actionId:"Chart.PaneControls.MinimizePane",options:{icon:f,label:t.value(),statName:"Minimize Pane",shortcutHint:L,onExecute:()=>i()}}))}if(e.collapse.visible.value()){const t=(0,h.ensure)(e.collapse.title),i=(0,h.ensureNotNull)(e.collapse.action);s.push(new v.Action({actionId:"Chart.PaneControls.CollapsePane",options:{icon:C,label:t.value(),statName:"Collapse pane",shortcutHint:W,onExecute:()=>i()}}))}if(e.restore.visible.value()){const t=(0,h.ensure)(e.restore.title),i=(0,h.ensureNotNull)(e.restore.action);s.push(new v.Action({actionId:"Chart.PaneControls.RestorePane",options:{icon:V,label:t.value(),
|
|
statName:"Restore pane",shortcutHint:W,onExecute:()=>i()}}))}if(e.up.visible.value()){const t=(0,h.ensure)(e.up.title),i=(0,h.ensureNotNull)(e.up.action);s.push(new v.Action({actionId:"Chart.PaneControls.MovePaneUp",options:{icon:y,label:t.value(),statName:"Move pane up",onExecute:()=>i()}}))}if(e.down.visible.value()){const t=(0,h.ensure)(e.down.title),i=(0,h.ensureNotNull)(e.down.action);s.push(new v.Action({actionId:"Chart.PaneControls.MovePaneDown",options:{icon:E,label:t.value(),statName:"Move pane down",onExecute:()=>i()}}))}if(e.close.visible.value()){const t=(0,h.ensure)(e.close.title),i=(0,h.ensureNotNull)(e.close.action);s.push(new v.Action({actionId:"Chart.PaneControls.DeletePane",options:{icon:S,label:t.value(),statName:"Delete pane",onExecute:()=>i()}}))}const l=(0,h.ensureNotNull)(t.currentTarget).getBoundingClientRect();return w.ContextMenuManager.showMenu(s,{clientX:l.right,clientY:l.top+l.height+3,attachToXBy:"right"},void 0,void 0,i)}(this._actions,e,(()=>{this._moreCMShown=!1})).then((()=>{this._moreCMShown=!0}))}_getIsPaneMaximizeValue(){return this._pane.maximized().value()}_getIsWidgetShow(){return this._model.model().panes().length>1}_trackEvent(e){(0,l.trackEvent)("GUI","Pane action",e)}}},25682:(e,t,i)=>{"use strict";i.d(t,{createActionElement:()=>n});var s=i(62240),l=i(85842),o=i(7321),a=i(79076);function n(e,t){const{buttonClassName:i,wrapIconClassName:n,hiddenClassName:r,iconSize:d,blurOnClick:h}=t,u=document.createElement(t.tag);u.className=i,u.classList.toggle(r,!e.visible.value()),u.dataset.qaId=e.dataQaId,void 0!==e.className&&u.classList.add(e.className),void 0!==e.title&&(u.classList.add("apply-common-tooltip"),u.setAttribute("title",e.title.value()),void 0!==e.hotKeyTitle&&(u.dataset.tooltipHotkey=e.hotKeyTitle)),u.addEventListener("touchend",(0,a.wrapHandlerWithPreventEvent)(e.action)),u.addEventListener("mousedown",(t=>{0===t.button&&(e.action(t),h&&u.blur())}));const c=document.createElement("div");let _;return c.classList.add(n),_=(0,s.default)(e.icon)?e.icon.get((0,l.ensureDefined)(d))||"":e.icon,(0,o.isString)(_)?c.innerHTML=_:c.appendChild(_),u.appendChild(c),u}},20714:(e,t,i)=>{"use strict";i.d(t,{isCustomStudy:()=>l});const s={VbPFixed:!0,PivotPointsStandard:!0,VbPVisible:!0,VbPAnchored:!0};function l(e){return e in s}},5003:(e,t,i)=>{"use strict";i.d(t,{MetaInfoHelper:()=>c});var s=i(85842),l=i(73775),o=i(6620),a=i(65164),n=i(7321),r=i(16570);function d(e){return!e.groupId&&!e.isHidden&&e.id!==r.RangeDependentStudyInputNames.FirstBar&&e.id!==r.RangeDependentStudyInputNames.LastBar}var h=i(20714);const u=(0,l.getLogger)("Platform.GUI.PropertyDialog.Indicators.MetaInfo");class c{constructor(e){this._metaInfo=e}hasUserEditableInputs(){return this._metaInfo.inputs.some(d)}getUserEditableInputs(){return this._metaInfo.inputs.filter(d)}hasUserEditableProperties(){return o.StudyMetaInfo.isScriptStrategy(this._metaInfo)}hasUserEditableStyles(){const e=this._metaInfo;return e.plots.length>0||void 0!==e.bands||void 0!==e.filledAreas||(0,
|
|
h.isCustomStudy)(e.shortId)||o.StudyMetaInfo.isScriptStrategy(this._metaInfo)||Object.values(e.graphics).some((e=>void 0!==e))}getUserEditablePlots(){const e=new Set,t=this._metaInfo;return t.plots.filter((i=>{if((0,a.isColorerPlot)(i)||(0,a.isTextColorerPlot)(i)||(0,a.isDataOffsetPlot)(i)||(0,a.isOhlcColorerPlot)(i)||(0,a.isAlertConditionPlot)(i)||(0,a.isDataPlot)(i))return!1;if((0,a.isOhlcPlot)(i)){const l=i.target;if(e.has(l))return!1;e.add(l);const o=(0,s.ensureDefined)(t.ohlcPlots);return!(0,s.ensureDefined)(o[l]).isHidden}{const e=t.styles?t.styles[i.id]:void 0;return void 0===e||!e.isHidden}}))}hasUserEditableOptions(){return this.hasUserEditableInputs()||this.hasUserEditableProperties()||this.hasUserEditableStyles()}getStrategyProperties(){const e=this._metaInfo,t=e.inputs.filter(p),i={..._};for(const s of t){const t=s.internalID;i[t]=s,_.hasOwnProperty(t)||u.logWarn(`Unknown strategy input internal id ${t} in ${e.fullId}`)}return(0,n.clone)(i)}}const _={currency:void 0,backtest_fill_limits_assumption:void 0,calc_on_every_tick:void 0,calc_on_order_fills:void 0,commission_value:void 0,commission_type:void 0,initial_capital:void 0,pyramiding:void 0,slippage:void 0,default_qty_type:void 0,default_qty_value:void 0,margin_long:void 0,margin_short:void 0,use_bar_magnifier:void 0,process_orders_on_close:void 0,fill_orders_on_standard_ohlc:void 0};function p(e){return"strategy_props"===e.groupId}},59793:(e,t,i)=>{"use strict";function s(e,t){return l(e,t,t?["&"]:["&"])}function l(e,t,i){const s=[["&","&"],["<","<"],[">",">"],['"',"""],["'","'"],["'","'"]];t&&s.forEach((e=>e.reverse()));let l=e;if(!e||!e.replace)return l;for(const e of s){const[t,s]=e;i&&-1!==i.indexOf(t)||(l=l.replace(new RegExp(t,"g"),s))}return l}i.d(t,{clean:()=>l,cleanButAmpersand:()=>s})},76906:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M7.83 3.92 12.28 9l-4.45 5.08-1.13-1L10.29 9l-3.6-4.09 1.14-.99Z"/></svg>'},89139:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M14 10H4V8.5h10V10Z"/></svg>'},43477:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M8.25 13.75v-9.5h1.5v9.5h-1.5Z"/><path fill="currentColor" d="M13.75 9.75h-9.5v-1.5h9.5v1.5Z"/></svg>'},30381:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M14.5 8V3.5H10V2h6v6h-1.5Zm-11 2v4.5H8V16H2v-6h1.5Z"/></svg>'},999:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M7.45 3.5 12.48 9l-5.03 5.49 1.1 1.01L14.52 9 8.55 2.49 7.45 3.5Z"/><path fill="currentColor" d="m3.93 5.99 2.58 3-2.58 3.02 1.14.98 3.42-4-3.42-3.98L3.93 6Z"/></svg>'},60669:e=>{
|
|
e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M10 6.38V8L6 5.5 10 3v1.85A5.25 5.25 0 1 1 3.75 10a.75.75 0 0 1 1.5 0A3.75 3.75 0 1 0 10 6.38Z"/></svg>'},83475:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M9 3.9a5.13 5.13 0 0 0-4.89 3.63l-1.33-.41A6.53 6.53 0 0 1 9 2.5a6.52 6.52 0 0 1 6.18 4.47l.77-.99 1.1.87-1.7 2.17-.34.43-.5-.21-2.57-1.11.55-1.29 1.36.59A5.13 5.13 0 0 0 9 3.9ZM2.93 8.66l.46.13 2.58.7-.37 1.35-1.52-.41a5.12 5.12 0 0 0 9.8.1l1.35.4a6.52 6.52 0 0 1-12.4.2l-.77 1.06-1.13-.83 1.71-2.31.29-.39Z"/></svg>'},87184:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M9 4.6c-1.94 0-3.6 1.3-4.14 3.08l-1.34-.41a5.75 5.75 0 0 1 10.87-.3l.56-.72 1.1.87L14.58 9l-.34.42-.5-.21-2.23-.96.55-1.29.99.42A4.35 4.35 0 0 0 9 4.6ZM3.7 8.53l.46.12 2.24.61-.37 1.35-1.15-.31a4.34 4.34 0 0 0 8.27-.08l1.34.41a5.74 5.74 0 0 1-10.86.35l-.57.76-1.12-.83 1.48-2 .28-.38Z"/></svg>'},56646:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><g class="normal-eye"><path fill="currentColor" fill-rule="evenodd" d="M12 18c-3.07 0-6.21-1.95-7.92-6C5.78 7.95 8.93 6 12 6c3.08 0 6.22 1.95 7.92 6-1.7 4.05-4.84 6-7.92 6Zm8.93-6.19C19.1 7.31 15.59 5 12 5S4.9 7.32 3.08 11.8L3 12l.08.19C4.89 16.68 8.4 19 12 19c3.6 0 7.11-2.32 8.93-6.81l.07-.2-.07-.18ZM14 12a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm1 0a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z"/></g><g class="crossed-eye"><path fill="currentColor" d="M12 19a8.47 8.47 0 0 1-3.87-.95l.75-.75c1 .47 2.07.7 3.12.7 3.08 0 6.22-1.95 7.92-6a11.18 11.18 0 0 0-2.25-3.49l.7-.7a12.28 12.28 0 0 1 2.56 4L21 12l-.07.19C19.1 16.68 15.59 19 12 19Zm-7.92-7c.6 1.42 1.37 2.58 2.26 3.49l-.7.7a12.28 12.28 0 0 1-2.56-4l-.08-.2.08-.18C4.89 7.31 8.4 5 12 5c1.33 0 2.65.32 3.88.94l-.75.75A7.45 7.45 0 0 0 12 6C8.93 6 5.8 7.96 4.08 12ZM12 15a3 3 0 0 1-.73-.09l.92-.92a2 2 0 0 0 1.8-1.8l.92-.92A3 3 0 0 1 12 15Zm-2.91-2.27.92-.91A2 2 0 0 1 11.8 10l.92-.92a3 3 0 0 0-3.64 3.64Zm9.08-7.66-13.1 13.1.77.76 13.09-13.1-.76-.76Z"/></g><g fill="none" class="loading-eye"><path stroke="currentColor" d="M20.46 12c-3.5 8.67-13.42 8.67-16.92 0 3.5-8.67 13.42-8.67 16.92 0Z"/></g><g fill="none" class="animated-loading-eye"><path stroke="currentColor" d="M14.5 12a2.5 2.5 0 1 0-2.5 2.5"/></g></svg>'},3031:e=>{
|
|
e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><g class="normal-eye"><path fill="currentColor" fill-rule="evenodd" d="M12 9a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm-1 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0Z"/><path fill="currentColor" d="M16.91 8.8C15.31 4.99 12.18 3 9 3 5.82 3 2.7 4.98 1.08 8.8L1 9l.08.2C2.7 13.02 5.82 15 9 15c3.18 0 6.3-1.97 7.91-5.8L17 9l-.09-.2ZM9 14c-2.69 0-5.42-1.63-6.91-5 1.49-3.37 4.22-5 6.9-5 2.7 0 5.43 1.63 6.92 5-1.5 3.37-4.23 5-6.91 5Z"/></g><g class="crossed-eye"><path fill="currentColor" d="M3.7 15 15 3.7l-.7-.7L3 14.3l.7.7ZM9 3c1.09 0 2.17.23 3.19.7l-.77.76C10.64 4.16 9.82 4 9 4 6.31 4 3.58 5.63 2.08 9a9.35 9.35 0 0 0 1.93 2.87l-.7.7A10.44 10.44 0 0 1 1.08 9.2L1 9l.08-.2C2.69 4.99 5.82 3 9 3Z"/><path fill="currentColor" d="M9 6a3 3 0 0 1 .78.1l-.9.9A2 2 0 0 0 7 8.87l-.9.9A3 3 0 0 1 9 6ZM11.9 8.22l-.9.9A2 2 0 0 1 9.13 11l-.9.9a3 3 0 0 0 3.67-3.68Z"/><path fill="currentColor" d="M9 14c-.82 0-1.64-.15-2.43-.45l-.76.76c1.02.46 2.1.7 3.19.7 3.18 0 6.31-1.98 7.92-5.81L17 9l-.08-.2a10.44 10.44 0 0 0-2.23-3.37l-.7.7c.75.76 1.41 1.71 1.93 2.87-1.5 3.37-4.23 5-6.92 5Z"/></g><g fill="none" class="loading-eye"><path stroke="currentColor" d="M16.45 9c-3.08 7.33-11.82 7.33-14.9 0 3.08-7.33 11.82-7.33 14.9 0Z"/></g><g fill="none" class="animated-loading-eye"><path stroke="currentColor" d="M11.5 9A2.5 2.5 0 1 0 9 11.5"/></g></svg>'},13810:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path fill="currentColor" d="M5.5 11a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3ZM3 12.5a2.5 2.5 0 1 1 5 0 2.5 2.5 0 0 1-5 0Zm9.5-1.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3ZM10 12.5a2.5 2.5 0 1 1 5 0 2.5 2.5 0 0 1-5 0Zm9.5-1.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3ZM17 12.5a2.5 2.5 0 1 1 5 0 2.5 2.5 0 0 1-5 0Z"/></svg>'},96947:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" fill-rule="evenodd" d="M3 10a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm0 1a2 2 0 1 0 0-4 2 2 0 0 0 0 4Zm6-1a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm0 1a2 2 0 1 0 0-4 2 2 0 0 0 0 4Zm7-2a1 1 0 1 1-2 0 1 1 0 0 1 2 0Zm1 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0Z"/></svg>'},67548:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M8.54.84a.8.8 0 0 1 .92 0l7.5 5.25a.8.8 0 0 1 0 1.32l-7.5 5.25a.8.8 0 0 1-.92 0L1.04 7.4a.8.8 0 0 1 0-1.32L8.54.84zM2.9 6.75L9 11.02l6.1-4.27L9 2.48 2.9 6.75z"/><path fill="currentColor" d="M.84 10.8a.8.8 0 0 1 1.12-.2L9 15.51l7.04-4.93a.8.8 0 0 1 .92 1.32l-7.5 5.25a.8.8 0 0 1-.92 0l-7.5-5.25a.8.8 0 0 1-.2-1.12z"/></svg>'},95254:e=>{
|
|
e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="15" height="15"><path fill="currentColor" d="M7.23 2.58a.5.5 0 0 1 .54 0l5.5 3.5a.5.5 0 0 1 0 .84l-5.5 3.5a.5.5 0 0 1-.54 0l-5.5-3.5a.5.5 0 0 1 0-.84l5.5-3.5zM2.93 6.5L7.5 9.4l4.57-2.9L7.5 3.6 2.93 6.5z"/><path fill="currentColor" d="M1.58 9.23a.5.5 0 0 1 .69-.15L7.5 12.4l5.23-3.33a.5.5 0 0 1 .54.84l-5.5 3.5a.5.5 0 0 1-.54 0l-5.5-3.5a.5.5 0 0 1-.15-.69z"/></svg>'},52673:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path fill="currentColor" d="M6 7.5A2.5 2.5 0 0 1 8.5 5H10v1H8.5C7.67 6 7 6.67 7 7.5v1.15a3.5 3.5 0 0 1-1.93 3.13l-.45.22.45.22A3.5 3.5 0 0 1 7 15.35v1.15c0 .83.67 1.5 1.5 1.5H10v1H8.5A2.5 2.5 0 0 1 6 16.5v-1.15a2.5 2.5 0 0 0-1.38-2.23l-1.34-.67a.5.5 0 0 1 0-.9l1.34-.67A2.5 2.5 0 0 0 6 8.65V7.5ZM15.5 6H14V5h1.5A2.5 2.5 0 0 1 18 7.5v1.15c0 .94.54 1.8 1.38 2.23l1.34.67a.5.5 0 0 1 0 .9l-1.34.67A2.5 2.5 0 0 0 18 15.35v1.15a2.5 2.5 0 0 1-2.5 2.5H14v-1h1.5c.83 0 1.5-.67 1.5-1.5v-1.15a3.5 3.5 0 0 1 1.93-3.13l.45-.22-.45-.22A3.5 3.5 0 0 1 17 8.65V7.5c0-.83-.67-1.5-1.5-1.5Z"/></svg>'},45090:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M7 14H5.5A1.5 1.5 0 0 1 4 12.5v-1A2.9 2.9 0 0 0 2.66 9l.18-.13A2.9 2.9 0 0 0 4 6.5V5.5C4 4.67 4.67 4 5.5 4H7V3H5.5A2.5 2.5 0 0 0 3 5.5V6.5a1.9 1.9 0 0 1-.77 1.58c-.42.32-.84.43-.85.44C1.3 8.54 1 8.65 1 9s.3.46.38.48c0 0 .43.12.85.44.4.3.77.8.77 1.58v1A2.5 2.5 0 0 0 5.5 15H7v-1Zm4-10h1.5c.83 0 1.5.67 1.5 1.5v1A2.9 2.9 0 0 0 15.34 9l-.18.13A2.9 2.9 0 0 0 14 11.5V12.5c0 .83-.67 1.5-1.5 1.5H11v1h1.5a2.5 2.5 0 0 0 2.5-2.5V11.5c0-.79.38-1.27.77-1.58.42-.32.84-.43.85-.44.08-.02.38-.13.38-.48s-.3-.46-.38-.48c0 0-.43-.12-.85-.44-.4-.3-.77-.8-.77-1.58v-1A2.5 2.5 0 0 0 12.5 3H11v1Z"/></svg>'},98590:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path fill="currentColor" fill-rule="evenodd" d="m5.12 12 3-6h7.76l3 6-3 6H8.12l-3-6ZM7.5 5h9l3.5 7-3.5 7h-9L4 12l3.5-7Zm6.5 7a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm1 0a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z"/></svg>'},42415:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" fill-rule="evenodd" d="m3.1 9 2.28-5h7.24l2.28 5-2.28 5H5.38L3.1 9Zm1.63-6h8.54L16 9l-2.73 6H4.73L2 9l2.73-6Zm5.77 6a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0Zm1 0a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0Z"/></svg>'},20525:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path fill="currentColor" d="M10.5 6a.5.5 0 0 0-.5.5V7h4v-.5a.5.5 0 0 0-.5-.5h-3ZM15 7h3v1h-1.04l-.88 9.64a1.5 1.5 0 0 1-1.5 1.36H9.42a1.5 1.5 0 0 1-1.5-1.36L7.05 8H6V7h3v-.5c0-.83.67-1.5 1.5-1.5h3c.83 0 1.5.67 1.5 1.5V7ZM8.05 8l.87 9.55a.5.5 0 0 0 .5.45h5.17a.5.5 0 0 0 .5-.45L15.94 8h-7.9Z"/></svg>'},63886:e=>{
|
|
e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" width="18" height="18"><path fill="currentColor" d="M7.5 4a.5.5 0 0 0-.5.5V5h4v-.5a.5.5 0 0 0-.5-.5h-3ZM12 5h3v1h-1.05l-.85 7.67A1.5 1.5 0 0 1 11.6 15H6.4a1.5 1.5 0 0 1-1.5-1.33L4.05 6H3V5h3v-.5C6 3.67 6.67 3 7.5 3h3c.83 0 1.5.67 1.5 1.5V5ZM5.06 6l.84 7.56a.5.5 0 0 0 .5.44h5.2a.5.5 0 0 0 .5-.44L12.94 6H5.06Z"/></svg>'},72838:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="15" height="15" fill="none"><path stroke="currentColor" d="M11 2 7.5 5 4 2" class="bracket-up"/><path stroke="currentColor" d="M4 13l3.5-3 3.5 3" class="bracket-down"/></svg>'},37570: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="M20.53 3.73 14 9.33 7.47 3.73M7.47 24.27l6.53 -5.60 6.53 5.60"/></svg>'},77255:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28" width="28" height="28"><path fill="currentColor" d="M14 7v12.93l5.18-4.31.64.76-6.32 5.27-6.32-5.27.64-.76L13 19.93V7h1z"/></svg>'},36533:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28" width="28" height="28"><path fill="currentColor" d="M19.32 6H8.68A2.68 2.68 0 0 0 6 8.68V11h1V8.68C7 7.75 7.75 7 8.68 7h10.64c.93 0 1.68.75 1.68 1.68V11h1V8.68C22 7.2 20.8 6 19.32 6zM7 19.32c0 .93.75 1.68 1.68 1.68h10.64c.93 0 1.68-.75 1.68-1.68V17h1v2.32C22 20.8 20.8 22 19.32 22H8.68A2.68 2.68 0 0 1 6 19.32V17h1v2.32z"/></svg>'},96163: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="m7.47 9.33 6.53 -5.60L20.53 9.33M20.53 18.67l-6.53 5.60L7.47 18.67"/></svg>'},17303:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28" width="28" height="28"><path fill="currentColor" d="M18 7h5v1h-2.01l-1.33 14.64a1.5 1.5 0 0 1-1.5 1.36H9.84a1.5 1.5 0 0 1-1.49-1.36L7.01 8H5V7h5V6c0-1.1.9-2 2-2h4a2 2 0 0 1 2 2v1Zm-6-2a1 1 0 0 0-1 1v1h6V6a1 1 0 0 0-1-1h-4ZM8.02 8l1.32 14.54a.5.5 0 0 0 .5.46h8.33a.5.5 0 0 0 .5-.46L19.99 8H8.02Z"/></svg>'},62072:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28" width="28" height="28"><path fill="currentColor" d="M13.5 6.35l6.32 5.27-.64.76L14 8.07V21h-1V8.07l-5.18 4.31-.64-.76 6.32-5.27z"/></svg>'},51511:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="15" height="15"><circle fill="currentColor" cx="12.75" cy="7.5" r="1.25"/><circle fill="currentColor" cx="7.5" cy="7.5" r="1.25"/><circle fill="currentColor" cx="2.25" cy="7.5" r="1.25"/></svg>'},23643:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="15" height="15"><path fill="currentColor" d="M11.83 8.88l-.66-.76L8 10.9V3H7v7.9L3.83 8.12l-.66.76 4.33 3.78 4.33-3.78z"/></svg>'},53809:e=>{
|
|
e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="15" height="15" fill="none"><path fill="currentColor" d="M4.5 12A1.5 1.5 0 0 1 3 10.5V9H2v1.5A2.5 2.5 0 0 0 4.5 13h6a2.5 2.5 0 0 0 2.5-2.5V9h-1v1.5c0 .83-.67 1.5-1.5 1.5h-6z" class="bracket-up"/><path fill="currentColor" d="M4.5 3C3.67 3 3 3.67 3 4.5V6H2V4.5A2.5 2.5 0 0 1 4.5 2h6A2.5 2.5 0 0 1 13 4.5V6h-1V4.5c0-.83-.67-1.5-1.5-1.5h-6z" class="bracket-down"/></svg>'},64895:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="15" height="15" fill="none"><path stroke="currentColor" d="m4 5 3.5-3L11 5" class="bracket-up"/><path stroke="currentColor" d="M11 10l-3.5 3L4 10" class="bracket-down"/></svg>'},84075:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="15" height="15"><path fill="currentColor" d="M6.5 2a.5.5 0 0 0-.5.5V3h3v-.5a.5.5 0 0 0-.5-.5h-2ZM10 3h3v1h-1.05l-.86 8.65A1.5 1.5 0 0 1 9.59 14H5.4a1.5 1.5 0 0 1-1.49-1.35L3.05 4H2V3h3v-.5C5 1.67 5.67 1 6.5 1h2c.83 0 1.5.67 1.5 1.5V3ZM4.05 4l.86 8.55a.5.5 0 0 0 .5.45H9.6a.5.5 0 0 0 .5-.45L10.94 4h-6.9Z"/></svg>'},12948:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="15" height="15"><path fill="currentColor" d="M11.83 6.12l-.66.76L8 4.1V12H7V4.1L3.83 6.88l-.66-.76L7.5 2.34l4.33 3.78z"/></svg>'},24242:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16" height="16"><path fill="currentColor" d="M2.4 5.46a.8.8 0 0 1 1.14-.05L8 9.42l4.46-4.01a.8.8 0 0 1 1.08 1.18L8 11.58 2.47 6.59a.8.8 0 0 1-.06-1.13z"/></svg>'},71518:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="15" height="15"><path fill="currentColor" d="M3.5 5.58c.24-.28.65-.3.92-.07L7.5 8.14l3.08-2.63a.65.65 0 1 1 .84.98L7.5 9.86 3.58 6.49a.65.65 0 0 1-.07-.91z"/></svg>'},43185:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 7 7" width="7" height="7"><path fill="currentColor" d="M3.5 7L7 4H4V0H3V4H0L3.5 7Z"/></svg>'},68954:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9 7" width="9" height="7"><path fill="currentColor" d="M.5 3.5L4 0v3h5v1H4v3z"/></svg>'},91209:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9 7" width="9" height="7"><path fill="currentColor" d="M8.5 3.5L5 0v3H0v1h5v3z"/></svg>'},35550:e=>{e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 7 7" width="7" height="7"><path fill="currentColor" d="M3.5 0L0 3h3v4h1V3h3L3.5 0z"/></svg>'},69454:(e,t,i)=>{"use strict";i.d(t,{default:()=>s});const s=function(e){for(var t=-1,i=null==e?0:e.length,s={};++t<i;){var l=e[t];s[l[0]]=l[1]}return s}},80141:(e,t,i)=>{"use strict";i.d(t,{default:()=>s});const s=function(e){return e&&e.length?e[0]:void 0}},56770:(e,t,i)=>{"use strict";i.d(t,{nanoid:()=>s});let s=(e=21)=>crypto.getRandomValues(new Uint8Array(e)).reduce(((e,t)=>e+=(t&=63)<36?t.toString(36):t<62?(t-26).toString(36).toUpperCase():t>62?"-":"_"),"")}}]); |