webpackJsonp([7, 32], { 1044: function(e, t) { e.exports = { wrap: 'wrap-18oKCBRc-' }; }, 1045: function(e, t) { e.exports = { button: 'button-1IIz2ju4-', first: 'first-bfrNico9-', last: 'last-3h-LFsOr-' }; }, 1046: function(e, t) { e.exports = { menu: 'menu-16FRUKka-' }; }, 1047: function(e, t) { e.exports = { button: 'button-YsN2vRuA-', withText: 'withText-JhQdRoPu-', withoutText: 'withoutText-f6SoijeW-', }; }, 1048: function(e, t) { e.exports = ''; }, 1049: function(e, t) { e.exports = { button: 'button-2-lC3gh4-' }; }, 1050: function(e, t) { e.exports = ''; }, 1051: function(e, t) { e.exports = ''; }, 1052: function(e, t) { e.exports = { value: 'value-DWZXOdoK-', selected: 'selected-2V87KUXm-', metric: 'metric-uxyW5qk0-', capitalized: 'capitalized-OlFzHeUi-', }; }, 1053: function(e, t) { e.exports = { form: 'form-2itceCqS-', interacting: 'interacting-3joY26dg-', input: 'input-z46tLQgj-', menu: 'menu-35lWsSKr-', add: 'add-1NrfSAvb-', hovered: 'hovered-1nwOcWv8-', wrap: 'wrap-1oB2WI2R-', }; }, 1054: function(e, t) { e.exports = { button: 'button-1scLo53s-', hidden: 'hidden-2GRQzIQ1-' }; }, 1055: function(e, t) { e.exports = ''; }, 1056: function(e, t) { e.exports = { interval: 'interval-1GDsfL5i-', showGroup: 'showGroup-1N6m7h-N-', button: 'button-1XkSWU32-', first: 'first-2UbSFGzF-', last: 'last-1rdUnwE6-', menu: 'menu-1fA401bY-', dropdown: 'dropdown-1zOBoqnG-', menuContent: 'menuContent-1vyIDg3J-', }; }, 1057: function(e, t) { e.exports = { button: 'button-3wAyKO3i-' }; }, 1058: function(e, t) { e.exports = ''; }, 1059: function(e, t) { e.exports = ''; }, 1060: function(e, t) { e.exports = { dottedCloud: 'dottedCloud-1Vw3lVny-', check: 'check-3V48_rMp-', spinningCloud: 'spinningCloud-2fkbB-rw-', arrow: 'arrow-1zkKEROH-', arrowGap: 'arrowGap-gjAe6jEn-', container: 'container-riYIb01a-', unsaved: 'unsaved-2Kg_w3Vw-', hovered: 'hovered-18DzoW0E-', saving: 'saving-31YVVfHU-', saved: 'saved-2kLd4nmd-', }; }, 1061: function(e, t) { e.exports = { menu: 'menu-92vrwS4x-', opened: 'opened-GQFVkrpV-', autoSaveWrapper: 'autoSaveWrapper-1MJY41zr-', }; }, 1062: function(e, t) { e.exports = { button: 'button-1EU5-JL7-', isDisabled: 'isDisabled-1RjJSnJ7-', text: 'text-1HWeUAzA-', }; }, 1063: function(e, t) { e.exports = { button: 'button-3zsRYmii-', blue: 'blue-pwiZpV6t-', green: 'green-3Nv9iVIZ-', isInteractive: 'isInteractive-12fBlRGf-', hovered: 'hovered-Kk1N76Nt-', }; }, 1064: function(e, t) { e.exports = ''; }, 1076: function(e, t) { e.exports = { wrap: 'wrap-CUt4Mg1V-', inner: 'inner-32OP7ejC-', actions: 'actions-1cGPn1dW-', input: 'input-3lfOzLDc-', isExpanded: 'isExpanded-1pdStI5Z-', }; }, 1077: function(e, t) { e.exports = { label: 'label-1LxfyrID-', icon: 'icon-3bTRbX0U-', text: 'text-2BJe_3ce-' }; }, 1078: function(e, t) { e.exports = ''; }, 1079: function(e, t) { e.exports = { item: 'item-b8AKccvl-', hovered: 'hovered-2SpHqnXp-' }; }, 1080: function(e, t) { e.exports = ''; }, 1081: function(e, t) { e.exports = { wrap: 'wrap-15BhAobm-', opened: 'opened-1yAGeGGi-', full: 'full-2VMT2UlC-', first: 'first-1vAzGgSq-', last: 'last-xMjAcadb-', medium: 'medium-1BEsHMFf-', loader: 'loader-1uURoPBh-', }; }, 1082: function(e, t) { e.exports = { buttonUndo: 'buttonUndo-342XpPC1-', buttonRedo: 'buttonRedo-3o_XdU_J-' }; }, 1083: function(e, t) { e.exports = ''; }, 1084: function(e, t) { e.exports = ''; }, 698: function(e, t, n) { 'use strict'; function o(e) { var t = e.text, n = e.className, o = e.displayMode, i = e.collapseWhen, a = void 0 === i ? ['medium', 'small'] : i, r = p.e(e, ['text', 'className', 'displayMode', 'collapseWhen']), s = !a.includes(o); return v.createElement( x.a, p.a({}, r, { text: s ? t : void 0, className: b(n, L.button, s ? L.withText : L.withoutText), }), ); } function i(e) { var t = e.className, n = p.e(e, ['className']); return v.createElement(x.a, p.a({}, n, { className: b(t, D.button) })); } function a(e) { var t, n = e.metric.charAt(0), o = n.toUpperCase() === n; return v.createElement( 'div', { className: b(J.value, ((t = {}), (t[J.selected] = e.isSelected), t)) }, e.value, v.createElement('span', { className: b(J.metric, o && J.capitalized) }, e.metric), ); } function r(e, t) { return Math.max(1, Math.min(e, Object(Q.getMaxResolutionValue)(t))); } function s(e) { var t, n = l(he.ResolutionKind.Seconds), o = l(he.ResolutionKind.Minutes), i = l(he.ResolutionKind.Hours), a = l(he.ResolutionKind.Days, !0), r = l(he.ResolutionKind.Weeks, !0), s = l(he.ResolutionKind.Months, !0), c = l(he.ResolutionKind.Range); return ( e.forEach(function(e) { var t = new he.Interval(e); t.isHours() ? i.items.push(e) : t.isMinutes() ? Object(Q.isHour)(+t.multiplier()) ? i.items.push(e) : o.items.push(e) : t.isSeconds() ? n.items.push(e) : t.isDays() ? a.items.push(e) : t.isWeeks() ? r.items.push(e) : t.isMonths() ? s.items.push(e) : t.isRange() && c.items.push(e); }), (t = [n, o, i, a, r, s, c]), t.filter(function(e) { return 0 !== e.items.length; }) ); } function l(e, t) { return void 0 === t && (t = !1), { name: ue[e], items: [], mayOmitSeparator: t }; } function c(e) { var t = !1; return e.filter(function(e, n, o) { var i = !0; return ( e.type === A.a && ((0 !== n && n !== o.length - 1) || (i = !1), t && (i = !1)), (t = e.type === A.a), i ); }); } function h(e) { return v.createElement(y.a, { label: v.createElement( 'div', { className: st.label }, v.createElement(_.a, { className: st.icon, icon: lt }), v.createElement('div', { className: st.text }, ct.text), ), onClick: e.onClick, }); } function d() { var e; return { Bars: u.enabled('header_chart_type') ? I : void 0, Compare: u.enabled('header_compare') ? F : void 0, Custom: At, Fullscreen: u.enabled('header_fullscreen_button') ? P : void 0, Indicators: u.enabled('header_indicators') ? G : void 0, Intervals: u.enabled('header_resolutions') ? fe : void 0, OpenPopup: ye, Properties: u.enabled('header_settings') && u.enabled('show_chart_property_page') ? Se : void 0, SaveLoad: u.enabled('header_saveload') ? Ge : void 0, Screenshot: u.enabled('header_screenshot') ? tt : void 0, SymbolSearch: u.enabled('header_symbol_search') ? at : void 0, Templates: u.enabled('study_templates') ? ft : void 0, UndoRedo: u.enabled('header_undo_redo') ? Et : void 0, Layout: e, }; } var u, p, v, m, f, g, C, _, y, w, b, S, k, x, E, M, A, O, z, R, T, I, L, N, H, F, D, W, j, P, B, U, V, K, Y, G, q, Q, J, X, Z, $, ee, te, ne, oe, ie, ae, re, se, le, ce, he, de, ue, pe, ve, me, fe, ge, Ce, _e, ye, we, be, Se, ke, xe, Ee, Me, Ae, Oe, ze, Re, Te, Ie, Le, Ne, He, Fe, De, We, je, Pe, Be, Ue, Ve, Ke, Ye, Ge, qe, Qe, Je, Xe, Ze, $e, et, tt, nt, ot, it, at, rt, st, lt, ct, ht, dt, ut, pt, vt, mt, ft, gt, Ct, _t, yt, wt, bt, St, kt, xt, Et, Mt, At; Object.defineProperty(t, '__esModule', { value: !0 }), (u = n(5)), (p = n(1)), (v = n(20)), (m = n(104)), (f = n(40)), (g = n(974)), (C = n(878)), (_ = n(300)), (y = n(846)), (w = n(880)), (b = n(102)), (S = n(1044)), (k = (function(e) { function t() { return (null !== e && e.apply(this, arguments)) || this; } return ( p.c(t, e), (t.prototype.render = function() { var e = this.props, t = e.children, n = e.className, o = p.e(e, ['children', 'className']); return v.createElement('div', p.a({ className: b(n, S.wrap) }, o), t); }), t ); })(v.PureComponent)), (x = n(848)), (E = n(1045)), (M = (function(e) { function t() { var t = (null !== e && e.apply(this, arguments)) || this; return ( (t._handleClick = function() { var e = t.props, n = e.onClick, o = e.onClickArg; n && n(o); }), t ); } return ( p.c(t, e), (t.prototype.render = function() { var e, t = this.props, n = t.isFirst, o = t.isLast, i = t.hint, a = t.text, r = t.icon, s = t.isActive, l = t.isDisabled, c = t.className; return v.createElement(x.a, { icon: r, text: a, title: i, isDisabled: l, isActive: s, onClick: this._handleClick, className: b(c, E.button, ((e = {}), (e[E.first] = n), (e[E.last] = o), e)), }); }), t ); })(v.PureComponent)), (A = n(849)), (O = n(1046)), (z = {}), (z[f.STYLE_BARS] = window.t('Bars')), (z[f.STYLE_CANDLES] = window.t('Candles')), (z[f.STYLE_HOLLOW_CANDLES] = window.t('Hollow Candles')), (z[f.STYLE_HEIKEN_ASHI] = window.t('Heikin Ashi')), (z[f.STYLE_LINE] = window.t('Line')), (z[f.STYLE_AREA] = window.t('Area')), (z[f.STYLE_BASELINE] = window.t('Baseline')), (R = z), (T = { barsStyle: window.t("Bar's Style"), labels: R }), (I = (function(e) { function t(t, n) { var o, i, a, r, s, l = e.call(this, t, n) || this; return ( (l._handleChangeStyle = function(e) { var t = l.state, n = t.favorites, o = t.lastSelectedNotFavorite, i = t.activeStyle; l.setState({ activeStyle: e, lastSelectedNotFavorite: n.includes(i) ? o : i }); }), (l._handleSelectStyle = function(e) { var t = l.context.chartWidgetCollection; e !== t.activeChartStyle.value() && t.trySetChartStyleToActiveWidget(e); }), (l._handleClickFavorite = function(e) { l._isStyleFavorited(e) ? l._handleRemoveFavorite(e) : l._handleAddFavorite(e); }), (o = n.chartWidgetCollection), (i = n.favoriteChartStylesService), (a = o.activeChartStyle.value()), (r = i.get()), u.enabled('japanese_chart_styles'), (s = []), (l.state = { activeStyle: a, favorites: r, styles: [ f.STYLE_BARS, f.STYLE_CANDLES, f.STYLE_HOLLOW_CANDLES, f.STYLE_HEIKEN_ASHI, f.STYLE_LINE, f.STYLE_AREA, f.STYLE_BASELINE, ], japaneseStyles: s, }), l ); } return ( p.c(t, e), (t.prototype.componentDidMount = function() { var e = this.context, t = e.chartWidgetCollection, n = e.favoriteChartStylesService; t.activeChartStyle.subscribe(this._handleChangeStyle), n.getOnChange().subscribe(this, this._handleChangeSettings); }), (t.prototype.componentWillUnmount = function() { var e = this.context, t = e.chartWidgetCollection, n = e.favoriteChartStylesService; t.activeChartStyle.unsubscribe(this._handleChangeStyle), n.getOnChange().unsubscribe(this, this._handleChangeSettings); }), (t.prototype.render = function() { var e, t, n, o = this, i = this.props, a = i.isShownQuicks, r = i.displayMode, s = void 0 === r ? 'full' : r, l = i.id, c = this.state, h = c.activeStyle, d = c.favorites, u = c.styles, p = c.japaneseStyles, m = c.lastSelectedNotFavorite, f = 'small' !== s && a && 0 !== d.length, C = d.slice(); return ( C.includes(h) ? void 0 !== m && C.push(m) : C.push(h), (e = f && C.length > 1), (t = u.map(function(e) { return o._renderPopupMenuItem(e, e === h); })), (n = p.map(function(e) { return o._renderPopupMenuItem(e, e === h); })), v.createElement( k, { id: l }, e && C.map(function(e, t) { return v.createElement(M, { icon: g.SERIES_ICONS[e], isActive: f && h === e, key: t, hint: T.labels[e], isFirst: 0 === t, isLast: t === C.length - 1, onClick: f ? o._handleSelectStyle : void 0, onClickArg: e, }); }), v.createElement( w.a, { arrow: !!e, content: e ? void 0 : v.createElement(k, null, v.createElement(_.a, { icon: g.SERIES_ICONS[h] })), title: e ? T.barsStyle : T.labels[h], className: O.menu, }, t, !!n.length && v.createElement(A.a, null), n, ), ) ); }), (t.prototype._renderPopupMenuItem = function(e, t) { var n = this.props.isFavoritingAllowed, o = this._isStyleFavorited(e); return v.createElement(y.a, { key: e, icon: g.SERIES_ICONS[e], isActive: t, label: T.labels[e] || '', onClick: this._handleSelectStyle, onClickArg: e, showToolboxOnHover: !o, toolbox: n && v.createElement(C.a, { isFilled: o, onClick: this._handleClickFavorite, onClickArg: e, }), }); }), (t.prototype._handleChangeSettings = function(e) { this.setState({ lastSelectedNotFavorite: void 0, favorites: e }); }), (t.prototype._isStyleFavorited = function(e) { return -1 !== this.state.favorites.indexOf(e); }), (t.prototype._handleAddFavorite = function(e) { var t = this.state.favorites; this.context.favoriteChartStylesService.set(t.concat([e])); }), (t.prototype._handleRemoveFavorite = function(e) { var t = this.state.favorites; this.context.favoriteChartStylesService.set( t.filter(function(t) { return t !== e; }), ); }), (t.contextTypes = { chartWidgetCollection: m.object.isRequired, favoriteChartStylesService: m.object.isRequired, }), t ); })(v.PureComponent)), n(11), (L = n(1047)), (N = n(1048)), (H = { compare: window.t('Compare'), compareOrAddSymbol: window.t('Compare or Add Symbol') }), (F = (function(e) { function t(t, n) { var o = e.call(this, t, n) || this; return ( (o._handleClick = function() { o.setState({ isActive: !0 }), o.context.chartWidgetCollection.showAddCompareDialog().then(function(e) { e.on('afterOpen', function() { return o.setState({ isActive: !0 }); }), e.on('beforeClose', function() { return o.setState({ isActive: !1 }); }); }); }), (o.state = { isActive: !1 }), o ); } return ( p.c(t, e), (t.prototype.render = function() { var e = this.state.isActive; return v.createElement( o, p.a({}, this.props, { icon: N, isOpened: e, onClick: this._handleClick, text: H.compare, title: H.compareOrAddSymbol, }), ); }), (t.contextTypes = { chartWidgetCollection: m.object.isRequired }), t ); })(v.PureComponent)), (D = n(1049)), (W = n(1050)), (j = { hint: window.t('Fullscreen mode') }), (P = (function(e) { function t() { var t = (null !== e && e.apply(this, arguments)) || this; return ( (t._handleClick = function() { t.context.chartWidgetCollection.startFullscreen(); }), t ); } return ( p.c(t, e), (t.prototype.render = function() { var e = this.props.className; return v.createElement(i, { icon: W, onClick: this._handleClick, title: j.hint, className: b(e), }); }), (t.contextTypes = { chartWidgetCollection: m.object.isRequired }), t ); })(v.PureComponent)), (B = n(106)), (U = n(1051)), (V = n(306)), (K = { text: window.t('Indicators'), hint: u.enabled('study_dialog_fundamentals_economy_addons') ? Object(B.isFeatureEnabled)('hide_fundamentals') ? window.t('Indicators, Strategies and Economy') : window.t('Indicators, Strategies, Fundamentals and Economy') : window.t('Indicators'), }), (Y = Object(V.b)({ keys: ['/'], text: '{0}' })), (G = (function(e) { function t(t) { var n = e.call(this, t) || this; return ( (n._handleClick = function() { var e = n.props.studyMarket; n.setState({ isActive: !0 }, function() { e.isVisible() ? e.hide() : e.show(); }); }), (n.state = { isActive: !1 }), n ); } return ( p.c(t, e), (t.prototype.componentDidMount = function() { this.props.studyMarket.visibilityChanged.subscribe(this, this._setActiveState); }), (t.prototype.componentWillUnmount = function() { this.props.studyMarket.visibilityChanged.unsubscribe(this, this._setActiveState); }), (t.prototype.render = function() { var e = this.state.isActive, t = this.props, n = t.className, i = t.displayMode, a = t.id; return v.createElement(o, { id: a, displayMode: i, className: n, icon: U, isOpened: e, onClick: this._handleClick, text: K.text, title: K.hint, 'data-tooltip-hotkey': Y, }); }), (t.prototype._setActiveState = function(e) { this.setState({ isActive: e }); }), t ); })(v.PureComponent)), (q = n(62)), (Q = n(61)), (J = n(1052)), (X = n(7)), (Z = n(872)), ($ = n(975)), (ee = n(1053)), (te = { add: window.t('Add') }), (ne = [ { name: '1', label: window.t('minutes', { context: 'interval' }) }, { name: 'H', label: window.t('hours', { context: 'interval' }) }, { name: 'D', label: window.t('days', { context: 'interval' }) }, { name: 'W', label: window.t('weeks', { context: 'interval', }), }, { name: 'M', label: window.t('months', { context: 'interval' }) }, { name: 'R', label: window.t('range', { context: 'interval' }) }, ]), (oe = (function(e) { function t(t) { var n = e.call(this, t) || this; return ( (n._timeMenu = null), (n._setMenuRef = function(e) { n._timeMenu = e; }), (n._handleChangeInput = function(e) { var t = e.currentTarget.value; /^[0-9]*$/.test(t) && n.setState({ inputValue: t }); }), (n._handleSelectTime = function(e) { n.setState({ selectedTime: e }), n._closeMenu(); }), (n._handleClickAdd = function() { var e = n.state, t = e.inputValue, o = e.selectedTime, i = parseInt(t); i === r(i, o) && n.props.onAdd(isNaN(parseInt(o)) ? i + '' + o : i * +o + ''); }), (n._toggleMenu = function() { n.state.isOpenedMenu ? n._closeMenu() : n._openMenu(); }), (n._closeMenu = function() { n.props.onCloseMenu(), n.setState({ isOpenedMenu: !1 }); }), (n._openMenu = function() { n.props.onOpenMenu(), n.setState({ isOpenedMenu: !0 }); }), (n._getMenuPosition = function() { var e = Object(X.ensureNotNull)(n._timeMenu), t = e.getBoundingClientRect(); return { overrideWidth: t.width, x: t.left, y: t.bottom + 1 }; }), (n.state = { inputValue: '1', isOpenedMenu: !1, selectedTime: ne[0].name }), n ); } return ( p.c(t, e), (t.prototype.render = function() { var e, t = this, n = this.state, o = n.inputValue, i = n.isOpenedMenu, a = n.menuWidth, r = n.selectedTime; return v.createElement( 'div', { className: b(ee.form, ((e = {}), (e[ee.interacting] = i), e)) }, v.createElement('input', { className: ee.input, maxLength: 4, onChange: this._handleChangeInput, value: o, }), v.createElement( 'div', { className: ee.menu, onClick: this._toggleMenu, ref: this._setMenuRef }, ne.find(function(e) { return e.name === r; }).label, v.createElement($.a, { dropped: i }), ), v.createElement('div', { className: ee.add, onClick: this._handleClickAdd }, te.add), v.createElement( Z.a, { doNotCloseOn: this, isOpened: i, minWidth: a, onClose: this._closeMenu, position: this._getMenuPosition, }, ne.map(function(e) { return v.createElement(y.a, { dontClosePopup: !0, key: e.name, label: e.label, onClick: t._handleSelectTime, onClickArg: e.name, }); }), ), ); }), t ); })(v.PureComponent)), (ie = n(127)), (ae = n(1054)), (re = n(1055)), (se = { remove: window.t('Remove') }), (le = (function(e) { function t() { var t = (null !== e && e.apply(this, arguments)) || this; return ( (t._handleClick = function(e) { var n = t.props, o = n.onClick, i = n.onClickArg; o && o(i, e); }), t ); } return ( p.c(t, e), (t.prototype.render = function() { return v.createElement('span', { className: b(ae.button, 'apply-common-tooltip', this.props.hidden && ae.hidden), dangerouslySetInnerHTML: { __html: re }, onClick: this._handleClick, title: se.remove, }); }), t ); })(v.PureComponent)), (ce = (function(e) { function t(t) { var n = e.call(this, t) || this; return ( (n._handleMouseEnter = function() { n.setState({ isHovered: !0 }); }), (n._handleMouseLeave = function() { n.setState({ isHovered: !1 }); }), (n.state = { isHovered: !1 }), n ); } return ( p.c(t, e), (t.prototype.render = function() { var e = this.props, t = e.interval, n = e.hint, o = e.isActive, i = e.isDisabled, a = e.isFavorite, r = e.isSignaling, s = e.onClick; return v.createElement( 'div', { onMouseEnter: this._handleMouseEnter, onMouseLeave: this._handleMouseLeave }, v.createElement(y.a, { isActive: o, isDisabled: i, isHovered: r, onClick: s, onClickArg: t, toolbox: this._toolbox(), showToolboxOnHover: !a, label: n, }), ); }), (t.prototype._toolbox = function() { var e = this.props, t = e.interval, n = e.isDisabled, o = e.isFavorite, i = e.isRemovable, a = e.isFavoritingAllowed, r = e.onClickFavorite, s = e.onClickRemove, l = this.state.isHovered, c = v.createElement(le, { key: 'remove', hidden: !Modernizr.touch && !l, onClick: s, onClickArg: t, }), h = v.createElement(C.a, { key: 'favorite', isFilled: o, onClick: r, onClickArg: t }); return [i && c, !n && a && h]; }), t ); })(v.PureComponent)), (he = n(15)), (de = {}), (de[he.ResolutionKind.Seconds] = window.t('Second', { context: 'interval_group_name' })), (de[he.ResolutionKind.Minutes] = window.t('Minute', { context: 'interval_group_name' })), (de[he.ResolutionKind.Hours] = window.t('Hour', { context: 'interval_group_name' })), (de[he.ResolutionKind.Days] = window.t('Day', { context: 'interval_group_name' })), (de[he.ResolutionKind.Weeks] = window.t('Week', { context: 'interval_group_name' })), (de[he.ResolutionKind.Months] = window.t('Month', { context: 'interval_group_name' })), (de[he.ResolutionKind.Range] = window.t('Range', { context: 'interval_group_name' })), (de[he.ResolutionKind.Invalid] = ''), (ue = de), (pe = n(1056)), (ve = { openDialog: window.t('Open Interval Dialog'), timeInterval: window.t('Time Interval'), }), (me = Object(V.b)({ keys: [','], text: window.t('Number or {0}') })), (fe = (function(e) { function t(t, n) { var o, i, a, r, s, l, c, h = e.call(this, t, n) || this; return ( (h._renderResolutionsGroup = function(e) { var t = e.items.map(function(e) { return h._renderPopupMenuItem(e); }); return ( (!e.mayOmitSeparator || e.items.length > 1) && (t.unshift(v.createElement(A.a, { key: 'begin-' + e.name })), t.push(v.createElement(A.a, { key: 'end-' + e.name }))), t ); }), (h._handleChangeInterval = function(e) { var t = h.state, n = t.activeInterval, o = t.lastNotQuicked, i = h._getQuicks(); h.setState({ activeInterval: Object(Q.normalizeIntervalString)(e), lastNotQuicked: void 0 === n || i.includes(n) ? o : n, }); }), (h._handleCloseMenu = function() { h.setState({ isOpenedFormMenu: !1 }); }), (h._handleOpenMenu = function() { h.setState({ isOpenedFormMenu: !0 }); }), (h._bindedForceUpdate = function() { h.forceUpdate(); }), (h._handleSelectInterval = function(e) { void 0 !== e && e !== q.linking.interval.value() && (Object(Q.setLastUsedResolution)(e), q.linking.interval.setValue(e)); }), (h._handleClickFavorite = function(e) { (e = Object(X.ensureDefined)(e)), h._isIntervalFavorite(e) ? h._handleRemoveFavorite(e) : h._handleAddFavorite(e); }), (h._handleAddFavorite = function(e) { var t = h.state.favorites; h.context.favoriteIntervalsService.set(t.concat([e])); }), (h._handleRemoveFavorite = function(e) { var t = h.state.favorites; h.context.favoriteIntervalsService.set( t.filter(function(t) { return t !== e; }), ); }), (h._handleAddInterval = function(e) {}), (h._handleRemoveInterval = function(e) {}), (o = n.chartApiInstance), (i = n.favoriteIntervalsService), (a = n.customIntervalsService), (h._customIntervals = u.enabled('custom_resolutions_box')), (r = q.linking.interval.value()), (s = r && Object(Q.normalizeIntervalString)(r)), (l = i.get()), (c = void 0 !== a ? a.get() : []), (h._defaultsIntervals = o.defaultResolutions().map(Q.normalizeIntervalString)), (h.state = { isOpenedFormMenu: !1, activeInterval: s, favorites: l, customs: c }), h ); } return ( p.c(t, e), (t.prototype.componentDidMount = function() { var e = this.context, t = e.favoriteIntervalsService, n = e.customIntervalsService; t.getOnChange().subscribe(this, this._handleChangeFavorites), void 0 !== n && n.getOnChange().subscribe(this, this._handleChangeCustoms), q.linking.interval.subscribe(this._handleChangeInterval), q.linking.intraday.subscribe(this._bindedForceUpdate), q.linking.supportedResolutions.subscribe(this._bindedForceUpdate); }), (t.prototype.componentWillUnmount = function() { var e = this.context, t = e.favoriteIntervalsService, n = e.customIntervalsService; t.getOnChange().unsubscribe(this, this._handleChangeFavorites), n && n.getOnChange().unsubscribe(this, this._handleChangeCustoms), q.linking.interval.unsubscribe(this._handleChangeInterval), q.linking.intraday.unsubscribe(this._bindedForceUpdate), q.linking.supportedResolutions.unsubscribe(this._bindedForceUpdate); }), (t.prototype.componentDidUpdate = function(e, t) { var n = this; this.state.lastAddedInterval && setTimeout(function() { return n.setState({ lastAddedInterval: void 0 }); }, 400); }), (t.prototype.render = function() { var e, t, n, o, i, r, s = this, l = this.props, c = l.isShownQuicks, h = l.id, d = this.state, u = d.activeInterval, p = d.customs, m = d.isOpenedFormMenu, f = d.lastNotQuicked, g = this._defaultsIntervals, C = this._getQuicks(), _ = Object(Q.sortResolutions)(C.slice()); return ( void 0 !== u && _.includes(u) ? void 0 !== f && _.push(f) : void 0 !== u && _.push(u), (e = !(!c || 0 === C.length) || void 0), (t = e && _.length > 1), (n = {}), (o = Object(Q.mergeResolutions)(g, p)), (void 0 !== u ? o.concat(u) : o).filter(Q.isAvailable).forEach(function(e) { return (n[e] = !0); }), (i = this._createMenuItems(o).concat(this._createIntervalForm())), (r = void 0 !== u ? Object(Q.getTranslatedResolutionModel)(u) : null), v.createElement( k, { id: h }, t && _.map(function(e, t) { var o, i = Object(Q.getTranslatedResolutionModel)(e); return v.createElement(M, { key: t, className: b( pe.button, ((o = {}), (o[pe.first] = 0 === t), (o[pe.last] = t === _.length - 1), o), ), text: v.createElement(a, { value: i.mayOmitMultiplier ? void 0 : i.multiplier, metric: i.shortKind, }), hint: i.hint, isActive: u === e, isDisabled: !n[e] && e !== f, onClick: s._handleSelectInterval, onClickArg: e, }); }), v.createElement( w.a, { arrow: !!t, closeOnClickOutside: !m, content: t || null === r ? void 0 : v.createElement( k, { className: pe.menuContent }, v.createElement(a, { value: r.mayOmitMultiplier ? void 0 : r.multiplier, metric: r.shortKind, }), ), title: t || null === r ? ve.timeInterval : r.hint, hotKey: t ? me : void 0, className: pe.menu, }, v.createElement('div', { className: pe.dropdown }, i), ), ) ); }), (t.prototype._createMenuItems = function(e) { var t, n = s(e).map(this._renderResolutionsGroup); return c((t = []).concat.apply(t, n)); }), (t.prototype._createIntervalForm = function() { return this._customIntervals ? [ v.createElement(A.a, { key: 'custom-interval-separator' }), v.createElement(oe, { key: 'add-form', onAdd: this._handleAddInterval, onCloseMenu: this._handleCloseMenu, onOpenMenu: this._handleOpenMenu, }), ] : []; }), (t.prototype._handleChangeFavorites = function(e) { this.setState({ lastNotQuicked: void 0, favorites: e }); }), (t.prototype._handleChangeCustoms = function(e) { this.setState({ customs: e }); }), (t.prototype._renderPopupMenuItem = function(e) { var t = this.props.isFavoritingAllowed, n = this.state, o = n.activeInterval, i = n.lastAddedInterval, a = e === o, r = Object(Q.isAvailable)(e), s = this._isIntervalFavorite(e), l = this._isIntervalDefault(e), c = Object(Q.getTranslatedResolutionModel)(e); return v.createElement(ce, { key: e, interval: e, hint: c.hint, isSignaling: i === e, isFavoritingAllowed: t, isDisabled: !r, isFavorite: s, isRemovable: !l, isActive: a, onClick: this._handleSelectInterval, onClickRemove: this._handleRemoveInterval, onClickFavorite: this._handleClickFavorite, }); }), (t.prototype._isIntervalDefault = function(e) { return this._defaultsIntervals.includes(e); }), (t.prototype._isIntervalFavorite = function(e) { return this.state.favorites.includes(e); }), (t.prototype._getQuicks = function(e) { var t, n = this; return this.props.isShownQuicks && 'small' !== this.props.displayMode ? ((t = void 0 === e ? this.state.favorites : e), t.filter(function(e) { return n._isIntervalDefault(e); })) : []; }), (t.contextTypes = { chartApiInstance: m.object.isRequired, favoriteIntervalsService: m.object.isRequired, customIntervalsService: m.object, }), t ); })(v.PureComponent)), (ge = n(1057)), (Ce = n(1058)), (_e = { hint: window.t('Open chart in popup') }), (ye = (function(e) { function t() { var t = (null !== e && e.apply(this, arguments)) || this; return ( (t._handleClick = function() { var e = t.context, n = e.chartWidgetCollection, o = e.windowMessageService, i = e.isFundamental, a = n.activeChartWidget.value(); a.withModel(null, function() { o.post(parent, 'openChartInPopup', { symbol: a .model() .mainSeries() .actualSymbol(), interval: a .model() .mainSeries() .interval(), fundamental: i, }); }); }), t ); } return ( p.c(t, e), (t.prototype.render = function() { var e = this.props.className; return v.createElement(i, { className: b(e, ge.button), icon: Ce, onClick: this._handleClick, title: _e.hint, }); }), (t.contextTypes = { isFundamental: m.bool, chartWidgetCollection: m.object.isRequired, windowMessageService: m.object.isRequired, }), t ); })(v.PureComponent)), (we = n(1059)), (be = { hint: window.t('Chart Properties') }), (Se = (function(e) { function t(t) { var n = e.call(this, t) || this; return ( (n._handleClick = function() { var e = n.context.chartWidgetCollection; n.setState({ isActive: !0 }), setTimeout(function() { return e.activeChartWidget .value() .showChartProperties() .then(n._resolveDialogState); }, 0); }), (n._resolveDialogState = function(e) { null !== e ? (n.setState({ isActive: !0 }), e.on('destroy', function() { return n.setState({ isActive: !1 }); })) : n.setState({ isActive: !1 }); }), (n.state = { isActive: !1 }), n ); } return ( p.c(t, e), (t.prototype.render = function() { var e = this.state.isActive; return v.createElement( i, p.a({}, this.props, { icon: we, title: be.hint, onClick: this._handleClick, isOpened: e, }), ); }), (t.contextTypes = { chartWidgetCollection: m.object.isRequired }), t ); })(v.PureComponent)), (ke = n(14)), (xe = n(194)), (Ee = n(184)), (Me = n(1060)), (Ae = 'M21.5 21.5h-14a5 5 0 1 1 .42-9.983 7.5 7.5 0 0 1 14.57 2.106 4.002 4.002 0 0 1-.99 7.877z'), (Oe = 62.332908630371094), (ze = 0.8 * Oe), (Re = 0.21 * Oe), (Te = 0.79 * Oe), (Ie = { strokeDashOffset: Te, strokeDash: ze, strokeGap: Re, strokeDashCheck: 0 }), (Le = { strokeDashOffset: Re + ze, strokeGap: 0, strokeDash: ze + Re, strokeDashCheck: 200 }), (Ne = (function(e) { function t(t) { var n = e.call(this, t) || this; return (n.state = Ie), n; } return ( p.c(t, e), (t.prototype.componentDidMount = function() { 'saved' === this.props.state ? this.setState(Le) : this._goToNextState(this.props.state); }), (t.prototype.componentWillUnmount = function() { this._currentAnimation = void 0; }), (t.prototype.componentWillReceiveProps = function(e) { this.props.state !== e.state && this._goToNextState(e.state); }), (t.prototype.render = function() { var e, t = this.state, n = t.strokeDashOffset, o = t.strokeDash, i = t.strokeGap, a = t.strokeDashCheck, r = this.props, s = r.className, l = r.size, c = r.onClick, h = r.state, d = r.isHovered, u = void 0 !== d && d, p = b( Me.container, s, u && Me.hovered, ((e = {}), (e[Me.unsaved] = 'unsaved' === h), (e[Me.saving] = 'saving' === h), (e[Me.saved] = 'saved' === h), e), ); return v.createElement( 'svg', { xmlns: 'http://www.w3.org/2000/svg', className: p, version: '1.1', width: l, height: l, viewBox: '0 0 28 28', onClick: c, }, v.createElement( 'g', { fill: 'none' }, v.createElement('path', { className: Me.dottedCloud, stroke: 'currentColor', strokeDasharray: '3.5,2.5', d: Ae, }), v.createElement('path', { className: Me.spinningCloud, stroke: 'currentColor', strokeDasharray: o + ' ' + i, strokeDashoffset: n, d: Ae, }), v.createElement('path', { className: Me.arrowGap, d: 'M11 20h6v5h-6z' }), v.createElement( 'g', { className: Me.arrow, stroke: 'currentColor' }, v.createElement('path', { strokeLinecap: 'square', d: 'M14.5 14.5v10' }), v.createElement('path', { d: 'M11 17l3.5-3.5L18 17' }), ), v.createElement( 'g', { className: Me.check, stroke: 'currentColor' }, v.createElement('path', { strokeDasharray: a + '% ' + (200 - a) + '%', d: 'M10 15l2.5 2.5L18 12', }), ), ), ); }), (t.prototype._goToNextState = function(e) { var t = this; switch (e) { case 'unsaved': this.setState(Ie); break; case 'saving': 'unsaved' !== this.props.state && this.setState(Ie), (this._currentAnimation = Promise.resolve(this._currentAnimation).then( function() { return t._createSpinAnimationWhile(function() { return 'saving' === t.props.state; }); }, )); break; case 'saved': this._currentAnimation = Promise.resolve(this._currentAnimation) .then(this._createFillGapAnimation.bind(this)) .then(this._createCheckAnimation.bind(this)); } }), (t.prototype._createSpinAnimationWhile = function(e) { var t = this; return this._createSpinAnimation().then(function() { return e() ? t._createSpinAnimationWhile(e) : Promise.resolve(); }); }), (t.prototype._createSpinAnimation = function() { var e = this; return new Promise(function(t) { Object(xe.doAnimate)({ onStep: function(t, n) { void 0 !== e._currentAnimation && e.setState({ strokeDashOffset: n }); }, onComplete: function() { return t(); }, from: Te, to: Te + Oe, easing: Ee.easingFunc.linear, duration: 1e3, }); }); }), (t.prototype._createCheckAnimation = function() { var e = this; return new Promise(function(t) { Object(xe.doAnimate)({ onStep: function(t, n) { void 0 !== e._currentAnimation && e.setState({ strokeDashCheck: Math.round(n) }); }, onComplete: function() { return t(); }, from: 0, to: 200, easing: Ee.easingFunc.linear, duration: 1e3, }); }); }), (t.prototype._createFillGapAnimation = function() { var e = this; return new Promise(function(t) { Object(xe.doAnimate)({ onStep: function(t, n) { void 0 !== e._currentAnimation && e.setState({ strokeDashOffset: Re + ze - n, strokeGap: n, strokeDash: ze + Re - n, }); }, onComplete: function() { return t(); }, from: Re, to: 0, easing: Ee.easingFunc.linear, duration: 200, }); }); }), t ); })(v.PureComponent)), (He = n(882)), (Fe = n(1061)), (De = n(855)), (We = n(1062)), (je = u.enabled('widget')), (Pe = Object(He.a)(De, We)), (Be = p.a({}, De, Pe)), (Ue = { copy: window.t('Copy'), makeCopy: window.t('Make a Copy'), newChartLayout: window.t('New Chart Layout'), loadChartLayout: window.t('Load Chart Layout...'), rename: window.t('Rename...'), renameChartLayout: window.t('Rename Chart Layout'), saveAs: window.t('Make a Copy...'), saveChartLayout: window.t('Save'), saveChartLayoutLong: window.t( 'Save all charts for all symbols and intervals on your layout', ), }), (Ve = []), (Ke = Object(V.b)({ keys: ['Ctrl', 'S'], text: '{0} + {1}' })), (Ye = (function(e) { function t(t) { var n = e.call(this, t) || this; return ( (n._handleSaveHoverBegin = function() { n.setState({ iconHovered: !0 }); }), (n._handleSaveHoverEnd = function() { n.setState({ iconHovered: !1 }); }), (n.state = { iconHovered: !1 }), n ); } return ( p.c(t, e), (t.prototype.render = function() { var e = this.props, t = e.id, n = e.isReadOnly, i = e.displayMode, a = e.isProcessing, r = e.title, s = e.chartId, l = e.wasChanges, c = e.onCloneChart, h = e.onSaveChart, d = e.hideMenu, u = this.state.iconHovered, p = !n && !d, m = 'saved'; return ( (!l && r) || (m = 'unsaved'), a && (m = 'saving'), v.createElement( k, null, n ? v.createElement( k, null, v.createElement(o, { id: t, displayMode: i, icon: v.createElement(Ne, { size: 28, state: 'unsaved', isHovered: u }), isDisabled: a, onClick: c, text: Ue.copy, title: Ue.makeCopy, onMouseEnter: this._handleSaveHoverBegin, onMouseLeave: this._handleSaveHoverEnd, collapseWhen: Ve, }), ) : v.createElement( k, null, v.createElement(o, { id: t, displayMode: i, icon: v.createElement(Ne, { size: 28, state: m, isHovered: u }), isDisabled: (s && !l) || a, onClick: h, text: r || Ue.saveChartLayout, title: Ue.saveChartLayoutLong, onMouseEnter: this._handleSaveHoverBegin, onMouseLeave: this._handleSaveHoverEnd, theme: Be, collapseWhen: Ve, 'data-tooltip-hotkey': je ? '' : Ke, }), p && v.createElement( w.a, { className: b(Fe.menu, 'js-save-load-menu-open-button'), arrow: !0 }, this._renderMenuItems(), ), ), ) ); }), (t.prototype._renderMenuItems = function() { var e = this.props, t = e.wasChanges, n = e.isProcessing, o = e.chartId, i = e.onSaveChart, a = e.onRenameChart, r = e.onSaveAsChart, s = e.onLoadChart, l = (e.onNewChart, e.isAutoSaveEnabled, e.autoSaveId, e.onAutoSaveChanged, []); return ( l.push( v.createElement(y.a, { key: 'save', isDisabled: !!(n || (!t && o)), label: Ue.saveChartLayout, onClick: i, hint: 'Ctrl+S', }), ), o && l.push.apply(l, [ v.createElement(A.a, { key: 'existing-chart-section-begin' }), v.createElement(y.a, { key: 'rename', label: Ue.rename, onClick: a }), v.createElement(y.a, { key: 'save-as', label: Ue.saveAs, onClick: r }), ]), l.push(v.createElement(A.a, { key: 'platform-section-begin' })), l.push( v.createElement(y.a, { key: 'load-chart', className: 'js-save-load-menu-item-load-chart', label: Ue.loadChartLayout, onClick: s, }), ), l ); }), t ); })(v.PureComponent)), (Ge = (function(e) { function t(t, n) { var o, i, a = e.call(this, t, n) || this; return ( (a._syncState = function(e) { a.setState(e); }), (a._onChangeHasChanges = function(e) { a.setState({ wasChanges: e }); }), (a._onChangeAutoSaveEnabled = function(e) {}), (a._onChangeTitle = function(e) { a.setState({ title: e }); }), (a._onChangeId = function(e) { a.setState({ id: e }); }), (a._onChartAboutToBeSaved = function() { a.setState({ isProcessing: !0 }); }), (a._onChartSaved = function() { a.setState({ isProcessing: !1 }); }), (a._handleAutoSaveEnabled = function(e) {}), (a._handleClickSave = function() { a.context.saveChartService.saveChartOrShowTitleDialog(); }), (a._handleClickClone = function() { a.context.saveChartService.cloneChart(); }), (a._handleClickSaveAs = function() { a.context.saveChartService.saveChartAs(); }), (a._handleClickNew = function() {}), (a._handleClickLoad = function() { a.context.loadChartService.showLoadDialog(); }), (a._handleHotkey = function(e) { return ( !e.ctrlKey && e.target === document.body && 190 === e.keyCode && (a.context.loadChartService.showLoadDialog(), e.preventDefault(), e.stopPropagation(), !0) ); }), (a._handleClickRename = function() { a.context.saveChartService.renameChart(); }), (o = n.chartWidgetCollection), (i = n.chartChangesWatcher), n.saveChartService, (a.state = { isAuthenticated: window.is_authenticated, isProcessing: !1, id: o.metaInfo.id.value(), title: o.metaInfo.name.value(), wasChanges: i.hasChanges(), iconHovered: !1, }), a ); } return ( p.c(t, e), (t.prototype.componentDidMount = function() { var e = this.props, t = e.chartSaver, n = e.isFake, o = e.stateSyncEmitter, i = this.context, a = i.chartWidgetCollection, r = i.chartChangesWatcher; i.saveChartService; n ? o.on('change', this._syncState) : (r.getOnChange().subscribe(this, this._onChangeHasChanges), a.metaInfo.name.subscribe(this._onChangeTitle), a.metaInfo.id.subscribe(this._onChangeId), document.addEventListener('keydown', this._handleHotkey), t.chartSaved().subscribe(this, this._onChartSaved), t.chartAboutToBeSaved().subscribe(this, this._onChartAboutToBeSaved), window.loginStateChange.subscribe(this, this._onLoginStateChange)); }), (t.prototype.componentDidUpdate = function(e, t) { this.props.isFake || (t !== this.state && this.props.stateSyncEmitter.emit('change', this.state)); }), (t.prototype.componentWillUnmount = function() { var e = this.props, t = e.chartSaver, n = e.isFake, o = e.stateSyncEmitter, i = this.context, a = i.chartWidgetCollection, r = i.chartChangesWatcher; i.saveChartService; n ? o.off('change', this._syncState) : (r.getOnChange().unsubscribe(this, this._onChangeHasChanges), a.metaInfo.name.unsubscribe(this._onChangeTitle), a.metaInfo.id.unsubscribe(this._onChangeId), document.removeEventListener('keydown', this._handleHotkey), t.chartSaved().unsubscribe(this, this._onChartSaved), t.chartAboutToBeSaved().unsubscribe(this, this._onChartAboutToBeSaved), window.loginStateChange.unsubscribe(this, this._onLoginStateChange)); }), (t.prototype.render = function() { var e = this.props, t = e.isReadOnly, n = e.displayMode, o = e.id, i = (e.isFake, this.state), a = i.isProcessing, r = i.isAuthenticated, s = i.title, l = i.id, c = i.wasChanges, h = (i.isAutoSaveEnabled, { displayMode: n, isReadOnly: t, isAuthenticated: r, isProcessing: a, wasChanges: c, title: s, id: o, chartId: null !== l ? l : void 0, onCloneChart: this._handleClickClone, onSaveChart: this._handleClickSave, onRenameChart: this._handleClickRename, onSaveAsChart: this._handleClickSaveAs, onLoadChart: this._handleClickLoad, }); return v.createElement(Ye, p.a({}, h)); }), (t.prototype._onLoginStateChange = function() { this.setState({ isAuthenticated: window.is_authenticated }); }), (t.contextTypes = { chartWidgetCollection: m.object.isRequired, chartChangesWatcher: m.object.isRequired, saveChartService: m.object.isRequired, loadChartService: m.object.isRequired, }), t ); })(v.PureComponent)), (qe = n(31)), (Qe = n(1063)), (Je = n(1064)), (Xe = Object(He.a)(De, Qe)), (Ze = p.a({}, De, Xe)), ($e = { takeSnapshot: window.t('Take a snapshot') }), (et = Object(V.b)({ keys: ['Alt', 'S'], text: '{0} + {1}' })), (tt = (function(e) { function t(t, n) { var o = e.call(this, t, n) || this; return ( (o._handleClick = function() { if (!u.enabled('show_dialog_on_snapshot_ready')) { if (o.state.isProcessing) return; o.setState({ isProcessing: !0 }), qe.subscribe( 'onScreenshotReady', function() { return o.setState({ isProcessing: !1 }); }, null, !0, ); } o.context.chartWidgetCollection.takeScreenshot(); }), (o.state = { isProcessing: !1 }), o ); } return ( p.c(t, e), (t.prototype.render = function() { var e = this.props, t = e.className, n = e.color; return v.createElement(x.a, { icon: Je, isDisabled: this.state.isProcessing, onClick: this._handleClick, title: $e.takeSnapshot, theme: Ze, 'data-tooltip-hotkey': et, className: b(t, n && Ze[n]), }); }), (t.contextTypes = { chartWidgetCollection: m.object.isRequired }), t ); })(v.PureComponent)), (nt = n(128)), (ot = n(311)), (it = n(1076)), (at = (function(e) { function t() { var t = (null !== e && e.apply(this, arguments)) || this; return ( (t._actions = null), (t._input = null), (t._preventDefault = function(e) { e.preventDefault(); }), t ); } return ( p.c(t, e), (t.prototype.componentDidMount = function() { var e = Object(X.ensureNotNull)(this._input); Object(nt.bindToInput)(e, { spreadActions: this._actions || void 0, syncWithChartWidget: !0, syncOnBlur: !0, }), null !== this._actions && Array.from(this._actions.querySelectorAll('button')).forEach(function(e) { return (e.tabIndex = -1); }); }), (t.prototype.render = function() { var e, t = this, n = this.props, o = n.isActionsVisible, i = n.isExpanded, a = n.onFocus, r = n.onBlur, s = n.id; return v.createElement( 'div', { id: s, className: it.wrap }, v.createElement( 'div', { className: b(it.inner, ((e = {}), (e[it.isExpanded] = i), e)) }, v.createElement('input', { className: it.input, maxLength: 1e3, onBlur: r, onFocus: a, ref: function(e) { return (t._input = e); }, type: 'text', tabIndex: -1, }), Object(ot.canShowSpreadActions)() && o && v.createElement('div', { className: it.actions, onMouseDown: this._preventDefault, ref: function(e) { return (t._actions = e); }, }), ), ); }), t ); })(v.PureComponent)), (rt = n(59)), (st = n(1077)), (lt = n(1078)), (ct = { text: window.t('Save Indicator Template...') }), (ht = (function(e) { function t(t) { var n = e.call(this, t) || this; return ( (n._handleMouseEnter = function() { n.setState({ isHovered: !0 }); }), (n._handleMouseLeave = function() { n.setState({ isHovered: !1 }); }), (n._handleApply = function() { var e = n.props, t = e.item; (0, e.onApply)(t); }), (n._handleRemove = function() { var e = n.props, t = e.item; (0, e.onRemove)(t); }), (n._handleFavor = function() { var e = n.props, t = e.item, o = e.onFavor; o && o(t); }), (n.state = { isHovered: !1 }), n ); } return ( p.c(t, e), (t.prototype.render = function() { var e = this.props, t = e.item, n = e.onFavor, o = e.favorite, i = e.isFavoritingAllowed, a = this.state.isHovered; return v.createElement( 'div', { onMouseEnter: this._handleMouseEnter, onMouseLeave: this._handleMouseLeave }, v.createElement(y.a, { label: t.name, showToolboxOnHover: !o, onClick: this._handleApply, toolbox: [ v.createElement(le, { key: 'remove', hidden: !Modernizr.touch && !a, onClick: this._handleRemove, }), !!n && i && v.createElement(C.a, { key: 'favorite', isFilled: !!o, onClick: this._handleFavor, }), ], }), ); }), t ); })(v.PureComponent)), (dt = n(1079)), (ut = (function(e) { function t() { var t = (null !== e && e.apply(this, arguments)) || this; return ( (t._handleClick = function(e) { e.stopPropagation(); var n = t.props; (0, n.onApply)(n.item); }), t ); } return ( p.c(t, e), (t.prototype.render = function() { var e = this.props, t = e.className, n = e.item; return v.createElement( 'div', { className: b(t, dt.item, 'apply-common-tooltip'), onClick: this._handleClick, title: n.name, }, n.name.length > 0 ? n.name[0].toUpperCase() : ' ', ); }), t ); })(v.PureComponent)), (pt = n(1080)), (vt = n(1081)), (mt = { title: window.t('Templates'), tooltip: window.t('Study Templates') }), (ft = (function(e) { function t(t, n) { var o, i, a, r, s = e.call(this, t) || this; return ( (s._handleFavorTemplate = function(e) { if (s.props.isShownQuicks) { var t = e.name; s._isTemplateFavorite(t) ? s._removeFavoriteTemplate(t) : s._addFavoriteTemplate(t); } }), (s._handleSaveTemplate = function() { s.context.studyTemplates.showSaveAsDialog(); }), (s._handleApplyTemplate = function(e) { s._handleClose(), s.context.studyTemplates.applyTemplate(e.name); }), (s._handleRemoveTemplate = function(e) { s._handleClose(), s.context.studyTemplates.deleteStudyTemplate(e.name); }), (s._handleClose = function() { s._handleToggleDropdown(!1); }), (s._handleClick = function(e) { e.stopPropagation(), s._handleToggleDropdown(); }), (s._handleToggleDropdown = function(e) { var t = s.state.isActive, n = 'boolean' == typeof e ? e : !t; s.setState({ isActive: n }); }), (s._getDropdownPosition = function() { var e = rt.findDOMNode(s._wrapControl).getBoundingClientRect(); return { x: e.left, y: e.bottom + 2 }; }), (s._getWrapRef = function(e) { return (s._wrapControl = e); }), (s._syncStateChange = function(e) { s.setState(e); }), (o = n.favoriteStudyTemplatesService), (i = n.studyTemplates), (a = void 0 !== o ? o.get() : []), (r = i.list()), (s.state = { isActive: !1, studyTemplatesList: r, favorites: a }), s ); } return ( p.c(t, e), (t.prototype.componentDidMount = function() { if (this.props.isFake) this.props.stateSyncEmitter.on('change', this._syncStateChange); else { var e = this.context, t = e.favoriteStudyTemplatesService, n = e.studyTemplates; n.getOnChange().subscribe(this, this._handleTemplatesChange), n.refreshStudyTemplateList(), void 0 !== t && t.getOnChange().subscribe(this, this._handleFavoritesChange); } }), (t.prototype.componentWillUnmount = function() { if (this.props.isFake) this.props.stateSyncEmitter.off('change', this._syncStateChange); else { var e = this.context, t = e.favoriteStudyTemplatesService; e.studyTemplates.getOnChange().unsubscribe(this, this._handleTemplatesChange), void 0 !== t && t.getOnChange().unsubscribe(this, this._handleFavoritesChange); } }), (t.prototype.componentDidUpdate = function(e, t) { this.props.isFake || t === this.state || this.props.stateSyncEmitter.emit('change', { favorites: this.state.favorites, studyTemplatesList: this.state.studyTemplatesList, }); }), (t.prototype.render = function() { var e, t = this.state, n = t.isActive, i = t.studyTemplatesList, a = t.favorites, r = this.props, s = r.isShownQuicks, l = r.className, c = r.displayMode, d = r.id, u = i.filter(function(e) { return a.includes(e.name); }), p = 'small' !== c && s && u.length > 0, m = b( l, vt.wrap, n && vt.opened, ((e = {}), (e[vt.full] = 'full' === c), (e[vt.medium] = 'medium' === c), e), ); return v.createElement( k, { id: d, className: m, onClick: this._handleClick, ref: this._getWrapRef }, v.createElement(o, { displayMode: c, icon: pt, text: mt.title, title: mt.tooltip, onClick: this._handleClick, }), p && this._renderQuicks(u), v.createElement( Z.a, { closeOnClickOutside: !0, doNotCloseOn: this, isOpened: n, onClose: this._handleClose, position: this._getDropdownPosition, }, v.createElement(h, { onClick: this._handleSaveTemplate }), i.length > 0 && v.createElement(A.a, null), this._renderMenuItems(), ), ); }), (t.prototype._renderQuicks = function(e) { var t = this; return e.map(function(e, n, o) { var i; return v.createElement(ut, { key: e.name, item: e, onApply: t._handleApplyTemplate, className: b( ((i = {}), (i[vt.first] = 0 === n), (i[vt.last] = n === o.length - 1), i), ), }); }); }), (t.prototype._renderMenuItems = function() { var e = this, t = this.state.studyTemplatesList, n = this.props.isFavoritingAllowed; return t.map(function(t) { return v.createElement(ht, { key: t.name, item: t, isFavoritingAllowed: n, favorite: e._isTemplateFavorite(t.name), onApply: e._handleApplyTemplate, onFavor: e._handleFavorTemplate, onRemove: e._handleRemoveTemplate, }); }); }), (t.prototype._handleTemplatesChange = function() { this.setState({ studyTemplatesList: this.context.studyTemplates.list() }); }), (t.prototype._handleFavoritesChange = function(e) { this.props.isShownQuicks && this.setState({ favorites: e }); }), (t.prototype._removeFavoriteTemplate = function(e) { var t, n = this.context.favoriteStudyTemplatesService; void 0 !== n && ((t = this.state.favorites), n.set( t.filter(function(t) { return t !== e; }), )); }), (t.prototype._addFavoriteTemplate = function(e) { var t, n = this.context.favoriteStudyTemplatesService; void 0 !== n && ((t = this.state.favorites), n.set(t.concat([e]))); }), (t.prototype._isTemplateFavorite = function(e) { return this.state.favorites.includes(e); }), (t.contextTypes = { favoriteStudyTemplatesService: m.object, studyTemplates: m.object.isRequired, }), t ); })(v.PureComponent)), n(85), (gt = n(39)), (Ct = n(1082)), (_t = n(1083)), (yt = n(1084)), (wt = { undoHint: window.t('Undo {0}'), redoHint: window.t('Redo {0}') }), (bt = { undoHotKey: Object(V.b)({ keys: ['Ctrl', 'Z'], text: '{0} + {1}' }), redoHotKey: Object(V.b)({ keys: ['Ctrl', 'Y'], text: '{0} + {1}' }), }), (St = Object(He.a)(De, Ct, { buttonUndo: 'button', buttonRedo: 'button' })), (kt = p.a({}, De, { button: St.buttonUndo })), (xt = p.a({}, De, { button: St.buttonRedo })), (Et = (function(e) { function t(t, n) { var o = e.call(this, t, n) || this; return ( (o._handleClickUndo = function() { Object(gt.trackEvent)('GUI', 'Undo'), o.context.chartWidgetCollection.undoHistory.undo(); }), (o._handleClickRedo = function() { Object(gt.trackEvent)('GUI', 'Redo'), o.context.chartWidgetCollection.undoHistory.redo(); }), (o.state = o._getStateFromUndoHistory()), o ); } return ( p.c(t, e), (t.prototype.componentDidMount = function() { var e = this.context.chartWidgetCollection; e.undoHistory .redoStack() .onChange() .subscribe(this, this._onChangeStack), e.undoHistory .undoStack() .onChange() .subscribe(this, this._onChangeStack); }), (t.prototype.componentWillUnmount = function() { var e = this.context.chartWidgetCollection; e.undoHistory .redoStack() .onChange() .unsubscribe(this, this._onChangeStack), e.undoHistory .undoStack() .onChange() .unsubscribe(this, this._onChangeStack); }), (t.prototype.render = function() { var e = this.props.id, t = this.state, n = t.isEnabledRedo, o = t.isEnabledUndo, i = t.redoStack, a = t.undoStack; return v.createElement( k, { id: e }, v.createElement(x.a, { icon: _t, isDisabled: !o, onClick: this._handleClickUndo, title: o ? wt.undoHint.format(a) : void 0, 'data-tooltip-hotkey': o ? bt.undoHotKey : void 0, theme: kt, }), v.createElement(x.a, { icon: yt, isDisabled: !n, onClick: this._handleClickRedo, title: n ? wt.redoHint.format(i) : void 0, 'data-tooltip-hotkey': n ? bt.redoHotKey : void 0, theme: xt, }), ); }), (t.prototype._onChangeStack = function() { var e = this._getStateFromUndoHistory(); this.setState(e); }), (t.prototype._getStateFromUndoHistory = function() { var e = this.context.chartWidgetCollection, t = e.undoHistory.undoStack(), n = e.undoHistory.redoStack(), o = n.head(), i = t.head(); return { isEnabledRedo: !n.isEmpty(), isEnabledUndo: !t.isEmpty(), redoStack: o ? o.text() : '', undoStack: i ? i.text() : '', }; }), (t.contextTypes = { chartWidgetCollection: m.object.isRequired }), t ); })(v.PureComponent)), (Mt = n(313)), (At = (function(e) { function t() { var t = (null !== e && e.apply(this, arguments)) || this; return ( (t._ref = null), (t._update = function() { t.forceUpdate(); }), (t._setRef = function(e) { t._ref = e; }), (t._handleMeasure = function(e) { var n = e.width; t.props.width.setValue(n); }), t ); } return ( p.c(t, e), (t.prototype.componentDidMount = function() { var e, t = this.props, n = t.element, o = t.isFake, i = t.width; o ? i.subscribe(this._update) : ((e = Object(X.ensureNotNull)(this._ref)), rt.findDOMNode(e).appendChild(n)); }), (t.prototype.componentWillUnmount = function() { var e = this.props, t = e.width; e.isFake && t.unsubscribe(this._update); }), (t.prototype.render = function() { var e = this.props, t = e.isFake, n = void 0 !== t && t, o = e.width; return v.createElement( Mt, { shouldMeasure: !n, whitelist: ['width'], onMeasure: this._handleMeasure }, v.createElement(k, { ref: this._setRef, style: n ? { width: o.value() } : void 0 }), ); }), t ); })(v.PureComponent)), (t.getRestrictedToolSet = d); }, 836: function(e, t) { e.exports = ''; }, 844: function(e, t, n) { 'use strict'; function o() { p.fire(); } var i, a, r, s, l, c, h, d, u, p; n.d(t, 'a', function() { return u; }), (t.b = o), (i = n(1)), (a = n(20)), n.n(a), (r = n(102)), n.n(r), (s = n(7)), n.n(s), (l = n(50)), (c = n(871)), n.n(c), (h = n(8)), (d = n.n(h)), (u = (function(e) { function t(t) { var n = e.call(this, t) || this; return ( (n._containerRef = null), (n._scrollWrapRef = null), (n._handleContainerRef = function(e) { return (n._containerRef = e); }), (n._handleScrollWrapRef = function(e) { return (n._scrollWrapRef = e); }), (n._handleMeasure = function() { var e, t, o, i, a, r, c, h, d, u, p, v, m, f, g, C, _; n.state.isMeasureValid || ((e = n.props.position), (t = Object(s.ensureNotNull)(n._containerRef)), (o = t.getBoundingClientRect()), (i = document.documentElement.clientHeight), (a = document.documentElement.clientWidth), (r = i - 10), (c = o.height > r), c && ((h = Object(s.ensureNotNull)(n._scrollWrapRef)), (h.style.overflowY = 'scroll'), (o = t.getBoundingClientRect())), (d = o.width), (u = o.height), (p = 'function' == typeof e ? e(d, u) : e), (v = 5), (m = a - d - 5), (f = Object(l.clamp)(p.x, v, Math.max(v, m))), (g = 5), (C = i - u - 5), (_ = Object(l.clamp)(p.y, g, Math.max(g, C))), n.setState({ appearingMenuHeight: c ? r : void 0, appearingMenuWidth: p.overrideWidth, appearingPosition: { x: f, y: _ }, isMeasureValid: !0, })); }), (n._handleGlobalClose = function() { n.props.onClose(); }), (n.state = {}), n ); } return ( i.c(t, e), (t.prototype.componentWillReceiveProps = function(e) { this.props.isOpened && !e.isOpened && this.setState({ isMeasureValid: void 0 }); }), (t.prototype.componentDidMount = function() { this._handleMeasure(), p.subscribe(this, this._handleGlobalClose); }), (t.prototype.componentDidUpdate = function() { this._handleMeasure(); }), (t.prototype.componentWillUnmount = function() { p.unsubscribe(this, this._handleGlobalClose); }), (t.prototype.render = function() { var e, t = this.props, n = t.children, o = t.minWidth, i = t.theme, s = void 0 === i ? c : i, l = t.className, h = this.state, d = h.appearingMenuHeight, u = h.appearingMenuWidth, p = h.appearingPosition, v = h.isMeasureValid; return a.createElement( 'div', { className: r(l, s.menuWrap, ((e = {}), (e[s.isMeasuring] = !v), e)), style: { height: d, left: p && p.x, minWidth: o, position: 'fixed', top: p && p.y, width: u, }, ref: this._handleContainerRef, }, a.createElement( 'div', { className: s.scrollWrap, style: { overflowY: void 0 !== d ? 'scroll' : 'auto' }, ref: this._handleScrollWrapRef, }, a.createElement('div', { className: s.menuBox }, n), ), ); }), t ); })(a.PureComponent)), (p = new d.a()); }, 846: function(e, t, n) { 'use strict'; function o(e) { return r.createElement(e.href ? 'a' : 'div', e); } function i(e) { e.stopPropagation(); } var a, r, s, l, c, h; n.d(t, 'a', function() { return h; }), (a = n(1)), (r = n(20)), n.n(r), (s = n(102)), n.n(s), (l = n(844)), (c = n(879)), n.n(c), (h = (function(e) { function t() { var t = (null !== e && e.apply(this, arguments)) || this; return ( (t._handleClick = function(e) { var n = t.props, o = n.dontClosePopup, i = n.isDisabled, a = n.onClick, r = n.onClickArg; i || (a && a(r, e), o || Object(l.b)()); }), t ); } return ( a.c(t, e), (t.prototype.render = function() { var e, t, n = this.props, a = n.className, l = n.forceShowHint, h = n.hint, d = n.icon, u = n.isActive, p = n.isDisabled, v = n.isHovered, m = n.appearAsDisabled, f = n.label, g = n.link, C = n.showToolboxOnHover, _ = n.target, y = n.toolbox, w = n.theme, b = void 0 === w ? c : w; return r.createElement( o, { className: s( a, b.item, d && b.withIcon, ((e = {}), (e[b.isActive] = u), (e[b.isDisabled] = p || m), (e[b.hovered] = v), e), ), href: g, target: _, onClick: this._handleClick, }, void 0 !== d && r.createElement('div', { className: b.icon, dangerouslySetInnerHTML: { __html: d }, }), r.createElement( 'div', { className: b.labelRow }, r.createElement('div', { className: b.label }, f), ), (void 0 !== h || l) && r.createElement('div', { className: b.hint }, h), void 0 !== y && r.createElement( 'div', { onClick: i, className: s(b.toolbox, ((t = {}), (t[b.showOnHover] = C), t)) }, y, ), ); }), t ); })(r.PureComponent)); }, 848: function(e, t, n) { 'use strict'; function o(e) { var t, n = e.icon, o = e.isActive, c = e.isOpened, h = e.isDisabled, d = e.onClick, u = e.text, p = e.textBeforeIcon, v = e.title, m = e.theme, f = void 0 === m ? l : m, g = e.className, C = e.forceInteractive, _ = i.e(e, [ 'icon', 'isActive', 'isOpened', 'isDisabled', 'onClick', 'text', 'textBeforeIcon', 'title', 'theme', 'className', 'forceInteractive', ]), y = r( g, f.button, v && 'apply-common-tooltip', ((t = {}), (t[f.isActive] = o), (t[f.isOpened] = c), (t[f.isInteractive] = (C || !!d) && !h), (t[f.isDisabled] = h), t), ), w = n && ('string' == typeof n ? a.createElement(s.a, { className: f.icon, icon: n }) : a.cloneElement(n, { className: f.icon })); return a.createElement( 'div', i.a({}, _, { className: y, onClick: h ? void 0 : d, title: v }), p && u && a.createElement('div', { className: r('js-button-text', f.text) }, u), w, !p && u && a.createElement('div', { className: r('js-button-text', f.text) }, u), ); } var i, a, r, s, l; (t.a = o), (i = n(1)), (a = n(20)), n.n(a), (r = n(102)), n.n(r), (s = n(300)), (l = n(855)), n.n(l); }, 849: function(e, t, n) { 'use strict'; function o(e) { return i.createElement('div', { className: a.separator }); } var i, a; (t.a = o), (i = n(20)), n.n(i), (a = n(881)), n.n(a); }, 855: function(e, t) { e.exports = { button: 'button-2ioYhFEY-', isInteractive: 'isInteractive-20uLObIc-', hovered: 'hovered-3perbaxJ-', isActive: 'isActive-22S-lGpa-', isOpened: 'isOpened-p-Ume5l9-', isDisabled: 'isDisabled-1_tmrLfP-', text: 'text-1sK7vbvh-', icon: 'icon-beK_KS0k-', }; }, 869: function(e, t) { e.exports = ''; }, 870: function(e, t) { e.exports = ''; }, 871: function(e, t) { e.exports = { menuWrap: 'menuWrap-1gEtmoET-', isMeasuring: 'isMeasuring-FZ0EJCM2-', scrollWrap: 'scrollWrap-1B5MfTJt-', menuBox: 'menuBox-20sJGjtG-', isHidden: 'isHidden-2vLQpR1t-', }; }, 872: function(e, t, n) { 'use strict'; function o(e) { var t = u(e), n = document.getElementById(t); return ( n || ((n = document.createElement('div')), (n.id = t), document.body.appendChild(n)), (d[e] = (d[e] || 0) + 1), n ); } function i(e) { var t = u(e), n = document.getElementById(t); d[e] && (d[e] -= 1), n && 0 === d[e] && document.body.removeChild(n); } var a, r = n(1), s = (n(127), n(20)), l = n(59), c = n(304), h = 0, d = {}, u = function(e) { return '__outside-render-' + e; }, p = (function(e) { function t(t) { return e.call(this, t) || this; } return ( r.c(t, e), (t.prototype.componentDidMount = function() { this._rememberLayer(), this._renderLayer(); }), (t.prototype.componentDidUpdate = function(e) { this.props.layerId !== e.layerId && (i(this._layerId), this._rememberLayer()), this._renderLayer(); }), (t.prototype.componentWillUnmount = function() { l.unmountComponentAtNode(this._layer), i(this._layerId); }), (t.prototype.render = function() { return null; }), (t.prototype._rememberLayer = function() { var e = this.props.layerId, t = void 0 === e ? h++ + '' : e; (this._layerId = t), (this._layer = o(t)); }), (t.prototype._renderLayer = function() { l.render(s.createElement('div', null, this.props.children), this._layer); }), t ); })(s.Component), v = n(844); n.d(t, 'a', function() { return a; }), (a = (function(e) { function t() { var t = (null !== e && e.apply(this, arguments)) || this; return ( (t._handleClose = function() { t.props.onClose(); }), (t._handleClickOutside = function(e) { var n = t.props, o = n.closeOnClickOutside, i = n.onClickOutside, a = n.doNotCloseOn; i && i(e), !o || (void 0 !== a && l.findDOMNode(a).contains(e.target)) || t._handleClose(); }), t ); } return ( r.c(t, e), (t.prototype.componentWillReceiveProps = function(e) { this.props.isOpened && !e.isOpened && this.setState({ isMeasureValid: void 0 }); }), (t.prototype.render = function() { var e = this.props, t = e.children, n = e.isOpened, o = (e.closeOnClickOutside, e.doNotCloseOn, e.onClickOutside, e.onClose, r.e(e, [ 'children', 'isOpened', 'closeOnClickOutside', 'doNotCloseOn', 'onClickOutside', 'onClose', ])); return n ? s.createElement( p, null, s.createElement( c.a, { handler: this._handleClickOutside, mouseDown: !0, touchStart: !0, ctor: 'div', }, s.createElement( v.a, r.a({}, o, { isOpened: n, onClose: this._handleClose }), t, ), ), ) : null; }), (t.defaultProps = { closeOnClickOutside: !0 }), t ); })(s.PureComponent)); }, 878: function(e, t, n) { 'use strict'; var o, i, a, r, s, l, c, h; n.d(t, 'a', function() { return h; }), (o = n(1)), n(11), (i = n(20)), n.n(i), (a = n(102)), n.n(a), (r = n(987)), n.n(r), (s = n(869)), n.n(s), (l = n(870)), n.n(l), (c = { add: window.t('Add to favorites'), remove: window.t('Remove from favorites') }), (h = (function(e) { function t() { var t = (null !== e && e.apply(this, arguments)) || this; return ( (t._handleClick = function(e) { var n = t.props, o = n.onClick, i = n.onClickArg; o && o(i, e); }), t ); } return ( o.c(t, e), (t.prototype.render = function() { var e, t = this.props.isFilled; return i.createElement('span', { className: a(r.star, 'apply-common-tooltip', ((e = {}), (e[r.checked] = t), e)), dangerouslySetInnerHTML: { __html: t ? s : l }, onClick: this._handleClick, title: t ? c.remove : c.add, }); }), t ); })(i.PureComponent)); }, 879: function(e, t) { e.exports = { item: 'item-2xPVYue0-', hovered: 'hovered-1uf45E05-', isDisabled: 'isDisabled-1wLqKupj-', isActive: 'isActive-2j-GhQs_-', icon: 'icon-2Qm7YIcz-', hint: 'hint-1IhIvLPB-', toolbox: 'toolbox-3ulPxfe--', withIcon: 'withIcon-1xBjf-oB-', labelRow: 'labelRow-3Q0rdE8--', label: 'label-3Xqxy756-', showOnHover: 'showOnHover-1q6ySzZc-', }; }, 880: function(e, t, n) { 'use strict'; var o, i, a, r, s, l, c, h, d, u, p, v; n.d(t, 'b', function() { return h; }), n.d(t, 'c', function() { return u; }), n.d(t, 'a', function() { return v; }), (o = n(1)), (i = n(20)), n.n(i), (a = n(102)), n.n(a), (r = n(872)), (s = n(975)), (l = n(7)), n.n(l), (c = n(989)), n.n(c), (function(e) { (e[(e.Top = 0)] = 'Top'), (e[(e.Bottom = 1)] = 'Bottom'); })(h || (h = {})), (function(e) { (e[(e.Left = 0)] = 'Left'), (e[(e.Right = 1)] = 'Right'); })(d || (d = {})), (function(e) { (e[(e.FromTopToBottom = 0)] = 'FromTopToBottom'), (e[(e.FromBottomToTop = 1)] = 'FromBottomToTop'); })(u || (u = {})), (function(e) { (e[(e.FromLeftToRight = 0)] = 'FromLeftToRight'), (e[(e.FromRightToLeft = 1)] = 'FromRightToLeft'); })(p || (p = {})), (v = (function(e) { function t(t) { var n = e.call(this, t) || this; return ( (n._wrapperRef = null), (n._handleWrapperRef = function(e) { return (n._wrapperRef = e); }), (n._handleClick = function() { n._handleToggleDropdown(); }), (n._handleToggleDropdown = function(e) { var t = n.state.isOpened, o = 'boolean' == typeof e ? e : !t; n.setState({ isOpened: o }); }), (n._handleClose = function() { n._handleToggleDropdown(!1); }), (n._getDropdownPosition = function(e, t) { var o = Object(l.ensureNotNull)(n._wrapperRef).getBoundingClientRect(), i = n.props, a = i.verticalAttachEdge, r = i.verticalDropDirection, s = i.horizontalAttachEdge, c = i.horizontalDropDirection, v = i.horizontalMargin, m = void 0 === v ? 0 : v, f = i.verticalMargin, g = void 0 === f ? 2 : f, C = a === h.Top ? -1 * g : g, _ = s === d.Right ? o.right : o.left, y = a === h.Top ? o.top : o.bottom; return { x: _ - (c === p.FromRightToLeft ? e : 0) + m, y: y - (r === u.FromBottomToTop ? t : 0) + C, }; }), (n.state = { isOpened: !1 }), n ); } return ( o.c(t, e), (t.prototype.render = function() { var e, t = this.props, n = t.id, o = t.arrow, l = t.children, h = t.content, d = t.isDisabled, u = t.minWidth, p = t.title, v = t.className, m = t.hotKey, f = this.state.isOpened, g = a( v, c.button, 'apply-common-tooltip', ((e = {}), (e[c.isDisabled] = d), (e[c.isOpened] = f), e), ); return i.createElement( 'div', { id: n, className: g, onClick: d ? void 0 : this._handleClick, title: p, 'data-tooltip-hotkey': m, ref: this._handleWrapperRef, }, h, o && i.createElement( 'div', { className: c.arrow }, i.createElement( 'div', { className: c.arrowWrap }, i.createElement(s.a, { dropped: f }), ), ), i.createElement( r.a, { closeOnClickOutside: this.props.closeOnClickOutside, doNotCloseOn: this, isOpened: f, minWidth: u, onClose: this._handleClose, position: this._getDropdownPosition, }, l, ), ); }), (t.defaultProps = { arrow: !0, closeOnClickOutside: !0, verticalAttachEdge: h.Bottom, horizontalAttachEdge: d.Left, verticalDropDirection: u.FromTopToBottom, horizontalDropDirection: p.FromLeftToRight, }), t ); })(i.PureComponent)); }, 881: function(e, t) { e.exports = { separator: 'separator-25lkUpN--' }; }, 882: function(e, t, n) { 'use strict'; function o(e, t, n) { var o, i, a, r, s; for ( void 0 === n && (n = {}), o = Object.assign({}, t), i = 0, a = Object.keys(t); i < a.length; i++ ) (r = a[i]), (s = n[r] || r) in e && (o[r] = [e[s], t[r]].join(' ')); return o; } t.a = o; }, 974: function(e, t, n) { 'use strict'; var o, i, a, r, s, l, c, h, d, u; Object.defineProperty(t, '__esModule', { value: !0 }), n.d(t, 'SERIES_ICONS', function() { return u; }), (o = n(980)), n.n(o), (i = n(981)), n.n(i), (a = n(982)), n.n(a), (r = n(983)), n.n(r), (s = n(984)), n.n(s), (l = n(985)), n.n(l), (c = n(986)), n.n(c), (h = n(40)), (d = {}), (d[h.STYLE_AREA] = o), (d[h.STYLE_BARS] = i), (d[h.STYLE_CANDLES] = a), (d[h.STYLE_HEIKEN_ASHI] = r), (d[h.STYLE_HOLLOW_CANDLES] = s), (d[h.STYLE_LINE] = l), (d[h.STYLE_BASELINE] = c), (u = d); }, 975: function(e, t, n) { 'use strict'; function o(e) { var t, n = e.dropped, o = e.className; return i.createElement(r.a, { className: a(o, s.icon, ((t = {}), (t[s.dropped] = n), t)), icon: l, }); } var i, a, r, s, l; (t.a = o), (i = n(20)), n.n(i), (a = n(102)), n.n(a), (r = n(300)), (s = n(988)), n.n(s), (l = n(836)), n.n(l); }, 980: function(e, t) { e.exports = ''; }, 981: function(e, t) { e.exports = ''; }, 982: function(e, t) { e.exports = ''; }, 983: function(e, t) { e.exports = ''; }, 984: function(e, t) { e.exports = ''; }, 985: function(e, t) { e.exports = ''; }, 986: function(e, t) { e.exports = ''; }, 987: function(e, t) { e.exports = { star: 'star-uhAI7sV4-', checked: 'checked-2bhy04CF-' }; }, 988: function(e, t) { e.exports = { icon: 'icon-16JOogW_-', dropped: 'dropped-1WSGLaYJ-' }; }, 989: function(e, t) { e.exports = { button: 'button-13wlLwhJ-', hovered: 'hovered-FUo4RNOC-', arrow: 'arrow-2pXEy7ej-', arrowWrap: 'arrowWrap-r5l5nQXU-', isOpened: 'isOpened-1939ai3F-', }; }, });