(self.webpackChunktradingview=self.webpackChunktradingview||[]).push([[4862],{3327:e=>{e.exports={"round-button":"round-button-Ma_jZLM8",icon:"icon-Ma_jZLM8",content:"content-Ma_jZLM8",link:"link-Ma_jZLM8","color-brand":"color-brand-Ma_jZLM8","variant-primary":"variant-primary-Ma_jZLM8","disable-themes":"disable-themes-Ma_jZLM8","variant-quiet-primary":"variant-quiet-primary-Ma_jZLM8","variant-secondary":"variant-secondary-Ma_jZLM8","variant-ghost":"variant-ghost-Ma_jZLM8","color-gray":"color-gray-Ma_jZLM8","color-red":"color-red-Ma_jZLM8","size-xsmall":"size-xsmall-Ma_jZLM8","icon-only":"icon-only-Ma_jZLM8","size-small":"size-small-Ma_jZLM8","size-medium":"size-medium-Ma_jZLM8","size-large":"size-large-Ma_jZLM8","size-xlarge":"size-xlarge-Ma_jZLM8","size-xxlarge":"size-xxlarge-Ma_jZLM8",animated:"animated-Ma_jZLM8",stretch:"stretch-Ma_jZLM8"}},81193:e=>{e.exports={container:"container-Mtq7m9Yl","intent-default":"intent-default-Mtq7m9Yl",focused:"focused-Mtq7m9Yl",readonly:"readonly-Mtq7m9Yl",disabled:"disabled-Mtq7m9Yl","with-highlight":"with-highlight-Mtq7m9Yl",grouped:"grouped-Mtq7m9Yl","adjust-position":"adjust-position-Mtq7m9Yl","first-row":"first-row-Mtq7m9Yl","first-col":"first-col-Mtq7m9Yl",stretch:"stretch-Mtq7m9Yl","font-size-medium":"font-size-medium-Mtq7m9Yl","font-size-large":"font-size-large-Mtq7m9Yl","no-corner-top-left":"no-corner-top-left-Mtq7m9Yl","no-corner-top-right":"no-corner-top-right-Mtq7m9Yl","no-corner-bottom-right":"no-corner-bottom-right-Mtq7m9Yl","no-corner-bottom-left":"no-corner-bottom-left-Mtq7m9Yl","size-small":"size-small-Mtq7m9Yl","size-medium":"size-medium-Mtq7m9Yl","size-large":"size-large-Mtq7m9Yl","intent-success":"intent-success-Mtq7m9Yl","intent-warning":"intent-warning-Mtq7m9Yl","intent-danger":"intent-danger-Mtq7m9Yl","intent-primary":"intent-primary-Mtq7m9Yl","border-none":"border-none-Mtq7m9Yl","border-thin":"border-thin-Mtq7m9Yl","border-thick":"border-thick-Mtq7m9Yl",highlight:"highlight-Mtq7m9Yl",shown:"shown-Mtq7m9Yl"}},84684:e=>{e.exports={"inner-slot":"inner-slot-yJbunXPO",interactive:"interactive-yJbunXPO",icon:"icon-yJbunXPO","inner-middle-slot":"inner-middle-slot-yJbunXPO","before-slot":"before-slot-yJbunXPO","after-slot":"after-slot-yJbunXPO"}},58089:e=>{e.exports={input:"input-oiYdY6I4","with-start-slot":"with-start-slot-oiYdY6I4","with-end-slot":"with-end-slot-oiYdY6I4"}},79727:e=>{e.exports={"round-tabs":"round-tabs-xmC1yG0w","align-start":"align-start-xmC1yG0w","align-center":"align-center-xmC1yG0w",tab:"tab-xmC1yG0w","tab-primary":"tab-primary-xmC1yG0w",checked:"checked-xmC1yG0w","tab-ghost":"tab-ghost-xmC1yG0w","size-xsmall":"size-xsmall-xmC1yG0w","size-small":"size-small-xmC1yG0w","size-large":"size-large-xmC1yG0w"}},20577:e=>{e.exports={dropTargetInside:"dropTargetInside-fd_GivvG",dropTarget:"dropTarget-fd_GivvG",before:"before-fd_GivvG",after:"after-fd_GivvG"}},3950:e=>{e.exports={wrap:"wrap-G4AKrzja",selected:"selected-G4AKrzja",childOfSelected:"childOfSelected-G4AKrzja",disabled:"disabled-G4AKrzja",expandHandle:"expandHandle-G4AKrzja", expanded:"expanded-G4AKrzja"}},43380:e=>{e.exports={separator:"separator-zol_jClG",tree:"tree-zol_jClG",overlayScrollWrap:"overlayScrollWrap-zol_jClG",listContainer:"listContainer-zol_jClG"}},11069:e=>{e.exports={title:"title-jLgqBxUH",tabs:"tabs-jLgqBxUH",empty:"empty-jLgqBxUH",image:"image-jLgqBxUH",spinner:"spinner-jLgqBxUH",contentList:"contentList-jLgqBxUH"}},84578:e=>{e.exports={dialog:"dialog-U4wVKi9O",button:"button-U4wVKi9O"}},64535:e=>{e.exports={title:"title-mrMP8kUe",withoutIcon:"withoutIcon-mrMP8kUe",buttons:"buttons-mrMP8kUe",button:"button-mrMP8kUe",disabled:"disabled-mrMP8kUe"}},19108:e=>{e.exports={wrap:"wrap-__HYDlI5",dialog:"dialog-__HYDlI5",offset:"offset-__HYDlI5",title:"title-__HYDlI5",main:"main-__HYDlI5",disabled:"disabled-__HYDlI5",icon:"icon-__HYDlI5",pathIcon:"pathIcon-__HYDlI5",syncIconWrap:"syncIconWrap-__HYDlI5",syncIcon:"syncIcon-__HYDlI5",rightButtons:"rightButtons-__HYDlI5",hover:"hover-__HYDlI5",expandHandle:"expandHandle-__HYDlI5",button:"button-__HYDlI5",selected:"selected-__HYDlI5",childOfSelected:"childOfSelected-__HYDlI5",renameInput:"renameInput-__HYDlI5",warn:"warn-__HYDlI5",visible:"visible-__HYDlI5"}},14822:e=>{e.exports={wrap:"wrap-sLDhMHB0",space:"space-sLDhMHB0",tree:"tree-sLDhMHB0"}},34393:e=>{e.exports={button:"button-W4RYPlVi",disabled:"disabled-W4RYPlVi"}},27011:(e,t,n)=>{"use strict";function o(e,t){return t||null==e||("string"==typeof e||Array.isArray(e))&&0===e.length}n.d(t,{isIconOnly:()=>o})},86332:(e,t,n)=>{"use strict";n.d(t,{ControlGroupContext:()=>o});const o=n(50959).createContext({isGrouped:!1,cellState:{isTop:!0,isRight:!0,isBottom:!0,isLeft:!0}})},95604:(e,t,n)=>{"use strict";function o(e){let t=0;return e.isTop&&e.isLeft||(t+=1),e.isTop&&e.isRight||(t+=2),e.isBottom&&e.isLeft||(t+=8),e.isBottom&&e.isRight||(t+=4),t}n.d(t,{getGroupCellRemoveRoundBorders:()=>o})},67029:(e,t,n)=>{"use strict";n.d(t,{ControlSkeleton:()=>b,InputClasses:()=>p});var o=n(50959),r=n(97754),i=n(50151),s=n(38528),l=n(90186),a=n(86332),c=n(95604);var u=n(81193),d=n.n(u);function h(e){let t="";return 0!==e&&(1&e&&(t=r(t,d()["no-corner-top-left"])),2&e&&(t=r(t,d()["no-corner-top-right"])),4&e&&(t=r(t,d()["no-corner-bottom-right"])),8&e&&(t=r(t,d()["no-corner-bottom-left"]))),t}function g(e,t,n,o){const{removeRoundBorder:i,className:s,intent:l="default",borderStyle:a="thin",size:u,highlight:g,disabled:m,readonly:p,stretch:f,noReadonlyStyles:v,isFocused:b}=e,_=h(null!=i?i:(0,c.getGroupCellRemoveRoundBorders)(n));return r(d().container,d()[`intent-${l}`],d()[`border-${a}`],u&&d()[`size-${u}`],_,g&&d()["with-highlight"],m&&d().disabled,p&&!v&&d().readonly,b&&d().focused,f&&d().stretch,t&&d().grouped,!o&&d()["adjust-position"],n.isTop&&d()["first-row"],n.isLeft&&d()["first-col"],s)}function m(e,t){const{highlight:n,highlightRemoveRoundBorder:o}=e;if(!n)return d().highlight;const i=h(null!=o?o:(0,c.getGroupCellRemoveRoundBorders)(t));return r(d().highlight,d().shown,i)}const p={FontSizeMedium:(0,i.ensureDefined)(d()["font-size-medium"]),FontSizeLarge:(0, i.ensureDefined)(d()["font-size-large"])},f={passive:!1};function v(e,t){const{style:n,id:r,role:i,onFocus:c,onBlur:u,onMouseOver:d,onMouseOut:h,onMouseDown:p,onMouseUp:v,onKeyDown:b,onClick:_,tabIndex:y,startSlot:S,middleSlot:C,endSlot:w,onWheel:T,onWheelNoPassive:M=null}=e,{isGrouped:I,cellState:E,disablePositionAdjustment:k=!1}=(0,o.useContext)(a.ControlGroupContext),D=function(e,t=null,n){const r=(0,o.useRef)(null),i=(0,o.useRef)(null),s=(0,o.useCallback)((()=>{if(null===r.current||null===i.current)return;const[e,t,n]=i.current;null!==t&&r.current.addEventListener(e,t,n)}),[]),l=(0,o.useCallback)((()=>{if(null===r.current||null===i.current)return;const[e,t,n]=i.current;null!==t&&r.current.removeEventListener(e,t,n)}),[]),a=(0,o.useCallback)((e=>{l(),r.current=e,s()}),[]);return(0,o.useEffect)((()=>(i.current=[e,t,n],s(),l)),[e,t,n]),a}("wheel",M,f);return o.createElement("span",{style:n,id:r,role:i,className:g(e,I,E,k),tabIndex:y,ref:(0,s.useMergedRefs)([t,D]),onFocus:c,onBlur:u,onMouseOver:d,onMouseOut:h,onMouseDown:p,onMouseUp:v,onKeyDown:b,onClick:_,onWheel:T,...(0,l.filterDataProps)(e),...(0,l.filterAriaProps)(e)},S,C,w,o.createElement("span",{className:m(e,E)}))}v.displayName="ControlSkeleton";const b=o.forwardRef(v)},78274:(e,t,n)=>{"use strict";n.d(t,{StartSlot:()=>l,MiddleSlot:()=>a,EndSlot:()=>c,AfterSlot:()=>u});var o=n(50959),r=n(97754),i=n(84684),s=n.n(i);function l(e){const{className:t,interactive:n=!0,icon:i=!1,children:l}=e;return o.createElement("span",{className:r(s()["inner-slot"],n&&s().interactive,i&&s().icon,t)},l)}function a(e){const{className:t,children:n}=e;return o.createElement("span",{className:r(s()["inner-slot"],s()["inner-middle-slot"],t)},n)}function c(e){const{className:t,interactive:n=!0,icon:i=!1,children:l}=e;return o.createElement("span",{className:r(s()["inner-slot"],n&&s().interactive,i&&s().icon,t)},l)}function u(e){const{className:t,children:n}=e;return o.createElement("span",{className:r(s()["after-slot"],t)},n)}},31261:(e,t,n)=>{"use strict";n.d(t,{InputControl:()=>b});var o=n(50959),r=n(97754),i=n(90186),s=n(47201),l=n(48907),a=n(38528),c=n(48027),u=n(29202),d=n(45812),h=n(67029),g=n(78274),m=n(58089),p=n.n(m);function f(e){return!(0,i.isAriaAttribute)(e)&&!(0,i.isDataAttribute)(e)}function v(e){const{id:t,title:n,role:s,tabIndex:l,placeholder:a,name:c,type:u,value:d,defaultValue:m,draggable:v,autoComplete:b,autoFocus:_,maxLength:y,min:S,max:C,step:w,pattern:T,inputMode:M,onSelect:I,onFocus:E,onBlur:k,onKeyDown:D,onKeyUp:L,onKeyPress:x,onChange:j,onDragStart:N,size:z="medium",className:A,inputClassName:O,disabled:R,readonly:B,containerTabIndex:P,startSlot:H,endSlot:G,reference:F,containerReference:V,onContainerFocus:Y,...U}=e,W=(0,i.filterProps)(U,f),K={...(0,i.filterAriaProps)(U),...(0,i.filterDataProps)(U),id:t,title:n,role:s,tabIndex:l,placeholder:a,name:c,type:u,value:d,defaultValue:m,draggable:v,autoComplete:b,autoFocus:_,maxLength:y,min:S,max:C,step:w,pattern:T,inputMode:M,onSelect:I,onFocus:E,onBlur:k,onKeyDown:D,onKeyUp:L,onKeyPress:x,onChange:j,onDragStart:N} ;return o.createElement(h.ControlSkeleton,{...W,disabled:R,readonly:B,tabIndex:P,className:r(p().container,A),size:z,ref:V,onFocus:Y,startSlot:H,middleSlot:o.createElement(g.MiddleSlot,null,o.createElement("input",{...K,className:r(p().input,O,H&&p()["with-start-slot"],G&&p()["with-end-slot"]),disabled:R,readOnly:B,ref:F})),endSlot:G})}function b(e){e=(0,c.useControl)(e);const{disabled:t,autoSelectOnFocus:n,tabIndex:r=0,onFocus:i,onBlur:h,reference:g,containerReference:m=null}=e,p=(0,o.useRef)(null),f=(0,o.useRef)(null),[b,_]=(0,u.useFocus)(),y=t?void 0:b?-1:r,S=t?void 0:b?r:-1,{isMouseDown:C,handleMouseDown:w,handleMouseUp:T}=(0,d.useIsMouseDown)(),M=(0,s.createSafeMulticastEventHandler)(_.onFocus,(function(e){n&&!C.current&&(0,l.selectAllContent)(e.currentTarget)}),i),I=(0,s.createSafeMulticastEventHandler)(_.onBlur,h),E=(0,o.useCallback)((e=>{p.current=e,g&&("function"==typeof g&&g(e),"object"==typeof g&&(g.current=e))}),[p,g]);return o.createElement(v,{...e,isFocused:b,containerTabIndex:y,tabIndex:S,onContainerFocus:function(e){f.current===e.target&&null!==p.current&&p.current.focus()},onFocus:M,onBlur:I,reference:E,containerReference:(0,a.useMergedRefs)([f,m]),onMouseDown:w,onMouseUp:T})}},71687:(e,t,n)=>{"use strict";n.d(t,{CustomComponentDefaultLink:()=>i});var o=n(50959);function r(e){const{reference:t,...n}=e;return{...n,ref:t}}function i(e){return o.createElement("a",{...r(e)})}o.PureComponent},48027:(e,t,n)=>{"use strict";n.d(t,{useControl:()=>i});var o=n(47201),r=n(29202);function i(e){const{onFocus:t,onBlur:n,intent:i,highlight:s,disabled:l}=e,[a,c]=(0,r.useFocus)(void 0,l),u=(0,o.createSafeMulticastEventHandler)(l?void 0:c.onFocus,t),d=(0,o.createSafeMulticastEventHandler)(l?void 0:c.onBlur,n);return{...e,intent:i||(a?"primary":"default"),highlight:null!=s?s:a,onFocus:u,onBlur:d}}},29202:(e,t,n)=>{"use strict";n.d(t,{useFocus:()=>r});var o=n(50959);function r(e,t){const[n,r]=(0,o.useState)(!1);(0,o.useEffect)((()=>{t&&n&&r(!1)}),[t,n]);const i={onFocus:(0,o.useCallback)((function(t){void 0!==e&&e.current!==t.target||r(!0)}),[e]),onBlur:(0,o.useCallback)((function(t){void 0!==e&&e.current!==t.target||r(!1)}),[e])};return[n,i]}},45812:(e,t,n)=>{"use strict";n.d(t,{useIsMouseDown:()=>r});var o=n(50959);function r(){const e=(0,o.useRef)(!1),t=(0,o.useCallback)((()=>{e.current=!0}),[e]),n=(0,o.useCallback)((()=>{e.current=!1}),[e]);return{isMouseDown:e,handleMouseDown:t,handleMouseUp:n}}},38528:(e,t,n)=>{"use strict";n.d(t,{useMergedRefs:()=>i});var o=n(50959),r=n(53017);function i(e){return(0,o.useCallback)((0,r.mergeRefs)(e),e)}},48907:(e,t,n)=>{"use strict";function o(e){null!==e&&e.setSelectionRange(0,e.value.length)}n.d(t,{selectAllContent:()=>o})},47201:(e,t,n)=>{"use strict";function o(...e){return t=>{for(const n of e)void 0!==n&&n(t)}}n.d(t,{createSafeMulticastEventHandler:()=>o})},23263:(e,t,n)=>{"use strict";n.d(t,{ManageDrawings:()=>R});var o=n(50959),r=n(43370),i=n(9745),s=n(44352),l=n(47539),a=n(40549),c=n.n(a),u=n(98351),d=n(6250),h=n(64530),g=n(65665),m=n(61074),p=n(97754) ;var f=n(90186),v=n(27011),b=n(3327),_=n.n(b);function y(e){const{className:t,color:n,variant:o,size:r,stretch:i,animated:s,disableThemes:l,...a}=e;return{...a,...(0,f.filterDataProps)(e),...(0,f.filterAriaProps)(e)}}function S(e){const{reference:t,children:n,iconOnly:r,endIcon:s,...l}=e,a=function(e,t){const{className:n,color:o="brand",variant:r="primary",size:i="xlarge",stretch:s,animated:l=!1,disableThemes:a=!1,iconOnly:c=!1,isAnchor:u=!1}=t;return p(n,e["round-button"],e[`color-${o}`],e[`variant-${r}`],e[`size-${i}`],l&&e.animated,s&&e.stretch,a&&e["disable-themes"],c&&e["icon-only"],u&&e.link)}(_(),e);return o.createElement("button",{...y(l),className:a,ref:t},!(0,v.isIconOnly)(n,r)&&o.createElement("span",{className:_().content},n),s&&o.createElement(i.Icon,{className:_().icon,icon:s}))}n(71687);function C(e,t){const{align:n="start",size:o="xsmall"}=t;return p(e["round-tabs"],e[`align-${n}`],e[`size-${o}`])}function w(e,t){const{variant:n="primary",isChecked:o}=t;return p(e.tab,e[`tab-${n}`],o&&e.checked)}var T=n(79727),M=n.n(T);const I=o.forwardRef(((e,t)=>{const{tabs:n,size:r="xsmall",variant:i="primary",theme:s=M()}=e;return o.createElement("div",{className:C(s,e),ref:t},n.map((e=>{const{isChecked:t,...n}=e;return o.createElement(S,{...n,className:w(s,{...n,variant:i,isChecked:t}),size:r,variant:i})})))}));I.displayName="RoundTabsButtons";s.t(null,void 0,n(87871)),s.t(null,void 0,n(10538)),s.t(null,void 0,n(74860));var E=n(29540),k=n(11069);const D=(0,u.getLogger)("Chart.ManageDrawings"),L=new Map;function x(e){let t=L.get(e);return void 0===t&&(t=new(c())([]),L.set(e,t)),t}const j=new l.TranslatedString("remove all line tools for {symbol}",s.t(null,void 0,n(23481))),N=e=>s.t(null,{plural:"{drawingsCount} drawings",count:e},n(88143)).format({drawingsCount:e.toString()}),z=s.t(null,void 0,n(85128)),A=s.t(null,void 0,n(18570));function O(e){const[t,n]=o.useState(null),[i,s]=o.useState(null),[l,a]=o.useState(null),[c,u]=(o.useRef(null),o.useState([]));return o.useEffect((()=>(e.withModel(null,(()=>{const t=e.model();n(t),s(t.mainSeries().symbol())})),()=>n(null))),[e]),o.useEffect((()=>{if(null!==t){const e={},n=(0,r.default)(f,250,{leading:!1});return f(),t.model().dataSourceCollectionChanged().subscribe(e,n),()=>{t.model().dataSourceCollectionChanged().unsubscribe(e,n)}}}),[t]),o.useEffect((()=>{if(null!==t){const e=x(t.model().id()).spawn();return u([...e.value()]),e.subscribe((()=>u([...e.value()]))),()=>null==e?void 0:e.destroy()}}),[t]),o.useMemo((()=>({currentSymbol:i,symbolDrawingsMaps:l,removeSymbolDrawings:h,changeSymbol:m,hiddenSymbols:c})),[i,l,h,m,c]);async function h(e,n){if(t&&l){const o=l[n].get(e);if(o){const n=Array.from(o).map((e=>t.model().dataSourceForId(e))).filter(g.notNull);n.length>0&&t.removeSources(n,!1,j.format({symbol:e}));const r=x(t.model().id());r.setValue([...r.value(),e]);try{await f()}catch(e){D.logError(`Error removing line tools: ${e}`)}r.setValue(r.value().filter((t=>t!==e)))}}}function m(n){e.setSymbol(n),null!==t&&s(n)}async function p(e){const t=function(e){ const t=[new Map,new Map,new Map];{const n=t[0];e.forEach((e=>{var t;if((0,d.isLineTool)(e)&&e.showInObjectTree()){const o=null!==(t=e.symbol())&&void 0!==t?t:"",r=n.get(o)||new Set;r.add(e.id()),n.set(o,r)}}))}return t}(e);return(await async function(){return[new Map,new Map,new Map]}()).forEach(((e,n)=>{const o=t[n];e.forEach(((e,t)=>{const n=o.get(t)||new Set;e.forEach((e=>n.add(e))),o.set(t,n)}))})),t}async function f(){null!==t&&a(await p(t.dataSources()))}}function R(e){const{isMobile:t,chartWidget:r,onClose:l,onInitialized:a}=e,{currentSymbol:c,symbolDrawingsMaps:u,removeSymbolDrawings:d,changeSymbol:g,hiddenSymbols:p}=O(r),[f,v]=o.useState(0),[b,_,y]=o.useMemo((()=>{var e;if(null!==c&&null!==u){const t=[];let n=0,o=f;if(null===o)for(o=2;o>0&&!(((null===(e=u[o].get(c))||void 0===e?void 0:e.size)||0)>0);)o--;return u[o].forEach(((e,o)=>{p.includes(o)||(t.push({symbol:o,drawingsCount:e.size,onRemove:()=>function(e){d(e,y)}(o),onClick:()=>function(e){""!==e&&(g(e),null==l||l())}(o)}),n+=e.size)})),t.sort(((e,t)=>e.drawingsCount===t.drawingsCount?e.symbol.localeCompare(t.symbol):e.drawingsCount>t.drawingsCount?-1:1)),[t,n,o]}return[[],0,0]}),[c,f,u,p]);return o.useEffect((()=>{null!==u&&(null==a||a())}),[u]),o.createElement(o.Fragment,null,b.length>0&&o.createElement("div",{className:k.title},`${S=u?u[y].size:0,s.t(null,{plural:"{symbolsCount} symbols",context:"symbols_and_drawings_count",count:S},n(52908)).format({symbolsCount:S.toString()})} ${(e=>s.t(null,{plural:"with {drawingsCount} drawings",context:"symbols_and_drawings_count",count:e},n(42743)).format({drawingsCount:e.toString()}))(_)}`),0===b.length?null===u?o.createElement(m.Spinner,{className:k.spinner}):o.createElement("div",{className:k.empty},o.createElement(i.Icon,{className:k.image,icon:E}),o.createElement("span",null,A)):b.map((({symbol:e,drawingsCount:n,onRemove:r,onClick:i})=>o.createElement(h.DialogContentItem,{key:e,title:e,subtitle:N(n),removeBtnLabel:z,isActive:e===c,isMobile:t,onClick:i,onClickRemove:r,showFavorite:!1}))));var S}},90006:(e,t,n)=>{"use strict";n.r(t),n.d(t,{ObjectTreeDialogRenderer:()=>Qo});var o=n(50959),r=n(962);async function i(e,t,n){let o;for(let r=0;rPromise.resolve()))}var l=n(98351);const a=(0,l.getLogger)("DataSourcesIcons");let c=null;function u(){const e=n.c[66389];return e?Promise.resolve(e.exports.lineToolsIcons):n.e(1890).then(n.bind(n,66389)).then((e=>e.lineToolsIcons))}function d(){const e=n.c[11316];return e?Promise.resolve(e.exports.SERIES_ICONS):n.e(9685).then(n.bind(n,11316)).then((e=>e.SERIES_ICONS))}let h=null;function g(){return null===h&&(h=function(){const e=s(u,2).then((e=>e)).catch((e=>(a.logWarn(e),{}))),t=s(d,2).then((e=>e)).catch((e=>(a.logWarn(e),{})));return Promise.all([e,t])}()),h.then((e=>(c={linetool:e[0],series:e[1]},c)))}var m=n(41590),p=n(37558),f=n(90692),v=n(44352),b=n(75208),_=n(24437),y=n(23263) ;var S=n(36349),C=n(32563),w=n(68335),T=n(50151),M=n(97754),I=n.n(M),E=n(9745),k=n(16396),D=n(37536),L=n(36947);const x=o.createContext(null);var j=n(97482),N=n(36296),z=n(74059),A=n(80465),O=n(64535),R=n(51768);function B(e){const{viewModel:t}=(0,T.ensureNotNull)((0,o.useContext)(x)),r=(0,L.useForceUpdate)(),i=t.selection();(0,o.useEffect)((()=>{const e={};return t.onChange().subscribe(e,(()=>r())),()=>{t.onChange().unsubscribeAll(e)}}),[t]),(0,o.useEffect)((()=>{const e={};return i.onChange().subscribe(e,(()=>r())),()=>{i.onChange().unsubscribeAll(e)}}),[i]);const s=!t.canSelectionBeUnmerged(),l=t.isSelectionCopiable(),a=t.isSelectionCloneable(),c=!l&&!a,u=t.canSelectionBeGrouped(),d=!1;return o.createElement(o.Fragment,null,o.createElement("div",{className:M(O.title,O.withoutIcon)},v.t(null,void 0,n(31095)),d),o.createElement("div",{className:O.buttons},o.createElement(j.ToolWidgetIconButton,{className:M(O.button,!u&&O.disabled),icon:A,onClick:function(){t.createGroupFromSelection()},isDisabled:!u,title:v.t(null,void 0,n(91073)),"data-name":"group-button"}),o.createElement(D.ToolWidgetMenu,{className:M(O.button,c&&O.disabled),isDisabled:c,content:o.createElement(E.Icon,{icon:N}),title:v.t(null,void 0,n(98129)),arrow:!1,isShowTooltip:!0,"data-name":"copy-clone-button"},l&&o.createElement(k.PopupMenuItem,{"data-name":"copy",label:v.t(null,void 0,n(35216)),onClick:function(){t.copySelection()}}),a&&o.createElement(k.PopupMenuItem,{"data-name":"clone",label:v.t(null,void 0,n(52977)),onClick:function(){t.cloneSelection()}})),o.createElement(D.ToolWidgetMenu,{className:M(O.button,s&&O.disabled),isDisabled:s,content:o.createElement(E.Icon,{icon:z}),title:v.t(null,void 0,n(45828)),arrow:!1,isShowTooltip:!0,"data-name":"move-to-button"},o.createElement(k.PopupMenuItem,{"data-name":"new-pane-above",label:v.t(null,void 0,n(40887)),onClick:function(){t.unmergeSelectionUp()}}),o.createElement(k.PopupMenuItem,{"data-name":"new-pane-below",label:v.t(null,void 0,n(96712)),onClick:function(){t.unmergeSelectionDown()}}))))}var P=n(54773),H=n(86942),G=n(10170),F=n(7809),V=n(23642);const Y=(U="OBJECT_TREE",e=>U+"__"+e);var U;const W=Y("SET_NODES"),K=Y("SYNC_NODES"),Z=Y("UPDATE_NODE"),q=Y("UPDATE_NODES"),$=Y("RESET_TREE"),X=Y("SET_SELECTED_IDS"),J=Y("DROP_SELECTION"),Q=Y("SELECT_PREVIOUS"),ee=Y("SELECT_NEXT"),te=Y("MULTI_SELECT_PREVIOUS"),ne=Y("MULTI_SELECT_NEXT"),oe=Y("PROCESS_DROP_TARGET"),re=Y("UPDATE_DROP_TARGET"),ie=Y("HIDE_DROP_TARGET"),se=Y("START_MULTI_SELECT"),le=Y("STOP_MULTI_SELECT"),ae=(Y("REMOVE_NODE"),Y("SET_FOCUSED_NODE")),ce=Y("SCROLL_TO_ID"),ue=Y("SET_IS_SELECTED"),de=Y("SET_IS_EXPANDED"),he=Y("SET_DISABLED_NODES"),ge=Y("MOVE_NODES"),me=(Y("START_DRAG"),Y("END_DRAG")),pe=()=>({type:Q}),fe=()=>({type:ee}),ve=()=>({type:te}),be=()=>({type:ne}),_e=(e,t,n,o,r)=>({type:oe,dropTarget:e,dropType:t,isHoveredLeft:n,boundBox:o,isLastChild:r}),ye=()=>({type:J}),Se=e=>({type:X,ids:e}),Ce=(e,t,n)=>({type:ge,ids:e,targetId:t,dropType:n}),we=()=>({type:se}),Te=()=>({type:le}),Me=e=>({type:ae,nodeId:e}),Ie=e=>({type:ce,nodeId:e }),Ee=(e,t,n=0)=>({type:ue,nodeId:e,isSelected:t,mode:n}),ke=(e,t)=>({type:de,nodeId:e,isExpanded:t}),De=e=>({type:he,ids:e}),Le=()=>({type:me});var xe=n(77145);const je=e=>e.nodes,Ne=e=>e.selection,ze=e=>e.dropTarget,Ae=e=>e.expanded,Oe=e=>e.scrollToId,Re=(e,t)=>t,Be=(0,xe.createSelector)([je,Re],((e,t)=>e[t])),Pe=(0,xe.createSelector)([Ne,Re],((e,t)=>e.ids.includes(t))),He=(0,xe.createSelector)([Ae,Re],((e,t)=>e.includes(t))),Ge=(0,xe.createSelector)([e=>e.disabled,Ne,Re],((e,t,n)=>!t.ids.includes(n)&&e.includes(n))),Fe=(0,xe.createSelector)(je,(e=>Object.keys(e))),Ve=(0,xe.createSelector)(Ne,(({ids:e})=>e)),Ye=(0,xe.createSelector)(Ne,(({lastFocusedNodeId:e})=>e)),Ue=(0,xe.createSelector)(Ne,(({isMultiSelecting:e})=>e)),We=(0,xe.createSelector)([je,Ve],((e,t)=>t.map((t=>e[t])))),Ke=(0,xe.createSelector)(je,(e=>Object.values(e).filter((e=>0===e.level)))),Ze=(0,xe.createSelector)([je,Ke],((e,t)=>t.reduce(((t,n)=>[...t,...qe(e,(0,T.ensureDefined)(n))]),[])));function qe(e,t){const n=[];for(const o of t.children)n.push(e[o]),n.push(...qe(e,e[o]));return n}const $e=(0,xe.createSelector)([je,Ke,Ae],((e,t,n)=>{const o=new Set(n);return t.reduce(((t,n)=>[...t,...Je(e,(0,T.ensureDefined)(n),o)]),[])})),Xe=(0,xe.createSelector)([je,Ve,Ae],((e,t,n)=>{const o=new Set(n);return[{id:"drag-list",level:-1,children:t}].reduce(((t,n)=>[...t,...Je(e,(0,T.ensureDefined)(n),o)]),[])}));function Je(e,t,n){const o=[];for(const r of t.children){const t=e[r];void 0!==t&&(o.push(t),n.has(r)&&o.push(...Je(e,t,n)))}return o}function*Qe(e){const{selectedIds:t,nodes:n}=yield(0,S.call)(e),o={};for(let e=0;e({type:W,nodes:e}))(o)),yield(0,S.put)(Se(t));!Ye(yield(0,S.select)())&&t.length>0&&(yield(0,S.put)(Me(t[0])),yield(0,S.put)(Ie(t[0])))}function*et(e){for(;;){if((yield(0,S.take)([se,le])).type===se){const t=Fe(yield(0,S.select)()).filter((t=>!e(t)));yield(0,S.put)(De(t))}else yield(0,S.put)(De([]))}}function*tt(){for(;;){const{type:e}=yield(0,S.take)([ne,te]),t=yield(0,S.select)(),n=Ze(t),o=n.length,r=Ye(t),i=[...Ve(t)],s=1===i.length&&i[0]!==r,l=n.findIndex((e=>e.id===(s?i[0]:r)));if(e===te&&0===l||e===ne&&l===o-1)continue;const a=at(t,e===ne?"next":"previous",n,l),{id:c}=a;i.includes(c)&&r?(yield(0,S.put)(Ee(r,!1,1)),yield(0,S.put)(Me(c))):yield(0,S.put)(Ee(c,!0,1)),yield(0,S.put)(Ie(c))}}function*nt(e,t){for(;;){const{type:n}=yield(0,S.take)([ee,Q]),o=yield(0,S.select)(),r=Ze(o),i=We(o),s=Ye(o);if(1===i.length&&i[0].id!==s&&!s){if(n===ee){yield(0,S.put)(Me(i[0].id));continue}if(n===Q){const e=r.findIndex((e=>e.id===i[0].id)),t=at(o,"previous",r,e);yield(0,S.put)(Me(t.id));continue}}const l=r.findIndex((e=>e.id===s)),a=n===ee?"next":"previous",c=at(o,a,r,l),{id:u}=c;e?e([u],a):yield(0,S.put)(Se([u])),t&&t(u),yield(0,S.put)(Me(u))}}function*ot(e,t=(()=>!0)){for(;;){const{mode:n,nodeId:o,isSelected:r}=yield(0,S.take)(ue);let i=[...Ve(yield(0,S.select)())];const s=Ze(yield(0,S.select)());if(1===n)r?i.push(o):i.splice(i.indexOf(o),1);else if(2===n&&i.length>0){const e=Ye(yield(0, S.select)());let n=s.findIndex((t=>t.id===e));-1===n&&(n=s.reduce(((e,t,n)=>i.includes(t.id)?n:e),-1));const r=s.findIndex((e=>e.id===o));if(n!==r)for(let e=Math.min(n,r);e<=Math.max(n,r);e++){const n=s[e].id;!i.includes(n)&&t(n)&&i.push(n)}}else i=o?[o]:[];const l=new Set(i);i=s.reduce(((e,t)=>(l.has(t.id)&&e.push(t.id),e)),[]),e?e(i):yield(0,S.put)(Se(i)),yield(0,S.put)(Me(o))}}function*rt(e=(()=>!0),t){const{dropTarget:n,dropType:o,isHoveredLeft:r,boundBox:i,isLastChild:s}=t,l=ze(yield(0,S.select)()),a=Be(yield(0,S.select)(),(0,T.ensureDefined)(n.parentId)),c=s&&"after"===o,u=We(yield(0,S.select)()),d=!c||!r&&e(u,n,o)?n:a,h=l.node&&l.node.id!==d.id||l.dropType!==o;u.map((e=>e.id)).includes(d.id)?yield(0,S.put)({type:ie}):h&&e(u,d,o)&&(yield(0,S.put)(((e,t,n)=>({type:re,node:e,dropType:t,boundBox:n}))(d,o,i)))}function*it(e){yield(0,S.throttle)(0,oe,rt,e)}function*st(e){for(;;){yield(0,S.take)(J);const t=We(yield(0,S.select)()),{node:n,dropType:o}=ze(yield(0,S.select)());if(n&&o){const r=new CustomEvent("tree-node-drop",{detail:{nodes:t,target:n.id,type:o}});if(e&&e(r),!r.defaultPrevented){const e=Ve(yield(0,S.select)());yield(0,S.put)(Ce(e,n.id,o))}}}}function*lt(e){for(;;){yield(0,S.take)(ge);e(je(yield(0,S.select)()))}}function at(e,t,n,o){const r=n.length;let i;-1===o&&"previous"===t&&(o=r);let s=0;for(;!i||Math.abs(s)1&&!He(e,(0,T.ensureDefined)(l.parentId)));)s+="next"===t?1:-1,i=n[(o+s+r)%r];var l;return i}function*ct(e={}){const{saga:t,onDrop:n,canMove:o,onMove:r,onSelect:i,onKeyboardSelect:s,initState:l,canBeAddedToSelection:a}=e,c=[(0,S.fork)(it,o),(0,S.fork)(st,n),(0,S.fork)(ot,i,a),(0,S.fork)(nt,i,s),(0,S.fork)(tt)];for(t&&c.push((0,S.fork)(t)),r&&c.push((0,S.fork)(lt,r)),a&&c.push((0,S.fork)(et,a));;){l&&(yield(0,S.call)(Qe,l));const e=yield(0,S.all)(c);yield(0,S.take)($);for(const t of e)yield(0,S.cancel)(t)}}var ut=n(91622),dt=n(65665);const ht=(0,l.getLogger)("Platform.GUI.ObjectTree.CallApi");const gt={ids:[],lastFocusedNodeId:void 0,isMultiSelecting:!1};const mt={node:void 0,dropType:void 0,boundBox:void 0};const pt=(0,ut.combineReducers)({nodes:function(e={},t){switch(t.type){case W:return t.nodes;case K:{const{nodes:n}=t,o=n.map((e=>e.id)),r={...e};for(const t of Object.keys(e))if(!o.includes(t)){const{parentId:e}=r[t];e&&(r[e]={...r[e],children:r[e].children.filter((e=>e!==t))}),delete r[t]}for(const e of n){const t=e.id;if(r.hasOwnProperty(t)){!(0,dt.deepEquals)(r[t].children,e.children)[0]&&(r[t]={...r[t],children:[...e.children]})}else{r[t]=e;const{parentId:n}=e;if(n&&!r[n].children.includes(t))throw new Error("Not implemented")}}return r}case Z:{const{type:n,nodeId:o,...r}=t;return{...e,[o]:{...e[o],...r}}}case q:{const{nodes:n}=t,o={...e};return Object.keys(n).forEach((e=>{o[e]={...o[e],...n[e]}})),{...e,...o}}case ge:{const{ids:n,targetId:o,dropType:r}=t,i=(0,T.ensureDefined)(e[o].parentId),s=e[i],l={};for(const t of n){const n=e[t];if(n.parentId){const o=l[n.parentId]||e[n.parentId];l[n.parentId]={...o,children:o.children.filter((e=>e!==t))}}l[t]={...n,parentId:i, level:s.level+1}}const a=s.children.filter((e=>!n.includes(e)));return a.splice(((e,t,n)=>{switch(n){case"before":return e.indexOf((0,T.ensureDefined)(t));case"inside":return e.length;case"after":return e.indexOf((0,T.ensureDefined)(t))+1;default:return 0}})(a,o,r),0,...n),l[i]={...e[i],children:a,isExpanded:!0},{...e,...l}}default:return e}},selection:function(e=gt,t){switch(t.type){case X:{const{ids:n}=t;return{...e,ids:n,lastFocusedNodeId:n.length>0?e.lastFocusedNodeId:void 0}}case se:return{...e,isMultiSelecting:!0};case le:return{...e,isMultiSelecting:!1};case ae:return{...e,lastFocusedNodeId:t.nodeId};case K:{const n=new Set(t.nodes.map((e=>e.id)));return e.lastFocusedNodeId&&!n.has(e.lastFocusedNodeId)&&delete e.lastFocusedNodeId,{...e,ids:e.ids.filter((e=>n.has(e)))}}default:return e}},dropTarget:function(e=mt,t){switch(t.type){case re:{const{node:n,dropType:o,boundBox:r}=t;return{...e,node:n,dropType:o,boundBox:r}}case ie:case me:case $:return{...mt};default:return e}},expanded:function(e=[],t){if(t.type===de){const{nodeId:n,isExpanded:o}=t;if(o)return[...e,n];const r=[...e];return r.splice(e.indexOf(n),1),r}return e},disabled:function(e=[],t){return t.type===he?[...t.ids]:e},scrollToId:function(e=null,t){return t.type===ce?null===t.nodeId?null:{id:t.nodeId}:e}});var ft=n(40933),vt=n(20037),bt=n(49483);var _t=n(42357),yt=n(98314),St=n(47201),Ct=n(70412);const wt=o.createContext({size:0,smallSizeTreeNodeAction:1}),Tt={[w.Modifiers.Mod]:1,[w.Modifiers.Shift]:2};var Mt=n(69533),It=n(3950);const Et=()=>{};class kt extends o.PureComponent{constructor(){super(...arguments),this._ref=null,this._handleRef=e=>{this._ref=e;const{connectDragSource:t,connectDropTarget:n,connectDragPreview:o}=this.props;(0,T.ensureDefined)(n)(this._ref),(0,T.ensureDefined)(t)(this._ref),(0,T.ensureDefined)(o)((0,yt.getEmptyImage)(),{captureDraggingState:!0})},this._handleTouchStart=e=>{const t=(e,t)=>{const n=function(e,t){try{const n=document.createEvent("TouchEvent");return n.initTouchEvent(e,!0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,t.touches,t.targetTouches,t.changedTouches),n}catch(e){return null}}(e,t);if(n)return n;const o=Array.from(t.changedTouches),r=Array.from(t.touches),i=Array.from(t.targetTouches);return new TouchEvent(e,{bubbles:!0,changedTouches:o,touches:r,targetTouches:i})},n=e.target;if(n instanceof Element){const e=e=>{const o=e;if(!n.isConnected){o.preventDefault();const e=t("touchmove",o);document.body.dispatchEvent(e)}},o=r=>{const i=r;if(!n.isConnected){i.preventDefault();const e=t("touchend",i);document.body.dispatchEvent(e)}n.removeEventListener("touchend",o),n.removeEventListener("touchmove",e)};n.addEventListener("touchend",o),n.addEventListener("touchmove",e)}}}componentDidMount(){var e;null===(e=this._ref)||void 0===e||e.addEventListener("touchstart",this._handleTouchStart)}componentWillUnmount(){var e;null===(e=this._ref)||void 0===e||e.removeEventListener("touchstart",this._handleTouchStart)}render(){return o.createElement(Dt,{...this.props,reference:this._handleRef})} getNode(){return(0,T.ensureNotNull)(this._ref)}}const Dt=e=>{const{id:t,isSelected:n,isOffset:r,isExpandable:i,setIsSelected:s,isDisabled:l,isExpanded:a,onClick:c,parentId:u,setIsExpanded:d,reference:h,isFirstListItem:g,isLastListItem:m,nodeRenderer:p,isChildOfSelected:f=!1}=e,{size:v,smallSizeTreeNodeAction:b}=(0,o.useContext)(wt),_=(0,o.useRef)(null),y=(0,St.createSafeMulticastEventHandler)((e=>_.current=e),h);let[S,C]=(0,Ct.useHover)();return(bt.CheckMobile.any()||bt.CheckMobile.isIPad())&&(S=n,C={onMouseOut:Et,onMouseOver:Et}),o.createElement("div",{className:M(It.wrap,n&&It.selected,f&&It.childOfSelected,l&&It.disabled,i&&It.expandable),onClick:1===v&&0===b?T:function(e){if(e.defaultPrevented)return;const o=Tt[(0,w.modifiersFromEvent)(e)]||0;!l&&s&&s(t,!n,o);c&&0===o&&c(e,t)},onContextMenu:T,ref:y,...C},i&&o.createElement(E.Icon,{icon:Mt,className:M(It.expandHandle,a&&It.expanded),onClick:function(e){e.preventDefault(),i&&d(t,!a)},onMouseDown:function(e){e.preventDefault()}}),p({id:t,isOffset:r,parentId:u,isDisabled:l,isSelected:n,isChildOfSelected:f,isHovered:S,isExpanded:a,isFirstListItem:g,isLastListItem:m}));function T(){l||n||!s||s(t,!0)}},Lt=o.createContext({});function xt(e,t){const{id:n}=t,o=Be(e,n),r=Pe(e,n);let i=!1,s=o.parentId;for(;s&&!i;)i=Pe(e,s),s=Be(e,s).parentId;return{...o,isSelected:r,isChildOfSelected:i,isExpanded:o.children.length>0&&He(e,n),isExpandable:o.children.length>0,isDisabled:Ge(e,n)}}function jt(e){return(0,ut.bindActionCreators)({setIsExpanded:ke,processDropTarget:_e,dropSelection:ye,selectNext:fe,selectPrevious:pe,setIsSelected:Ee,endDrag:Le},e)}const Nt=(0,H.connect)(xt,jt,null,{context:Lt})((function(e){const t=(0,o.useRef)(null),[,n,r]=(0,_t.useDrag)({type:"node",item:t=>{const{id:n,isDisabled:o,isSelected:r}=e;return o||r||e.setIsSelected(n,!0),e},end:e=>{e.endDrag()}}),[,i]=(0,ft.useDrop)({accept:"node",hover:(n,o)=>{const r=t.current;if(!r)return;const i=r.getNode(),s=i.getBoundingClientRect(),l=s.bottom-s.top,a=o.getClientOffset();if(a){const t=a.y-s.top;let n,o;if(n=0===e.children.length?t=l/3&&t<2*l/3?"inside":"after",void 0!==e.getContainerElement){const t=e.getContainerElement().getBoundingClientRect();o={top:s.top-t.top,left:s.left-t.left,bottom:s.top-t.top+s.height,right:s.left-t.left+s.width,height:s.height,width:s.width}}else o={top:i.offsetTop,left:i.offsetLeft,bottom:i.offsetTop+i.offsetHeight,right:i.offsetLeft+i.offsetWidth,height:i.offsetHeight,width:i.offsetWidth};e.processDropTarget(e,n,a.x-s.left<48,o,e.isLastChild)}}});return o.createElement(kt,{...e,connectDragSource:n,connectDropTarget:i,connectDragPreview:r,ref:t})})),zt=(0,H.connect)(xt,jt,null,{context:Lt})(Dt);var At=n(35749),Ot=n(85783),Rt=n(65718);function Bt(e){const t=e(),n=(0,o.useRef)(t);n.current=t;const[r,i]=(0,o.useState)(n.current),s=(0,o.useRef)(null);return(0,o.useEffect)((()=>{null===s.current&&(s.current=requestAnimationFrame((()=>{s.current=null,i(n.current)})))})),(0,o.useEffect)((()=>()=>{s.current&&cancelAnimationFrame(s.current) }),[]),r}function Pt(e){const{dropTargetOffset:t,mousePosition:n}=e;if(!t)return{display:"none"};const{x:o,y:r}=t,i=n&&t?n.y-t.y:0,s=`translate(${o+(n&&t?n.x-t.x:0)}px, ${r+i}px)`;return{transform:s,WebkitTransform:s}}const Ht={top:0,left:0,position:"fixed",pointerEvents:"none",zIndex:100,opacity:.5,width:300,backgroundColor:"red"};function Gt(e){return{isDragging:e.isDragging()&&"node"===e.getItemType(),mousePosition:e.getClientOffset(),dropTargetOffset:e.getSourceClientOffset()}}const Ft=(0,H.connect)((function(e){return{items:Xe(e)}}),null,null,{context:Lt})((function(e){const{items:t,isDragging:n,nodeRenderer:r,dragPreviewRenderer:i}=e;return Bt((function(){return n?o.createElement(Rt.Portal,null,o.createElement("div",{style:{...Ht,...Pt(e)}},t.map((e=>{if(i){const t=i;return o.createElement(t,{key:e.id,...e})}return o.createElement(zt,{id:e.id,key:e.id,nodeRenderer:r,isDragPreview:!0,isOffset:e.level>1})})))):null}))}));function Vt(e){return o.createElement(Ft,{...e,...(0,Ot.useDragLayer)(Gt)})}var Yt=n(3085),Ut=n(33127);const Wt=o.forwardRef(((e,t)=>{const n=(0,o.useRef)(null);return e.connectDropTarget(n),(0,o.useImperativeHandle)(t,(()=>({getNode:()=>(0,T.ensureNotNull)(n.current)})),[]),o.createElement("div",{ref:n,style:{height:"100%",width:"100%"}})}));function Kt(e){const t=(0,o.useRef)(null),[,n]=(0,ft.useDrop)({accept:"node",hover:(n,o)=>{if(!t.current)return;const r=o.getClientOffset();if(null===r)return;const i=e.getOrderedNodes();if(0===i.length)return;const s=t.current.getNode().getBoundingClientRect(),l=e.getContainerElement().getBoundingClientRect();if("first"===e.type){const t={top:s.top-l.top+s.height,left:s.left-l.left,bottom:s.top-l.top+s.height,right:s.left-l.left+s.width,height:0,width:s.width};e.processDropTarget(i[0],"before",!1,t,!1)}if("last"===e.type){const t=r.x-s.left<48,n=i[i.length-1],o=t&&2===n.level?(0,T.ensureDefined)(i.find((e=>e.id===n.parentId))):n,a={top:s.top-l.top,left:s.left-l.left,bottom:s.top-l.top,right:s.left-l.left+s.width,height:s.height,width:s.width};e.processDropTarget(o,"after",t,a,!1)}}});return o.createElement(Wt,{...e,connectDropTarget:n,ref:t})}const Zt=o.createContext({isOver:!1,transform:void 0});var qt=n(20577);function $t(e){const{dropType:t,boundBox:n}=e,{top:o,bottom:r,left:i}=(0,T.ensureDefined)(n);return[i,"before"===t||"inside"===t?o:r]}function Xt(e){return{isDragging:e.isDragging()}}const Jt=(0,H.connect)((function(e){const{boundBox:t,dropType:n,node:o}=ze(e);return{boundBox:t,dropType:n,level:o?o.level:void 0}}),null,null,{context:Lt})((function(e){const{dropType:t,boundBox:n,isDragging:r,level:i,transform:s=$t}=e;return Bt((function(){if(!r||!t||!n)return null;const l={[qt.dropTarget]:"inside"!==t,[qt.dropTargetInside]:"inside"===t},{width:a,height:c}=n,[u,d]=s(e),h=`translate(${u}px, ${d}px)`;return o.createElement("div",{className:M(l),style:{position:"absolute",transform:h,WebkitTransform:h,top:0,left:2===i?"46px":0,width:2===i?a-46+"px":a,height:"inside"===t?c:"2px"}})}))}));function Qt(e){const{isDragging:t}=(0,Ot.useDragLayer)(Xt) ;return o.createElement(Jt,{...e,isDragging:t})}const en=o.forwardRef(((e,t)=>{const n=(0,o.useContext)(Zt);return o.createElement("div",{...e,ref:t},e.children,n.isOver&&o.createElement(Qt,{transform:n.transform}))}));var tn=n(80142),nn=n(43380);const on=38+w.Modifiers.Shift,rn=40+w.Modifiers.Shift;const sn=o.forwardRef((function(e,t){const{navigationKeys:n,renderList:r,stopMultiSelect:i,startMultiSelect:s,isMultiSelecting:l,nodeRenderer:a,dragPreviewRenderer:c,className:u,connectDropTarget:d,readOnly:h,onClick:g,dropLayerTransform:m,setFocusedNode:p,scrollToId:f,rowHeight:v,onMultiSelectPrevious:b,onMultiSelectNext:_,onMoveCursorToNext:y,onMoveCursorToPrevious:S,onKeyDown:C,outerRef:M,width:E,height:k,isOver:D,processDropTarget:L,autofocus:j}=e,N=(0,o.useContext)(x),z=(0,o.useRef)(null);(0,o.useEffect)((()=>{var e;j&&(null===(e=z.current)||void 0===e||e.focus())}),[]),(0,o.useEffect)((()=>{const e=e=>{[w.Modifiers.Mod,w.Modifiers.Shift].includes((0,w.modifiersFromEvent)(e))&&s()},t=e=>{l&&![w.Modifiers.Mod,w.Modifiers.Shift].includes((0,w.modifiersFromEvent)(e))&&i()};return document.addEventListener("keydown",e),document.addEventListener("keyup",t),document.addEventListener("mousemove",t),()=>{document.removeEventListener("keydown",e),document.removeEventListener("keyup",t),document.removeEventListener("mousemove",t)}}),[l]),function(e){(0,o.useEffect)((()=>{if(bt.isEdge){let t=null;const n=(0,T.ensureNotNull)(e.current),o=e=>{if(e.target instanceof Element){const n=(0,T.ensureNotNull)(e.target.closest("[draggable]"));n instanceof HTMLElement&&(n.style.opacity="0",t=requestAnimationFrame((()=>n.style.opacity="1")))}};return n.addEventListener("dragstart",o),()=>{n.removeEventListener("dragstart",o),null!==t&&cancelAnimationFrame(t)}}return()=>{}}),[])}(z);const A=(0,o.useCallback)((()=>(0,T.ensureNotNull)(Z.current)),[]),O=(0,o.useCallback)((()=>r),[r]),R=(0,o.useMemo)((()=>{const e=h?zt:Nt,t=[];let n;t.push({type:"padding",node:o.createElement(Kt,{type:"first",key:"padding-top",getContainerElement:A,getOrderedNodes:O,processDropTarget:L})});for(let i=0;i0,nodeRenderer:a,readOnly:h,onClick:g,isOffset:s.level>1,getContainerElement:A})})}return t.push({type:"padding",node:o.createElement(Kt,{type:"last",key:"padding-bottom",getContainerElement:A,getOrderedNodes:O,processDropTarget:L})}),t}),[r]),B=(0,o.useRef)([]);B.current=R;const P=(0,o.useCallback)((e=>{let{style:t}=e;const{index:n}=e;return n===B.current.length-1&&(t={...t,bottom:0,minHeight:t.height},delete t.height),o.createElement("div",{style:t},B.current[n].node)}),[]),H=(0,o.useCallback)((e=>{const t=B.current[e];return"padding"===t.type?6:"function"==typeof v?v(e,t):v}),[v]),G=(0,o.useCallback)((e=>(0, T.ensure)(B.current[e].node.key)),[]),F=(0,o.useMemo)((()=>null===f?{index:-1}:{index:B.current.findIndex((e=>e.node.key===f.id))}),[f]);d(z);const[V,Y,U,W]=(0,Ut.useOverlayScroll)(),K=(0,o.useRef)(null);(0,o.useEffect)((()=>(0,T.ensureNotNull)(K.current).resetAfterIndex(0,!0)),[R]),(0,o.useEffect)((()=>(0,T.ensureNotNull)(K.current).scrollToItem(F.index)),[F]);const Z=(0,o.useRef)(null),q=(0,o.useMemo)((()=>({isOver:D,transform:m})),[D,m]),$=(0,o.useRef)(null),X=(0,o.useRef)({startScroll(e){const t=()=>{null!==U.current&&($.current=requestAnimationFrame(t),U.current.scrollBy({top:e}))};this.stopScroll(),t()},stopScroll(){null!==$.current&&(cancelAnimationFrame($.current),$.current=null)},getListElement:()=>U.current});return(0,o.useImperativeHandle)(t,(()=>X.current),[]),(0,o.useEffect)((()=>()=>X.current.stopScroll()),[D]),o.createElement(Zt.Provider,{value:q},o.createElement("div",{...Y,className:I()(nn.tree,u),ref:z,tabIndex:-1,onKeyDown:function(e){const t=(0,w.hashFromEvent)(e);if(e.defaultPrevented||(0,At.isNativeUIInteraction)(t,e.target))return;N||t!==on||(e.preventDefault(),b());N||t!==rn||(e.preventDefault(),_());(38===t||void 0!==n&&"previous"===n[t])&&(e.preventDefault(),S());(40===t||void 0!==n&&"next"===n[t])&&(e.preventDefault(),y());if((8===t||46===t)&&N){const{viewModel:e}=N,t=e.selection(),n=t.selected();if(1!==n.length)return;const o=e.getNextNodeIdAfterRemove(n[0]);if(null===o)return;e.onChange().subscribe(null,(()=>{if(t.selected().length)return;const n=e.entity(o);n&&(t.set([n]),p(o))}),!0)}null==C||C(e)}},o.createElement(Yt.OverlayScrollContainer,{...V,className:nn.overlayScrollWrap}),o.createElement(vt.VariableSizeList,{ref:function(e){K.current=e},className:nn.listContainer,width:E,height:k,itemCount:R.length,itemSize:H,children:P,itemKey:G,outerRef:function(e){U.current=e,M&&M(e)},innerRef:function(e){Z.current=e},innerElementType:en,onItemsRendered:function(){W()},overscanCount:20,direction:(0,tn.isRtl)()?"rtl":"ltr"}),o.createElement(Vt,{dragPreviewRenderer:c,nodeRenderer:a})))}));const ln=(0,H.connect)((function(e){return{renderList:$e(e),orderedNodes:Ze(e),isMultiSelecting:Ue(e),selectedIds:Ve(e),scrollToId:Oe(e)}}),(function(e){return(0,ut.bindActionCreators)({startMultiSelect:we,stopMultiSelect:Te,setFocusedNode:Me,processDropTarget:_e,onMoveCursorToNext:fe,onMoveCursorToPrevious:pe,onMultiSelectPrevious:ve,onMultiSelectNext:be},e)}),null,{context:Lt})((function(e){const t=(0,o.useRef)(null),[{isOver:n},r]=(0,ft.useDrop)({accept:"node",drop:(n,o)=>{var r;("touch"===e.drag||bt.isFF)&&(null===(r=t.current)||void 0===r||r.stopScroll()),o.getItem().dropSelection()},hover:(n,o)=>{var r,i;if("touch"!==e.drag&&!bt.isFF)return;const s=o.getClientOffset();if(null===s)return;const l=null!==(i=null===(r=t.current)||void 0===r?void 0:r.getListElement())&&void 0!==i?i:null;if(null===l)return;const a=l.getBoundingClientRect();((n,o,r)=>{var i;const s=Math.abs(n-r),l=Math.abs(n-o);if(l>40&&s>40||s<=40&&l<=40)return void(null===(i=t.current)||void 0===i||i.stopScroll());((n,o,r,i)=>{var s,l,a,c ;o||n?"touch"===e.drag?null===(s=t.current)||void 0===s||s.startScroll(o?-5:5):null===(l=t.current)||void 0===l||l.startScroll(o?-2:2):(r||i)&&("touch"===e.drag?null===(a=t.current)||void 0===a||a.startScroll(r?-10:10):null===(c=t.current)||void 0===c||c.startScroll(r?-5:5))})(l>20&&l<=40,s>20&&s<=40,s<=20,l<=20)})(s.y,a.bottom,a.top)},collect:e=>({isOver:e.isOver()})});return o.createElement(sn,{...e,isOver:n,connectDropTarget:r,ref:t})})),an={delayTouchStart:100};function cn(e){const{canBeAddedToSelection:t,initState:n,onSelect:r,canMove:i,onDrop:s,onMove:l,nodes:a,selectedIds:c,onKeyboardSelect:u,saga:d,lastFocusedNodeObject:h,lastSyncTimestampRef:g,scrollToId:m,...p}=e,[f,v]=(0,o.useState)(null);return(0,o.useEffect)((()=>{const e=(0,P.default)();v(function(e){const t=(0,ut.applyMiddleware)(e);return(0,ut.createStore)(pt,t)}(e));const o=e.run(ct,{initState:n,onKeyboardSelect:u,saga:d,canMove:i,onMove:l,onDrop:s,onSelect:r,canBeAddedToSelection:t});return()=>o.cancel()}),[]),(0,o.useEffect)((()=>(null!==f&&a&&(g&&(g.current=performance.now()),f.dispatch((e=>({type:K,nodes:e}))(a))),()=>{})),[f,a]),(0,o.useEffect)((()=>{null!==f&&c&&f.dispatch(Se(c))}),[f,c]),(0,o.useEffect)((()=>{null!==f&&(null==h?void 0:h.id)&&f.dispatch(Me(h.id))}),[f,h]),null===f?null:o.createElement(un,{store:f,scrollToId:m,...p})}const un=o.memo((function(e){const{store:t,scrollToId:n,...r}=e,i="touch"===e.drag?F.TouchBackend:G.HTML5Backend;return(0,o.useEffect)((()=>{var e;t.dispatch(Ie(null!==(e=null==n?void 0:n.id)&&void 0!==e?e:null))}),[n]),o.createElement(V.DndProvider,{backend:i,options:an},o.createElement(H.Provider,{store:t,context:Lt},o.createElement(ln,{...r})))}));function dn(e,t){(0,R.trackEvent)("Object Tree",e,t)}function hn(e){return e.length>1?"Multi select":e[0].gaLabel()}function gn(e){return(0,P.eventChannel)((t=>{const n={};return e.onChange().subscribe(n,(()=>t({type:$}))),e.onGroupCreated().subscribe(n,(e=>t(ke(e,!0)))),e.selection().onChange().subscribe(n,(e=>t(Se(e)))),()=>{e.onChange().unsubscribeAll(n),e.selection().onChange().unsubscribeAll(n),e.onGroupCreated().unsubscribeAll(n)}}),P.buffers.expanding())}function*mn(){for(;;)yield(0,S.take)([ee,Q]),dn("Select","Arrow")}function*pn(){for(;;){const{mode:e}=yield(0,S.take)(ue);1===e&&dn("Multi select","Ctrl"),2===e&&dn("Multi select","Shift")}}function*fn(e){for(;;){yield(0,S.take)(J);const{node:t,dropType:n}=ze(yield(0,S.select)());if(t){const o=We(yield(0,S.select)()),r=o.map((t=>(0,T.ensureNotNull)(e.entity(t.id))));let i="Drag";1===t.level&&"inside"!==n&&o.some((e=>2===e.level))?i="From the group":2!==t.level&&"inside"!==n||!o.some((e=>1===e.level))?1===o.length&&o[0].parentId!==t.parentId&&(i="Existing pane"):i="To the group",dn(i,hn(r))}}}function*vn(e){yield(0,S.fork)(mn),yield(0,S.fork)(pn),yield(0,S.fork)(fn,e)}function*bn(e){yield(0,S.fork)(vn,e);const t=yield(0,S.call)(gn,e);ht.logNormal("Opened object tree data source channel");try{for(;;){const e=yield(0,S.take)(t);yield(0,S.put)(e)}}finally{ht.logNormal("Closed object tree data source channel"), t.close()}}const _n=o.createContext(null);var yn=n(33933),Sn=n(898),Cn=n(14822);const wn=C.mobiletouch?"touch":"native";function Tn(e){const{viewModel:t,showHeader:n=!0,nodeRenderer:r,isDialog:i=!1}=e,s=(0,o.useRef)(null),l=function(e){const[t,n]=(0,o.useState)(e.getChartId()),r=(0,o.useRef)(t);return r.current=t,(0,o.useEffect)((()=>{return e.onChange().subscribe(null,t),()=>{e.onChange().unsubscribe(null,t)};function t(){const t=e.getChartId();r.current!==t&&n(t)}}),[]),t}(t),[a,c]=(0,Sn.useDimensions)(),[u,d]=(0,o.useState)(null),h=(0,o.useMemo)((()=>({isTouch:C.touch,isDialog:i})),[i]);return o.createElement(_n.Provider,{value:h},o.createElement(x.Provider,{value:{viewModel:t}},o.createElement("div",{className:Cn.wrap,onContextMenu:yn.preventDefaultForContextMenu},n&&o.createElement(B,null),o.createElement("div",{className:Cn.space,onClick:function(e){if(e.defaultPrevented)return;if(!(e.target instanceof Element)||null===s.current)return;e.target===s.current&&t.selection().set([])},ref:a},null!==c&&o.createElement(cn,{key:l,height:c.height,width:c.width,canBeAddedToSelection:function(e){const n=t.entity(e);return t.selection().canBeAddedToSelection(n)},nodeRenderer:r,initState:function(){const{nodes:e,selection:n}=t.getState();return{selectedIds:n,nodes:e}},canMove:function(e,n,o){return t.isSelectionDropable(n.id,o)},drag:wn,rowHeight:Mn,onSelect:function(e){const n=e.map((e=>t.entity(e))).filter((e=>null!==e));t.selection().set(n)},onDrop:function(e){e.preventDefault();const{detail:{target:n,type:o}}=e;t.insertSelection(n,o)},scrollToId:u,saga:function*(){yield(0,S.fork)(bn,t)},onKeyboardSelect:function(e){d({id:e})},outerRef:function(e){s.current=e},onKeyDown:function(e){if(13===(0,w.hashFromEvent)(e)){e.preventDefault();const n=t.selection().selected(),o=n.length>0?t.entity(n[0]):void 0;o&&t.openProperties(o)}},autofocus:i})))))}function Mn(e,t){switch(t.type){case"node":return 38;case"separator":return 13}}var In,En=n(2484);!function(e){e.Svg="svg"}(In||(In={}));var kn=n(31261),Dn=n(34393);function Ln(e){const{className:t,disabled:n,...r}=e;return o.createElement(E.Icon,{className:I()(Dn.button,n&&Dn.disabled,t),...r})}var xn=n(77975);const jn=v.t(null,void 0,n(91073)),Nn=v.t(null,void 0,n(35038)),zn=v.t(null,void 0,n(15101)),An=v.t(null,void 0,n(42284)),On=v.t(null,void 0,n(31971)),Rn=v.t(null,void 0,n(81428)),Bn=v.t(null,void 0,n(34596));var Pn=n(35936),Hn=n(33765),Gn=n(52870),Fn=n(49756),Vn=n(94007),Yn=n(62766),Un=n(19108);function Wn(e){const{id:t}=e,n=(0,o.useContext)(x),{viewModel:r}=(0,T.ensureNotNull)(n),i=r.entity(t);return null===i?null:o.createElement(Kn,{...e,entity:i})}function Kn(e){const{id:t,isOffset:r,isDisabled:i,isSelected:s,isChildOfSelected:l,isHovered:a,parentId:c,entity:u,isExpanded:d}=e,h=(0,o.useContext)(x),{viewModel:g}=(0,T.ensureNotNull)(h),m=(0,o.useContext)(_n),{size:p}=(0,o.useContext)(wt),[f,b]=(0,o.useState)(!1),_=(0,o.useRef)(null),[y,S]=(0,o.useState)(u.title()),[C,I]=(0,o.useState)(u.getIcon()),[k,D]=(0,o.useState)(u.isLocked()),[L,j]=(0, o.useState)(u.isVisible()),[N,z]=(0,o.useState)(u.isActualInterval()),[A,O]=(0,o.useState)(u.getDrawingSyncState()),[R,B]=(0,o.useState)(!1),[P,H]=((0,xn.useWatchedValueReadonly)({watchedValue:g.getChartLayout()}),(0,o.useState)(!1)),G=(0,o.useRef)(null);(0,o.useEffect)((()=>{const e={};u.onLockChanged().subscribe(e,(()=>D(u.isLocked()))),u.onVisibilityChanged().subscribe(e,(()=>j(u.isVisible())));const t=u.onTitleChanged();t&&t.subscribe(e,(()=>S(u.title()))),u.onIsActualIntervalChange().subscribe(e,(()=>z(u.isActualInterval()))),u.onSyncStateChanged().subscribe(e,(()=>O(u.getDrawingSyncState())));const n=u.onIconChanged?u.onIconChanged():void 0;return n&&n.subscribe(e,(()=>I(u.getIcon()))),()=>{u.onIsActualIntervalChange().unsubscribeAll(e),u.onLockChanged().unsubscribeAll(e),u.onVisibilityChanged().unsubscribeAll(e),u.onSyncStateChanged().unsubscribeAll(e),t&&t.unsubscribeAll(e),G.current&&clearTimeout(G.current),n&&n.unsubscribeAll(e)}}),[u]),(0,o.useEffect)((()=>{f&&_.current&&(_.current.focus(),_.current.setSelectionRange(0,y.length))}),[f]),(0,o.useEffect)((()=>{const e={};return g.hoveredObjectChanged().subscribe(e,Q),()=>{g.hoveredObjectChanged().unsubscribeAll(e)}}),[d]),(0,o.useEffect)((()=>{g.setHoveredObject(a?t:null)}),[a]),(0,o.useEffect)((()=>{!s&&G.current&&(clearTimeout(G.current),G.current=null),b(!1)}),[s]);const F={};if(c){const e=g.entity(c);e&&(F["data-parent-name"]=e.title()),F["data-type"]=u.hasChildren()?"group":"data-source"}const V=En.enabled("test_show_object_tree_debug")?`<${u.id()}> (${u.zOrder()}) ${u.title()}`:u.title(),Y=a||R,U=f&&s,W=!!m&&m.isTouch,K=!!m&&m.isDialog,Z=N&&L?Vn:Yn,q=u.hasChildren()?v.t(null,void 0,n(38207)):v.t(null,void 0,n(39781));let $=null;return C&&C.type===In.Svg&&($=o.createElement(E.Icon,{icon:C.content||"",className:Un.icon})),o.createElement("span",{className:M(Un.wrap,i&&Un.disabled,s&&Un.selected,r&&Un.offset,l&&Un.childOfSelected,R&&!i&&!s&&!l&&Un.hover,K&&!i&&!s&&!l&&Un.dialog),onMouseDown:function(e){f&&!(0,T.ensureNotNull)(_.current).contains(e.target)&&H(!0)},onClick:1===p?X:function(e){if(e.defaultPrevented)return;if(0!==(0,w.modifiersFromEvent)(e))return;if(G.current)e.preventDefault(),clearTimeout(G.current),G.current=null,g.openProperties(u),H(!1);else{const e=g.selection().selected();G.current=setTimeout((()=>{G.current=null,s&&!P&&1===e.length&&g.rename(u,(()=>b(!0))),H(!1)}),500)}},onContextMenu:W?void 0:X},!U&&o.createElement(o.Fragment,null,$,!1,o.createElement("span",{className:M(Un.title,g.isMain(u)&&Un.main,(!u.isVisible()||!N)&&Un.disabled),...F},V),o.createElement("span",{className:Un.rightButtons},u.canBeLocked()&&o.createElement(Ln,{title:k?zn:An,icon:k?Gn:Fn,className:M(Un.button,(Y||k)&&Un.visible,"apply-common-tooltip"),onClick:function(e){if(e.defaultPrevented)return;e.preventDefault(),g.setIsLocked(t,!u.isLocked())},"data-role":"button","data-name":"lock","data-active":k}),o.createElement(Ln,{icon:Z,className:M(Un.button,!N&&Un.warn,(Y||!L||!N)&&Un.visible,"apply-common-tooltip"),onClick:N?function(e){if(e.defaultPrevented)return ;e.preventDefault(),g.setIsVisible(t,!u.isVisible())}:function(e){if(e.defaultPrevented)return;e.preventDefault(),g.openProperties(u,Pn.TabNames.visibility)},title:function(){if(!N)return q;return L?On:Rn}(),"data-role":"button","data-name":"hide","data-active":!L}),u.canBeRemoved()&&o.createElement(Ln,{title:Bn,icon:Hn,className:M(Un.button,(W||Y)&&Un.visible,"apply-common-tooltip"),onClick:function(e){if(e.defaultPrevented)return;e.preventDefault(),e.stopPropagation(),g.remove(t)},"data-role":"button","data-name":"remove"}))),U&&o.createElement(kn.InputControl,{value:y,onChange:function(e){S(e.currentTarget.value)},onClick:yn.preventDefault,className:Un.renameInput,onKeyDown:function(e){27===(0,w.hashFromEvent)(e)?(e.preventDefault(),S(u.title()),b(!1)):13===(0,w.hashFromEvent)(e)&&(e.preventDefault(),J())},reference:function(e){_.current=e},onBlur:J,onDragStart:function(e){e.preventDefault(),e.stopPropagation()},draggable:!0,stretch:!0}));function X(e){e.defaultPrevented||f||!u.fullyConstructed()||(e.preventDefault(),e.persist(),g.openContextMenu(u,(()=>b(!0)),e))}function J(){""!==y&&u.setName(y),S(u.title()),b(!1)}function Q(e){if(u.hasChildren()&&!d){const t=null!==e&&u.childrenIds().has(e);B(t)}else B(t===e)}}var Zn=n(84578);class qn extends o.PureComponent{constructor(e){super(e),this._isMounted=!1,this._dialogRef=o.createRef(),this._renderChildren=e=>o.createElement($n,{isSmallTablet:e,viewModel:this.props.viewModel}),this._handleMediaChange=()=>{this.state.showDrawer&&!window.matchMedia(_.DialogBreakpoints.TabletSmall).matches&&this.setState({showDrawer:!1})},this._onManageDrawings=e=>{throw new Error("not supported")},this._closeDrawer=()=>{this.setState({showDrawer:!1})},this._handleContextMenuOpened=e=>{this.setState({isContextMenuOpened:e})},this._matchMedia=window.matchMedia(_.DialogBreakpoints.TabletSmall),this.state={showDrawer:!1,showDialog:!1,isContextMenuOpened:!1}}componentDidMount(){this._isMounted=!0,this._matchMedia.addListener(this._handleMediaChange),this.props.viewModel.isContextMenuOpened().subscribe(this._handleContextMenuOpened)}componentWillUnmount(){this._isMounted=!1,this._matchMedia.removeListener(this._handleMediaChange),this.props.viewModel.isContextMenuOpened().unsubscribe(this._handleContextMenuOpened)}render(){return o.createElement(o.Fragment,null,o.createElement(f.MatchMedia,{rule:_.DialogBreakpoints.TabletSmall},(e=>o.createElement(b.AdaptivePopupDialog,{additionalElementPos:"after",additionalHeaderElement:!1,className:Zn.dialog,dataName:"object-tree-dialog",isOpened:!0,onClickOutside:this.state.showDialog||e||this.state.isContextMenuOpened?()=>{}:this.props.onClose,onClose:this.props.onClose,ref:this._dialogRef,render:()=>this._renderChildren(e),title:v.t(null,void 0,n(31095)),showSeparator:!0}))),o.createElement(p.DrawerManager,null,this.state.showDrawer&&o.createElement(m.Drawer,{onClose:this._closeDrawer,position:"Bottom"},o.createElement(y.ManageDrawings,{onClose:this._closeDrawer,chartWidget:this.props.activeChartWidget,isMobile:!0}))))}}function $n(e){ const{isSmallTablet:t,viewModel:n}=e,r=(0,o.useMemo)((()=>({size:t?1:0,smallSizeTreeNodeAction:0})),[t]);return o.createElement(wt.Provider,{value:r},o.createElement(Tn,{nodeRenderer:Wn,showHeader:!1,viewModel:n,isDialog:!0}))}var Xn=n(16216),Jn=n(90981),Qn=n(26867),eo=n.n(Qn);var to=n(32112);function no(e,t){return`${e}:${t}`}function oo(e){const t=e.split(":");return{persistentId:t[0],instanceId:t[1]}}class ro{constructor(e){this._onChange=new(eo()),this._recalculate=()=>{const e=this._groupModel.groups().map((e=>no(e.id,e.instanceId()))),t=this._selectionApi.allSources();this._selected=this._selected.filter((n=>e.includes(n)||t.includes(n))),this._onChange.fire(this._selected)},this._model=e,this._selectionApi=new to.SelectionApi(this._model),this._groupModel=this._model.lineToolsGroupModel(),this._selected=this._getSelectedIds(),this._selectionApi.onChanged().subscribe(this,(()=>{this._selected=this._getSelectedIds(),this._onChange.fire(this._selected)})),this._groupModel.onChanged().subscribe(this,this._recalculate)}destroy(){this._selectionApi.onChanged().unsubscribeAll(this),this._groupModel.onChanged().unsubscribeAll(this)}set(e){const t=[];let n=e.map((e=>e.id()));for(const o of e)if(o.hasChildren()){const e=o.childrenIds();t.push(...Array.from(e.values())),n=n.filter((t=>!e.has(t)))}else t.push(o.id());this._selectionApi.set(t.map((e=>oo(e).persistentId))),this._selected=n,this._onChange.fire(this._selected)}canBeAddedToSelection(e){return null!==e&&e.canBeAddedToSelection()}onChange(){return this._onChange}selected(){return this._selected}_getSelectedIds(){return this._selectionApi.allSources().map((e=>this._model.dataSourceForId(e))).filter(dt.notNull).filter((e=>e.showInObjectTree())).map((e=>no(e.id(),e.instanceId())))}}class io{constructor(e,t){this._controller=e,this._facade=t,this._groupModel=e.model().lineToolsGroupModel()}buildTree(){const e={};for(const t of this._controller.model().panes()){const n=t.sourcesByGroup().all().filter((e=>e.showInObjectTree()));e[t.id()]=so(t.id(),0);for(const n of this._groupModel.groups()){const o=no(n.id,n.instanceId()),r=(0,T.ensureNotNull)(this._facade.getObjectById(o));if(r.pane()===t){const o=[...n.lineTools()].sort(((e,t)=>e.zorder()>t.zorder()?-1:1)).map((e=>no(e.id(),e.instanceId())));e[r.id()]=so(r.id(),1,t.id(),o),e[t.id()].children.push(r.id());for(const t of o)e[t]=so(t,2,r.id())}}for(const o of n){const n=no(o.id(),o.instanceId());e[n]||(e[n]=so(n,1,t.id()),e[t.id()].children.push(n))}e[t.id()].children.sort(((e,t)=>{const n=(0,T.ensureNotNull)(this._facade.getObjectById(e)),o=(0,T.ensureNotNull)(this._facade.getObjectById(t));return(0,T.ensureNotNull)(o.zOrder())-(0,T.ensureNotNull)(n.zOrder())}))}return this._facade.invalidateCache(new Set(Object.keys(e))),e}}function so(e,t,n,o=[]){return{id:e,level:t,parentId:n,children:o}}var lo=n(47539),ao=n(6250),co=n(89215),uo=n(80230),ho=n(46936),go=n(6195),mo=n(76076),po=n(7295),fo=n(28824),vo=n(57674),bo=n(46627) ;const _o=new lo.TranslatedString("show {title}",v.t(null,void 0,n(87358))),yo=new lo.TranslatedString("hide {title}",v.t(null,void 0,n(70301))),So=new lo.TranslatedString("lock {title}",v.t(null,void 0,n(50193))),Co=new lo.TranslatedString("unlock {title}",v.t(null,void 0,n(92421))),wo=new lo.TranslatedString("change {sourceTitle} title to {newSourceTitle}",v.t(null,void 0,n(40001))),To=new lo.TranslatedString("insert source(s) after",v.t(null,void 0,n(8343)));function Mo(e,t){return t.every((t=>!(t.pane()!==e&&!t.allowsMovingbetweenPanes())))}function Io(e){return e instanceof uo.DataSource&&e.showInObjectTree()?no(e.id(),e.instanceId()):null}function Eo(e){return new lo.TranslatedString(e.name(),e.title())}const ko=new(eo()),Do="do_not_invalidate_chart_on_changing_line_tools";class Lo{constructor(e,t){this._syncStateChanged=new(eo()),this._lineToolsAffectChartInvalidation=new bo.FeatureToggleWatchedValue(Do,!1),this._updateSyncState=()=>{this._syncStateChanged.fire((0,T.ensureNotNull)(this.getDrawingSyncState()))},this._undoModel=e,this._dataSource=t,(0,ao.isLineTool)(this._dataSource)&&(this._dataSource.linkKey().subscribe(this._updateSyncState),this._dataSource.sharingMode().subscribe(this._updateSyncState));const n=this._undoModel.lineBeingCreated();null!==n&&n===t&&n.isSynchronizable()&&mo.isToolCreatingNow.subscribe(this._updateSyncState)}destroy(){(0,ao.isLineTool)(this._dataSource)&&(this._dataSource.linkKey().unsubscribe(this._updateSyncState),this._dataSource.sharingMode().unsubscribe(this._updateSyncState)),mo.isToolCreatingNow.unsubscribe(this._updateSyncState)}id(){return no(this._dataSource.id(),this._dataSource.instanceId())}title(){const e=this._dataSource;return(0,ao.isLineTool)(e)?e.properties().title.value()||e.translatedType():(0,ho.isSeries)(e)&&this._undoModel.mainSeries()===e?e.symbolTitle(void 0,void 0,(0,bt.onWidget)()?"exchange":"listed_exchange"):e.title()}gaLabel(){return(0,co.isStudy)(this._dataSource)?"Study":(0,ao.isLineTool)(this._dataSource)?"Drawing":"Symbol"}canBeLocked(){return(0,ao.isLineTool)(this._dataSource)&&this._dataSource.userEditEnabled()}canBeRemoved(){return this._undoModel.mainSeries()!==this._dataSource&&this._dataSource.isUserDeletable()}canBeHidden(){return this._dataSource.canBeHidden()}canBeRenamed(){return(0,ao.isLineTool)(this._dataSource)}fullyConstructed(){return this._undoModel.lineBeingCreated()!==this._dataSource}isVisible(){return this._dataSource.properties().visible.value()}isActualInterval(){return!(0,ao.isLineTool)(this._dataSource)&&!(0,co.isStudy)(this._dataSource)||this._dataSource.isActualInterval()}onIsActualIntervalChange(){return(0,ao.isLineTool)(this._dataSource)||(0,co.isStudy)(this._dataSource)?this._dataSource.onIsActualIntervalChange():ko}isLocked(){return!!(0,ao.isLineTool)(this._dataSource)&&this._dataSource.properties().frozen.value()}onVisibilityChanged(){return this._dataSource.properties().visible.listeners()}onLockChanged(){return(0,ao.isLineTool)(this._dataSource)?this._dataSource.properties().frozen.listeners():ko}getIcon(){ const e=c,t=this._dataSource.getSourceIcon(),n=(0,co.isStudyStrategy)(this._dataSource);let o={type:In.Svg,content:n?po:fo};if(e&&t)if("loadSvg"===t.type){const[n,r]=t.svgId.split("."),i="linetool"===n?e.linetool[r]:e.series[Number(r)];o={type:In.Svg,content:i||fo}}else"svgContent"===t.type&&(o={type:In.Svg,content:t.content});return o}onIconChanged(){if(this._dataSource.onSourceIconChanged)return this._dataSource.onSourceIconChanged()}setVisible(e){const t=(e?_o:yo).format({title:Eo(this._dataSource)});this._undoModel.setProperty(this._dataSource.properties().visible,e,t)}setLocked(e){if((0,ao.isLineTool)(this._dataSource)){const t=(e?So:Co).format({title:Eo(this._dataSource)});this._undoModel.setProperty(this._dataSource.properties().frozen,e,t)}}setName(e){if((0,ao.isLineTool)(this._dataSource)){const t=wo.format({sourceTitle:this._dataSource.properties().title.value()||Eo(this._dataSource),newSourceTitle:e});this._undoModel.setProperty(this._dataSource.properties().title,e,t,this._lineToolsAffectChartInvalidation.value())}}isCopiable(){return this._dataSource.copiable()}isClonable(){return this._dataSource.cloneable()}zOrder(){return this._dataSource.zorder()}remove(){this._undoModel.removeSource(this._dataSource,!1)}canBeAddedToSelection(){return this._undoModel.selection().canBeAddedToSelection(this._dataSource)}setAsSelection(){this._undoModel.model().selectionMacro((e=>{e.clearSelection(),e.addSourceToSelection(this._dataSource)}))}addToSelection(){this._undoModel.model().selectionMacro((e=>{e.addSourceToSelection(this._dataSource)}))}addSourcesToArray(e){return e.push(this._dataSource),e}insertSourcesBeforeThis(e){this._insertSources(e,(e=>this._undoModel.insertBefore(e,this._dataSource)))}insertSourcesAfterThis(e){this._insertSources(e,(e=>this._undoModel.insertAfter(e,this._dataSource)))}childrenIds(){return new Set}hasChildren(){return!1}pane(){return(0,T.ensureNotNull)(this._undoModel.model().paneForSource(this._dataSource))}allowsMovingbetweenPanes(){return!(0,ao.isLineTool)(this._dataSource)}canBeAddedToGroup(){return(0,ao.isLineTool)(this._dataSource)&&this._dataSource.boundToSymbol()}canInsertBeforeThis(e){return this._canInsertBeforeOrAfter(e)}canInsertAfterThis(e){return this._canInsertBeforeOrAfter(e)}detachFromParent(){if((0,ao.isLineTool)(this._dataSource)){const e=this._undoModel.model(),t=this._undoModel.lineToolsGroupController(),n=e.lineToolsGroupModel().groupForLineTool(this._dataSource);null!==n&&t.excludeLineToolFromGroup(n,this._dataSource)}}onTitleChanged(){const e=this._dataSource.properties().title;return e?e.listeners():void 0}canBeSyncedInLayout(){return(0,ao.isLineTool)(this._dataSource)&&this._dataSource.isSynchronizable()}onSyncStateChanged(){return this._syncStateChanged}setDrawingSyncState(e){if(!this.canBeSyncedInLayout()||!this.fullyConstructed())return;const t=this._dataSource;switch(e){case 0:if(null===t.linkKey().value())return;this._undoModel.unlinkLines([t]);break;case 1:if(null!==t.linkKey().value())return;this._undoModel.copyToOtherCharts([t])}}getDrawingSyncState(){ return this.canBeSyncedInLayout()?this.fullyConstructed()&&null!==this._dataSource.linkKey().value()?1:0:null}doNotAffectChartInvalidation(){return(0,ao.isLineTool)(this._dataSource)&&this._lineToolsAffectChartInvalidation.value()}_canInsertBeforeOrAfter(e){const t=this._undoModel.model();if(!Mo(this.pane(),e))return!1;if((0,ao.isLineTool)(this._dataSource)){if(null!==t.lineToolsGroupModel().groupForLineTool(this._dataSource)&&e.some((e=>!e.canBeAddedToGroup())))return!1}return!0}_insertSources(e,t){const n=this._undoModel.model(),o=this._undoModel.lineToolsGroupController();this._undoModel.beginUndoMacro(To);const r=()=>{e.forEach((e=>e.detachFromParent()))},i=e.reduce(((e,t)=>t.addSourcesToArray(e)),[]);if((0,ao.isLineTool)(this._dataSource)){const t=n.lineToolsGroupModel().groupForLineTool(this._dataSource);null!==t?((0,T.assert)(!e.some((e=>e.hasChildren()))),i.forEach((e=>{(0,ao.isLineTool)(e)&&(t.containsLineTool(e)||o.addLineToolToGroup(t,e))}))):r()}else r();t(i),this._undoModel.endUndoMacro()}}class xo{constructor(e,t){this._onTitleChanged=new(eo()),this._onVisibilityChanged=new(eo()),this._onLockChanged=new(eo()),this._onIsActualIntervalChanged=new(eo()),this._syncStateChanged=new(eo()),this._linkKeyChangedBound=this._linkKeyChanged.bind(this),this._lineToolsAffectChartInvalidation=new bo.FeatureToggleWatchedValue(Do,!1),this._undoModel=e,this._group=t,this._lineTools=t.lineTools(),this._paneId=(0,T.ensureNotNull)(e.model().paneForSource(this._lineTools[0])).id();const n=()=>{this._lineTools.forEach((e=>{e.properties().visible.listeners().subscribe(this,(()=>this._onVisibilityChanged.fire())),e.properties().frozen.listeners().subscribe(this,(()=>this._onLockChanged.fire())),e.onIsActualIntervalChange().subscribe(this,(()=>this._onIsActualIntervalChanged.fire())),e.linkKey().subscribe(this._linkKeyChangedBound),e.sharingMode().subscribe(this._linkKeyChangedBound)}))};this._group.onChanged().subscribe(this,(e=>{this._unsubscribeFromAllLineTools(),this._lineTools=this._group.lineTools(),n(),e.lockedChanged&&this._onLockChanged.fire(),e.visibilityChanged&&this._onVisibilityChanged.fire(),e.titleChanged&&this._onTitleChanged.fire(),e.isActualIntervalChanged&&this._onIsActualIntervalChanged.fire();const t=this.getDrawingSyncState();null!==t&&this._syncStateChanged.fire(t)})),n(),this._lastActualZOrder=this.zOrder(),this._lastIsVisible=this.isVisible(),this._lastIsActualInterval=this.isActualInterval(),this._lastIsLocked=this.isLocked()}destroy(){this._unsubscribeFromAllLineTools(),this._group.onChanged().unsubscribeAll(this)}id(){return no(this._group.id,this._group.instanceId())}title(){return this._group.name()}gaLabel(){return"Group"}getIcon(){return{type:In.Svg,content:vo}}canBeRemoved(){return!0}canBeHidden(){return!0}canBeLocked(){return!0}canBeRenamed(){return!0}fullyConstructed(){return!0}isVisible(){return this._group.lineTools().length>0&&(this._lastIsVisible="Invisible"!==this._group.visibility()),this._lastIsVisible}isActualInterval(){ return this._group.lineTools().length>0&&(this._lastIsActualInterval=this._group.lineTools().some((e=>e.isActualInterval()))),this._lastIsActualInterval}onIsActualIntervalChange(){return this._onIsActualIntervalChanged}isLocked(){return this._group.lineTools().length>0&&(this._lastIsLocked="Locked"===this._group.locked()),this._lastIsLocked}onTitleChanged(){return this._onTitleChanged}onVisibilityChanged(){return this._onVisibilityChanged}onLockChanged(){return this._onLockChanged}setVisible(e){this._undoModel.lineToolsGroupController().setGroupVisibility(this._group,e)}setLocked(e){this._undoModel.lineToolsGroupController().setGroupLock(this._group,e)}setName(e){this._undoModel.lineToolsGroupController().setGroupName(this._group,e)}isCopiable(){return!1}isClonable(){return!1}zOrder(){return this._group.lineTools().length>0&&(this._lastActualZOrder=this._group.lineTools()[0].zorder()),this._lastActualZOrder}remove(){this._undoModel.lineToolsGroupController().removeGroup(this._group)}canBeAddedToSelection(){const e=this._undoModel.model();return this._lineTools.every((t=>e.selection().canBeAddedToSelection(t)))}setAsSelection(){this._undoModel.model().selectionMacro((e=>{e.clearSelection(),this._lineTools.forEach((t=>e.addSourceToSelection(t)))}))}addToSelection(){this._undoModel.model().selectionMacro((e=>{this._lineTools.forEach((t=>e.addSourceToSelection(t)))}))}addSourcesToArray(e){return e.push(...this._lineTools),e}detachFromParent(){}insertSourcesBeforeThis(e){const t=this._insertBeforeTarget();this._insertSources(e,(e=>this._undoModel.insertBefore(e,t)))}insertSourcesAfterThis(e){const t=this._insertAfterTarget();this._insertSources(e,(e=>this._undoModel.insertAfter(e,t)))}childrenIds(){const e=[...this._lineTools];return e.sort(((e,t)=>t.zorder()-e.zorder())),new Set(e.map((e=>no(e.id(),e.instanceId()))))}hasChildren(){return!0}pane(){return(0,T.ensureDefined)(this._undoModel.model().panes().find((e=>e.id()===this._paneId)))}allowsMovingbetweenPanes(){return!1}canBeAddedToGroup(){return!1}canInsertBeforeThis(e){return this._canInsertBeforeOrAfter(e)}canInsertAfterThis(e){return this._canInsertBeforeOrAfter(e)}canBeSyncedInLayout(){return this._lineTools.length>0&&this._lineTools[0].isSynchronizable()}onSyncStateChanged(){return this._syncStateChanged}setDrawingSyncState(e){if(this.canBeSyncedInLayout())switch(e){case 0:const e=this._lineTools.filter((e=>null!==e.linkKey().value()));e.length>0&&this._undoModel.unlinkLines(e);break;case 1:const t=this._lineTools.filter((e=>null===e.linkKey().value()));t.length>0&&this._undoModel.copyToOtherCharts(t)}}getDrawingSyncState(){return this.canBeSyncedInLayout()?this._lineTools.every((e=>null!==e.linkKey().value()))?1:0:null}doNotAffectChartInvalidation(){return this._lineToolsAffectChartInvalidation.value()}_linkKeyChanged(){this._syncStateChanged.fire((0,T.ensureNotNull)(this.getDrawingSyncState()))}_canInsertBeforeOrAfter(e){return Mo(this.pane(),e)}_insertSources(e,t){this._undoModel.beginUndoMacro(To);const n=e.reduce(((e,t)=>t.addSourcesToArray(e)),[]) ;e.forEach((e=>e.detachFromParent())),t(n),this._undoModel.endUndoMacro()}_insertBeforeTarget(){return(0,T.ensureNotNull)(this._lineTools.reduce(((e,t)=>null===e?t:e.zorder()null===e?t:e.zorder()>t.zorder()?e:t),null))}_unsubscribeFromAllLineTools(){this._lineTools.forEach((e=>{e.properties().visible.listeners().unsubscribeAll(this),e.properties().frozen.listeners().unsubscribeAll(this),e.onIsActualIntervalChange().unsubscribeAll(this),e.linkKey().unsubscribe(this._linkKeyChangedBound),e.sharingMode().unsubscribe(this._linkKeyChangedBound)}))}}class jo{constructor(e){this._hoveredObjectChanged=new(eo()),this._entitiesCache=new Map,this._undoModel=e,this._undoModel.model().hoveredSourceChanged().subscribe(this,this._onModelHoveredSourceChanged)}destroy(){for(const e of this._entitiesCache.values())null==e||e.destroy()}getObjectById(e){if(this._entitiesCache.has(e))return(0,T.ensureDefined)(this._entitiesCache.get(e));const t=this._createObjectById(e);return this._entitiesCache.set(e,t),t}invalidateCache(e){Array.from(this._entitiesCache.keys()).forEach((t=>{var n;e.has(t)||(null===(n=this._entitiesCache.get(t))||void 0===n||n.destroy(),this._entitiesCache.delete(t))}))}canBeGroupped(e){if(0===e.length||1===e.length&&e[0].hasChildren())return!1;const t=[];if(e.forEach((e=>e.addSourcesToArray(t))),t.some((e=>!(0,ao.isLineTool)(e)||!e.boundToSymbol())))return!1;const n=this._undoModel.model(),o=t.map((e=>n.paneForSource(e)));return!(new Set(o).size>1)}contextMenuActions(e,t,n){const o=new go.ActionsProvider(e,n),r=[];return t.forEach((e=>e.addSourcesToArray(r))),o.contextMenuActionsForSources(r)}insertBefore(e,t){t.insertSourcesAfterThis(e)}insertAfter(e,t){t.insertSourcesBeforeThis(e)}setHoveredObject(e){const t=this._undoModel.model();if(null===e)return void t.setHoveredSource(null,null);const n=t.dataSourceForId(e);null!==n&&t.setHoveredSource(n,null)}hoveredObjectId(){return Io(this._undoModel.model().hoveredSource())}hoveredObjectChanged(){return this._hoveredObjectChanged}_onModelHoveredSourceChanged(e){this._hoveredObjectChanged.fire(Io(e))}_createObjectById(e){const t=oo(e).persistentId,n=this._undoModel.model(),o=n.dataSourceForId(t);if(null!==o)return new Lo(this._undoModel,o);const r=n.lineToolsGroupModel().groupForId(t);return null!==r?new xo(this._undoModel,r):null}}var No=n(88029),zo=n(60223),Ao=n(43986),Oo=n(40549),Ro=n.n(Oo),Bo=n(97874),Po=n(2872),Ho=n(84959),Go=n(91730),Fo=n(33055),Vo=n(35149);const Yo=(0,l.getLogger)("Platform.GUI.ObjectTree");const Uo=new lo.TranslatedString("move objects",v.t(null,void 0,n(40566))),Wo=new lo.TranslatedString("lock objects",v.t(null,void 0,n(68163))),Ko=new lo.TranslatedString("unlock objects",v.t(null,void 0,n(66824))),Zo=new lo.TranslatedString("show objects",v.t(null,void 0,n(63549))),qo=new lo.TranslatedString("hide objects",v.t(null,void 0,n(28506))),$o=new lo.TranslatedString("remove objects",v.t(null,void 0,n(57428)));class Xo{constructor(e){this._nodes={}, this._onChange=new(eo()),this._onGroupCreated=new(eo()),this._subscriptions=[],this._removeSourcesPromise=null,this._timeout=null,this._objects=[],this._options={general:!0,mainSeries:!0,mainSeriesTrade:!0,esdStudies:!0,fundamentals:!0,studies:!0,lineTools:!0,publishedCharts:!0,ordersAndPositions:!0,alerts:!1,chartEvents:!0,objectTree:!1,gotoLineTool:!0},this._isContextMenuOpened=new(Ro())(!1),this._getObjectsToModify=e=>{const t=this.selection().selected();return t.find((t=>t===e))?t.map(this._ensuredEntity):[this._ensuredEntity(e)]},this._onActiveChartChanged=()=>{this._cleanup(),this._init()},this._cleanup=()=>{null!==this._timeout&&(clearTimeout(this._timeout),this._timeout=null),this._subscriptions.forEach((e=>{e.unsubscribeAll(this)})),this._selection.destroy(),this._chart.unsubscribe(this._onActiveChartChanged),null!==this._removeSourcesPromise&&this._removeSourcesPromise.cancel(),this._facade.destroy()},this._init=()=>{const e=this._chart.value();e.hasModel()&&(this._controller=e.model(),this._groupController=this._controller.lineToolsGroupController(),this._model=this._controller.model(),this._groupModel=this._model.lineToolsGroupModel(),this._facade=new jo(this._controller),this._subscriptions=[this._model.mainSeries().onStyleChanged(),this._model.mainSeries().dataEvents().symbolResolved(),this._model.mainSeries().onIntervalChanged(),this._model.panesCollectionChanged(),this._model.dataSourceCollectionChanged(),this._groupModel.onChanged()],this._subscriptions.forEach((e=>{e.subscribe(this,this._update)})),this._chart.subscribe(this._onActiveChartChanged),this._selection=new ro(this._model),this._update())},this._update=()=>{null===this._timeout&&(this._timeout=setTimeout((()=>{this._recalculateTree(),this._onChange.fire(),this._timeout=null})))},this._ensuredEntity=e=>(0,T.ensureNotNull)(this._getEntityById(e)),this._chart=e,this._init()}destroy(){this._cleanup()}getState(){return{nodes:Object.values(this._nodes),selection:this._selection.selected()}}getChartId(){return this._chart.value().id()}insertSelection(e,t){const n=this._facade,o=this.selection().selected().map(this._ensuredEntity),[r,i]=this._normalizeTargetAndDropType(e,t);this._controller.withMacro(Uo,(()=>{switch(i){case"before":n.insertBefore(o,r);break;case"after":n.insertAfter(o,r)}})),this._update()}entity(e){return this._facade.getObjectById(e)}isMain(e){return oo(e.id()).persistentId===this._controller.mainSeries().id()}selection(){return this._selection}setIsLocked(e,t){const n=this._getObjectsToModify(e),o=n.every((e=>e.doNotAffectChartInvalidation())),r=t?Wo:Ko;this._controller.withMacro(r,(()=>{for(const e of n)e.setLocked(t)}),o),dn("Lock",hn(n))}setIsVisible(e,t){const n=this._getObjectsToModify(e),o=n.every((e=>e.doNotAffectChartInvalidation())),r=t?Zo:qo;this._controller.withMacro(r,(()=>{for(const e of n)e.setVisible(t)}),o),dn("Hide",hn(n))}remove(e){const t=()=>{const e=n.every((e=>e.doNotAffectChartInvalidation()));this._controller.withMacro($o,(()=>{for(const e of n)e.remove()}),e),dn("Delete",hn(n)),this._update() },n=this._getObjectsToModify(e);t()}canSelectionBeGrouped(){const e=this._getSelectedEntities();return this._facade.canBeGroupped(e)}createGroupFromSelection(){const e=this._groupController.createGroupFromSelection();dn("Create Group");const t=no(e.id,e.instanceId());this.selection().set([this._ensuredEntity(t)]),this._onGroupCreated.fire(t),this._update()}isSelectionDropable(e,t){const n=this.selection().selected().map(this._ensuredEntity),[o,r]=this._normalizeTargetAndDropType(e,t);switch(r){case"after":return o.canInsertAfterThis(n);case"before":return o.canInsertBeforeThis(n)}}onChange(){return this._onChange}onGroupCreated(){return this._onGroupCreated}isSelectionCloneable(){const e=this._getSelectedEntities();return e.length>0&&e.every((e=>e.isClonable()))}isSelectionCopiable(){const e=this._getSelectedEntities();return e.length>0&&e.every((e=>e.isCopiable()))}openProperties(e,t){const n=this._model.dataSourceForId(oo(e.id()).persistentId);this.selection().selected().length>1&&this.selection().selected().includes(e.id())?this._chart.value().showSelectedSourcesProperties(t):(this.selection().set([e]),null!==n?this._controller.mainSeries()===n?this._chart.value().showGeneralChartProperties():((0,ao.isLineTool)(n)||(0,co.isStudy)(n))&&this._chart.value().showChartPropertiesForSource(n,t):this._chart.value().showChartPropertiesForSources({sources:this._chart.value().model().selection().lineDataSources(),title:e.title(),tabName:t,renamable:!0}))}canSelectionBeUnmerged(){const e=this._getSelectedEntities();return 1===e.length&&this.canNodeWithIdBeUnmerged(oo(e[0].id()).persistentId)}canNodeWithIdBeUnmerged(e){const t=this._model.dataSourceForId(e);return null!==t&&(0,No.isPriceDataSource)(t)&&this._model.isUnmergeAvailableForSource(t)}unmergeSelectionUp(){this._unmergeSelection(0)}unmergeSelectionDown(){this._unmergeSelection(1)}copySelection(){const e=this._getSelectedEntities(),t=e.map((e=>(0,T.ensureNotNull)(this._model.dataSourceForId(oo(e.id()).persistentId))));this._chart.value().chartWidgetCollection().clipboard.uiRequestCopy(t),dn("Copy",hn(e))}cloneSelection(){const e=this._getSelectedEntities(),t=e.map((e=>(0,T.ensureNotNull)(this._model.dataSourceForId(oo(e.id()).persistentId))));t.every(ao.isLineTool)&&(this._controller.cloneLineTools([...t],!1),dn("Clone",hn(e)))}rename(e,t){const n=this._getObjectsToModify(e.id());1===n.length&&n.some((e=>e.canBeRenamed()))&&(t(),dn("Rename",hn(n)))}async openContextMenu(e,t,n){var o;this._objects=this._getObjectsToModify(e.id());const r=this._facade.canBeGroupped(this._objects);let i;if(this._objects.some((e=>e.hasChildren())))i=this._getActionsForGroupItem(e,t,r);else{const e=await this._facade.contextMenuActions(this._chart.value(),this._objects,this._options);if(i=Array.from(e).filter(((e,t,n)=>"separator"!==e.type||!n[t+1]||"separator"!==n[t+1].type)),1===this._objects.length&&this._objects[0].canBeRenamed()){const e=i.findIndex((e=>"Copy"===e.id));i.splice(-1===e?i.length:e+1,0,this._getRenameAction(t))}if(r){const e=i.findIndex((e=>"Clone"===e.id)) ;i.splice(-1===e?0:e,0,this._getGroupAction())}}if(i.length>0){this._chart.value().updateActions();const t=oo(e.id()).persistentId,r=this._model.dataSourceForId(t),s=r instanceof ho.Series,l=0!==e.childrenIds().size;let a;a=s?{menuName:"ObjectTreeContextMenu",detail:{type:"series",id:r.instanceId()}}:(0,ao.isLineTool)(r)?{menuName:"ObjectTreeContextMenu",detail:{type:"shape",id:null!==(o=null==r?void 0:r.id())&&void 0!==o?o:null}}:l?{menuName:"ObjectTreeContextMenu",detail:{type:"groupOfShapes",id:t||null}}:{menuName:"ObjectTreeContextMenu",detail:{type:"study",id:(null==r?void 0:r.id())||null}},zo.ContextMenuManager.showMenu(i,n,{takeFocus:!0,returnFocus:!0},a,(()=>{this._isContextMenuOpened.setValue(!1)})).then((()=>{this._isContextMenuOpened.setValue(!0)}))}}setHoveredObject(e){this._facade.setHoveredObject(e)}hoveredObjectChanged(){return this._facade.hoveredObjectChanged()}getNextNodeIdAfterRemove(e){var t;const{nodes:n}=this.getState(),o=oo(e).persistentId,r=n.find((t=>t.id===e)),i=this.entity(e);if(!(r&&r.parentId&&i&&i.canBeRemoved()))return null;if((null===(t=i.pane().mainDataSource())||void 0===t?void 0:t.id())===o&&!this.canNodeWithIdBeUnmerged(o)){const e=n.filter((e=>0===e.level)).map((e=>e.id)),t=this._takeNextOrPrevElement(e,r.parentId);return(0,T.ensureDefined)(n.find((e=>e.id===t))).children[0]}const s=(0,T.ensureDefined)(n.find((e=>e.id===r.parentId))).children;return 1===s.length?this.getNextNodeIdAfterRemove(r.parentId):this._takeNextOrPrevElement(s,e)}isContextMenuOpened(){return this._isContextMenuOpened.readonly()}getChartLayout(){return this._chart.value().chartWidgetCollection().layout}_takeNextOrPrevElement(e,t){const n=e.indexOf(t);return e[n===e.length-1?n-1:n+1]}_getGroupAction(){return new Ao.Action({actionId:"ObjectsTree.CreateGroup",label:jn,icon:A,onExecute:()=>{this.createGroupFromSelection()}})}_getRenameAction(e){return new Ao.Action({actionId:"ObjectsTree.RenameItem",label:Nn,icon:Fo,onExecute:()=>{e(),dn("Context menu rename",hn(this._objects))}})}_getActionsForGroupItem(e,t,n){const o=[];this._objects.forEach((e=>e.addSourcesToArray(o)));const r=[];1===this._objects.length&&r.unshift(this._getRenameAction(t),new Ao.Separator),n&&r.unshift(this._getGroupAction(),new Ao.Separator);const i=(0,go.createSyncDrawingActions)(this._chart.value(),o.filter(ao.isLineTool));i.length&&(i.shift(),i.push(new Ao.Separator),r.push(...i));const s=this._chart.value().actions().format.getState();return r.push(new Ao.Action({actionId:"ObjectsTree.ToggleItemLocked",label:e.isLocked()?zn:An,icon:e.isLocked()?Bo:Po,onExecute:()=>this.setIsLocked(e.id(),!e.isLocked())}),new Ao.Action({actionId:"ObjectsTree.ToggleItemVisibility",label:e.isVisible()?On:Rn,icon:e.isVisible()?Ho:Go,onExecute:()=>this.setIsVisible(e.id(),!e.isVisible())}),new Ao.Action({actionId:"ObjectsTree.RemoveItem",label:Bn,icon:Vo,onExecute:()=>this.remove(e.id()),hotkeyHash:w.isMacKeyboard?8:46}),new Ao.Separator,new Ao.Action({actionId:s.actionId,label:s.label,icon:s.icon,onExecute:()=>this.openProperties(e)})),r} _unmergeSelection(e){const t=this._getSelectedEntities();if(1!==t.length)throw new Error("Only one object can be unmerged");const n=t[0],o=(0,T.ensureNotNull)(this._model.dataSourceForId(oo(n.id()).persistentId));if(!(0,No.isPriceDataSource)(o))throw new Error("Entity is not IPriceDataSource");(0===e?this._controller.unmergeSourceUp:this._controller.unmergeSourceDown).call(this._controller,o);dn(0===e?"New pane above":"New pane below",hn([n]))}_recalculateTree(){const e=new io(this._controller,this._facade);this._nodes=e.buildTree()}_normalizeTargetAndDropType(e,t){let n=this._ensuredEntity(e);return"inside"===t&&(t="before",n=(0,T.ensureNotNull)(this.entity([...n.childrenIds()].shift()||""))),[n,t]}_getSelectedEntities(){const{selected:e,removed:t}=this._selection.selected().reduce(((e,t)=>{const n=this._getEntityById(t);return n?(e.selected.push(n),e):(e.removed.push(t),e)}),{selected:[],removed:[]});return t.length&&Yo.logWarn(`Detected dangling sources in selection. They will be ignored: ${JSON.stringify(t)}`),e}_getEntityById(e){return this._facade.getObjectById(e)}}var Jo=n(88279);class Qo extends Jo.DialogRenderer{constructor(){super(),this._handleClose=()=>{r.unmountComponentAtNode(this._container),this._setVisibility(!1),null!==this._viewModel&&(this._viewModel.destroy(),this._viewModel=null)};const e=(0,Xn.service)(Jn.CHART_WIDGET_COLLECTION_SERVICE);this._activeChartWidget=e.activeChartWidget.value(),this._viewModel=new Xo(e.activeChartWidget)}hide(){this._handleClose()}isVisible(){return this.visible().value()}show(){g().then((()=>{null!==this._viewModel&&(r.render(o.createElement(qn,{onClose:this._handleClose,viewModel:this._viewModel,activeChartWidget:this._activeChartWidget}),this._container),this._setVisibility(!0))}))}}},36947:(e,t,n)=>{"use strict";n.d(t,{useForceUpdate:()=>r});var o=n(50959);const r=()=>{const[,e]=(0,o.useReducer)((e=>e+1),0);return e}},77975:(e,t,n)=>{"use strict";n.d(t,{useWatchedValueReadonly:()=>r});var o=n(50959);const r=(e,t=!1)=>{const n="watchedValue"in e?e.watchedValue:void 0,r="defaultValue"in e?e.defaultValue:e.watchedValue.value(),[i,s]=(0,o.useState)(n?n.value():r);return(t?o.useLayoutEffect:o.useEffect)((()=>{if(n){s(n.value());const e=e=>s(e);return n.subscribe(e),()=>n.unsubscribe(e)}return()=>{}}),[n]),i}},61074:(e,t,n)=>{"use strict";n.d(t,{Spinner:()=>s});var o=n(50959),r=n(97754),i=n(33134);n(86625);function s(e){const t=r(e.className,"tv-spinner","tv-spinner--shown",`tv-spinner--size_${i.spinnerSizeMap[e.size||i.DEFAULT_SIZE]}`);return o.createElement("div",{className:t,style:e.style,role:"progressbar"})}},74749:e=>{e.exports={button:"button-rqVQ8gUB"}},97482:(e,t,n)=>{"use strict";n.d(t,{ToolWidgetIconButton:()=>l});var o=n(50959),r=n(97754),i=n(94206),s=n(74749);const l=o.forwardRef(((e,t)=>{const{className:n,id:l,...a}=e;return o.createElement(i.ToolWidgetButton,{"data-name":l,...a,ref:t,className:r(n,s.button)})}))},29540:e=>{ e.exports=''},36296:e=>{e.exports=''},33055:e=>{e.exports=''},69533:e=>{e.exports=''},57674:e=>{e.exports=''},80465:e=>{e.exports=''},94007:e=>{ e.exports=''},52870:e=>{e.exports=''},74059:e=>{e.exports=''},91730:e=>{ e.exports=''},7295:e=>{e.exports=''},28824:e=>{e.exports=''},49756:e=>{e.exports=''},62766:e=>{ e.exports=''},98129:e=>{e.exports={ar:["استنساخ ، نسخ"],ca_ES:["Clona, Copia"],cs:"Clone, Copy",de:["Klonen, Kopieren"],el:"Clone, Copy",en:"Clone, Copy",es:["Clonar, Copiar"],fa:"Clone, Copy",fr:["Cloner, Copier"],he_IL:["שכפל, העתק"],hu_HU:"Clone, Copy",id_ID:["Duplikat, Salin"],it:["Clona, copia"],ja:["複製、コピー"],ko:["클론, 카피"],ms_MY:["Klon, Salin"],nl_NL:"Clone, Copy",pl:["Klonuj, Kopiuj"],pt:["Clocar, Copiar"],ro:"Clone, Copy",ru:["Клонировать, копировать"],sv:["Klon, kopiera"],th:["โคลน, ก๊อปปี้"],tr:["Klonla, Kopyala"],vi:["Nhân bản, Sao chép"],zh:["克隆,复制"],zh_TW:["克隆,複製"]}},91073:e=>{e.exports={ar:["أنشئ مجموعة من الرسومات"],ca_ES:["Creeu un grup de gràfics"],cs:"Create a group of drawings",de:["Erstellen Sie eine Gruppe von Zeichnungen"],el:"Create a group of drawings",en:"Create a group of drawings",es:["Cree un grupo de graficos"],fa:"Create a group of drawings",fr:["Créer un groupe de dessins"],he_IL:["צור קבוצת שרטוטים"],hu_HU:"Create a group of drawings",id_ID:["Buat kelompok untuk gambar"],it:["Crea un gruppo di disegni"],ja:["描画のグループを作成"],ko:["드로잉 그룹 만들기"],ms_MY:["Cipta kumpulan untuk lukisan"],nl_NL:"Create a group of drawings",pl:["Utwórz grupę obiektów rysowania"],pt:["Criar um grupo de desenhos"],ro:"Create a group of drawings",ru:["Создать группу объектов рисования"],sv:["Skapa en grup ritningar"],th:["สร้างกรุ๊ปของการวาด"],tr:["Bir grup çizim oluşturun"],vi:["Tạo nhóm các hình vẽ"],zh:["建立一组绘图"],zh_TW:["建立一組繪圖"]}},38207:e=>{e.exports={ar:["المجموعة مخفية في الفاصل الزمني الحالي"],ca_ES:["El grup està ocult a l'interval actual"], cs:"Group is hidden on current interval",de:["Gruppe ist im aktuellen Intervall verborgen"],el:"Group is hidden on current interval",en:"Group is hidden on current interval",es:["El grupo está oculto en el intervalo actual"],fa:"Group is hidden on current interval",fr:["Le groupe est caché sur l'intervalle actuel"],he_IL:["הקבוצה מוסתרת באינטרוול הנוכחי"],hu_HU:"Group is hidden on current interval",id_ID:["Grup disembunyikan pada interval saat ini"],it:["Il gruppo è nascosto nel timeframe corrente"],ja:["グループは現在の時間足で非表示です"],ko:["현재 인터벌에 대해 그룹이 감춰져 있습니다"],ms_MY:["Kumpulan disembunyikan pada selang masa sekarang"],nl_NL:"Group is hidden on current interval",pl:["Grupa jest ukryta na bieżącym interwale"],pt:["O grupo está oculto no intervalo atual"],ro:"Group is hidden on current interval",ru:["Группа скрыта на текущем интервале"],sv:["Gruppen är dold i det aktuella intervallet"],th:["กรุ๊ปถูกซ่อนบนช่วงเวลาปัจจุบัน"],tr:["Grup şu anki aralıkta gizli"],vi:["Nhóm được ẩn trong chế độ hiện tại"],zh:["该组在当前时间间隔内隐藏"],zh_TW:["該組隱藏在當前的時間間隔內"]}},39781:e=>{e.exports={ar:["الرسم مخفي على الفاصل الزمني الحالي"],ca_ES:["El dibuix està ocult a l'interval actual"],cs:"Drawing is hidden on current interval",de:["Zeichnung ist für das aktuelle Intervall ausgeblendet"],el:"Drawing is hidden on current interval",en:"Drawing is hidden on current interval",es:["El dibujo está oculto en el intervalo actual"],fa:"Drawing is hidden on current interval",fr:["Le dessin est caché sur l'intervalle actuel"],he_IL:["הציור מוסתר באינטרוול הנוכחי"],hu_HU:"Drawing is hidden on current interval",id_ID:["Gambar disembunyikan pada interval saat ini"],it:["Il disegno è nascosto sul timeframe corrente"],ja:["描画は現在の時間足で非表示です"],ko:["커런트 인터벌에서는 드로잉이 숨겨져 있습니다"],ms_MY:["Lukisan disembunyikan pada selang masa terkini"],nl_NL:"Drawing is hidden on current interval",pl:["Rysunek jest ukryty na bieżącym interwale"],pt:["O desenho está oculto no intervalo atual"],ro:"Drawing is hidden on current interval",ru:["Объект рисования скрыт на этом интервале"],sv:["Ritning är dold på aktuellt intervall"],th:["การวาดถูกซ่อนไว้สำหรับช่วงเวลาปัจจุบัน"],tr:["Çizim, geçerli aralıkta gizlendi"],vi:["Bản vẽ bị ẩn trong khoảng thời gian hiện tại"],zh:["在当前时间周期内隐藏绘图"],zh_TW:["在當前時間周期內隱藏繪圖"]}},31095:e=>{e.exports={ar:["شجرة الكائنات"],ca_ES:["Arbre d'objectes"],cs:"Object tree",de:["Objektbaum"],el:"Object tree",en:"Object tree",es:["Árbol de objetos"],fa:"Object tree",fr:["Arborescence des objets"],he_IL:["אובייקט עץ"],hu_HU:"Object tree",id_ID:["Pohon objek"],it:["Albero oggetti"],ja:["オブジェクトツリー"],ko:["오브젝트 트리"],ms_MY:["Salasilah Objek"],nl_NL:"Object tree",pl:["Drzewo obiektów"],pt:["Lista de objetos"],ro:"Object tree",ru:["Дерево объектов"],sv:["Objektträd"],th:["แผนผังวัตถุ"],tr:["Nesne ağacı"],vi:["Danh sách đối tượng"],zh:["对象树"],zh_TW:["物件樹"]}},74860:e=>{e.exports={ar:["رسومات محلية"],ca_ES:["Dibuixos locals"],cs:"Local drawings",de:["Lokale Zeichnungen"],el:"Local drawings",en:"Local drawings",es:["Dibujos locales"],fa:"Local drawings",fr:["Dessins locaux"], he_IL:["שרטוטים מקומיים"],hu_HU:"Local drawings",id_ID:["Gambar lokal"],it:["Disegni in loco"],ja:["ローカルの描画"],ko:["로컬 드로잉"],ms_MY:["Lukisan tempatan"],nl_NL:"Local drawings",pl:["Rysunki lokalne"],pt:["Desenhos locais"],ro:"Local drawings",ru:["На выбранном графике"],sv:["Lokala ritningar"],th:["ภาพวาดท้องถิ่น"],tr:["Lokal çizimler"],vi:["Bản vẽ cục bộ"],zh:["本地绘图"],zh_TW:["當地繪圖"]}},72357:e=>{e.exports={ar:["إدارة رسومات التنسيق"],ca_ES:["Gestiona els dibuixos dels dissenys"],cs:"Manage layout drawings",de:["Zeichnungen des Layouts verwalten"],el:"Manage layout drawings",en:"Manage layout drawings",es:["Gestionar los dibujos de los diseños"],fa:"Manage layout drawings",fr:["Gérer les dessins de mise en page"],he_IL:["נהל שרטוטי פריסה"],hu_HU:"Manage layout drawings",id_ID:["Kelola layout gambar"],it:["Gestisci disegni del layout"],ja:["レイアウトの描画を管理"],ko:["레이아웃 드로잉 관리"],ms_MY:["Urus susun atur lukisan"],nl_NL:"Manage layout drawings",pl:["Zarządzaj rysunkami układu"],pt:["Administre seu layout de desenhos"],ro:"Manage layout drawings",ru:["Настройки объектов рисования графика"],sv:["Hantera layoutritningar"],th:["จัดการการวาดเลย์เอาท์"],tr:["Yerleşim çizimlerini yönet"],vi:["Quản lý bố cục hình vẽ"],zh:["管理布局绘图"],zh_TW:["管理版面繪圖"]}},18570:e=>{e.exports={ar:["لا يوجد رسوم حتى الآن"],ca_ES:["Encara no hi ha dibuixos"],cs:["Zatím Žádné Nákresy"],de:["Noch keine Zeichnungen"],el:["Δεν υπάρχουν ακομα σχέδια"],en:"No drawings yet",es:["No hay dibujos todavía"],fa:["شکلی رسم نشده است"],fr:["Pas de Dessins pour le moment"],he_IL:["אין שרטוט עדיין"],hu_HU:["Nincs még rajz"],id_ID:["Belum ada gambar saat ini"],it:["Nessun disegno disponibile"],ja:["未描画"],ko:["그림없음"],ms_MY:["Masih belum ada lukisan"],nl_NL:["Nog geen tekeningen"],pl:["Brak rysunków"],pt:["Ainda sem desenhos"],ro:"No drawings yet",ru:["Нет инструментов рисования"],sv:["Inga ritningar än"],th:["ยังไม่มีรูปวาด"],tr:["Henüz çizim yok"],vi:["Chưa có bản vẽ nào"],zh:["尚未绘图"],zh_TW:["尚無任何繪圖"]}},87871:e=>{e.exports={ar:["متزامن كليًا"],ca_ES:["Sincronitzat globalment"],cs:"Synced globally",de:["Global synchronisiert"],el:"Synced globally",en:"Synced globally",es:["Sincronizado globalmente"],fa:"Synced globally",fr:["Synchronisé globalement"],he_IL:["מסונכרן ברחבי העולם"],hu_HU:"Synced globally",id_ID:["Disinkronisasi secara global"],it:["Sincronizzazione globale"],ja:["グローバルに同期"],ko:["전체 싱크"],ms_MY:["Disegerakkan secara sejagat"],nl_NL:"Synced globally",pl:["Zsynchronizowane globalnie"],pt:["Sincronizado globalmente"],ro:"Synced globally",ru:["Синхр. везде"],sv:["Synkad globalt"],th:["ซิงค์ทั่วโลก"],tr:["Küresel senkronize"],vi:["Đã đồng bộ hóa trên toàn cầu"],zh:["全局同步"],zh_TW:["全球同步"]}},10538:e=>{e.exports={ar:["تمت المزامنة في التنسيق"],ca_ES:["Sincronitzat a la plantilla"],cs:"Synced in layout",de:["Im Layout synchronisiert"],el:"Synced in layout",en:"Synced in layout",es:["Sincronizado en la plantilla"],fa:"Synced in layout",fr:["Synchronisé dans la mise en page"],he_IL:["מסונכרן בפריסה"],hu_HU:"Synced in layout",id_ID:["Disinkronisasi dalam layout"], it:["Sincronizzazione su layout"],ja:["レイアウト内で同期"],ko:["레이아웃 싱크"],ms_MY:["Disegerakkan di dalam susun atur"],nl_NL:"Synced in layout",pl:["Zsynchronizowane w układzie"],pt:["Sincronizado no layout"],ro:"Synced in layout",ru:["Синхр. на всех графиках"],sv:["Synkad i layout"],th:["ซิงค์ในเลย์เอาต์"],tr:["Düzende senkronize"],vi:["Đã đồng bộ hóa trong bố cục"],zh:["在布局内同步"],zh_TW:["版面同步"]}},85128:e=>{e.exports={ar:["إزالة كافة الرسومات لهذا الرمز"],ca_ES:["Elimina tots els dibuixos per a aquest símbol"],cs:"Remove all drawings for this symbol",de:["Alle Zeichnungen für dieses Symbol entfernen"],el:"Remove all drawings for this symbol",en:"Remove all drawings for this symbol",es:["Eliminar todos los dibujos para este símbolo"],fa:"Remove all drawings for this symbol",fr:["Supprimer tous les dessins pour ce symbole"],he_IL:["הסר את כל השרטוטים לסימול זה"],hu_HU:"Remove all drawings for this symbol",id_ID:["Hilangkan seluruh gambar pada simbol ini"],it:["Rimuove tutti i disegni su questo simbolo"],ja:["このシンボルのすべての描画を削除"],ko:["이 심볼에 대한 모든 드로잉 없애기"],ms_MY:["Buang semua lukisan untuk simbol ini"],nl_NL:"Remove all drawings for this symbol",pl:["Usuń wszystkie obiekty rysowania dla tego symbolu"],pt:["Remover todos os desenhos deste símbolo"],ro:"Remove all drawings for this symbol",ru:["Удалить все объекты рисования для этого символа"],sv:["Ta bort alla ritningar för denna symbol"],th:["ลบการวาดทั้งหมดของตัวย่อนี้"],tr:["Bu sembol için tüm çizimleri kaldır"],vi:["Loại bỏ tất cả nét vẽ cho mã này"],zh:["移除该商品代码的所有绘图"],zh_TW:["刪除此商品代碼的所有繪圖"]}},35038:e=>{e.exports={ar:["تغيير الأسم"],ca_ES:["Reanomenar"],cs:"Rename",de:["Umbenennen"],el:"Rename",en:"Rename",es:["Renombrar."],fa:"Rename",fr:["Renommer"],he_IL:["שנה שם"],hu_HU:["Átnevezés"],id_ID:["Mengganti Nama"],it:["Rinomina"],ja:["名前の変更"],ko:["이름 바꾸기"],ms_MY:["Namakan semula"],nl_NL:"Rename",pl:["Zmień nazwę"],pt:["Renomear"],ro:"Rename",ru:["Переименовать"],sv:["Döp om"],th:["เปลี่ยนชื่อ"],tr:["Yeni Ad Ver"],vi:["Đổi tên"],zh:["重命名"],zh_TW:["重新命名"]}},40001:e=>{e.exports={ar:["غيّر عنوان {sourceTitle} إلى {newSourceTitle}"],ca_ES:["canvia el títol {sourceTitle} per {newSourceTitle}"],cs:"change {sourceTitle} title to {newSourceTitle}",de:["{sourceTitle} zu {newSourceTitle} ändern"],el:"change {sourceTitle} title to {newSourceTitle}",en:"change {sourceTitle} title to {newSourceTitle}",es:["cambiar el título {sourceTitle} por {newSourceTitle}"],fa:"change {sourceTitle} title to {newSourceTitle}",fr:["Remplacer le titre {sourceTitle} par {newSourceTitle}"],he_IL:["שנה את {sourceTitle} כותרת ל- {newSourceTitle}"],hu_HU:"change {sourceTitle} title to {newSourceTitle}",id_ID:["Ubah judul {sourceTitle} menjadi {newSourceTitle}"],it:["Cambia titolo da {sourceTitle} a {newSourceTitle}"],ja:["{sourceTitle}のタイトルを{newSourceTitle}に変更"],ko:["{sourceTitle} 타이틀을 {newSourceTitle} 으로 바꾸기"],ms_MY:["Tukar tajuk {sourceTitle} kepada {newSourceTitle}"],nl_NL:"change {sourceTitle} title to {newSourceTitle}",pl:["Zmień tytuł {sourceTitle} na {newSourceTitle}."], pt:["Mudar {sourceTitle} título para {newSourceTitle}"],ro:["Change {sourceTitle} title to {newSourceTitle}"],ru:["изменение названия {sourceTitle} на {newSourceTitle}"],sv:["Ändra {sourceTitle} titel till {newSourceTitle}"],th:["เปลี่ยนชื่อ {sourceTitle} ไปเป็น {newSourceTitle}"],tr:["{sourceTitle} başlığını {newSourceTitle} olarak değiştirin"],vi:["Thay đổi {sourceTitle} tiêu đề sang {newSourceTitle}"],zh:["将{sourceTitle}标题更改为{newSourceTitle}"],zh_TW:["將{sourceTitle}標題更改為{newSourceTitle}"]}},28506:e=>{e.exports={ar:["إخفاء العناصر"],ca_ES:["amaga objectes"],cs:"hide objects",de:["Objekte ausblenden"],el:"hide objects",en:"hide objects",es:["ocultar objetos"],fa:"hide objects",fr:["masquer les objets"],he_IL:["הסתר אובייקטים"],hu_HU:"hide objects",id_ID:["sembunyikan objek"],it:["nascondi oggetti"],ja:["オブジェクトの非表示"],ko:["오브젝트 숨기기"],ms_MY:["sembunyi objek"],nl_NL:"hide objects",pl:["ukryj obiekty"],pt:["ocultar objetos"],ro:"hide objects",ru:["скрытие объектов"],sv:["dölj objekt"],th:["ซ่อนออบเจ็กต์"],tr:["nesneleri gizle"],vi:["ẩn đối tượng"],zh:["隐藏对象"],zh_TW:["隱藏物件"]}},8343:e=>{e.exports={ar:["أدخل المصدر (المصادر) بعد ذلك"],ca_ES:["introdueix font(s) després"],cs:"insert source(s) after",de:["Quelle(n) einfügen nach"],el:"insert source(s) after",en:"insert source(s) after",es:["introducir fuente(s) después"],fa:"insert source(s) after",fr:["insérer la/les source(s) après"],he_IL:["הכנס מקור(ות) לאחר מכן"],hu_HU:"insert source(s) after",id_ID:["masukkan sumber setelah"],it:["inserimento fonti"],ja:["後にソースを挿入"],ko:["~뒤에 소스 넣기"],ms_MY:["masukkan sumber(s) selepas"],nl_NL:"insert source(s) after",pl:["wstaw źródła po"],pt:["inserir fonte(s) depois"],ro:"insert source(s) after",ru:["вставку объекта(ов) после"],sv:["infoga källa(källor) efter"],th:["แทรกแหล่งที่มาหลังจาก"],tr:["kaynağ(ı) ardına ekle"],vi:["chèn (các) nguồn sau đó"],zh:["插入源到后面"],zh_TW:["插入源到後面"]}},40566:e=>{e.exports={ar:["تحريك العناصر"],ca_ES:["mou objectes"],cs:"move objects",de:["Objekte Bewegen"],el:"move objects",en:"move objects",es:["mover objetos"],fa:"move objects",fr:["Déplacer les objets"],he_IL:["הזז אובייקטים"],hu_HU:"move objects",id_ID:["Pindahkan objek"],it:["Sposta oggetti"],ja:["オブジェクトを移動"],ko:["오브젝트 옮기기"],ms_MY:["Pindahkan objek"],nl_NL:"move objects",pl:["Przenieś obiekty"],pt:["Mover objetos"],ro:["Move objects"],ru:["перемещение объектов"],sv:["Flytta objekt"],th:["ย้ายวัตถุ"],tr:["nesneleri taşı"],vi:["Chuyển đối tượng"],zh:["移动对象"],zh_TW:["移動物件"]}},87358:e=>{e.exports={ar:["عرض ‎{title}‎"],ca_ES:["mostra {title}"],cs:"show {title}",de:["{title} anzeigen"],el:"show {title}",en:"show {title}",es:["mostrar {title}"],fa:"show {title}",fr:["afficher {title}"],he_IL:["הצג ‎{title}‎"],hu_HU:"show {title}",id_ID:["tampilkan {title}"],it:["mostra {title}"],ja:["{title}の表示"],ko:["{title} 보이기"],ms_MY:["tunjuk {title}"],nl_NL:"show {title}",pl:["pokaż {title}"],pt:["exibir {title}"],ro:"show {title}",ru:["отображение: {title}"],sv:["visa {title}"],th:["แสดง {title}"],tr:["{title} göster"],vi:["hiện {title}"],zh:["显示{title}"], zh_TW:["顯示{title}"]}},63549:e=>{e.exports={ar:["إظهار العناصر"],ca_ES:["mostra objectes"],cs:"show objects",de:["Objekte einblenden"],el:"show objects",en:"show objects",es:["mostrar objetos"],fa:"show objects",fr:["afficher les objets"],he_IL:["הצג אובייקטים"],hu_HU:"show objects",id_ID:["tampilkan objek"],it:["mostra oggetti"],ja:["オブジェクトの表示"],ko:["오브젝트 보이기"],ms_MY:["tunjuk objek"],nl_NL:"show objects",pl:["pokaż obiekty"],pt:["exibir objetos"],ro:"show objects",ru:["отображение объектов"],sv:["visa objekt"],th:["แสดงออบเจ็กต์"],tr:["nesneleri göster"],vi:["hiển thị đối tượng"],zh:["显示对象"],zh_TW:["顯示物件"]}},57428:e=>{e.exports={ar:["إزالة العناصر"],ca_ES:["elimina objectes"],cs:"remove objects",de:["Objekte entfernen"],el:"remove objects",en:"remove objects",es:["eliminar objetos"],fa:"remove objects",fr:["supprimer les objets"],he_IL:["הסר אובייקטים"],hu_HU:"remove objects",id_ID:["Hilangkan objek"],it:["rimuovi oggetti"],ja:["オブジェクトの削除"],ko:["오브젝트 없애기"],ms_MY:["keluarkan objek"],nl_NL:"remove objects",pl:["usuń obiekty"],pt:["remover objetos"],ro:"remove objects",ru:["удаление объектов"],sv:["Ta bort objekt"],th:["ลบออบเจ็กต์"],tr:["nesneleri kaldır"],vi:["di chuyển đối tượng"],zh:["移除对象"],zh_TW:["移除物件"]}},23481:e=>{e.exports={ar:["حذف كافة خطوط الأدوات لـ {symbol}"],ca_ES:["elimina totes les eines de línies per a {symbol}"],cs:"remove all line tools for {symbol}",de:["alle Linienwerkzeuge für {symbol} entfernen"],el:"remove all line tools for {symbol}",en:"remove all line tools for {symbol}",es:["eliminar todas las herramientas de líneas para {symbol}"],fa:"remove all line tools for {symbol}",fr:["supprimer tous les outils de ligne pour {symbol}."],he_IL:["הסרת כל קבוצת כלי קו ‎{symbol}‎"],hu_HU:"remove all line tools for {symbol}",id_ID:["Hilangkan semua peralatan garis untuk {symbol}"],it:["rimuovi tutte le linee da {symbol}"],ja:["{symbol}のすべてのラインツールの削除"],ko:["{symbol}의 모든 줄 도구 제거"],ms_MY:["keluarkan semua alat-alat garisan untuk {symbol}"],nl_NL:"remove all line tools for {symbol}",pl:["usuń wszystkie narzędzia linii dla {symbol}"],pt:["remover todas as ferramentas de linhas para {symbol}"],ro:"remove all line tools for {symbol}",ru:["удаление всех объектов рисования для {symbol}"],sv:["Ta bort alla linjeverktyg för {symbol}"],th:["ลบเครื่องมือเส้นทั้งหมดสำหรับ {symbol}"],tr:["{symbol} için tüm çizgi araçlarını kaldır"],vi:["loại bỏ tất cả đường công cụ cho {symbol}"],zh:["移除{symbol}的所有线条工具"],zh_TW:["移除{symbol}的所有線條工具"]}},42743:e=>{e.exports={ar:["مع ‎{drawingsCount}‎ رسم","مع ‎{drawingsCount}‎ رسم","مع ‎{drawingsCount}‎ رسم","مع ‎{drawingsCount}‎ رسوم","مع ‎{drawingsCount}‎ رسماً","مع ‎{drawingsCount}‎ رسماً"],ca_ES:["amb {drawingsCount} dibuix","amb {drawingsCount} dibuixos"],cs:"with {drawingsCount} drawing",de:["mit {drawingsCount} Zeichnung","mit {drawingsCount} Zeichnungen"],el:"with {drawingsCount} drawing",en:"with {drawingsCount} drawing",es:["con {drawingsCount} dibujo","con {drawingsCount} dibujos"],fa:["with {drawingsCount} drawings"], fr:["avec {drawingsCount} dessin","avec {drawingsCount} dessins"],he_IL:["עם שרטוט ‎{drawingsCount}‎","עם ‎{drawingsCount}‎ שרטוטים","עם ‎{drawingsCount}‎ שרטוטים","עם ‎{drawingsCount}‎ שרטוטים"],hu_HU:["with {drawingsCount} drawings"],id_ID:["dengan {drawingsCount} gambar"],it:["con {drawingsCount} disegno","con {drawingsCount} disegni"],ja:["に{drawingsCount}個の描画"],ko:["{drawingsCount} 드로잉이 있는"],ms_MY:["dengan {drawingsCount} lukisan"],nl_NL:"with {drawingsCount} drawing",pl:["z {drawingsCount} rysunkiem","z {drawingsCount} rysunkami","z {drawingsCount} rysunkami","z {drawingsCount} rysunkami"],pt:["com {drawingsCount} desenho","com {drawingsCount} desenhos"],ro:"with {drawingsCount} drawing",ru:["с {drawingsCount} объектом рисования","с {drawingsCount} объектами рисования","с {drawingsCount} объектами рисования","с {drawingsCount} объектами рисования"],sv:["med {drawingsCount} ritverktyg","med {drawingsCount} ritverktyg"],th:["กับ {drawingsCount} การวาด"],tr:["{drawingsCount} çizim ile","{drawingsCount} çizim ile"],vi:["với {drawingsCount} nét vẽ"],zh:["含{drawingsCount}个绘图"],zh_TW:["含{drawingsCount}個繪圖"]}},88143:e=>{e.exports={ar:["‎{drawingsCount}‎ رسم","‎{drawingsCount}‎ رسم","‎{drawingsCount}‎ رسم","‎{drawingsCount}‎ رسوم","‎{drawingsCount}‎ رسماً","‎{drawingsCount}‎ رسماً"],ca_ES:["{drawingsCount} dibuix","{drawingsCount} dibuixos"],cs:"{drawingsCount} drawing",de:["{drawingsCount} Zeichnung","{drawingsCount} Zeichnungen"],el:"{drawingsCount} drawing",en:"{drawingsCount} drawing",es:["{drawingsCount} dibujo","{drawingsCount} dibujos"],fa:["{drawingsCount} drawings"],fr:["{drawingsCount} dessin","{drawingsCount} dessins"],he_IL:["שרטוט ‎{drawingsCount}‎","‎{drawingsCount}‎ שרטוטים","‎{drawingsCount}‎ שרטוטים","‎{drawingsCount}‎ שרטוטים"],hu_HU:["{drawingsCount} drawings"],id_ID:["{drawingsCount} gambar"],it:["{drawingsCount} disegno","{drawingsCount} disegni"],ja:["{drawingsCount}個の描画"],ko:["{drawingsCount} 드로잉"],ms_MY:["{drawingsCount} lukisan"],nl_NL:"{drawingsCount} drawing",pl:["{drawingsCount} rysunek","{drawingsCount} rysunki","{drawingsCount} rysunków","{drawingsCount} rysunków"],pt:["{drawingsCount} desenho","{drawingsCount} desenhos"],ro:"{drawingsCount} drawing",ru:["{drawingsCount} объект рисования","{drawingsCount} объекта рисования","{drawingsCount} объектов рисования","{drawingsCount} объектов рисования"],sv:["{drawingsCount} ritverktyg","{drawingsCount} ritverktyg"],th:["{drawingsCount} การวาด"],tr:["{drawingsCount} çizimi","{drawingsCount} çizimi"],vi:["{drawingsCount} nét vẽ"],zh:["{drawingsCount}个绘图"],zh_TW:["{drawingsCount}個繪圖"]}},52908:e=>{e.exports={ar:["‎{symbolsCount}‎ رمز","‎{symbolsCount}‎ رمز","‎{symbolsCount}‎ رمز","‎{symbolsCount}‎ رموز","‎{symbolsCount}‎ رمزاً","‎{symbolsCount}‎ رمزاً"],ca_ES:["{symbolsCount} símbol","{symbolsCount} símbols"],cs:"{symbolsCount} symbol",de:["{symbolsCount} Symbol","{symbolsCount} Symbole"],el:"{symbolsCount} symbol",en:"{symbolsCount} symbol",es:["{symbolsCount} símbolo","{symbolsCount} símbolos"],fa:["{symbolsCount} symbols"], fr:["{symbolsCount} symbole","{symbolsCount} symboles"],he_IL:["סימול ‎{symbolsCount}‎","‎{symbolsCount}‎ סימולים","‎{symbolsCount}‎ סימולים","‎{symbolsCount}‎ סימולים"],hu_HU:["{symbolsCount} symbols"],id_ID:["{symbolsCount} simbol"],it:["{symbolsCount} simbolo","{symbolsCount} simboli"],ja:["{symbolsCount}シンボル"],ko:["{symbolsCount} 심볼"],ms_MY:["Simbol {symbolsCount}"],nl_NL:"{symbolsCount} symbol",pl:"{symbolsCount} symbol",pt:["{symbolsCount} símbolo","{symbolsCount} símbolos"],ro:"{symbolsCount} symbol",ru:["{symbolsCount} символ","{symbolsCount} символа","{symbolsCount} символов","{symbolsCount} символов"],sv:"{symbolsCount} symbol",th:["{symbolsCount} สัญลักษณ์"],tr:["{symbolsCount} sembol","{symbolsCount} sembol"],vi:["{symbolsCount} mã giao dịch"],zh:["{symbolsCount}个商品"],zh_TW:["{symbolsCount}個商品"]}}}]);