(window.webpackJsonp = window.webpackJsonp || []).push([ ['floating-toolbars'], { '0ZwQ': function (t, e, o) { 'use strict'; var i = o('P5fv'), n = o.n(i), r = (o('bf9a'), o('Eyy1')), s = o('j1f4'), a = o('Vdly'), l = o('aIyQ'), d = o.n(l), c = o('hY0g'), p = o.n(c), u = o('5qpw'), h = o('mrSG'), g = (function (t) { function e() { return (null !== t && t.apply(this, arguments)) || this; } return ( Object(h.__extends)(e, t), (e.prototype._startLoading = function () { return o .e('hammerjs') .then(o.bind(null, 'be1f')) .then(function (t) { return t.HammerJS; }); }), e ); })(o('cZRT').a), v = o('qFKp'), _ = o('VVxS'), f = o('yB98'); o('PwLo'); o.d(e, 'a', function () { return x; }); var b = v.CheckMobile.iOS(); function y() { return Object(r.ensureNotNull)(window.containerElement); } function w() { if (!b) return window.innerWidth; var t = y(), e = getComputedStyle(t), o = (e.paddingLeft && parseFloat(e.paddingLeft)) || 0, i = (e.paddingRight && parseFloat(e.paddingRight)) || 0; return t.clientWidth - o - i; } function m() { if (!b) return window.innerHeight; var t = y(), e = getComputedStyle(t), o = (e.paddingTop && parseFloat(e.paddingTop)) || 0, i = (e.paddingBottom && parseFloat(e.paddingBottom)) || 0; return t.clientHeight - o - i; } var C = '
' + (Modernizr.mobiletouch ? '
' : '') + '
' + f + '
', x = (function () { function t(e) { (this._widget = document.createElement('div')), (this._isVertical = !1), (this._hiddingTimeoutId = null), (this._visibility = new p.a(!1)), (this._windowResizeListener = this._onWindowResize.bind(this)), (this._reorderedDelegate = new d.a()), (this._responsiveResizeFunction = null), t._toolbars.push(this), (this._options = e), (this._widget = n()(C).get(0)), (this._content = this._widget .getElementsByClassName('js-content') .item(0)), this._setZIndex(t._startZIndex + t._toolbars.length - 1), this._options.addClass && (this._widget.className += ' ' + this._options.addClass), this._options.layout && 'auto' !== this._options.layout && ((this._isVertical = 'vertical' === this._options.layout), this._updateLayoutType(), this._updateAxisOption()); } return ( (t.prototype.destroy = function () { this.hide(!0), t._toolbars.splice(t._toolbars.indexOf(this), 1), document.body.contains(this._widget) && document.body.removeChild(this._widget), (this._widget.innerHTML = ''), (this._responsiveResizeFunction = null); }), (t.prototype.setResponsiveResizeFunc = function (t) { this._responsiveResizeFunction = t; }), (t.prototype.isVisible = function () { return this._visibility.value(); }), (t.prototype.visibility = function () { return this._visibility.readonly(); }), (t.prototype.isVertical = function () { return this._isVertical; }), (t.prototype.show = function () { var t = this; this.isVisible() || (document.body.contains(this._widget) || (this._init(), document.body.appendChild(this._widget)), this._setHiddingTimeout(null), window.addEventListener('resize', this._windowResizeListener), this.raise(), this._visibility.setValue(!0), this._widget.classList.contains('i-hidden') ? (this._widget.classList.remove('i-hidden'), setTimeout(function () { t.isVisible() && t._widget.classList.remove('i-closed'); })) : this._widget.classList.remove('i-closed'), this._onWindowResize()); }), (t.prototype.hide = function (t) { var e = this; if ((void 0 === t && (t = !1), this.isVisible())) { var o = this._widget.classList.contains('i-closed'); if ( (this._widget.classList.add('i-closed'), this._visibility.setValue(!1), t || o) ) this._setHiddingTimeout(null), this._widget.classList.add('i-hidden'); else { var i = setTimeout(function () { e._setHiddingTimeout(null), e._widget.classList.add('i-hidden'); }, this.hideDuration()); this._setHiddingTimeout(i); } window.removeEventListener( 'resize', this._windowResizeListener, ); } }), (t.prototype.raise = function () { t._toolbars.length + t._startZIndex !== this._zIndex() && (t._toolbars.splice(t._toolbars.indexOf(this), 1), t._toolbars.push(this), t._updateAllZIndexes()); }), (t.prototype.hideDuration = function () { return 0.75 * s.dur; }), (t.prototype.addWidget = function (t, e) { void 0 === e && (e = {}); var o = this.widgetsCount(); if ( (void 0 === e.index && (e.index = o), e.index < 0 || e.index > o) ) throw new Error('Index must be in [0, ' + o + ']'); var i = document.createElement('div'); (i.className = 'tv-floating-toolbar__widget js-widget'), i.appendChild(t); var n = e.index === o ? null : this._content.childNodes.item(e.index); this._content.insertBefore(i, n), this._onWindowResize(); }), (t.prototype.removeWidget = function (t) { var e = this._findWrapperForWidget(t); e && (this._content.removeChild(e), this._onWindowResize()); }), (t.prototype.widgetsCount = function () { return this._content.childNodes.length; }), (t.prototype.showWidget = function (t) { var e = this._findWrapperForWidget(t); e && e.classList.remove('i-hidden'); }), (t.prototype.hideWidget = function (t) { var e = this._findWrapperForWidget(t); e && e.classList.add('i-hidden'); }), (t.prototype.removeWidgets = function () { for (; this._content.firstChild; ) this._content.removeChild(this._content.firstChild); this._onWindowResize(); }), (t.prototype.onWidgetsReordered = function () { return this._reorderedDelegate; }), (t.prototype.onContextMenu = function (t) { var e = this; Modernizr.mobiletouch ? new g().load().then(function (o) { var i = new o(e._widget); i.get('press').set({ time: 500 }), i.on('press', function (o) { e._preventWidgetTouchEndEvent(), t(o.srcEvent); }); }) : this._widget.addEventListener('contextmenu', t); }), (t.prototype._determineCurrentLayoutVertical = function (t) { var e = this._isVertical ? t.height : t.width; return w() < e; }), (t.prototype._getWidget = function () { return this._widget; }), (t.prototype._findWrapperForWidget = function (t) { for ( var e = this._content.getElementsByClassName('js-widget'), o = 0; o < e.length; ++o ) { var i = e.item(o); if (i.contains(t)) return i; } return null; }), (t.prototype._onVerticalChanged = function (t, e) {}), (t.prototype._setHiddingTimeout = function (t) { null !== this._hiddingTimeoutId && clearTimeout(this._hiddingTimeoutId), (this._hiddingTimeoutId = t); }), (t.prototype._preventWidgetTouchEndEvent = function () { var t = this, e = function (o) { o.preventDefault(), t._widget.removeEventListener('touchend', e); }; this._widget.addEventListener('touchend', e); }), (t.prototype._updateLayoutType = function () { this._widget.classList.toggle('i-vertical', this._isVertical); }), (t.prototype._updateAxisOption = function () { if (this._options.dragOnlyInsideToolbar) { var t = this._isVertical ? 'y' : 'x'; Object(u.lazyJqueryUI)(n()(this._content)).sortable( 'option', 'axis', t, ); } }), (t.prototype._onWindowResize = function () { if ('auto' === (this._options.layout || 'auto')) { var t = this._isVertical, e = this._getCorrectedWidgetRect(); (this._isVertical = this._determineCurrentLayoutVertical(e)), this._updateLayoutType(), t !== this._isVertical && (this._onVerticalChanged(this._isVertical, t), this._updateAxisOption()); } this._checkPosition(), this._resizeResponsive(); }), (t.prototype._resizeResponsive = function () { if (null !== this._responsiveResizeFunction) { var t = this._options.layout || 'auto'; 'auto' === t && (t = this._isVertical ? 'vertical' : 'horizontal'); var e = 'vertical' === t ? this._widget.clientHeight : this._widget.clientWidth, o = ('vertical' === t ? m() : w()) - e; this._responsiveResizeFunction(e, o, t); } }), (t.prototype._checkPosition = function () { var t = this._getCorrectedWidgetRect(), e = { left: t.left, top: t.top }; this._correctPosition(e), (t.left === e.left && t.top === e.top) || ((this._widget.style.left = e.left + 'px'), (this._widget.style.top = e.top + 'px')); }), (t.prototype._correctPosition = function (t) { var e = this._getCorrectedWidgetRect(); t.left + e.width > w() && (t.left = Math.max(0, w() - e.width)), t.top + e.height > m() && (t.top = Math.max(0, m() - e.height)), (t.left = Math.max(0, t.left)), (t.top = Math.max(0, t.top)); }), (t.prototype._setZIndex = function (t) { this._widget.style.zIndex = String(t); }), (t.prototype._zIndex = function () { return Number(this._widget.style.zIndex); }), (t.prototype._loadPosition = function () { var t; if ('device' === this._options.positionStorageType) { var e = _.TVLocalStorage.getItem( this._options.positionSettingsKey, ); t = null !== e ? JSON.parse(e) : this._options.defaultPosition; } else t = Object(a.getJSON)( this._options.positionSettingsKey, this._options.defaultPosition, ); (this._widget.style.left = Math.round(t.left) + 'px'), (this._widget.style.top = Math.round(t.top) + 'px'), this._onWindowResize(); }), (t.prototype._savePosition = function () { var t = this._widget.getBoundingClientRect(); if ('device' === this._options.positionStorageType) try { _.TVLocalStorage.setItem( this._options.positionSettingsKey, JSON.stringify({ left: t.left, top: t.top }), ); } catch (e) {} else Object(a.setJSON)(this._options.positionSettingsKey, { left: t.left, top: t.top, }); }), (t.prototype._init = function () { this._loadPosition(), Object(u.lazyJqueryUI)(n()(this._widget)).draggable({ containment: 'window', drag: this._onDragEvent.bind(this), handle: '.js-drag', stop: this._savePosition.bind(this), }), this._options.allowSortable && this._initSortable(), this._widget.addEventListener( Modernizr.mobiletouch ? 'touchstart' : 'mousedown', this.raise.bind(this), ); }), (t.prototype._onDragEvent = function (t, e) { this._correctPosition(e.position); }), (t.prototype._initSortable = function () { var t = this, e = -1; Object(u.lazyJqueryUI)(n()(this._content)).sortable({ start: function (t, o) { e = o.item.index(); }, stop: function (o, i) { var n = i.item.index(); e !== n && t._reorderedDelegate.fire(e, n); }, tolerance: 'pointer', distance: 5, containment: !!this._options.dragOnlyInsideToolbar && 'parent', scroll: !1, placeholder: 'sortable-placeholder', forcePlaceholderSize: !0, }), this._updateAxisOption(); }), (t.prototype._getCorrectedWidgetRect = function () { var t = this._widget.getBoundingClientRect(); if (this._widget.classList.contains('i-closed')) { var e = t.width * (1 / 0.925 - 1), o = t.height * (1 / 0.925 - 1); return { bottom: t.bottom + o / 2, height: t.height + o, left: t.left - e / 2, right: t.right + e / 2, top: t.top - o / 2, width: t.width + e, }; } return t; }), (t._updateAllZIndexes = function () { t._toolbars.forEach(function (e, o) { e._setZIndex(t._startZIndex + o); }); }), (t._startZIndex = 20), (t._toolbars = []), t ); })(); }, '2JFs': function (t, e) { t.exports = ''; }, '9On3': function (t, e) { t.exports = ''; }, ADFN: function (t, e, o) {}, BiGZ: function (t, e) { t.exports = ''; }, BsMi: function (t, e) { t.exports = ''; }, HKvk: function (t, e) { t.exports = ''; }, Kjbl: function (t, e) { t.exports = ''; }, NDCK: function (t, e) { t.exports = ''; }, Nz7V: function (t, e) { t.exports = ''; }, PwLo: function (t, e, o) {}, RRhU: function (t, e) { t.exports = ''; }, RsxI: function (t, e) { t.exports = ''; }, TXAa: function (t, e, o) {}, WRHa: function (t, e) { t.exports = ''; }, XqDt: function (t, e) { t.exports = ''; }, dhuF: function (t, e) { t.exports = ''; }, eHtW: function (t, e) { t.exports = ''; }, 'fUH/': function (t, e) { t.exports = ''; }, gPdB: function (t, e) { t.exports = ''; }, gmn6: function (t, e, o) { 'use strict'; o.r(e), function (t) { o.d(e, 'FavoriteDrawingToolbar', function () { return h; }); var i = o('mrSG'), n = (o('P5fv'), o('nbsC'), o('bf9a'), o('YFKU'), o('0ZwQ')), r = o('b2d7'), s = o('7KDR'), a = o('5VQP'), l = o('mMWL'), d = o('MP+M'), c = o('Vdly'), p = o('hY0g'), u = o.n(p), h = (o('TXAa'), (function (e) { function o(t) { var o = e.call(this, { allowSortable: !Modernizr.mobiletouch, dragOnlyInsideToolbar: !0, defaultPosition: t, positionSettingsKey: 'chart.favoriteDrawingsPosition', positionStorageType: 'device', }) || this; return ( (o._linetoolsWidgets = {}), (o._canBeShownValue = new u.a(!1)), o._attachHandlers(), o._loadVisibilityState(), o ); } return ( Object(i.__extends)(o, e), (o.prototype.show = function () { this._canBeShownValue.value() && (c.setValue( 'ChartFavoriteDrawingToolbarWidget.visible', !0, ), this.isVisible() || this._renderAllLinetools(), e.prototype.show.call(this)); }), (o.prototype.hide = function () { c.setValue('ChartFavoriteDrawingToolbarWidget.visible', !1), e.prototype.hide.call(this); }), (o.prototype.canBeShown = function () { return this._canBeShownValue.readonly(); }), (o.prototype._onFavoriteAdded = function (t) { this._canBeShownValue.setValue(!0), this.addWidget(this._createLinetoolWidget(t)), this.show(); }), (o.prototype._onFavoriteRemoved = function (t) { this.removeWidget(this._linetoolsWidgets[t]), delete this._linetoolsWidgets[t], 0 === r.a.favoritesCount() && (this._canBeShownValue.setValue(!1), this.hide()); }), (o.prototype._onFavoriteMoved = function () { this._renderAllLinetools(); }), (o.prototype._onSelectedLinetoolChanged = function (t) { var e = this; Object.keys(this._linetoolsWidgets).forEach(function (o) { e._linetoolsWidgets[o].classList.toggle( 'i-active', t === o, ); }); }), (o.prototype._createLinetoolWidget = function (e) { var o = $( t.render( '{{{icon}}}', { icon: d.a[e].icon, isActive: e === l.tool.value(), title: d.a[e].localizedName, }, ), )[0]; return ( o.addEventListener('click', function (t) { t.preventDefault(), l.tool.value() !== e && l.tool.setValue(e); }), (this._linetoolsWidgets[e] = o), o ); }), (o.prototype._renderAllLinetools = function () { var t = this; (this._linetoolsWidgets = {}), this.removeWidgets(), r.a .favorites() .filter(function (t) { return d.a[t]; }) .forEach(function (e) { t.addWidget(t._createLinetoolWidget(e)); }); }), (o.prototype._attachHandlers = function () { var t = this; r.a.favoriteAdded.subscribe(this, this._onFavoriteAdded), r.a.favoriteRemoved.subscribe( this, this._onFavoriteRemoved, ), r.a.favoriteMoved.subscribe(this, this._onFavoriteMoved), r.a.favoritesSynced.subscribe(null, function () { t._loadVisibilityState(), t._renderAllLinetools(); }), this.onWidgetsReordered().subscribe( this, function (e, o) { if ( (r.a.favoriteMoved.unsubscribe( t, t._onFavoriteMoved, ), !r.a.moveFavorite(r.a.favorite(e), o)) ) throw new Error('Something went wrong'); r.a.favoriteMoved.subscribe(t, t._onFavoriteMoved); }, ), this.onContextMenu(function (e) { e.preventDefault(); var o = new s.Action({ label: window.t( 'Hide Favorite Drawing Tools Toolbar', ), onExecute: function () { t.hide(); }, }); a.ContextMenuManager.createMenu([o]).then(function (t) { t.show(e); }); }), l.tool.subscribe( this._onSelectedLinetoolChanged.bind(this), ); }), (o.prototype._loadVisibilityState = function () { var t = r.a.favoritesCount() > 0; this._canBeShownValue.setValue(t), c.getBool( 'ChartFavoriteDrawingToolbarWidget.visible', !0, ) && t ? this.show() : this.hide(); }), o ); })(n.a)); }.call(this, o('nbsC')); }, 'm/4m': function (t, e, o) {}, my99: function (t, e, o) { 'use strict'; o.r(e), o.d(e, 'GroupButtonFloatingToolbar', function () { return l; }); var i = o('mrSG'), n = o('Eyy1'), r = o('0ZwQ'), s = o('aIyQ'), a = o.n(s), l = (o('m/4m'), o('ADFN'), (function (t) { function e(o) { var i = t.call(this, e._prepareOptions(o)) || this; return ( (i._onWidgetStateChangedDelegate = new a.a()), (i._statedWidgets = []), (i._currentPopup = null), (i._onWindowClickedListener = i._onWindowClicked.bind(i)), i ); } return ( Object(i.__extends)(e, t), (e.prototype.show = function () { t.prototype.show.call(this), document.addEventListener( 'mousedown', this._onWindowClickedListener, ); }), (e.prototype.hide = function () { t.prototype.hide.call(this), document.removeEventListener( 'mousedown', this._onWindowClickedListener, ); }), (e.prototype.destroy = function () { this._closePopup(), t.prototype.destroy.call(this); }), (e.prototype.addGroupedWidget = function (t, o) { void 0 === o && (o = {}), Object(n.assert)( t.states.length > 0 && -1 !== e._getStateIndexById(t, t.currentStateId), 'Argument is invalid (count: ' + t.states.length + ', state: ' + t.currentStateId + ')', ); var i = document.createElement('div'); (i.className = 'tv-grouped-floating-toolbar__widget-wrapper apply-common-tooltip'), t.widgetAddClass && i.classList.add(t.widgetAddClass), i.setAttribute('title', t.tooltip); var r = { isEnabled: !0, statedWidget: t, toolbarWidget: i }, s = this._onWidgetClicked.bind(this, r); (r.clickListener = s), i.addEventListener('click', s), this._updateWidgetPreview(r), this.addWidget(i, o), this._statedWidgets.push(r); }), (e.prototype.findGroupedWidget = function (t) { for (var e = this._statedWidgets.length, o = 0; o < e; ++o) { if (this._statedWidgets[o].statedWidget.id === t) return o; } return -1; }), (e.prototype.removeGroupedWidget = function (t) { for (var e = this._statedWidgets.length, o = 0; o < e; ++o) { var i = this._statedWidgets[o]; if (i.statedWidget.id === t) return ( this._isPopupCreatedForWidget(t) && this._closePopup(), void 0 !== i.clickListener && i.toolbarWidget.removeEventListener( 'click', i.clickListener, ), this.removeWidget(i.toolbarWidget), this._statedWidgets.splice(o, 1), void this._updatePopupPosition() ); } Object(n.assert)(!1, 'Unknown groupId(' + t + ')'); }), (e.prototype.updateGroupedWidget = function (t, e) { this._closePopup(); var o = this._ensuredGetWidgetDataForId(t); (o.statedWidget.currentStateId = e.currentStateId), (o.statedWidget.states = e.states), this._updateWidgetPreview(o); }), (e.prototype.setGroupedWidgetEnabled = function (t, e) { var o = this._ensuredGetWidgetDataForId(t); (o.isEnabled = e), o.toolbarWidget.classList.toggle('i-disabled', !e); }), (e.prototype.setGroupedWidgetState = function (t, o) { var i = this._ensuredGetWidgetDataForId(t); Object(n.assert)( -1 !== e._getStateIndexById(i.statedWidget, o), 'Unknown stateId (' + o + ')', ), (i.statedWidget.currentStateId = o), this._updateSubWidgetsState(i.statedWidget), this._updateWidgetPreview(i); }), (e.prototype.onWidgetStateChanged = function () { return this._onWidgetStateChangedDelegate; }), (e.prototype._onVerticalChanged = function (t, e) { this._updatePopupPosition(); }), (e.prototype._ensuredGetWidgetDataForId = function (t) { for (var e = 0, o = this._statedWidgets; e < o.length; e++) { var i = o[e]; if (i.statedWidget.id === t) return i; } throw new Error('Unknown groupId(' + t + ')'); }), (e.prototype._onWidgetClicked = function (t, e) { var o = this._currentPopup && this._isPopupCreatedForWidget(t.statedWidget.id); this._closePopup(), !o && t.isEnabled && this._createPopup(t); }), (e.prototype._createPopup = function (t) { var e = this, o = { createdFor: t.toolbarWidget, element: document.createElement('div'), stateWidgetId: t.statedWidget.id, widgets: [], }; o.element.className += 'tv-grouped-floating-toolbar__popup js-popup'; var i = t.statedWidget.states.length; t.statedWidget.states.forEach(function (n, r) { var s = e._createSubWidget(t, n), a = e._onSubWidgetClicked.bind(e, t, n.id); s.addEventListener('click', a), o.widgets.push({ clickListener: a, stateWidget: n, widget: s, }), s.classList.add( 'tv-grouped-floating-toolbar__sub-widget--slide-right-' + r, ), s.classList.add( 'tv-grouped-floating-toolbar__sub-widget--slide-left-' + (i - r + 1), ), n.readonly || o.element.appendChild(s); }), (this._currentPopup = o), this._updateSubWidgetsState(t.statedWidget), t.toolbarWidget.classList.add('i-dropped'), this._getWidget().appendChild(this._currentPopup.element), Promise.resolve().then(function () { e._currentPopup && e._currentPopup.element.classList.add('i-opened'); }), this._updatePopupPosition(); }), (e.prototype._closePopup = function () { var t = this; if ( (this._statedWidgets.forEach(function (t) { t.toolbarWidget.classList.remove('i-dropped'); }), this._currentPopup) ) { var e = this._currentPopup.widgets, o = this._currentPopup.element; (this._currentPopup = null), e.forEach(function (t) { t.widget.removeEventListener('click', t.clickListener); }), o.classList.remove('i-opened'), o.addEventListener('transitionend', function (e) { e.target === o && t._getWidget().removeChild(o); }); } }), (e.prototype._updateWidgetPreview = function (t) { var o = e._getStateIndexById( t.statedWidget, t.statedWidget.currentStateId, ); Object(n.assert)( -1 !== o, 'Unknown state id: ' + t.statedWidget.currentStateId, ); var i = t.statedWidget.states[o].widget.cloneNode(!0); t.toolbarWidget.firstChild ? t.toolbarWidget.replaceChild(i, t.toolbarWidget.firstChild) : (t.toolbarWidget.appendChild(i), t.toolbarWidget.appendChild(e._createCaret())); }), (e.prototype._updateSubWidgetsState = function (t) { this._currentPopup && this._isPopupCreatedForWidget(t.id) && this._currentPopup.widgets.forEach(function (o) { o.widget.classList.toggle( e._activeSubWidgetClass, o.stateWidget.id === t.currentStateId, ); }); }), (e.prototype._updatePopupPosition = function () { if (this._currentPopup) { var t = this._currentPopup.createdFor, e = this._getWidget().getBoundingClientRect(), o = this._findWrapperForWidget(t); if (!o || !this._currentPopup) throw new Error( "Toolbar has no wrapper for preview's widget or there is no popup", ); var i = o.getBoundingClientRect(), n = this._currentPopup.element.getBoundingClientRect(), r = this._currentPopup.element; if (this.isVertical()) r.classList.remove( 'tv-grouped-floating-toolbar__popup--at-top', ), (r.style.top = i.top - e.top + 1 + 'px'), (r.style.left = ''), e.left > window.innerWidth - e.right ? r.classList.add( 'tv-grouped-floating-toolbar__popup--at-left', ) : r.classList.remove( 'tv-grouped-floating-toolbar__popup--at-left', ); else { r.classList.remove( 'tv-grouped-floating-toolbar__popup--at-left', ); var s = 0; i.left + n.width > window.innerWidth ? e.left + n.width > window.innerWidth && (s = e.width - n.width) : (s = i.left - e.left + 1), (r.style.left = s + 'px'), e.bottom + n.height > window.innerHeight ? r.classList.add( 'tv-grouped-floating-toolbar__popup--at-top', ) : (r.classList.remove( 'tv-grouped-floating-toolbar__popup--at-top', ), (r.style.top = '')); } } }), (e.prototype._isPopupCreatedForWidget = function (t) { return Boolean( this._currentPopup && this._currentPopup.stateWidgetId === t, ); }), (e.prototype._createSubWidget = function (t, e) { var o = document.createElement('div'); return ( (o.className += 'tv-grouped-floating-toolbar__sub-widget'), t.statedWidget.stateWidgetAddClass && o.classList.add(t.statedWidget.stateWidgetAddClass), o.appendChild(e.widget), o ); }), (e.prototype._onSubWidgetClicked = function (t, e) { this._closePopup(), t.statedWidget.currentStateId !== e && (this.setGroupedWidgetState(t.statedWidget.id, e), this._onWidgetStateChangedDelegate.fire( t.statedWidget.id, e, )); }), (e.prototype._onWindowClicked = function (t) { if ( this.isVisible() && this._currentPopup && !e._isEventInElement(t, this._currentPopup.element) ) { for (var o = 0; o < this._statedWidgets.length; ++o) if ( e._isEventInElement( t, this._statedWidgets[o].toolbarWidget, ) ) return; this._closePopup(); } }), (e._getStateIndexById = function (t, e) { for (var o = 0; o < t.states.length; ++o) if (t.states[o].id === e) return o; return -1; }), (e._createCaret = function () { var t = document.createElement('div'); return ( (t.className = 'tv-caret tv-caret--small tv-caret--colored tv-grouped-floating-toolbar__caret'), t ); }), (e._prepareOptions = function (t) { return ( t.addClass ? (t.addClass += ' tv-grouped-floating-toolbar') : (t.addClass = ' tv-grouped-floating-toolbar'), t ); }), (e._isEventInElement = function (t, e) { return t.target === e || e.contains(t.target); }), (e._activeSubWidgetClass = 'tv-grouped-floating-toolbar__sub-widget--current'), e ); })(r.a)); }, n2Ch: function (t, e) { t.exports = ''; }, nApS: function (t, e) { t.exports = ''; }, nSyy: function (t, e, o) {}, noRL: function (t, e) { t.exports = ''; }, tPkB: function (t, e, o) { 'use strict'; (function (e, i) { var n = o('ogJP').notNull, r = o('DxCR'), s = r.PropertyPage, a = r.ColorBinding, l = o('mMWL'), d = o('bR4N').bindPopupMenu, c = o('Ocx9').DefaultProperty, p = o('my99').GroupButtonFloatingToolbar, u = o('a7Ha').LineEnd, h = o('VNzU').isMultipleLayout, g = o('yMne'), v = o('CW80'), _ = v.createLineToolProperties, f = v.isLineTool, b = o('PC8g').trackEvent, y = o('ytGH').MultipleLineWidthsProperty; function w(t) { (this._chartWidgetCollection = t), (this._bindings = []), (this._hasAlertWathcedValue = null), (this._$templatesButton = null), (this._currentProperties = null), (this._toolbarWidgets = []), (this._clearPropertiesOnHideTimeoutId = null), this._init(), this.attachHandlers(); } function m(t, e) { t.push({ id: e, widget: $( '
' + e + '
', )[0], }); } function C(t, e) { t.push({ id: e.value, widget: $(e.iconSvgCode)[0], readonly: e.readonly, }); } function x(t) { return (function (t, e) { return $('
') .addClass('tv-linetool-properties-toolbar__icon') .addClass(e) .append(t)[0]; })(t, 'tv-linetool-properties-toolbar__icon--line-props'); } o('m/4m'), o('nSyy'), (w.prototype.activeChartWidget = function () { return this._chartWidgetCollection.activeChartWidget.value(); }), (w.prototype.selectedSources = function () { return this._chartWidgetCollection.selectedSources.value(); }), (w.prototype._init = function () { (this._floatingToolbar = new p({ addClass: 'tv-linetool-properties-toolbar', defaultPosition: { top: g.HEADER_TOOLBAR_HEIGHT_EXPANDED + 15, left: window.innerWidth / 2, }, positionSettingsKey: 'properties_toolbar.position', positionStorageType: 'server', })), this._floatingToolbar .onWidgetStateChanged() .subscribe(this, this._onPropertyChangedInToolbar), (this._sourceActions = this._createSourceActions()), this._sourceActions.forEach(function (t) { this._floatingToolbar.addWidget(t.button); }, this); }), (w.prototype._bindPopupMenuDirection = function () { return this._floatingToolbar.isVertical() ? 'right' : 'down'; }), (w.prototype._onPropertyChangedInToolbar = function (t, e) { if ( ('linewidth' === t || t.endsWith('.linewidth')) && this._lineWidthsProperty ) { var o = this.activeChartWidget().model(), i = 1 === this.selectedSources().length ? window.t('Set line tool width') : window.t('Set line tool widths'); return ( o.beginUndoMacro(i), this._lineWidthsProperty.setValue(e, { applyValue: function (t, e) { o.setProperty(t, e); }, }), void o.endUndoMacro() ); } this._currentProperties && this.activeChartWidget() .model() .setProperty(this._currentProperties[t], e); }), (w.prototype._onPropertyChanged = function (t, e) { ('linewidth' === t && e !== this._lineWidthsProperty) || this._floatingToolbar.setGroupedWidgetState(t, e.value()); }), (w.prototype._hideAllSourceActions = function () { this._sourceActions.forEach(function (t) { this._floatingToolbar.hideWidget(t.button); }, this), (this._sourceActionsVisible = !1); }), (w.prototype._updateSourceActionsVisibility = function (t) { (this._sourceActionsVisible = !1), this._sourceActions.forEach(function (e) { !e.isVisibleForSources || e.isVisibleForSources(t) ? (this._floatingToolbar.showWidget(e.button), (this._sourceActionsVisible = !0)) : this._floatingToolbar.hideWidget(e.button); }, this); }), (w.prototype.attachHandlers = function () { l.tool.subscribe(this.onToolChanged.bind(this), { callWithLast: !0, }), this._chartWidgetCollection.selectedSources.subscribe( this.onSourceChanged.bind(this), ), this._chartWidgetCollection.layout.subscribe( this._updateCloneButtonTitle.bind(this), ); }), (w.prototype._updateCloneButtonTitle = function () { this._setButtonTitle(this._cloneButton, this._cloneButtonTitle()); }), (w.prototype.onToolChanged = function (t, e) { if (t && -1 !== t.toLowerCase().indexOf('linetool')) { e = e instanceof c ? e : _(t); this._hideAllSourceActions(), this.showPropertiesOf(t, e), this.showTemplatesOf({ tool: t, properties: e }), this._updateVisibility(); } else this.selectedSources() ? this.onSourceChanged(this.selectedSources()) : this.hide(); }), (w.prototype.findSourceOnWidget = function (t) { for ( var e = 0; e < this.activeChartWidget().model().panes().length; e++ ) for ( var o = this.activeChartWidget() .model() .panes() [e].orderedSources(), i = 0; i < o.length; i++ ) if (o[i] === t) return o[i]; }), (w.prototype.onSourceChanged = function (t) { if ( (this._hasAlertWathcedValue && (this._hasAlertWathcedValue.destroy(), (this._hasAlertWathcedValue = null)), t && t.length) ) if (1 === t.length) { var e = t[0]; f(e) && e.isAvailableInFloatingWidget() && this.findSourceOnWidget(e) ? (!e.userEditEnabled() || ('LineToolBrush' !== e.toolname && this.activeChartWidget().model().lineBeingCreated()) ? this._hideAllSourceActions() : (this._updateSourceActionsVisibility(t), e.canHasAlert() && ((this._hasAlertWathcedValue = e.hasAlert.spawn()), this._hasAlertWathcedValue.subscribe( this._updateSourceActionsVisibility.bind(this, t), ))), this.showPropertiesOf(e.getConstructor(), e.properties()), this.showTemplatesOf({ source: e }), this._setupToggleLockButton(e), this._updateVisibility()) : this.hide(); } else this._clearProperties(), this._$templatesButton && this._floatingToolbar.removeWidget( this._$templatesButton[0], ), this._updateSourceActionsVisibility(t), this._setupToggleLockButton(t[0]), this._updateVisibility(), this._showWidthsButton(); else this.hide(); }), (w.prototype._createWidthsButton = function (t) { if ( (t = t || this.selectedSources().filter(f)).length < 1 || !y.canCreateForSources(t) ) return !1; this._lineWidthsProperty && (this._lineWidthsProperty.destroy(), (this._lineWidthsProperty = null)); var e = t .map(function (t) { return t.widthsProperty(); }) .filter(n); (this._lineWidthsProperty = new y(e)), this._lineWidthsProperty.subscribe( this, function () { this._floatingToolbar.setGroupedWidgetState( 'linewidth', this._lineWidthsProperty.value(), ); }.bind(this), ); var o = []; return ( [ { value: 'mixed', iconSvgCode: W, readonly: !0 }, { value: 1, iconSvgCode: P }, { value: 2, iconSvgCode: S }, { value: 3, iconSvgCode: T }, { value: 4, iconSvgCode: L }, ].forEach(C.bind(null, o)), this._floatingToolbar.addGroupedWidget( { id: 'linewidth', currentStateId: this._lineWidthsProperty.value(), stateWidgetAddClass: 'tv-linetool-properties-toolbar__sub-widget', states: o, widgetAddClass: 'tv-linetool-properties-toolbar__grouped-button', tooltip: 1 === t.length ? window.t('Line tool width') : window.t('Line tool widths'), }, { index: this._$templatesButton ? 1 : 0 }, ), !0 ); }), (w.prototype._showWidthsButton = function () { var t = this.selectedSources().filter(f); y.canCreateForSources(t) && this._createWidthsButton(t); }), (w.prototype.showTemplatesOf = function (t) {}), (w.prototype.templatesList = function () { return this._templatesList; }), (w.prototype._createButton = function (t) { t = t || {}; var e = document.createElement('div'); if ( (this._setButtonTitle(e, t.title), (e.className += 'tv-linetool-properties-toolbar__button apply-common-tooltip'), e.addEventListener('click', t.callback), t.svgIcon) ) { var o = document.createElement('div'); o.classList.add('tv-linetool-properties-toolbar__icon'), o.appendChild(t.svgIcon), e.appendChild(o); } if (t.addCaret) { var i = document.createElement('div'); (i.className = 'tv-caret tv-caret--small tv-caret--colored tv-linetool-properties-toolbar__caret'), e.appendChild(i); } return ( t.name && ((e.dataset.name = t.name), (e.dataset.role = 'button')), e ); }), (w.prototype._setButtonTitle = function (t, e) { t.setAttribute('title', e); }), (w.prototype._createSettingsButton = function () { var t = this; return this._createButton({ name: 'settings', title: $.t('Settings'), callback: function () { t._trackContextAction('Settings'), t .activeChartWidget() .showChartPropertiesForSource( t.selectedSources()[0], null, { onWidget: t.activeChartWidget()._options.onWidget }, ); }, svgIcon: $(o('RsxI'))[0], }); }), (w.prototype._createZOrderButton = function () { var t = this._createButton({ name: 'visual-order', title: $.t('Visual Order'), callback: function () { t.classList.contains('i-dropped') || (this._trackContextAction('Visual order'), $(t).trigger('button-popup', [this._getZOrderActions()])); }.bind(this), svgIcon: $(o('tzjn'))[0], addCaret: !0, }); return ( d($(t), null, { direction: this._bindPopupMenuDirection.bind(this), event: 'button-popup', reverse: !1, notCloseOnButtons: !0, activeClass: 'i-dropped', }), t ); }), (w.prototype._cloneButtonTitle = function () { var t = $.t('Clone'); return ( e.enabled('datasource_copypaste') && (t += ', ' + $.t('Copy')), h(this._chartWidgetCollection.layout.value()) && (t += ', ' + $.t('Sync')), t ); }), (w.prototype._createCloneButton = function () { var t = this._createButton({ name: 'clone-copy-sync', title: this._cloneButtonTitle(), callback: function () { t.classList.contains('i-dropped') || (this._trackContextAction('Clone'), $(t).trigger('button-popup', [this._getCloneActions()])); }.bind(this), svgIcon: $(o('WRHa'))[0], addCaret: !0, }); return ( d($(t), null, { direction: this._bindPopupMenuDirection.bind(this), event: 'button-popup', reverse: !1, notCloseOnButtons: !0, activeClass: 'i-dropped', }), t ); }), (w.prototype._createLockButton = function () { var t = this._createButton({ name: 'lock', title: $.t('Lock'), callback: function () { this._trackContextAction('Lock'), this.activeChartWidget().toggleLockSelectedObject(); }.bind(this), svgIcon: $(o('gPdB'))[0], }); return ( (this._lockChangeListener = function (e) { t.classList.toggle('i-active', !!e.value()); }), t ); }), (w.prototype._createHideButton = function () { return this._createButton({ name: 'hide', title: $.t('Hide'), callback: function () { this._trackContextAction('Hide'), this.activeChartWidget().hideSelectedObject(); }.bind(this), svgIcon: $(o('nApS'))[0], }); }), (w.prototype._createRemoveButton = function () { return this._createButton({ name: 'remove', title: $.t('Remove'), callback: function () { this._trackContextAction('Remove'), this.activeChartWidget().removeSelectedSources(); }.bind(this), svgIcon: $(o('RRhU'))[0], }); }), (w.prototype._createSourceActions = function () { var t = []; return ( e.enabled('property_pages') && t.push({ button: this._createSettingsButton(), isVisibleForSources: function (t) { return 1 === t.length; }, }), (this._cloneButton = this._createCloneButton()), t.push( { button: this._createZOrderButton() }, { button: this._cloneButton, isVisibleForSources: function (t) { return ( t.filter(function (t) { return t.cloneable() || t.copiable() || !!t.linkKey; }).length > 0 ); }, }, { button: this._createLockButton() }, { button: this._createHideButton() }, { button: this._createRemoveButton() }, ), t ); }), (w.prototype._getCloneActions = function () { var t = this.activeChartWidget().model(), e = this.selectedSources(), o = [], i = e.filter(function (t) { return t.cloneable(); }); i.length > 0 && o.push({ name: 'clone', title: window.t('Clone'), action: function () { t.cloneLineTools(i); }, }); var n = e.filter(function (t) { return t.copiable(); }); return ( n.length > 0 && o.push({ name: 'copy', title: window.t('Copy'), shortcut: 'Ctrl-C', action: function () { t.copySourcesToClip(n); }, }), h(this._chartWidgetCollection.layout.value()) ? (e.filter(function (t) { return !!t.linkKey; }).length ? o.push({ name: 'stop-sync', title: $.t('Stop syncing'), action: function () { t.unlinkLines(e); }, }) : o.push({ name: 'sync', title: $.t('Sync to all charts'), action: function () { t.copyToOtherCharts(e); }, }), o) : o ); }), (w.prototype._getZOrderActions = function () { var t = [], e = this.selectedSources(), o = this.activeChartWidget().model(), i = { name: 'bring-to-front', title: $.t('Bring to Front'), action: function () { o.bringToFront(e); }, }, n = { name: 'send-to-back', title: $.t('Send to Back'), action: function () { o.sendToBack(e); }, }, r = { name: 'bring-forward', title: $.t('Bring Forward'), action: function () { o.bringForward(e); }, }, s = { name: 'send-backward', title: $.t('Send Backward'), action: function () { o.sendBackward(e); }, }, a = o.paneForSource(e[0]).getZOrderMinMax(); return ( 1 === e.length && e[0].zorder() === a.minZOrder && ((n.disabled = !0), (s.disabled = !0)), 1 === e.length && e[0].zorder() === a.maxZOrder && ((r.disabled = !0), (i.disabled = !0)), t.push(i, n, r, s), t ); }), (w.prototype._getPossibleProperty = function (t) { for ( var e = [], o = this._defaultToolProperties(), i = 0; i < o.length; i++ ) { var n = o[i]; n.name in t && e.push(n); } return ( t.extendLeft || (e = e.map(function (t) { return ( 'leftEnd' === t.name && (t.comboboxOptions = t.comboboxOptions.filter(function ( t, ) { return t.value !== w.LINE_EXTEND; })), t ); })), t.extendRight || (e = e.map(function (t) { return ( 'rightEnd' === t.name && (t.comboboxOptions = t.comboboxOptions.filter(function ( t, ) { return t.value !== w.LINE_EXTEND; })), t ); })), e ); }), (w.prototype.showPropertiesOf = function (t, e) { this._toolExceptionCases || (this._toolExceptionCases = this._createToolExceptionCases()); var o = this._toolExceptionCases[t] || this._getPossibleProperty(e); if ( (this._clearProperties(), (this._propertiesVisible = !1), o.length) ) { for (var i = {}, n = o.length - 1; n >= 0; --n) { for ( var r = o[n], s = e, a = r.name.split('.'), l = 0; l < a.length; ++l ) s = s && s[a[l]]; var d = r.showIf; if ('function' != typeof d || d(s, e)) { var c = r.factory; if (c && c.call(this)) continue; if (!s) continue; this._propertiesVisible = !0; var p = []; if ('combobox' !== r.inputType) { var u = this.colorPropertyControl(s, r, e); this._floatingToolbar.addWidget(u[0], { index: this._$templatesButton ? 1 : 0, }), this._toolbarWidgets.push(u); continue; } r.simple ? r.comboboxOptions.forEach(m.bind(null, p)) : r.comboboxOptions.forEach(C.bind(null, p)), r.propertyProxy && (s = r.propertyProxy( e, this.activeChartWidget().model(), )), (i[r.name] = s), s.subscribe( this, this._onPropertyChanged.bind(this, r.name, s), ), this._floatingToolbar.addGroupedWidget( { id: r.name, currentStateId: s.value(), stateWidgetAddClass: 'tv-linetool-properties-toolbar__sub-widget', states: p, widgetAddClass: 'tv-linetool-properties-toolbar__grouped-button', tooltip: r.title, }, { index: this._$templatesButton ? 1 : 0 }, ); } } this._currentProperties = i; } }), (w.prototype._updateVisibility = function () { this._propertiesVisible || this._sourceActionsVisible || this._templatesVisible ? this._show() : this.hide(); }), (w.prototype._clearProperties = function () { -1 !== this._floatingToolbar.findGroupedWidget('linewidth') && this._floatingToolbar.removeGroupedWidget('linewidth'), this._lineWidthsProperty && (this._lineWidthsProperty.destroy(), (this._lineWidthsProperty = null)), this._currentProperties && (this._clearPropertiesOnHideTimeoutId && (clearTimeout(this._clearPropertiesOnHideTimeoutId), (this._clearPropertiesOnHideTimeoutId = null)), Object.keys(this._currentProperties).forEach(function (t) { 'linewidth' !== t && (this._currentProperties[t].unsubscribeAll(this), this._floatingToolbar.removeGroupedWidget(t)); }, this), (this._currentProperties = null), this._toolbarWidgets.forEach(function (t) { this._floatingToolbar.removeWidget(t[0]), t.remove(); }, this), (this._toolbarWidgets = []), this.clearBindings()); }), (w.prototype.hide = function () { this._floatingToolbar.hide(), (this._clearPropertiesOnHideTimeoutId = setTimeout( this._clearProperties.bind(this), this._floatingToolbar.hideDuration(), )); }), (w.prototype._show = function () { this._clearPropertiesOnHideTimeoutId && (clearTimeout(this._clearPropertiesOnHideTimeoutId), (this._clearPropertiesOnHideTimeoutId = null)), this._floatingToolbar.show(); }), (w.prototype.refresh = function () { this.onSourceChanged(this.selectedSources()); }), (w.prototype._setupToggleLockButton = function (t) { t !== this._selectedSourceBk && (this._selectedSourceBk && this._selectedSourceBk.properties().frozen && this._selectedSourceBk .properties() .frozen.unsubscribe(this, this._lockChangeListener), t && t.properties().frozen && (t .properties() .frozen.subscribe(this, this._lockChangeListener), this._lockChangeListener(t.properties().frozen)), (this._selectedSourceBk = t)); }), (w.prototype.bindControl = function (t) { this._bindings.push(t); }), (w.prototype.clearBindings = function (t) { for (var e = this._bindings.length; e--; ) this._bindings[e].destroy(); this._bindings.length = 0; }), (w.prototype.colorPropertyControl = function (t, e, o) { var i = s.prototype.createColorPicker({ addClass: 'tv-linetool-properties-toolbar__color-picker apply-common-tooltip', direction: this._bindPopupMenuDirection.bind(this), }); i.attr('title', e.title); var n = i.find('input'), r = $(e.iconSvgCode); return ( r.on('click', function (t) { n.data('tvcolorpicker') || n.focus(); }), $(document).on('click', function (t) { n.data('tvcolorpicker') ? n.addClass('i-active') : n.removeClass('i-active'); }), n.after(r), this.bindControl( new a( i, t, !0, this.activeChartWidget().model(), null, w.getTransparency(e, o), ), ), 'string' == typeof e.addClass && i.addClass(e.addClass), i ); }), (w.getTransparency = function (t, e) { if (t.transparency) return t.transparencyField ? e[t.transparencyField].value() : e.transparency.value(); }), (w.prototype.createLineEndPropertyProxy = function (t, e) { return function (o, n) { var r; r = o[e] && o[e].value() ? w.LINE_EXTEND : o[t].value(); var s = new i(r); return ( s.subscribe(this, function (i) { var r = i.value(); r < 2 ? (n.beginUndoMacro(''), o[t].setValue(r), o[e] && o[e].setValue(!1), n.endUndoMacro()) : (n.beginUndoMacro(''), o[t].setValue(u.Normal), o[e] && o[e].setValue(!0), n.endUndoMacro()); }), s ); }; }), (w.LINE_EXTEND = 42); var W = $(o('noRL'))[0], P = x(o('wLZl')), S = x(o('XqDt')), T = x(o('znEV')), L = x(o('NDCK')), E = x(o('9On3')), k = x(o('Nz7V')), B = x(o('dhuF')), V = x(o('n2Ch')), z = x(o('eHtW')), M = x(o('BiGZ')), F = x(o('fUH/')), A = x(o('BsMi')), I = o('HKvk'), O = o('2JFs'), H = o('Kjbl'); (w.prototype._defaultToolProperties = function () { return [ { name: 'color', inputType: 'colorPicker', iconSvgCode: I, title: $.t('Color'), }, { name: 'linecolor', inputType: 'colorPicker', iconSvgCode: I, title: $.t('Color'), }, { name: 'backgroundColor', inputType: 'colorPicker', iconSvgCode: O, title: $.t('Background Color'), transparency: !0, }, { name: 'linewidth', inputType: 'combobox', comboboxOptions: [ { value: 1, iconSvgCode: P }, { value: 2, iconSvgCode: S }, { value: 3, iconSvgCode: T }, { value: 4, iconSvgCode: L }, ], title: $.t('Width'), factory: w.prototype._createWidthsButton, }, { name: 'linestyle', title: $.t('Style'), inputType: 'combobox', comboboxOptions: [ { value: 0, iconSvgCode: P }, { value: 1, iconSvgCode: E }, { value: 2, iconSvgCode: k }, ], }, { name: 'leftEnd', title: $.t('Left End'), inputType: 'combobox', comboboxOptions: [ { value: u.Normal, iconSvgCode: B }, { value: u.Arrow, iconSvgCode: V }, { value: w.LINE_EXTEND, iconSvgCode: z }, ], propertyProxy: this.createLineEndPropertyProxy( 'leftEnd', 'extendLeft', ), }, { name: 'rightEnd', title: $.t('Right End'), inputType: 'combobox', comboboxOptions: [ { value: u.Normal, iconSvgCode: M }, { value: u.Arrow, iconSvgCode: F }, { value: w.LINE_EXTEND, iconSvgCode: A }, ], propertyProxy: this.createLineEndPropertyProxy( 'rightEnd', 'extendRight', ), }, ]; }), (w.prototype._riskPropertiesExceptionCases = function () { return [ { name: 'textcolor', title: $.t('Text color'), inputType: 'colorPicker', iconSvgCode: H, }, { name: 'profitBackground', title: $.t('Profit Background Color'), inputType: 'colorPicker', iconSvgCode: O, transparency: !0, transparencyField: 'profitBackgroundTransparency', }, { name: 'stopBackground', title: $.t('Stop Background Color'), inputType: 'colorPicker', iconSvgCode: O, transparency: !0, transparencyField: 'stopBackgroundTransparency', }, { name: 'linecolor', title: $.t('Border color'), inputType: 'colorPicker', iconSvgCode: I, }, ]; }), (w.prototype._elliottPropertiesExceptionCases = function () { return [ { name: 'color', title: $.t('Color'), inputType: 'colorPicker', iconSvgCode: I, }, ]; }), (w.prototype._rangeExceptionCases = function () { return [ { name: 'linecolor', inputType: 'colorPicker', iconSvgCode: I, title: $.t('Color'), }, { name: 'backgroundColor', inputType: 'colorPicker', iconSvgCode: O, title: $.t('Background Color'), transparency: !0, transparencyField: 'backgroundTransparency', }, { name: 'linewidth', inputType: 'combobox', comboboxOptions: [ { value: 1, iconSvgCode: P }, { value: 2, iconSvgCode: S }, { value: 3, iconSvgCode: T }, { value: 4, iconSvgCode: L }, ], title: 'Width', }, ]; }), (w.prototype._textPropertiesExceptionCases = function () { return [ { name: 'color', title: $.t('Text color'), inputType: 'colorPicker', iconSvgCode: H, }, { name: 'backgroundColor', title: $.t('Background Color'), inputType: 'colorPicker', iconSvgCode: O, showIf: function (t, e) { return !e || !e.fillBackground || !!e.fillBackground.value(); }, }, { name: 'borderColor', title: $.t('Border Color'), inputType: 'colorPicker', iconSvgCode: I, }, { name: 'bordercolor', title: $.t('Border Color'), inputType: 'colorPicker', iconSvgCode: I, }, { name: 'fontsize', title: $.t('Font Size'), inputType: 'combobox', simple: !0, addClass: 'simple fontsize-dropdown', comboboxOptions: [10, 11, 12, 14, 16, 20, 24, 28, 32, 40], }, ]; }), (w.prototype._notePropertiesExceptionCases = function () { return [ { name: 'markerColor', title: $.t('Marker Color'), inputType: 'colorPicker', iconSvgCode: I, }, { name: 'textColor', title: $.t('Text color'), inputType: 'colorPicker', iconSvgCode: H, }, { name: 'fontSize', title: $.t('Font Size'), inputType: 'combobox', simple: !0, addClass: 'simple fontsize-dropdown', comboboxOptions: [10, 11, 12, 14, 16, 20, 24, 28, 32, 40], }, ]; }), (w.prototype._arrowMarkPropertiesExceptionCases = function () { return [ { name: 'arrowColor', title: $.t('Arrow color'), inputType: 'colorPicker', iconSvgCode: O, }, { name: 'color', title: $.t('Text color'), inputType: 'colorPicker', iconSvgCode: H, }, ]; }), (w.prototype._brushPropertiesExceptionCases = function () { return [ { name: 'linecolor', inputType: 'colorPicker', iconSvgCode: I, title: $.t('Color'), }, { name: 'backgroundColor', inputType: 'colorPicker', iconSvgCode: O, transparency: !0, showIf: function (t, e) { return e.fillBackground.value(); }, title: $.t('Background Color'), }, { name: 'linewidth', inputType: 'combobox', comboboxOptions: [ { value: 1, iconSvgCode: P }, { value: 2, iconSvgCode: S }, { value: 3, iconSvgCode: T }, { value: 4, iconSvgCode: L }, ], title: $.t('Line Width'), }, { name: 'leftEnd', title: $.t('Left End'), inputType: 'combobox', comboboxOptions: [ { value: u.Normal, iconSvgCode: B }, { value: u.Arrow, iconSvgCode: V }, ], propertyProxy: this.createLineEndPropertyProxy( 'leftEnd', 'extendLeft', ), }, { name: 'rightEnd', title: $.t('Right End'), inputType: 'combobox', comboboxOptions: [ { value: u.Normal, iconSvgCode: M }, { value: u.Arrow, iconSvgCode: F }, ], propertyProxy: this.createLineEndPropertyProxy( 'rightEnd', 'extendRight', ), }, ]; }), (w.prototype._buttonsForGrouppedProperties = function (t, e) { var o = []; return ( t && o.push({ name: 'collectibleColors', inputType: 'colorPicker', iconSvgCode: I, title: $.t('One color for all lines'), }), e && o.push({ name: 'linewidth', inputType: 'combobox', comboboxOptions: [ { value: 1, iconSvgCode: P }, { value: 2, iconSvgCode: S }, { value: 3, iconSvgCode: T }, { value: 4, iconSvgCode: L }, ], factory: w.prototype._createWidthsButton, }), o ); }), (w.prototype._trackContextAction = function (t) { b('GUI', 'Context action on drawings', t); }), (w.prototype._createToolExceptionCases = function () { return { LineToolRegressionTrend: [], LineToolGannSquare: w.prototype._buttonsForGrouppedProperties( !0, !0, ), LineToolFibTimeZone: w.prototype._buttonsForGrouppedProperties( !0, !0, ), LineToolBrush: w.prototype._brushPropertiesExceptionCases(), LineToolPolyline: w.prototype._brushPropertiesExceptionCases(), LineToolText: w.prototype._textPropertiesExceptionCases(), LineToolTextAbsolute: w.prototype._textPropertiesExceptionCases(), LineToolBalloon: w.prototype._textPropertiesExceptionCases(), LineToolCallout: w.prototype._textPropertiesExceptionCases(), LineToolPriceLabel: w.prototype._textPropertiesExceptionCases(), LineToolArrowMarker: [ { name: 'textColor', title: $.t('Text color'), inputType: 'colorPicker', iconSvgCode: H, }, ], LineToolArrowMarkLeft: w.prototype._arrowMarkPropertiesExceptionCases(), LineToolArrowMarkRight: w.prototype._arrowMarkPropertiesExceptionCases(), LineToolArrowMarkUp: w.prototype._arrowMarkPropertiesExceptionCases(), LineToolArrowMarkDown: w.prototype._arrowMarkPropertiesExceptionCases(), LineToolFlagMark: [ { name: 'flagColor', title: $.t('Flag color'), inputType: 'colorPicker', iconSvgCode: O, }, ], LineToolElliottCircle: w.prototype._elliottPropertiesExceptionCases(), LineToolElliottSubminuette: w.prototype._elliottPropertiesExceptionCases(), LineToolElliottMinor: w.prototype._elliottPropertiesExceptionCases(), LineToolElliottMinorRetr: w.prototype._elliottPropertiesExceptionCases(), LineToolElliottMajorRetr: w.prototype._elliottPropertiesExceptionCases(), LineToolDateRange: w.prototype._rangeExceptionCases(), LineToolPriceRange: w.prototype._rangeExceptionCases(), LineToolDateAndPriceRange: w.prototype._rangeExceptionCases(), LineToolIcon: [ { name: 'color', title: $.t('Color'), inputType: 'colorPicker', iconSvgCode: O, }, ], LineToolNote: w.prototype._notePropertiesExceptionCases(), LineToolNoteAbsolute: w.prototype._notePropertiesExceptionCases(), LineToolThreeDrivers: [ { name: 'color', title: $.t('Text color'), inputType: 'colorPicker', iconSvgCode: I, }, ], LineToolRiskRewardLong: w.prototype._riskPropertiesExceptionCases(), LineToolRiskRewardShort: w.prototype._riskPropertiesExceptionCases(), LineToolBarsPattern: [ { name: 'color', title: $.t('Color'), inputType: 'colorPicker', iconSvgCode: O, }, ], LineToolProjection: [ { name: 'color1', title: $.t('Background color 1'), inputType: 'colorPicker', iconSvgCode: O, transparency: !0, }, { name: 'color2', title: $.t('Background color 2'), inputType: 'colorPicker', iconSvgCode: O, transparency: !0, }, { name: 'linewidth', inputType: 'combobox', comboboxOptions: [ { value: 1, iconSvgCode: P }, { value: 2, iconSvgCode: S }, { value: 3, iconSvgCode: T }, { value: 4, iconSvgCode: L }, ], }, ], LineToolAnchoredVWAP: [ { name: 'styles.VWAP.color', title: $.t('Color'), inputType: 'colorPicker', iconSvgCode: I, }, { name: 'styles.VWAP.linewidth', title: $.t('Width'), inputType: 'combobox', comboboxOptions: [ { value: 1, iconSvgCode: P }, { value: 2, iconSvgCode: S }, { value: 3, iconSvgCode: T }, { value: 4, iconSvgCode: L }, ], factory: w.prototype._createWidthsButton, }, ], LineToolFibCircles: w.prototype._buttonsForGrouppedProperties( !0, !0, ), LineToolFibChannel: w.prototype._buttonsForGrouppedProperties( !0, !0, ), LineToolFibSpeedResistanceArcs: w.prototype._buttonsForGrouppedProperties( !0, !0, ), LineToolFibRetracement: w.prototype._buttonsForGrouppedProperties( !0, !0, ), LineToolFibSpeedResistanceFan: w.prototype._buttonsForGrouppedProperties( !0, !0, ), LineToolTrendBasedFibTime: w.prototype._buttonsForGrouppedProperties( !0, !0, ), LineToolFibWedge: w.prototype._buttonsForGrouppedProperties( !0, !0, ), LineToolGannComplex: w.prototype._buttonsForGrouppedProperties( !0, !0, ), LineToolGannFixed: w.prototype._buttonsForGrouppedProperties( !0, !0, ), LineToolGannFan: w.prototype._buttonsForGrouppedProperties( !0, !0, ), LineToolPitchfan: w.prototype._buttonsForGrouppedProperties( !0, !0, ), LineToolPitchfork: w.prototype._buttonsForGrouppedProperties( !0, !0, ), LineToolSchiffPitchfork2: w.prototype._buttonsForGrouppedProperties( !0, !0, ), LineToolSchiffPitchfork: w.prototype._buttonsForGrouppedProperties( !0, !0, ), LineToolInsidePitchfork: w.prototype._buttonsForGrouppedProperties( !0, !0, ), LineToolTrendBasedFibExtension: w.prototype._buttonsForGrouppedProperties( !0, !0, ), }; }), (t.exports = w); }.call(this, o('Kxc7'), o('tc+8'))); }, tzjn: function (t, e) { t.exports = ''; }, wLZl: function (t, e) { t.exports = ''; }, yB98: function (t, e) { t.exports = ''; }, znEV: function (t, e) { t.exports = ''; }, }, ]);