1"use strict";(self.webpackChunkfrontend=self.webpackChunkfrontend||[]).push([[443],{24916:(se,B,s)=>{s.d(B,{T:()=>Y});var p=s(90418),a=s(21413),C=s(33726),k=s(99172),N=s(96354),D=s(23294),G=s(5964),V=s(96697),e=s(57786),c=s(28793),f=s(22816),h=s(54438),S=s(84480),x=s(42331);let Y=(()=>{class ne{constructor(X,m){this.resizeService=X,this.utils=m,this.tocElementInit$=new a.B,this.toggleTocClicked$=new a.B,this.utils.isBrowser&&(this.tocToggleHidden$=(0,C.R)(this.utils.window,"scroll").pipe((0,k.Z)(0),(0,N.T)(()=>this.utils.window.scrollY<p.q+(this.tocElement?.nativeElement.getBoundingClientRect().top||0)),(0,D.F)()),this.tocVisible$=this.tocVisibility$)}tocInit(X){this.tocElement=X,this.tocElementInit$.next(X)}tocToggle(X=!0){this.toggleTocClicked$.next({mobileOnly:X})}get tocVisibility$(){const X=this.tocElementInit$.pipe((0,G.p)(j=>this.utils.isBrowser&&!!j),(0,V.s)(1),(0,N.T)(()=>this.resizeService.bootstrap().isLg)),m=this.tocToggleHidden$.pipe((0,G.p)(j=>this.resizeService.bootstrap().isXl&&j),(0,N.T)(()=>({eventName:"scrollTriggered"}))),R=this.toggleTocClicked$.pipe((0,G.p)(({mobileOnly:j})=>j||!this.resizeService.bootstrap().isLg),(0,N.T)(()=>({eventName:"toggleClicked"}))),v=(0,e.h)(m,R);return(0,c.x)(X,v).pipe((0,f.S)((j,de)=>{if("boolean"==typeof de)return de;const{eventName:ue}=de;return"scrollTriggered"===ue||!j}),(0,N.T)(j=>j),(0,D.F)())}static{this.\u0275fac=function(m){return new(m||ne)(h.KVO(S.cD),h.KVO(x.T))}}static{this.\u0275prov=h.jDH({token:ne,factory:ne.\u0275fac,providedIn:"root"})}}return ne})()},52754:(se,B,s)=>{s.d(B,{X:()=>v,_:()=>R});var p=s(54438),a=s(69867),C=s(21413),k=s(92771),N=s(88141),D=s(25558),G=s(27468),V=s(7673),e=s(96354),c=s(96697),f=s(5964),h=s(57786),S=s(22816),x=s(99172),Y=s(23294),ne=s(44668),P=s(60933),X=s(69464),m=s(51136);const R=20;let v=(()=>{class U{constructor($,W,oe){this.productFactory=$,this.localeService=W,this.notifier=oe,this._initialLoading=(0,p.vPA)(!1),this.initialLoading=this._initialLoading.asReadonly(),this.changeProduct$=new C.B,this.removeProduct$=new C.B,this.setInitialIsins$=new k.m,this.addProduct$=new C.B;const _e=this.setInitialIsins$.pipe((0,N.M)(()=>this._initialLoading.set(!0)),(0,D.n)(I=>I.length?(0,G.p)(I.map(({isin:w,investmentType:ie})=>this.fetchProduct(w,ie))):(0,V.of)([])),(0,e.T)(I=>I.filter(w=>!!w)),(0,e.T)(I=>this.localeService.isDefault?I:I.filter(w=>"fund"!==w.specificInvestmentType)),(0,N.M)(()=>this._initialLoading.set(!1))),Re=this.addProduct$.pipe((0,D.n)(({isin:I,investmentType:w})=>this.products$?this.products$.pipe((0,c.s)(1),(0,N.M)(ie=>{ie.length+1>R&&this.notifier.error("Du kannst maximal " + R + " Produkte ausw\xE4hlen")}),(0,f.p)(ie=>ie.length+1<=R),(0,D.n)(()=>this.fetchProduct(I,w))):this.fetchProduct(I,w)),(0,f.p)(I=>!!I));this.products$=(0,h.h)(_e.pipe((0,e.T)(I=>({data:I,strategy:j}))),Re.pipe((0,e.T)(I=>({data:I,strategy:de}))),this.changeProduct$.pipe((0,e.T)(I=>({data:I,strategy:ue}))),this.removeProduct$.pipe((0,e.T)(I=>({data:I,strategy:ze})))).pipe((0,S.S)((I,w)=>{const ie=w.strategy(I,w.data).filter(ae=>!!ae).filter((ae,Ue)=>Ue<R);return this.removeDuplicates(ie)},[]),(0,x.Z)([]),(0,Y.F)((I,w)=>{const ie=I.map(ae=>ae.isin),Se=w.map(ae=>ae.isin);return JSON.stringify(ie)===JSON.stringify(Se)}),(0,ne.t)({refCount:!0,bufferSize:1})),this.productNumber$=this.products$.pipe((0,e.T)(I=>I.length)),this.isins$=this.products$.pipe((0,e.T)(I=>I.map(w=>w.isin)))}onOrderChange($){this.changeProduct$.next($)}onProductRemove($){this.removeProduct$.next($)}onProductSelect($){this.addProduct$.next($)}setInitialIsins($){this.setInitialIsins$.next($)}fetchProduct($,W){const oe=this.productFactory.getService(W);return oe?oe.fetch($).pipe((0,e.T)(_e=>_e||null)):(0,V.of)(null)}removeDuplicates($){return $.filter((W,oe,_e)=>oe===_e.findIndex(Re=>Re.isin===W.isin&&Re.specificInvestmentType===W.specificInvestmentType))}static{this.\u0275fac=function(W){return new(W||U)(p.KVO(P.$2),p.KVO(X.i),p.KVO(m.C))}}static{this.\u0275prov=p.jDH({token:U,factory:U.\u0275fac})}}return U})();const j=(U,ee)=>ee,de=(U,ee)=>[...U,ee],ue=(U,ee)=>{const $=[...U];return(0,a.HD)($,ee.previousIndex,ee.currentIndex),$},ze=(U,ee)=>{if("string"!=typeof ee)throw new Error("Wrong type");return U.filter($=>$.isin!==ee)}},73168:(se,B,s)=>{s.d(B,{E:()=>V,v:()=>G});var p=s(47650),a=s(54438),C=s(51188);
1function k(e,c){if(1&e&&(a.j41(0,"a",0),a.EFF(1),a.k0s()),2&e){const f=a.XpG();a.Y8G("routerLink",f.link),a.R7$(),a.JRh(f.text)}}function N(e,c){if(1&e&&(a.j41(0,"div"),a.EFF(1),a.k0s()),2&e){const f=a.XpG();a.R7$(),a.JRh(f.text)}}function D(e,c){1&e&&a.EFF(0," \u2014 ")}class G extends p.k{constructor(c,f,h,S,x,Y="text-end"){super(c,S,x,Y),this.title=c,this.getName=f,this.getLink=h,this.apiOrderingParam=S,this.defaultOrderingAsc=x,this.headerClasses=Y}getPayload(c){return{displayName:this.getName(c),link:this.getLink(c)}}getType(){return V}getOrderingValue(c){return this.getName(c)}getValue(c){return this.getName(c)}}let V=(()=>{class e{init(f,h,S){S?.displayName&&"string"==typeof S.displayName&&(this.text=S.displayName),S?.link&&"string"==typeof S?.link&&(this.link=S.link)}static{this.\u0275fac=function(h){return new(h||e)}}static{this.\u0275cmp=a.VBU({type:e,selectors:[["app-column-link"]],decls:3,vars:1,consts:[[1,"text-decoration-none","fw-semibold",3,"routerLink"]],template:function(h,S){1&h&&a.DNE(0,k,2,2,"a",0)(1,N,2,1,"div")(2,D,1,0),2&h&&a.vxM(S.link&&S.text?0:S.text?1:2)},dependencies:[C.Wk],encapsulation:2,changeDetection:0})}}return e})()},47650:(se,B,s)=>{s.d(B,{k:()=>p});class p{constructor(C,k,N,D="text-end"){this.title=C,this.apiOrderingParam=k,this.defaultOrderingAsc=N,this.headerClasses=D}getValue(...C){return 0}}},63488:(se,B,s)=>{s.r(B),s.d(B,{EtfPortfoliosModule:()=>Jr});var p=s(51188),a=s(15044),C=s(89005),k=s(13719),N=s(80344),D=s(88607),G=s(69127),V=s(42631),e=s(54438),c=s(60177),f=s(81586),h=s(64206),S=s(38675),x=s(84480),Y=s(83038),ne=s(86648),P=s(88141),X=s(66046);const m=n=>({height:n});function R(n,_){if(1&n&&e.nrm(0,"highcharts-chart",0),2&n){const t=e.XpG(2);
1e.Y8G("Highcharts",t.Highcharts)("options",t.chartOptions)}}function v(n,_){if(1&n&&(e.j41(0,"div",1),e.nrm(1,"xetf-spinner",2),e.k0s()),2&n){const t=e.XpG(2);e.Y8G("ngStyle",e.eq3(3,m,t.HEIGHT_MOBILE+"px")),e.R7$(),e.Y8G("color","logo")("size",24)}}function j(n,_){if(1&n&&e.DNE(0,R,1,2,"highcharts-chart",0)(1,v,2,5,"div",1),2&n){const t=e.XpG();e.vxM(t.chartLoaded()?0:1)}}let de=(()=>{class n extends S.H{constructor(){super(...arguments),this.HEIGHT_MOBILE=350,this.HEIGHT_DESKTOP=500,this.chartLoaded=(0,e.vPA)(!1)}ngOnChanges(t){super.ngOnChanges(t),(0,ne.H)(s.e(3405).then(s.bind(s,93405))).pipe((0,P.M)(o=>{o.mapModule(this.Highcharts),this.setChartOptions((0,h.aQ)([this.commonChartOptions,this.getDefaultMapOptions(o.mapData),this.seriesOptions])),this.chartLoaded.set(!0)})).subscribe()}getDefaultMapOptions(t){const o=this.colorService.getColor("primary",500),i=this.colorService.getColor("primary",600),r=Math.max(...this.seriesOptions.series[0].data.map(([d,T])=>T)),l=this;return{chart:{map:t,height:this.HEIGHT_DESKTOP,events:{render:function(){let d,T,L,F;this.chartHeight===l.HEIGHT_DESKTOP?(l.wmWidth=75,l.wmHeight=17,d=.38*this.chartWidth,T=.45*this.chartHeight,L=.67*this.chartWidth,F=.62*this.chartHeight):(l.wmWidth=50,l.wmHeight=11,d=.29*this.chartWidth,T=.54*this.chartHeight,L=.62*this.chartWidth,F=.67*this.chartHeight),l.showWatermarks(l.renderWatermark(this,d,T),l.renderWatermark(this,L,F))}}},mapNavigation:{enabled:!0,buttonOptions:{alignTo:"plotBox",x:-20,theme:{stroke:o,fill:"white",style:{color:o}}}},colorAxis:{min:0,max:r,minColor:"#E9F5FE",maxColor:o},legend:{align:"left",layout:"vertical",verticalAlign:"bottom",symbolHeight:250,symbolWidth:4},yAxis:{gridLineWidth:0,labels:{enabled:!1}},plotOptions:{map:{nullColor:"white",borderColor:o,dataLabels:{style:{color:"black",fontWeight:"normal",textOutline:void 0}},states:{hover:{color:i,borderColor:i}}}},tooltip:{formatter(){return`<b>${this.key}: </b>${(0,f.jq)(this.point.value,2,"","%")}`}},responsive:{rules:[{condition:{maxWidth:x.su.sm},chartOptions:{chart:{height:this.HEIGHT_MOBILE},mapNavigation:{enabled:!1},legend:{align:"center",layout:"horizontal",verticalAlign:"top",symbolHeight:4,symbolWidth:250}}}]}}}static{this.\u0275fac=(()=>{let t;return function(i){return(t||(t=e.xGo(n)))(i||n)}})()}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-world-map"]],standalone:!0,features:[e.Vt3,e.OA$,e.aNF],decls:1,vars:1,consts:[["constructorType","mapChart",3,"Highcharts","options"],[1,"d-flex","align-items-center","justify-content-center",3,"ngStyle"],[3,"color","size"]],template:function(o,i){1&o&&e.DNE(0,j,2,1),2&o&&e.vxM(i.isBrowser?0:-1)},dependencies:[c.B3,X._,X.H,Y.tI],encapsulation:2,changeDetection:0})}}return n})();var ue=s(47650);const ze=()=>({tab:"saving-plans"});let ee=(()=>{class n{init(t){this.brokersNumber=t.numberOfBrokers,this.link=["/etf-profile",t.isin]}static{this.\u0275fac=function(o){return new(o||n)}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-column-brokers-number"]],decls:6,vars:7,consts:[[1,"d-flex","align-items-center","justify-content-end",3,"routerLink","queryParams"],[1,"badge","badge-orange-outline-filled","p-0_5","me-2"],[3,"name","size"],[1,"fw-semibold","fs-xs","me-1"],[1,"rotate-90-inverse",3,"name"]],template:function(o,i){1&o&&(e.j41(0,"a",0)(1,"div",1),e.nrm(2,"xetf-icon",2),e.k0s(),e.j41(3,"div",3),e.EFF(4),e.k0s(),e.nrm(5,"xetf-icon",4),e.k0s()),2&o&&(e.Y8G("routerLink",i.link)("queryParams",e.lJ4(6,ze)),e.R7$(2),e.Y8G("name","chartBar")("size",14),e.R7$(2),e.JRh(i.brokersNumber),e.R7$(),e.Y8G("name","chevron"))},dependencies:[p.Wk,Y.Rl],encapsulation:2,changeDetection:0})}}return n})();var $=s(42331),W=s(66157),oe=s(59075),_e=s(31014),Re=s(78328);function I(n,_){if(1&n&&e.nrm(0,"app-area-chart",3),2&n){const t=e.XpG(2);e.Y8G("seriesOptions",t.seriesAreaOptions)("withWatermark",!0)("withRangeSelector",!0)("percentageMode",t.percentageMode)("exportingTitle",t.exportingTitle)("defaultRangeAll",t.defaultRangeAll)}}function w(n,_){if(1&n&&e.nrm(0,"app-line-chart",4),2&n){const t=e.XpG(2);e.Y8G("seriesOptions",t.seriesLineOptions)("exportingTitle",t.exportingTitle)("withWatermark",!0)("withRangeSelector",!0)("defaultRangeAll",t.defaultRangeAll)}}function ie(n,_){if(1&n&&(e.qex(0),e.DNE(1,I,1,6,"app-area-chart",1)(2,w,1,5,"app-line-chart",2),e.bVm()),2&n){const t=e.XpG();e.R7$(),e.Y8G("ngIf",t.seriesAreaOptions),e.R7$(),e.Y8G("ngIf",t.seriesLineOptions)}}let Se=(()=>{class n{constructor(t,o,i){this.dataService=t,this.chartsService=o,this._cdr=i,this.isBrowser=(0,e.WQX)($.T).isBrowser,this.portfolioSeries=[],this.benchmarkData=[]}ngOnInit(){this.isBrowser&&(this.exportingTitle=this.portfolio.name+"<br>Wertentwicklung",this.dataService.fetchPortfolioSeries(this.portfolio.id).subscribe(t=>{this.portfolioSeries=t,this.updateChart()}))}ngOnChanges(t){t.benchmarks&&!t.benchmarks.firstChange&&this.chartsService.fetchBenchmarksData(this.benchmarks,this.startDate).subscribe(o=>{this.benchmarkData=o,this.updateChart()})}updateChart(){this.seriesAreaOptions=this.assembleAreaOptions(),this.seriesLineOptions=this.assembleLineOptions(),this._cdr.markForCheck()}assembleAreaOptions(){if(this.benchmarks?.length)return null;{const t=[{name:"Kurs",data:this.portfolioSeries,type:"areaspline"}];return this.startDate=(0,h.fX)(t),{series:t}}}assembleLineOptions(){return this.benchmarks?.length?{series:[this.assembleMainLineSeries(),...this.assembleBenchmarkLineSeries()]}:null}assembleMainLineSeries(){return{type:"line",data:this.portfolioSeries||[],name:this.portfolio.name}}assembleBenchmarkLineSeries(){return this.benchmarkData.map(t=>{const o=this.benchmarks.find(r=>r.id===t.id),i=o.description?` (${o.description})`:"";return{id:o.id,type:"line",data:Array.isArray(t.data)?t.data:t.data.trinav,name:`Benchmark: ${o.name}${i}`}})}static{this.\u0275fac=function(o){return new(o||n)(e.rXU(W.u),e.rXU(oe.u),e.rXU(e.gRc))}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-etf-portfolio-chart"]],inputs:{defaultRangeAll:"defaultRangeAll",percentageMode:"percentageMode",portfolio:"portfolio",benchmarks:"benchmarks"},features:[e.OA$],decls:1,vars:1,consts:[[4,"ngIf"],[3,"seriesOptions","withWatermark","withRangeSelector","percentageMode","exportingTitle","defaultRangeAll",4,"ngIf"],[3,"seriesOptions","exportingTitle","withWatermark","withRangeSelector","defaultRangeAll",4,"ngIf"],[3,"seriesOptions","withWatermark","withRangeSelector","percentageMode","exportingTitle","defaultRangeAll"],[3,"seriesOptions","exportingTitle","withWatermark","withRangeSelector","defaultRangeAll"]],template:function(o,i){1&o&&e.DNE(0,ie,3,2,"ng-container",0),2&o&&e.Y8G("ngIf",i.isBrowser)},dependencies:[c.bT,_e.X,Re.I],encapsulation:2,changeDetection:0})}}return n})(),ae=(()=>
1{class n{ngOnChanges(){this.assembleChartOptions(),this.exportingTitle=this.portfolio.name+"<br>In diese L\xe4nder investiert der das Musterportfolio"}assembleChartOptions(){const t=this.portfolio.countries.map(o=>[o.code.toLowerCase(),Number(o.value)]).filter(([o,i])=>i>.01);this.seriesOptions={series:[{type:"map",name:"L\xe4nder-Allokation",data:t}]}}static{this.\u0275fac=function(o){return new(o||n)}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-etf-portfolio-map"]],inputs:{portfolio:"portfolio"},features:[e.OA$],decls:1,vars:2,consts:[[3,"seriesOptions","exportingTitle"]],template:function(o,i){1&o&&e.nrm(0,"app-world-map",0),2&o&&e.Y8G("seriesOptions",i.seriesOptions)("exportingTitle",i.exportingTitle)},dependencies:[de],encapsulation:2,changeDetection:0})}}return n})();var Ue=s(75104);function mn(n,_){if(1&n&&e.nrm(0,"app-pie-chart",1),2&n){const t=e.XpG();e.Y8G("seriesOptions",t.seriesOptions)("exportingTitle",t.exportingTitle)("withWatermark",!0)}}let We=(()=>{class n{constructor(){this.isBrowser=(0,e.WQX)($.T).isBrowser}ngOnInit(){let o,t=null;switch(this.exportingTitle=this.portfolio.name,this.type){case"assets":t=this.portfolio.portfolio_anteil_anlageklasse,o="Assetklassen",this.exportingTitle+="<br>"+"Assetklassen";break;case"regions":t=this.portfolio.portfolio_anteil_region,o="Regionenaufteilung",this.exportingTitle+="<br>"+"Regionen"}if(t){const i=Object.entries(t).map(r=>({name:r[0],y:r[1]}));this.seriesOptions=this.assembleSeriesOptions(i,o)}}assembleSeriesOptions(t,o){return{series:[{type:"pie",data:t,tooltip:{headerFormat:`${o}<br>`,pointFormat:"<b>{point.name}:</b> {point.percentage:.1f}%"}}]}}static{this.\u0275fac=function(o){return new(o||n)}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-etf-portfolio-pie-chart"]],inputs:{portfolio:"portfolio",type:"type"},decls:1,vars:1,consts:[[3,"seriesOptions","exportingTitle","withWatermark",4,"ngIf"],[3,"seriesOptions","exportingTitle","withWatermark"]],template:function(o,i){1&o&&e.DNE(0,mn,1,3,"app-pie-chart",0),2&o&&e.Y8G("ngIf",i.isBrowser&&i.seriesOptions)},dependencies:[c.bT,Ue.k],encapsulation:2,changeDetection:0})}}return n})();var fe=s(89079),He=s(67600),Rn=s(95823),Ae=s(97144),Ze=s(71325),Je=s(81958),qe=s(21626),z=s(89947),b=s(96354),De=s(99437),Q=s(7673),Sn=s(59759),Pe=s(69464),et=s(9963);let le=(()=>{class n{constructor(t,o,i,r,l,d,T){this.http=t,this.router=o,this.dataService=i,this.userService=r,this.modalService=l,this.localeService=d,this.cmsService=T,this.ETF_CHART_TYPE="trinav"}static getTopAssets(t){const[o,i]=(0,f.jB)(t.items,O=>"stock"===O.breakdown_type),[r,l]=(0,f.jB)(i,O=>"etf"===O.breakdown_type),[d,T]=(0,f.jB)(l,O=>"crypto"===O.breakdown_type),[L,F]=(0,f.jB)(T,O=>"bond"===O.breakdown_type),[E,y]=(0,f.jB)(F,O=>"fund"===O.breakdown_type),[H,Z]=(0,f.jB)(y,O=>"commodity"===O.breakdown_type),[J,q]=(0,f.jB)(Z,O=>"derivatives"===O.breakdown_type),[A,me]=(0,f.jB)(q,O=>"real_estate"===O.breakdown_type),[pe,Te]=(0,f.jB)(me,O=>"cash"===O.breakdown_type),M=O=>({iconUrl:(0,f.vo)(O.logo_url),name:O.name,value:O.total_weight,subName:O.type}),K={};return o.length&&(K[z.R.STOCK]={items:o.map(O=>Object.assign(M(O),{itemUrl:"stock"===O.profile_type&&`/stock-profile/${O.isin}`}))}),r?.length&&(K[z.R.ETF]={items:r.map(O=>Object.assign(M(O),{itemUrl:"etf"===O.profile_type&&`/etf-profile/${O.isin}`}))}),L.length&&(K[z.R.BOND]={items:L.map(O=>M(O))}),E.length&&(K[z.R.FUND]={items:E.map(O=>M(O))}),d.length&&(K[z.R.CURRENCIES]={items:d.map(O=>M(O))}),H.length&&(K[z.R.COMMODITY]={items:H.map(O=>M(O))}),J.length&&(K[z.R.DERIVATIES]={items:J.map(O=>M(O))}),A.length&&(K[z.R.REAL_ESTATE]={items:A.map(O=>M(O))}),pe.length&&(K[z.R.CASH]={items:pe.map(O=>M(O))}),Te.length&&(K[z.R.OTHER]={items:Te.map(O=>M(O))}),K}static getTopRegions(t){return{[z.R.STOCK]:{items:t.regions.stock_list},[z.R.BOND]:{items:t.regions.bond_list}}}static getTopBranches(t){return{[z.R.STOCK]:{items:t.branches.stock_list},[z.R.BOND]:{items:t.branches.bond_list}}}static getTopCountries(t){return{[z.R.STOCK]:{items:t.countries}}}groupPortfolios(t){const o={};return t.forEach(i=>{const r=i.group,l=r?.slug||"other";Object.keys(o).includes(l)||(o[l]={name:r?.name||"Sonstige",description:r?.description||"",slug:l,order:r?.order||1e3,portfolios:[]}),o[l].portfolios.push(i)}),Object.values(o)}getAll(t=[]){const o=(0,f.gS)(t);return this.http.get("/api-v2/portfolio/",{params:o}).pipe((0,b.T)(i=>
1i?.length?i.map(r=>new He._X(r)):[]),(0,De.W)(()=>(0,Q.of)([])))}getOne(t){return this.getAll([{key:"url",value:t}]).pipe((0,b.T)(o=>o?.length?o[0]:null),(0,De.W)(()=>(0,Q.of)(null)))}getOneById(t){return this.http.get(`/api-v2/portfolio/${t}/`).pipe((0,De.W)(()=>(0,Q.of)(null)))}getGroups(){const t=(new qe.Nl).append("country",this.localeService.countryCode.toUpperCase());return this.http.get("/api-v2/portfolio-group",{params:t})}getPortfolioListFromCms(){return this.cmsService.getList("/etf-portfolio-single-pages",{populate:{seo:{populate:"metaImage"}},pagination:{pageSize:150}})}getPortfolioCmsContentBySlug(t){return this.cmsService.getSingle(`/etf-portfolio-single-page/by-slug/${t}`,{populate:{seo:{populate:"metaImage"}}},void 0,!0)}fetchEtfChartData(t){return this.dataService.fetchChartData(t,this.ETF_CHART_TYPE).pipe((0,b.T)(o=>o[this.ETF_CHART_TYPE]))}static{this.\u0275fac=function(o){return new(o||n)(e.KVO(qe.Qq),e.KVO(p.Ix),e.KVO(W.u),e.KVO(Je.D),e.KVO(Sn.B),e.KVO(Pe.i),e.KVO(et.x))}}static{this.\u0275prov=e.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();var tt=s(17700),nt=s(28210),ot=s(32455),An=s(11118),Pn=s(43284),xe=s(48516),bn=s(79544),Ke=s(71757),Ye=s(534),Cn=s(9142),Ge=s(19122);function Fn(n,_){if(1&n&&e.nrm(0,"app-max-drawdown-chart",11),2&n){const t=e.XpG(2);e.Y8G("seriesOptions",t.seriesAreaOptions)("exportingTitle",t.exportingTitle)("withWatermark",!0)("withRangeSelector",!0)("entityName",t.portfolio.name)("chartAssignment","portfolio")("defaultRangeAll",!0)}}function Mn(n,_){if(1&n){const t=e.RV6();e.j41(0,"div",2)(1,"div",3)(2,"h2",4),e.PLo(3,0),e.nrm(4,"xetf-icon",5),e.YFu(),e.k0s()(),e.j41(5,"div",6),e.DNE(6,Fn,1,7,"app-max-drawdown-chart",7),e.j41(7,"div",8)(8,"div",9)(9,"app-benchmark-selector",10),e.bIt("benchmarks",function(i){e.eBV(t);const r=e.XpG();return e.Njj(r.setBenchmarks(i))}),e.k0s()()()()()}if(2&n){const t=e.XpG();e.R7$(4),e.Y8G("name","infoCircle")("tooltip",t.TOOLTIPS.maxDrawDownChartDescription("etf")),e.R7$(2),e.Y8G("ngIf",t.seriesAreaOptions),e.R7$(3),e.Y8G("inputId","mdd-tags-input")("defaultBenchmarks",t.DEFAULT_BENCHMARKS)("benchmarkLimit",3)}}let it=(()=>{class n{constructor(t,o,i,r,l){this.portfolioService=t,this.dataService=o,this.chartsService=i,this.colorService=r,this._cdr=l,this.TOOLTIPS=bn.H,this.DEFAULT_BENCHMARKS=xe.G$,this.series=[],this.benchmarkData=[]}ngOnInit(){this.exportingTitle=this.portfolio.name,this.fetchPerformance(this.portfolio.id).subscribe(t=>{this.series=t,this.updateChart()})}fetchPerformance(t){return"string"==typeof t?this.portfolioService.fetchEtfChartData(t):this.dataService.fetchPortfolioSeries(t)}updateChart(){this.seriesAreaOptions=this.assembleAreaOptions(),this._cdr.markForCheck()}assembleAreaOptions(){const t=this.assembleAreaSeries();if(!t)return null;const o=[t,...this.assembleBenchmarkSeries()];return{legend:{enabled:this.benchmarkMode},series:(0,h.DQ)(o)}}assembleAreaSeries(){return this.series?.length?{id:`${this.portfolio.id}-main`,name:this.benchmarkMode?this.portfolio.name:"Drawdown",data:this.series,type:"areaspline"}:null}assembleBenchmarkSeries(){return this.benchmarkMode?this.benchmarkData.map((t,o)=>{const i=this.benchmarks.find(l=>l.id===t.id);return{id:t.id,type:"line",name:`Benchmark: ${i.name}${i.description?` (${i.description})`:""}`,data:Array.isArray(t.data)?t.data:t.data.trinav,showInNavigator:!0,color:this.colorService.COMPARISON_CHART_PALETTE[o+2]}}):[]}setBenchmarks(t){this.benchmarks=t,this.benchmarkMode=!!t?.length,this.chartsService.fetchBenchmarksData(this.benchmarks).subscribe(o=>{this.benchmarkData=o,this.updateChart()})}static{this.\u0275fac=function(o){return new(o||n)(e.rXU(le),e.rXU(W.u),e.rXU(oe.u),e.rXU(Ke.l),e.rXU(e.gRc))}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-charts-container-mdd"]],inputs:{portfolio:"portfolio"},decls:1,vars:1,consts:()=>{let t;return t=" Maximum Drawdown " + "\ufffd#4\ufffd" + "" + "\ufffd/#4\ufffd" + "",[t,["class","card",4,"ngIf"],[1,"card"],[1,"card-header"],[1,"card-title","value-with-tooltip"],["container","body",3,"name","tooltip"],[1,"card-body"],[3,"seriesOptions","exportingTitle","withWatermark","withRangeSelector","entityName","chartAssignment","defaultRangeAll",4,"ngIf"],[1,"row"],[1,"offset-md-6","col-md-6"],[3,"benchmarks","inputId","defaultBenchmarks","benchmarkLimit"],[3,"seriesOptions","exportingTitle","withWatermark","withRangeSelector","entityName","chartAssignment","defaultRangeAll"]]}
1,template:function(o,i){1&o&&e.DNE(0,Mn,10,6,"div",1),2&o&&e.Y8G("ngIf",i.seriesAreaOptions)},dependencies:[c.bT,Ye.dg,Y.Rl,Cn.W,Ge.G],encapsulation:2})}}return n})();var ce=s(89417);let rt=(()=>{class n{constructor(){this.DEFAULT_BENCHMARKS=xe.bT,this.benchmarks=[]}setBenchmarks(t){this.benchmarks=t,this.benchmarkMode=this.benchmarks.length>0}static{this.\u0275fac=function(o){return new(o||n)}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-charts-container-quote-development"]],inputs:{portfolio:"portfolio"},decls:13,vars:8,consts:()=>{let t,o;return t="Kurs\xADentwicklung, Chart\xADvergleich",o=" Prozentuale Ver\xE4nderung ",[t,o,[1,"card"],[1,"card-header"],[1,"card-title"],[1,"card-body","align-items-sm-center","justify-content-sm-between"],[1,"portfolio-chart"],[3,"portfolio","benchmarks","percentageMode","defaultRangeAll"],[1,"row"],[1,"col-md-6","mt-2"],[3,"ngModelChange","disabled","ngModel"],[1,"col-md-6"],[3,"benchmarks","inputId","defaultBenchmarks"]]},template:function(o,i){1&o&&(e.j41(0,"div",2)(1,"div",3)(2,"h2",4),e.pXf(3,0),e.k0s()(),e.j41(4,"div",5)(5,"div",6),e.nrm(6,"app-etf-portfolio-chart",7),e.k0s(),e.j41(7,"div",8)(8,"div",9)(9,"xetf-switch",10),e.bIt("ngModelChange",function(){return i.percentageEnabled=!i.percentageEnabled}),e.pXf(10,1),e.k0s()(),e.j41(11,"div",11)(12,"app-benchmark-selector",12),e.bIt("benchmarks",function(l){return i.setBenchmarks(l)}),e.k0s()()()()()),2&o&&(e.R7$(6),e.Y8G("portfolio",i.portfolio)("benchmarks",i.benchmarks)("percentageMode",i.percentageEnabled)("defaultRangeAll",!0),e.R7$(3),e.Y8G("disabled",i.benchmarkMode)("ngModel",i.percentageEnabled||i.benchmarkMode),e.R7$(3),e.Y8G("inputId","quote-tags-input")("defaultBenchmarks",i.DEFAULT_BENCHMARKS))},dependencies:[ce.BC,ce.vS,a.c,Ge.G,Se],styles:[".portfolio-chart[_ngcontent-%COMP%]{height:600px}@media (max-height: 600px){.portfolio-chart[_ngcontent-%COMP%]{height:400px}}"],changeDetection:0})}}return n})();var st=s(73713),g=s(32817),In=s(67374),Ne=s.n(In);function Nn(n,_){if(1&n&&e.nrm(0,"app-area-chart",3),2&n){const t=e.XpG(2);e.Y8G("seriesOptions",t.seriesAreaOptions)("withWatermark",!0)("withRangeSelector",!0)("percentageMode",!0)("onlyCompareItself",!0)("exportingTitle",t.exportingTitle)("defaultRangeAll",t.defaultRangeAll)}}function Ln(n,_){if(1&n&&(e.qex(0),e.j41(1,"div",1),e.EFF(2),e.k0s(),e.DNE(3,Nn,1,7,"app-area-chart",2),e.bVm()),2&n){const t=e.XpG();e.R7$(2),e.SpI(" ",t.description," "),e.R7$(),e.Y8G("ngIf",t.seriesAreaOptions)}}let _t=(()=>{class n{get description(){let t,o;const i=Ne()(this.maxValueDate).format("MMMM YYYY"),r=this.decimalNewPipe.transform((0,f.eB)(this.maxValue,2),2);switch(this.windowDays){case 30:t="1-Monats",o="dem vorangegangenen Monat";break;case 90:t="3-Monats",o="den vorangegangenen 3 Monaten";break;case 365:t="1-Jahres",o="dem vorangegangenen Jahr"}return "Hier siehst du die rollierende " + t + "-Volatilit\xE4t des " + this.portfolio.name + ". Die h\xF6chste Volatilit\xE4t von " + r + "% erzielte der ETF im " + i + ", basierend auf " + o + "."}constructor(t,o,i){this.dataService=t,this.chartsService=o,this._cdr=i,this.isBrowser=(0,e.WQX)($.T).isBrowser,this.localeService=(0,e.WQX)(Pe.i),this.windowDays=30,this.maxValue=0,this.portfolioSeries=[],this.benchmarkData=[],this.decimalNewPipe=new g.gw,Ne().locale(this.localeService.locale)}ngOnInit(){this.isBrowser&&(this.exportingTitle="" + this.portfolio.name + "<br>Wertentwicklung")}ngOnChanges(t){t.benchmarks&&!t.benchmarks.firstChange&&this.chartsService.fetchBenchmarksData(this.benchmarks,this.startDate).subscribe(o=>{this.benchmarkData=o,this.updateChart()}),t.windowDays&&this.dataService.fetchPortfolioSeries(this.portfolio.id).subscribe(o=>{this.portfolioSeries=(0,st.b)(o.map(r=>({dateTime:r[0],kurs:r[1]})),this.windowDays),this.maxValue=Math.max(...this.portfolioSeries.map(([r,l])=>l));const i=this.portfolioSeries.find(([r,l])=>l===this.maxValue);this.maxValueDate=i?i[0]:0,this.updateChart()})}updateChart(){this.seriesAreaOptions=this.assembleAreaOptions(),this._cdr.markForCheck()}assembleAreaOptions(){const t=[{name:"Volatilit\xE4t",data:this.portfolioSeries,type:"areaspline"}];return this.startDate=(0,h.fX)(t),{series:[...t,...this.assembleBenchmarkLineSeries()]}}assembleBenchmarkLineSeries(){return this.benchmarkData.map(t=>{const o=this.benchmarks.find(l=>l.id===t.id),i=Array.isArray(t.data)?t.data:t.data.trinav,r=o.description?` (${o.description})`:"";return{id:o.id,type:"line",data:(0,st.b)(i.map(l=>({dateTime:l[0],kurs:l[1]})),this.windowDays).filter(l=>l[0]>=this.startDate),name:`Benchmark: ${o.name}${r}`}})}static{this.\u0275fac=function(o){return new(o||n)(e.rXU(W.u),e.rXU(oe.u),e.rXU(e.gRc))}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-etf-rolling-volatility-chart"]],inputs:{defaultRangeAll:"defaultRangeAll",percentageMode:"percentageMode",portfolio:"portfolio",benchmarks:"benchmarks",windowDays:"windowDays"},features:[e.OA$],decls:1,vars:1,consts:[[4,"ngIf"],[1,"mb-3"],[3,"seriesOptions","withWatermark","withRangeSelector","percentageMode","onlyCompareItself","exportingTitle","defaultRangeAll",4,"ngIf"],[3,"seriesOptions","withWatermark","withRangeSelector","percentageMode","onlyCompareItself","exportingTitle","defaultRangeAll"]],template:function(o,i){1&o&&e.DNE(0,Ln,4,2,"ng-container",0),2&o&&e.Y8G("ngIf",i.isBrowser)},dependencies:[c.bT,_e.X],encapsulation:2,changeDetection:0})}}return n})();const $n=n=>({active:n});function yn(n,_){if(1&n){const t=e.RV6();e.j41(0,"button",14),e.bIt("click",function(){const i=e.eBV(t).$implicit,r=e.XpG();return e.Njj(r.windowDays=i.days)}),e.j41(1,"span"),e.EFF(2),e.k0s()()}if(2&n){const t=_.$implicit,o=e.XpG();e.Y8G("ngClass",e.eq3(2,$n,o.windowDays===t.days)),e.R7$(2),e.JRh(t.label)}}let at=(()=>{class n{constructor(){this.DEFAULT_BENCHMARKS=xe.bT,this.DEFAULT_WINDOW_ITEMS=[{label:"1M",days:30},{label:"3M",days:90},{label:"1J",days:365}],this.benchmarkInvestments=[],this.windowDays=30}setBenchmarks(t){this.benchmarkInvestments=t,this.benchmarkMode=this.benchmarkInvestments.length>0}static{this.\u0275fac=function(o){return new(o||n)}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-charts-rolling-volatility"]],inputs:{portfolio:"portfolio",isin:"isin"},decls:14,vars:8,consts:()=>{let t;return t=" Rollierende Volatilit\xE4t ",[t,[1,"card"],[1,"card-header"],[1,"card-title"],[1,"card-body","align-items-sm-center","justify-content-sm-between"],[1,"d-flex","flex-wrap","align-items-center","justify-content-between","mb-3"],[1,"chart-tabs"],["class","btn btn-outline-primary btn-sm btn-pre-icon",3,"ngClass","click",4,"ngFor","ngForOf"],[1,"portfolio-chart","mb-5"],[3,"portfolio","windowDays","benchmarks","percentageMode","defaultRangeAll"],[1,"row"],[1,"col-md-6","mt-3"],[1,"col-md-6"],[3,"benchmarks","inputId","defaultBenchmarks"],[1,"btn","btn-outline-primary","btn-sm","btn-pre-icon",3,"click","ngClass"]]},template:function(o,i){1&o&&(e.j41(0,"div",1)(1,"div",2)(2,"h2",3),e.pXf(3,0),e.k0s()(),e.j41(4,"div",4)(5,"div",5)(6,"div",6),e.DNE(7,yn,3,4,"button",7),e.k0s()(),e.j41(8,"div",8),e.nrm(9,"app-etf-rolling-volatility-chart",9),e.k0s(),e.j41(10,"div",10),e.nrm(11,"div",11),e.j41(12,"div",12)(13,"a
1pp-benchmark-selector",13),e.bIt("benchmarks",function(l){return i.setBenchmarks(l)}),e.k0s()()()()()),2&o&&(e.R7$(7),e.Y8G("ngForOf",i.DEFAULT_WINDOW_ITEMS),e.R7$(2),e.Y8G("portfolio",i.portfolio)("windowDays",i.windowDays)("benchmarks",i.benchmarkInvestments)("percentageMode",i.percentageEnabled)("defaultRangeAll",!0),e.R7$(4),e.Y8G("inputId","quote-tags-input")("defaultBenchmarks",i.DEFAULT_BENCHMARKS))},dependencies:[c.YU,c.Sq,Ge.G,_t],styles:[".portfolio-chart[_ngcontent-%COMP%]{height:600px}@media (max-height: 600px){.portfolio-chart[_ngcontent-%COMP%]{height:400px}}"],changeDetection:0})}}return n})();var lt=s(52664),vn=s(9351);function kn(n,_){if(1&n&&(e.j41(0,"div",12),e.nrm(1,"app-column-chart",13),e.k0s()),2&n){const t=e.XpG(2);e.R7$(),e.Y8G("seriesOptions",t.seriesOptions)("exportingTitle",t.exportingTitle)("exportingSubTitle",t.exportingSubtitle)("withWatermark",!0)("withRangeSelector",!0)}}function Bn(n,_){if(1&n){const t=e.RV6();e.j41(0,"div",3)(1,"div",4)(2,"h2",5),e.pXf(3,0),e.k0s()(),e.j41(4,"div",6)(5,"p"),e.PLo(6,1),e.nrm(7,"app-trend-label",7)(8,"app-trend-label",7),e.YFu(),e.k0s(),e.DNE(9,kn,2,5,"div",8),e.j41(10,"div",9)(11,"div",10)(12,"app-benchmark-selector",11),e.bIt("benchmarks",function(i){e.eBV(t);const r=e.XpG();return e.Njj(r.setBenchmarks(i))}),e.k0s()()()()()}if(2&n){const t=e.XpG();e.R7$(7),e.Y8G("value",t.maxReturn.value),e.R7$(),e.Y8G("value",t.minReturn.value),e.uP7(t.portfolio.name)(t.maxReturn.date)(t.minReturn.date),e.nnv(6),e.R7$(),e.Y8G("ngIf",t.seriesOptions),e.R7$(3),e.Y8G("inputId","returns-tags-input")("defaultBenchmarks",t.DEFAULT_BENCHMARKS)("benchmarkLimit",3)}}let ct=(()=>{class n{constructor(t,o,i){this.colorService=t,this.chartsService=o,this._cdr=i,this.DEFAULT_BENCHMARKS=xe.G$,this.benchmarkData=[],this.defaultCurrency=(0,e.WQX)(e.Ocv)}ngOnChanges(){this.perfFlattened=this.chartsService.flattenPortfolioPerf(this.portfolio),this.perfFlattened?.length?(this.minReturn=Object.assign({},this.perfFlattened?.reduce((t,o)=>t.value<o.value?t:o)),this.maxReturn=Object.assign({},this.perfFlattened?.reduce((t,o)=>t.value>o.value?t:o)),this.minReturn.date=(0,f.i$)(this.minReturn.date,"shortMonth"),this.maxReturn.date=(0,f.i$)(this.maxReturn.date,"shortMonth"),this.updateChart(),this.hasPerformance=!0):(this.minReturn=this.maxReturn=null,this.hasPerformance=!1)}updateChart(){this.setExportingTitles(),this.seriesOptions=this.assembleChartOptions(),this._cdr.markForCheck()}assembleChartOptions(){const t=[this.assembleMainSeries(),...this.assembleBenchmarkSeries()];return{legend:{enabled:this.benchmarkMode},xAxis:{type:"datetime",ordinal:!0,labels:{formatter(){return(0,f.i$)(this.value,"shortMonth")}}},yAxis:[{labels:{formatter(){return(0,f.jq)(this.value,0,""," %")}}}],colors:this.colorService.COMPARISON_CHART_PALETTE,tooltip:{shared:!0,formatter(){const o=`<span class="tp-date-label">${(0,f.i$)(this.x,"shortMonth")}</span>`;return`${this.points.map(r=>{const d=(0,f.jq)(r.point.y,2,r.point.y>0?"+":""," %");return`<span class="tp-point" style="color:${r.color}">\u25cf </span>\n<b>${r.series.name}: </b>\n<span class="tp-change-label arrow ${r.point.y>0?"plus":"minus down"}">${d}</span><br>`}).join("")}${o}`}},plotOptions:{column:{clip:!0,maxPointWidth:20}},series:(0,h.DQ)(t)}}assembleMainSeries(){const t=this.convertToSeriesRows(this.perfFlattened);return{type:"column",id:this.portfolio.id.toString(),name:this.benchmarkMode?this.portfolio.name:"Monatsrendite",data:t,color:this.benchmarkMode?null:this.colorService.GREEN_LIGHT,negativeColor:this.benchmarkMode?null:this.colorService.RED_LIGHT}}assembleBenchmarkSeries(){return this.benchmarkMode?this.benchmarkData.map((t,o)=>{const i=this.benchmarks.find(d=>d.id===t.id),r=Array.isArray(t.data)?t.data:t.data[this.defaultCurrency];return{type:"column",id:`bench-${i.id}`,name:`Benchmark: ${i.name}${i.description?` (${i.description})`:""}`,data:this.convertToSeriesRows(r),stack:i.id,color:this.colorService.COMPARISON_CHART_PALETTE[o+1]}}):[]}convertToSeriesRows(t){return t.map(o=>[Ne()(o.date).startOf("month").valueOf(),o.value])}setExportingTitles(){this.exportingTitle=`${this.portfolio.name}`,this.exportingSubtitle=`\nHier siehst du die monatliche Wertentwicklung f\xfcr das Portfolio ${this.portfolio.name}. Die h\xf6chste Monatsrendite\nerzielte das Portfolio mit ${(0,f.jq)(this.maxReturn.value,2,""," %")} im ${this.maxReturn.date}. Mit einem\nR\xfcckgang von ${(0,f.jq)(this.minReturn.value,2,""," %")} war ${this.minReturn.date} der schlechteste Monat.`}setBenchmarks(t){this.benchmarks=t,this.benchmarkMode=!!t?.length,this.chartsService.fetchColumnBenchmarksData(this.benchmarks).subscribe(o=>{this.benchmarkData=o,this.updateChart()})}static{this.\u0275fac=function(o){return new(o||n)(e.rXU(Ke.l),e.rXU(oe.u),e.rXU(e.gRc))}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-charts-container-returns"]],inputs:{portfolio:"portfolio"},features:[e.OA$],decls:1,vars:1,consts:()=>{let t,o;return t="Monatsrenditen",o=" Hier siehst du die monatliche Wertentwicklung f\xFCr das " + "\ufffd0\ufffd" + ". Die h\xF6chste Monatsrendite erzielte das Portfolio mit " + "\ufffd#7\ufffd" + "" + "[\ufffd/#7\ufffd|\ufffd/#8\ufffd]" + " im " + "\ufffd1\ufffd" + ". Mit einem R\xFCckgang von " + "\ufffd#8\ufffd" + "" + "[\ufffd/#7\ufffd|\ufffd/#8\ufffd]" + " war " + "\ufffd2\ufffd" + " der schlechteste Monat. ",o=e.k04(o),[t,o,["class","card",4,"ngIf"],[1,"card"],[1,"card-header"],[1,"card-title"],[1,"card-body"],[3,"value"],["class","mt-3",4,"ngIf"],[1,"row"],[1,"offset-md-6","col-md-6"],[3,"benchmarks","inputId","defaultBenchmarks","benchmarkLimit"],[1,"mt-3"],[3,"seriesOptions","exportingTitle","exportingSubTitle","withWatermark","withRangeSelector"]]},template:function(o,i){1&o&&e.DNE(0,Bn,13,9,"div",2),2&o&&e.Y8G("ngIf",i.hasPerformance)},dependencies:[c.bT,lt.w,Ge.G,vn.$],encapsulation:2,changeDetection:0})}}return n})();var be=s(31801),Le=s(35458);const Dn=()=>["es","it","fr"],xn=n=>["/etf-profile",n];function Yn(n,_){if(1&n&&(e.j41(0,"tr")(1,"td")(2,"a",63),e.EFF(3),e.k0s()(),e.j41(4,"td"),e.EFF(5),e.k0s(),e.j41(6,"td",64),e.EFF(7),e.nI1(8,"dashIfEmpty"),e.k0s(),e.j41(9,"td"),e.EFF(10),e.nI1(11,"number"),e.nI1(12,"dashIfEmpty"),e.k0s()()),2&n){const t=_.$implicit;e.R7$(2),e.Y8G("routerLink",e.eq3(11,xn,t.isin)),e.R7$(),e.JRh(t.fondname),e.R7$(2),e.JRh(t.wkn),e.R7$(2),e.JRh(e.bMT(8,5,t.period)),e.R7$(3),e.JRh(e.bMT(12,9,e.bMT(11,7,t.minIxlm)))}}function Gn(n,_){if(1&n&&(e.j41(0,"div",54)(1,"div",55)(2,"h3",56),e.pXf(3,13),e.k0s()(),e.j41(4,"div",57)(5,"p"),e.pXf(6,14),e.k0s(),e.j41(7,"table",58)(8,"thead")(9,"tr")(10,"th",59),e.pXf(11,15),e.k0s(),e.j41(12,"th",59),e.pXf(13,16),e.k0s(),e.j41(14,"th",59),e.pXf(15,17),e.k0s(),e.j41(16,"th",59),e.pXf(17,18),e.k0s()()(),e.j41(18,"tbody"),e.DNE(19,Yn,13,13,"tr",61),e.k0s()(),e.j41(20,"p",62),e.pXf(21,19),e.k0s()()()),2&n){const t=e.XpG(2);e.R7$(19),e.Y8G("ngForOf",t.ixmls)}}function Xn(n,_){if(1&n&&(e.qex(0),e.DNE(1,Gn,22,1,"div",60),e.bVm()),2&n){const t=e.XpG();e.R7$(),e.Y8G("ngIf",null==t.ixmls?null:t.ixmls.length)}}function Vn(n,_){if(1&n&&(e.j41(0,"div",54)(1,"div",55)(2,"h3",56),e.pXf(3,20),e.k0s()(),e.j41(4,"div",57)(5,"p",65),e.pXf(6,21),e.k0s(),e.nrm(7,"app-greyscale",66),e.k0s()()),2&n){const t=e.XpG();e.R7$(6),e.uP7(t.portfolio.name),e.nnv(6),e.R7$(),e.Y8G("greyscaleValues",t.portfolio.ms_style)("isStock",!0)}}function wn(n,_){if(1&n&&(e.j41(0,"div",54)(1,"div",55)(2,"h3",56),e.pXf(3,22),e.k0s()(),e.j41(4,"div",57)(5,"p",65),e.pXf(6,23),e.k0s(),e.nrm(7,"app-greyscale",67),e.k0s()()),2&n){const t=e.XpG();e.R7$(6),e.uP7(t.portfolio.name),e.nnv(6),e.R7$(),e.Y8G("greyscaleValues",t.portfolio.ms_style)}
1}function jn(n,_){if(1&n&&(e.j41(0,"div",54)(1,"div",55)(2,"h3",56),e.pXf(3,24),e.k0s()(),e.j41(4,"div",57)(5,"p"),e.pXf(6,25),e.k0s(),e.j41(7,"table",58)(8,"tbody")(9,"tr")(10,"th"),e.pXf(11,26),e.k0s(),e.j41(12,"td"),e.EFF(13),e.nI1(14,"customPercentage"),e.k0s()(),e.j41(15,"tr")(16,"th"),e.pXf(17,27),e.k0s(),e.j41(18,"td"),e.EFF(19),e.nI1(20,"customPercentage"),e.k0s()(),e.j41(21,"tr")(22,"th"),e.pXf(23,28),e.k0s(),e.j41(24,"td"),e.EFF(25),e.nI1(26,"customPercentage"),e.k0s()(),e.j41(27,"tr")(28,"th"),e.pXf(29,29),e.k0s(),e.j41(30,"td"),e.EFF(31),e.nI1(32,"customPercentage"),e.k0s()(),e.j41(33,"tr")(34,"th"),e.pXf(35,30),e.k0s(),e.j41(36,"td"),e.EFF(37),e.nI1(38,"customPercentage"),e.k0s()()()()()()),2&n){const t=e.XpG();e.R7$(6),e.uP7(t.portfolio.name),e.nnv(6),e.R7$(7),e.JRh(e.bMT(14,6,t.portfolio.market.giant)),e.R7$(6),e.JRh(e.bMT(20,8,t.portfolio.market.large)),e.R7$(6),e.JRh(e.bMT(26,10,t.portfolio.market.medium)),e.R7$(6),e.JRh(e.bMT(32,12,t.portfolio.market.small)),e.R7$(6),e.JRh(e.bMT(38,14,t.portfolio.market.micro))}}function zn(n,_){if(1&n&&(e.j41(0,"div",54)(1,"div",55)(2,"h3",56),e.pXf(3,31),e.k0s()(),e.j41(4,"div",57)(5,"p"),e.pXf(6,32),e.k0s(),e.j41(7,"table",58)(8,"tbody")(9,"tr")(10,"th"),e.pXf(11,33),e.k0s(),e.j41(12,"td"),e.EFF(13),e.nI1(14,"customPercentage"),e.k0s()(),e.j41(15,"tr")(16,"th"),e.pXf(17,34),e.k0s(),e.j41(18,"td"),e.EFF(19),e.nI1(20,"customPercentage"),e.k0s()(),e.j41(21,"tr")(22,"th"),e.pXf(23,35),e.k0s(),e.j41(24,"td"),e.EFF(25),e.nI1(26,"customPercentage"),e.k0s()(),e.j41(27,"tr")(28,"th"),e.pXf(29,36),e.k0s(),e.j41(30,"td"),e.EFF(31),e.nI1(32,"customPercentage"),e.k0s()(),e.j41(33,"tr")(34,"th"),e.pXf(35,37),e.k0s(),e.j41(36,"td"),e.EFF(37),e.nI1(38,"customPercentage"),e.k0s()(),e.j41(39,"tr")(40,"th"),e.pXf(41,38),e.k0s(),e.j41(42,"td"),e.EFF(43),e.nI1(44,"customPercentage"),e.k0s()(),e.j41(45,"tr")(46,"th"),e.pXf(47,39),e.k0s(),e.j41(48,"td"),e.EFF(49),e.nI1(50,"customPercentage"),e.k0s()(),e.j41(51,"tr")(52,"th"),e.pXf(53,40),e.k0s(),e.j41(54,"td"),e.EFF(55),e.nI1(56,"customPercentage"),e.k0s()()()()()()),2&n){const t=e.XpG();e.R7$(6),e.uP7(t.portfolio.name),e.nnv(6),e.R7$(7),e.JRh(e.bMT(14,9,t.portfolio.market.bond_credit_rating_AAA)),e.R7$(6),e.JRh(e.bMT(20,11,t.portfolio.market.bond_credit_rating_AA)),e.R7$(6),e.JRh(e.bMT(26,13,t.portfolio.market.bond_credit_rating_A)),e.R7$(6),e.JRh(e.bMT(32,15,t.portfolio.market.bond_credit_rating_BBB)),e.R7$(6),e.JRh(e.bMT(38,17,t.portfolio.market.bond_credit_rating_BB)),e.R7$(6),e.JRh(e.bMT(44,19,t.portfolio.market.bond_credit_rating_B)),e.R7$(6),e.JRh(e.bMT(50,21,t.portfolio.market.bond_credit_rating_below_B)),e.R7$(6),e.JRh(e.bMT(56,23,t.portfolio.market.bond_credit_rating_not_rated))}}function Un(n,_){if(1&n&&(e.j41(0,"div",54)(1,"div",55)(2,"h3",56),e.pXf(3,41),e.k0s()(),e.j41(4,"div",57)(5,"p"),e.pXf(6,42),e.k0s(),e.j41(7,"table",58)(8,"tbody")(9,"tr")(10,"th"),e.pXf(11,43),e.k0s(),e.j41(12,"td"),e.EFF(13),e.nI1(14,"customPercentage"),e.k0s()(),e.j41(15,"tr")(16,"th"),e.pXf(17,44),e.k0s(),e.j41(18,"td"),e.EFF(19),e.nI1(20,"customPercentage"),e.k0s()(),e.j41(21,"tr")(22,"th"),e.pXf(23,45),e.k0s(),e.j41(24,"td"),e.EFF(25),e.nI1(26,"customPercentage"),e.k0s()(),e.j41(27,"tr")(28,"th"),e.pXf(29,46),e.k0s(),e.j41(30,"td"),e.EFF(31),e.nI1(32,"customPercentage"),e.k0s()(),e.j41(33,"tr")(34,"th"),e.pXf(35,47),e.k0s(),e.j41(36,"td"),e.EFF(37),e.nI1(38,"customPercentage"),e.k0s()(),e.j41(39,"tr")(40,"th"),e.pXf(41,48),e.k0s(),e.j41(42,"td"),e.EFF(43),e.nI1(44,"customPercentage"),e.k0s()(),e.j41(45,"tr")(46,"th"),e.pXf(47,49),e.k0s(),e.j41(48,"td"),e.EFF(49),e.nI1(50,"customPercentage"),e.k0s()(),e.j41(51,"tr")(52,"th"),e.pXf(53,50),e.k0s(),e.j41(54,"td"),e.EFF(55),e.nI1(56,"customPercentage"),e.k0s()()()()()()),2&n){const t=e.XpG();e.R7$(6),e.uP7(t.portfolio.name),e.nnv(6),e.R7$(7),e.JRh(e.bMT(14,9,t.portfolio.market.bond_maturity_1_to_3_years)),e.R7$(6),e.JRh(e.bMT(20,11,t.portfolio.market.bond_maturity_3_to_5_years)),e.R7$(6),e.JRh(e.bMT(26,13,t.portfolio.market.bond_maturity_5_to_7_years)),e.R7$(6),e.JRh(e.bMT(32,15,t.portfolio.market.bond_maturity_7_to_10_years)),e.R7$(6),e.JRh(e.bMT(38,17,t.portfolio.market.bond_maturity_10_to_15_years)),e.R7$(6),e.JRh(e.bMT(44,19,t.portfolio.market.bond_maturity_15_to_20_years)),e.R7$(6),e.JRh(e.bMT(50,21,t.portfolio.market.bond_maturity_20_to_30_years)),e.R7$(6),e.JRh(e.bMT(56,23,t.portfolio.market.bond_maturity_over_30_years))}}let dt=(()=>{class n{constructor(){this.CURRENT_YEAR=(0,f.hk)()}ngOnChanges(){this.hasMarketCap=(0,be.VG)(this.portfolio.market),this.hasCreditStructure=(0,be.Lw)(this.portfolio.market),this.hasTermStructure=(0,be.O1)(this.portfolio.market),this.hasStockGreyscale=(0,be.kU)(this.portfolio.ms_style),this.hasBondGreyscale=(0,be.z9)(this.portfolio.ms_style);const t=Object.values(this.portfolio.etf_info);this.ixmls=(0,be.oV)(t)}static{this.\u0275fac=function(o){return new(o||n)}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-tab-analyse"]],inputs:{portfolio:"portfolio"},features:[e.OA$],decls:87,vars:36,consts:()=>{let t,o,i,r,l,d,T,L,F,E,y,H,Z,J,q,A,me,pe,Te,M,K,O,jt,zt,Ut,Wt,Ht,Jt,Kt,Qt,Zt,qt,en,tn,nn,on,rn,sn,_n,an,ln,cn,dn,fn,pn,Tn,un,On,gn,En,hn;return t="Portfolio Kennzahlen",o="Hier findest du wichtige Kennzahlen zum Musterportfolio " + "\ufffd0\ufffd" + ".",i="Allgemein",r="Anzahl ETFs",l="Portfoliokosten (TER)",d="Prognose Aussch\xFCttung p.a.",T="Aktienstatistiken",L="Kurs-Gewinn-Verh\xE4ltnis (KGV)",F="Kurs-Buchwert-Verh\xE4ltnis (KBV)",E="Anleihenstatistiken",y="Durchschn. Duration",H="Durchschn. Bonit\xE4t",Z="Durchschn. Kupon",J="iXLM im Handelsverlauf",q="Wir empfehlen die ETFs aus diesem Musterportfolio zu folgenden Uhrzeiten an der B\xF6rse zu handeln.",A="ETF-Name",me="WKN",pe="Uhrzeit",Te="iXLM",M=" Die Deutsche B\xF6rse unterteilt zur Berechnung des iXLM den Handelstag in halbst\xFCndige Intervalle und ermittelt r\xFCckwirkend das iXLM. Je geringer das iXLM, desto geringer sind die impliziten Handelskosten. ",K="Aktien-Anlagestil",O=" Die extraETF Anlagestil Box ist ein h\xF6chst n\xFCtzliches Instrument f\xFCr die Portfoliokonstruktion. Die Box klassifiziert das Musterportfolio " + "\ufffd0\ufffd" + " entlang der vertikalen Achse nach der Marktkapitalisierung und entlang der horizontalen Achse nach Substanz- und Wachstumsmerkmalen. ",jt="Anleihen-Anlagestil",zt=" Die extraETF Anlagestil Box ist ein h\xF6chst n\xFCtzliches Instrument f\xFCr die Portfoliokonstruktion. Die Box klassifiziert das Musterportfolio " + "\ufffd0\ufffd" + " entlang der vertikalen Achse nach der Bonit\xE4t und entlang der horizontalen Achse nach der Zinssensibilit\xE4t. ",Ut="Marktkapitalisierung",Wt=" Hier siehst du die prozentuale Aufteilung des Musterportfolios " + "\ufffd0\ufffd" + " nach Mar
1ktkapitalisierung. Die Marktkapitalisierung spiegelt den aktuellen B\xF6rsenwert eines b\xF6rsennotierten Unternehmens wider. ",Ht="Sehr Gro\xDF",Jt="Gro\xDF",Kt="Mittelgro\xDF",Qt="Klein",Zt="Micro",qt="Bonit\xE4tsstruktur",en=" Hier siehst du die prozentuale Aufteilung der Bonit\xE4tsstruktur der enthaltenen Anleihen im Musterportfolio " + "\ufffd0\ufffd" + ". Je schlechter das Rating der Bonit\xE4t, desto h\xF6her das Risiko einer Zahlungsunf\xE4higkeit des entsprechenden Emittenten. Das Bonit\xE4tsrisiko spielt eine umso gr\xF6\xDFere Rolle, je l\xE4nger die Laufzeit der betreffenden Anleihen w\xE4hrt. ",tn="AAA",nn="AA",on="A",rn="BBB",sn="BB",_n="B",an="Unter B",ln="Nicht klassifiziert",cn="Laufzeitstruktur",dn=" Hier findest du die prozentuale Aufteilung der Laufzeitstruktur der enthaltenen Anleihen im Musterportfolio " + "\ufffd0\ufffd" + ". ",fn="1 bis 3 Jahre",pn="3 bis 5 Jahre",Tn="5 bis 7 Jahre",un="7 bis 10 Jahre",On="10 bis 15 Jahre",gn="15 bis 20 Jahre",En="20 bis 30 Jahre",hn="\xDCber 30 Jahre",[t,o,i,r,l,d,T,L,F,E,y,H,Z,J,q,A,me,pe,Te,M,K,O,jt,zt,Ut,Wt,Ht,Jt,Kt,Qt,Zt,qt,en,tn,nn,on,rn,sn,_n,an,ln,cn,dn,fn,pn,Tn,un,On,gn,En,hn,[1,"d-none"],[1,"card-columns"],[4,"xetfLocaleHidden"],[1,"card"],[1,"card-header"],[1,"card-title"],[1,"card-body"],[1,"table","last-column-end"],[1,"fw-bold"],["class","card",4,"ngIf"],[4,"ngFor","ngForOf"],[1,"pt-3"],[3,"routerLink"],[1,"nowrap"],[1,"mb-3"],[3,"greyscaleValues","isStock"],[3,"greyscaleValues"]]},template:function(o,i){1&o&&(e.j41(0,"h2",51),e.EFF(1,"Portfolio- und Risikokennzahlen, Anlagestil, Marktkapitalisierung"),e.k0s(),e.j41(2,"div",52),e.DNE(3,Xn,2,1,"ng-container",53),e.j41(4,"div",54)(5,"div",55)(6,"h3",56),e.pXf(7,0),e.k0s()(),e.j41(8,"div",57)(9,"p"),e.pXf(10,1),e.k0s(),e.j41(11,"table",58)(12,"thead")(13,"tr")(14,"th",59),e.pXf(15,2),e.k0s(),e.nrm(16,"th"),e.k0s()(),e.j41(17,"tbody")(18,"tr")(19,"th"),e.pXf(20,3),e.k0s(),e.j41(21,"td"),e.EFF(22),e.nI1(23,"number"),e.k0s()(),e.j41(24,"tr")(25,"th"),e.pXf(26,4),e.k0s(),e.j41(27,"td"),e.EFF(28),e.nI1(29,"customPercentage"),e.k0s()(),e.j41(30,"tr")(31,"th"),e.pXf(32,5),e.k0s(),e.j41(33,"td"),e.EFF(34),e.nI1(35,"customPercentage"),e.k0s()()(),e.nrm(36,"br"),e.k0s(),e.j41(37,"table",58)(38,"thead")(39,"tr")(40,"th",59),e.pXf(41,6),e.k0s(),e.nrm(42,"th"),e.k0s()(),e.j41(43,"tbody")(44,"tr")(45,"th"),e.pXf(46,7),e.k0s(),e.j41(47,"td"),e.EFF(48),e.nI1(49,"decimalNew"),e.k0s()(),e.j41(50,"tr")(51,"th"),e.pXf(52,8),e.k0s(),e.j41(53,"td"),e.EFF(54),e.nI1(55,"decimalNew"),e.k0s()()(),e.nrm(56,"br"),e.k0s(),e.j41(57,"table",58)(58,"thead")(59,"tr")(60,"th",59),e.pXf(61,9),e.k0s(),e.nrm(62,"th"),e.k0s()(),e.j41(63,"tbody")(64,"tr")(65,"th"),e.pXf(66,10),e.k0s(),e.j41(67,"td"),e.EFF(68),e.nI1(69,"decimalNew"),e.k0s()(),e.j41(70,"tr")(71,"th"),e.pXf(72,11),e.k0s(),e.j41(73,"td"),e.EFF(74),e.nI1(75,"dashIfEmpty"),e.k0s()(),e.j41(76,"tr")(77,"th"),e.pXf(78,12),e.k0s(),e.j41(79,"td"),e.EFF(80),e.nI1(81,"decimalNew"),e.k0s()()()()()(),e.DNE(82,Vn,8,3,"div",60)(83,wn,8,2,"div",60)(84,jn,39,16,"div",60)(85,zn,57,25,"div",60)(86,Un,57,25,"div",60),e.k0s()),2&o&&(e.R7$(3),e.Y8G("xetfLocaleHidden",e.lJ4(35,Dn)),e.R7$(7),e.uP7(i.portfolio.name),e.nnv(10),e.R7$(12),e.JRh(e.bMT(23,15,i.portfolio.portfolio_anzahl_etfs)),e.R7$(6),e.JRh(e.bMT(29,17,i.portfolio.portfolio_ter)),e.R7$(6),e.JRh(e.bMT(35,19,i.portfolio.yield_distribution_current_year)),e.R7$(14),e.JRh(e.i5U(49,21,i.portfolio.kgv,2)),e.R7$(6),e.JRh(e.i5U(55,24,i.portfolio.kbv,2)),e.R7$(14),e.JRh(e.i5U(69,27,i.portfolio.bond_eff_duration,2)),e.R7$(6),e.JRh(e.bMT(75,30,i.portfolio.bond_avg_credit_quality)),e.R7$(6),e.JRh(e.i5U(81,32,i.portfolio.bond_avg_coupon,2)),e.R7$(2),e.Y8G("ngIf",i.hasStockGreyscale),e.R7$(),e.Y8G("ngIf",i.hasBondGreyscale),e.R7$(),e.Y8G("ngIf",i.hasMarketCap),e.R7$(),e.Y8G("ngIf",i.hasCreditStructure),e.R7$(),e.Y8G("ngIf",i.hasTermStructure))},dependencies:[p.Wk,c.Sq,c.bT,nt.k,Le.r,g.hD,g.gw,g.b3,c.QX],encapsulation:2,changeDetection:0})}}return n})();var ft=s(90071);function Wn(n,_){if(1&n&&(e.j41(0,"tr")(1,"td"),e.EFF(2),e.k0s(),e.j41(3,"td"),e.EFF(4),e.nI1(5,"customPercentage"),e.k0s()()),2&n){const t=_.$implicit;e.R7$(2),e.JRh(t.key),e.R7$(2),e.JRh(e.bMT(5,2,t.value))}}let pt=(()=>
1{class n{constructor(){this.portfolio=(0,e.hFB)(),this.tabTexts=(0,e.EWP)(()=>({topAssets:{title:"Gr\xF6\xDFte Positionen",description:"Hier siehst du die gr\xF6\xDFten Positionen des Musterportfolios " + this.portfolio().name + "."},regions:{title:"Regionen",description:"Das Musterportfolio " + this.portfolio().name + " setzt sich aus diesen Regionen zusammen."},branches:{title:"Branchen",description:"Das Musterportfolio " + this.portfolio().name + " setzt sich aus diesen Branchen bzw. Sektoren zusammen."}}))}ngOnChanges(){this.shareByAssetClass=Object.entries(this.portfolio().portfolio_anteil_anlageklasse).map(t=>({key:t[0],value:t[1]})).sort((t,o)=>o.value-t.value),this.topAssets=le.getTopAssets(this.portfolio()),this.topRegions=le.getTopRegions(this.portfolio()),this.topBranches=le.getTopBranches(this.portfolio())}static{this.\u0275fac=function(o){return new(o||n)}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-tab-components"]],inputs:{portfolio:[1,"portfolio"]},features:[e.OA$],decls:24,vars:17,consts:()=>{let t,o,i,r;return t="Verteilung der Assetklassen",o=" In diese Assetklassen investiert das Musterportfolio " + "\ufffd0\ufffd" + ". ",i="Assetklasse",r="Gewichtung",[t,o,i,r,[1,"card-columns"],[1,"card"],[1,"card-header"],[1,"card-title"],[1,"card-body"],[1,"row"],[1,"col-lg-6"],[3,"portfolio","type"],[1,"table","last-column-end"],[1,"fw-bold"],[4,"ngFor","ngForOf"],[3,"title","description","data","type","expandLimit"],[3,"title","description","data","type"]]},template:function(o,i){1&o&&(e.j41(0,"div",4)(1,"div",5)(2,"div",6)(3,"h3",7),e.pXf(4,0),e.k0s()(),e.j41(5,"div",8)(6,"p"),e.pXf(7,1),e.k0s(),e.j41(8,"div",9)(9,"div",10),e.nrm(10,"app-etf-portfolio-pie-chart",11),e.k0s(),e.j41(11,"div",10)(12,"table",12)(13,"thead")(14,"tr")(15,"th",13),e.pXf(16,2),e.k0s(),e.j41(17,"th",13),e.pXf(18,3),e.k0s()()(),e.j41(19,"tbody"),e.DNE(20,Wn,6,4,"tr",14),e.k0s()()()()()(),e.nrm(21,"app-top-data-table",15)(22,"app-top-data-table",16)(23,"app-top-data-table",16),e.k0s()),2&o&&(e.R7$(7),e.uP7(i.portfolio().name),e.nnv(7),e.R7$(3),e.Y8G("portfolio",i.portfolio())("type","assets"),e.R7$(10),e.Y8G("ngForOf",i.shareByAssetClass),e.R7$(),e.Y8G("title",i.tabTexts().topAssets.title)("description",i.tabTexts().topAssets.description)("data",i.topAssets)("type","company")("expandLimit",10),e.R7$(),e.Y8G("title",i.tabTexts().regions.title)("description",i.tabTexts().regions.description)("data",i.topRegions)("type","region"),e.R7$(),e.Y8G("title",i.tabTexts().branches.title)("description",i.tabTexts().branches.description)("data",i.topBranches)("type","branch"))},dependencies:[c.Sq,ft.B,We,g.b3],encapsulation:2,changeDetection:0})}}return n})();function Hn(n,_){if(1&n&&e.nrm(0,"app-etf-portfolio-map",11),2&n){const t=e.XpG();e.Y8G("portfolio",t.portfolio())}}let Tt=(()=>{class n{constructor(){this.isBrowser=(0,e.WQX)($.T).isBrowser,this.portfolio=(0,e.hFB
1)(),this.topDataTableText=(0,e.EWP)(()=>({title:"L\xE4nder-Allokation",description:"In diese L\xE4nder investiert der das Musterportfolio " + this.portfolio().name + "."}))}ngOnChanges(){this.topCountries=le.getTopCountries(this.portfolio())}static{this.\u0275fac=function(o){return new(o||n)}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-tab-coverage"]],inputs:{portfolio:[1,"portfolio"]},features:[e.OA$],decls:12,vars:6,consts:()=>{let t;return t="Weltkarte",[t,[1,"d-none"],[1,"row"],[1,"col-xl-8"],[1,"card"],[1,"card-header"],[1,"card-title"],[1,"card-body"],[3,"portfolio",4,"ngIf"],[1,"col-xl-4"],[3,"title","description","data","type","expandLimit"],[3,"portfolio"]]},template:function(o,i){1&o&&(e.j41(0,"h2",1),e.EFF(1,"Weltkarte, L\xe4nder-Allokation"),e.k0s(),e.j41(2,"div",2)(3,"div",3)(4,"div",4)(5,"div",5)(6,"h3",6),e.pXf(7,0),e.k0s()(),e.j41(8,"div",7),e.DNE(9,Hn,1,1,"app-etf-portfolio-map",8),e.k0s()()(),e.j41(10,"div",9),e.nrm(11,"app-top-data-table",10),e.k0s()()),2&o&&(e.R7$(9),e.Y8G("ngIf",i.isBrowser),e.R7$(2),e.Y8G("title",i.topDataTableText().title)("description",i.topDataTableText().description)("data",i.topCountries)("type","country")("expandLimit",10))},dependencies:[c.bT,ft.B,ae],encapsulation:2,changeDetection:0})}}return n})();var Jn=s(53312);const Xe=n=>({active:n});function Kn(n,_){if(1&n){const t=e.RV6();e.j41(0,"a",26),e.bIt("click",function(){e.eBV(t);const i=e.XpG(2);return e.Njj(i.changeTab("\xdcberblick"))}),e.pXf(1,4),e.k0s()}if(2&n){const t=e.XpG(2);e.Y8G("ngClass",e.eq3(1,Xe,"\xdcberblick"===t.tabActive))}}function Qn(n,_){if(1&n){const t=e.RV6();e.j41(0,"a",26),e.bIt("click",function(){e.eBV(t);const i=e.XpG(2);return e.Njj(i.changeTab("Alle"))}),e.pXf(1,5),e.k0s()}if(2&n){const t=e.XpG(2);e.Y8G("ngClass",e.eq3(1,Xe,"Alle"===t.tabActive))}}function Zn(n,_){if(1&n){const t=e.RV6();e.j41(0,"a",27),e.bIt("click",function(){e.eBV(t);const i=e.XpG().$implicit,r=e.XpG();return e.Njj(r.changeTab(i))}),e.EFF(1),e.k0s()}if(2&n){const t=e.XpG().$implicit,o=e.XpG();e.Y8G("ngClass",e.eq3(2,Xe,o.tabActive===t)),e.R7$(),e.SpI(" ",t," ")}}function qn(n,_){if(1&n&&(e.j41(0,"li",23),e.DNE(1,Kn,2,3,"a",24)(2,Qn,2,3,"a",24)(3,Zn,2,4,"a",25),e.k0s()),2&n){const t=_.$implicit;e.R7$(),e.vxM("\xdcberblick"===t?1:"Alle"===t?2:3)}}function eo(n,_){1&n&&(e.j41(0,"span"),e.EFF(1," (YTD)"),e.k0s())}function to(n,_){if(1&n&&(e.j41(0,"tr")(1,"td"),e.EFF(2),e.DNE(3,eo,2,0,"span",37),e.k0s(),e.j41(4,"td"),e.EFF(5),e.nI1(6,"currencyNew"),e.k0s(),e.nrm(7,"td",38),e.nI1(8,"labeledPercentage"),e.k0s()),2&n){const t=_.$implicit,o=_.first,i=e.XpG(3);e.R7$(2),e.SpI(" ",t," "),e.R7$(),e.Y8G("ngIf",o),e.R7$(2),e.SpI(" ",e.bMT(6,4,null==i.distributions[t]?null:i.distributions[t].total)," "),e.R7$(2),e.Y8G("innerHTML",e.ii3(8,6,(null==i.distributions[t]?null:i.distributions[t].totalYield)||void 0,"","",!0),e.npT)}}function no(n,_){if(1&n&&(e.qex(0),e.j41(1,"div",30)(2,"table",31)(3,"thead")(4,"tr",32)(5,"th",33),e.pXf(6,6),e.k0s(),e.j41(7,"th",34),e.pXf(8,7),e.k0s(),e.j41(9,"th",35),e.pXf(10,8),e.k0s()()(),e.j41(11,"tbody"),e.DNE(12,to,9,11,"tr",36),e.k0s()()(),e.bVm()),2&n){const t=e.XpG(2);e.R7$(12),e.Y8G("ngForOf",t.years)}}function oo(n,_){if(1&n&&(e.j41(0,"tr")(1,"td"),e.EFF(2),e.k0s(),e.j41(3,"td"),e.EFF(4),e.k0s(),e.j41(5,"td"),e.EFF(6),e.nI1(7,"currencyNew"),e.k0s()()),2&n){const t=_.$implicit;e.R7$(2),e.JRh(t.dateFormatted),e.R7$(2),e.JRh(t.name),e.R7$(2),e.JRh(e.bMT(7,3,t.value))}}function io(n,_){if(1&n&&(e.qex(0),e.DNE(1,oo,8,5,"tr",36),e.bVm()),2&n){const t=e.XpG().$implicit,o=e.XpG(4);e.R7$(),e.Y8G("ngForOf",o.distributionsFlatten[t])}}function ro(n,_){if(1&n&&(e.qex(0),e.DNE(1,io,2,1,"ng-container",37),e.bVm()),2&n){const t=_.$implicit,o=e.XpG(4);e.R7$(),e.Y8G("ngIf",null==o.distributionsFlatten[t]?null:o.distributionsFlatten[t].length)}}function so(n,_){if(1&n&&(e.qex(0),e.j41(1,"div",30)(2,"table",31)(3,"thead")(4,"tr")(5,"th"),e.pXf(6,9),e.k0s(),e.j41(7,"th"),e.pXf(8,10),e.k0s(),e.j41(9,"th"),e.pXf(10,11),e.k0s()()(),e.j41(11,"tbody"),e.DNE(12,ro,2,1,"ng-container",36),e.k0s()()(),e.bVm()),2&n){const t=e.XpG(3);e.R7$(12),e.Y8G("ngForOf",t.years.slice().reverse())}}function _o(n,_){if(1&n&&e.DNE(0,so,13,1,"ng-container",29),2&n){const t=e.XpG().$implicit,o=e.sdS(5);e.Y8G("ngIf","Alle"===t)("ngIfElse",o)}}function ao(n,_){if(1&n&&(e.j41(0,"tr")(1,"td"),e.EFF(2),e.k0s(),e.j41(3,"td"),e.EFF(4),e.k0s(),e.j41(5,"td"),e.EFF(6),e.nI1(7,"currencyNew"),e.k0s()()),2&n){const t=_.$implicit;e.R7$(2),e.JRh(t.dateFormatted),e.R7$(2),e.JRh(t.name),e.R7$(2),e.JRh(e.bMT(7,3,t.value))}}function lo(n,_){if(1&n&&(e.qex(0),e.DNE(1,ao,8,5,"tr",36),e.bVm()),2&n){const t=e.XpG(2).$implicit,o=e.XpG();e.R7$(),e.Y8G("ngForOf",o.distributionsFlatten[t])}}function co(n,_){if(1&n&&(e.j41(0,"div",30)(1,"table",39)(2,"thead")(3,"tr")(4,"th"),e.pXf(5,12),e.k0s(),e.j41(6,"th"),e.pXf(7,13),e.k0s(),e.j41(8,"th"),e.pXf(9,14),e.k0s()()(),e.j41(10,"tbody"),e.DNE(11,lo,2,1,"ng-container",29),e.j41(12,"tr",40)(13,"td",41),e.pXf(14,15),e.k0s(),e.j41(15,"td"),e.EFF(16),e.nI1(17,"currencyNew"),e.k0s()(),e.j41(18,"tr")(19,"td",41),e.pXf(20,16),e.k0s(),e.nrm(21,"td",42),e.nI1(22,"labeledPercentage"),e.k0s()()()()),2&n){const t=e.XpG().$implicit,o=e.XpG(),i=e.sdS(5),r=e.sdS(7);e.R7$(11),e.Y8G("ngIf",null==o.distributionsFlatten[t]?null:o.distributionsFlatten[t].length)("ngIfElse",t===o.CURRENT_YEAR.toString()?i:r),e.R7$(5),e.JRh(e.bMT(17,4,null==o.distributions[t]?null:o.distributions[t].total)),e.R7$(5),e.Y8G("innerHTML",e.bMT(22,6,null==o.distributions[t]?null:o.distributions[t].totalYield),e.npT)}}function fo(n,_){if(1&n&&(e.j41(0,"div",28),e.DNE(1,no,13,1,"ng-container",29)(2,_o,1,2,"ng-template",null,2,e.C5r)(4,co,23,8,"ng-template",null,3,e.C5r),e.k0s()),2&n){const t=_.$implicit,o=e.sdS(3),i=e.XpG();e.Y8G("ngClass",e.eq3(3,Xe,i.tabActive===t)),e.R7$(),e.Y8G("ngIf","\xdcberblick"===t)("ngIfElse",o)}}function po(n,_){1&n&&(e.j41(0,"tr")(1,"td",43),e.pXf(2,17),e.k0s()())}function To(n,_){1&n&&(e.j41(0,"tr")(1,"td",43),e.pXf(2,18),e.k0s()())}let ut=(()=>{class n{constructor(){this.CURRENT_YEAR=(0,f.hk)(),this.distributionsFlatten={}}ngOnChanges(t){if(t?.distributions){const o={};
1Object.entries(this.distributions).forEach(i=>{const r=[];i[1].byMonth.forEach(l=>r.push(...l.breakdown)),o[i[0]]=r.sort((l,d)=>l.dateMillis-d.dateMillis)}),this.distributionsFlatten=o,this.tabs=["\xdcberblick",...this.years.map(i=>i.toString()),"Alle"],this.tabActive=this.tabs[0]}}changeTab(t){this.tabActive=t}static{this.\u0275fac=function(o){return new(o||n)}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-portfolio-distributions-by-year"]],inputs:{distributions:"distributions",years:"years"},features:[e.OA$],decls:8,vars:2,consts:()=>{let t,o,i,r,l,d,T,L,F,E,y,H,Z,J,q;return t="\xDCberblick",o="Alle",i="Zeit\xADraum",r="Betrag",l="Aus\xADsch\xFCttungs\xADrendite",d="Datum",T="ETF",L="Betrag",F="Datum",E="ETF",y="Betrag",H="Total",Z="Aus\xADsch\xFCttungs\xADrendite",J="Noch keine Aussch\xFCttungsdaten vorhanden",q="Keine Aussch\xFCttungsdaten vorhanden",[["noDistributionsCurrentYear",""],["noDistributions",""],["allDistributions",""],["byYear",""],t,o,i,r,l,d,T,L,F,E,y,H,Z,J,q,[1,"nav","nav-pills"],["class","nav-item",4,"ngFor","ngForOf"],[1,"tab-content"],["class","tab-pane",3,"ngClass",4,"ngFor","ngForOf"],[1,"nav-item"],[1,"nav-link","active",3,"ngClass"],[1,"nav-link",3,"ngClass"],[1,"nav-link","active",3,"click","ngClass"],[1,"nav-link",3,"click","ngClass"],[1,"tab-pane",3,"ngClass"],[4,"ngIf","ngIfElse"],[1,"table-responsive"],[1,"table"],[1,"fw-bold"],[2,"width","35%"],[2,"width","25%"],[1,"text-center"],[4,"ngFor","ngForOf"],[4,"ngIf"],[1,"text-center",3,"innerHTML"],[1,"table","distributions-table"],[1,"bg-gray-100"],["colspan","2"],[3,"innerHTML"],["colspan","3"]]},template:function(o,i){1&o&&(e.j41(0,"ul",19),e.DNE(1,qn,4,1,"li",20),e.k0s(),e.j41(2,"div",21),e.DNE(3,fo,6,5,"div",22),e.k0s(),e.DNE(4,po,3,0,"ng-template",null,0,e.C5r)(6,To,3,0,"ng-template",null,1,e.C5r)),2&o&&(e.R7$(),e.Y8G("ngForOf",i.tabs),e.R7$(2),e.Y8G("ngForOf",i.tabs))},dependencies:[c.YU,c.Sq,c.bT,g.uO,g.yi],styles:[".nav-pills[_ngcontent-%COMP%] .nav-link[_ngcontent-%COMP%]:not(.active):hover{background-color:#f0f0f0}"],changeDetection:0})}}return n})();function uo(n,_){if(1&n&&(e.pXf(0,3,1),e.nI1(1,"date")),2&n){const t=e.XpG();e.R7$(),e.uP7(e.bMT(1,1,t.portfolio().start)),e.nnv(0)}}function Oo(n,_){if(1&n){const t=e.RV6();e.j41(0,"xetf-switch",25),e.bIt("valueChange",function(){e.eBV(t);const i=e.XpG();return e.Njj(i.switchDisplayYears(!i.displayAllYears))}),e.EFF(1),e.k0s()}if(2&n){const t=e.XpG();e.R7$(),e.SpI(" ",t.labelsTexts().showAllDates," ")}}function go(n,_){if(1&n&&(e.j41(0,"div"),e.nrm(1,"app-column-chart",26),e.k0s()),2&n){const t=e.XpG();e.R7$(),e.Y8G("seriesOptions",t.seriesOptions)("exportingTitle",t.exportingTitle)("withWatermark",!0)}}function Eo(n,_){if(1&n&&(e.j41(0,"th",27),e.EFF(1),e.k0s()),2&n){const t=_.$implicit;e.R7$(),e.SpI(" ",t," ")}}function ho(n,_){if(1&n&&(e.j41(0,"div")(1,"div",31)(2,"span",32),e.EFF(3),e.k0s(),e.j41(4,"span",33),e.EFF(5),e.nI1(6,"currencyNew"),e.k0s()()()),2&n){const t=_.$implicit;e.R7$(3),e.JRh(t.name),e.R7$(2),e.JRh(e.bMT(6,2,t.value))}}function mo(n,_){if(1&n&&e.DNE(0,ho,7,4,"div",24),2&n){const t=e.XpG(2).$implicit;e.Y8G("ngForOf",t.breakdown)}}function Ro(n,_){if(1&n&&(e.qex(0),e.nrm(1,"xetf-icon",30),e.DNE(2,mo,1,1,"ng-template",null,1,e.C5r),e.bVm()),2&n){const t=e.sdS(3);e.R7$(),e.Y8G("name","infoCircle")("tooltip",t)}}function So(n,_){if(1&n&&(e.j41(0,"td")(1,"div",28)(2,"span",29),e.EFF(3),e.nI1(4,"currencyNew"),e.k0s(),e.DNE(5,Ro,4,2,"ng-container",19),e.k0s()()),2&n){const t=_.$implicit;e.R7$(3),e.JRh(e.bMT(4,2,t.total)),e.R7$(2),e.Y8G("ngIf",t.total)}}function Ao(n,_){if(1&n&&(e.j41(0,"tr")(1,"th",27),e.EFF(2),e.k0s(),e.DNE(3,So,6,4,"td",24),e.k0s()),2&n){const t=_.$implicit,o=e.XpG();e.R7$(2),e.JRh(t),e.R7$(),e.Y8G("ngForOf",o.distributions[t].byMonth)}}let Ot=(()=>{class n{constructor(t){this.colorService=t,this.VOLUME_MIN=100,this.VOLUME_MAX=1e9,this.VOLUME_INITIAL=1e4,this.MONTHS=(0,e.WQX)(Pe.i).MONTHS_SHORT,this.isBrowser=(0,e.WQX)($.T).isBrowser,this.labelsTexts=(0,e.EWP)(()=>({portfolioSize:"Portfoliogr\xF6\xDFe:",showAllDates:"Zeige alle Aussch\xFCttungsdaten:"}
1)),this.DEFAULT_YEARS_TO_DISPLAY=5,this.portfolio=(0,e.hFB)(),this.portfolioVolume=this.VOLUME_INITIAL,this.distributions={},this.years=[]}ngOnInit(){this.allDistributionYears=Object.keys(this.portfolio().yield_distribution).map(t=>Number(t)).sort((t,o)=>Number(o)-Number(t)),this.allYearsFit=this.allDistributionYears.length<=this.DEFAULT_YEARS_TO_DISPLAY,this.exportingTitle=this.portfolio().name+"<br>Aussch\xfcttungsrendite",this.switchDisplayYears(!1)}switchDisplayYears(t){this.displayAllYears=t,this.years=this.allDistributionYears.filter((o,i)=>this.displayAllYears||i<this.DEFAULT_YEARS_TO_DISPLAY),this.updateDistributions()}volumeChange(t){this.portfolioVolume=t,this.updateDistributions()}updateDistributions(){this.distributions=this.calculateDistributions(),this.seriesOptions=this.assembleChartOptions()}calculateDistributions(){const t=this.resetDistributions();return this.portfolio().distributions.forEach(i=>{const r=Ne()(i.date),l=r.year();if(this.years.includes(l)){const d=i.total_in_eur*i.number_of_lots*this.portfolioVolume/100;t[l].total+=d;const T=t[l].byMonth[r.month()];T.total+=d,T.breakdown.push({name:i.name,isin:i.isin,dateFormatted:(0,f.i$)(i.date),dateMillis:r.valueOf(),value:d})}}),t}resetDistributions(){const t={};return this.years.forEach(o=>{t[o]={total:0,totalYield:this.portfolio().yield_distribution[o]||0,byMonth:[...new Array(12)].map(()=>({total:0,breakdown:[]}))}}),t}assembleChartOptions(){const o=[{type:"column",data:Object.entries(this.distributions).sort((i,r)=>Number(i[0])-Number(r[0])).map(i=>({x:Number(i[0]),y:i[1].total,custom:{distribution:i[1].totalYield,distributionName:"Aussch\xFCttungsrendite",labelName:"Aussch\xFCttungsbetrag"}})),color:this.colorService.BLUE_DARK,name:"Aussch\xFCttung"}];return{chart:{marginTop:50},tooltip:{formatter(){return`<b>${this.point.custom.labelName}: </b>\n${(0,f.jq)(this.point.y,2,""," \u20ac")}<br>\n<b>${this.point.custom.distributionName}: </b>\n${(0,f.jq)(this.point.custom.distribution,2,""," %")}<br>\n<span class="tp-date-label">${this.x}</span>`}},yAxis:[{stackLabels:{enabled:!0,formatter(){return(0,f.jq)(this.total,2,""," \u20ac")}}}],plotOptions:{column:{pointWidth:40,dataLabels:{enabled:!0,style:{fontSize:"10px"},formatter(){if(this.percentage)return(0,f.jq)(this.point.custom.distribution,2,""," %")}}}},series:o,responsive:{rules:[{condition:{maxWidth:x.su.md},chartOptions:{plotOptions:{column:{pointWidth:20,dataLabels:{enabled:!1}}}}}]}}}static{this.\u0275fac=function(o){return new(o||n)(e.rXU(Ke.l))}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-tab-distributions"]],inputs:{portfolio:[1,"portfolio"]},decls:43,vars:16,consts:()=>{let t,o,i,r,l,d;return t="Aussch\xFCttungstabelle",o=" Aus den Tabellen kannst du die Aussch\xFCttungen in Euro des Musterportfolios " + "\ufffd0\ufffd" + " entnehmen. Du kannst einen eigene Portfoliogr\xF6\xDFe w\xE4hlen, um die Aussch\xFCttungen entsprechend anzupassen. " + "\ufffd#11\ufffd" + " Hinweis zu den Aussch\xFCttungen. " + "\ufffd*12:1\ufffd" + " Wenn du einen bestimmten Investitionsbetrag angibst, wird dieser Betrag zum Datum der Portfolioerstellung am " + "\ufffd0:1\ufffd" + " mit der entsprechenden Aufteilung in die ETFs investiert. Alle unterj\xE4hrigen Aussch\xFCttungen werden zun\xE4chst auf einem virtuellen Verrechnungskonto geparkt und zum Jahreswechsel (mit einem Rebalancing) wieder in die entsprechenden ETFs reinvestiert. Dabei erh\xF6hen sich zu jedem Jahreswechsel die im Musterportfolio vorhandenen Anteile der jeweiligen ETFs. Durch mehr Anteile gegen\xFCber dem Vorjahr kommt es so in der Regel zu gesteigerten absoluten Aussch\xFCttungsbetr\xE4gen. " + "\ufffd/*12:1\ufffd" + "" + "\ufffd/#11\ufffd" + "",i="Aussch\xFCttungsrendite",r=" Aus den Tabellen kannst du die Aussch\xFCttungsrenditen des Musterportfolios " + "\ufffd0\ufffd" + " entnehmen. ",l="Aussch\xFCttungskalender des Musterportfolios",d=" Aus dieser Tabelle kannst du die monatlichen Aussch\xFCttungen in Euro des Musterportfolios " + "\ufffd0\ufffd" + " entnehmen. Du kannst einen eigene Portfoliogr\xF6\xDFe w\xE4hlen, um die Aussch\xFCttungen entsprechend anzupassen. ",[["calculationTip",""],["breakdownTemplate",""],t,o,i,r,l,d,[1,"d-none"],[1,"row"],[1,"col-md-6"],[1,"card"],[1,"card-header"],[1,"card-title"],[1,"card-body"],[1,"text-underline",3,"tooltip","placement"],[3,"valueChange","min","max","initial","suffix","label"],[3,"distributions","years"],[1,"mt-2"],[4,"ngIf"],[1,"card","d-none","d-md-block"],[1,"table-responsive"],[1,"table","table-hover"],["class","text-center",4,"ngFor","ngForOf"],[4,"ngFor","ngForOf"],[3,"valueChange"],[3,"seriesOptions","exportingTitle","withWatermark"],[1,"text-center"],[1,"d-flex","flex-nowrap","align-items-center","justify-content-center"],[1,"nowrap"],["container","body","containerClass","wider","placement","left",1,"ms-1",3,"name","tooltip"],[1,"d-flex","justify-content-between"],[1,"text-start"],[1,"text-nowrap","ms-1"]]},template:function(o,i){if(1&o){const r=e.RV6();e.j41(0,"h2",8),e.EFF(1,"Aussch\xfcttungen, Aussch\xfcttungsrendite"),e.k0s(),e.j41(2,"div",9)(3,"div",10)(4,"div",11)(5,"div",12)(6,"h3",13),e.pXf(7,2),e.k0s()(),e.j41(8,"div",14)(9,"p"),e.PLo(10,3),e.j41(11,"span",15),e.DNE(12,uo,2,3,"ng-template",null,0,e.C5r),e.k0s(),e.YFu(),e.k0s(),e.j41(14,"xetf-number-spinner",16),e.bIt("valueChange",function(d){return e.eBV(r),e.Njj(i.volumeChange(d))}),e.k0s(),e.nrm(15,"br")(16,"app-portfolio-distributions-by-year",17),e.j41(17,"div",18),e.DNE(18,Oo,2,1,"xetf-switch"),e.k0s()()()(),e.j41(19,"div",10)(20,"div",11)(21,"div",12)(22,"h3",13),e.pXf(23,4),e.k0s()(),e.j41(24,"div",14)(25,"p"),e.pXf(26,5),e.k0s(),e.DNE(27,go,2,3,"div",19),e.k0s()()()(),e.j41(28,"div",20)(29,"div",12)(30,"h3",13),e.pXf(31,6),e.k0s()(),e.j41(32,"div",14)(33,"p"),e.pXf(34,7),e.k0s(),e.j41(35,"div",21)(36,"table",22)(37,"thead")(38,"tr"),e.nrm(39,"th"),e.DNE(40,Eo,2,1,"th",23),e.k0s()(),e.j41(41,"tbody"),e.DNE(42,Ao,4,2,"tr",24),e.k0s()()()()()}if(2&o){const r=e.sdS(13);e.R7$(11),e.Y8G("tooltip",r)("placement","right"),e.R7$(),e.uP7(i.portfolio().name),e.nnv(10),e.R7$(2),e.Y8G("min",i.VOLUME_MIN)("max",i.VOLUME_MAX)("initial",i.VOLUME_INITIAL)("suffix","\u20ac")("label",i.labelsTexts().portfolioSize),e.R7$(2),e.Y8G("distributions",i.distributions)("years",i.years),e.R7$(2),e.vxM(i.allYearsFit?-1:18),e.R7$(8),e.uP7(i.portfolio().name),e.nnv(26),e.R7$(),e.Y8G("ngIf",i.isBrowser&&i.seriesOptions),e.R7$(7),e.uP7(i.portfolio().name),e.nnv(34),e.R7$(6),e.Y8G("ngForOf",i.MONTHS),e.R7$(2),e.Y8G("ngForOf",i.years)}},dependencies:[c.Sq,c.bT,Ye.dg,Y.Rl,lt.w,a.c,Jn.v,ut,g.uO,c.vh],encapsulation:2,changeDetection:0})}}return n})();var Po=s(22771),gt=s(52754),Et=s(58596),bo=s(43108),Co=s(99096),Fo=s(99560),Mo=s(13508),Io=s(79880
1);new Et.I("Portfolio","",!0,"");const ht=new Et.I("Name","",!0,""),mt=new Mo.Y("Region"),Rt=new Fo.H("Land","",!0),St=new bo.G("Replikation"),At=new class U extends ue.k{getType(){return ee}getOrderingValue(_){return _.numberOfBrokers}}("Sparpl\xE4ne"),Pt={title:"Strategie",headerClasses:"text-end",getValue:n=>n.strategy_name||"\u2014",getOrderingValue:n=>n.strategy_name||"\u2014"},bt={title:"TER",headerClasses:"text-end",getValue:n=>(new g.b3).transform(n.ter),getOrderingValue:n=>n.ter},No=[ht,mt,Rt,Pt,new Co.A("Aussch\xFCtung"),bt,St,At],Lo=[ht,new Io.h("Gewichtung"),mt,Rt,Pt,{title:"Aussch\xFCttungs Rendite",headerClasses:"text-end",getValue:n=>(new g.yi).transform(n.yield_distribution_current_year),getOrderingValue:n=>n.yield_distribution_current_year},bt,{title:"Assetklasse",headerClasses:"text-end",defaultOrderingAsc:!0,getValue:n=>n.asset_class_name,getOrderingValue:n=>n.asset_class_name},St,At];var $o=s(84156),yo=s(51136),Oe=s(68580),Qe=s(70648);function vo(n,_){if(1&n){const t=e.RV6();e.qex(0),e.j41(1,"a",19),e.bIt("click",function(){e.eBV(t);const i=e.XpG(3);return e.Njj(i.addCheckedToWatchlist())}),e.pXf(2,3),e.k0s(),e.j41(3,"a",19),e.bIt("click",function(){e.eBV(t);const i=e.XpG(3);return e.Njj(i.goToComparison())}),e.pXf(4,4),e.k0s(),e.bVm()}}function ko(n,_){1&n&&(e.j41(0,"span",20)(1,"div",21),e.pXf(2,5),e.k0s(),e.qex(3),e.pXf(4,6),e.bVm(),e.k0s())}function Bo(n,_){if(1&n&&(e.j41(0,"div",17),e.DNE(1,vo,5,0,"ng-container",18)(2,ko,5,0,"ng-template",null,0,e.C5r),e.k0s()),2&n){const t=e.sdS(3),o=e.XpG(2);e.R7$(),e.Y8G("ngIf",o.checkedProductsNumber>1)("ngIfElse",t)}}function Do(n,_){if(1&n){const t=e.RV6();e.j41(0,"div",8)(1,"div",9)(2,"h2",10),e.pXf(3,1),e.k0s(),e.j41(4,"div",11)(5,"button",12),e.qex(6),e.pXf(7,2),e.bVm(),e.j41(8,"span",13),e.EFF(9),e.k0s()(),e.DNE(10,Bo,4,2,"div",14),e.k0s()(),e.j41(11,"div",15)(12,"app-data-table",16),e.bIt("recordsCheck",function(i){e.eBV(t);const r=e.XpG();return e.Njj(r.onRecordsCheck(i))})("recordsUncheck",function(i){e.eBV(t);const r=e.XpG();return e.Njj(r.onRecordsUncheck(i))}),e.k0s()()()}if(2&n){const t=e.XpG();e.R7$(9),e.JRh(t.checkedProductsNumber),e.R7$(3),e.Y8G("columns",t.columns)("records",t.includedProducts)("orderingColumnIndex",1)("withCheckColumn",!0)("hidePagination",!0)}}let Ct=(()=>{class n{constructor(t,o,i,r){this.router=t,this.authFeatures=o,this.notifier=i,this._cdr=r,this.columns=Lo,this.checkedProductsNumber=0,this.wlPayload={type:"etf",isins:[],loading:!1,_cdr:this._cdr},this.checkedIsins=[]}ngOnInit(){this.includedProducts=Object.entries(this.portfolio.etf_info).map(([t,o])=>{const i=o;return i.weight=Number(this.portfolio[t+"_gewicht"]),i.numberOfBrokers=i.sparplanfaehig_anzahl,i})}onRecordsCheck(t){const o=t.map(i=>i.isin).concat(this.checkedIsins);this.checkedIsins=Array.from(new Set(o)),this.checkedProductsNumber=this.checkedIsins.length}onRecordsUncheck(t){const o=t.map(i=>i.isin);this.checkedIsins=this.checkedIsins.filter(i=>!o.includes(i)),this.checkedProductsNumber=this.checkedIsins.length}goToComparison(){this.checkedIsins.length>gt._?this.notifier.error("Du kannst maximal " + gt._ + " Produkte ausw\xE4hlen"):this.router.navigate(["/etf-comparison"],{queryParams:{etf:this.checkedIsins.join(",")}})}addCheckedToWatchlist(){this.wlPayload.isins=this.checkedIsins,this.authFeatures.addToWatchlist(this.wlPayload).subscribe()}static{this.\u0275fac=function(o){return new(o||n)(e.rXU(p.Ix),e.rXU($o.x),e.rXU(yo.C),e.rXU(e.gRc))}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-portfolio-used-etfs"]],inputs:{portfolio:"portfolio"},decls:1,vars:1,consts:()=>{let t,o,i,r,l,d;return t="Eingesetzte ETFs",o="Auswahl",i=" In Watchlist speichern ",r=" Detail-Vergleich ",l="Zu wenig Wertpapiere ausgew\xE4hlt.",d="Selektiere mindestens zwei Wertpapiere",[["noProductsSelected",""],t,o,i,r,l,d,["class","card table-card",4,"ngIf"],[1,"card","table-card"],[1,"card-header","justify-content-between"],[1,"card-title"],["dropdown","",1,"btn-group"],["type","button","dropdownToggle","",1,"btn","dropdown-toggle"],[1,"selection-counter"],["class","dropdown-menu dropdown-menu-right wider",4,"dropdownMenu"],[1,"card-body"],[3,"re
1cordsCheck","recordsUncheck","columns","records","orderingColumnIndex","withCheckColumn","hidePagination"],[1,"dropdown-menu","dropdown-menu-right","wider"],[4,"ngIf","ngIfElse"],[1,"dropdown-item",3,"click"],[1,"dropdown-item","d-block"],[1,"fw-bold","mb-2"]]},template:function(o,i){1&o&&e.DNE(0,Do,13,6,"div",7),2&o&&e.Y8G("ngIf",null==i.includedProducts?null:i.includedProducts.length)},dependencies:[c.bT,Oe.hs,Oe.UL,Oe.Kk,Qe.u],encapsulation:2,changeDetection:0})}}return n})();const xo=n=>[n,"","",!0,1];function Yo(n,_){if(1&n&&(e.j41(0,"th",14),e.EFF(1),e.k0s()),2&n){const t=_.$implicit;e.R7$(),e.SpI(" ",t," ")}}function Go(n,_){if(1&n&&(e.qex(0),e.nrm(1,"td",17),e.nI1(2,"labeledPercentage"),e.bVm()),2&n){const t=_.$implicit;e.R7$(),e.Y8G("innerHTML",e.iJd(2,1,e.eq3(7,xo,t)),e.npT)}}function Xo(n,_){if(1&n&&(e.qex(0),e.j41(1,"tr",15)(2,"td",10),e.EFF(3),e.k0s(),e.DNE(4,Go,3,9,"ng-container",13),e.nrm(5,"td",16),e.nI1(6,"labeledPercentage"),e.nrm(7,"td",16),e.nI1(8,"labeledPercentage"),e.k0s(),e.bVm()),2&n){const t=_.$implicit,o=e.XpG(2);e.R7$(),e.Y8G("hidden",!o.perfByMonth[t]),e.R7$(2),e.JRh(t),e.R7$(),e.Y8G("ngForOf",o.perfByMonth[t]),e.R7$(),e.Y8G("innerHTML",e.ii3(6,5,o.perfByYear[t],"","",!0),e.npT),e.R7$(2),e.Y8G("innerHTML",e.ii3(8,10,o.yieldByYear[t],"","",!0),e.npT)}}function Vo(n,_){if(1&n&&(e.j41(0,"div",4)(1,"div",5)(2,"h2",6),e.pXf(3,0),e.k0s()(),e.j41(4,"div",7)(5,"div",8)(6,"table",9)(7,"thead")(8,"tr"),e.nrm(9,"th",10),e.DNE(10,Yo,2,1,"th",11),e.j41(11,"th",12),e.pXf(12,1),e.k0s(),e.j41(13,"th",12),e.pXf(14,2),e.k0s()()(),e.j41(15,"tbody"),e.DNE(16,Xo,9,15,"ng-container",13),e.k0s()()()()()),2&n){const t=e.XpG();e.R7$(10),e.Y8G("ngForOf",t.MONTHS),e.R7$(6),e.Y8G("ngForOf",t.lastYears)}}let Ft=(()=>{class n{constructor(){this.CURRENT_YEAR=(0,f.hk)(),this.NUMBER_OF_YEARS_TO_DISRPLAY=10,this.MONTHS=(0,e.WQX)(Pe.i).MONTHS_SHORT,this.lastYears=[],this.perfByMonth={},this.perfByYear={},this.yieldByYear={}}ngOnInit(){const t=[];for(let o=0;o<this.NUMBER_OF_YEARS_TO_DISRPLAY;o++){const i=this.CURRENT_YEAR-o;switch(t.push(i),this.perfByMonth[i]=this.portfolio.portfolio_performance[i],this.perfByYear[i]=this.portfolio.portfolio_performance[i+"_performance"],o){case 0:this.yieldByYear[i]=this.portfolio.yield_distribution_current_year;break;case 1:this.yieldByYear[i]=this.portfolio.yield_distribution_last_year;break;case 2:this.yieldByYear[i]=this.portfolio.yield_distribution_two_years_ago;break;case 3:this.yieldByYear[i]=this.portfolio.yield_distribution_three_years_ago;break;case 4:this.yieldByYear[i]=this.portfolio.yield_distribution_four_years_ago}}this.lastYears=t}static{this.\u0275fac=function(o){return new(o||n)}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-portfolio-yield"]],inputs:{portfolio:"portfolio"},decls:1,vars:1,consts:()=>{let t,o,i;return t="Rendite des Musterportfolios",o="Jahres\xADrendite",i="Auss\xADch\xFCt\xADtung p.a.",[t,o,i,["class","card table-card",4,"ngIf"],[1,"card","table-card"],[1,"card-header"],[1,"card-title"],[1,"card-body"],[1,"table-responsive"],[1,"table","table-labeled"],[1,"year-cell"],["class","month-cell",4,"ngFor","ngForOf"],[1,"total-cell"],[4,"ngFor","ngForOf"],[1,"month-cell"],[3,"hidden"],[1,"total-cell",3,"innerHTML"],[1,"month-cell",3,"innerHTML"]]},template:function(o,i){1&o&&e.DNE(0,Vo,17,2,"div",3),2&o&&e.Y8G("ngIf",i.portfolio.withPerformance)},dependencies:[c.Sq,c.bT,g.yi],styles:[".table-labeled[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:nth-last-child(3), .table-labeled[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:nth-last-child(3){border-right:1px solid #e5e5e5}"],changeDetection:0})}}return n})();var Ve=s(25558),wo=s(27468);function jo(n,_){if(1&n&&(e.j41(0,"div",1)(1,"div",2)(2,"h2",3),e.pXf(3,0),e.k0s()(),e.j41(4,"div",4),e.nrm(5,"app-data-table",5),e.k0s()()),2&n){const t=e.XpG();e.R7$(5),e.Y8G("columns",t.columns)("records",_)("hidePagination",!0)}}let Mt=(()=>{class n{constructor(t){this.dataService=t,this.columns=No,this.portfolio=e.hFB.required(),this.alternativeProducts$=(0,fe.br)(this.portfolio).pipe((0,Ve.n)(o=>{const i=Object.entries(o).filter(r=>r[0].startsWith("etf_alternative_")&&!!r[1]).map(r=>this.dataService.fetchEtf({isin:r[1]}).pipe((0,b.T)(l=>{const d=new He.tY(l);return d.sparplan_faehig=0,d.vl_faehig=!1,d.numberOfBrokers=d.list_of_broker_sparplan?.filter(T=>T.is_visible).length||0,d.displayLandName=d.land_name,d.displayLandCode=d.land_code,d})));return(0,wo.p)(i)}),(0,fe.pQ)())}static{this.\u0275fac=function(o){return new(o||n)(e.rXU(W.u))}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-portfolio-alternative-etfs"]],inputs:{portfolio:[1,"portfolio"]},standalone:!0,features:[e.aNF],decls:2,vars:3,consts:()=>{let t;return t="Alternative ETFs",[t,[1,"card","table-card"],[1,"card-header"],[1,"card-title"],[1,"card-body"],[3,"columns","records","hidePagination"]]},template:function(o,i){if(1&o&&(e.DNE(0,jo,6,3,"div",1),e.nI1(1,"async")),2&o){let r;e.vxM((r=e.bMT(1,1,i.alternativeProducts$))?0:-1,r)}},dependencies:[c.Jj,k.h,Qe.u],encapsulation:2,changeDetection:0})}}return n})();const zo=()=>[Mt];function Uo(n,_){if(1&n&&(e.j41(0,"div",44)(1,"div",25)(2,"h2",26),e.pXf(3,17),e.k0s()(),e.nrm(4,"div",45),e.k0s()),2&n){const t=e.XpG();e.R7$(4),e.Y8G("innerHTML",t.portfolio().description,e.npT)}}function Wo(n,_){if(1&n&&(e.nrm(0,"span",33),e.nI1(1,"customPercentage")),2&n){const t=e.XpG(2);e.Y8G("innerHTML",e.ii3(1,1,t.portfolio().yield_pa_3_years_real,2," ("," p.a.)"),e.npT)}}function Ho(n,_){if(1&n&&(e.qex(0),e.nrm(1,"span",33),e.nI1(2,"labeledPercentage"),e.DNE(3,Wo,2,6,"span",38),e.bVm()),2&n){const t=e.XpG();e.R7$(),e.Y8G("innerHTML",e.bMT(2,2,t.portfolio().return_3_years_ago_real),e.npT),e.R7$(2),e.Y8G("ngIf",t.portfolio().return_3_years_ago_real)}}function Jo(n,_){if(1&n&&(e.nrm(0,"span",33),e.nI1(1,"customPercentage")),2&n){const t=e.XpG(2);e.Y8G("innerHTML",e.ii3(1,1,t.portfolio().yield_pa_5_years_real,2," ("," p.a.)"),e.npT)}}function Ko(n,_){if(1&n&&(e.qex(0),e.nrm(1,"span",33),e.nI1(2,"labeledPercentage"),e.DNE(3,Jo,2,6,"span",38),e.bVm()),2&n){const t=e.XpG();e.R7$(),e.Y8G("innerHTML",e.bMT(2,2,t.portfolio().return_5_years_ago_real),e.npT),e.R7$(2),e.Y8G("ngIf",t.portfolio().return_5_years_ago_real)}}function Qo(n,_){if(1&n&&(e.nrm(0,"span",33),e.nI1(1,"customPercentage")),2&n){const t=e.XpG();e.Y8G("innerHTML",e.ii3(1,1,t.portfolio().yield_pa_launch_date_real,2," ("," p.a.)"),e.npT)}}function Zo(n,_){if(1&n&&(e.j41(0,"div",23)(1,"div",24)(2,"div",25)(3,"h2",26),e.pXf(4,18),e.k0s()(),e.j41(5,"div",27)(6,"p"),e.pXf(7,19),e.k0s(),e.j41(8,"div",28)(9,"div",46),e.nrm(10,"app-etf-portfolio-pie-chart",47),e.k0s(),e.j41(11,"div",46),e.nrm(12,"app-etf-portfolio-pie-chart",47),e.k0s()()()()()),2&n){const t=e.XpG();e.R7$(10),e.Y8G("portfolio",t.portfolio())("type","assets"),e.R7$(2),e.Y8G("portfolio",t.portfolio())("type","regions")}}function qo(n,_){if(1&n&&e.nrm(0,"app-portfolio-alternative-etfs",43),2&n){const t=e.XpG();e.Y8G("portfolio",t.portfolio())}}function ei(n,_){1&n&&e.nrm(0,"div")}function ti(n,_){1&n&&e.DNE(0,ei,1,0,"div",48),2&n&&e.Y8G("skeleton",!0)("skeletonWidth","100%")("skeletonHeight","320px")}let It=(()=>{class n{constructor(){this.portfolio=e.hFB.required(),this.labelText="Prozentuale Ver\xE4nderung"}ngOnInit(){this.withPieCharts=this.portfolio().withAssetClasses||this.portfolio().withRegions,this.yearsSinceStart=Ne()().diff(this.portfolio().start,"year")}static{this.\u0275fac=function(o){return new(o||n)}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-tab-overview"]],inputs:{portfolio:[1,"portfolio"]},decls:117,vars:50,consts:()=>{let t,o,i,r,l,d,T,L,F,E,y,H,Z,J,q,A,me,pe,Te;return t="Renditekennzahlen",o="1 Monat",i="3 Monate",r="6 Monate",l="Lfd. Jahr",d="1 Jahr",T="3 Jahre",L="5 Jahre",F="Seit Auflage " + "\ufffd#56\ufffd" + "(" + "\ufffd0\ufffd" + ")" + "\ufffd/#56\ufffd" + "",E="Portfolio Kennzahlen",y="Anzahl ETFs",H="Portfoliokosten (TER)",Z="Aktuelle Auss\xADsch\xFCt\xADtung p.a.",J="Portfolioerstellung",q="Wertentwicklung",A="Hier siehst du die Kursentwicklung des " + "\ufffd0\ufffd" + ".",me="Beschreibung",pe="Regionen bzw. Assetklassen",Te="Hier siehst du die Assetklassen
1/Regionenaufteilung.",[["portfolioYield",""],t,o,i,r,l,d,T,L,F,E,y,H,Z,J,q,A,me,pe,Te,["class","card mt-3",4,"ngIf"],[3,"type"],[1,"row","row-eq-height"],[1,"col-xl-6"],[1,"card"],[1,"card-header"],[1,"card-title"],[1,"card-body"],[1,"row"],[1,"col-xl-4"],[1,"table-responsive"],[1,"table"],[2,"width","50%"],[3,"innerHTML"],[1,"col-xl-8"],[2,"width","45%"],[4,"ngIf"],[1,"nowrap"],[3,"innerHTML",4,"ngIf"],[1,"",2,"height","400px"],[3,"portfolio","percentageMode"],[3,"ngModelChange","ngModel"],["class","col-xl-6",4,"ngIf"],[3,"portfolio"],[1,"card","mt-3"],[1,"card-body",3,"innerHTML"],[1,"col-md-6"],[3,"portfolio","type"],[4,"skeleton","skeletonWidth","skeletonHeight"]]},template:function(o,i){if(1&o){const r=e.RV6();e.DNE(0,Uo,5,1,"div",20),e.nrm(1,"app-promotion",21),e.j41(2,"div",22)(3,"div",23)(4,"div",24)(5,"div",25)(6,"h2",26),e.pXf(7,1),e.k0s()(),e.j41(8,"div",27)(9,"div",28)(10,"div",29)(11,"div",30)(12,"table",31)(13,"tbody")(14,"tr")(15,"td",32),e.pXf(16,2),e.k0s(),e.nrm(17,"td",33),e.nI1(18,"labeledPercentage"),e.k0s(),e.j41(19,"tr")(20,"td"),e.pXf(21,3),e.k0s(),e.nrm(22,"td",33),e.nI1(23,"labeledPercentage"),e.k0s(),e.j41(24,"tr")(25,"td"),e.pXf(26,4),e.k0s(),e.nrm(27,"td",33),e.nI1(28,"labeledPercentage"),e.k0s(),e.j41(29,"tr")(30,"td"),e.pXf(31,5),e.k0s(),e.nrm(32,"td",33),e.nI1(33,"labeledPercentage"),e.k0s()()()()(),e.j41(34,"div",34)(35,"div",30)(36,"table",31)(37,"tbody")(38,"tr")(39,"td",35),e.pXf(40,6),e.k0s(),e.nrm(41,"td",33),e.nI1(42,"labeledPercentage"),e.k0s(),e.j41(43,"tr")(44,"td"),e.pXf(45,7),e.k0s(),e.j41(46,"td"),e.DNE(47,Ho,4,4,"ng-container",36),e.k0s()(),e.j41(48,"tr")(49,"td"),e.pXf(50,8),e.k0s(),e.j41(51,"td"),e.DNE(52,Ko,4,4,"ng-container",36),e.k0s()(),e.j41(53,"tr")(54,"td"),e.PLo(55,9),e.nrm(56,"span",37),e.nI1(57,"date"),e.YFu(),e.k0s(),e.j41(58,"td"),e.nrm(59,"span",33),e.nI1(60,"labeledPercentage"),e.DNE(61,Qo,2,6,"span",38),e.k0s()()()()()()()()()(),e.j41(62,"div",23)(63,"div",24)(64,"div",25)(65,"h2",26),e.pXf(66,10),e.k0s()(),e.j41(67,"div",27)(68,"div",30)(69,"table",31)(70,"tbody")(71,"tr")(72,"td"),e.pXf(73,11),e.k0s(),e.j41(74,"td"),e.EFF(75),e.nI1(76,"dashIfEmpty"),e.k0s()(),e.j41(77,"tr")(78,"td"),e.pXf(79,12),e.k0s(),e.j41(80,"td"),e.EFF(81),e.nI1(82,"customPercentage"),e.k0s()(),e.j41(83,"tr")(84,"td"),e.pXf(85,13),e.k0s(),e.j41(86,"td"),e.EFF(87),e.nI1(88,"customPercentage"),e.k0s()(),e.j41(89,"tr")(90,"td"),e.pXf(91,14),e.k0s(),e.j41(92,"td"),e.EFF(93),e.nI1(94,"date"),e.k0s()()()()()()()()(),e.j41(95,"div",22)(96,"div",23)(97,"div",24)(98,"div",25)(99,"h2",26),e.pXf(100,15),e.k0s()(),e.j41(101,"div",27)(102,"p"),e.pXf(103,16),e.k0s(),e.j41(104,"div",39),e.nrm(105,"app-etf-portfolio-chart",40),e.k0s(),e.j41(106,"xetf-switch",41),e.mxI("ngModelChange",function(d){return e.eBV(r),e.DH7(i.isChartInPercentageMode,d)||(i.isChartInPercentageMode=d),e.Njj(d)}),e.EFF(107),e.k0s()()()(),e.DNE(108,Zo,13,4,"div",42),e.k0s(),e.nrm(109,"app-portfolio-used-etfs",43)(110,"app-promotion",21)(111,"app-portfolio-yield",43,0),e.DNE(113,qo,1,1)(114,ti,1,3),e.nv$(115,113,zo,null,114),e.BUe(500),e.qhs(111)}2&o&&(e.Y8G("ngIf",i.portfolio().description),e.R7$(),e.Y8G("type","etf_broker"),e.R7$(16),e.Y8G("innerHTML",e.bMT(18,25,i.portfolio().return_1_month_real),e.npT),e.R7$(5),e.Y8G("innerHTML",e.bMT(23,27,i.portfolio().return_3_month_real),e.npT),e.R7$(5),e.Y8G("innerHTML",e.bMT(28,29,i.portfolio().return_6_month_real),e.npT),e.R7$(5),e.Y8G("innerHTML",e.bMT(33,31,i.portfolio().return_year_to_date_real),e.npT),e.R7$(9),e.Y8G("innerHTML",i.yearsSinceStart>=1?e.bMT(42,33,i.portfolio().return_1_year_real):"\xa0",e.npT),e.R7$(6),e.Y8G("ngIf",i.yearsSinceStart>=3),e.R7$(5),e.Y8G("ngIf",i.yearsSinceStart>=5),e.R7$(5),e.uP7(e.bMT(57,35,i.portfolio().start)),e.nnv(55),e.R7$(2),e.Y8G("innerHTML",e.bMT(60,37,i.portfolio().return_since_launch_real),e.npT),e.R7$(2),e.Y8G("ngIf",i.portfolio().return_since_launch_real),e.R7$(14),e.JRh(e.bMT(76,39,i.portfolio().portfolio_anzahl_etfs)),e.R7$(6),e.JRh(e.ii3(82,41,i.portfolio().portfolio_ter,2,""," p.a.")),e.R7$(6),e.JRh(e.bMT(88,46,i.portfolio().yield_distribution_current_year)),e.R7$(6),e.JRh(e.bMT(94,48,i.portfolio().start)),e.R7$(10),e.uP7(i.portfolio().name),e.nnv(103),e.R7$(2),e.Y8G("portfolio",i.portfolio())("percentageMode",i.isChartInPercentageMode),e.R7$(),e.R50("ngModel",i.isChartInPercentageMode),e.R7$(),e.SpI(" ",i.labelText," "),e.R7$(),e.Y8G("ngIf",i.withPieCharts),e.R7$(),e.Y8G("portfolio",i.portfolio()),e.R7$(),e.Y8G("type","robo_advisor"),e.R7$(),e.Y8G("portfolio",i.portfolio()))},dependencies:[tt.B,c.bT,ce.BC,ce.vS,a.c,Po.J,Se,We,Ct,Ft,g.hD,g.yi,g.b3,c.vh],encapsulation:2,changeDetection:0})}}return n})();function ni(n,_){if(1&n&&(e.j41(0,"div",12)(1,"div",13),e.pXf(2,0),e.k0s(),e.j41(3,"div",14),e.PLo(4,1),e.nrm(5,"b"),e.YFu(),e.k0s(),e.j41(6,"div",15),e.nrm(7,"img",16),e.j41(8,"div")(9,"div"),e.EFF(10," \xdcberzeuge dich selbst und wirf einen Blick in unsere Live-Demo \u2013 sofort & ohne Anmeldung. Oder registriere dich in nur 2 Minuten kostenlos, verbinde dein Depot und lass dein Portfolio automatisch anal
1ysieren. "),e.k0s(),e.j41(11,"div",17)(12,"div")(13,"a",18),e.pXf(14,2),e.k0s()(),e.j41(15,"div")(16,"a",19),e.pXf(17,3),e.k0s()()()()()()),2&n){const t=e.XpG();e.R7$(5),e.uP7(t.portfolio().name),e.nnv(4),e.R7$(8),e.Y8G("href",t.fmSignUpUrl,e.B4B),e.R7$(3),e.Y8G("href",t.fmDemoUrl,e.B4B)}}function oi(n,_){if(1&n&&(e.j41(0,"div",20)(1,"div",15),e.nrm(2,"img",21),e.j41(3,"div",22)(4,"div",13),e.pXf(5,4),e.k0s(),e.j41(6,"div",14),e.PLo(7,5),e.nrm(8,"b"),e.YFu(),e.k0s(),e.j41(9,"div",17)(10,"div",23)(11,"a",18),e.pXf(12,6),e.k0s(),e.j41(13,"div"),e.pXf(14,7),e.k0s()(),e.j41(15,"div",23)(16,"a",19),e.pXf(17,8),e.k0s(),e.j41(18,"div"),e.pXf(19,9),e.k0s()()()()()()),2&n){const t=e.XpG();e.R7$(8),e.uP7(t.portfolio().name),e.nnv(7),e.R7$(3),e.Y8G("href",t.fmSignUpUrl,e.B4B),e.R7$(5),e.Y8G("href",t.fmDemoUrl,e.B4B)}}let Nt=(()=>{class n{constructor(){this.portfolio=(0,e.hFB)(),this.isModal=(0,e.hFB)(!1),this.fmDemoUrl=Ae.c.fmDemoUrl,this.fmSignUpUrl=`${Ae.c.fmAppUrl}auth/signup`}static{this.\u0275fac=function(o){return new(o||n)}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-banner-card"]],inputs:{portfolio:[1,"portfolio"],isModal:[1,"isModal"]},decls:2,vars:2,consts:()=>{let t,o,i,r,l,d,T,L,F,E;return t="Wie performen deine Assets?",o=" Du investierst in den " + "\ufffd#5\ufffd" + "" + "\ufffd0\ufffd" + "" + "\ufffd/#5\ufffd" + "? Im extraETF Portfolio Tracker kannst du diesen und viele weitere ETFs, Aktien & Fonds \xFCberwachen \u2013 inkl. Performance, Asset-Allokation und X-Ray Analyse. ",i="Jetzt starten",r="Live-Demo testen",l="Wie performen deine Assets?",d=" Du investierst in den " + "\ufffd#8\ufffd" + "" + "\ufffd0\ufffd" + "" + "\ufffd/#8\ufffd" + "? Im extraETF Portfolio Tracker kannst du diesen und viele weitere ETFs, Aktien & Fonds \xFCberwachen \u2013 inkl. Performance, Asset-Allokation und X-Ray Analyse. In der Free-Version sogar kostenfrei! ",T="Jetzt starten",L="In 2 Minuten registriert",F="Live-Demo testen",E="Sofort & ohne Anmeldung",[t,o,i,r,l,d,T,L,F,E,["class","banner-card banner-card-modal",4,"ngIf"],["class","banner-card banner-card-page",4,"ngIf"],[1,"banner-card","banner-card-modal"],[1,"banner-title"],[1,"banner-desc"],[1,"banner-body"],["src","/assets/images/my-inventory-pt.png","alt","My inventory portfolio tracker",1,"banner-img"],[1,"banner-btns"],["target","_blank",1,"btn","btn-success",3,"href"],["target","_blank",1,"btn","btn-outline-light",3,"href"],[1,"banner-card","banner-card-page"],["src","/assets/images/my-inventory-page-pt.png","alt","My inventory portfolio tracker",1,"banner-img"],[1,"banner-right"],[1,"banner-btns-group"]]},template:function(o,i){1&o&&e.DNE(0,ni,18,3,"div",10)(1,oi,20,3,"div",11),2&o&&(e.Y8G("ngIf",i.isModal()),e.R7$(),e.Y8G("ngIf",!i.isModal()))},dependencies:[c.bT],styles:[".banner-card[_ngcontent-%COMP%]{padding:25px;border-radius:5px;background:linear-gradient(161.57deg,#111827 12.61%,#16416a,#2196f3 87.66%);color:#fff}@media (max-width: 575.98px){.banner-card[_ngcontent-%COMP%]{padding:20px}}.banner-card.banner-card-modal[_ngcontent-%COMP%]{width:850px;position:absolute;left:50%;transform:translate(-50%);z-index:1}@media (max-width: 991.98px){.banner-card.banner-card-modal[_ngcontent-%COMP%]{width:calc(100% - 40px);max-width:850px}}@media (max-width: 767.98px){.banner-card.banner-card-modal[_ngcontent-%COMP%]{position:static;top:auto;left:auto;transform:none;width:100%;max-width:none}}.banner-card.banner-card-modal[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%]{margin-top:20px}.banner-card.banner-card-modal[_ngcontent-%COMP%] .banner-img[_ngcontent-%COMP%]{width:389px;height:100%}.banner-card.banner-card-modal[_ngcontent-%COMP%] .banner-desc[_ngcontent-%COMP%]{margin-top:25px}.banner-card.banner-card-modal[_ngcontent-%COMP%] .banner-btns[_ngcontent-%COMP%]{margin-top:46px;flex-direction:column}.banner-card.banner-card-modal[_ngcontent-%COMP%] .banner-btns[_ngcontent-%COMP%] .btn-success[_ngcontent-%COMP%]{min-width:220px}@media (max-width: 767.98px){.banner-card.banner-card-modal[_ngcontent-%COMP%] .banner-btns[_ngcontent-%COMP%]{margin-top:24px}}.banner-card.banner-card-page[_ngcontent-%COMP%]{padding:40px 120px 40px 20px;margin-bottom:20px}@media (max-width: 1199.98px){.banner-card.banner-card-page[_ngcontent-%COMP%]{padding:32px 40px}}@media (max-width: 767.98px){.banner-card.banner-card-page[_ngcontent-%COMP%]{padding:24px 20px}}.banner-card.banner-card-page[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%]{gap:100px}@media (max-width: 1199.98px){.banner-card.banner-card-page[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%]{gap:40px}}@media (max-width: 767.98px){.banner-card.banner-card-page[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%]{gap:24px}}.banner-card.banner-card-page[_ngcontent-%COMP%] .banner-right[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:center}.banner-card.banner-card-page[_ngcontent-%COMP%] .banner-img[_ngcontent-%COMP%]{width:500px}@media (max-width: 1199.98px){.banner-card.banner-card-page[_ngcontent-%COMP%] .banner-img[_ngcontent-%COMP%]{width:40%}}@media (max-width: 767.98px){.banner-card.banner-card-page[_ngcontent-%COMP%] .banner-img[_ngcontent-%COMP%]{width:100%;max-width:500px}}.banner-card.banner-card-page[_ngcontent-%COMP%] .banner-desc[_ngcontent-%COMP%]{margin-top:13px}.banner-card.banner-card-page[_ngcontent-%COMP%] .banner-btns[_ngcontent-%COMP%]{margin-top:17px;justify-content:space-between}.banner-card[_ngcontent-%COMP%] .banner-title[_ngcontent-%COMP%]{font-size:20px;font-weight:700}.banner-card[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%]{display:flex;gap:20px}@media (max-width: 767.98px){.banner-card[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%]{flex-direction:column;align-items:center}}.banner-card[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-img[_ngcontent-%COMP%]{max-width:100%}.banner-card[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-btns[_ngcontent-%COMP%]{display:flex;gap:15px}@media (max-width: 575.98px){.banner-card[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-btns[_ngcontent-%COMP%]{flex-wrap:wrap;gap:16px}}.banner-card[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-btns[_ngcontent-%COMP%] .btn[_ngcontent-%COMP%]{padding:9.5px 48px}@media (max-width: 767.98px){.banner-card[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-btns[_ngcontent-%COMP%] .btn[_ngcontent-%COMP%]{padding:9.5px 24px;width:100%}}.banner-card[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-btns-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:8px}@media (max-width: 575.98px){.banner-card[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-btns-group[_ngcontent-%COMP%]{flex:1 1 100%}}"],changeDetection:0})}}return n})(),Lt=(()=>
1{class n{constructor(){this.portfolio=(0,e.hFB)(),this.fmAppUrl=Ae.c.fmAppUrl,this.fmTxUrl=`${Ae.c.fmAppUrl}transactions`}static{this.\u0275fac=function(o){return new(o||n)}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-banner-card-authed"]],inputs:{portfolio:[1,"portfolio"]},decls:17,vars:5,consts:()=>{let t,o,i,r;return t="Dein Portfolio \u2013 immer aktuell",o=" Du hast den " + "\ufffd#8\ufffd" + "" + "\ufffd0\ufffd" + "" + "\ufffd/#8\ufffd" + " gekauft, verkauft oder eine Aussch\xFCttung erhalten? Erfasse deine Transaktion jetzt und halte dein Portfolio aktuell. So beh\xE4ltst du Performance, Entwicklung und Asset-Allokation jederzeit im Blick. Je aktueller deine Daten sind, desto pr\xE4ziser fallen deine Portfolioanalysen aus. ",i="" + "\ufffd#13\ufffd" + "" + "\ufffd/#13\ufffd" + " Transaktion hinzuf\xFCgen",r="Zum Portfolio Tracker",[t,o,i,r,[1,"banner-card-authed"],[1,"banner-body"],["src","/assets/images/my-inventory-page-pt.png","alt","My inventory portfolio tracker",1,"banner-img"],[1,"banner-right"],[1,"banner-title"],[1,"banner-desc"],[1,"banner-btns"],[1,"banner-btns-group"],["target","_blank",1,"btn","btn-primary",3,"href"],[3,"name","size"],["target","_blank",1,"btn","btn-outline-light",3,"href"]]},template:function(o,i){1&o&&(e.j41(0,"div",4)(1,"div",5),e.nrm(2,"img",6),e.j41(3,"div",7)(4,"div",8),e.pXf(5,0),e.k0s(),e.j41(6,"div",9),e.PLo(7,1),e.nrm(8,"b"),e.YFu(),e.k0s(),e.j41(9,"div",10)(10,"div",11)(11,"a",12),e.PLo(12,2),e.nrm(13,"xetf-icon",13),e.YFu(),e.k0s()(),e.j41(14,"div",11)(15,"a",14),e.pXf(16,3),e.k0s()()()()()()),2&o&&(e.R7$(8),e.uP7(i.portfolio().name),e.nnv(7),e.R7$(3),e.Y8G("href",i.fmTxUrl,e.B4B),e.R7$(2),e.Y8G("name","plus")("size",20),e.R7$(2),e.Y8G("href",i.fmAppUrl,e.B4B))},dependencies:[Y.Rl],styles:[".banner-card-authed[_ngcontent-%COMP%]{padding:40px 120px 40px 20px;margin-bottom:20px;border-radius:5px;background:linear-gradient(161.57deg,#111827 12.61%,#16416a,#2196f3 87.66%);color:#fff}@media (max-width: 1199.98px){.banner-card-authed[_ngcontent-%COMP%]{padding:32px 40px}}@media (max-width: 767.98px){.banner-card-authed[_ngcontent-%COMP%]{padding:24px 20px}}.banner-card-authed[_ngcontent-%COMP%] .banner-title[_ngcontent-%COMP%]{font-size:20px;font-weight:700}.banner-card-authed[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%]{display:flex;gap:100px}@media (max-width: 991.98px){.banner-card-authed[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%]{gap:0px}}@media (max-width: 767.98px){.banner-card-authed[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%]{flex-direction:column;align-items:center;gap:24px}}@media (max-width: 575.98px){.banner-card-authed[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%]{flex-wrap:wrap;gap:16px}}.banner-card-authed[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-right[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:center}.banner-card-authed[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-img[_ngcontent-%COMP%]{width:500px;height:100%;min-width:342px;max-width:100%}@media (max-width: 1199.98px){.banner-card-authed[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-img[_ngcontent-%COMP%]{width:40%}}@media (max-width: 767.98px){.banner-card-authed[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-img[_ngcontent-%COMP%]{width:100%;max-width:500px}}.banner-card-authed[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-desc[_ngcontent-%COMP%]{margin-top:13px}.banner-card-authed[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-btns[_ngcontent-%COMP%]{margin-top:17px;justify-content:space-between;display:flex;gap:15px}@media (max-width: 991.98px){.banner-card-authed[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-btns[_ngcontent-%COMP%]{flex-direction:column}}@media (max-width: 575.98px){.banner-card-authed[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-btns[_ngcontent-%COMP%]{flex-wrap:wrap;gap:16px}}.banner-card-authed[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-btns[_ngcontent-%COMP%] .btn[_ngcontent-%COMP%]{padding:9.5px 48px}@media (max-width: 575.98px){.banner-card-authed[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-btns[_ngcontent-%COMP%] .btn[_ngcontent-%COMP%]{padding:9.5px 24px;width:100%}}.banner-card-authed[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-btns-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:8px}@media (max-width: 575.98px){.banner-card-authed[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .banner-btns-group[_ngcontent-%COMP%]{flex:1 1 100%}}.banner-card-authed[_ngcontent-%COMP%] .banner-body[_ngcontent-%COMP%] .btn-primary[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;gap:10px}"],changeDetection:0})}}return n})();function ii(n,_){1&n&&e.nrm(0,"img",15)}function ri(n,_){if(1&n&&(e.j41(0,"div",16)(1,"div",17)(2,"h2",18),e.pXf(3,0),e.k0s()(),e.j41(4,"div",19)(5,"div",20),e.pXf(6,1),e.k0s(),e.j41(7,"div",21)(8,"div",22)(9,"div",23),e.pXf(10,2),e.k0s(),e.nrm(11,"img",24),e.j41(12,"div",25),e.pXf(13,3),e.k0s()(),e.j41(14,"div",22)(15,"div",23),e.pXf(16,4),e.k0s(),e.j41(17,"div",25),e.pXf(18,5),e.k0s(),e.nrm(19,"img",26),e.k0s(),e.j41(20,"div",22)(21,"div",23),e.pXf(22,6),e.k0s(),e.nrm(23,"img",27),e.j41(24,"div",25),e.pXf(25,7),e.k0s()()(),e.j41(26,"div",28)(27,"a",29),e.pXf(28,8),e.k0s()()()()),2&n){const t=e.XpG(2);e.R7$(27),e.Y8G("href",t.fmSignUpUrl,e.B4B)}}function si(n,_){if(1&n&&(e.qex(0),e.j41(1,"div",11),e.nrm(2,"app-banner-card",12),e.DNE(3,ii,1,0,"img",13),e.k0s(),e.DNE(4,ri,29,1,"div",14),e.bVm()),2&n){const t=e.XpG();e.R7$(2),e.Y8G("portfolio",t.portfolio())("isModal",t.isModal),e.R7$(),e.Y8G("ngIf",t.isModal),e.R7$(),e.Y8G("ngIf",!t.isModal)}}function _i(n,_){if(1&n&&e.nrm(0,"app-banner-card-authed",30),2&n){const t=e.XpG();e.Y8G("portfolio",t.portfolio())}}let $t=(()=>{class n{constructor(){this.userService=(0,e.WQX)(Je.D),this.isModal=!0,this.portfolio=(0,e.hFB
1)(),this.fmSignUpUrl=`${Ae.c.fmAppUrl}auth/signup`,this.user=(0,fe.ot)(this.userService.getUser())}static{this.\u0275fac=function(o){return new(o||n)}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-tab-my-inventory"]],inputs:{portfolio:[1,"portfolio"]},decls:2,vars:2,consts:()=>{let t,o,i,r,l,d,T,L,F;return t="Warum den Portfolio Tracker nutzen?",o=" Der Portfolio Tracker gibt dir den vollst\xE4ndigen \xDCberblick \xFCber dein Verm\xF6gen. Verwalte Konten und Depots an einem zentralen Ort und analysiere dein Portfolio mit professionellen Tools. ",i=" Deine Depots an einem Ort vereint ",r=" Alle Portfolios an einem Ort im Blick. Verfolge deine Aktien, ETFs und Fonds und \xFCberwache wichtige Kennzahlen, Kurse und die Entwicklung deiner Performance. ",l=" Erkenne Risiken und vermeide Verluste ",d=" Analysiere dein Portfolio nach Anlageklassen, Regionen, L\xE4nder und Branchen. Wichtige Kennzahlen wie KGV, KBV oder Kosten machen Risiken sofort sichtbar. ",T=" Vergleiche dein Portfolio mit anderen Strategien ",L=" \xDCberwache die Performance deines Portfolios und deine Dividendenrendite. Analysiere, welchen Einfluss deine Anlageentscheidungen auf die Wertentwicklung haben. ",F="Jetzt kostenfrei starten",[t,o,i,r,l,d,T,L,F,[4,"ngIf"],[3,"portfolio",4,"ngIf"],[1,"banner-page"],[3,"portfolio","isModal"],["class","banner-bg","src","/assets/images/my-inventory-table.png","alt","My inventory table",4,"ngIf"],["class","card",4,"ngIf"],["src","/assets/images/my-inventory-table.png","alt","My inventory table",1,"banner-bg"],[1,"card"],[1,"card-header"],[1,"card-title"],[1,"card-body"],[1,"card-text"],[1,"card-options"],[1,"card-option"],[1,"card-option-title"],["src","/assets/images/my-inventory-pt-1.png","alt","My inventory depots",1,"card-option-img"],[1,"card-option-desc"],["src","/assets/images/my-inventory-pt-2.png","alt","My inventory risks",1,"card-option-img"],["src","/assets/images/my-inventory-pt-3.png","alt","My inventory compare",1,"card-option-img"],[1,"btns-wrapper"],["target","_blank",1,"btn","btn-success",3,"href"],[3,"portfolio"]]},template:function(o,i){1&o&&e.DNE(0,si,5,4,"ng-container",9)(1,_i,1,1,"app-banner-card-authed",10),2&o&&(e.Y8G("ngIf",i.userService.isUserLoaded()&&i.portfolio()&&null===i.user()),e.R7$(),e.Y8G("ngIf",i.userService.isUserLoaded()&&i.portfolio()&&i.user()))},dependencies:[c.bT,Nt,Lt],styles:[".banner-bg[_ngcontent-%COMP%]{width:100%;filter:blur(6px)}@media (max-width: 767.98px){.banner-bg[_ngcontent-%COMP%]{display:none}}.banner-page[_ngcontent-%COMP%]{position:relative}.card-options[_ngcontent-%COMP%]{display:flex;gap:20px;margin-top:20px}@media (max-width: 767.98px){.card-options[_ngcontent-%COMP%]{flex-direction:column;gap:24px}}.card-option[_ngcontent-%COMP%]{width:33%;display:flex;flex-direction:column;gap:10px}@media (max-width: 767.98px){.card-option[_ngcontent-%COMP%]{width:100%}}.card-option[_ngcontent-%COMP%] .card-option-title[_ngcontent-%COMP%]{font-weight:700}.card-option[_ngcontent-%COMP%] .card-option-img[_ngcontent-%COMP%]{width:100%}.btns-wrapper[_ngcontent-%COMP%]{margin-top:20px;display:flex;justify-content:flex-end}@media (max-width: 575.98px){.btns-wrapper[_ngcontent-%COMP%]{justify-content:stretch}}.btns-wrapper[_ngcontent-%COMP%] .btn-success[_ngcontent-%COMP%]{padding:9.5px 48px}@media (max-width: 575.98px){.btns-wrapper[_ngcontent-%COMP%] .btn-success[_ngcontent-%COMP%]{width:100%;padding:9.5px 24px}}"],changeDetection:0})}}return n})();const ai=()=>({tab:"overview"}),ge=n=>({active:n}),yt=()=>["de"],li=()=>({tab:"chart"}),ci=()=>({tab:"components"}),di=()=>({tab:"analysis"}),fi=()=>({tab:"details"}),pi=n=>({blurred:n}),Ti=()=>({tab:"my-inventory"}),ui=()=>({tab:"dividends"});function Oi(n,_){if(1&n&&(e.qex(0),e.j41(1,"li",31)(2,"a",32),e.pXf(3,12),e.k0s()(),e.nrm(4,"li",33),e.bVm()),2&n){const t=e.XpG(2);e.R7$(2),e.Y8G("queryParams",e.lJ4(2,Ti))("ngClass",e.eq3(3,ge,t.isTabMyInventory))}}function gi(n,_){if(1&n&&(e.j41(0,"a",32),e.pXf(1,13),e.k0s()),2&n){const t=e.XpG(2);e.Y8G("queryParams",e.lJ4(2,ui))("ngClass",e.eq3(3,ge,t.isTabDividends))}}function Ei(n,_){if(1&n&&(e.qex(0),e.j41(1,"a",47),e.PLo(2,14),e.nrm(3,"xetf-icon",48),e.YFu(),e.k0s(),e.nrm(4,"div",33),e.bVm()),2&n){const t=e.XpG(2);e.R7$(),e.Y8G("href",t.fmAppUrl,e.B4B),e.R7$(2),e.Y8G("name","financialManager")}}function hi(n,_){1&n&&e.nrm(0,"app-promotion",49),2&n&&e.Y8G("type","etf_broker")}function mi(n,_){1&n&&e.nrm(0,"app-auth-wall")}function Ri(n,_){if(1&n&&(e.qex(0),e.nrm(1,"app-tab-overview",50),e.bVm()),2&n){const t=e.XpG(2);e.R7$(),e.Y8G("portfolio",t.portfolio)}}function Si(n,_){if(1&n&&(e.qex(0),e.nrm(1,"app-tab-my-inventory",50),e.bVm()),2&n){const t=e.XpG(2);e.R7$(),e.Y8G("portfolio",t.portfolio)}}
1function Ai(n,_){if(1&n&&(e.qex(0),e.nrm(1,"app-charts-container-quote-development",50)(2,"app-charts-container-mdd",50)(3,"app-charts-container-returns",50)(4,"app-charts-rolling-volatility",50),e.bVm()),2&n){const t=e.XpG(2);e.R7$(),e.Y8G("portfolio",t.portfolio),e.R7$(),e.Y8G("portfolio",t.portfolio),e.R7$(),e.Y8G("portfolio",t.portfolio),e.R7$(),e.Y8G("portfolio",t.portfolio)}}function Pi(n,_){if(1&n&&(e.qex(0),e.nrm(1,"app-tab-components",50),e.bVm()),2&n){const t=e.XpG(2);e.R7$(),e.Y8G("portfolio",t.portfolio)}}function bi(n,_){if(1&n&&(e.qex(0),e.nrm(1,"app-tab-analyse",50),e.bVm()),2&n){const t=e.XpG(2);e.R7$(),e.Y8G("portfolio",t.portfolio)}}function Ci(n,_){if(1&n&&(e.qex(0),e.nrm(1,"app-tab-distributions",50),e.bVm()),2&n){const t=e.XpG(2);e.R7$(),e.Y8G("portfolio",t.portfolio)}}function Fi(n,_){if(1&n&&(e.qex(0),e.nrm(1,"app-tab-coverage",50),e.bVm()),2&n){const t=e.XpG(2);e.R7$(),e.Y8G("portfolio",t.portfolio)}}function Mi(n,_){if(1&n&&(e.j41(0,"div",51)(1,"div",52)(2,"h2",53),e.pXf(3,15),e.k0s()(),e.nrm(4,"div",54),e.k0s()),2&n){const t=e.XpG(2);e.R7$(4),e.Y8G("innerHTML",t.portfolio.disclaimer,e.npT)}}function Ii(n,_){if(1&n&&(e.qex(0),e.nrm(1,"app-ad-block",17),e.j41(2,"div",18)(3,"div",19)(4,"div",20)(5,"div",21)(6,"h1",22),e.EFF(7),e.k0s()()(),e.j41(8,"div",23)(9,"div",24)(10,"span",25),e.EFF(11),e.nI1(12,"customPercentage"),e.nI1(13,"dashIfEmpty"),e.k0s(),e.j41(14,"span",26),e.pXf(15,1),e.k0s()(),e.j41(16,"div",24)(17,"span",25),e.EFF(18),e.nI1(19,"customPercentage"),e.k0s(),e.j41(20,"span",26),e.pXf(21,2),e.k0s()(),e.j41(22,"div",24)(23,"span",25),e.EFF(24),e.nI1(25,"date"),e.k0s(),e.j41(26,"span",26),e.pXf(27,3),e.k0s()(),e.j41(28,"div",24)(29,"span",25),e.EFF(30),e.nI1(31,"dashIfEmpty"),e.k0s(),e.j41(32,"span",26),e.pXf(33,4),e.k0s()()()(),e.j41(34,"div",27)(35,"div",28)(36,"div",29)(37,"ul",30)(38,"li",31)(39,"a",32),e.pXf(40,5),e.k0s()(),e.nrm(41,"li",33),e.DNE(42,Oi,5,5,"ng-container",34),e.j41(43,"li",31)(44,"a",32),e.pXf(45,6),e.k0s()(),e.nrm(46,"li",33),e.j41(47,"li",31)(48,"a",32),e.pXf(49,7),e.k0s()(),e.nrm(50,"li",33),e.j41(51,"li",31)(52,"a",32),e.pXf(53,8),e.k0s()(),e.nrm(54,"li",33),e.j41(55,"li",31),e.DNE(56,gi,2,5,"a",35),e.k0s(),e.nrm(57,"li",33),e.j41(58,"li",31)(59,"a",32),e.pXf(60,9),e.k0s()()()(),e.nrm(61,"div",36),e.j41(62,"div",37),e.DNE(63,Ei,5,2,"ng-container",34),e.j41(64,"a",38),e.PLo(65,10),e.nrm(66,"xetf-icon",39),e.YFu(),e.k0s()()()()(),e.DNE(67,hi,1,1,"app-promotion",40),e.j41(68,"div",41)(69,"div",42)(70,"app-blur-wrapper",43),e.DNE(71,mi,1,0,"ng-template",null,0,e.C5r),e.j41(73,"div",44),e.DNE(74,Ri,2,1,"ng-container",16)(75,Si,2,1,"ng-container",16)(76,Ai,5,4,"ng-container",16)(77,Pi,2,1,"ng-container",16)(78,bi,2,1,"ng-container",16)(79,Ci,2,1,"ng-container",16)(80,Fi,2,1,"ng-container",16)(81,Mi,5,1,"div",45),e.k0s()()()(),e.j41(82,"p",46),e.PLo(83,11),e.nrm(84,"b")(85,"br"),e.YFu(),e.k0s(),e.bVm()),2&n){const t=e.XpG();e.R7$(7),e.SpI(" ",t.portfolio.name," "),e.R7$(4),e.JRh(e.bMT(13,34,e.i5U(12,31,t.portfolio.equity_ratio,0))),e.R7$(7),e.JRh(e.ii3(19,36,t.portfolio.portfolio_ter,2,""," p.a.")),e.R7$(6),e.JRh(e.bMT(25,41,t.portfolio.start)),e.R7$(6),e.JRh(e.bMT(31,43,t.portfolio.portfolio_anzahl_etfs)),e.R7$(9),e.Y8G("queryParams",e.lJ4(45,ai))("ngClass",e.eq3(46,ge,t.isTabOverview)),e.R7$(3),e.Y8G("xetfLocaleVisible",e.lJ4(48,yt)),e.R7$(2),e.Y8G("queryParams",e.lJ4(49,li))("ngClass",e.eq3(50,ge,t.isTabChart)),e.R7$(4),e.Y8G("queryParams",e.lJ4(52,ci))("ngClass",e.eq3(53,ge,t.isTabComponents)),e.R7$(4),e.Y8G("queryParams",e.lJ4(55,di))("ngClass",e.eq3(56,ge,t.isTabAnalysis)),e.R7$(4),e.Y8G("ngIf",t.hasDistributions),e.R7$(3),e.Y8G("queryParams",e.lJ4(58,fi))("ngClass",e.eq3(59,ge,t.isTabCoverage)),e.R7$(4),e.Y8G("xetfLocaleVisible",e.lJ4(61,yt)),e.R7$(3),e.Y8G("name","chevron")("size",14),e.R7$(),e.Y8G("ngIf",!t.isTabOverview),e.R7$(3),e.Y8G("show",t.showAuthOffer),e.R7$(3),e.Y8G("ngClass",e.eq3(62,pi,t.showAuthOffer)),e.R7$(),e.Y8G("ngIf",t.isTabOverview),e.R7$(),e.Y8G("ngIf",t.isTabMyInventory&&t.isBrowser),e.R7$(),e.Y8G("ngIf",t.isTabChart&&t.isBrowser),e.R7$(),e.Y8G("ngIf",t.isTabComponents),e.R7$(),e.Y8G("ngIf",t.isTabAnalysis),e.R7$(),e.Y8G("ngIf",t.isTabDividends&&t.hasDistributions),e.R7$(),e.Y8G("ngIf",t.isTabCoverage),e.R7$(),e.Y8G("ngIf",t.portfolio.disclaimer)}}let vt=(()=>{class n{constructor(t,o,i,r,l,d){this.seoService=t,this.userService=o,this.route=i,this.portfolioService=r,this.localeService=l,this._cdr=d,this.fmAppUrl=Ae.c.fmAppUrl,this.AVAILABLE_TABS=this.assembleTabs(),this.isBrowser=(0,e.WQX)($.T).isBrowser,this._destroy=(0,e.WQX)(e.abz)}ngOnInit(){this.isLoggedIn=this.userService.isLoggedIn,this.route.data.pipe((0,fe.pQ)(this._destroy)).subscribe(o=>{this.portfolio=new He._X(o.breadcrumb),this.updatePermissions(),this.portfolio&&
1(this.hasDistributions=!(!this.portfolio.distributions||!this.portfolio.distributions.length),this.seoService.setCmsMeta(this.portfolio.seo)),this._cdr.markForCheck()});let t=!0;this.route.queryParams.pipe((0,fe.pQ)(this._destroy)).subscribe(o=>{const i=o.tab||"";this.selectedTab=i&&this.AVAILABLE_TABS.find(r=>r===i)||this.AVAILABLE_TABS[0],this.updatePermissions(),t?t=!1:this._cdr.markForCheck()})}updatePermissions(){this.isLoggedIn=this.userService.isLoggedIn,this.showAuthOffer=!this.isLoggedIn&&!this.isTabOverview&&!this.isTabMyInventory}get isTabOverview(){return!this.selectedTab||"overview"===this.selectedTab}get isTabMyInventory(){return"my-inventory"===this.selectedTab}get isTabChart(){return"chart"===this.selectedTab}get isTabComponents(){return"components"===this.selectedTab}get isTabAnalysis(){return"analysis"===this.selectedTab}get isTabTd(){return"td"===this.selectedTab}get isTabDividends(){return"dividends"===this.selectedTab}get isTabCoverage(){return"details"===this.selectedTab}assembleTabs(){return(0,Rn.s)([{item:"overview"},{item:"my-inventory",visible:["de"]},{item:"chart"},{item:"components"},{item:"analysis"},{item:"dividends"},{item:"details"}],this.localeService.locale)}static{this.\u0275fac=function(o){return new(o||n)(e.rXU(Ze.B),e.rXU(Je.D),e.rXU(p.nX),e.rXU(le),e.rXU(Pe.i),e.rXU(e.gRc))}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-etf-portfolio"]],hostAttrs:["ngSkipHydration","true"],decls:1,vars:1,consts:()=>{let t,o,i,r,l,d,T,L,F,E,y,H,Z,J,q;return t="Aktienquote",o="Portfolio TER",i=" Starttag ",r="Anzahl ETFs",l="\xDCberblick",d=" Chart ",T="Allokation",L=" Analyse ",F=" Abdeckung ",E="" + "\ufffd#66\ufffd" + "" + "\ufffd/#66\ufffd" + " Zur \xDCbersicht ",y="" + "\ufffd#84\ufffd" + "Disclaimer:" + "\ufffd/#84\ufffd" + " Die bereitgestellten Inhalte (Portfolios, Kurse, Indizes, Preise, Kennzahlen und allgemeinen Marktdaten) dienen ausschlie\xDFlich Ihrer Information." + "\ufffd#85\ufffd\ufffd/#85\ufffd" + " Eine allgemeine und individuelle Verm\xF6gens- und Wertpapierberatung wird im Rahmen dieses Internet-Auftrittes nicht angeboten. Mit der Bereitstellung der Inhalte ist keine Anlageempfehlung verbunden. ",H=" Mein Bestand ",Z="Aussch\xFCttungen",J="" + "\ufffd#3\ufffd" + "" + "\ufffd/#3\ufffd" + " Portfolio erstellen ",q=" Risikohinweis ",[["aboveBlur",""],t,o,i,r,l,d,T,L,F,E,y,H,Z,J,q,[4,"ngIf"],["id","ADS_PORTFOLIO_BILLBOARD"],[1,"card","profile-card"],[1,"card-body"],[1,"investment-name-wrapper","pb-3"],[1,"investment-name"],[1,"me-md-3"],[1,"top-info","desktop-only"],[1,"top-info-column"],[1,"value"],[1,"text-muted"],[1,"table-card"],["appToolbarScrollable","",1,"toolbar-container","with-misc-items"],[1,"toolbar-main-items"],[1,"nav","nav-pills"],[1,"nav-item"],["data-toggle","pill","routerLink",".",1,"nav-link",3,"queryParams","ngClass"],[1,"separator"],[4,"xetfLocaleVisible"],["class","nav-link","data-toggle","pill","routerLink",".",3,"queryParams","ngClass",4,"ngIf"],[1,"border-placeholder"],[1,"toolbar-misc-items"],["routerLink","/etf-portfolio",1,"btn","btn-link","btn-aft-icon","btn-sm"],[1,"rotate-90","me-1",3,"name","size"],[3,"type",4,"ngIf"],[1,"tab-content"],[1,"auth-offer-container"],[3,"show"],[1,"tab-pane","active",3,"ngClass"],["class","card",4,"ngIf"],[1,"text-muted","mt-5"],["target","_blank",1,"btn","btn-link","btn-aft-icon","btn-sm",3,"href"],[1,"me-1",3,"name"],[3,"type"],[3,"portfolio"],[1,"card"],[1,"card-header"],[1,"card-title"],[1,"card-body",3,"innerHTML"]]},template:function(o,i){1&o&&e.DNE(0,Ii,86,64,"ng-container",16),2&o&&e.Y8G("ngIf",i.portfolio)},dependencies:[p.Wk,tt.B,c.YU,c.bT,Y.Rl,nt.Y,ot.w,An.e,V.E,Pn.Y,it,rt,at,ct,dt,pt,Tt,Ot,It,$t,g.hD,g.b3,c.vh],styles:[".profile-card[_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{font-size:1.625rem}@media (max-width: 575.98px){.profile-card[_ngcontent-%COMP%] .toolbar-container.with-misc-items[_ngcontent-%COMP%] .toolbar-misc-items[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]:not(.separator){padding-left:.875rem;padding-right:.875rem}}"],changeDetection:0})}}return n})();var Ni=s(5964),te=s(44668),Ce=s(91906),we=s(70152),Fe=s(23294),re=s(21413),Li=s(92771),kt=s(99172),$e=s(57786),ye=s(84572),Bt=s(96697);const Ee={min:0,max:100},he={min:0,max:15};let ve=(()=>{class n{constructor(t){this.portfolioService=t,this.clearAll$=new re.B,this.clearGroupId$=new re.B,this.toggleGroupId$=new re.B,this.initialGroup$=(0,Q.of)(void 0),this.initialStocksShares$=(0,Q.of)(Ee),this.setStocksShares$=new re.B,this.resetStocksShares$=new re.B,this.initialNumberOfEtfs$=(0,Q.of)(void 0),this.setNumberOfEtfs$=new re.B,this.resetNumberOfEtfs$=new re.B,this.initialSearch$=(0,Q.of)(""),this.searchInputValue$=new Li.m,this.resetSearch$=new re.B,this.initialYieldDistribution$=(0,Q.of)(he),this.setYieldDistribution$=new re.B,this.resetYieldDistribution$=new re.B,this.groups$=this.portfolioService.getGroups().pipe((0,kt.Z)([]),(0,te.t)({refCount:!0,bufferSize:1})),this.selectedGroupId$=(0,$e.h)(this.toggleGroupId$.pipe((0,Ve.n)(o=>this.getToggledGroupId(o))),this.initialGroup$,this.clearGroupId$.pipe((0,b.T)(()=>{})),this.clearAll$.pipe((0,b.T)(()=>{}))).pipe((0,Fe.F)(),(0,te.t)({refCount:!0,bufferSize:1})),this.stocksShares$=(0,$e.h)(this.initialStocksShares$,this.setStocksShares$.pipe((0,we.B)(300)),this.clearAll$.pipe((0,b.T)(()=>Ee)),this.resetStocksShares$.pipe((0,b.T)(()=>Ee))).pipe((0,Fe.F)((o,i)=>o.min===i.min&&o.max===i.max),(0,te.t)({refCount:!0,bufferSize:1})),this.numberOfEtfs$=(0,$e.h)(this.initialNumberOfEtfs$,this.setNumberOfEtfs$,this.resetNumberOfEtfs$.pipe((0,b.T)(()=>{})),this.clearAll$.pipe((0,b.T)(()=>{}))).pipe((0,Fe.F)((o,i)=>o?.min===i?.min&&o?.max===i?.max),(0,te.t)({refCount:!0,bufferSize:1})),this.search$=(0,$e.h)(this.initialSearch$,this.searchInputValue$,this.resetSearch$.pipe((0,b.T)(()=>{})),this.clearAll$.pipe((0,b.T)(()=>{}))).pipe((0,Fe.F)(),(0,te.t)({refCount:!0,bufferSize:1})),this.yieldDistribution$=(0,$e.h)(this.initialYieldDistribution$,this.setYieldDistribution$.pipe((0,we.B)(300)),this.clearAll$.pipe((0,b.T)(()=>he)),this.resetYieldDistribution$.pipe((0,b.T)(()=>he))).pipe((0,Fe.F)((o,i)=>o.min===i.min&&o.max===i.max),(0,te.t)({refCount:!0,bufferSize:1})),this.selectedGroup$=(0,ye.z)([this.selectedGroupId$,this.groups$]).pipe((0,b.T)(([o,i])=>i.find(r=>r.id===o)))}toggleGroup(t){this.toggleGroupId$.next(t)}setStocksShares(t,o){this.setStocksShares$.next({min:t,max:o})}resetStocksShares(){this.resetStocksShares$.next()}clearGroupId(){this.clearGroupId$.next()}setNumberOfEtfs(t,o){this.setNumberOfEtfs$.next({min:t,max:o})}resetNumberOfEtfs(){this.resetNumberOfEtfs$.next()}changeSearchInputValue(t){this.searchInputValue$.next(t)}resetSearch(){this.resetSearch$.next()}setYieldDistribution(t,o){this.setYieldDistribution$.next({min:t,max:o})}resetYieldDistribution(){this.resetYieldDistribution$.next()}clearAll(){this.clearAll$.next()}
1getToggledGroupId(t){return this.getSelectedGroupId().pipe((0,Bt.s)(1),(0,b.T)(o=>t===o?void 0:t))}getSelectedGroupId(){return this.selectedGroupId$}static{this.\u0275fac=function(o){return new(o||n)(e.KVO(le))}}static{this.\u0275prov=e.jDH({token:n,factory:n.\u0275fac})}}return n})();const $i=(n,_)=>({small:n,active:_}),yi={1:"indigo",2:"primary",3:"violet",4:"orange",5:"danger",6:"teal",7:"brown",8:"pink",9:"green",10:"info"};let Dt=(()=>{class n{constructor(){this.group=e.hFB.required(),this.small=(0,e.hFB)(!1,{transform:e.L39}),this.isGroupSelected=(0,e.hFB)(!1),this.groupSelected=(0,e.CGW)(),this.color=(0,e.EWP)(()=>yi[this.group().order]||"grey")}handleGroupClick(){this.groupSelected.emit(this.group().id)}static{this.\u0275fac=function(o){return new(o||n)}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-etf-portfolio-group"]],inputs:{group:[1,"group"],small:[1,"small"],isGroupSelected:[1,"isGroupSelected"]},outputs:{groupSelected:"groupSelected"},standalone:!0,features:[e.aNF],decls:2,vars:8,consts:[[3,"click","ngClass"]],template:function(o,i){1&o&&(e.j41(0,"button",0),e.bIt("click",function(){return i.handleGroupClick()}),e.EFF(1),e.k0s()),2&o&&(e.ZvI("etf-portfolio-filter-element ",i.color(),""),e.Y8G("ngClass",e.l_i(5,$i,i.small(),i.isGroupSelected())),e.R7$(),e.JRh(i.group().name))},dependencies:[c.YU],styles:["[_nghost-%COMP%]{display:block}.etf-portfolio-filter-element[_ngcontent-%COMP%]{border-radius:5px;font-size:12px;padding:6px 12px}.etf-portfolio-filter-element.small[_ngcontent-%COMP%]{font-size:9px;padding:3.5px 5px;font-weight:700}.etf-portfolio-filter-element.indigo[_ngcontent-%COMP%]{border:1px solid #3f51b5;background:#e8eaf6;color:#3f51b5}.etf-portfolio-filter-element.indigo.active[_ngcontent-%COMP%], .etf-portfolio-filter-element.indigo[_ngcontent-%COMP%]:hover{background:#3f51b5;color:#e8eaf6}.etf-portfolio-filter-element.primary[_ngcontent-%COMP%]{border:1px solid #1e88e5;background:#e4f4fe;color:#1e88e5}.etf-portfolio-filter-element.primary.active[_ngcontent-%COMP%], .etf-portfolio-filter-element.primary[_ngcontent-%COMP%]:hover{background:#1e88e5;color:#e4f4fe}.etf-portfolio-filter-element.violet[_ngcontent-%COMP%]{border:1px solid #9c27b0;background:#f3e5f5;color:#9c27b0}.etf-portfolio-filter-element.violet.active[_ngcontent-%COMP%], .etf-portfolio-filter-element.violet[_ngcontent-%COMP%]:hover{background:#9c27b0;color:#f3e5f5}.etf-portfolio-filter-element.orange[_ngcontent-%COMP%]{border:1px solid #f57c00;background:#fff3e0;color:#f57c00}.etf-portfolio-filter-element.orange.active[_ngcontent-%COMP%], .etf-portfolio-filter-element.orange[_ngcontent-%COMP%]:hover{background:#f57c00;color:#fff3e0}.etf-portfolio-filter-element.danger[_ngcontent-%COMP%]{border:1px solid #f44336;background:#f8e2e0;color:#f44336}.etf-portfolio-filter-element.danger.active[_ngcontent-%COMP%], .etf-portfolio-filter-element.danger[_ngcontent-%COMP%]:hover{background:#f44336;color:#f8e2e0}.etf-portfolio-filter-element.teal[_ngcontent-%COMP%]{border:1px solid #009688;background:#e0f2f1;color:#009688}.etf-portfolio-filter-element.teal.active[_ngcontent-%COMP%], .etf-portfolio-filter-element.teal[_ngcontent-%COMP%]:hover{background:#009688;color:#e0f2f1}.etf-portfolio-filter-element.brown[_ngcontent-%COMP%]{border:1px solid #795548;background:#efebe9;color:#795548}.etf-portfolio-filter-element.brown.active[_ngcontent-%COMP%], .etf-portfolio-filter-element.brown[_ngcontent-%COMP%]:hover{background:#795548;color:#efebe9}.etf-portfolio-filter-element.pink[_ngcontent-%COMP%]{border:1px solid #ec407a;background:#fce4ec;color:#ec407a}.etf-portfolio-filter-element.pink.active[_ngcontent-%COMP%], .etf-portfolio-filter-element.pink[_ngcontent-%COMP%]:hover{background:#ec407a;color:#fce4ec}.etf-portfolio-filter-element.green[_ngcontent-%COMP%]{border:1px solid #689f38;background:#f1f8e9;color:#689f38}.etf-portfolio-filter-element.green.active[_ngcontent-%COMP%], .etf-portfolio-filter-element.green[_ngcontent-%COMP%]:hover{background:#689f38;color:#f1f8e9}.etf-portfolio-filter-element.info[_ngcontent-%COMP%]{border:1px solid #00bcd4;background:#e0f7fa;color:#0097a7}.etf-portfolio-filter-element.info.active[_ngcontent-%COMP%], .etf-portfolio-filter-element.info[_ngcontent-%COMP%]:hover{background:#0097a7;color:#e0f7fa}.etf-portfolio-filter-element.grey[_ngcontent-%COMP%]{border:1px solid #666;background:#fafafa;color:#666}.etf-portfolio-filter-element.grey.active[_ngcontent-%COMP%], .etf-portfolio-filter-element.grey[_ngcontent-%COMP%]:hover{background:#666;color:#fafafa}"],changeDetection:0})}}return n})();var vi=s(52771);const xt=(n,_)=>_.id,ki=(n,_)=>_.key;function Bi(n,_){1&n&&(e.j41(0,"div",12),e.nrm(1,"xetf-spinner",20),e.k0s()),2&n&&(e.R7$(),e.Y8G("color","logo"))}function Di(n,_){if(1&n){const t=e.RV6();e.j41(0,"button",34),e.bIt("click",function(){e.eBV(t);const i=e.XpG(4);return e.Njj(i.handleCategoryDeselect())}),e.EFF(1),e.k0s()}if(2&n){const t=e.XpG().$implicit;e.R7$(),e.JRh(t.name)}}function xi(n,_){if(1&n){const t=e.RV6();e.j41(0,"button",35),e.bIt("click",function(){e.eBV(t);const i=e.XpG().$index,r=e.XpG(),l=e.XpG(2);return e.Njj(l.handleCategorySelect(r[i].id))}),e.EFF(1),e.k0s()}if(2&n){const t=e.XpG().$implicit;e.R7$(),e.JRh(t.name)}}function Yi(n,_){if(1&n&&(e.DNE(0,Di,2,1,"button",32),e.nI1(1,"async"),e.DNE(2,xi,2,1,"button",33)),2&n){const t=_.$implicit,o=e.XpG(3);e.vxM(t.id===e.bMT(1,1,o.selectedCategoryId$)?0:2)}}function Gi(n,_){1&n&&e.Z7z(0,Yi,3,3,null,null,xt),2&n&&e.Dyx(_)}function Xi(n,_){if(1&n){const t=e.RV6();e.j41(0,"xetf-radio",36),e.bIt("checkedChange",function(){const i=e.eBV(t).$implicit,r=e.XpG(2);return e.Njj(r.changeNumberOfEtfs(i.value.min,i.value.max))}),e.k0s()}if(2&n){let t;const o=_.$implicit,i=e.XpG(2);e.Y8G("label",o.key)("size",16)("checked",o.value.min===(null==(t=i.numberOfEtfs())?null:t.min)&&o.value.max===(null==(t=i.numberOfEtfs())?null:t.max))}}function Vi(n,_){if(1&n){const t=e.RV6();e.j41(0,"div",21)(1,"div",22)(2,"div"),e.pXf(3,3),e.k0s(),e.j41(4,"div",23),e.DNE(
15,Gi,2,0),e.nI1(6,"async"),e.k0s(),e.j41(7,"div",24),e.pXf(8,4),e.k0s(),e.j41(9,"div",25)(10,"ngx-slider",26),e.nI1(11,"async"),e.nI1(12,"async"),e.bIt("userChange",function(i){e.eBV(t);const r=e.XpG();return e.Njj(r.changeStockShares(i))}),e.k0s()(),e.j41(13,"div",24),e.pXf(14,5),e.k0s(),e.j41(15,"div",25)(16,"ngx-slider",26),e.nI1(17,"async"),e.nI1(18,"async"),e.bIt("userChange",function(i){e.eBV(t);const r=e.XpG();return e.Njj(r.changeYieldDistribution(i))}),e.k0s()(),e.j41(19,"div",24),e.pXf(20,6),e.k0s(),e.j41(21,"div",27),e.Z7z(22,Xi,1,3,"xetf-radio",28,ki),e.k0s(),e.j41(24,"div",29)(25,"button",30),e.bIt("click",function(){e.eBV(t);const i=e.XpG();return e.Njj(i.resetAll())}),e.pXf(26,7),e.k0s(),e.j41(27,"button",31),e.bIt("click",function(){e.eBV(t),e.XpG();const i=e.sdS(5);return e.Njj(i.hide())}),e.pXf(28,8),e.k0s()()()()}if(2&n){let t;const o=e.XpG();e.R7$(5),e.vxM((t=e.bMT(6,7,o.categories$))?5:-1,t),e.R7$(5),e.Y8G("value",e.bMT(11,9,o.stockSharesMinValue$))("highValue",e.bMT(12,11,o.stockSharesMaxValue$))("options",o.stockOptions),e.R7$(6),e.Y8G("value",e.bMT(17,13,o.yieldDistributionMinValue$))("highValue",e.bMT(18,15,o.yieldDistributionMaxValue$))("options",o.distributionYieldOptions),e.R7$(6),e.Dyx(o.numberOfEtfsEntries)}}function wi(n,_){if(1&n){const t=e.RV6();e.j41(0,"app-etf-portfolio-group",37),e.nI1(1,"async"),e.bIt("groupSelected",function(i){e.eBV(t);const r=e.XpG();return e.Njj(r.handleCategorySelect(i))}),e.k0s()}if(2&n){const t=_.$implicit,o=e.XpG();e.Y8G("group",t)("isGroupSelected",e.bMT(1,2,o.selectedCategoryId$)===t.id)}}let Yt=(()=>{class n{constructor(t){this.filtersState=t,this.searchControl=new ce.MJ(""),this.loading$=(0,Q.of)(!1),this.HIGHLIGHT_COLORS=["indigo","primary","violet","orange","danger","teal"],this.stockOptions={floor:Ee.min,ceil:Ee.max,step:5,translate:(i,r)=>i+"%"},this.distributionYieldOptions={floor:he.min,ceil:he.max,step:.5,translate:(i,r)=>i+"%"},this.numberOfEtfsEntries=[{key:"1 bis 2",value:{min:1,max:2}},{key:"3 bis 5",value:{min:3,max:5}},{key:"6 bis 9",value:{min:6,max:9}},{key:"Ab 10",value:{min:10,max:1/0}}],this.categories$=this.filtersState.groups$,this.selectedCategoryId$=this.filtersState.selectedGroupId$,this.stockSharesMinValue$=this.filtersState.stocksShares$.pipe((0,b.T)(i=>i.min)),this.stockSharesMaxValue$=this.filtersState.stocksShares$.pipe((0,b.T)(i=>i.max)),this.yieldDistributionMinValue$=this.filtersState.yieldDistribution$.pipe((0,b.T)(i=>i.min)),this.yieldDistributionMaxValue$=this.filtersState.yieldDistribution$.pipe((0,b.T)(i=>i.max)),this.numberOfEtfs=(0,fe.ot)(this.filtersState.numberOfEtfs$,{initialValue:void 0}),this.filtersState.search$.pipe((0,fe.pQ)()).subscribe(i=>{this.searchControl.setValue(i)}),this.searchControl.valueChanges.pipe((0,we.B)(300),(0,Fe.F)(),(0,fe.pQ)()).subscribe(i=>{this.filtersState.changeSearchInputValue(i)})}resetAll(){this.filtersState.clearAll()}handleCategorySelect(t){this.filtersState.toggleGroup(t)}handleCategoryDeselect(){this.filtersState.clearGroupId()}changeStockShares(t){this.filtersState.setStocksShares(t.value,t.highValue)}changeNumberOfEtfs(t,o){this.filtersState.setNumberOfEtfs(t,o)}changeYieldDistribution(t){this.filtersState.setYieldDistribution(t.value,t.highValue)}static{this.\u0275fac=function(o){return new(o||n)(e.rXU(ve))}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-etf-portfolio-search"]],standalone:!0,features:[e.aNF],decls:20,vars:10,consts:()=>{let t,o,i,r,l,d,T,L,F;return t="Suchbegriff eingeben",o="Hier kannst du nach bestimmten Musterportfolios suchen oder die Auswahl mit Filtern eingrenzen.",i="" + "\ufffd#14\ufffd" + "" + "\ufffd/#14\ufffd" + " Filtern ",r="Kategorie:",l="Aktienquote:",d="Aussch\xFCttungsrendite:",T="Anzahl ETFs:",L="Zur\xFCcksetzen",F="Anwenden",[["dropdown","bs-dropdown"],o,i,r,l,d,T,L,F,["placeholder","email",1,"d-none"],["dropdown","",1,"d-flex","flex-column","flex-md-row","mt-3","gap-2","position-relative",3,"insideClick"],[1,"input-group","mb-0"],[1,"input-group-text"],[3,"name","size"],["autocomplete","off","type","search","placeholder",t,"name","articles-search","dropdownToggle","",1,"form-control",3,"formControl"],["dropdownToggle","",1,"btn","btn-primary","btn-sm","btn-aft-icon","px-2","px-md-4","px-xl-5"],["name","filter",1,"me-1",3,"size"],["class","dropdown-menu arrow-top",4,"dropdownMenu"],[1,"d-none","d-md-flex","mt-3","gap-2"],[3,"group","isGroupSelected"],[3,"color"],[1,"dropdown-menu","arrow-top"],[1,"px-3","py-2"],[1,"d-flex","gap-2","flex-wrap","mt-2"],[1,"mt-2"],[1,"mt-3"],[3,"userChange","value","highValue","options"],[1,"mt-2","d-flex","radio-container","gap-3","flex-wrap"],[3,"label","size","checked"],[1,"d-flex","justify-content-between","mt-3"],[1,"btn","btn-sm","btn-primary",3,"click"],[1,"btn","btn-sm","btn-success",3,"click"],[1,"btn","btn-primary","btn-sm"],[1,"btn","btn-outline-primary","btn-sm"],[1,"btn","btn-primary","btn-sm",3,"click"],[1,"btn","btn-outline-primary","btn-sm",3,"click"],[3,"checkedChange","label","size","checked"],[3,"groupSelected","group","isGroupSelected"]]},template:function(o,i){if(1&o&&(e.j41(0,"div")(1,"div"),e.pXf(2,1),e.k0s(),e.nrm(3,"input",9),e.j41(4,"div",10,0)(6,"div",11)(7,"div",12),e.nrm(8,"xetf-icon",13),e.k0s(),e.nrm(9,"input",14),e.DNE(10,Bi,2,1,"div",12),e.nI1(11,"async"),e.k0s(),e.j41(12,"button",15),e.PLo(13,2),e.nrm(14,"xetf-icon",16),e.YFu(),e.k0s(),e.DNE(15,Vi,29,17,"div",17),e.k0s(),e.j41(16,"div",18),e.Z7z(17,wi,2,4,"app-etf-portfolio-group",19,xt),e.nI1(19,"async"),e.k0s()()),2&o){let r;e.R7$(4),e.Y8G("insideClick",!0),e.R7$(4),e.Y8G("name","search")("size",18),e.R7$(),e.Y8G("formControl",i.searchControl),e.R7$(),e.vxM(e.bMT(11,6,i.loading$)?10:-1),e.R7$(4),e.Y8G("size",20),e.R7$(3),e.Dyx(null==(r=e.bMT(19,8,i.categories$))?null:r.slice(0,6))}},dependencies:[c.Jj,ce.X1,ce.me,ce.BC,ce.l_,Oe.zE,Oe.hs,Oe.UL,Oe.Kk,Ce.Ti,Ce.d1,Dt,Y.Rl,Y.tI,vi.v],styles:["[_nghost-%COMP%]{display:block}"],changeDetection:0})}}return n})(),Gt=(()=>{class n{constructor(t){this.filtersService=t,this.filters$=(0,ye.z)([this.filtersService.selectedGroupId$,this.filtersService.stocksShares$,this.filtersService.numberOfEtfs$,this.filtersService.search$,this.filtersService.yieldDistribution$]).pipe((0,b.T)(([o,i,r,l,d])=>{const T={group:o,stocks_quote_min:i.min,stocks_quote_max:i.max,yield_distribution_current_year_min:d.min,yield_distribution_current_year_max:d.max};return r&&(T.number_of_etfs_min=r.min,r.max!==1/0&&(T.number_of_etfs_max=r.max)),l&&(T.name=l),T}),(0,we.B)(0),(0,te.t)({refCount:!0,bufferSize:1})),this.filtersQp$=this.filters$.pipe((0,b.T)(o=>
1this.filtersToQp(o)),(0,te.t)({refCount:!0,bufferSize:1}))}filtersToQp(t){return Object.entries(t).filter(([,o])=>(0,f.J5)(o)).map(([o,i])=>({key:o,value:i}))}static{this.\u0275fac=function(o){return new(o||n)(e.KVO(ve))}}static{this.\u0275prov=e.jDH({token:n,factory:n.\u0275fac})}}return n})();var ji=s(24526);function zi(n,_){if(1&n&&(e.nrm(0,"div",6),e.nI1(1,"keepHtml")),2&n){const t=e.XpG(2);e.Y8G("innerHtml",e.bMT(1,1,t.tooltipValue()),e.npT)}}function Ui(n,_){if(1&n&&(e.j41(0,"span",3),e.nrm(1,"xetf-icon",5),e.DNE(2,zi,2,3,"ng-template",null,0,e.C5r),e.k0s()),2&n){const t=e.sdS(3);e.R7$(),e.Y8G("size",16)("tooltip",t)("adaptivePosition",!1)}}function Wi(n,_){if(1&n){const t=e.RV6();e.j41(0,"app-etf-portfolio-group",7),e.bIt("groupSelected",function(i){e.eBV(t);const r=e.XpG();return e.Njj(r.handleGroupSelect(i))}),e.k0s()}2&n&&e.Y8G("group",_)}let Hi=(()=>{class n{constructor(t){this.filtersService=t,this.description=(0,e.vPA)(""),this.tooltipValue=(0,e.vPA)(""),this.slug=(0,e.vPA)(""),this.group=(0,e.vPA)(void 0)}init(t,o,i){this.description.set(i.description),this.tooltipValue.set(i.tooltipValue),this.slug.set(i.slug),this.group.set(i.group)}handleGroupSelect(t){this.filtersService.toggleGroup(t)}static{this.\u0275fac=function(o){return new(o||n)(e.rXU(ve))}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-portfolio-title"]],standalone:!0,features:[e.aNF],decls:6,vars:4,consts:[["tooltip",""],[1,"d-flex","align-items-center","gap-2"],[3,"routerLink"],[1,"info-circle"],["small","true",3,"group"],["name","infoCircle","placement","right","containerClass","adaptive-wikifolio-tooltip",1,"text-primary",3,"size","tooltip","adaptivePosition"],[3,"innerHtml"],["small","true",3,"groupSelected","group"]],template:function(o,i){if(1&o&&(e.j41(0,"div")(1,"span",1)(2,"a",2),e.EFF(3),e.k0s(),e.DNE(4,Ui,4,3,"span",3),e.k0s(),e.DNE(5,Wi,1,1,"app-etf-portfolio-group",4),e.k0s()),2&o){let r;e.R7$(2),e.Y8G("routerLink",i.slug()),e.R7$(),e.SpI(" ",i.description()," "),e.R7$(),e.vxM(i.tooltipValue()?4:-1),e.R7$(),e.vxM((r=i.group())?5:-1,r)}},dependencies:[Ye.Ss,Ye.dg,p.iI,p.Wk,Dt,g.l3,Y.Rl],styles:[".info-circle[_ngcontent-%COMP%]{height:16px;width:16px}"],changeDetection:0})}}return n})();var Ji=s(6867);function Ki(n,_){if(1&n&&(e.nrm(0,"app-percentage-circle",1),e.j41(1,"span"),e.EFF(2),e.nI1(3,"customPercentage"),e.k0s()),2&n){const t=e.XpG();e.Y8G("percentages",t.percentage())("circleSize",30)("borderSize",8)("showPercentageFigure",!1),e.R7$(2),e.JRh(e.i5U(3,5,t.percentage(),0))}}function Qi(n,_){1&n&&e.EFF(0," \u2014 ")}let Zi=(()=>{class n{constructor(){this.percentage=(0,e.vPA)(void 0)}init(t,o,i){this.percentage.set(i.percentage)}static{this.\u0275fac=function(o){return new(o||n)}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-portfolio-stocks-share"]],standalone:!0,features:[e.aNF],decls:3,vars:1,consts:[[1,"d-flex","flex-column","align-items-center","gap-1"],["palette","primary",3,"percentages","circleSize","borderSize","showPercentageFigure"]],template:function(o,i){if(1&o&&(e.j41(0,"span",0),e.DNE(1,Ki,4,8)(2,Qi,1,0),e.k0s()),2&o){let r;e.R7$(),e.vxM((r=i.percentage())?1:2,r)}},dependencies:[Ji.U,g.b3],encapsulation:2,changeDetection:0})}}return n})();class ke extends ue.k{constructor(){super("Portfolio",void 0,void 0,"text-start"),this.defaultOrderingAsc=!0}getType(){return Hi}getPayload(_){return{description:_.name,tooltipValue:_.seo_description,slug:_.slug,group:_.group}}getOrderingValue(_){return _.name}}const er={title:"Anzahl ETFs",headerClasses:"text-end",getValue:n=>n.portfolio_anzahl_etfs+" St.",getOrderingValue:n=>n.portfolio_anzahl_etfs},tr={title:"Portfolio TER",headerClasses:"text-end",getValue:n=>(new g.b3).transform(n.portfolio_ter),getOrderingValue:n=>n.portfolio_ter},nr={title:"Dividendenrendite",headerClasses:"text-end",getValue:n=>(new g.yi).transform(n.yield_distribution_current_year),getOrderingValue:n=>n.yield_distribution_current_year},or={title:"Lfd. Jahr",headerClasses:"text-end",getValue:n=>(new g.yi).transform(n.return_year_to_date_real),getOrderingValue:n=>n.return_year_to_date_real},ir={title:"1 Jahr",headerClasses:"text-end",getValue:n=>(new g.yi).transform(n.return_1_year_real),getOrderingValue:n=>n.return_1_year_real},rr={title:"3 Jahre",headerClasses:"text-end",getValue:n=>(new g.yi).transform(n.return_3_years_ago_real),getOrderingValue:n=>n.return_3_years_ago_real}
1,sr={title:"5 Jahre",headerClasses:"text-end",getValue:n=>(new g.yi).transform(n.return_5_years_ago_real),getOrderingValue:n=>n.return_5_years_ago_real};function Me(n){const t=(0,f.hk)()-n;return{title:t.toString(),headerClasses:"text-end",getValue:o=>(new g.yi).transform(o.yield_distribution[t]),getOrderingValue:o=>o.yield_distribution[t]}}const _r={title:"KGV",headerClasses:"text-end",getValue:n=>(new g.gw).transform(n.kgv,2),getOrderingValue:n=>n.kgv},ar={title:"KBV",headerClasses:"text-end",getValue:n=>(new g.gw).transform(n.kbv,2),getOrderingValue:n=>n.kbv},lr={title:"Duration",headerClasses:"text-end",getValue:n=>(new g.gw).transform(n.bond_eff_duration,2),getOrderingValue:n=>n.bond_eff_duration},cr={title:"Bonit\xE4t",headerClasses:"text-end",getValue:n=>n.bond_avg_credit_quality??"\u2014",getOrderingValue:n=>n.bond_avg_credit_quality},dr={title:"Aktienstil",headerClasses:"text-end",getValue(n){if(!n.ms_style)return"\u2014";const t=(0,Le.Q)(n.ms_style,!0,!1)?.maxValue?.style;return t||"\u2014"},getOrderingValue(n){if(!n.ms_style)return;const t=(0,Le.Q)(n.ms_style,!0,!1)?.maxValue?.style;return t||void 0}},fr={title:"Zinssensibilit\xE4t",headerClasses:"text-end",getValue(n){if(!n.ms_style)return"\u2014";const t=(0,Le.Q)(n.ms_style,!1,!1)?.maxValue?.style;return t||"\u2014"},getOrderingValue(n){if(!n.ms_style)return;const t=(0,Le.Q)(n.ms_style,!1,!1)?.maxValue?.style;return t||void 0}},pr={title:`1 ${"Monat"}`,headerClasses:"text-end",getValue:n=>(new g.yi).transform(n.return_1_month_real),getOrderingValue:n=>n.return_1_month_real},Tr={title:`3 ${"Monate"}`,headerClasses:"text-end",getValue:n=>(new g.yi).transform(n.return_3_month_real),getOrderingValue:n=>n.return_3_month_real},ur={title:`6 ${"Monate"}`,headerClasses:"text-end",getValue:n=>(new g.yi).transform(n.return_6_month_real),getOrderingValue:n=>n.return_6_month_real},Or={title:`${"Lfd. Jahr"}`,headerClasses:"text-end",getValue:n=>(new g.yi).transform(n.return_year_to_date_real),getOrderingValue:n=>n.return_year_to_date_real},gr={title:`1 ${"Jahr"}`,headerClasses:"text-end",getValue:n=>(new g.yi).transform(n.return_1_year_real),getOrderingValue:n=>n.return_1_year_real},Er={title:`3 ${"Jahre"}`,headerClasses:"text-end",getValue:n=>(new g.yi).transform(n.return_3_years_ago_real),getOrderingValue:n=>n.return_3_years_ago_real},hr={title:`5 ${"Jahre"}`,headerClasses:"text-end",getValue:n=>(new g.yi).transform(n.return_5_years_ago_real),getOrderingValue:n=>n.return_5_years_ago_real};function Ie(n,_){const o=(0,f.hk)()-n;let i="return_year_to_date_real";switch(n){case 1:i="period_last_year";break;case 2:i="period_2_years_ago";break;case 3:i="period_3_years_ago";break;case 4:i="period_4_years_ago";break;case 5:i="period_5_years_ago"}return{title:_||o.toString(),headerClasses:"text-end",getValue:r=>(new g.yi).transform(r[i]),getOrderingValue:r=>r[i]}}const mr=new Map([["basic-data",[new ke,er,new class qi extends ue.k{constructor(){super("Aktienquote",void 0,void 0,"text-end")}getType(){return Zi}getPayload(_){return{percentage:_?.equity_ratio}}getOrderingValue(_){return _?.equity_ratio}},tr,nr,or,ir,rr,sr]],["distribution-yield",[new ke,Me(0),Me(1),Me(2),Me(3),Me(4),Me(5)]],["analyse",[new ke,dr,_r,ar,fr,lr,cr]],["period-percent",[new ke,pr,Tr,ur,gr,Er,hr,Or]],["percent-year",[new ke,Ie(0,"Lfd. Jahr"),Ie(1),Ie(2),Ie(3),Ie(4),Ie(5)]]]);let Xt=(()=>{class n{constructor(t,o,i){this.portfolioService=t,this.filtersState=o,this.localeService=i;const r=this.filtersState.filtersQp$.pipe((0,Ve.n)(d=>{const T=d.concat([{key:"country",value:this.localeService.countryCode.toUpperCase()}]);return this.portfolioService.getAll(T)}),(0,te.t)({refCount:!0,bufferSize:1})),l=this.portfolioService.getPortfolioListFromCms().pipe((0,te.t)({refCount:!0,bufferSize:1}));this.portfolios$=(0,ye.z)([r,l]).pipe((0,b.T)(([d,T])=>d.filter(F=>T.find(E=>E.portfolioId===F.id)&&F).map(F=>{const E=T.find(y=>y.portfolioId===F.id);return E&&{...F,name:E.name,description:E.description,seo_description:E.seo.metaDescription,slug:E.slug}}))),this.portfoliosAmount$=this.portfolios$.pipe((0,b.T)(d=>d?.length)),this.loading$=this.portfolios$.pipe((0,Bt.s)(1),(0,b.T)(()=>!1),(0,De.W)(()=>(0,Q.of)(!1)),(0,kt.Z)(!0))}static{this.\u0275fac=function(o){return new(o||n)(e.KVO(le),e.KVO(Gt),e.KVO(Pe.i))}}static{this.\u0275prov=e.jDH({token:n,factory:n.\u0275fac})}}return n})();const Rr=(n,_)=>_.label;function Sr(n,_){if(1&n){const t=e.RV6();e.j41(0,"div",2)(1,"span",4),e.EFF(2),e.k0s(),e.j41(3,"xetf-icon",5),e.bIt("click",function(){const i=e.eBV(t).$implicit;return e.Njj(i.clearFunc())}),e.k0s()()}if(2&n){const t=_.$implicit;e.R7$(2),e.JRh(t.label),e.R7$(),e.Y8G("name","close")}}function Ar(n,_){if(1&n){const t=e.RV6();e.j41(0,"button",6),e.bIt("click",function(){e.eBV(t);const i=e.XpG(3);return e.Njj(i.clearParams())}),e.nrm(1,"xetf-icon",7),e.k0s()}2&n&&(e.R7$(),e.Y8G("name","close"))}function Pr(n,_){if(1&n&&(e.j41(0,"div",0)(1,"div",1),e.Z7z(2,Sr,4,2,"div",2,Rr),e.k0s(),e.DNE(4,Ar,2,1,"button",3),e.k0s()),2&n){const t=e.XpG();e.R7$(2),e.Dyx(t),e.R7$(2),e.vxM(t.length?4:-1)}}function br(n,_){1&n&&e.DNE(0,Pr,5,1,"div",0),2&n&&e.vxM(_.length?0:-1)}let Cr=(()=>{class n{constructor(t){this.filtersState=t,this.tags$=(0,ye.z)([this.filtersState.selectedGroup$.pipe((0,b.T)(o=>this.assembleSelectedGroupTag(o,this.filtersState.clearGroupId.bind(this.filtersState)))),this.filtersState.stocksShares$.pipe((0,b.T)(o=>this.assembleStocksShares(o,this.filtersState.resetStocksShares.bind(this.filtersState)))),this.filtersState.numberOfEtfs$.pipe((0,b.T)(o=>this.assembleNumberOfEtfs(o,this.filtersState.resetNumberOfEtfs.bind(this.filtersState)))),this.filtersState.search$.pipe((0,b.T)(o=>this.assembleSearch(o,this.filtersState.resetSearch.bind(this.filtersState)))),this.filtersState.yieldDistribution$.pipe((0,b.T)(o=>this.assembleYieldDistribution(o,this.filtersState.resetYieldDistribution.bind(this.filtersState))))]).pipe((0,b.T)(o=>o.filter(i=>!!i)))}clearParams(){this.filtersState.clearAll()}assembleSelectedGroupTag(t,o){if(t)return{label:t.name,clearFunc:o}}assembleStocksShares(t,o){if(t.min!==Ee.min||t.max!==Ee.max)return{label:"Aktienquote " + t.min + "% - " + t.max + "%",clearFunc:o}}assembleNumberOfEtfs(t,o){if(t)return t.max===1/0?{label:"Anzahl ETFs Ab " + t.min + "",clearFunc:o}:{label:"Anzahl ETFs " + t.min + " bis " + t.max + "",clearFunc:o}}assembleSearch(t,o){if(t)return{label:"Suche: " + t + "",clearFunc:o}}assembleYieldDistribution(t,o){if(t.min!==he.min||t.max!==he.max)return{label:"Akt.Aussch\xFCttung " + t.min + "% - " + t.max + "%",clearFunc:o}}static{this.\u0275fac=function(o){return new(o||n)(e.rXU(ve))}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-filters-row"]],standalone:!0,features:[e.aNF],decls:2,vars:3,consts:[[1,"search-tags-container"],[1,"d-flex","flex-wrap"],[1,"tag"],[1,"btn","btn-outline-primary","d-flex","p-1","w-auto"],[1,"text"],[1,"ms-2",3,"click","name"],[1,"btn","btn-outline-primary","d-flex","p-1","w-auto",3,"click"],[3,"name"]],template:function(o,i){if(1&o&&(e.DNE(0,br,1,1),e.nI1(1,"async")),2&o){let r;e.vxM((r=e.bMT(1,1,i.tags$))?0:-1,r)}},dependencies:[c.Jj,Y.Rl],styles:["[_nghost-%COMP%]{display:block}"],changeDetection:0})}}return n})();const Fr=["tableHeader"],Be=n=>({active:n});function Mr(n,_){if(1&n&&(e.PLo(0,1,1),e.nrm(1,"span",9),e.nI1(2,"async"),e.YFu()),2&n){const t=e.XpG();e.R7$(2),e.uP7(e.bMT(2,1,t.portfoliosAmount$)),e.nnv(0)}}let Ir=(()=>{class n{constructor(t){this.etfPortfolioService=t,this.selectedTab=(0,e.vPA)("basic-data"),this.columns=(0,e.EWP)(()=>mr.get(this.selectedTab())),this.portfolios$=this.etfPortfolioService.portfolios$,this.loading$=this.etfPortfolioService.loading$,this.portfoliosAmount$=this.etfPortfolioService.portfoliosAmount$}selectTab(t){this.selectedTab.set(t)}static{this.\u0275fac=function(o){return new(o||n)(e.rXU(Xt))}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-etf-portfolio-table"]],viewQuery:function(o,i){if(1&o&&e.GBs(Fr,5),2&o){let r;e.mGM(r=e.lsd())&&(i.tableHeaderRef=r.first)}},standalone:!0,features:[e.Jv_([ji.m,Xt]),e.aNF],decls:34,vars:28,consts:()=>{let t,o,i,r,l,d;return t=" Ergebnisse: " + "\ufffd*5:1\ufffd" + "" + "\ufffd#1:1\ufffd" + "" + "\ufffd0:1\ufffd" + "" + "\ufffd/#1:1\ufffd" + "" + "\ufffd/*5:1\ufffd" + "",o=" Basisdaten ",i=" % - Perioden ",r=" % - Jahre ",l=" Aussch\xFCttungsrendite ",d=" Analyse ",[["tableHeader",""],t,o,i,r,l,d,[1,"investment-table-header"],[1,"results-title"],[1,"fw-bold"],["appToolbarScrollable","",1,"toolbar-container"],[1,"toolbar-main-items"],[1,"nav","nav-pills"],[1,"nav-item"],[1,"nav-link",3,"click","ngClass"],[1,"separator"],["trackingProperty","id",3,"columns","records","is
1FullDataset","loading","withTitleColumn","scrollRef"]]},template:function(o,i){if(1&o){const r=e.RV6();e.j41(0,"div")(1,"div",7,0)(3,"p",8),e.PLo(4,1),e.DNE(5,Mr,3,3,"span",9),e.nI1(6,"async"),e.YFu(),e.k0s()(),e.nrm(7,"app-filters-row"),e.j41(8,"div")(9,"div",10)(10,"div",11)(11,"ul",12)(12,"li",13)(13,"a",14),e.bIt("click",function(){return e.eBV(r),e.Njj(i.selectTab("basic-data"))}),e.pXf(14,2),e.k0s()(),e.nrm(15,"div",15),e.j41(16,"li",13)(17,"a",14),e.bIt("click",function(){return e.eBV(r),e.Njj(i.selectTab("period-percent"))}),e.pXf(18,3),e.k0s()(),e.nrm(19,"div",15),e.j41(20,"li",13)(21,"a",14),e.bIt("click",function(){return e.eBV(r),e.Njj(i.selectTab("percent-year"))}),e.pXf(22,4),e.k0s()(),e.nrm(23,"div",15),e.j41(24,"li",13)(25,"a",14),e.bIt("click",function(){return e.eBV(r),e.Njj(i.selectTab("distribution-yield"))}),e.pXf(26,5),e.k0s()(),e.nrm(27,"div",15),e.j41(28,"li",13)(29,"a",14),e.bIt("click",function(){return e.eBV(r),e.Njj(i.selectTab("analyse"))}),e.pXf(30,6),e.k0s()()()()(),e.nrm(31,"app-data-table",16),e.nI1(32,"async"),e.nI1(33,"async"),e.k0s()()}2&o&&(e.R7$(5),e.vxM(!1===e.bMT(6,12,i.loading$)?5:-1),e.R7$(8),e.Y8G("ngClass",e.eq3(18,Be,"basic-data"===i.selectedTab())),e.R7$(4),e.Y8G("ngClass",e.eq3(20,Be,"period-percent"===i.selectedTab())),e.R7$(4),e.Y8G("ngClass",e.eq3(22,Be,"percent-year"===i.selectedTab())),e.R7$(4),e.Y8G("ngClass",e.eq3(24,Be,"distribution-yield"===i.selectedTab())),e.R7$(4),e.Y8G("ngClass",e.eq3(26,Be,"analyse"===i.selectedTab())),e.R7$(2),e.Y8G("columns",i.columns())("records",e.bMT(32,14,i.portfolios$))("isFullDataset",!0)("loading",e.bMT(33,16,i.loading$))("withTitleColumn",!1)("scrollRef",i.tableHeaderRef))},dependencies:[c.Jj,c.YU,k.h,Qe.u,ot.w,Cr],styles:["[_nghost-%COMP%]{display:block}.toolbar-container[_ngcontent-%COMP%] .toolbar-misc-items[_ngcontent-%COMP%]{justify-content:center}.toolbar-container.desktop-xl[_ngcontent-%COMP%] .toolbar-main-items[_ngcontent-%COMP%]{flex:0 0 841px}.toolbar-container.desktop-xl[_ngcontent-%COMP%] .toolbar-main-items[_ngcontent-%COMP%] .nav-pills[_ngcontent-%COMP%]{justify-content:flex-start}.toolbar-container.desktop-xl[_ngcontent-%COMP%] .toolbar-main-items[_ngcontent-%COMP%] .nav-pills[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]:not(.separator){flex:0}.toolbar-container.desktop-xl[_ngcontent-%COMP%] .toolbar-misc-items[_ngcontent-%COMP%]{justify-content:flex-end}"],changeDetection:0})}}return n})();var Nr=s(73015);class Lr extends Nr.K{}let Vt=(()=>{class n{constructor(t){this.cmsService=t,this.data$=this.cmsService.getSingle("/etf-portfolio",void 0,Lr).pipe((0,te.t)({refCount:!0,bufferSize:1}))}static{this.\u0275fac=function(o){return new(o||n)(e.KVO(et.x))}}static{this.\u0275prov=e.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();var $r=s(53079),yr=s(24916),vr=s(17388),kr=s(54139),je=s(27458),Br=s(14984),Dr=s(76516),xr=s(79744);const Yr=["toc"],Gr=(n,_)=>_.__component+_.id,Xr=n=>({active:n});function Vr(n,_){if(1&n&&(e.nrm(0,"h3",29),e.nI1(1,"keepHtml")),2&n){const t=e.XpG();e.Y8G("innerHTML",e.bMT(1,1,t.abstract),e.npT)}}function wr(n,_){if(1&n&&e.nrm(0,"cms-snippet-loader",16),2&n){const t=_.$implicit;e.Y8G("component",t)("contentsSection",t.tocId)}}function jr(n,_){if(1&n){const t=e.RV6();e.j41(0,"li",30),e.bIt("click",function(){e.eBV(t);const i=e.XpG(2);return e.Njj(i.tocService.tocToggle(!1))}),e.nrm(1,"a",31),e.nI1(2,"keepHtml"),e.k0s()}if(2&n){const t=_.$implicit;e.R7$(),e.Y8G("sectionId",t.tocId)("innerHTML",e.bMT(2,2,t.tocHeader||t.header),e.npT)}}function zr(n,_){if(1&n){const t=e.RV6();e.j41(0,"article",2),e.nrm(1,"meta",3)(2,"meta",4)(3,"meta",5),e.j41(4,"div",6),e.nrm(5,"meta",7),e.k0s(),e.j41(6,"div",8)(7,"div",9)(8,"div",10),e.nrm(9,"img",11),e.j41(10,"div",12),e.nrm(11,"h2",13),e.nI1(12,"keepHtml"),e.DNE(13,Vr,2,3,"h3",14),e.nrm(14,"hr",15),e.k0s()(),e.Z7z(15,wr,1,2,"cms-snippet-loader",16,Gr),e.nrm(17,"cms-author",17)(18,"cms-share-buttons")(19,"app-affiliate-hint",18),e.j41(20,"div",19,0),e.nI1(22,"async"),e.j41(23,"div",20)(24,"div",21)(25,"div",22),e.nrm(26,"xetf-icon",23),e.j41(27,"span"),e.pXf(28,1),e.k0s()()(),e.j41(29,"div",24)(30,"ul"),e.DNE(31,jr,3,4,"li",25),e.k0s()()()(),e.j41(32,"div",26),e.nI1(33,"async"),e.j41(34,"button",27),e.bIt("click",function(){e.eBV(t);const i=e.XpG();
1return e.Njj(i.tocService.tocToggle())}),e.nrm(35,"xetf-icon",28),e.k0s()()()()()}if(2&n){const t=_,o=e.XpG();e.R7$(),e.Y8G("content",null==t.seo?null:t.seo.metaDescription),e.R7$(),e.Y8G("content",t.createdAt),e.R7$(),e.Y8G("content",t.updatedAt),e.R7$(2),e.Y8G("content",null==t.seo?null:t.seo.metaImage.url),e.R7$(4),e.Y8G("lazyLoad","/assets/images/landing/etf-comparison.svg"),e.R7$(2),e.Y8G("innerHTML",e.bMT(12,17,t.contentPieceTitle),e.npT),e.R7$(2),e.Y8G("ngIf",t.abstract),e.R7$(2),e.Dyx(t.contentArea),e.R7$(2),e.Y8G("author",t.author),e.R7$(2),e.Y8G("fixedWidth",!0),e.R7$(),e.Y8G("ngClass",e.eq3(23,Xr,!0===e.bMT(22,19,o.tocService.tocVisible$))),e.R7$(6),e.Y8G("name","other")("size",24),e.R7$(5),e.Y8G("ngForOf",t.tocComponents),e.R7$(),e.AVh("hidden",e.bMT(33,21,o.tocService.tocToggleHidden$)),e.R7$(3),e.Y8G("name","other")("size",20)}}let Ur=(()=>{class n{set toc(t){this.tocService.tocInit(t)}constructor(t){this.tocService=t,this.pageData=e.hFB.required()}static{this.\u0275fac=function(o){return new(o||n)(e.rXU(yr.T))}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-etf-portfolio-cms"]],viewQuery:function(o,i){if(1&o&&e.GBs(Yr,5),2&o){let r;e.mGM(r=e.lsd())&&(i.toc=r.first)}},inputs:{pageData:[1,"pageData"]},standalone:!0,features:[e.aNF],decls:1,vars:1,consts:()=>{let t,o,i;return t="ETF-Vergleich",o="ETF-Vergleich",i="Inhalt:",[["toc",""],i,["itemtype","http://schema.org/Article","itemscope","",1,"landing-container","mt-3"],["itemprop","description",3,"content"],["itemprop","datePublished",3,"content"],["itemprop","dateModified",3,"content"],["itemprop","image","itemtype","http://schema.org/ImageObject","itemscope",""],["itemprop","url",3,"content"],[1,"landing-content","pt-0","px-2","px-md-3_5","wide"],["contents","",1,"card","cms-page-content"],[1,"w-100","d-flex","flex-column","align-items-center","bg-primary-50"],["alt",t,"title",o,1,"my-3",3,"lazyLoad"],[1,"cms-page-header"],["itemprop","headline",1,"header",3,"innerHTML"],["class","abstract",3,"innerHTML",4,"ngIf"],[1,"divider"],[3,"component","contentsSection"],[3,"author"],[3,"fixedWidth"],["contentsTable","",1,"contents-table",3,"ngClass"],[1,"card"],[1,"card-header"],[1,"card-title"],[1,"text-primary","me-2",3,"name","size"],[1,"card-body"],[3,"click",4,"ngFor","ngForOf"],[1,"overlay-button"],["type","button",1,"btn","btn-primary","btn-aft-icon",3,"click"],[1,"m-0",3,"name","size"],[1,"abstract",3,"innerHTML"],[3,"click"],["contentsLink","",3,"sectionId","innerHTML"]]},template:function(o,i){if(1&o&&e.DNE(0,zr,36,25,"article",2),2&o){let r;e.vxM((r=i.pageData())?0:-1,r)}},dependencies:[c.MD,c.YU,c.Sq,c.bT,c.Jj,$r.S,vr.Je,Y.Rl,kr.W,je.kX,je.qc,je.vs,je.QE,Br.Z,Dr.F,xr.e,g.l3],styles:["[_nghost-%COMP%]{display:block}"],changeDetection:0})}}return n})();function Wr(n,_){if(1&n&&(e.j41(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3),e.nrm(4,"img",4),e.k0s()(),e.j41(5,"div",5)(6,"h1",6),e.EFF(7),e.k0s(),e.j41(8,"p",7),e.EFF(9),e.k0s()(),e.j41(10,"div",8),e.nrm(11,"img",9),e.k0s()(),e.j41(12,"div",10)(13,"div",11),e.nrm(14,"app-etf-portfolio-search"),e.k0s()(),e.j41(15,"div",12)(16,"div",13)(17,"div",14)(18,"div",15),e.nrm(19,"app-etf-portfolio-table"),e.k0s()()()(),e.nrm(20,"app-etf-portfolio-cms",16),e.k0s()),2&n){const t=_;e.R7$(7),e.JRh(t.title),e.R7$(2),e.JRh(t.description),e.R7$(11),e.Y8G("pageData",t)}}let wt=(()=>{class n{constructor(t,o){this.seoService=t,this.route=o,this.pageData$=this.route.data.pipe((0,b.T)(i=>i.breadcrumb),(0,Ni.p)(i=>!!i),(0,b.T)(i=>(i.contentArea?.at(0)&&(i.contentArea.at(0).blueBackground=!0,i.contentArea.at(0).removeBottomPadding=!1),i)),(0,P.M)(i=>this.seoService.setCmsMeta(i.seo)),(0,te.t)({refCount:!0,bufferSize:1}))}static{this.\u0275fac=function(o){return new(o||n)(e.rXU(Ze.B),e.rXU(p.nX))}}static{this.\u0275cmp=e.VBU({type:n,selectors:[["app-etf-portfolio-list-v2"]],standalone:!0,features:[e.Jv_([ve,Gt,Vt]),e.aNF],decls:2,vars:3,consts:[[1,"landing","cms-academy"],[1,"landing-container","top"],[1,"background-half"],[1,"background-elements"],["src","/assets/images/landing/etf-portfolio.svg","alt","","fetchpriority","low",1,"d-none","d-md-block","desktop-image"],[1,"landing-content","overview"],[1,"header","pb-2","text-primary"],[1,"description"],[1,"d-md-none","mobile-image-container"],["src","/assets/images/landing/etf-portfolio.svg","alt","","fetchpriority","low"],[1,"landing-container","bg-primary-50"],[1,"landing-content","py-lg-5","py-3","w-lg-75","px-3_5","px-lg-0"],[1,"landing-container"],[1,"landing-content","wide"],[1,"card","table-card","m-2"],[1,"card-body"],[3,"pageData"]],template:function(o,i){if(1&o&&(e.DNE(0,Wr,21,3,"div",0),e.nI1(1,"async")),2&o){let r;e.vxM((r=e.bMT(1,1,i.pageData$))?0:-1,r)}},dependencies:[c.Jj,Yt,Ir,Ur],styles:["[_nghost-%COMP%]{display:block}"],changeDetection:0})}}return n})();const Hr=[{path:"",pathMatch:"full",component:wt,resolve:{breadcrumb:()=>(0,e.WQX)(Vt).data$}},{path:":slug",component:vt,resolve:{breadcrumb:n=>{const _=(0,e.WQX)(le),t=(0,e.WQX)(p.Ix),o=n.paramMap.get("slug");return _.getPortfolioCmsContentBySlug(o).pipe((0,P.M)(i=>i?(0,Q.of)(i):(0,f.yC)(t)),(0,Ve.n)(i=>
1i&&(0,ye.z)([(0,Q.of)(i),_.getOneById(i.portfolioId)])),(0,b.T)(([i,r])=>({...r,name:i.name,description:i.description,seo:i.seo})),(0,P.M)(i=>i?(0,Q.of)(i):(0,f.yC)(t)))}},data:{isFixedPageWidth:!0}}];let Jr=(()=>{class n{static{this.\u0275fac=function(o){return new(o||n)}}static{this.\u0275mod=e.$C({type:n})}static{this.\u0275inj=e.G2t({imports:[p.iI.forChild(Hr),N.G,k.h,C.ChartsModule,a.c,G.e,D.A,V.E,de,Mt,wt,Yt]})}}return n})()},52771:(se,B,s)=>{s.d(B,{v:()=>V});var p=s(60177),a=s(54438),C=s(345);const k=e=>({disabled:e});function N(e,c){if(1&e&&(a.j41(0,"div",3),a.nrm(1,"img",6),a.k0s()),2&e){const f=a.XpG();a.R7$(),a.Y8G("src",f.image,a.B4B)("alt",f.name)("title",f.name)}}function D(e,c){if(1&e&&(a.j41(0,"span",4),a.EFF(1),a.k0s()),2&e){const f=a.XpG();a.R7$(),a.JRh(f.labelStr)}}function G(e,c){if(1&e&&a.eu8(0,5),2&e){const f=a.XpG();a.Y8G("ngTemplateOutlet",f.labelRef)}}let V=(()=>{class e{set label(f){"string"==typeof f?this.labelStr=f:this.labelRef=f}constructor(f){this._sanitizer=f,this.size=24,this.checked=!1,this.disabled=!1,this.checkedChange=new a.bkB}get styleVariables(){return this._sanitizer.bypassSecurityTrustStyle(`\n--checkbox-size: ${this.size}px;\n--checkbox-tick-size: ${this.size/2}px;\n--checkbox-tick-offset: ${Math.ceil(this.size/6)}px;\n--checkbox-border-width: ${Math.ceil(this.size/20)}px;`)}
1onChangeHandler(){this.checked=!this.checked,this.checkedChange.emit(this.checked)}static{this.\u0275fac=function(h){return new(h||e)(a.rXU(C.up))}}static{this.\u0275cmp=a.VBU({type:e,selectors:[["xetf-radio"]],hostVars:1,hostBindings:function(h,S){2&h&&a.BMQ("style",S.styleVariables,a.$dS)},inputs:{label:"label",name:"name",value:"value",image:"image",size:"size",checked:"checked",disabled:"disabled"},outputs:{checkedChange:"checkedChange"},standalone:!0,features:[a.aNF],decls:8,vars:10,consts:[[1,"check-container",3,"ngClass"],[1,"radio"],["type","radio",3,"change","name","checked","value","disabled"],[1,"img"],[1,"check-label"],[3,"ngTemplateOutlet"],[3,"src","alt","title"]],template:function(h,S){1&h&&(a.j41(0,"label",0)(1,"div",1)(2,"input",2),a.bIt("change",function(){return S.onChangeHandler()}),a.k0s(),a.nrm(3,"span"),a.k0s(),a.DNE(4,N,2,3,"div",3)(5,D,2,1,"span",4),a.j41(6,"span"),a.DNE(7,G,1,1,"ng-container",5),a.k0s()()),2&h&&(a.Y8G("ngClass",a.eq3(8,k,S.disabled)),a.R7$(2),a.Y8G("name",S.name)("checked",S.checked)("value",S.value)("disabled",S.disabled),a.R7$(2),a.vxM(S.image?4:-1),a.R7$(),a.vxM(S.labelStr?5:-1),a.R7$(2),a.vxM(S.labelRef?7:-1))},dependencies:[p.YU,p.T3],styles:["[_nghost-%COMP%]{display:inline-block}.check-container[_ngcontent-%COMP%] > .img[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{max-width:13.125rem;width:calc(100% - .875rem)}.radio[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{border-radius:50%;border-width:min(2px,var(--checkbox-border-width))}.radio[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:after{top:var(--checkbox-tick-offset);left:var(--checkbox-tick-offset);width:var(--checkbox-tick-size);height:var(--checkbox-tick-size);background-color:#42a5f5;border-radius:50%}"]})}}return e})()},24455:(se,B,s)=>{s.d(B,{i:()=>e});var p=s(60177),a=s(54438),C=s(83038);const k=c=>["btn btn-link btn-sm btn-aft-icon btn-toggler",c],N=c=>({"rotate-180":c});function D(c,f){if(1&c&&a.EFF(0),2&c){const h=a.XpG(2);a.SpI(" ",h.textShowLess," ")}}function G(c,f){if(1&c&&a.EFF(0),2&c){const h=a.XpG(2);a.SpI(" ",h.textShowMore," ")}}function V(c,f){if(1&c){const h=a.RV6();a.j41(0,"button",1),a.bIt("click",function(){a.eBV(h);const x=a.XpG();return a.Njj(x.toggleRecords())}),a.DNE(1,D,1,1)(2,G,1,1),a.nrm(3,"xetf-icon",2),a.k0s()}if(2&c){const h=a.XpG();a.Y8G("ngClass",a.eq3(4,k,h.classOverride)),a.R7$(),a.vxM(h.showAllRecords?1:2),a.R7$(2),a.Y8G("name","chevron")("ngClass",a.eq3(6,N,h.showAllRecords))}}let e=(()=>{class c{constructor(){this.classOverride="mt-3 mt-md-4 mx-auto",this.textShowLess="Weniger anzeigen",this.textShowMore="Mehr anzeigen",this.showAllRecordsChange=new a.bkB,this.DEFAULT_CLASSES=""}toggleRecords(){this.showAllRecords=!this.showAllRecords,this.showAllRecordsChange.emit(this.showAllRecords)}static{this.\u0275fac=function(S){return new(S||c)}}static{this.\u0275cmp=a.VBU({type:c,selectors:[["app-show-more"]],inputs:{classOverride:"classOverride",numberOfItems:"numberOfItems",recordsLimit:"recordsLimit",textShowLess:"textShowLess",textShowMore:"textShowMore",showAllRecords:"showAllRecords"},outputs:{showAllRecordsChange:"showAllRecordsChange"},standalone:!0,features:[a.aNF],decls:1,vars:1,consts:[["type","button",3,"ngClass"],["type","button",3,"click","ngClass"],[1,"ms-1",3,"name","ngClass"]],template:function(S,x){1&S&&a.DNE(0,V,4,8,"button",0),2&S&&a.vxM(x.numberOfItems>x.recordsLimit||!x.numberOfItems&&!x.recordsLimit?0:-1)},dependencies:[p.YU,C.Rl],encapsulation:2,changeDetection:0})}}return c})()},88607:(se,B,s)=>{s.d(B,{A:()=>k});var p=s(18223),a=s(69206),C=s(54438);let k=(()=>{class N{static{this.\u0275fac=function(V){return new(V||N)}}static{this.\u0275mod=C.$C({type:N})}static{this.\u0275inj=C.G2t({imports:[p.U,a.Zn,a.Zn]})}}return N})()},33489:(se,B,s)=>{s.d(B,{Z:()=>a});var p=s(69206);const a=C=>{const k=void 0===C?.digits?2:C.digits,N=void 0===C?.digitsOptional||C.digitsOptional,D=C?.allowMinus||!1,G=C?.withGroupSeparator||void 0===C?.withGroupSeparator?".":"";return(0,p.Px)({alias:"numeric",inputmode:"decimal",unmaskAsNumber:!0,autoUnmask:!0,shiftPositions:!1,radixPoint:",",placeholder:"0",rightAlign:!1,showMaskOnHover:!1,suffix:C?.suffix,allowMinus:D,digits:k,groupSeparator:G,digitsOptional:N,max:C?.max||Number.MAX_SAFE_INTEGER,min:C?.min||Number.MIN_SAFE_INTEGER})}},27458:(se,B,s)=>{s.d(B,{QE:()=>ne,kX:()=>c,qc:()=>f,vs:()=>Y});var p=s(54438),a=s(89079),C=s(21413),k=s(84412),N=s(88141),D=s(99172),G=s(60177),V=s(51188);let e=(()=>
1{class P{isBrowser=(0,G.UE)((0,p.WQX)(p.Agw));subscribeScrollEventListener(m,R){this.isBrowser&&(m||document).addEventListener("scroll",R,!1)}unsubscribeScrollEventListener(m,R){this.isBrowser&&(m||document).removeEventListener("scroll",R,!1)}static \u0275fac=function(R){return new(R||P)};static \u0275prov=p.jDH({token:P,factory:P.\u0275fac})}return P})(),c=(()=>{class P{scrollListener;scrollingView=(0,p.hFB)();_onScroll$=new C.B;_activeSection$=new k.t(null);activeSection$=this._activeSection$.asObservable();scrollFn=m=>this._onScroll$.next(m);constructor(m){this.scrollListener=m}ngOnInit(){this.scrollListener.unsubscribeScrollEventListener(this.scrollingView(),this.scrollFn),this.scrollListener.subscribeScrollEventListener(this.scrollingView(),this.scrollFn)}ngOnChanges(){this.scrollListener.unsubscribeScrollEventListener(this.scrollingView(),this.scrollFn),this.scrollListener.subscribeScrollEventListener(this.scrollingView(),this.scrollFn)}ngOnDestroy(){this.scrollListener.unsubscribeScrollEventListener(this.scrollingView(),this.scrollFn)}static \u0275fac=function(R){return new(R||P)(p.rXU(e))};static \u0275dir=p.FsC({type:P,selectors:[["","contents",""]],inputs:{scrollingView:[1,"scrollingView"]},exportAs:["contents"],features:[p.Jv_([e]),p.OA$]})}return P})(),f=(()=>{class P{contents;router;_destroy;sectionId=p.hFB.required();active=!1;href="";constructor(m,R,v){this.contents=m,this.router=R,this._destroy=v}ngOnInit(){const m=this.router.parseUrl(this.router.url);m.fragment=this.sectionId(),this.href=m.toString().replace("/",""),this.contents.activeSection$.pipe((0,N.M)(R=>this.active=R===this.sectionId()),(0,a.pQ)(this._destroy)).subscribe()}static \u0275fac=function(R){return new(R||P)(p.rXU(c,1),p.rXU(V.Ix),p.rXU(p.abz))};static \u0275dir=p.FsC({type:P,selectors:[["","contentsLink",""]],hostVars:3,hostBindings:function(R,v){2&R&&(p.Mr5("href",v.href,p.n$t),p.AVh("active",v.active))},inputs:{sectionId:[1,"sectionId"]},exportAs:["contentsLink"]})}return P})();function h(P){const X=window.getComputedStyle(P),m=parseFloat(X.marginTop||"0")+parseFloat(X.marginBottom||"0");return Math.ceil(P.offsetHeight+m)}function S(){return window.scrollY||document.documentElement.scrollTop||document.body.scrollTop||0}function x(P){const X=document.body.getBoundingClientRect();return P.getBoundingClientRect().top-X.top}let Y=(()=>{class P{contents;elementRef;_destroy;contentsSection=p.hFB.required();notInRangeEventCount=0;isBrowser=(0,G.UE)((0,p.WQX)(p.Agw));get contentsSectionId(){return this.contentsSection()}constructor(m,R,v){this.contents=m,this.elementRef=R,this._destroy=v}ngOnInit(){this.contentsSection()&&this.isBrowser&&this.contents._onScroll$.pipe((0,D.Z)(0),(0,N.M)(()=>this.detectActiveChanges()),(0,a.pQ)(this._destroy)).subscribe()}detectActiveChanges(){this.isInRange?(this.contents._activeSection$.next(this.contentsSection()),this.notInRangeEventCount=0):(++this.notInRangeEventCount,1===this.notInRangeEventCount&&this.contents._activeSection$.next(null))}get isInRange(){const m=S(),R=x(this.elementRef.nativeElement),v=h(this.elementRef.nativeElement);return m>=R&&m<=R+v}static \u0275fac=function(R){return new(R||P)(p.rXU(c,1),p.rXU(p.aKT),p.rXU(p.abz))};static \u0275dir=p.FsC({type:P,selectors:[["","contentsSection",""]],hostVars:1,hostBindings:function(R,v){2&R&&p.Mr5("id",v.contentsSectionId)},inputs:{contentsSection:[1,"contentsSection"]},exportAs:["contentsSection"]})}return P})(),ne=(()=>{class P{elementRef;scrollListener;_cdr;scrollingView=(0,p.hFB)();stickyTop=!0;stickyBottom=!1;element;parentElement;constructor(m,R,v){this.elementRef=m,this.scrollListener=R,this._cdr=v}ngAfterViewInit(){this.element=this.elementRef.nativeElement,this.parentElement=this.element.parentElement,this.scrollListener.unsubscribeScrollEventListener(this.scrollingView(),()=>this.checkStickiness()),this.scrollListener.subscribeScrollEventListener(this.scrollingView(),()=>this.checkStickiness())}ngOnDestroy(){this.scrollListener.unsubscribeScrollEventListener(this.scrollingView(),()=>this.checkStickiness())}checkStickiness(){const m=h(this.element),R=h(this.parentElement),v=S(),j=x(this.parentElement)+32;v+m>R+j?(this.stickyTop=!1,this.stickyBottom=!0):v>j?(this.stickyTop=!1,this.stickyBottom=!1):(this.stickyTop=!0,this.stickyBottom=!1),this._cdr.markForCheck()}static \u0275fac=function(R){return new(R||P)(p.rXU(p.aKT),p.rXU(e),p.rXU(p.gRc))};static \u0275dir=p.FsC({type:P,selectors:[["","contentsTable",""]],hostVars:4,hostBindings:function(R,v){2&R&&p.AVh("sticky-top",v.stickyTop)("sticky-bottom",v.stickyBottom)},inputs:{scrollingView:[1,"scrollingView"]},exportAs:["contentsTable"],features:[p.Jv_([e])]})}return P})()}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.