(function(){angular.module("tyndp",["ngAnimate","ngSanitize","ui.bootstrap","bsLoadingOverlay","bsLoadingOverlaySpinJs","angularjs-dropdown-multiselect","leaflet-directive","ngFileUpload","toastr","angular-loading-bar","mdMarkdownIt","ngYoutubeEmbed","infinite-scroll","ngScrollbars","smoothScroll","afkl.lazyImage","simplemde","ngBootstrapLightbox","ngMask"]).run(["bsLoadingOverlayService",function(n){n.setGlobalConfig({delay:0,activeClass:"loading-overlay",templateUrl:"bsLoadingOverlaySpinJs",templateOptions:undefined})}])})(),function(){function n(n,t,i){n.interceptors.push("tokenInterceptor");n.interceptors.push("logInterceptor");n.interceptors.push("cacheInterceptor");angular.extend(t,{allowHtml:!0,closeButton:!0,closeHtml:"<button>&times;<\/button>",extendedTimeOut:0,iconClasses:{error:"toast-error",info:"toast-info",success:"toast-success",warning:"toast-warning"},progressBar:!1,tapToDismiss:!1,timeOut:5e3,positionClass:"toast-top-full-width"});i.config("commonmark",{breaks:!0,html:!0})}angular.module("tyndp").config(n);n.$inject=["$httpProvider","toastrConfig","markdownItConverterProvider"]}(),function(){function n(n,t,i,r){function f(){u.loading=!0;n.getAccount().then(function(n){n.logo=n.logo?[n.logo]:[];u.account=n;u.loading=!1},function(){u.loading=!1;u.error=!0;t.alert("Error loading account data")})}function e(){u.loading=!0;n.saveAccount({logo:u.account.logo[0]}).then(function(){u.loading=!1;i.success("The value has been saved")},function(){u.loading=!1;u.error=!0;t.alert("Error saving account data")})}function o(){s()}function s(){r.location.href="/"}function h(){return u.account.logo&&angular.isArray(u.account.logo)&&u.account.logo.length>0?"/api/projects/"+u.account.logo[0].url:!1}var u=this;u.loading=!1;u.error=!1;u.account={};u.optionsResize={width:80,height:30,centerCrop:!0,type:"image/png",restoreExif:!1};u.optionsValidate={size:{max:"2MB"},width:{min:1,max:1e4},height:{min:1,max:1e4}};u.onSave=e;u.onCancel=o;u.getPromoterLogoUrl=h;u.$onInit=f}angular.module("tyndp").component("account",{templateUrl:"/app/tyndp/admin/components/account/account.html",controller:n,controllerAs:"account"});n.$inject=["adminService","alertService","toastService","$window","$location","$document"]}(),function(){function n(n,t,i,r){function f(){}function e(){n.saveCbaImport(u.importCBAResults).then(function(){u.loading=!1;i.success("CBA results Excel spreadsheet file has been imported successfully! 🍺","Woohoo!")},function(){u.loading=!1;u.error=!0;t.alert("Error importing spreadsheet data")})}function o(){s()}function s(){r.location.href="/"}var u=this;u.loading=!1;u.error=!1;u.data={};u.onSave=e;u.onCancel=o;u.$onInit=f}angular.module("tyndp").component("cbaImport",{templateUrl:"/app/tyndp/admin/components/cbaImport/cbaImport.html",controller:n,controllerAs:"cbaImport"});n.$inject=["adminService","alertService","toastService","$window"]}(),function(){function n(n,t,i){function u(u,f){r[f]=!0;n.download(u).then(function(){i(function(){r[f]=!1})},function(){i(function(){t.error("An error occured while downloading contact data, please try again");r[f]=!1})})}var r=this;r.onDownload=u}angular.module("tyndp").component("contactData",{templateUrl:"/app/tyndp/admin/components/contactData/contactData.html",controller:n,controllerAs:"contactData"});n.$inject=["downloadService","toastService","$timeout"]}(),function(){function n(n,t,i,r){function f(){u.loading=!0;n.getExplainers().then(function(n){u.data=n;u.loading=!1},function(){u.loading=!1;u.error=!0;t.alert("Error loading data")})}function e(){u.loading=!0;n.updateExplainers(u.data).then(function(){u.loading=!1;i.success("The value has been saved")},function(){u.loading=!1;u.error=!0;t.alert("Error saving data")})}function o(){s()}function s(){r.location.href="/"}var u=this;u.loading=!1;u.error=!1;u.data={};u.onSave=e;u.onCancel=o;u.$onInit=f}angular.module("tyndp").component("explainers",{templateUrl:"/app/tyndp/admin/components/explainers/explainers.html",controller:n,controllerAs:"explainers"});n.$inject=["explainersService","alertService","toastService","$window"]}(),function(){function n(n,t,i,r){function f(){u.loading=!0;n.getInterconnectionTargetsImages().then(function(n){u.data=n.length>0?n[0].files:[];u.loading=!1},function(){u.loading=!1;u.error=!0;t.alert("Error loading Interconnection Targets Images data")})}function e(){u.loading=!0;n.saveInterconnectionTargetsImages([{name:"InterconnectionImages",files:u.data}]).then(function(){u.loading=!1;i.success("The value has been saved")},function(){u.loading=!1;u.error=!0;t.alert("Error saving Interconnection Targets Images")})}function o(){s()}function s(){r.location.href="/"}var u=this;u.loading=!1;u.error=!1;u.data=[{name:"InterconnectionImages",files:[]}];u.onSave=e;u.onCancel=o;u.$onInit=f;u.optionsValidate={size:{max:"2MB"},width:{min:1,max:1e4},height:{min:1,max:1e4}}}angular.module("tyndp").component("interconnectionTargetsImages",{templateUrl:"/app/tyndp/admin/components/interconnectionTargetsImages/interconnectionTargetsImages.html",controller:n,controllerAs:"interconnectionTargetsImages"});n.$inject=["adminService","alertService","toastService","$window"]}(),function(){function n(n,t,i,r){function f(){u.loading=!0;i.getIntros().then(function(n){u.data=n;u.loading=!1},function(){u.loading=!1;u.error=!0;n.alert("Error loading data")})}function e(){u.loading=!0;i.updateIntros(u.data).then(function(){u.loading=!1;t.success("The value has been saved")},function(){u.loading=!1;u.error=!0;n.alert("Error saving data")})}function o(){s()}function s(){r.location.href="/"}var u=this;u.loading=!1;u.error=!1;u.data={};u.onSave=e;u.onCancel=o;u.$onInit=f}angular.module("tyndp").component("intros",{templateUrl:"/app/tyndp/admin/components/intros/intros.html",controller:n,controllerAs:"intros"});n.$inject=["alertService","toastService","introsService","$window"]}(),function(){function n(n,t,i,r){function f(){u.loading=!0;n.getSettings().then(function(n){u.data=n;u.loading=!1},function(){u.loading=!1;u.error=!0;t.alert("Error loading data")})}function e(){u.loading=!0;n.saveSettings(u.data).then(function(){u.loading=!1;i.success("The value has been saved")},function(){u.loading=!1;u.error=!0;t.alert("Error saving data")})}function o(){s()}function s(){r.location.href="/"}var u=this;u.loading=!1;u.error=!1;u.data={};u.onSave=e;u.onCancel=o;u.$onInit=f}angular.module("tyndp").component("settings",{templateUrl:"/app/tyndp/admin/components/settings/settings.html",controller:n,controllerAs:"settings"});n.$inject=["adminService","alertService","toastService","$window"]}(),function(){function n(n){var t=this;t.config=n}angular.module("tyndp").component("adminContainer",{templateUrl:"/app/tyndp/admin/containers/adminContainer.html",controller:n,controllerAs:"adminContainer"});n.$inject=["config"]}(),function(){function n(){function t(){var t=n.resolve.data;n.title=t.title||"Alert";n.message=t.message;n.type=t.type}function i(){n.modalInstance.dismiss()}function r(){n.modalInstance.close()}var n=this;n.cancel=i;n.ok=r;n.$onInit=t}angular.module("tyndp").component("alert",{templateUrl:"/app/tyndp/core/components/common/alert/alert.html",bindings:{resolve:"<",modalInstance:"<"},controllerAs:"alert",controller:n})}(),function(){function n(n){function i(){angular.element(n).css("display","block");t.values.length>0&&(t.ctx=angular.element(n.find("canvas"))[0],t.chart=new Chart(t.ctx,{responsive:!0,type:"bar",data:{labels:t.values.map(function(n){return n.label}),datasets:[{data:t.values.map(function(n){return n.value}),backgroundColor:"#00a993"}]},options:{scales:{yAxes:[{ticks:{beginAtZero:!0}}]},hover:{animationDuration:0},tooltips:{callbacks:{title:function(n,i){return i.labels[n[0].index]+t.values[n[0].index].key},label:function(n,t){return t.datasets[0].data[n.index]}},displayColors:!1},animation:{onComplete:function(){var u=this.chart,i=u.ctx,r;i.font=Chart.helpers.fontString(Chart.defaults.global.defaultFontSize-1,Chart.defaults.global.defaultFontStyle,Chart.defaults.global.defaultFontFamily);i.textAlign="center";i.textBaseline="bottom";this.data.datasets.forEach(function(n,t){var r=u.controller.getDatasetMeta(t);r.data.forEach(function(t,r){var u=n.data[r];i.fillText(u,t._model.x,t._model.y+(u>0?15:-5))})});r=t.chart.toBase64Image();r.length>100&&!t.rendered&&(t.rendered=!0,$("<img/>",{style:"display: none","data-pdfmake":'{"fit":[200,100]}',src:r}).appendTo(n))}},responsive:!0,maintainAspectRatio:!0,legend:{display:!1}}}))}var t=this;t.ctx=null;t.chart=null;t.rendered=!1;t.$onInit=i}angular.module("tyndp").component("chart",{templateUrl:"/app/tyndp/core/components/common/chart/chart.html",controllerAs:"chart",bindings:{values:"="},controller:n});n.$inject=["$element"]}(),function(){function n(){function t(){n._type=n.type;n._size=n.size}function i(){return new Array({small:3,medium:5,large:20}[n._size||"small"])}var n=this;n.$onInit=t;n.getSize=i}angular.module("tyndp").component("contentPlaceholder",{templateUrl:"/app/tyndp/core/components/common/contentPlaceholder/contentPlaceholder.html",bindings:{type:"@",size:"@",visible:"="},controllerAs:"contentPlaceholder",controller:n})}(),function(){function n(n,t){function r(){var r=i.resolve.data;i.loading=!0;n.getExplainerByName(r.explainerId).then(function(n){angular.isObject(n)?(i.data=n.value,i.loading=!1):(i.loading=!1,i.error=!0,t.alert("Error loading project explainer data"))},function(){i.loading=!1;i.error=!0;t.alert("Error loading project explainer data")})}function u(){i.modalInstance.dismiss()}var i=this;i.cancel=u;i.$onInit=r;i.loading=!1;i.error=!1}angular.module("tyndp").component("help",{templateUrl:"/app/tyndp/core/components/common/help/help.html",bindings:{resolve:"<",modalInstance:"<"},controllerAs:"help",controller:n});n.$inject=["explainersService","alertService"]}(),function(){function n(){function t(){}function i(){return n.base64Src||n.src}function r(t){if(!n.base64Src){var i=document.createElement("canvas"),r=i.getContext("2d");i.width=t.target.naturalWidth;i.height=t.target.naturalHeight;r.drawImage(t.target,0,0);n.base64Src=i.toDataURL("image/png")}}function u(){n.base64Src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8/5+hHgAHggJ/PchI7wAAAABJRU5ErkJggg=="}var n=this;n.$onInit=t;n.onImgLoad=r;n.onImgError=u;n.getImgSrc=i}angular.module("tyndp").component("imgBase64",{templateUrl:"/app/tyndp/core/components/common/imgBase64/imgBase64.html",bindings:{classes:"@",pdfmake:"@",src:"@"},controllerAs:"imgBase64",controller:n})}(),function(){function n(n){function i(){t.loading=!0;n.getIntroByName(t.introId).then(function(n){angular.isObject(n)?(t.data=n.value,t.loading=!1):(t.loading=!1,t.error=!0)},function(){t.loading=!1;t.error=!0})}var t=this;t.$onInit=i;t.loading=!1;t.error=!1}angular.module("tyndp").component("intro",{templateUrl:"/app/tyndp/core/components/common/intro/intro.html",bindings:{introId:"@"},controllerAs:"intro",controller:n});n.$inject=["introsService"]}(),function(){function n(n,t,i){function s(){var n=L.tileLayer("https://api.mapbox.com/styles/v1/entsoe/{id}/tiles/256/{z}/{x}/{y}?access_token={accessToken}",{maxZoom:18,id:"cjbeye4cuahn12sp6to4wujr4",accessToken:"pk.eyJ1IjoiZW50c29lIiwiYSI6ImNqZWlkN2x5MzQxaTcyeXBlemhod24ybjgifQ.lX7eQn7qrE_b80Z-iPRryg"});r.map=new L.Map("viewport",{center:new L.LatLng(50,15),zoom:4,style:"mapbox://styles/mapbox/streets-v9"});r.drawnItems=L.featureGroup().addTo(r.map);n.addTo(r.map);r.map.addControl(new L.Control.Draw({edit:{featureGroup:r.drawnItems,poly:{allowIntersection:!1}},draw:{polygon:{allowIntersection:!1,showArea:!0},circle:!1}}));r.map.on(L.Draw.Event.CREATED,function(n){f();r.drawnItems.addLayer(n.layer);r.type=="transmission"&&$("#selectInvestment").on("change",function(){r.drawnItems.removeLayer(n.layer)})});r.type=="transmission"&&($("#investmentTab").click(function(){u(150)}),$("#selectInvestment").click(function(){u(50)}));u()}function e(){r.map&&(f(),o())}function o(){var n=r.type=="transmission"?h():r.project,o;if(r.project!=null&&n&&n.geometry!=null){n=n.geometry;var t=[],i=[],s=n.coordinateType,f,e;switch(s){case"Polygon":case"MultiPolygon":$.each(n.coordinates,function(n,r){t=[];f=r.latitude;e=r.longitude;t.push(f);t.push(e);i.push(t)});r.polygon=L.polygon(i).addTo(r.map);r.map.fitBounds(r.polygon.getBounds());break;case"Point":f=n.coordinates[0].latitude;e=n.coordinates[0].longitude;i.push(f);i.push(e);r.polygon=L.marker(i).addTo(r.map);r.map.setView(i,6,{animation:!0});break;case"LineString":$.each(n.coordinates,function(n,r){t=[];f=r.latitude;e=r.longitude;t.push(f);t.push(e);i.push(t)});o=[{type:"LineString",coordinates:i}];r.polygon=L.geoJSON(o).addTo(r.map);r.map.fitBounds(r.polygon.getBounds())}}else r.map.setView(new L.LatLng(50,15),4);u()}function u(n){setTimeout(function(){r.map.invalidateSize()},n||500)}function f(){r.polygon!=undefined&&r.map.removeLayer(r.polygon)}function h(){for(var t=null,n=0;n<r.project.investments.length;++n)if(r.project.investments[n].id==r.selectedInvestment){t=r.project.investments[n];break}return t}function c(){r.visible=!r.visible;u(50)}function l(){var n=r.drawnItems.toGeoJSON(),l=r.selectedInvestment,e,f,a,o,s,h,c;if(r.type==="transmission")if(l!=null)if(n.features.length==1){var f=[],a=n.features[0].geometry.type,u=-1;for(e=0;e<r.project.investments.length;++e)if(r.project.investments[e].id==l){u=e;break}r.project.investments[u].geometry={};r.project.investments[u].geometry.coordinates=[];switch(a){case"Polygon":case"MultiPolygon":r.project.investments[u].geometry.coordinateType="MultiPolygon";angular.forEach(n.features[0].geometry.coordinates[0],function(n){var i={Latitude:n[1],Longitude:n[0]},t;f.push(i);t={id:0,latitude:n[1],longitude:n[0],geometryId:r.project.investments[u].geometry.id};r.project.investments[u].geometry.coordinates.push(t)});break;case"Point":r.project.investments[u].geometry.coordinateType="Point";o={Latitude:n.features[0].geometry.coordinates[1],Longitude:n.features[0].geometry.coordinates[0]};f.push(o);s={id:0,latitude:n.features[0].geometry.coordinates[1],longitude:n.features[0].geometry.coordinates[0],geometryId:r.project.investments[u].geometry.id};r.project.investments[u].geometry.coordinates.push(s);break;case"LineString":angular.forEach(n.features[0].geometry.coordinates,function(n){var t,i;r.project.investments[u].geometry.coordinateType="LineString";t={Latitude:n[0],Longitude:n[1]};f.push(t);i={id:0,latitude:n[0],longitude:n[1],geometryId:r.project.investments[u].geometry.id};r.project.investments[u].geometry.coordinates.push(i)})}h={type:n.features[0].geometry.type,coordinates:f};c={ProjectType:"Investment",ProjectId:l,PostGeometryItem:h};i.addGeometryForProject(c).then(function(){t.alert("The drawed item is saved !")},function(n){console.log(n)})}else n.features.length>1?t.alert("More than one point is displayed on the map. Please draw only one item !"):t.alert("There is not new item on the map. Please draw one item !");else t.alert("Please select an investment !");else if(n.features.length==1){f=[];a=n.features[0].geometry.type;r.project.geometry={};r.project.geometry.coordinates=[];switch(a){case"MultiPolygon":case"Polygon":r.project.geometry.coordinateType="MultiPolygon";angular.forEach(n.features[0].geometry.coordinates[0],function(n){var i={Latitude:n[1],Longitude:n[0]},t;f.push(i);t={id:0,latitude:n[1],longitude:n[0],geometryId:r.project.geometry.id};r.project.geometry.coordinates.push(t)});break;case"Point":r.project.geometry.coordinateType="Point";o={Latitude:n.features[0].geometry.coordinates[1],Longitude:n.features[0].geometry.coordinates[0]};f.push(o);s={id:0,latitude:n.features[0].geometry.coordinates[1],longitude:n.features[0].geometry.coordinates[0],geometryId:r.project.geometry.id};r.project.geometry.coordinates.push(s);break;case"LineString":r.project.geometry.coordinateType="LineString";angular.forEach(n.features[0].geometry.coordinates,function(n){var i={Latitude:n[0],Longitude:n[1]},t;f.push(i);t={id:0,latitude:n[0],longitude:n[1],geometryId:r.project.geometry.id};r.project.geometry.coordinates.push(t)})}h={type:n.features[0].geometry.type,coordinates:f};c={ProjectType:"Storage",ProjectId:r.project.id,PostGeometryItem:h};i.addGeometryForProject(c).then(function(){t.alert("The drawed item is saved !")},function(n){console.log(n)})}else n.features.length>1?t.alert("More than one point is displayed on the map. Please draw only one item !"):t.alert("There is not new item on the map. Please draw one item !")}function a(){f();o()}var r=this;r.config=n;r.map=null;r.visible=!1;r.polygon=null;r.drawnItems=null;r.$onInit=s;r.$onChanges=e;r.$postLink=e;r.onToggle=c;r.onExport=l;r.onInvestmentChange=a}angular.module("tyndp").component("mapView",{templateUrl:"/app/tyndp/core/components/common/mapView/mapView.html",bindings:{project:"<",type:"@"},controller:n,controllerAs:"mapView"});n.$inject=["config","alertService","geometryService"]}(),function(){function n(n){function i(){angular.element(n).css("display","block");t.isDisabled=t.isDisabled==="true"}function r(n){n&&(t.file=n)}function u(){t.file=null}var t=this;t.isDisabled=t.isDisabled==="true";t.selectFile=r;t.deleteFile=u;t.$onInit=i}angular.module("tyndp").component("myFiles",{templateUrl:"/app/tyndp/core/components/common/myFiles/myFiles.html",bindings:{file:"=",isDisabled:"=?"},controllerAs:"myFiles",controller:n});n.$inject=["$element"]}(),function(){function n(){function t(){setTimeout(function(){htmlToImage.toPng(document.getElementById("tyndpHistory")).then(function(n){$("<img/>",{"data-pdfmake":'{"fit":[500,200]}',src:n}).css({visibility:"hidden",position:"absolute",top:0}).appendTo(".steps--container")})},2e3)}var n=this;n.$onInit=t}angular.module("tyndp").component("steps",{templateUrl:"/app/tyndp/core/components/common/steps/steps.html",bindings:{history:"="},controllerAs:"steps",controller:n})}(),function(){function n(n){function i(){angular.element(n).addClass("number-input--container");t.value=t.model.$viewValue;t.model.$render=function(){t.value=t.model.$viewValue}}function r(){t.min&&t.model.$setValidity("min-value",parseFloat(t.value,10)>=parseFloat(t.min,10));t.max&&t.model.$setValidity("max-value",parseFloat(t.value,10)<=parseFloat(t.max,10));t.model.$setViewValue(t.value)}var t=this;t.$onInit=i;t.onChange=r}angular.module("tyndp").component("numberInput",{templateUrl:"/app/tyndp/core/components/input/number/numberInput.html",bindings:{isRequired:"=",min:"=",max:"="},require:{model:"ngModel"},controllerAs:"numberInput",controller:n});n.$inject=["$element"]}(),function(){function n(n){function u(){t.value=t.model.$viewValue;t.model.$render=function(){t.value=t.model.$viewValue}}function r(){return(t.value||"").split(/\b[\s,\.-:;]*/)}function f(){var s=t.value,o=r(),f,u,e;if(i()<0){for(f=0,u=0;u<t.limit;u++)e=s.indexOf(o[u],f),e>-1&&(f=e+o[u].length);return t.value=t.value.substring(0,f),n.error("You've reached the maximum allowed words. Extra words removed",{preventOpenDuplicates:!0}),t.model.$setViewValue(t.value),!0}t.model.$setViewValue(t.value)}function e(){return"Words left: "+i()}function i(){var n=r();return t.limit-(n.length===1&&n[0]==""?0:n.length)}var t=this;t.limit=parseInt(t.limit,10)||200;t.words=0;t.$onInit=u;t.onChange=f;t.getWordsLeftLabel=e;t.getWordsLeft=i}angular.module("tyndp").component("textareaInput",{templateUrl:"/app/tyndp/core/components/input/textarea/textareaInput.html",bindings:{limit:"@",maxlength:"@",isDisabled:"="},require:{model:"ngModel"},controllerAs:"textareaInput",controller:n});n.$inject=["toastService"]}(),function(){function n(n,t,i){function e(){angular.element(n).css("display","block");r.optionsLimit=r.legacy?1:r.optionsLimit||10;r.optionsAccept=r.optionsAccept||"";r.optionsResize=r.optionsResize||{};r.optionsValidate=r.optionsValidate||{};r.uploadUrl=r.uploadUrl||"/api/file/upload";r.noControls=r.noControls||!1}function o(){_.isEqual(r.model.$modelValue,r.modelCheck)||(r.files=_.isNil(r.model.$modelValue)||!angular.isArray(r.model.$modelValue)?[]:r.model.$modelValue,r.legacy&&r.legacyName&&(r.files=[{fileName:r.legacyName,id:(new Date).getTime()}],u()),r.modelCheck=_.clone(r.model.$modelValue))}function s(n){var t=n.data;t.isSuccess?(r.files.push({fileName:t.data.fileName,id:t.data.id,url:t.data.url}),u()):f(n)}function f(n){i.error(n.data.message||"","An error occured while uploading file")}function h(){}function c(n){var t=r.files.map(function(n){return n.id}).indexOf(n.id);t>-1&&r.files.splice(t,1);r.legacy&&(r.legacyName="");u()}function l(n){n&&(r.legacy?(r.files.push({fileName:n.name,file:n,id:(new Date).getTime()}),u()):t.upload({url:r.uploadUrl,data:{data:n,projectId:r.projectId,projectType:r.projectType}}).then(s,f,h))}function a(n){return r.legacy?r.legacyUrl:"/api/projects/"+n.url}function u(){r.model.$setViewValue(r.files);r.model.$setValidity("required",angular.isArray(r.files)?r.files.length>0:!!r.files)}var r=this;r.files=null;r.modelCheck=null;r.deleteFile=c;r.uploadFile=l;r.getDownloadUrl=a;r.$onInit=e;r.$doCheck=o}angular.module("tyndp").component("uploadInput",{templateUrl:"/app/tyndp/core/components/input/upload/uploadInput.html",bindings:{uploadUrl:"@?",isDisabled:"=?",projectId:"@?",projectType:"@?",optionsAccept:"@?",optionsResize:"=?",optionsValidate:"=?",optionsLimit:"=?",noControls:"=?",legacy:"<",legacyUrl:"@",legacyName:"="},require:{model:"ngModel"},controllerAs:"uploadInput",controller:n});n.$inject=["$element","Upload","toastService"]}(),function(){function n(n){function i(){return t.config.isSheets?"/projectsheets":"/"}var t=this;t.config=n;t.getIndexLink=i}angular.module("tyndp").component("error",{templateUrl:"/app/tyndp/core/components/layout/error/error.html",controller:n,controllerAs:"error"});n.$inject=["config"]}(),function(){function n(n,t,i){function u(){t.confirm("Are you sure you want to sign out?").then(function(){i.location.href="/account/signout"})}function f(){return r.config.isSheets?"/projectsheets/storage":"/project/storage"}function e(){return r.config.isSheets?"/projectsheets/transmission":"/project/transmission"}function o(){return r.config.isSheets?"/projectsheets":"/"}var r=this;r.config=n;r.signOut=u;r.getStorageLink=f;r.getTransmissionLink=e;r.getIndexLink=o}angular.module("tyndp").component("navigation",{templateUrl:"/app/tyndp/core/components/layout/navigation/navigation.html",controller:n,controllerAs:"navigation"});n.$inject=["config","alertService","$window"]}(),function(){function n(n,t,i){function u(){i(t[0].body,{duration:200,easing:"easeInQuad"})}var r=this;r.config=n;r.onClick=u}angular.module("tyndp").component("scrollToTop",{templateUrl:"/app/tyndp/core/components/layout/scrollToTop/scrollToTop.html",controller:n,controllerAs:"scrollToTop"});n.$inject=["config","$document","smoothScroll"]}(),function(){function n(){return function(n,t,i){return(n||[]).filter(function(n){return i.indexOf(n[t])>=0})}}angular.module("tyndp").filter("filterBy",n)}(),function(){function n(n){return function(t){return n.trustAsHtml((t||"").replace(/(\r\n|\n\r|\r|\n|&#10;&#13;|&#13;&#10;|&#10;|&#13;)/g,"<br>$1"))}}angular.module("tyndp").filter("nl2br",n);n.$inject=["$sce"]}(),function(){function n(n){function t(){return n.get("/api/account")}function i(t){return n.post("/api/account",{data:JSON.stringify(t)})}function r(t){return n.get("/api/settings/"+(t||""))}function u(t){return n.put("/api/settings",{data:JSON.stringify(t)})}function f(t){return n.post("/api/import/CBAResults",{data:JSON.stringify(t)})}function e(){return n.get("/api/images")}function o(t){return n.put("/api/images",{data:JSON.stringify(t)})}return{getAccount:t,saveAccount:i,getSettings:r,saveSettings:u,saveCbaImport:f,getInterconnectionTargetsImages:e,saveInterconnectionTargetsImages:o}}angular.module("tyndp").factory("adminService",n);n.$inject=["apiFactory"]}(),function(){function n(n,t){function i(i,u,f,e){var s=f||{},o;return s.url=u,s.method=i,o=n.defer(),e?t(s):(t(s).then(function(n){if(r(i,u))if(n.status===200)o.resolve(n.data);else return o.reject(n.data);else if(typeof n.data=="object")o.resolve(n.data);else return o.reject(n.data)},function(n){return o.reject(n.data)}),o.promise)}function r(n,t){return[{url:"/api/explainers",method:"put"},{url:"/api/texts",method:"put"},{url:"/api/settings",method:"put"},{url:"/api/ChangeRequest/ChangeRequest",method:"post"},{url:"/api/ChangeRequest/ChangeRequest",method:"put"},{url:"/api/Projects/GeometryItem",method:"post"},{url:"/api/Projects/Storage/",method:"post"},{url:"/api/Projects/Storage/",method:"put"},{url:"/api/Projects/Pci/Storage/",method:"put"},{url:"/api/Submissions/StorageProject/",method:"post"},{url:"/api/Projects/Transmission/",method:"post"},{url:"/api/Projects/Transmission/",method:"put"},{url:"/api/Projects/Pci/Transmission/",method:"put"},{url:"/api/Submissions/TransmissionProject/",method:"post"},{url:"/api/projects/transmission/freeze",method:"put"},{url:"/api/projects/storage/freeze",method:"put"},{url:"/api/account",method:"post"},{url:"/api/images",method:"put"},{url:"/api/projects/transmission/unfreeze",method:"put"},{url:"/api/projects/storage/unfreeze",method:"put"},{url:"/api/Submissions/Storage/Submit",method:"post"},{url:"/api/Submissions/Transmission/Submit",method:"post"},{url:"/api/Submissions/Storage/UnSubmit",method:"post"},{url:"/api/Submissions/Transmission/UnSubmit",method:"post"}].filter(function(t){return t.method.toLowerCase()===n.toLowerCase()}).filter(function(n){return t.toLowerCase().indexOf(n.url.toLowerCase())===0}).length>0}function u(n,t,r){return i("GET",n,t,r)}function f(n,t,r){return i("PUT",n,t,r)}function e(n,t,r){return i("POST",n,t,r)}function o(n,t,r){return i("DELETE",n,t,r)}return{get:u,put:f,post:e,"delete":o}}angular.module("tyndp").factory("apiFactory",n);n.$inject=["$q","$http"]}(),function(){function n(n){function t(){return n.get("/api/ChangeRequest/ChangeRequest")}function i(){return n.get("/api/ChangeRequest/Storage")}function r(){return n.get("/api/ChangeRequest/Transmission")}function u(t){return n.get("/api/ChangeRequest/ChangeRequest/"+t)}function f(t){return n.post("/api/ChangeRequest/ChangeRequest",{data:t})}function e(t){return n.put("/api/ChangeRequest/ChangeRequest/",{data:t})}return{getAllChangeRequest:t,getAllStorageProjects:i,getAllTransmissionProjects:r,getRequestById:u,addChangeRequest:f,editChangeRequest:e}}angular.module("tyndp").factory("changeRequestService",n);n.$inject=["apiFactory"]}(),function(){function n(n,t){function r(i,r){var u=n.defer(),f=[];return f.push(t.get("/api/promoters/"+i+"/Criteria",{},!0)),angular.forEach(r,function(n){f.push(t.get("/api/projects/"+i+"/"+n.id+"/Criteria",{},!0))}),n.all(f).then(function(n){u.resolve({global:n.shift().data,specifics:(n||[]).map(function(n){return n.data})})},function(n){return u.reject(n)}),u.promise}function i(i,r,f){var e=!r?"post":"put",o=[];return o.push(t[e]("/api/promoters/"+i+"/Criteria",{data:u(i,f.global),headers:{"Content-Type":undefined}},{},!0)),angular.forEach(f.specifics,function(n){e=i==="storage"&&!r?"put":e;o.push(t[e]("/api/projects/"+i+"/"+n.id+"/Criteria",{data:u(i,f.global),headers:{"Content-Type":undefined}},{},!0))}),n.all(o)}function u(n,t){var i=new FormData;i.append("data",new Blob([JSON.stringify(t)],{type:"application/json"}));t.companyExistanceFile&&i.append("CompanyExistance",t.companyExistanceFile);t.technicalExpertiseFile&&i.append("TechnicalExpertise",t.technicalExpertiseFile);t.financialStrengthFile&&i.append("FinancialStrength",t.financialStrengthFile);t.studiesUnderConstructionFile&&i.append("StudiesUnderConstruction",t.studiesUnderConstructionFile);switch(n){case"storage":t.connectionAgreementFile&&i.append("ConnectionAgreement",t.connectionAgreementFile);t.studiesAdvancedFile&&i.append("StudiesAdvanced",t.studiesAdvancedFile);break;case"transmission":t.agreementFile&&i.append("Agreement",t.agreementFile);t.exemptionProcessFile&&i.append("ExemptionProcess",t.exemptionProcessFile);t.studiesUnderConsiderationFile&&i.append("StudiesUnderConsideration",t.studiesUnderConsiderationFile);t.tsoAgreementFile&&i.append("TsoAgreement",t.tsoAgreementFile)}return i}function f(n){return r("storage",n)}function e(n){return r("transmission",n)}function o(n){return i("storage",!0,n)}function s(n){return i("transmission",!0,n)}function h(n){return i("storage",!1,n)}function c(n){return i("transmission",!1,n)}return{getStorageCriteria:f,getTransmissionCriteria:e,editTransmissionCriteria:s,editStorageCriteria:o,addTransmissionCriteria:c,addStorageCriteria:h,getCriteria:r,editCriteria:i,addCriteria:i}}angular.module("tyndp").factory("criteriaService",n);n.$inject=["$q","apiFactory"]}(),function(){function n(n){function t(){return n.get("/api/explainers")}function i(t){return n.get("/api/explainer/"+t)}function r(t){return n.put("/api/explainers",{data:JSON.stringify(t)})}return{getExplainers:t,getExplainerByName:i,updateExplainers:r}}angular.module("tyndp").factory("explainersService",n);n.$inject=["apiFactory"]}(),function(){function n(n){function t(t,i){return n.get("/api/Projects/Geometry/"+t+"/"+i)}function i(t){return n.post("/api/Projects/GeometryItem",{data:JSON.stringify(t)})}return{getGeometryByItemId:t,addGeometryForProject:i}}angular.module("tyndp").factory("geometryService",n);n.$inject=["apiFactory"]}(),function(){function n(n){function t(){return n.get("/api/Projects/Tsoes")}function i(){return n.get("/api/Projects/Status")}function r(){return n.get("/api/Projects/Countries")}function u(){return n.get("/api/Projects/Needs")}function f(){return n.get("/api/Projects/Unbundling")}function e(){return n.get("/api/Projects/HVDCType")}function o(){return n.get("/api/Projects/ProjectCategoryType")}function s(){return n.get("/api/Projects/ProjectUpgradeType")}function h(){return n.get("/api/projects/StorageTechnologyType")}function c(){return n.get("/api/Projects/SensitivityEnvironmentType")}function l(){return n.get("/api/Projects/SensitivitySocialType")}function a(){return n.get("/api/Projects/IndicatorType")}function v(){return n.get("/api/Projects/QualitativeAssessmentType")}function y(){return n.get("/api/Projects/ComputeScenarioType")}function p(){return n.get("/api/Projects/ElementType")}function w(){return n.get("/api/projects/PerimeterOfBenefitsComputationType")}function b(){return n.get("/api/Projects/PciCorridor")}function k(){return n.get("/api/Projects/ElementTypeAcer")}function d(t){return n.get("/api/Projects/Benefits/"+t)}function g(){return n.get("/api/Projects/PLIValidationStatus")}function nt(){}return{getAllTsoes:t,getAllStatus:i,getAllCountries:r,getAllNeeds:u,getAllUnbundlingProjectPromoters:f,getAllHvdcTypes:e,getAllCategoryType:o,getAllProjectUpgradeType:s,getAllStorageTechnologyType:h,getAllResidualEnvironmentImpact:c,getAllResidualSocialImpact:l,getAllIndicatorType:a,getAllQualitativeAssessmentType:v,getAllComputeScenarioType:y,getAllElementType:p,getAllPciCoridorType:b,getAllElementTypeAcer:k,getAllPerimeterOfBenefitsComputationType:w,getAllBenefits:d,getAllPliValidationStatus:g,getAllReasonNotIncludedNdpType:nt}}angular.module("tyndp").factory("globalService",n);n.$inject=["apiFactory","$q"]}(),function(){function n(n){function t(){return n.get("/api/texts")}function i(t){return n.get("/api/text/"+t)}function r(t){return n.put("/api/texts",{data:JSON.stringify(t)})}return{getIntros:t,getIntroByName:i,updateIntros:r}}angular.module("tyndp").factory("introsService",n);n.$inject=["apiFactory"]}(),function(){function n(n){function t(){return n.get("/api/maps/all")}return{getGeoJSON:t}}angular.module("tyndp").factory("sheetsService",n);n.$inject=["apiFactory"]}(),function(){function n(n,t){function u(t,i,r){var u=r?"public/":"";return n.get("/api/"+u+"Projects/"+t+"/"+i)}function v(t,i,r){var u=r?"/api/Public/Projects/"+t+"/"+i:"/api/Projects/"+t+"/Preview/"+i;return n.get(u)}function f(t,i,r){return n.get("/api/Projects/"+t+"/"+i+"/versions/"+r)}function e(t,i){return n.get("/api/Projects/Get"+t+"ProjectsById",{params:{ids:i}})}function o(t,i){var r=i?"public/":"";return n.get("/api/"+r+"Projects/"+t)}function r(t,i,r){var u=i?"put":"post";return n[u]("/api/Projects/"+t+"/",{data:a(t,r),headers:{"Content-Type":undefined}})}function s(t,i){return n.put("/api/Projects/Pci/"+t+"/",{data:a(t,i),headers:{"Content-Type":undefined}})}function h(t,i){return n.get("/api/Projects/"+t+"/Geometry/"+i)}function c(t){return n.get("/api/Projects/ProjectAdminCompliance/"+t)}function y(t,i){return n.post("/api/Submissions/"+t+"/Submit/",{data:a(t,i),headers:{"Content-Type":undefined}})}function p(t,i){return n.post("/api/Submissions/"+t+"/UnSubmit/"+i)}function l(t,i){return n.get("/api/Projects/"+t+"/"+i+"/versions/")}function i(n){return angular.isArray(n)&&n.length&&n[0].file}function a(n,t){var r=new FormData;r.append("data",new Blob([JSON.stringify(t)],{type:"application/json"}));switch(n){case"storage":i(t.TimelineForImplementFile)&&r.append("TimelineForImplement",t.TimelineForImplementFile[0].file);break;case"transmission":i(t.attachmentFile)&&r.append("Attachment",t.attachmentFile[0].file);i(t.locationFile)&&r.append("Location",t.locationFile[0].file);i(t.nationalPlanAdvancedFile)&&r.append("NationalPlanAdvanced",t.nationalPlanAdvancedFile[0].file);i(t.nationalPlanConsiderationFile)&&r.append("NationalPlanConsideration",t.nationalPlanConsiderationFile[0].file);angular.forEach(t.investments,function(n,t){i(n.busbarToBarbusFile)&&r.append("Investmentsµ£"+t+"µ£BusbarToBarbus",n.busbarToBarbusFile[0].file);i(n.exampleFile)&&r.append("Investmentsµ£"+t+"µ£Example",n.exampleFile[0].file)})}return r}function w(t,i,r){var u=i?"freeze":"unfreeze";return n.put("/api/projects/"+t+"/"+u+"/"+r)}function b(n,t){return u("storage",n,t)}function k(n,t){return u("transmission",n,t)}function d(n,t){return f("storage",n,t)}function g(n,t){return f("transmission",n,t)}function nt(n){return e("storage",n)}function tt(n){return e("transmission",n)}function it(n){return o("storage",n)}function rt(n){return o("transmission",n)}function ut(n){return r("storage",!1,n)}function ft(n){return r("transmission",!1,n)}function et(n){return r("storage",!0,n)}function ot(n){return r("transmission",!0,n)}function st(n){return s("storage",n)}function ht(n){return s("transmission",n)}function ct(n){return h("storage",n)}function lt(n){return h("transmission",n)}function at(){return c("storage")}function vt(){return c("transmission")}function yt(n){return l("storage",n)}function pt(n){return l("transmission",n)}function wt(n,i,r,u){var f=t.submission[n].disabled;return f.indexOf("changelog")>-1&&i?!0:f.indexOf("benefits")>-1&&t.isBenefitsMode?!t.isAdmin:f.indexOf("create")>-1?u.id?r:t.allowProjectCreate?!1:r:f.indexOf("plateform")>-1?r:!1}return{getStorageProjectById:b,getTransmissionProjectById:k,getStorageProjectByVersion:d,getTransmissionProjectByVersion:g,getStorageProjectsById:nt,getTransmissionProjectsById:tt,getAllStorageProjects:it,getAllTransmissionProjects:rt,addStorageProject:ut,addTransmissionProject:ft,editStorageProject:et,editTransmissionProject:ot,editStoragePciProject:st,editTransmissionPciProject:ht,getStorageGeometryById:ct,getTransmissionGeometryById:lt,getAllStorageProjectAdminCompliance:at,getAllTransmissionProjectAdminCompliance:vt,submitProject:y,unsubmitProject:p,getStorageProjectChangelog:yt,getTransmissionProjectChangelog:pt,getProjectById:u,getSheetsProjectById:v,getProjectByVersion:f,getProjectsById:e,getAllProjects:o,editProject:r,editPciProject:s,getGeometryById:h,getAllProjectAdminCompliance:c,getProjectChangelog:l,freezeProject:w,getDisabledFormState:wt}}angular.module("tyndp").factory("submissionService",n);n.$inject=["apiFactory","config"]}(),function(){function n(n){function t(t,i,r){return n.open({animation:!0,ariaLabelledBy:"modal-title",ariaDescribedBy:"modal-body",component:"alert",size:"md",backdrop:!0,resolve:{data:{type:t,title:r,message:i}}})}function i(n,i){return t("alert",n,i||"Alert").result}function r(n,i){return t("confirm",n,i||"Confirm").result}return{alert:i,confirm:r}}angular.module("tyndp").service("alertService",n);n.$inject=["$uibModal"]}(),function(){function n(n){function t(t,r){var u=n.defer();return axios({url:t,method:"GET",responseType:"blob"}).then(function(n){var f=window.URL.createObjectURL(new Blob([n.data])),t=document.createElement("a");t.href=f;t.setAttribute("download",i(r,n));document.body.appendChild(t);t.click();u.resolve({})}).catch(function(n){u.reject(n)}),u.promise}function i(n,t){return n||t.headers["content-disposition"].split(";")[1].split("=")[1].replace('"',"").replace('"',"")}return{download:t}}angular.module("tyndp").service("downloadService",n);n.$inject=["$q"]}(),function(){function n(n,t){function i(n){var o=t.defer(),s=r(n),i;return s.styles=f(),i=new Worker(location.origin+"/app/tyndp/core/services/common/webworker.service.js"),i.onmessage=function(t){o.resolve({blob:t.data,fileName:e(n)})},i.onerror=function(n){return o.reject(n)},s.content=u(n).concat(htmlToPdfmake(n.html)),i.postMessage(s),o.promise}function r(n){return{info:{title:n.project.name,author:"ENTSO-E",subject:"Project Sheet"},watermark:{text:"ENTSO-E",color:"blue",opacity:.05,angle:45},pageMargins:[40,60,40,60],headerTpl:[{layout:"lightHorizontalLines",table:{widths:["*","100"],body:[[{text:_.capitalize(n.type)+" - "+n.project.name+" (#"+n.project.id+")",margin:[40,5,0,0]},{image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJAAAAAyCAYAAACzklJdAAAaqklEQVR42u18eXhURdb+W3WX3tPd2XcIJBBANpFNUGCAQZTFccNlFNEZxNEZZ5hx11HEDWdUXPBTQUdA/RREQUUWEQz7MkjYCUtCdpJ0Ot3pve+9Vb8/uhtjDCFBxt83mPM8PAnJvdVVdd96zznvOTeEc44O67BzNdqxBR3WAaAO6wBQh3UAqMN+gSZ2bMGFa5yDADxKEiT20+hXwgjBT86gSEcWdmGChhCiteFaSghYB4A6LAYcQghhkf9zOBz+XjW13kFOp7+336+kMcYFvV50JCaYCrM72dbYrPpSfE9P5wSEDhd2QYCHCxHGIdzlCnQuKnLcXFzivLahIdBPUTQKAISQ2LXgHNDrRW+P/KT5l17a6VFJEgKcg5yLS7ugGYhzTjgHpfTsdP5fbAQAd7mDnb/bXfngseOO3waCqlkSKQSBglKiRhkqcnE0FGKMi4GAgvT0uG2TJva40mCQ3JwD7QXRBQsgxjillLALHTgAUFhYfc+OneWzg0HFrtOJoJSonHMacWuno+cfnS9Kier3K1JOjn3NxAk9xhOC0y7wF53Gcw5CKWEuty/uqTmfPFVe4cgEAMY5uYDAA01jwpq1xxZ+W1D8OmPcbjBIKgDOGBc5B20FPJE0jHHJaJSU4mLnuEOHau4ghDDGuPiLBhCPgmTNN3sn/Hry7D1vLlj7+Gnebn1D/7tcM+P8q1VFSw4ePHWb0SgpgkA4AJEQQiJxTts8C2NckGWR7ymsfkxVmC7q7skvGECRYHDxRwV/PX7iVJfkJKvrAjsglBDCtm4ve6a01H1NUqIlTAiRwmGVBEMKGGPQyRIMeh0oJW0BEhVFyhsa/J3LK1yjowzWZlz8pCyMMU6jJ5408auMEMLbdZo4CAhAv09BSXQRp8cllHDaBv8cuRfUbNJ79HqJqaomxsbj4KQJG7VrXYQQfq4xFecgjDMK3uRkE3BKaLvEPMa4SClR3a5Qn717qx92OBvUnXuqpOraevj8ATDGIUkibHEWdMpMRbeumYgzGxEMhcFbpxXGOUjJyYbJOTnxX7WHgcRzBQ6lhEU2lLR4SmKbflZnTghvuomxsQXhx5lTzD21Nq4gUC12jaZF5mE06Pxnmmt71nUuwTljXKCUaAKhWsu/ZwKlVGvjOCrnHAsWbnp6+cqdpN7dSNxeSjQmgVIadSgqRFqDohPl2LHnMAb2y8fFvXPBGIOmsdPpfPN4WhAoqa31Deack/ZkreK5ggcAdn134pIDh8ournM0pgoC1TLS4ksH9O+yLa9r2okorOmZWCPmampqXSnVpxqSdTpZ7ZabdkwQqOpwNMZv3n5kZMnJ2u5hRdWlptgqL+nfdWuvHlkHm97b0rglJ2u7NHoDRrfbbxVFCs65sPfAyX5JiXE1siyGu+dmHG1pDzmPrCsYVOQdu48NLTpa1bvB5U2QZVFJSbJV9uqRuadv7877KCUs5kbOxoRR1tIc9R77zt3HLy05WZPv8QYtZpPO06VzStGgS/K2JCZYGppefya3RSnRDh6qGPDqvLVzN2w9NDyoGZhe0gtDe9SgV3YNkix+MA7UuMzYezINhyuS0dAYwtcFu1BeWYsrRw+CINAWQcQ5iCAQeL2hToGAajcaJWdbdaF2pfEx8GzaevjyOS8vf/bA4fJLPZ4ACYdVgBDodRLsNpP/VyMu+vTvD13/QHqqvfpMJ1bTmCgIVP3H3BVPzXp+6eM98jPrtq17Ju39jzfdOXfeyicqq53pqqqBUgpZFqCTJe1XIy5a9tysW+5JSbI6mm947HNunf7aupWrdo9OSrJygBPOgbCiIuAPIy83tahg1VP5gkAR1TzQFOjLVmy/8eV5K58oLavL93gD0LQIEelkCRaLQeuVn7nl0fuvfXjooG5bWz8ckbmFQor04mtfPrr0s63Ta+rcaX5/CJrGIAgURqMOyUnW6inXXPrWzD9OfEYni2pLIIqBdemynffMX7DhJX8wIFc0CGxQbhWdeXUBLulaCdEUACIJGKBICDaasOFAF7zw6UiU11tBeSO6dMrEtVcOAweHqjJQSlp4vuBTbujTKyHBcLgth6RdDBR7QB8t23L73x5Z9A4IKNM4cjql1GZlJBzXGBNLSmvzHfWNccu/2Pnbf393YvgH79z36+556cdao31BoFySRMSZDZ6nX1g257W3Vv2VEILMjAS3zWp0eDwBa02dO1GnE4UVX+66wVHvyVq6aOYIWRa1qGP/wYZbTHpPvN3ilURBCoVVHSHg1jij16CTiDXO6D7juj7Zcusf7393kU4WIUoCLu6bc8xmM9domiaVlTvy6hyN8Xv3l14+ZerLG5Yunjli8CV5OzTGBKGZ+4m4WYL6Bq/1jrvnfb5tx9HLdToJkiTi4r7px2w2k8PZ4EsqOVmT63R60l587Ysnv9tbPPzdeX+42mzWB3jk6POm7u+tt9c/v/D9TQ8mJRh5vdeiTbh4t/Dy9JWQ5BBAgPqaeJysjQchQJeUetgSGjF+6H4MyK3E1JeuwuHKBBw9cRxrCmQ+bsRAYtDLCIUVRD/r9NQZYyQcVuPak7G2iYFim7xt59FLr7v1xS1Gg8w1jSn33jX+id9OuWxBcpLVAQAlpbXZr7+1+uFPVmyfoakauuelH/x8yUMDjQY51DwmijHQi6998dScl5c/npxoDTpdXn283eycee/ER8eN7vu5zWZyer3BuBUrd93wwtzl/9TpJFJT65bnvzZjym8mDloSG6PpXBtcvnhFUcUHHn///TXrCsfGx1t8H75737C0FFs1FShLjLc4mlA3CAEaXD7r6Amzjtc3eBISE+Kq58y65fbhQ/ML9Ho5DACV1c60F1/9YtbyL3feqWmMDL4kb+OSRTNHtsRCsZ9Nu3veipWrv5tksRiQkR5/5PEHr7tv+JD8AoNBDvkDIf2mrUdGzX5+6Sunat257kYfuXbykCVvzp0+JbbXMfC8t2jjY28v2DA7McGk+IOSmJ1QRt78w3xIAoPGBby5ajA+2NgPTo8eqhaC3dSAu8fvx7QxB0ElBWWV8bjiqYkIKgI4U5GckIYBffLR76IuIIRCVVUQQkAIeDiskasn97o8K8u66fvyyHlI4wkB1zRGnvnHsrmCQBEMKWT2YzdOn3nvhOej4CEASE6n5LIXn73t7ht+M/RNSin2HyrvtejDghlRgUpo7TM0xiSjUed/Z97dV9xx66g3M9Ljq0xGXTAl2Vo7fdqY1++9a/yTDS6frNOJrGDzwQlnGsduMzmTk6y1Op0U5NEKY0qS9VRykrW2KXgiD5sJALBnb8nguvrGxHBIJff8btxzY0b1+VqSRBZTcjPS4qtfem7q9MyMhGMNbh/5954Tl5WWO7JpZF20yRoESghbu37v+FVr90yyWk1aYoKldMnCmSPHjuqz1hA5SMRo0AXHje676uOFM0farMZKm9WsffbFzhvWbdg3llLCFEWTKSXatm3Hfv3uvwpmx9tNKtO4yBjIn65aD1kOg1DghU9GYvbSX6HBKwC8ARSNqGuU8Zd3hmP+6t4AE5Cd7cRd4w6j0a+DTqZwNDixpmA3lny+EV5fAJIknk71CSEQBKKcVyGRMU4JIXx3YfGgfQfKBgLggwbkbrxlymULQyHFoKiapGlM0DQmhMOqrKqa9Lc/Tfp7XJyhUSeL7LMvd05TVY22lmkIlMLjCQhXjO67YvAlebsURZVj6X1s7CvH9v/UaJA1AkJr6txpAHCG2EqI3Pv9gw1Hx9MYaxHEgUDIzBnnlFJUnWrIjLpWlRBwxhiNzoc++8TN0+e/OuOmJYtmDklKjHM0nwNBhGGXLNv6e1ESuc8fFO7/8+SHUlNsNWFF1UWfE+ccRFFUOSM9vuqBP09+2OcLCpIk8I+Xbb07lkkGg4r+f97+5g2dTuKEcOoPS6R7RhV6dyoGB8X+4nQs/LY/0mz1INwFQAWlBEadhmSrH/NW9Uad0wyuEUwaWIx4cwiKSiEIDCaDjNLKWny84lt4vH6IogjGOKGUcp1eiulm/LxkYTGfvmX7kbGKqnHOObn+N0MXAIBOJwWaxTMAgJRka90l/btuWvvN3qvKyuu6l5Y7OnfNSSk+YyxEAI1xDBqQ9y3jnBJKT2tJMV3JZjO5zGaD1+cLWTWN6VqXBX4YiMZ+RpptSsz95HZNOyCKAtHrJe3dxev/GgiGpasnDProoh5Zew0GORwD//Ch+RtbPY2UML8/pD94pHwgpYSkJNkdY0b2/opzTiRRCMfCDULARVFUOOfk17/q+3lqis3pcHri9x8uG+TxBMwWi8G7fsPBW0pK6rrabEaVc1VUVBG9s0shyCFABD7f1RMV9XpY9C4omj4ipJ0+kBxldTpsPZyGySNcyEryIC/NjcKT8TBSBYqmwGjQo97lwRdf78CNk0ZwAESnExpMRqk6Ft2cFwDFgqzikpoeBCBGo44VbD40sbTMkR9NL3kTtJKoVsNr69yZBoOs+f1hsbzCkdM1J6U4BsYfoxQQRIrUVFsVJYRxNK1ZRb6VJVETRYHxmOp4PgpKhHDGOO2el3504vhLFi3634Lb0tPs/L0Pvp35wcebZmZlJh7v37fz5uFDe3w9ZGDexuzMxIqYdkOaiYCxDKqmzp3mcvuTmMaQlZlwzGY1NbaUEhMSucVmMzVmZyUeralzD3G5/Im1DneqxWI4vnnL0RsEkfKoGwYAZCfWAYRDC8oY3K0Cz9y8DrIYBG8mHBPCEQyLyE7yQAlKEGQVmYle/PtEEggUcK6BMQaDXkZpRQ12Fhbxwf17kLg43WG9XnRHzlbbGs3EtsQ/AOB0+RIJJZBliS/5dOv14bDa6n1Gow5GvYwGtw8uty+ptcieR04vDHop9LNXJQnhnHPy/KxbZnDO2edf7ZrKGQcHR3mFI7f4ZE3uJ8u33263mjx9e3fefN3VQ969ZtLgT6LzJjFWi4HE5w9ZFEXTMc6REI25GGe0JSExBrp4u9nJGANjTMcY1wNA9SlXN1GgJFIUJaCUI84YiLC1ImHM0L0YM0KLdKw2J4uY7BwWgaAEmINItAShsQi4OOcAj8jPep2M3fuPsZysdNq/f/7q9oqlbU7jNS3SmMQYx+CBebsMOtnbREppKSgWCAj3+AI0Id5yqikYW5H8f/6yNgEHCEwmXeD1F++cdufU0a98uXr3dVu3Hxl3oqSmd1hRdZQQ+AMhy6Zth8evXlc4fn3BgUVz59w+jQo0EveQH4pyHPwH7H3WMOEHmOKsqerenFkirpLhwKEcuPwCBMLOuKkCjTSPiQYFp1xGSAIDb1bNEQTKGz0B8URphbtXrxHvR+fdZqW9DTFQBCUWs8HDOUcorAjP/P2m3/fvk7O3vQ+rLZL9/88CLAD079O5sH+fzoWc88eOnTiV911h8ZDN24+M2bHr2JiaWld6epo9vPjjjbcNHJC7aerNIxbEpITY/Qa95BUFIUwJkRsavPZIrEXZmdgPAJxOTzylFIJAw6IoBAEgNcV29GSpo6uegAGcck4QDEsAB0RZxZzll2NtYQb0ohMaJz9w6zF5TGPkNJBEgcGkV6ExAkkgP2pibfD463Q6oSx6qNoMIHr2zY2chKyMhGLOwUOhMA4cKh/EOaeqqsnRMU7/i/WheH1Boz8Q1v1XNNdEsi046j3xqqqJmsZEQgi65aYdu/G6YYtf/+edU9csf6zntZOHvO3xBCSrxcDWflN4Q1MQxL6mJtuqrVZjPaUU5ZX1uR5vwAjyY0aJsW1jo99cUenMFShFXJyxPjEhrg4ALhvefamqaISQCI8xDlQ3xEePvYbenU5BL4uwWXQwyhr0chgGWYFBVmCUFegkDfHmEOzmcDRh4KeDCEKEKDEQqKpGrHFmHlT0uUXHHQNiAub5a+eILnvQgNwCAhBZEvHFV/++KUJzhPOIiMAiGhrnjDOiaYxPmfry+lFXPnFk0pQ5W0pO1naO+dafk1iauBHKGKesWbQZS/WffmHZs5df8cTB0RNnHamocqYRQpimMYExTjWNiaqqSfF2s/vBv1z9mF4vhzkHbfQEbM3TeM45NZv1/h7dMvYwznlltTN1y/aiUQTgqsbEZiGBRAj4pm1HxpyqaUjknPO8rqn74ywGD2NcGDWy55LOnRJLgkFFAKFMpAwHy7MATQQ0inH9jkEQNAA6yHIcCJHBeARoABAMi3j77gKsnf0ZVjzyFbqmehBSBAiUQKCRqaiqAlmWkZXVSVNV4Mix2iFncp/nDKCoVE+GX9rjm07ZSRWCKPCtO4pGfbhk062iSBVCCGec05heJFCqvbNo/T27C08Mrqh0dnY2eNPTUm3VrRUL/0NuSSGEIKyoOoEShVLCRPpD1ToGaFVj8oHD5T1r69xJH32y5XeRbgCqERKJB2Ku90RJTbdQWBE1xnhykrUyGuvRJuMRALhm4uB/hcMq0eslNufl5c83egJGSRQUziMg5hxEFAXF5faZX5i74lmDQceCIYVMvnLgwpiWZTTK/rtnjLknGAyDc8KMujDfV9oJZTVpAOPom1uBaaMKUeU0g3MBep0ZetkESkVUOc2YMvwELu1bioxkN7ISvKioN0ESVIALYIyDMQ1Wqx3Z2V0gyzpwzlBZ1dgzRsnntaGMMU7NJr1/5r0THnS7fcRiMaiPPvXRgnlvr76vsdFvoiTSAuH3h+QFC7+Z8fxLn71kt5mVsKLi0fuv+aNeL4ciAAP/z9NO5CGaTLpGSgkLhRTxjQVrHizcd7LfvgOlfZuerljbwu23jHwtKcESspgN2vz31j00/711f/D5Q3oSXRelhH23t6TfI7M+fFsUBKIoGrlm0uB/NY+ABYFqnHN61RUXfzp8aP5Gvz9ES0prL7r5jrlr9+4/2YcQwiiJvNC3Z9/Jfjff8crasnJHD68vSIcN6b756gkDl3DOqSQJYca4MOzSbqum3T7iSafTJ0oitEBYx99dPxoQNShhEQ9fvx4PX7sJsqjBE5DhC1kgCDb84crjmP3bLQgHJIByPL10IByNBkgiYDTaYLcnIDs7BxkZ2VERkRFBIHC5gylRp9Pm59SmLIxSojHG6fW/Gfrh4aOVvV95Y+VDcRYjnv3nZ3M/XLr5vvxuGQcoIezYieoex0tOdZNEETW1Lsy8d+Jz48f2/5IxLsT6dFoKJKMP6ezziF7bKpNFf9MzP3O3xxucmp2VqLz/0ab7Fv/vxvvi4y313371ZI41zuiJMSJjnHbOTir9258mPfDwkx+8YrOahFnPL523+KONM3O7pB6RZTF0qsaVdrioYkAgEJY93iBuvfHy964ad/HnjHHawrq4KAp49R/Tbrxp2ivrjh6v6rnvQOmwG6a+tOuintk7kxLiamsdjSkHDpUNCgTCUiisoFePrP1vvPS7GyRJZIxzQr7fc+GO20fMCodV06LFm++Pj2e84HBv9u6qCfSOK78EVBEzr9mAKcP2o6gyEYpG0SW5AXnZtZEgSx/G4pXD8PnuAUiM88Ie3xmpqZlNe5FOZ4sEBKGwJreTgNqexkcLfPTvD173cJfOyUdee3PV45VVzq6HiypyCvedzAEAWRZhMMhITLCUPfHw9U/ffsvI+bGi4JnGDYcV2eMNUlkWoWlMaC2Y9/pDJo83SAOBsOGM84ywALnx2mH/2lBw4Kp13+4fJwoUjHOUV9QlnCyry+l7Uad9scwrtq677hj7ql4vBebOW/lEbZ07Y//Bsq67C4u7ch5R2I0GGcmJcXV/nDH+9b/cO3F2tN2Bn0lXykxPqP7sw/sve/K5Jf9Ys67wpgaX37B2/b7hTGOgAoVBLyHebm688bphix752zWP2W0mN29WnI2BaMb00Q/Y7aaK+Qs2vEi5W3x/8yitqMpEfj/uW5qb5kRGdjUyulRE4lWVAkEZNQ1WvL16CN7b0B96MQCzxY6UlAwwxppX4U+3JJpNkqdp5n3eqvEt9ad4vEHjlu1HRu4/WHaxy+VL4+A0zmKs6dUja8/lw3qsj57yM/aUxBigtLwup7SsLocQwi/qmb3XbjM5W4qXVFWTdhcWDw6FFNluMzf07pW95yyhP2eMY8PGA2NOlJzqqTEuJtjN1WNG9Vkdbzc3NP+M2FydDV7rlu1HRh45WtXH5falcM5Fk1Hv6J6Xvn/40PwNqSm2WrThTc6mlfojx6rytm0vGnmyrLZ7WNEsep3k7pKTcnD40PwNOZ2Sy87WfBc7hPsPlA+e98bXLxcVVQytaRQhil4+pHsV6ZV1CklxPlDC0eAz4EhVInYUZaPSaYRF74PFYkdaWiYopS32SAuUqK7GoHDLdf2enXbLgMda6nI4bwCKBXlnckntuebn0nbavK4W+nvO5Zqmh+RsLzZGyiJn7yOPgUjTGPlq1d5bv1y5608bdhQP8IclgEicRPu9OQMI0WCQwzAZBNjsybDbE05Xcc/kXTzeEJ39yNjxgwdkrT6b1/jJAIptTqRR/Xu2iyro7Wqs55EMjjQtnLb28CL1g7Y1uHMOwhijPCpGkKiY2RqwWlkXKCXauWSSMQmB/NjdsXb2V58uMTDGsfabg9c/OefLj5kWIoxpjDFGKaWQJB0MRgssFiskSYamaa1qYGGFITHeWPU//5zczWCQAu15Q/Wc38oghPCWGt/PYRwmCG1zuEI7lWxCwNvLgudrXc1POMVPf0s2Bh5NYwKllF8x9qKlOoNJ98IrBYspBdXpBJUxiIIggBACxtjphrFW9lT1+QLS9NsGPm0wSP72sE+b0/gO+79lUY2KaRoTRw3Pef/Jh0ZfYbcZyxs9ihgNzzTGNNZSsNwUjIJAtLp6nzRyeJflE8blv9Ve8PwkF9Zh/zcs9tCdrkDSh58UPrJhU/Gd7sagRZYEyLIASilvVtsimsZoMKRCVRnGjsxd+OcZw+6SZVEBwDv+uMIvGEQAUHWqsVPBlpIbd35XMam8wtXH5w+bVY1Hi28EVCAwm2Rfbk7ClolX5L8+fEjnL8416egA0AVkLWV8NbXejKpTjbkOpz+TacxMKAnarYaqrEzr4dRkS0UsiQEIP9cqQQeALjwgUcZAo4lAK9kmaHvfQu0A0C8QTJyDNOmKBSGROKe9fweoA0Ad9h+xjjS+wzoA1GEdAOqwDgB1WAeAOqzDOgDUYT+n/T/RtzIE/4R+1QAAAABJRU5ErkJggg==",fit:[80,40],alignment:"center"}]]}}]}}function u(t){return[{stack:[{text:"Project Sheet",style:"titleStyle"},{text:t.project.name,style:"subtitleStyle"},{qr:window.location.href,style:"qrStyle",fit:"100"}],style:"titleContainerStyle"},{layout:"lightHorizontalLines",table:{widths:["auto","*"],body:[["Project type",t.type],["Project id",t.project.id],["Created by",t.userName],["Created on",n("date")(new Date,"medium")]]}},{toc:{title:{text:"Index",style:"indexStyle"}}}]}function f(){return{"html-h1":{fontSize:24,bold:!0,marginBottom:10,marginTop:10},"html-h2":{fontSize:22,bold:!0,marginBottom:10,marginTop:10},"html-h3":{fontSize:20,bold:!0,marginBottom:10,marginTop:10},"html-h4":{fontSize:18,bold:!0,marginBottom:10,marginTop:10},"html-h5":{fontSize:16,bold:!0,marginBottom:10,marginTop:10},"html-h6":{fontSize:14,bold:!0,marginBottom:10,marginTop:10},defaultStyle:{fontSize:14},headerStyle:{fontSize:12,italics:!0,color:"#888888"},footerStyle:{fontSize:14,alignment:"center"},titleContainerStyle:{margin:[0,295,0,175],alignment:"center"},titleStyle:{fontSize:28,bold:!0,alignment:"center"},subtitleStyle:{fontSize:12,alignment:"center"},qrStyle:{margin:[15,15]},indexStyle:{alignment:"center",fontSize:16,bold:!0}}}function e(n){return n.type+"-"+n.project.id+"-"+n.project.name.replace(/\s+/g,"_").toLowerCase()+".pdf"}return{generatePdf:i}}angular.module("tyndp").service("pdfService",n);n.$inject=["$filter","$q"]}(),function(){function n(n){function t(){return n.success.apply(null,arguments)}function i(){return n.info.apply(null,arguments)}function r(){return n.error.apply(null,arguments)}function u(){return n.warning.apply(null,arguments)}function f(){return n.active()}function e(t){n.clear([t])}return{success:t,info:i,error:r,warning:u,get:f,clear:e}}angular.module("tyndp").service("toastService",n);n.$inject=["toastr"]}(),function(){function n(n){function t(){return!!n.isAdmin}function r(){return n.userName}function i(){return t()?"admin":"promoter"}function u(t){return n.submission[t].visible.indexOf(i())>-1}return{isAdmin:t,getUserName:r,getUserRole:i,getSubmissionTabVisibility:u}}angular.module("tyndp").service("userService",n);n.$inject=["config"]}(),function(){typeof importScripts=="function"&&(importScripts(location.origin+"/app/vendor/pdfmake/pdfmake.js"),importScripts(location.origin+"/app/vendor/pdfmake/vfs_fonts.js"),onmessage=function(n){n.data.footer=function(n,t){return[{text:n.toString()+" of "+t,style:"footerStyle"}]};n.data.header=function(){return n.data.headerTpl};n.data.pageBreakBefore=function(n){return n.style&&n.style.indexOf&&n.style.indexOf("pdf-pagebreak-before")>-1};pdfMake.createPdf(n.data).getBlob(function(n){postMessage(n)})})}(),function(){function n(){function t(t){return/^(\/app)(.+).html$/i.test(t.url)&&(t.url+="?ts="+n),t}var n=(new Date).getTime();return{request:t}}angular.module("tyndp").factory("cacheInterceptor",n)}(),function(){angular.module("tyndp").constant("config",{isPreliminary:configObject.isPreliminary,changeRequest:configObject.changeRequest,isAdmin:configObject.isAdmin,isSheets:configObject.isSheets,isReadonly:configObject.isReadonly,isPciReadonly:configObject.isPciReadonly,isAuthenticated:configObject.isAuthenticated,isBenefitsMode:!1,userName:configObject.userName,allowProjectCreate:configObject.allowProjectCreate,submission:{administrative:{visible:["admin","promoter"],disabled:["changelog","plateform","create","benefits"]},contact:{visible:["admin","promoter"],disabled:["changelog","plateform","create","benefits"]},investments:{visible:["admin","promoter"],disabled:["changelog","plateform","create","benefits"]},cba:{visible:["admin","promoter"],disabled:["changelog","plateform","benefits"]},needs:{visible:["admin","promoter"],disabled:["changelog","benefits"]},benefits:{visible:["admin","promoter"],disabled:["changelog","plateform"]},additional:{visible:["admin","promoter"],disabled:["changelog","plateform","benefits"]},backlog:{visible:["admin"],disabled:["changelog","plateform","benefits"]}},mbtoken:"pk.eyJ1IjoiZW50c29lIiwiYSI6ImNpb2xnNHcydTAwMXF3YW1iZmJjNXh1OGsifQ.frc5MlZWaMjTMbtaJbRZPw",mapbox:{token:"pk.eyJ1IjoiZW50c29lIiwiYSI6ImNpb2xnNHcydTAwMXF3YW1iZmJjNXh1OGsifQ.frc5MlZWaMjTMbtaJbRZPw",baseStyle:"mapbox://styles/rusty/cj1b222bv00b42son5xmz9u37",satStyle:"mapbox://styles/mapbox/satellite-streets-v9",stylesheet:{property:"status",type:"categorical",stops:[["Under Construction","#0bb46e"],["In Permitting","#eab437"],["Planned but not yet permitting","#f23636"],["Planned but not Permitting","#f23636"],["Planned But Not Yet Permitting","#f23636"],["Under Consideration","#0000ff"],["Commissioned","#6670f5"],],"default":"#009688"}},filters:[{title:"Project Status",type:"checkbox",property:"status",query:"status.id",filter:"checkbox",criteria:{},api:{method:"getAllStatus",key:"id",value:"name"}},{title:"Country",type:"checkbox",property:"countries",query:"countries.isoCode",filter:"array",criteria:{},api:{method:"getAllCountries",key:"isoCode",value:"name"}},{title:"PCI corridor",type:"checkbox",property:"pciCorridor",query:"pciCorridor",filter:"checkbox",criteria:{},api:{method:"getAllPciCoridorType",key:"id",value:"name"}},{title:"Type of element",type:"checkbox",property:"typeOfElement",query:"typeOfElement",filter:"checkbox",criteria:{},api:{method:"getAllElementTypeAcer",key:"id",value:"name"}},{title:"Storage technology",type:"checkbox",property:"storageTechnology",query:"storageTechnology",filter:"checkbox",criteria:{},api:{method:"getAllStorageTechnologyType",key:"id",value:"name"}},{title:"PCI 5th list",type:"checkbox",property:"pci5Validated",query:"pci5Validated",filter:"toggle",criteria:{}}],benefitsConfig:{B1:{groupName:!1,subNames:!1,chart:!0},B2:{groupName:!1,subNames:!1,chart:!0},B3:{groupName:!1,subNames:!1,chart:!0},B4:{groupName:"B4 Non-CO2 emissions (ton/year) in the entire area covered by the study",subNames:!0,chart:!0},B5:{groupName:!1,subNames:!1,chart:!0},B6:{groupName:!1,subNames:!1,chart:!0}},cbaManualConfig:{config:{B1_SEW:{name:"B1 SEW",unit:"Meuro/year",fullName:"in third country/ies",keyAs:"B1"},B1_RES:{name:"B1_RES",unit:"Meuro/year",fullName:"in third country/ies"},B1_CO2:{name:"B1_CO2",unit:"Meuro/year",fullName:"in third country/ies"},B2a_E:{name:"B2a",unit:"ktonnes/year",fullName:"in third country/ies",valuesLabels:["average"],keyAs:"B2a_SEW"},B2a_Euro:{name:"B2a_€",unit:"M€/year",fullName:"in third country/ies"},B3:{name:"B3",unit:"GWh / year",fullName:"in third countries"}},override:{B2a_SEW:{values:["average"],valuesLabels:["average"],compareBy:["average"],extraValuesLabel:""}}},cbaConfig:[{id:1,config:{title:"Central scenario: National Trends",scenarioGroupKey:"NT",showHeader:!0,explainerId:"CentralScenario",descriptionId:2,rules:{common:{values:["max","average","min"],scenarios:["NT2030"],compare:["DE2030","DE2040"],compareTarget:"NT2030",compareBy:["average"]},override:{B2a_SEW:{values:["min","average","max"],valuesLabels:["60€/ton","100€/ton","189€/ton"],compareBy:["min","average","max"],extraValuesLabel:"CO2 price"},B2a_Euro:{scenarios:["NT2030"],compare:["NONE","NONE"],compareTarget:"NT2030",values:["min","average","max"],valuesLabels:["60€/ton","100€/ton","189€/ton"],extraValuesLabel:"CO2 price"},B2b:{values:["average"],compare:["DE2030","NONE"]},B2b_SEW:{values:["min","average","max"],valuesLabels:["60€/ton","100€/ton","189€/ton"],compare:["DE2030","NONE"],compareBy:["min","average","max"],extraValuesLabel:"CO2 price"},B3a:{values:["average"],valuesLabels:["-"],compare:["NONE","NONE"]},B4a:{values:["average"],compare:["DE2030","DE2040"]},B4b:{values:["average"],compare:["DE2030","NONE"]},B4c:{values:["average"],compare:["DE2030","NONE"]},B4d:{values:["average"],compare:["DE2030","NONE"]},B4e:{values:["average"],compare:["DE2030","NONE"]},B4f:{values:["average"],compare:["DE2030","NONE"]},B5:{values:["average"],compare:["NONE","NONE"]},B5_SEW:{values:["average"],compare:["DE2030","NONE"]},B6:{compare:["DE2030","NONE"]},B6_SEW:{values:["average"],scenarios:["NT2030"],compare:["DE2030","NONE"]}}},indicators:[{groupId:1,groupName:"Increase in socio-economic welfare",indicators:["B1","B1_CO2","B1_RES"],explainerId:"IncreaseInSocio-economicWelfare"},{groupId:2,groupName:"Reduction of CO2 and GHG emissions",indicators:["B2a","B2a_SEW","B2a_Euro","B2b","B2b_SEW","B4a","B4b","B4c","B4d","B4e","B4f"],explainerId:"ReductionOfCO2AndGHGEmissions"},{groupId:3,groupName:"Integration of renewable energy sources",indicators:["B3","B3a"],explainerId:"IntegrationOfRenewableEnergySources"},{groupId:4,groupName:"Impact on grid losses",indicators:["B5","B5_SEW"],explainerId:"ImpactOnGridLosses"},{groupId:5,groupName:"Security of supply",indicators:["B6","B6_SEW","B7","B8-FF","B8-BS-AS","B10","B8-BS"],filter:{data:{computeScenario:1}},explainerId:"SecurityOfSupply"}]}},{id:2,config:{title:"Distributed Energy",scenarioGroupKey:"DEGA",showHeader:!0,explainerId:"ScenariosDistributedEnergyAndGlobalAmbition",descriptionId:3,rules:{common:{values:["min","average","max"],scenarios:["DE2030","DE2040"]},override:{B2a_SEW:{values:["min","average","max"],valuesLabels:["60€/ton","100€/ton","189€/ton"],noAverage:!0,extraValuesLabel:"CO2 price"},B2a_Euro:{values:["min","average","max"],valuesLabels:["60€/ton","100€/ton","189€/ton"],extraValuesLabel:"CO2 price"},B2b:{values:["average"],scenarios:["DE2030",""]},B2b_SEW:{values:["min","average","max"],valuesLabels:["60€/ton","100€/ton","189€/ton"],noAverage:!0,extraValuesLabel:"CO2 price",scenarios:["DE2030",""]},B3a:{valuesLabels:["-"]},B4a:{values:["average"],scenarios:["DE2030","DE2040"]},B4b:{values:["average"],scenarios:["DE2030","DE2040"]},B4c:{values:["average"],scenarios:["DE2030","DE2040"]},B4d:{values:["average"],scenarios:["DE2030","DE2040"]},B4e:{values:["average"],scenarios:["DE2030","DE2040"]},B4f:{values:["average"],scenarios:["DE2030","DE2040"]},B5_SEW:{values:["average"],scenarios:["DE2030","DE2040"]},B6:{scenarios:["DE2030","DE2040"]},B6_SEW:{scenarios:["DE2030","DE2040"]}}},indicators:[{groupId:1,groupName:"Increase in socio-economic welfare",indicators:["B1","B1_CO2","B1_RES"],explainerId:"IncreaseInSocio-economicWelfare"},{groupId:2,groupName:"Reduction of CO2 and GHG emissions",indicators:["B2a","B2a_SEW","B2b","B2b_SEW","B4a","B4b","B4c","B4d","B4e","B4f"],explainerId:"ReductionOfCO2AndGHGEmissions"},{groupId:3,groupName:"Integration of renewable energy sources",indicators:["B3","B3a"],explainerId:"IntegrationOfRenewableEnergySources"},{groupId:4,groupName:"Impact on grid losses",indicators:["B5_SEW"],explainerId:"ImpactOnGridLosses"},{groupId:5,groupName:"Security of supply",indicators:["B6","B6_SEW","B7","B8-FF","B8-BS-AS","B10","B8-BS"],filter:{data:{computeScenario:1}},explainerId:"SecurityOfSupply"}]}},{id:3,config:{title:"Benefits submitted by promoters based on scenarios other than the TYNDP2022 scenarios",scenarioGroupKey:"OTHER",showHeader:!1,explainerId:null,rules:{common:{scenarios:["2030","2040"]}},descriptionId:null,indicators:[{groupId:1,groupName:null,indicators:["B7","B8-FF","B8-BS-AS","B10","B8-BS"],filter:{data:{computeScenario:2}}}]}},{id:4,config:{title:"Non scenario-dependent indicator(s)",scenarioGroupKey:"NOSCEN",showHeader:!1,explainerId:null,descriptionId:null,indicators:[{groupId:1,groupName:null,indicators:["B8.X","B8.0"]}]}},{id:5,config:{title:"Gas price sensitivity",scenarioGroupKey:"GS",showHeader:!0,explainerId:"SensitivityStudyCurrentTrends",descriptionId:4,rules:{common:{values:["max","average","min"],scenarios:["DE2030GS"]},override:{B2a_SEW:{values:["min","average","max"],valuesLabels:["60€/ton","100€/ton","189€/ton"],noAverage:!0,extraValuesLabel:"CO2 price"},B2a_Euro:{values:["min","average","max"],valuesLabels:["60€/ton","100€/ton","189€/ton"],compareBy:["min","average","max"],extraValuesLabel:"CO2 price"},B3a:{valuesLabels:["-"]}}},indicators:[{groupId:1,groupName:"Increase in socio-economic welfare",indicators:["B1","B1_CO2","B1_RES"],explainerId:"IncreaseInSocio-economicWelfare"},{groupId:2,groupName:"Reduction of CO2 and GHG emissions",indicators:["B2a","B2a_SEW"],explainerId:"ReductionOfCO2AndGHGEmissions"},{groupId:3,groupName:"Integration of renewable energy sources",indicators:["B3","B3a"],explainerId:"IntegrationOfRenewableEnergySources"}]}}],types:{evolutionDriver:{transmission:[{name:"",value:""},{value:"Investment on time",name:"Investment on time"},{value:"Rescheduled",name:"Rescheduled"},{name:"Delayed",value:"Delayed"},{name:"Cancelled",value:"Cancelled"},{name:"Ahead of time",value:"Ahead of time"},{name:"New Investment",value:"New Investment"}],storage:[{name:"",value:""},{value:"Project on time",name:"Project on time"},{value:"Rescheduled",name:"Rescheduled"},{name:"Delayed",value:"Delayed"},{name:"Cancelled",value:"Cancelled"},{name:"Ahead of time",value:"Ahead of time"},{name:"New Project",value:"New Project"}]},elementsType:[{name:"",value:""},{name:"Compensation",value:"Compensation"},{name:"LCC converter station",value:"LCC converter station"},{name:"Overhead Line",value:"Overhead Line"},{name:"Phase Shift Transformer",value:"Phase Shift Transformer"},{name:"Subsea Cable",value:"Subsea Cable"},{name:"Substation",value:"Substation"},{name:"Underground Cable",value:"Underground Cable"},],transmissionTechnologyTypeList:[{name:"",value:""},{value:"AC",name:"AC"},{value:"DC",name:"DC"}],converterType:[{name:"",value:""},{value:"VCS",name:"VCS"},{value:"LCC",name:"LCC"}],naturalInflowType:[{name:"",value:""},{value:"yes",name:"Yes"},{value:"no",name:"No"}],projectConnection:[{name:"",value:""},{name:"Interconnector",value:"Interconnector"},{name:"Generation connection",value:"Generation connection"}],securityValues:[{name:"",value:""},{value:"0",name:"0"},{value:"-",name:"-"},{value:"+",name:"+"},{value:"++",name:"++"}],flexibility:{systemFlexibilityFCR:{kpi:"Response time FCR",sheet:"Response time – Frequency containment reserve",motivation:"30 s: ramp time of FCR(Frequency Containment Reserve) 1 s: typical inertia time scale",condition1:"Ramp time of FCR",condition2:"Typical inertia time scale",score1:[{name:"",value:""},{value:"More than 30s",name:"More than 30s",weight:0},{value:"Less than 30s",name:"Less than 30s",weight:3}],score2:[{name:"",value:""},{value:"More than 1s",name:"More than 1s",weight:2},{value:"Less than 1s",name:"Less than 1s",weight:3}]},systemFlexibilityDelayTime:{kpi:"Response time – including delay time of IT and control systems",sheet:"Response time – Including delay of IT and control systems",motivation:"200 s: FRR (Frequency Restoration Reserve) ramp time 30 s: FCR (Frequency Containment Reserve) ramp time",condition1:"FRR (Frequency Restoration Reserve) ",condition2:"FCR (Frequency Containment Reserve) ramp time",score1:[{name:"",value:""},{value:"More than 200s",name:"More than 200s",weight:0},{value:"Less than 200s",name:"Less than 200s",weight:3}],score2:[{name:"",value:""},{value:"More than 30s",name:"More than 30s",weight:2},{value:"Less than 30s",name:"Less than 30s",weight:3}]},systemFlexibilityTotalTime:{kpi:"Duration at rated power",sheet:"Duration at rated power – Total time during which available power can be sustained",motivation:"1 min : double the response time of FCR (Frequency Containment Reserve) 15 min : Typical PTU (Program Time Unit) size",condition1:"Total time during which available power can be sustained",score1:[{name:"",value:""},{value:"Less than 1 min",name:"Less than 1 min",weight:0},{value:"More than 1 min but less than 15 min",name:"More than 1 min but less than 15 min",weight:2},{value:"More than 15 min",name:"More than 15 min",weight:3}],score2:null},systemFlexibilityPower:{kpi:"Available power",sheet:"Available power – Power that is continuously available during the activation time",motivation:"20 MW : 1-2% of a typical power plant is reserved for FCR (Frequency Containment Reserve) and reachable from a project perspective 225 MW : PCI size",condition1:"Power that is continuously available within the activation time",score1:[{name:"",value:""},{value:"Less than 20 MW",name:"Less than 20 MW",weight:0},{value:"More than 20MW but less than 225 MW",name:"More than 20MW but less than 225 MW",weight:2},{value:"More than 225 MW",name:"More than 225 MW",weight:3}],score2:null}}}})}(),function(){function n(n){function t(n){return n.msBeforeAjaxCall=(new Date).getTime(),n}function i(n){if(n.config.warningAfter){var i=(new Date).getTime(),t=i-n.config.msBeforeAjaxCall;t>n.config.warningAfter&&JL("Angular.Ajax").warn({timeTakenInMs:t,config:n.config,data:n.data})}return n}function r(t){var i="timeout";return t&&t.status&&t.data&&(i=t.data.ExceptionMessage),JL("Angular.Ajax").fatalException({errorMessage:i,status:t.status,config:t.config},t.data),n.reject(t)}return{request:t,response:i,responseError:r}}angular.module("tyndp").factory("logInterceptor",n);n.$inject=["$q"]}(),function(){function n(n){function i(i){return new RegExp("/api/file/upload","i").test(i.url)||(t.length<=0&&n.start(),t.push("")),i}function r(i){return new RegExp("/api/file/upload","i").test(i.config.url)||(t.pop(),t.length<=0&&n.stop()),i}var t=[];return{request:i,response:r}}angular.module("tyndp").factory("overlayInterceptor",n);n.$inject=["bsLoadingOverlayService"]}(),function(){function n(n){function t(t){var i=n.sessionStorage.domain;return t.headers.Override=i,t}function i(n){return n}return{request:t,response:i}}angular.module("tyndp").factory("tokenInterceptor",n);n.$inject=["$window"]}(),function(){function n(n,t){function r(){t.getGeoJSON().then(function(n){i.mapData=n.features;i.filteredMapData=n.features;i.loading=!1},function(n){i.loading=!1;i.error=!0;console.log(n)})}function u(n){i.filteredMapData=n.filteredList}var i=this;i.config=n;i.loading=!0;i.error=!1;i.filters=[{title:"Project Type",type:"checkbox",property:"properties",query:"properties.type",filter:"checkbox",criteria:{}},{title:"Project Status",type:"checkbox",property:"properties",query:"properties.statusId",filter:"checkbox",criteria:{},api:{method:"getAllStatus",key:"id",value:"name"}}];i.$onInit=r;i.onFilter=u}angular.module("tyndp").component("sheetsHomeContainer",{templateUrl:"/app/tyndp/sheets/home/sheetsHomeContainer.html",bindings:{isEmbedded:"="},controllerAs:"sheetsHomeContainer",controller:n});n.$inject=["config","sheetsService"]}(),function(){function n(n,t,i,r){function l(){var n=[];_.forEach(u.filterConfig,function(t){t.api&&n.push(r[t.api.method]())});n.length?i.all(n).then(function(n){for(var i=0,t=0;t<u.filterConfig.length;t++)u.filterConfig[t].api&&(u.filterConfig[t].api.data=_.mapValues(_.keyBy(n[i],u.filterConfig[t].api.key),u.filterConfig[t].api.value),i++);u.loading=!1;o()},function(){u.loading=!1;u.error=!0}):(u.loading=!1,o())}function a(n){n.doReset.currentValue!=n.doReset.previousValue&&(u.filterConfig.forEach(function(n){c(n,!0)}),f())}function f(){e();s()}function o(){u.filteredList=u.projectList;var n=u.projectList[0];u.filterConfig=u.filterConfig.filter(function(t){return _.hasIn(n,t.property)}).map(function(n){var t=[],i;switch(n.filter){case"checkbox":case"toggle":t=_.orderBy(_.uniqBy(u.projectList.map(function(t){var i=_.get(t,n.query);return{key:_.get(t,n.query),value:n.api?n.api.data[i]:i}}),"key"),["value"],["asc"]);break;case"array":t=_.orderBy(_.uniqBy(_.reduce(u.projectList.map(function(t){return t[n.property]||[]}),function(t,i){return t.concat(i.map(function(t){var i=_.split(n.query,".").pop();return{key:t[i],value:n.api?n.api.data[t[i]]:t[i]}}))},[]),"key"),["value"],["asc"])}return i={theme:"dark-thin",advanced:{updateOnContentResize:!0},setHeight:t.length>6?216:32*t.length+24,scrollInertia:200},u.filterConfig.length==1&&(i.setHeight=32*t.length+24),{title:n.title,type:n.type,property:n.property,query:n.query,filter:n.filter,criteria:n.criteria,data:t,scrollbarConfig:i}});s()}function e(n){var i=u.projectList;if(u.filterConfig.forEach(function(r){var f,u;if(!n||n.query!==r.query)switch(r.filter){case"checkbox":case"toggle":u=_.pickBy(r.criteria,function(n){return!!n});_.keys(u).length?(i=_.filter(i,function(n){return _.hasIn(u,_.get(n,r.query))}),r.dirty=!0):r.dirty=!1;break;case"text":_.trim(r.criteria)?(f={},f[r.query]=r.criteria,i=t("filter")(i,f),r.dirty=!0):r.dirty=!1;break;case"array":u=_.pickBy(r.criteria,function(n){return!!n});_.keys(u).length?(i=_.filter(i,function(n){return _.intersection(_.keys(u),n[r.property].map(function(n){return n[_.split(r.query,".").pop()]})).length}),r.dirty=!0):r.dirty=!1}}),n)return i;_.isUndefined(u.dirty)||(u.dirty=_.some(u.filterConfig,"dirty"));u.filteredList=i;u.onFilter&&u.onFilter({data:{filteredList:i}})}function s(){u.filterConfig.forEach(function(n){n.data&&n.data.forEach(function(t){t.amount=h(n,t.key)})})}function h(n,t){var r=e(n),i=[];switch(n.filter){case"checkbox":case"toggle":i=_.filter(r,function(i){return t==_.get(i,n.query)});break;case"array":i=_.filter(r,function(i){return _.intersection([t],i[n.property].map(function(t){return t[_.split(n.query,".").pop()]})).length})}return i.length}function c(n,t){n.criteria=n.type==="text"?"":{};t||f()}var u=this;u.config=n;u.scrollbarConfig={autoHideScrollbar:!0,theme:"dark-thin",advanced:{updateOnContentResize:!0},mouseWheel:{preventDefault:!0},scrollInertia:200};u.filteredList=[];u.loading=!0;u.$onInit=l;u.$onChanges=a;u.doFilter=f;u.applyFilter=e;u.getFilterAmount=h;u.onFilterGroupReset=c}angular.module("tyndp").component("filter",{templateUrl:"/app/tyndp/sheets/home/filter/filter.html",bindings:{filterConfig:"<",projectList:"=",onFilter:"&",doReset:"<",withNumbers:"=",withSearch:"=",dirty:"="},controllerAs:"filter",controller:n});n.$inject=["config","$filter","$q","globalService"]}(),function(){function n(n,t,i,r,u,f,e,o){function a(){v();$(window).on("scroll",function(){var n=$(window).scrollTop();n>120?$("#collapsible-header").addClass("affix"):$("#collapsible-header").removeClass("affix")})}function v(){u.getAllProjects(s.type,!0).then(function(n){s.projectList=n;s.filteredList=n;s.loading=!1},function(n){s.loading=!1;s.error=!0;console.log(n)})}function c(n){return"/projectsheets/"+s.type+"/"+n}function y(n){return n.mapUrl?"/api/blobs/map?filename="+encodeURIComponent(n.mapUrl):"/app/assets/images/projects-thumbnail-placeholder.png"}function p(t){n.location.href=c(t.id)}function l(){var n=s.infiniteList.length;s.infiniteList=s.infiniteList.concat(s.filteredList.slice(n,n+6))}function w(n){s.infiniteList=[];s.filteredList=n.filteredList;f(t[0].body,{duration:200,easing:"easeInQuad"});l()}function b(){s.doReset^=!0}function k(){if(s.exportActive&&s.exportSelected.length>0){if(s.exportSelected.length>0){var n="/api/export/"+s.type+"/xls/?projectIds="+_.join(s.exportSelected,","),t=s.type+(s.exportSelected.length==1?"_"+s.exportSelected[0]:"")+".xlsx";it(n,t)}s.exportActive=!1;h()}else s.exportActive^=!0,s.exportActive&&e.info("Please select projects in the list and click export once again")}function h(){_.forEach(s.projectList,function(n){n.selected=!1});_.forEach(s.filteredList,function(n){n.selected=!1});_.forEach(s.infiniteList,function(n){n.selected=!1});s.exportSelected=[]}function d(n){n.selected=!n.selected;n.selected?s.exportSelected.push(n.id):_.pull(s.exportSelected,n.id)}function g(){h();var n=s.exportSelected;_.forEach(s.filteredList,function(t){t.selected=!0;n.push(t.id)});_.forEach(s.infiniteList,function(n){n.selected=!0});s.exportSelected=n}function nt(){s.exportActive=!1;h()}function tt(){return s.exportActive?"Export to spreadsheet ("+s.exportSelected.length+")":"Export to spreadsheet"}function it(n,t){s.exportLoading=!0;o.download(n,t).then(function(){i(function(){s.exportLoading=!1})},function(){i(function(){e.error("An error occured while exporting selected projects, please try again");s.exportLoading=!1})})}var s=this;s.config=r;s.loading=!0;s.error=!1;s.showFilters=!1;s.dirtyFilters=!1;s.doReset=!1;s.filter={};s.projectList=[];s.filteredList=[];s.infiniteList=[];s.exportActive=!1;s.exportSelected=[];s.exportLoading=!1;s.$onInit=a;s.getPublicUrl=c;s.getMapImageUrl=y;s.onQuickJump=p;s.loadMore=l;s.onFilter=w;s.onFiltersReset=b;s.onExport=k;s.onExportSelect=d;s.onExportSelectAll=g;s.onExportSelectClear=nt;s.getExportLabel=tt}angular.module("tyndp").component("sheetsListContainer",{templateUrl:"/app/tyndp/sheets/list/sheetsListContainer.html",bindings:{type:"@"},controllerAs:"sheetsListContainer",controller:n});n.$inject=["$window","$document","$timeout","config","submissionService","smoothScroll","toastService","downloadService"]}(),function(){function n(n,t,i,r,u,f,e,o,s,h){function a(){y()}function v(){c.pdfLoading=!0;t.generatePdf({html:[{container:"key-information-container",title:'<h2 class="pdf-pagebreak-before" data-pdfmake="{&quot;tocItem&quot;:true}">Key Information<\/h2>'},{container:"description-container",title:'<h2 class="pdf-pagebreak-before" data-pdfmake="{&quot;tocItem&quot;:true}">Project Description & Context<\/h2>'},{container:"assessment-container",title:'<h2 class="pdf-pagebreak-before" data-pdfmake="{&quot;tocItem&quot;:true}">Project Assessment<\/h2>'}].map(function(n){return n.title+document.getElementsByTagName(n.container)[0].outerHTML.replace(/<skip>(\n|.)*<\/skip>/gi,"")}).join(""),type:c.type,project:c.project,userName:c.config.userName}).then(function(n){c.pdfLoading=!1;var t=document.createElement("a");document.body.appendChild(t);t.href=window.URL.createObjectURL(n.blob);t.download=n.fileName;t.click()},function(){c.pdfLoading=!1;o.alert("Error generating PDF, make sure all mandatory data is set")})}function y(){c.loading=!0;var n=[f.getSheetsProjectById(c.type,c.id,c.public),u.getAllTsoes(),u.getAllStatus(),u.getAllNeeds(),u.getAllCountries(),u.getAllBenefits(c.type),u.getAllCategoryType(),u.getAllProjectUpgradeType(),u.getAllStorageTechnologyType(),e.getSettings()];c.type==="transmission"&&(n=n.concat([u.getAllElementTypeAcer()]));i.all(n).then(function(n){c.project=n[0];p(n[1]);w(n[2]);b(n[3]);k(n[4]);d(n[5]);nt(n[6]);tt(n[7]);it(n[8]);rt(n[9]);c.type==="transmission"&&g(n[10]);c.loading=!1;ot();r(function(){c.pdfDelay=!1},5e3)},function(){c.loading=!1;c.error=!0;o.alert("Error loading project data!")})}function p(n){var t=[];c.tsoList=n;angular.forEach(c.project.tsos,function(i){for(var u=-1,r=0;r<n.length;++r)if(n[r].id==i.id){u=r;break}t.push(c.tsoList[u])});c.project.tsos=t}function w(n){c.statusList=n}function b(n){c.needList=n;var i={add:!1,howProjectLinksToNeed:null},t=[];angular.forEach(c.needList,function(n){if(n.transmissionProjectId==c.project.id||n.transmissionProjectId==null&&n.storageProjectId==null){var r={need:n};$.extend(!0,r,i);t.push(r)}});c.projectNeedList=t}function k(n){if(c.countriesList=n,c.type=="transmission"){var t=[];angular.forEach(c.project.countries,function(i){for(var u=-1,r=0;r<n.length;++r)if(n[r].isoCode==i.isoCode){u=r;break}t.push(c.countriesList[u])});c.project.countries=t}}function d(n){c.benefitsList=n.map(function(n){return angular.extend(n,{data:(c.project.projectBenefits||[]).find(function(t){return t.benefitId===n.id})||null})})}function g(n){c.ElementTypeAcer=n}function nt(n){c.categoryTypeList=n}function tt(n){c.projectUpgradeTypeList=n}function it(n){c.storageTechnologyTypeList=n}function rt(n){c.settings=n}function ut(){var n=5;c.project.investments.forEach(function(t){t.statusId<n&&(n=t.statusId)});c.project.statusId=n}function ft(){return c.project?(c.type==="storage"?"ST ":"TR ")+c.project.id+" - "+c.project.name:"Project not found"}function et(){if(angular.isArray(c.categoryTypeList))return(c.categoryTypeList.find(function(n){return n.id==c.project.projectCategory})||{name:""}).name}function ot(){c.project.countriesList=c.type==="storage"?c.project.isoCode?[{isoCode:c.project.isoCode}]:[]:c.project.countries||[]}function st(){c.exportLoading=!0;s.download(l(),null).then(function(){r(function(){c.exportLoading=!1})},function(){r(function(){h.error("An error occured while exporting selected projects, please try again");c.exportLoading=!1})})}function l(){return"/api/export/"+c.type+"/xls/?projectIds="+c.project.id}var c=this;c.config=n;c.id=null;c.loading=!1;c.error=!1;c.project={investments:[]};c.pdfDelay=!0;c.getStatus=ut;c.getProjectName=ft;c.getProjectCategory=et;c.onDownloadPDF=v;c.onExport=st;c.getSpreadsheetLink=l;c.$onInit=a}angular.module("tyndp").component("sheetsViewContainer",{templateUrl:"/app/tyndp/sheets/view/sheetsViewContainer.html",bindings:{id:"<",type:"@",public:"="},controllerAs:"sheetsViewContainer",controller:n});n.$inject=["config","pdfService","$q","$timeout","globalService","submissionService","adminService","alertService","downloadService","toastService"]}(),function(){function n(){var n=this}angular.module("tyndp").component("assessmentContainer",{templateUrl:"/app/tyndp/sheets/view/assessment/assessmentContainer.html",bindings:{type:"@",project:"=",settings:"=",benefitsList:"="},controllerAs:"assessmentContainer",controller:n});n.$inject=["config"]}(),function(){function n(){function t(){return angular.isArray(n.project.uploadBoundaryCapacityDiagram)&&n.project.uploadBoundaryCapacityDiagram.length>0}function i(){return"/api/projects/"+n.project.uploadBoundaryCapacityDiagram[0].url}var n=this;n.getCapacityBoundaryDiagram=i;n.isCapacityBoundaryDiagramPresent=t}angular.module("tyndp").component("capacityBoundary",{templateUrl:"/app/tyndp/sheets/view/assessment/sections/capacityBoundary/capacityBoundary.html",bindings:{type:"@",project:"="},controllerAs:"capacityBoundary",controller:n});n.$inject=["config"]}(),function(){function n(){var n=this}angular.module("tyndp").component("capacityTransfer",{templateUrl:"/app/tyndp/sheets/view/assessment/sections/capacityTransfer/capacityTransfer.html",bindings:{type:"@",project:"="},controllerAs:"capacityTransfer",controller:n});n.$inject=["config"]}(),function(){function n(n){function u(){e();o()}function f(){setTimeout(function(){$(".cba-section:not(:has(.table-benefit))").remove();$(".cba-section-group:not(:has(.table-benefit))").remove()},2e3)}function e(){t.cbaConfig=t.config.cbaConfig.map(function(n){return n.data=_.has(n.config,"match")&&_.isMatch(t.project,n.config.match)||!_.has(n.config,"match")?n.config.indicators.map(function(i){return{groupName:i.groupName,explainerId:i.explainerId,groupId:i.groupId,data:_.assignIn(_.groupBy((t.project.cbaIndicators||[]).filter(function(t){return _.includes(_.flatten(n.config.indicators.map(function(n){return n.indicators})),t.indicator.name)}).filter(function(t){return _.includes(n.config.rules.common.scenarios,t.scenario.name)}).filter(function(n){return _.includes(i.indicators,n.indicator.name)}),function(n){return n.indicator.name.match(/B\d/g)[0]}),_.pick(_.keyBy(_.filter(_.keyBy((t.benefitsList||[]).concat(t.type==="transmission"?[{alias:"B8.0",name:"B8.0 Stability (Transient, Voltage and Frequency Stability)",data:(t.project.investments||[]).filter(function(n){return _.isNumber(n.typeOfElement)}).map(function(n){return{investmentId:n.id,investmentName:n.name,typeOfElement:n.typeOfElement}})}]:[]).filter(function(n){return!!n.data&&(n.alias==="B8.0"||n.data.isIndicatorSubmitted)}),"alias"),i.filter),"alias"),i.indicators))}}):[],n})}function o(){t.cbaManualResults=_.mapKeys(_.mapValues(_.pickBy(t.project.customCBA,function(n){return!!n&&_.filter(_.values(n),function(n){return n!=null&&n!=""}).length>0}),function(n,i){return _.assignIn(t.config.cbaManualConfig.config[_.upperFirst(i)],{data:[{min:n.nT2030Min,max:n.nT2030Max,average:n.nT2030Avg,scenario:{name:"NT2030"}},{min:n.nT2040Min,max:n.nT2040Max,average:n.nT2040Avg,scenario:{name:"NT2040"}},{min:n.dE2030Min,max:n.dE2030Max,average:n.dE2030Avg,scenario:{name:"DE2030"}},{min:n.dE2040Min,max:n.dE2040Max,average:n.dE2040Avg,scenario:{name:"DE2040"}}]})}),function(n,t){return n.keyAs||_.upperFirst(t)})}function i(n,t,i){var u=(n.rules.common.scenarios||{length:0}).length,f,r;return t=t||1,f=u===2?25:15,r=f/u*t,i?r:{"max-width":_.template("${width}%")({width:r}),flex:_.template("0 0 ${width}%")({width:r})}}function r(n,t,i){var u=(n.rules.common.scenarios||{length:0}).length,f=(n.rules.common.compare||{length:0}).length,r;return t=t||1,r=u===2?40-25/u*f:50-15/u*f,i?r:{"max-width":_.template("${width}%")({width:r}),flex:_.template("0 0 ${width}%")({width:r})}}function s(n,t){var u=[35];return _.forEach(n.rules.common.scenarios,function(){u.push(i(n,null,!0))}),n.rules.common.compareTarget&&t?u.push(i(n,n.rules.common.compare.length,!0)):_.forEach(n.rules.common.compare,function(){u.push(i(n,null,!0))}),u.push(r(n,null,!0)),JSON.stringify({widths:_.map(u,function(n){return n+"%"})})}var t=this;t.config=n;t.cbaConfig=null;t.$onInit=u;t.$postLink=f;t.getDataColumnCss=i;t.getLastColumnCss=r;t.getPdfMakeConfig=s}angular.module("tyndp").component("cbaResults",{templateUrl:"/app/tyndp/sheets/view/assessment/sections/cbaResults/cbaResults.html",bindings:{type:"@",project:"=",settings:"=",benefitsList:"="},controllerAs:"cbaResults",controller:n});n.$inject=["config"]}(),function(){function n(n){function e(){angular.isArray(t.cbaResults)&&t.cbaResults.length>0&&(t.cbaResults=_.orderBy(t.cbaResults,["scenarioId","indicator.name"],"asc","asc"),t.cbaResults=_.groupBy(t.cbaResults,"indicator.name"));var n=[];_.forEach(t.cbaResults,function(t,i){var r=_.filter(t,{type:0}),u=_.filter(t,{type:1});r.length>0&&n.push({indicatorGroupKey:i,type:0,indicatorGroupData:r});u.length>0&&n.push({indicatorGroupKey:i,type:1,indicatorGroupData:u})});t.cbaExtendedResults=n;o();v()}function o(){var n={};_.forEach(_.keys(t.cbaResults),function(i){n[i]={};_.assignIn(n[i],_.get(t.cbaConfig,"rules.common"),_.get(t.cbaConfig,"rules.override."+i))});t.rulesConfig=n}function s(n,i,r){var u=i==0?" in the entire area covered by the study":" in the ENTSO-E area",f=(n.alias||n.name)+" "+(n.fullNameAlias||n.fullName)+((t.config.benefitsConfig[t.cbaGroupKey].groupName?!0:t.config.benefitsConfig[t.cbaGroupKey].subNames&&r>0)?"":" ("+n.unit+")");return f+(["B1","B1_CO2","B1_RES","B2a","B2a_€","B2b","B2b_€","B3","B5","B5_€","B6","B6_€"].indexOf(n.alias||n.name)>-1?u:"")}function h(n,t,i){var r=n.find(function(n){return n.scenario.name===t});return r?r[i]:"n/a"}function c(n,t,u,f,e){var o=i(t,u),s=r(t,e);return o&&s?l(o[f],s[f]):"none"}function l(n,t){return n&&t?(n=parseInt(n,10),t=parseInt(t,10),n>=t?"up":"down"):"none"}function a(n,u,f,e,o){if(!t.config.benefitsConfig[t.cbaGroupKey].chart)return[];if(e=_.filter(e||[],function(n){return n!=="NONE"}),e.length==0)return[];var c=i(n,"NT2030"),l=i(n,"NT2040"),a=r(n,"DE2030",o),h=r(n,"DE2040",o),s=[];return c&&s.push({label:"NT2030",key:"",value:parseInt(c.average,10)}),a&&s.push({label:"DE2030",key:"",value:parseInt(a.average,10)}),l&&s.push({label:"NT2040",key:"",value:parseInt(l.average,10)}),h&&h.average!=="N/A"&&s.push({label:"DE2040",key:"",value:parseInt(h.average,10)}),s}function v(){t.manualIndicators=_.keys(t.cbaManualResults).filter(function(n){return n.match(/B\d/g)[0]===t.cbaGroupKey})}function i(n,t){return n.find(function(n){return n.scenario.name===t})}function r(n,i,r){return t.project.cbaIndicators.find(function(t){return t.scenario.name===i&&t.indicator.name===n[0].indicator.name&&t.type===r})}function u(n,t,i){var u=(n.scenarios||{length:0}).length,f,r;return t=t||1,f=u===2?25:15,r=f/u*t,i?r:{"max-width":_.template("${width}%")({width:r}),flex:_.template("0 0 ${width}%")({width:r})}}function f(n,t,i){var u=(n.scenarios||{length:0}).length,f=(n.compare||{length:0}).length,r;return t=t||1,r=u===2?40-25/u*f:50-15/u*f,i?r:{"max-width":_.template("${width}%")({width:r}),flex:_.template("0 0 ${width}%")({width:r})}}function y(n){var t=[35];return _.forEach(n.rules.common.scenarios,function(){t.push(u(n.rules.common,null,!0))}),n.rules.common.compareTarget&&t.push(u(n.rules.common,n.rules.common.compare.length,!0)),t.push(f(n.rules.common,null,!0)),JSON.stringify({widths:_.map(t,function(n){return n+"%"})})}var t=this;t.cbaManualResults=[];t.isChartCollapsed=!0;t.rulesConfig={};t.config=n;t.$onInit=e;t.getName=s;t.getIndicatorValue=h;t.getDataColumnCss=u;t.getLastColumnCss=f;t.getPdfMakeConfig=y;t.getCompareValue=c;t.getChartValues=a;t.cbaExtendedResults=[]}angular.module("tyndp").component("indicatorB1",{templateUrl:"/app/tyndp/sheets/view/assessment/sections/cbaResults/indicatorB1/indicatorB1.html",bindings:{type:"@",project:"=",cbaGroupKey:"@",cbaResults:"=",cbaManualResults:"=",cbaConfig:"="},controllerAs:"indicatorB1",controller:n});n.$inject=["config"]}(),function(){function n(){function e(){o()}function o(){_.assignIn(n.rulesConfig,_.get(n.cbaConfig,"rules.common"),_.get(n.cbaConfig,"rules.override."+n.cbaGroupKey))}function s(){return n.cbaResults.name}function h(){return!(_.isNil(t())&&_.isNil(i())&&_.isNil(u())&&_.isNil(f()))}function c(){return"In "+n.cbaResults.data.unit}function t(){return n.cbaResults.data.computeScenario===2?n.cbaResults.data.scenarioAssessedValue2030:n.cbaConfig.scenarioGroupKey=="NT"?n.cbaResults.data.nationalTrendsAssessedValue2030:n.cbaResults.data.dE2030AssessedValue}function i(){return n.cbaResults.data.computeScenario===2?n.cbaResults.data.scenarioAssessedValue2040:n.cbaConfig.scenarioGroupKey=="NT"?n.cbaResults.data.nationalTrendsAssessedValue2040:n.cbaResults.data.dE2040AssessedValue}function u(){return n.cbaResults.data.computeScenario===2?n.cbaResults.data.scenarioQuantifiedValue2030:n.cbaConfig.scenarioGroupKey=="NT"?n.cbaResults.data.nationalTrendsQuantifiedValue2030:n.cbaResults.data.dE2030QuantifiedValue}function f(){return n.cbaResults.data.computeScenario===2?n.cbaResults.data.scenarioQuantifiedValue2025:n.cbaConfig.scenarioGroupKey=="NT"?n.cbaResults.data.nationalTrendsQuantifiedValue2040:n.cbaResults.data.dE2040QuantifiedValue}function r(n){var t=25/2;return n?t:{"max-width":_.template("${width}%")({width:t}),flex:_.template("0 0 ${width}%")({width:t})}}function l(){var n=[35,r(!0),r(!0),40];return JSON.stringify({headerRows:1,widths:_.map(n,function(n){return n+"%"})})}function a(){var r=_.template("This indicator was computed based on <%- scenarios[0] %> "+"<% if (scenarios[1]){ %>"+"and <%- scenarios[1] %>"+"<% } %>"+", in a study performed by <%- studyEntity %> in <%- studyYear %>. "+"The promoter(s) stated that the submitted value was computed in accordance with the CBA Guideline and explained it as follows:<br>"+"<i><%- howCompliesCBAGuidelines %><\/i><br>"+"<% if (additionalAssumptions || additionalAssumptionsJustification){ %>"+"In addition to the scenario, the following assumptions were made to compute this indicator:<br>"+"<% if (additionalAssumptions){ %>"+"<i><%- additionalAssumptions %><\/i><br>"+"<% } %>"+"<% if (additionalAssumptionsJustification){ %>"+"<i><%- additionalAssumptionsJustification %><\/i><br>"+"<% } %>"+"<% } %>"+"The promoter(s) certified that the values submitted and assessed in the study relate to countries located within the ENTSO-E perimeter only.");return r({scenarios:_.compact([t()?n.cbaConfig.scenarioGroupKey==="OTHER"?n.cbaResults.data.scenarioHorizonName2030:n.rulesConfig.scenarios[0]:null,i()?n.cbaConfig.scenarioGroupKey==="OTHER"?n.cbaResults.data.scenarioHorizonName2040:n.rulesConfig.scenarios[1]:null]),studyEntity:n.cbaResults.data.studyEntity,studyYear:n.cbaResults.data.studyYear,howCompliesCBAGuidelines:n.cbaResults.data.howCompliesCBAGuidelines,additionalAssumptions:n.cbaResults.data.additionalAssumptions,additionalAssumptionsJustification:n.cbaResults.data.additionalAssumptionsJustification,monetisationFactor:n.cbaResults.data.monetisationFactor,monetisationFactorExplanation:n.cbaResults.data.monetisationFactorExplanation})}function v(){n.isComputationCollapsed^=!0}var n=this;n.isComputationCollapsed=!0;n.rulesConfig={};n.$onInit=e;n.getName=s;n.hasData=h;n.getUnitValue=c;n.getAssessedValueLo=t;n.getAssessedValueHi=i;n.getQuantifiedValueLo=u;n.getQuantifiedValueHi=f;n.getDataColumnCss=r;n.getPdfMakeConfig=l;n.getComputationDescription=a;n.onComputationDescription=v}angular.module("tyndp").component("indicatorB10",{templateUrl:"/app/tyndp/sheets/view/assessment/sections/cbaResults/indicatorB10/indicatorB10.html",bindings:{type:"@",project:"=",cbaGroupKey:"@",cbaResults:"=",cbaConfig:"="},controllerAs:"indicatorB10",controller:n});n.$inject=["config"]}(),function(){function n(n){function e(){angular.isArray(t.cbaResults.data)&&t.cbaResults.data.length>0&&(t.cbaResults.data=_.orderBy(t.cbaResults.data,["scenarioId","indicator.name"],"asc","asc"));o()}function o(){_.assignIn(t.rulesManualConfig,_.get(t.cbaConfig,"rules.common"),_.get(t.cbaConfig,"rules.override."+t.cbaIndicator),t.rulesConfig,n.cbaManualConfig.override[t.cbaIndicator])}function s(){return t.cbaResults.name+" ("+t.cbaResults.unit+") "+t.cbaResults.fullName}function h(n,t,i){var r=n.find(function(n){return n.scenario.name===t});return r?r[i]:"-"}function c(n,t,i,r){var u=n.find(function(n){return n.scenario.name===t}),f=n.find(function(n){return n.scenario.name===r});return u&&f?l(u[i],f[i]):"none"}function l(n,t){return n&&t?(n=parseInt(n,10),t=parseInt(t,10),n>=t?"up":"down"):"none"}function a(n,t,i,f){if(f=_.filter(f||[],function(n){return n!=="NONE"}),f.length==0)return[];var o=r(n,"NT2030"),s=r(n,"NT2040"),h=u(n,"DE2030"),c=u(n,"DE2040"),e=[];return o&&e.push({label:"NT",key:"2030",value:parseInt(o.average,10)}),h&&e.push({label:"DE",key:"2030",value:parseInt(h.average,10)}),s&&e.push({label:"NT",key:"2040",value:parseInt(s.average,10)}),c&&e.push({label:"DE",key:"2040",value:parseInt(c.average,10)}),e}function r(n,t){return n.find(function(n){return n.scenario.name===t})}function u(n,t){return n.find(function(n){return n.scenario.name===t})}function i(n,t,i){var u=(n.scenarios||{length:0}).length,r;return t=t||1,r=25/u*t,i?r:{"max-width":_.template("${width}%")({width:r}),flex:_.template("0 0 ${width}%")({width:r})}}function f(n,t,i){var u=(n.scenarios||{length:0}).length,f=(n.compare||{length:0}).length,r;return t=t||1,r=40-25/u*f,i?r:{"max-width":_.template("${width}%")({width:r}),flex:_.template("0 0 ${width}%")({width:r})}}function v(n){var t=[35];return _.forEach(n.scenarios,function(){t.push(i(n,null,!0))}),n.compareTarget&&t.push(i(n,n.compare.length,!0)),t.push(f(n,null,!0)),JSON.stringify({widths:_.map(t,function(n){return n+"%"})})}var t=this;t.rulesManualConfig={};t.config=n;t.$onInit=e;t.getName=s;t.getIndicatorValue=h;t.getCompareValue=c;t.getDataColumnCss=i;t.getLastColumnCss=f;t.getPdfMakeConfig=v;t.getChartValues=a}angular.module("tyndp").component("indicatorB1Manual",{templateUrl:"/app/tyndp/sheets/view/assessment/sections/cbaResults/indicatorB1Manual/indicatorB1Manual.html",bindings:{type:"@",project:"=",cbaResults:"=",cbaConfig:"=",cbaIndicator:"@",rulesConfig:"="},controllerAs:"indicatorB1Manual",controller:n});n.$inject=["config"]}(),function(){function n(n,t){function o(){t.getAllQualitativeAssessmentType().then(function(n){i.QualitativeAssessmentType=n},function(n){console.log(n)});s()}function s(){_.assignIn(i.rulesConfig,_.get(i.cbaConfig,"rules.common"),_.get(i.cbaConfig,"rules.override."+i.cbaGroupKey))}function h(){return i.cbaResults.name}function c(){return!(_.isNil(u())&&_.isNil(f()))}function u(){return i.cbaResults.data.computeScenario===2?r("qualitativeAssessmentOther2025"):i.cbaConfig.scenarioGroupKey=="NT"?r("qualitativeAssessmentNT2030"):r("qualitativeAssessmentDE2030")}function f(){return i.cbaResults.data.computeScenario===2?r("qualitativeAssessmentOther2030"):i.cbaConfig.scenarioGroupKey=="NT"?r("qualitativeAssessmentNT2040"):r("qualitativeAssessmentDE2040")}function e(n){var t=25/2;return n?t:{"max-width":_.template("${width}%")({width:t}),flex:_.template("0 0 ${width}%")({width:t})}}function l(){var n=[35,e(!0),e(!0),40];return JSON.stringify({headerRows:1,widths:_.map(n,function(n){return n+"%"})})}function a(){var n=_.template("This indicator was computed based on <%- scenarios[0] %> "+"<% if (scenarios[1]){ %>"+"and <%- scenarios[1] %>"+"<% } %>"+", in a study performed by <%- studyEntity %> in <%- studyYear %>. "+"The promoter(s) stated that the submitted value was computed in accordance with the CBA Guideline and explained it as follows:<br>"+"<i><%- howCompliesCBAGuidelines %><\/i><br>"+"<% if (additionalAssumptions || additionalAssumptionsJustification){ %>"+"In addition to the scenario, the following assumptions were made to compute this indicator:<br>"+"<% if (additionalAssumptions){ %>"+"<i><%- additionalAssumptions %><\/i><br>"+"<% } %>"+"<% if (additionalAssumptionsJustification){ %>"+"<i><%- additionalAssumptionsJustification %><\/i><br>"+"<% } %>"+"<% } %>"+"The promoter(s) certified that the values submitted and assessed in the study relate to countries located within the ENTSO-E perimeter only.");return n({scenarios:_.compact([u()?i.cbaConfig.scenarioGroupKey==="OTHER"?i.cbaResults.data.scenarioHorizonName2030:i.rulesConfig.scenarios[0]:null,f()?i.cbaConfig.scenarioGroupKey==="OTHER"?i.cbaResults.data.scenarioHorizonName2040:i.rulesConfig.scenarios[1]:null]),studyEntity:i.cbaResults.data.studyEntity,studyYear:i.cbaResults.data.studyYear,howCompliesCBAGuidelines:i.cbaResults.data.howCompliesCBAGuidelines,additionalAssumptions:i.cbaResults.data.additionalAssumptions,additionalAssumptionsJustification:i.cbaResults.data.additionalAssumptionsJustification})}function v(){i.isComputationCollapsed^=!0}function r(n){return angular.isArray(i.QualitativeAssessmentType)&&(i.QualitativeAssessmentType.find(function(t){return t.id===i.cbaResults.data[n]})||{name:null}).name}var i=this;i.isComputationCollapsed=!0;i.rulesConfig={};i.$onInit=o;i.getName=h;i.hasData=c;i.getAssessedValueLo=u;i.getAssessedValueHi=f;i.getDataColumnCss=e;i.getPdfMakeConfig=l;i.getComputationDescription=a;i.onComputationDescription=v}angular.module("tyndp").component("indicatorB7",{templateUrl:"/app/tyndp/sheets/view/assessment/sections/cbaResults/indicatorB7/indicatorB7.html",bindings:{type:"@",project:"=",cbaGroupKey:"@",cbaResults:"=",cbaConfig:"="},controllerAs:"indicatorB7",controller:n});n.$inject=["config","globalService"]}(),function(){function n(n,t){function f(){t.getAllElementType().then(function(n){i.ElementType=n},function(n){console.log(n)})}function e(){return i.cbaResults.name}function o(){return _.isArray(i.cbaResults.data)&&i.cbaResults.data.length}function s(n){return n.investmentName+" ("+u(n,"name")+")"}function h(n){return u(n,"transient")}function c(n){return u(n,"voltage")}function l(n){return u(n,"frequency")}function r(n){var t=25/3;return n?t:{"max-width":_.template("${width}%")({width:t}),flex:_.template("0 0 ${width}%")({width:t})}}function a(){var n=[35,r(!0),r(!0),r(!0),40];return JSON.stringify({headerRows:1,widths:_.map(n,function(n){return n+"%"})})}function u(n,t){return angular.isArray(i.ElementType)&&i.ElementType.find(function(t){return t.id===n.typeOfElement})[t]}var i=this;i.$onInit=f;i.getName=e;i.hasData=o;i.getInvestmentName=s;i.getTransientStability=h;i.getVoltageStability=c;i.getFrequencyStability=l;i.getDataColumnCss=r;i.getPdfMakeConfig=a}angular.module("tyndp").component("indicatorB80",{templateUrl:"/app/tyndp/sheets/view/assessment/sections/cbaResults/indicatorB80/indicatorB80.html",bindings:{type:"@",project:"=",cbaGroupKey:"@",cbaResults:"=",cbaConfig:"="},controllerAs:"indicatorB80",controller:n});n.$inject=["config","globalService"]}(),function(){function n(){function u(){f()}function f(){_.assignIn(n.rulesConfig,_.get(n.cbaConfig,"rules.common"),_.get(n.cbaConfig,"rules.override."+n.cbaGroupKey))}function e(){return n.cbaResults.name+" (MWh/year)"}function o(){return!(_.isNil(t())&&_.isNil(i()))}function t(){return n.cbaResults.data.computeScenario===2?n.cbaResults.data.scenarioAssessedValue2030:n.cbaConfig.scenarioGroupKey=="NT"?n.cbaResults.data.nationalTrendsAssessedValue2030:n.cbaResults.data.dE2030AssessedValue}function i(){return n.cbaResults.data.computeScenario===2?n.cbaResults.data.scenarioAssessedValue2040:n.cbaConfig.scenarioGroupKey=="NT"?n.cbaResults.data.nationalTrendsAssessedValue2040:n.cbaResults.data.dE2040AssessedValue}function r(n){var t=25/2;return n?t:{"max-width":_.template("${width}%")({width:t}),flex:_.template("0 0 ${width}%")({width:t})}}function s(){var n=[35,r(!0),r(!0),40];return JSON.stringify({headerRows:1,widths:_.map(n,function(n){return n+"%"})})}function h(){var r=_.template("This indicator was computed based on <%- scenarios[0] %> "+"<% if (scenarios[1]){ %>"+"and <%- scenarios[1] %>"+"<% } %>"+", in a study performed by <%- studyEntity %> in <%- studyYear %>. "+"The promoter(s) stated that the submitted value was computed in accordance with the CBA Guideline and explained it as follows:<br>"+"<i><%- howCompliesCBAGuidelines %><\/i><br>"+"<% if (additionalAssumptions || additionalAssumptionsJustification){ %>"+"In addition to the scenario, the following assumptions were made to compute this indicator:<br>"+"<% if (additionalAssumptions){ %>"+"<i><%- additionalAssumptions %><\/i><br>"+"<% } %>"+"<% if (additionalAssumptionsJustification){ %>"+"<i><%- additionalAssumptionsJustification %><\/i><br>"+"<% } %>"+"<% } %>"+"The promoter(s) certified that the values submitted and assessed in the study relate to countries located within the ENTSO-E perimeter only.");return r({scenarios:_.compact([t()?n.cbaConfig.scenarioGroupKey==="OTHER"?n.cbaResults.data.scenarioHorizonName2030:n.rulesConfig.scenarios[0]:null,i()?n.cbaConfig.scenarioGroupKey==="OTHER"?n.cbaResults.data.scenarioHorizonName2040:n.rulesConfig.scenarios[1]:null]),studyEntity:n.cbaResults.data.studyEntity,studyYear:n.cbaResults.data.studyYear,howCompliesCBAGuidelines:n.cbaResults.data.howCompliesCBAGuidelines,additionalAssumptions:n.cbaResults.data.additionalAssumptions,additionalAssumptionsJustification:n.cbaResults.data.additionalAssumptionsJustification})}function c(){n.isComputationCollapsed^=!0}var n=this;n.isComputationCollapsed=!0;n.rulesConfig={};n.$onInit=u;n.getName=e;n.hasData=o;n.getAssessedValueLo=t;n.getAssessedValueHi=i;n.getDataColumnCss=r;n.getPdfMakeConfig=s;n.getComputationDescription=h;n.onComputationDescription=c}angular.module("tyndp").component("indicatorB81",{templateUrl:"/app/tyndp/sheets/view/assessment/sections/cbaResults/indicatorB81/indicatorB81.html",bindings:{type:"@",project:"=",cbaGroupKey:"@",cbaResults:"=",cbaConfig:"="},controllerAs:"indicatorB81",controller:n});n.$inject=["config","globalService"]}(),function(){function n(){function u(){f()}function f(){_.assignIn(n.rulesConfig,_.get(n.cbaConfig,"rules.common"),_.get(n.cbaConfig,"rules.override."+n.cbaGroupKey))}function e(){return n.cbaResults.name+" ("+s()+")"}function o(){return!(_.isNil(t())&&_.isNil(i()))}function s(){switch(n.cbaGroupKey){case"B8-BS-AS":return"Meuro/year";case"B8-BS":return n.cbaResults.data.unit;default:return"..."}}function t(){return n.cbaResults.data.computeScenario===2?n.cbaResults.data.scenarioAssessedValue2030:n.cbaConfig.scenarioGroupKey=="NT"?n.cbaResults.data.nationalTrendsAssessedValue2030:n.cbaResults.data.dE2030AssessedValue}function i(){return n.cbaResults.data.computeScenario===2?n.cbaResults.data.scenarioAssessedValue2040:n.cbaConfig.scenarioGroupKey=="NT"?n.cbaResults.data.nationalTrendsAssessedValue2040:n.cbaResults.data.dE2040AssessedValue}function r(n){var t=25/2;return n?t:{"max-width":_.template("${width}%")({width:t}),flex:_.template("0 0 ${width}%")({width:t})}}function h(){var n=[35,r(!0),r(!0),40];return JSON.stringify({headerRows:1,widths:_.map(n,function(n){return n+"%"})})}function c(){var r=_.template("This indicator was computed based on <%- scenarios[0] %> "+"<% if (scenarios[1]){ %>"+"and <%- scenarios[1] %>"+"<% } %>"+", in a study performed by <%- studyEntity %> in <%- studyYear %>. "+"The promoter(s) stated that the submitted value was computed in accordance with the CBA Guideline and explained it as follows:<br>"+"<i><%- howCompliesCBAGuidelines %><\/i><br>"+"<% if (additionalAssumptions || additionalAssumptionsJustification){ %>"+"In addition to the scenario, the following assumptions were made to compute this indicator:<br>"+"<% if (additionalAssumptions){ %>"+"<i><%- additionalAssumptions %><\/i><br>"+"<% } %>"+"<% if (additionalAssumptionsJustification){ %>"+"<i><%- additionalAssumptionsJustification %><\/i><br>"+"<% } %>"+"<% } %>"+"The promoter(s) certified that the values submitted and assessed in the study relate to countries located within the ENTSO-E perimeter only.");return r({scenarios:_.compact([t()?n.cbaConfig.scenarioGroupKey==="OTHER"?n.cbaResults.data.scenarioHorizonName2030:n.rulesConfig.scenarios[0]:null,i()?n.cbaConfig.scenarioGroupKey==="OTHER"?n.cbaResults.data.scenarioHorizonName2040:n.rulesConfig.scenarios[1]:null]),studyEntity:n.cbaResults.data.studyEntity,studyYear:n.cbaResults.data.studyYear,howCompliesCBAGuidelines:n.cbaResults.data.howCompliesCBAGuidelines,additionalAssumptions:n.cbaResults.data.additionalAssumptions,additionalAssumptionsJustification:n.cbaResults.data.additionalAssumptionsJustification})}function l(){n.isComputationCollapsed^=!0}var n=this;n.isComputationCollapsed=!0;n.rulesConfig={};n.$onInit=u;n.getName=e;n.hasData=o;n.getAssessedValueLo=t;n.getAssessedValueHi=i;n.getDataColumnCss=r;n.getPdfMakeConfig=h;n.getComputationDescription=c;n.onComputationDescription=l}angular.module("tyndp").component("indicatorB82",{templateUrl:"/app/tyndp/sheets/view/assessment/sections/cbaResults/indicatorB82/indicatorB82.html",bindings:{type:"@",project:"=",cbaGroupKey:"@",cbaResults:"=",cbaConfig:"="},controllerAs:"indicatorB82",controller:n});n.$inject=["config","globalService"]}(),function(){function n(n){function u(){}function f(){return t.cbaResults.name}function e(n,t,r){return["0","","+","++"][t?i(n,"score1",t)&(i(n,"score2",r)||3):1]}function i(n,i,r){return(_.find(t.config.types.flexibility[n][i],{value:r})||{}).weight}function r(n){var t=25;return n?t:{"max-width":_.template("${width}%")({width:t}),flex:_.template("0 0 ${width}%")({width:t})}}function o(){var n=[35,r(!0),40];return JSON.stringify({headerRows:1,widths:_.map(n,function(n){return n+"%"})})}var t=this;t.config=n;t.$onInit=u;t.getName=f;t.getSystemFlexibilityScore=e;t.getDataColumnCss=r;t.getPdfMakeConfig=o}angular.module("tyndp").component("indicatorB8X",{templateUrl:"/app/tyndp/sheets/view/assessment/sections/cbaResults/indicatorB8X/indicatorB8X.html",bindings:{type:"@",project:"=",cbaGroupKey:"@",cbaResults:"=",cbaConfig:"="},controllerAs:"indicatorB8X",controller:n});n.$inject=["config","globalService"]}(),function(){function n(){function t(){n.cellClassName=n.type==="transmission"?"col-2":"col-3";i()}function i(){n.type==="transmission"?(n.data=n.project.investments.map(function(n){return{id:n.id,name:n.id+". "+n.name,capexAtInception:n.estimatedCapexCostMEur,capexLifeCycle:n.lifecycleCapex,capexUncertaintyRange:n.costUncertaintyRange,sustainingCapexCostMEur:n.sustainingCapexCostMEur,opexValue:n.estimatedOpexCostMEur,complexityExplanation:n.complexityExplanation}}),n.project.investments.length>0&&n.data.push({id:-1,name:"Total",capexAtInception:_.round(_.sumBy(n.project.investments,function(n){return parseFloat(n.estimatedCapexCostMEur)||0}),6),capexLifeCycle:_.round(_.sumBy(n.project.investments,function(n){return parseFloat(n.lifecycleCapex)||0}),6),capexUncertaintyRange:"",sustainingCapexCostMEur:_.sumBy(n.project.investments,function(n){return parseFloat(n.sustainingCapexCostMEur)||0}),opexValue:_.sumBy(n.project.investments,function(n){return parseFloat(n.estimatedOpexCostMEur)||0})})):n.data=[{capexAtInception:n.project.estimatedCapexCostMEur,capexLifeCycle:n.project.lifecycleCapex,capexUncertaintyRange:n.project.costUncertainlyRange,sustainingCapexCostMEur:n.project.estimatedSustainingCapexCostMEur,opexValue:n.project.estimatedOpexCostMEur}]}var n=this;n.$onInit=t;n.data=[]}angular.module("tyndp").component("projectCosts",{templateUrl:"/app/tyndp/sheets/view/assessment/sections/projectCosts/projectCosts.html",bindings:{type:"@",project:"="},controllerAs:"projectCosts",controller:n});n.$inject=["config"]}(),function(){function n(n,t){function r(){i.type==="transmission"&&(t.getAllResidualEnvironmentImpact().then(function(n){i.residualEnvironmentImpactList=n},function(n){console.log(n)}),t.getAllResidualSocialImpact().then(function(n){i.residualSocialImpactList=n},function(n){console.log(n)}))}function u(){return i.type==="transmission"?i.project.residualImpactEnvironment.length||i.project.residualImpactSocial.length:i.project.residualEnvironmentalImpact||i.project.residualSocialImpact||i.project.otherResidualImpact}function f(){return i.project.residualImpactEnvironment.length>0}function e(){return i.project.residualImpactSocial.length>0}var i=this;i.$onInit=r;i.isDataAvailable=u;i.isTranmsmissionResidualImpactEnvironmentDataAvailable=f;i.isTranmsmissionSociaImpactEnvironmentDataAvailable=e}angular.module("tyndp").component("residualImpact",{templateUrl:"/app/tyndp/sheets/view/assessment/sections/residualImpact/residualImpact.html",bindings:{type:"@",project:"=",settings:"="},controllerAs:"residualImpact",controller:n});n.$inject=["config","globalService"]}(),function(){function n(){function i(){n.isDisclaimerVisible=!!n.project.investments.filter(function(t){return _.includes(_.map(n.projectImpactModel,"investmentId"),t.id)}).find(function(n){return _.includes([1,2],n.status.id)})}function r(n,i){var r=t(n);return r&&i===0?r.name:""}function u(n,i){var r=t(n);return r&&i===0?r.status?r.status.name:"No status":""}function f(n){return n.distance}function e(t){return t.typeOfSensitivity==7?t.typeOfSensitivityOther:((n.sensitivityList||[]).find(function(n){return n.id==t.typeOfSensitivity})||{name:""}).name}function t(t){return n.project.investments.find(function(n){return t.investmentId==n.id})}var n=this;n.isDisclaimerVisible=!1;n.$onInit=i;n.getInvestmentName=r;n.getInvestmentStatus=u;n.getDistance=f;n.getTypeOfSensitivity=e}angular.module("tyndp").component("residualImpactTransmission",{templateUrl:"/app/tyndp/sheets/view/assessment/sections/residualImpact/residualImpactTransmission/residualImpactTransmission.html",bindings:{type:"@",project:"=",title:"@",disclaimer:"@",projectImpactModel:"=",sensitivityList:"=",additionalInformation:"=",dataAvailable:"=",nonAvailableMessage:"@"},controllerAs:"residualImpactTransmission",controller:n});n.$inject=["config"]}(),function(){function n(n,t,i,r){function f(){var t=angular.element(n),i=u.containerId?$('[id="'+u.containerId+'"]'):$(t).parent();t.css("float","left");t.css("margin-right","10px");i.mouseenter(function(){t.find(".help-icon").addClass("pulsate-fwd")});i.mouseleave(function(){t.find(".help-icon").removeClass("pulsate-fwd")})}function e(){return r.open({animation:!0,ariaLabelledBy:"modal-title",ariaDescribedBy:"modal-body",component:"help",size:"xl modal-dialog-scrollable",windowClass:"transparent",backdrop:"static",resolve:{data:{explainerId:u.explainerId}}})}function o(n){t.$apply(function(){u.tooltipIsOpen=n})}var u=this;u.$onInit=f;u.show=e;u.tooltipIsOpen=!1;u.toggleTooltip=o}angular.module("tyndp").component("sheetsExplainer",{templateUrl:"/app/tyndp/sheets/view/common/explainer/sheetsExplainer.html",bindings:{explainerId:"@",containerId:"@",cta:"="},controllerAs:"sheetsExplainer",controller:n});n.$inject=["$element","$scope","$timeout","$uibModal"]}(),function(){function n(){var n=this}angular.module("tyndp").component("descriptionContainer",{templateUrl:"/app/tyndp/sheets/view/description/descriptionContainer.html",bindings:{type:"@",project:"=",storageTechnologyTypeList:"=",needsList:"=",settings:"=",elementTypeAcer:"="},controllerAs:"descriptionContainer",controller:n});n.$inject=["config"]}(),function(){function n(n,t,i){function u(){i.getInterconnectionTargetsImages().then(function(n){r.interconnectionTargetsImages=n[0].files},function(){})}function f(n){var t=r.needsList.filter(function(t){return t.need.id==n.needId});return t.length?t[0].need:{}}function e(){return r.type==="transmission"?(r.project.assessmentType||"").trim():"NO"}function o(n){return"/api/projects/"+n.url}var r=this;r.interconnectionTargetsImages=[];r.$onInit=u;r.getNeedObject=f;r.getAssessmentType=e;r.getInterconnectionTargetImage=o}angular.module("tyndp").component("context",{templateUrl:"/app/tyndp/sheets/view/description/sections/context/context.html",bindings:{project:"=",settings:"=",needsList:"=",type:"@"},controllerAs:"context",controller:n});n.$inject=["config","lightbox","adminService"]}(),function(){function n(){function i(){t()}function t(){var t={main:[],others:[]};angular.forEach(n.investments||[],function(n){t[n.isMainInvestment?"main":"others"].push(n)});n.group=t.others.length?[t.main,t.others]:[t.main]}function r(n){return n.name}function u(t){if(angular.isArray(n.elementTypeAcer))return(n.elementTypeAcer.find(function(n){return n.id==t.typeOfElementAcer})||{name:""}).name}function f(n){return[1,2,3,4,5].indexOf(n.typeOfElementAcer)>-1?n.totalRouteLengthKm:""}function e(n){return[1,2,3,4,5,6,7].indexOf(n.typeOfElementAcer)>-1?n.substationFrom:""}function o(n){return[1,2,3,4,5,6,7].indexOf(n.typeOfElementAcer)>-1?n.substationTo:""}function s(n){return n.status?n.status.name:"No status"}function h(n){return n.commissioningYear||"none"}function c(n){return["Rescheduled","Delayed"].indexOf(n.evolutionDriver)>-1?n.delayExplanation:""}function l(n){return n.voltageLevelKv}function a(n){return[1,3,4,8,10].indexOf(n.typeOfElementAcer)>=0?n.mva:""}function v(n){return n.typeOfElementAcer==11?n.mvar:""}function y(n){return n.converterType}function p(n){return n.capacity}function w(n){return JSON.stringify({widths:n?["9%","9%","9%","9%","9%","9%","9%","37%"]:["18%","9%","9%","9%","9%","9%","9%","9%","19%"],headerRows:1})}var n=this;n.group=[];n.getInvestments=t;n.getName=r;n.getElementsTypeAcer=u;n.getTotalRouteLengthKm=f;n.getSubstationFrom=e;n.getSubstationTo=o;n.getStatus=s;n.getComissioningYear=h;n.getDelayExplanation=c;n.getNominalVoltage=l;n.getMvar=v;n.getMVA=a;n.getConverterType=y;n.getInvestmentCapacity=p;n.getPdfMakeConfig=w;n.$onInit=i}angular.module("tyndp").component("investments",{templateUrl:"/app/tyndp/sheets/view/description/sections/investments/investments.html",bindings:{project:"=",type:"@",investments:"=",elementTypeAcer:"="},controllerAs:"investments",controller:n});n.$inject=["config"]}(),function(){function n(){function i(){return t()==="Hydro pumped storage"}function t(){if(angular.isArray(n.storageTechnologyTypeList))return(n.storageTechnologyTypeList.find(function(t){return t.id==n.project.storageTechnology})||{name:""}).name}function r(){return n.project.generatingMaxActivePower}function u(){return n.project.efficiencyMin}function f(){return n.project.storageMaxActivePower}function e(){return n.project.efficiencyMax}function o(){return n.project.storageUnitLifeTimeYears}function s(){return n.project.status?n.project.status.name:"No status"}function h(){return n.project.commissioningYear||"none"}function c(){return n.project.evolutionDriver}function l(){return n.project.delayExplanation}function a(){return JSON.stringify({widths:n.isHydroPumped()?["9%","9%","9%","9%","9%","9%","9%","9%","9%","19%"]:["9%","9%","9%","9%","9%","9%","9%","9%","28%"]})}var n=this;n.isHydroPumped=i;n.getStorageTechnology=t;n.getTotalTurbiningCapacity=r;n.getStorageCapacity=u;n.getTotalPumpingCapacity=f;n.getEfficiency=e;n.getLifetime=o;n.getStatus=s;n.getComissioningYear=h;n.getProgress=c;n.getDelayExplanation=l;n.getPdfMakeConfig=a}angular.module("tyndp").component("technicalDescription",{templateUrl:"/app/tyndp/sheets/view/description/sections/technicalDescription/technicalDescription.html",bindings:{project:"=",storageTechnologyTypeList:"=",type:"@"},controllerAs:"technicalDescription",controller:n});n.$inject=["config"]}(),function(){function n(){var n=this}angular.module("tyndp").component("keyInformationContainer",{templateUrl:"/app/tyndp/sheets/view/keyInformation/keyInformationContainer.html",bindings:{type:"@",project:"=",projectUpgradeTypeList:"=",storageTechnologyTypeList:"=",statusList:"=",countriesList:"=",elementTypeAcer:"="},controllerAs:"keyInformationContainer",controller:n});n.$inject=["config"]}(),function(){function n(){function t(){return((n.project?n.project[n.type==="storage"?"shortSummary":"description"]:"")||"").replace('"',"")}function i(){var t=null;return angular.forEach(n.project.investments||[],function(n){n.isMainInvestment&&(t=n)}),t&&t.typeOfElementAcer?e(t):""}function r(){if(angular.isArray(n.statusList))return(n.statusList.find(function(t){return t.id==n.project.statusId})||{name:""}).name}function u(){if(angular.isArray(n.projectUpgradeTypeList))return(n.projectUpgradeTypeList.find(function(t){return t.id==n.project.projectUpgrade})||{name:""}).name}function f(){if(angular.isArray(n.storageTechnologyTypeList))return(n.storageTechnologyTypeList.find(function(t){return t.id==n.project.storageTechnology})||{name:""}).name}function e(t){if(angular.isArray(n.elementTypeAcer))return(n.elementTypeAcer.find(function(n){return n.id==t.typeOfElementAcer})||{name:""}).name}var n=this;n.getDescription=t;n.getMainInvestmentElementType=i;n.getStatus=r;n.getProjectUpgrade=u;n.getStorageTechnology=f}angular.module("tyndp").component("description",{templateUrl:"/app/tyndp/sheets/view/keyInformation/sections/description/description.html",bindings:{project:"=",type:"@",statusList:"=",projectUpgradeTypeList:"=",storageTechnologyTypeList:"=",elementTypeAcer:"="},controllerAs:"description",controller:n});n.$inject=["config"]}(),function(){function n(){function t(n){return n.logo?"/api/projects/"+n.logo.url:!1}function i(t){if(angular.isArray(n.countriesList)&&angular.isArray(n.project.countriesList))return(n.countriesList.find(function(n){return n.isoCode==t.isoCode})||{name:""}).name}var n=this;n.getPromoterLogoUrl=t;n.getCountryByIsoCode=i}angular.module("tyndp").component("information",{templateUrl:"/app/tyndp/sheets/view/keyInformation/sections/information/information.html",bindings:{project:"=",countriesList:"=",statusList:"=",type:"@"},controllerAs:"information",controller:n});n.$inject=["config"]}(),function(){function n(n){function o(){s()}function s(){mapboxgl.accessToken=t.config.mbtoken;t.theMap=new mapboxgl.Map({container:"mapbox",style:"mapbox://styles/entsoe/cjbeye4cuahn12sp6to4wujr4",interactive:!0,attributionControl:!1,center:[2.99,47.71],zoom:4,preserveDrawingBuffer:!0});t.theMap.on("load",function(){i();t.type==="full"?p():setTimeout(function(){$("<img/>",{"data-pdfmake":'{"fit":[300,400]}',src:t.theMap.getCanvas().toDataURL("image/png")}).appendTo(".mapboxgl-canvas-container")},2e3);e()});e()}function i(){t.theMap.addSource("projects",{type:"geojson",data:r()});t.theMap.addLayer({id:"project-polys",source:"projects",type:"fill",interactive:!0,filter:["all",["==","$type","Polygon"]],paint:{"fill-opacity":.5,"fill-color":t.config.mapbox.stylesheet}});t.theMap.addLayer({id:"project-lines",source:"projects",type:"line",interactive:!0,filter:["all",["==","$type","LineString"]],paint:{"line-opacity":.8,"line-width":4,"line-color":t.config.mapbox.stylesheet}});t.theMap.addLayer({id:"projects-points",source:"projects",type:"circle",interactive:!0,filter:["all",["==","$type","Point"]],paint:{"circle-color":t.config.mapbox.stylesheet}})}function r(){if(f()){var n=[];return t.type==="full"?{type:"FeatureCollection",features:u()}:(_.forEach(u(),function(t){n=n.concat(t.filter(function(n){return!!n.geometry}).map(function(n){return{type:"Feature",geometry:h(n),properties:c(n)}}))}),{type:"FeatureCollection",features:n})}return{type:"FeatureCollection",features:[]}}function h(n){var t={type:n.geometry.coordinateType,coordinates:[]};t.type=="Polygon"&&(t.type="MultiPolygon");switch(t.type){case"Point":t.coordinates=[n.geometry.coordinates[0].longitude,n.geometry.coordinates[0].latitude,];break;case"MultiPolygon":t.coordinates=[[n.geometry.coordinates.map(function(n){return[n.longitude,n.latitude]})]];break;default:t.coordinates=n.geometry.coordinates.map(function(n){return[n.latitude,n.longitude]})}return t}function c(n){return{status:l(n)}}function l(n){return angular.isArray(t.statusList)?(t.statusList.find(function(t){return t.id==n.statusId})||{name:""}).name:null}function a(){return f()?t.bbox||turf.bbox(r()):[-30.585937,27.293689,44.912109,69.869892,]}function v(){t.theMap&&(y(),i())}function u(){switch(t.type){case"transmission":return[t.project.investments];case"storage":return[[{geometry:t.project.geometry}]];case"full":return t.project}}function f(){switch(t.type){case"transmission":return angular.isArray(t.project.investments);case"storage":return!!t.project.geometry;case"full":return!0}}function e(){t.theMap&&t.theMap.fitBounds(a(),{padding:50,maxZoom:10})}function y(){t.theMap.getLayer("project-lines")&&t.theMap.removeLayer("project-lines");t.theMap.getLayer("projects-points")&&t.theMap.removeLayer("projects-points");t.theMap.getLayer("project-polys")&&t.theMap.removeLayer("project-polys");t.theMap.getSource("projects")&&t.theMap.removeSource("projects")}function p(){t.theMap.on("click",function(n){var r=t.theMap.queryRenderedFeatures(n.point,{layers:["project-polys","project-lines","projects-points"]}),i;r.length&&(i=null,i=r[0].properties,i)&&w(i,n.lngLat)});t.theMap.on("mousemove",function(n){var i=t.theMap.queryRenderedFeatures(n.point,{layers:["project-polys","project-lines","projects-points"]});t.theMap.getCanvas().style.cursor=i.length?"pointer":""})}function w(n,i){t.popover!=null&&t.popover.remove();var r=_.template('<a target="_blank" href="/projectsheets/<%- type %>/<%- id %>"><%- name %><\/a>'+'<p class="text-capitalize"><%- type %><\/p>'+'<p class="text-capitalize"><%- status %><\/p>')(n);t.popover=new mapboxgl.Popup({closeButton:!1}).setLngLat([i.lng,i.lat]).setHTML(r).addTo(t.theMap)}var t=this;t.theMap=null;t.config=n;t.$onInit=o;t.$onChanges=v}angular.module("tyndp").component("map",{templateUrl:"/app/tyndp/sheets/view/keyInformation/sections/map/map.html",bindings:{project:"<",statusList:"=",type:"@",bbox:"="},controllerAs:"map",controller:n});n.$inject=["config"]}(),function(){function n(n){function i(){var n=t.resolve.data;t.title=n.title;t.changeRequest=n.changeRequest||{};u();r();f()}function r(){n.getAllStorageProjects().then(function(n){t.storageProjects=n},function(n){console.log(n)})}function u(){n.getAllTransmissionProjects().then(function(n){t.transmissionProjects=n},function(n){console.log(n)})}function f(){n.getAllChangeRequest().then(function(n){t.requestList=n},function(n){console.log(n)})}function e(){"id"in t.changeRequest?n.editChangeRequest(t.changeRequest).then(function(n){console.log("ChangeRequest "+n.name+" updated with success!");t.modalInstance.close(n)},function(n){console.log(n)}):n.addChangeRequest(t.changeRequest).then(function(n){console.log("ChangeRequest "+n.name+" added with success!");t.modalInstance.close(n)},function(n){console.log(n)})}function o(){t.modalInstance.dismiss()}function s(n){t.changeRequest.typeOfSelectedItem="Storage Project";t.changeRequest.idOfSelectedProject=n.id;t.changeRequest.nameOfSelectedItem=n.name}function h(n){t.changeRequest.idOfSelectedProject=n.id;t.changeRequest.typeOfSelectedItem="Transmission Project";t.changeRequest.nameOfSelectedItem=n.name;t.investments=n.investments}function c(n){t.changeRequest.idOfInvestment=n.id;t.changeRequest.nameOfInvestment=n.name;t.changeRequest.typeOfSelectedItem="Investment"}function l(){t.IsVisible=t.changeRequest.isInvestment}function a(n){t.tab=n}function v(n){return t.tab===n}var t=this;t.spocCheckbox=!1;t.IsVisible=!1;t.tab=1;t.status=[{name:"Created",value:"Created"},{name:"Accepted",value:"Accepted"},{name:"In progress",value:"In progress"},{name:"Declined",value:"Declined"}];t.storageProjects=[];t.transmissionProjects=[];t.investments=[];t.$onInit=i;t.save=e;t.cancel=o;t.onStorageProjectChange=s;t.onTransmissionProjectChange=h;t.onInvestmentChange=c;t.ShowHide=l;t.selectTab=a;t.isSelected=v}angular.module("tyndp").component("changeRequestEdit",{templateUrl:["$element",function(n){return jQuery(n).parent().hasClass("addhack")?"/app/tyndp/submission/components/changeRequest/edit/changeRequestAdd.html":"/app/tyndp/submission/components/changeRequest/edit/changeRequestEdit.html"}],bindings:{resolve:"<",modalInstance:"<"},controllerAs:"changeRequestEdit",controller:n});n.$inject=["changeRequestService"]}(),function(){function n(n,t,i,r){function f(){i.getAllChangeRequest().then(function(n){u.requestList=n},function(n){console.log(n)})}function e(n){var i=document.getElementById("body");t.open({animation:!0,ariaLabelledBy:"modal-title",ariaDescribedBy:"modal-body",component:"changeRequestEdit",size:"lg",backdrop:!1,appendTo:i,resolve:{data:{add:!1,changeRequest:n,title:"Request detail"}}}).result.then(function(n){f();r.success("The project "+n.name+" has been updated successfuly","Edit a project")})}function o(){var n=document.getElementById("body");t.open({animation:!0,ariaLabelledBy:"modal-title",ariaDescribedBy:"modal-body",component:"changeRequestEdit",size:"lg",appendTo:n,windowClass:"addhack",resolve:{data:function(){return{add:!0,changeRequest:null,title:"Add new Request"}}}}).result.then(function(n){u.requestList.push(n);r.success("The request has been created successfully","Save project")})}function s(){u.filter={}}var u=this;u.config=n;u.statusList=["Created","Accepted","In progress","Declined"];u.requestList=[];u.filter={};u.editProject=e;u.addNewRequest=o;u.resetFilter=s;u.$onInit=f}angular.module("tyndp").component("changeRequestList",{templateUrl:"/app/tyndp/submission/components/changeRequest/list/changeRequestList.html",controller:n,controllerAs:"changeRequestList"});n.$inject=["config","$uibModal","changeRequestService","toastService"]}(),function(){function n(n,t,i){function e(){i[r.type==="storage"?"getStorageProjectById":"getTransmissionProjectById"](r.id).then(function(t){r.project=t;(r.project.isPmiProject||r.project.isPmiSubmitted)&&(r.pmi=!0);r.pmi?(r.requiredArt41a=r.project.artPmi_1!==!0&&r.project.artPmi_2!==!0&&r.project.artPmi_3!==!0&&r.project.artPmi_4!==!0&&r.project.artPmi_5!==!0,r.requiredArt42a=!1,r.requiredArt41c=!1):(r.requiredArt41a=!!(r.project.art41a_NorthSea==!1&&r.project.art41a_WesternEu==!1&&r.project.art41a_CentralEu==!1&&r.project.art41a_BalticEu==!1&&r.project.art41a_BalticOffshore==!1&&r.project.art41a_SWOffshore==!1&&r.project.art41a_SEOffshore==!1&&r.project.art41a_AtlanticOffshore==!1),r.requiredArt42a=!!(r.project.art42a_1==!1&&r.project.art42a_2==!1),r.requiredArt41c=!!(r.project.art41c_1==!1&&r.project.art41c_2==!1));r.loaded=!0;(n.isAdmin||!n.isPciReadonly)&&(r.disabledPlatform=!1)},function(n){console.log(n)})}function o(){var n;if(r.pmi)n=$("input[name=art41a]:checked"),r.requiredArt41a=n.length===0;else{var t=$("input[name=art41a]:checked"),i=$("input[name=art42a]:checked"),u=$("input[name=art41c]:checked");r.requiredArt41a=t.length===0;r.requiredArt42a=i.length===0;r.requiredArt41c=u.length===0}}function s(){f(!0)}function h(){f(!1)}function c(){return"/projectsheets/"+(r.type=="storage"?"storage/":"transmission/")+r.id}function u(){return"/Pci/"+(r.type=="storage"?"StoragePci":"TransmissionPci")}function f(n){r.hideBtn=!0;"id"in r.project&&(r.pmi||r.project.isPmiProject?r.project.isPmiSubmitted=n:r.project.isPciSubmitted=n,i[r.type==="storage"?"editStoragePciProject":"editTransmissionPciProject"](r.project).then(function(n){console.log("Project "+n.name+" updated with success!");t.location.href=u()}))}var r=this;r.config=n;r.disabledPlatform=!0;r.verifyCheckbox=o;r.save=s;r.withdrawProject=h;r.getProjectSheetUrl=c;r.getBackUrl=u;r.$onInit=e;r.loaded=!1}angular.module("tyndp").component("pciDetail",{templateUrl:"/app/tyndp/submission/components/pci/detail/pciDetail.html",bindings:{id:"@",type:"@",pmi:"@"},controllerAs:"pciDetail",controller:n});n.$inject=["config","$window","submissionService"]}(),function(){function n(n,t,i,r){function e(n){return"/Pci/"+(u.type=="transmission"?"TransmissionProjectDetail":"StorageProjectDetail")+"/"+n}function o(){f({id:null})}function f(n){var u=t.open({animation:!0,ariaLabelledBy:"modal-title",ariaDescribedBy:"modal-body",component:"submissionPmiEdit",size:"xl modal-dialog-scrollable",backdrop:"static",resolve:{data:{type:"transmission",id:n.Id}}});u.rendered.then(function(){i.getTop().value.modalDomEl.attr("id","submission-edit-modal")});u.result.then(function(){r.success("You have now created the project. To submit it to the PMI process, please go to the page Union list (transmission submission form) and follow instructions.","Save project");setInterval(function(){location.reload()},5e3)},function(){console.log("modal dismissed")})}var u=this;u.config=n;u.getDetailsLink=e;u.addNewProject=o;u.editProject=f}angular.module("tyndp").component("pciList",{templateUrl:"/app/tyndp/submission/components/pci/list/pciList.html",bindings:{projectList:"=",type:"@"},controllerAs:"pciList",controller:n});n.$inject=["config","$uibModal","$uibModalStack","toastService"]}(),function(){function n(n,t,i){function u(){t.getProjectChangelog(r.type,r.projectId).then(function(n){angular.isArray(n)&&(r.changelog=n.sort(function(n,t){return new Date(t.createdAt).getTime()-new Date(n.createdAt).getTime()}),r.selected=r.changelog[0])},function(){r.error=!0})}function f(){i.confirm("This will update the edit form with the previous data. Make sure you've saved current changes since they will be lost. Are you sure you want to continue?").then(function(){r.onChange&&r.onChange({data:{version:r.selected.id,isLatest:r.selected.id===r.changelog[0].id}})})}function e(){r.changelog&&(r.selected=r.changelog[0],r.onChange&&r.onChange({data:{version:r.selected.id,isLatest:!0}}))}function o(t){return n("date")(t.createdAt,"medium")+", "+t.createdBy}var r=this;r.selected=null;r.error=!1;r.changelog=[];r.$onInit=u;r.onApply=f;r.onReset=e;r.getVersionLabel=o}angular.module("tyndp").component("changelog",{templateUrl:"/app/tyndp/submission/components/submission/changelog/changelog.html",bindings:{type:"@",projectId:"@",onChange:"&?"},controllerAs:"changelog",controller:n});n.$inject=["$filter","submissionService","alertService"]}(),function(){function n(){function t(){var t=n.resolve.data;n.type=t.type;n.id=t.id;n.title=t.title}function i(){n.modalInstance.dismiss()}function r(){return"/api/submissions/"+n.type+"/"+n.id+"/pdf"}var n=this;n.cancel=i;n.getDownloadLink=r;n.$onInit=t}angular.module("tyndp").component("confirmation",{templateUrl:"/app/tyndp/submission/components/submission/confirmation/confirmation.html",bindings:{resolve:"<",modalInstance:"<"},controllerAs:"confirmation",controller:n})}(),function(){function n(n,t,i){function u(){var n=r.resolve.data;r.criteria=n.criteria;r.title=n.title}function f(){console.log("saved global & specific criterias in progress ...");"id"in r.criteria.global&&r.criteria.global.id!==0?n.editStorageCriteria(r.criteria).then(function(){console.log("Put global & specific criterias saved with success!"+r.criteria);i.success("The legal & specific criterias has been updated successfully. Ready for the submission !","Legal & specific criterias",{timeOut:1e5})},function(n){t.alert("You cannot update the legal criterias. Changes are not saved.");console.log(n)}):n.addStorageCriteria(r.criteria).then(function(){console.log("Put global & specific criterias saved with success!"+r.criteria);i.success("The legal & specific criterias has been updated successfully. Ready for the submission !","Legal & specific criterias",{timeOut:1e5})},function(n){t.alert("You cannot update the legal criterias. Changes are not saved.");console.log(n)});r.modalInstance.close(r.criteria)}function e(){r.modalInstance.dismiss()}function o(){r.criteria.global.companyExistanceFilename=""}function s(){r.criteria.global.financialStrengthFilename=""}function h(){r.criteria.global.technicalExpertiseFilename=""}function c(n){n.connectionAgreementFilename=""}function l(n){n.studiesAdvancedFilename=""}function a(n){n.studiesUnderConstructionFilename=""}var r=this;r.$onInit=u;r.azerty=!0;r.save=f;r.cancel=e;r.resetCompanyExistanceFile=o;r.resetFinancialStrength=s;r.resetTechnicalExpertise=h;r.resetConnectionAgreement=c;r.resetStudiesAdvanced=l;r.resetStudiesUnderConstruction=a}angular.module("tyndp").component("storageCriteria",{templateUrl:"/app/tyndp/submission/components/submission/criteria/storageCriteria.html",bindings:{resolve:"<",modalInstance:"<"},controllerAs:"storageCriteria",controller:n});n.$inject=["criteriaService","alertService","toastService"]}(),function(){function n(n,t,i){function f(){var n=r.resolve.data;r.criteria=n.criteria;r.title=n.title;u()}function u(){r.criteria.global.unbundling=r.criteria.global.unbundlingValidated?"Compliance":""}function e(){console.log("saved global & specific criterias in progress ...");r.modalInstance.close(r.criteria);"id"in r.criteria.global&&r.criteria.global.id!==0?n.editTransmissionCriteria(r.criteria).then(function(){console.log("Put global & specific criterias saved with success!");i.success("The legal & specific criterias has been updated successfully. Ready for the submission !","Legal & specific criterias",{timeOut:1e5})},function(n){t.alert("You cannot update the legal criterias. Changes are not saved");console.log(n)}):n.addTransmissionCriteria(r.criteria).then(function(){console.log("Put global & specific criterias saved with success!");i.success("The legal & specific criterias has been updated successfully. Ready for the submission !","Legal & specific criterias",{timeOut:1e5})},function(n){t.alert("You cannot update the legal criterias. Changes are not saved");console.log(n)})}function o(){r.modalInstance.dismiss()}function s(){r.criteria.global.companyExistanceFilename=""}function h(){r.criteria.global.financialStrengthFilename=""}function c(){r.criteria.global.technicalExpertiseFilename=""}function l(n){n.agreementFilename=""}function a(n){n.exemptionProcessFilename=""}function v(n){n.tsoAgreementFilename=""}function y(n){n.studiesUnderConstructionFilename=""}function p(n){r.criteria.global.promoterType=n}function w(n){return r.criteria.global.promoterType===n}var r=this;r.$onInit=f;r.azerty=!0;r.save=e;r.cancel=o;r.resetCompanyExistenceFilename=s;r.resetFinancialStrengthFilename=h;r.resetTechnicalExpertiseFilename=c;r.resetAgreementFilename=l;r.resetExemptionProcessFilename=a;r.resetTsoAgreementFilename=v;r.resetStudiesUnderConstructionFilename=y;r.selectPromoterType=p;r.isPromoterTypeActive=w;r.unbundlingChange=u}angular.module("tyndp").component("transmissionCriteria",{templateUrl:"/app/tyndp/submission/components/submission/criteria/transmissionCriteria.html",bindings:{resolve:"<",modalInstance:"<"},controllerAs:"transmissionCriteria",controller:n});n.$inject=["criteriaService","alertService","toastService"]}(),function(){function n(n,t,i,r,u,f,e,o){function b(){var n=s.resolve.data;s.id=n.id;s.type=n.type;s.id?c():l()}function c(n){s.loading=!0;u[n?"getProjectByVersion":"getProjectById"](s.type,s.id,n).then(function(t){s.project=n?t[s.type==="storage"?"storageProject":"transmissionProject"]:t;s.loading=!1;s.isFrozen=!n&&s.project.isFrozen;s.isSubmitted=!n&&s.project.isSubmitted;l()},function(){s.loading=!1;e.alert("Error loading project data!")})}function l(){a();k();d();g();nt();tt();it();rt();ut();ft();et();ot();st();s.type==="transmission"&&(ht(),ct());s.type==="transmission"&&i.$emit("calculateProjectStatus",s.project)}function a(){s.config.isAdmin==!0&&(s.benefitDisabled=!1,s.plateformDisabled=!1);s.isFrozen&&!s.config.isAdmin&&(s.benefitDisabled=!0,s.plateformDisabled=!0)}function k(){u.getAllProjectAdminCompliance(s.type).then(function(n){var t=[];s.projectAdminComplianceList=n;t=s.type==="transmission"?(s.project.projectAdminCompliance?s.project.projectAdminCompliance.split(","):[]).filter(function(n){return parseInt(n,10)==n}):s.project.projectAdminComplianceModel||[];s.projectAdminCompliance=t.length>0?parseInt(s.type=="transmission"?t[0]:t[0].id,10):0},function(n){console.log(n)})}function d(){r.getAllTsoes().then(function(n){var t=[];s.tsoList=n;angular.forEach(s.project.tsos,function(i){for(var u=-1,r=0;r<n.length;++r)if(n[r].id==i.id){u=r;break}t.push(s.tsoList[u])});s.project.tsos=t},function(n){console.log(n)})}function g(){r.getAllStatus().then(function(n){s.statusList=n},function(n){console.log(n)})}function nt(){r.getAllNeeds().then(function(n){s.needList=n;var i={add:!1,howProjectLinksToNeed:null},t=[];angular.forEach(s.needList,function(n){if(n.transmissionProjectId==s.project.id||n.transmissionProjectId==null&&n.storageProjectId==null){var r={need:n};$.extend(!0,r,i);t.push(r)}});s.projectNeedList=t},function(n){console.log(n)})}function tt(){r.getAllCountries().then(function(n){if(s.countriesList=n,s.type=="transmission"){var t=[];angular.forEach(s.project.countries,function(i){for(var u=-1,r=0;r<n.length;++r)if(n[r].isoCode==i.isoCode){u=r;break}t.push(s.countriesList[u])});s.project.countries=t}},function(n){console.log(n)})}function it(){r.getAllBenefits(s.type).then(function(n){s.benefitsList=n.map(function(n){return angular.extend(n,{data:(s.project.projectBenefits||[]).find(function(t){return t.benefitId===n.id})||null})})},function(n){console.log(n)})}function rt(){r.getAllCategoryType().then(function(n){s.categoryTypeList=n},function(n){console.log(n)})}function ut(){r.getAllProjectUpgradeType().then(function(n){s.projectUpgradeTypeList=n},function(n){console.log(n)})}function ft(){r.getAllStorageTechnologyType().then(function(n){s.storageTechnologyTypeList=n},function(n){console.log(n)})}function et(){r.getAllResidualEnvironmentImpact().then(function(n){s.residualEnvironmentImpactList=n},function(n){console.log(n)})}function ot(){r.getAllResidualSocialImpact().then(function(n){s.residualSocialImpactList=n},function(n){console.log(n)})}function st(){r.getAllPciCoridorType().then(function(n){s.PciCorridorTypeList=n},function(n){console.log(n)})}function ht(){r.getAllUnbundlingProjectPromoters().then(function(n){s.unbundlingProjectPromotersList=n},function(n){console.log(n)})}function ct(){r.getAllHvdcTypes().then(function(n){s.hvdcTypesList=n},function(n){console.log(n)})}function lt(t){var i=document.getElementById("body");n.open({animation:!0,ariaLabelledBy:"modal-title",ariaDescribedBy:"modal-body",component:"confirmation",size:"lg",backdrop:!0,appendTo:i,resolve:{data:{id:t,type:s.type}}}).result.then(function(){})}function v(){s.project.projectBenefits=s.benefitsList.filter(function(n){return!!n.data}).map(function(n){return n.data});s.type==="transmission"?s.project.projectAdminCompliance=s.projectAdminCompliance:s.project.projectAdminComplianceModel=s.projectAdminCompliance?[{id:s.projectAdminCompliance}]:"";angular.forEach($.grep(s.projectNeedList,function(n){return n.add===!0}),function(n){s.project.projectNeeds.push(n)})}function y(){i.$broadcast("/submission/list/refresh")}function p(){var n=!1;return s.type==="transmission"?(angular.forEach(s.project.investments||[],function(t){t.isMainInvestment&&(n=!0)}),(s.project.investments||[]).length&&!n?(e.alert('At least one investment should be marked as "main investment"'),!1):!0):!0}function at(n){s.changeLogActive=!n.isLatest;c(n.version)}function vt(){var n=s.resolve.data.id?"Edit project":"Add new project";return s.project.name&&(n+=" "+s.project.id+" ("+s.project.name+")"),n}function yt(){return"/api/submissions/"+s.type+"/"+s.project.id+"/pdf"}function pt(){s.isSubmitted?e.confirm("This will unsubmit the project. Are you sure you want to continue?",h()).then(function(){s.saving=!0;u.unsubmitProject(s.type,s.project.id).then(function(){o.success("The project has been unsubmitted.",s.getSubmitButtonLabel());s.saving=!1;s.isSubmitted=!1;y()},function(){s.saving=!1;e.alert("An error occured while unsubmitting the project, please try again.")})}):e.confirm("This will submit the project. Are you sure you want to continue?",h()).then(function(){p()&&(s.saving=!0,v(),u.submitProject(s.type,s.project).then(function(){s.saving=!1;lt(s.id);s.modalInstance.close(s.project)},function(n){s.invalidSubmissionDetails=n;s.invalidSubmission=!0;s.saving=!1;$("#submission-edit-modal").animate({scrollTop:0},"fast");o.error("Submission failed. Please check the mandatory fields!","Submit project",{progressBar:!0,timeOut:1e4})}))})}function wt(){e.confirm(s.isFrozen?"This will unfreeze the project and make it editable for project promoter. Are you sure you want to continue?":"This will freeze the project for project promoter. All further edits for project promoter will be disabled unless the project is unfreezed. Are you sure you want to continue?",s.getFreezeButtonLabel()).then(function(){u.freezeProject(s.type,!s.isFrozen,s.project.id).then(function(){o.success("Freeze state has been updated",w());s.isFrozen=!s.isFrozen;a();y();s.saving=!1},function(){s.saving=!1;e.alert("An error occured updating freeze state, please try again.")})})}function bt(){p()&&(v(),s.saving=!0,u.editProject(s.type,!!s.project.id,s.project).then(function(){s.modalInstance.close(s.project);s.saving=!1},function(){s.saving=!1;e.alert("You cannot update the project. Changes are not saved")}))}function kt(n){return s.loading||s.saving||s.changeLogActive||(n?!1:s.plateformDisabled)}function dt(){s.modalInstance.dismiss()}function w(){return s.isFrozen?"Unfreeze project":"Freeze project"}function h(){return s.isSubmitted?"Unsubmit project":"Submit project"}function gt(){}function ni(n){return t.submission[n].visible.indexOf(f.getUserRole())>-1}var s=this;s.id=null;s.isFrozen=null;s.isSubmitted=null;s.loading=!1;s.saving=!1;s.$onInit=b;s.config=t;s.newNeed={};s.project={investments:[]};s.plateformDisabled=s.config.isReadonly;s.benefitDisabled=s.config.isReadonly;s.changeLogActive=!1;s.onChangeLog=at;s.getTitle=vt;s.getPFDLink=yt;s.onSave=bt;s.onCancel=dt;s.onSubmit=pt;s.onFreeze=wt;s.getDisabledFormState=kt;s.getFreezeButtonLabel=w;s.getSubmitButtonLabel=h;s.onValidate=gt;s.getTabVisibility=ni}angular.module("tyndp").component("submissionEdit",{templateUrl:"/app/tyndp/submission/components/submission/edit/submissionEdit.html",bindings:{resolve:"<",modalInstance:"<"},controllerAs:"submissionEdit",controller:n});n.$inject=["$uibModal","config","$rootScope","globalService","submissionService","userService","alertService","toastService"]}(),function(){function n(n,t,i,r,u,f,e){function h(){var n=o.resolve.data;o.id=n.id;o.type=n.type;o.id?c():s()}function c(n){o.loading=!0;u[n?"getProjectByVersion":"getProjectById"](o.type,o.id,n).then(function(t){o.project=n?t[o.type==="storage"?"storageProject":"transmissionProject"]:t;o.loading=!1;o.isFrozen=!n&&o.project.isFrozen;o.isSubmitted=!n&&o.project.isSubmitted;s()},function(){o.loading=!1;e.alert("Error loading project data!")})}function s(){l();a();v();y();p();w();b();k();d();g();nt();o.type==="transmission"&&(tt(),it());o.type==="transmission"&&i.$emit("calculateProjectStatus",o.project)}function l(){o.config.isAdmin==!0&&(o.benefitDisabled=!1,o.plateformDisabled=!1);o.isFrozen&&!o.config.isAdmin&&(o.benefitDisabled=!0,o.plateformDisabled=!0)}function a(){u.getAllProjectAdminCompliance(o.type).then(function(n){var t=[];o.projectAdminComplianceList=n;t=o.type==="transmission"?(o.project.projectAdminCompliance?o.project.projectAdminCompliance.split(","):[]).filter(function(n){return parseInt(n,10)==n}):o.project.projectAdminComplianceModel||[];o.projectAdminCompliance=t.length>0?parseInt(o.type=="transmission"?t[0]:t[0].id,10):0},function(n){console.log(n)})}function v(){r.getAllTsoes().then(function(n){var t=[];o.tsoList=n;angular.forEach(o.project.tsos,function(i){for(var u=-1,r=0;r<n.length;++r)if(n[r].id==i.id){u=r;break}t.push(o.tsoList[u])});o.project.tsos=t},function(n){console.log(n)})}function y(){r.getAllStatus().then(function(n){o.statusList=n},function(n){console.log(n)})}function p(){r.getAllCountries().then(function(n){if(o.countriesList=n,o.type=="transmission"){var t=[];angular.forEach(o.project.countries,function(i){for(var u=-1,r=0;r<n.length;++r)if(n[r].isoCode==i.isoCode){u=r;break}t.push(o.countriesList[u])});o.project.countries=t}},function(n){console.log(n)})}function w(){r.getAllCategoryType().then(function(n){o.categoryTypeList=n},function(n){console.log(n)})}function b(){r.getAllProjectUpgradeType().then(function(n){o.projectUpgradeTypeList=n},function(n){console.log(n)})}function k(){r.getAllStorageTechnologyType().then(function(n){o.storageTechnologyTypeList=n},function(n){console.log(n)})}function d(){r.getAllResidualEnvironmentImpact().then(function(n){o.residualEnvironmentImpactList=n},function(n){console.log(n)})}function g(){r.getAllResidualSocialImpact().then(function(n){o.residualSocialImpactList=n},function(n){console.log(n)})}function nt(){r.getAllPciCoridorType().then(function(n){o.PciCorridorTypeList=n},function(n){console.log(n)})}function tt(){r.getAllUnbundlingProjectPromoters().then(function(n){o.unbundlingProjectPromotersList=n},function(n){console.log(n)})}function it(){r.getAllHvdcTypes().then(function(n){o.hvdcTypesList=n},function(n){console.log(n)})}function rt(){o.type==="transmission"?o.project.projectAdminCompliance=o.projectAdminCompliance:o.project.projectAdminComplianceModel=o.projectAdminCompliance?[{id:o.projectAdminCompliance}]:""}function ut(){var n=!1;return o.type==="transmission"?(angular.forEach(o.project.investments||[],function(t){t.isMainInvestment&&(n=!0)}),(o.project.investments||[]).length&&!n?(e.alert('At least one investment should be marked as "main investment"'),!1):!0):!0}function ft(){var n=o.resolve.data.id?"Edit project":"Add new project";return o.project.name&&(n+=" "+o.project.id+" ("+o.project.name+")"),n}function et(){return"/api/submissions/"+o.type+"/"+o.project.id+"/pdf"}function ot(){ut()&&(rt(),o.saving=!0,o.project.isSubmitted=!0,o.project.isPmiProject=!0,u.editProject(o.type,!!o.project.id,o.project).then(function(){o.modalInstance.close(o.project);o.saving=!1},function(){o.saving=!1;e.alert("You cannot create the project. Changes are not saved")}))}function st(n){return o.loading||o.saving||o.changeLogActive||(n?!1:o.plateformDisabled)}function ht(){o.modalInstance.dismiss()}function ct(){return o.id?"Save the project":"Create the project"}function lt(){}function at(n){return t.submission[n].visible.indexOf(f.getUserRole())>-1}var o=this;o.id=null;o.isFrozen=null;o.isSubmitted=null;o.loading=!1;o.saving=!1;o.$onInit=h;o.config=t;o.newNeed={};o.project={investments:[]};o.plateformDisabled=o.config.isReadonly;o.benefitDisabled=o.config.isReadonly;o.changeLogActive=!1;o.getTitle=ft;o.getPFDLink=et;o.onSave=ot;o.onCancel=ht;o.getDisabledFormState=st;o.getCreateButtonLabel=ct;o.onValidate=lt;o.getTabVisibility=at}angular.module("tyndp").component("submissionPmiEdit",{templateUrl:"/app/tyndp/submission/components/submission/edit/submissionPmiEdit.html",bindings:{resolve:"<",modalInstance:"<"},controllerAs:"submissionEdit",controller:n});n.$inject=["$uibModal","config","$rootScope","globalService","submissionService","userService","alertService","toastService"]}(),function(){function n(n,t){function r(){i.type==="transmission"&&(i.mvaCount=i.project.investments.filter(function(n){return[1,3,4,8,10].indexOf(n.typeOfElementAcer)>=0}).length,i.mvarCount=i.project.investments.filter(function(n){return n.typeOfElementAcer==11}).length)}function u(){return t.getDisabledFormState("additional",i.changeLogActive,i.plateformDisabled,i.project)}var i=this;i.config=n;i.getDisabledFormState=u;i.mvaCount=0;i.mvarCount=0;i.$onInit=r}angular.module("tyndp").component("additionalSection",{templateUrl:"/app/tyndp/submission/components/submission/edit/sections/additional/additionalSection.html",bindings:{type:"@",project:"=",plateformDisabled:"=",changeLogActive:"=",projectCategoryTypeList:"=",pciCorridorTypeList:"="},controller:n,controllerAs:"additionalSection"});n.$inject=["config","submissionService"]}(),function(){function n(n,t){function u(){return r("estimatedCapexCostMEur")}function f(){return r("estimatedOpexCostMEur")}function e(){return r("sustainingCapexCostMEur")}function o(){_.isArray(i.project.transferCapacityIncreasePromoter)||(i.project.transferCapacityIncreasePromoter=[]);i.project.transferCapacityIncreasePromoter.push({})}function s(n){t.confirm("Are you sure you want to remove this item?").then(function(){var t=i.project.transferCapacityIncreasePromoter.indexOf(n);t!==-1&&i.project.transferCapacityIncreasePromoter.splice(t,1)})}function h(n){i.project[n]=!1}function r(n){return i.project.investments.map(function(t){return parseFloat(t[n])||0}).reduce(function(n,t){return n+t},0)||0}function c(n){var t=parseInt(i.project.statusId,10);return t?!_.includes(projectAdminComplianceAvailability={1:[1,2,3,5,6],2:[1,2,4],3:[1,2,4],4:[1,2,4],5:[1,2,4],6:[1,2,4]}[t],parseInt(n,10)):!1}var i=this;i.config=n;i.getTotalCapex=u;i.getTotalOpex=f;i.getTotalSustainingCapex=e;i.addTransferItem=o;i.removeTransferItem=s;i.resetCrossBorder=h;i.verifyProjectAdminCompliance=c;i.searchSelectAllSettings={enableSearch:!0,showSelectAll:!0,keyboardControls:!0,displayProp:"name",scrollable:!0}}angular.module("tyndp").component("administrativePmiSection",{templateUrl:"/app/tyndp/submission/components/submission/edit/sections/administrative/pmi/administrativePmiSection.html",bindings:{type:"@",project:"=",plateformDisabled:"=",changeLogActive:"=",countriesList:"=",projectAdminCompliance:"=",projectAdminComplianceList:"=",projectUpgradeTypeList:"=",statusList:"=",tsoList:"=",unbundlingProjectPromotersList:"="},controller:n,controllerAs:"administrativePmiSection"});n.$inject=["config","alertService","submissionService"]}(),function(){function n(n,t){function r(n){angular.isFunction(i.onMap)&&i.onMap({data:n})}function u(){return t.getDisabledFormState("administrative",i.changeLogActive,i.plateformDisabled,i.project)}function f(n){var t=parseInt(i.project.statusId,10);return t?!_.includes(projectAdminComplianceAvailability={1:[1,2,3,6],2:[1,2,5],3:[1,2,5],4:[1,2,5],5:[1,2,5],6:[1,2,5]}[t],parseInt(n,10)):!1}var i=this;i.config=n;i.onMapSave=r;i.getDisabledFormState=u;i.verifyProjectAdminCompliance=f;i.searchSelectAllSettingsTso={enableSearch:!0,showSelectAll:!0,keyboardControls:!0,displayProp:"fullName",scrollable:!0}}angular.module("tyndp").component("administrativeStorageSection",{templateUrl:"/app/tyndp/submission/components/submission/edit/sections/administrative/storage/administrativeStorageSection.html",bindings:{type:"@",project:"=",plateformDisabled:"=",changeLogActive:"=",countriesList:"=",projectAdminCompliance:"=",projectAdminComplianceList:"=",projectUpgradeTypeList:"=",statusList:"=",tsoList:"=",storageTechnologyTypeList:"=",onMap:"&"},controller:n,controllerAs:"administrativeStorageSection"});n.$inject=["config","submissionService"]}(),function(){function n(n,t,i){function f(){return u("estimatedCapexCostMEur")}function e(){return u("estimatedOpexCostMEur")}function o(){return u("sustainingCapexCostMEur")}function s(){_.isArray(r.project.transferCapacityIncreasePromoter)||(r.project.transferCapacityIncreasePromoter=[]);r.project.transferCapacityIncreasePromoter.push({})}function h(n){t.confirm("Are you sure you want to remove this item?").then(function(){var t=r.project.transferCapacityIncreasePromoter.indexOf(n);t!==-1&&r.project.transferCapacityIncreasePromoter.splice(t,1)})}function c(){return i.getDisabledFormState("administrative",r.changeLogActive,r.plateformDisabled,r.project)}function l(n){r.project[n]=!1}function u(n){return r.project.investments.map(function(t){return parseFloat(t[n])||0}).reduce(function(n,t){return n+t},0)||0}function a(n){var t=parseInt(r.project.statusId,10);return t?!_.includes(projectAdminComplianceAvailability={1:[1,2,3,5,6],2:[1,2,4],3:[1,2,4],4:[1,2,4],5:[1,2,4],6:[1,2,4]}[t],parseInt(n,10)):!1}var r=this;r.config=n;r.getTotalCapex=f;r.getTotalOpex=e;r.getTotalSustainingCapex=o;r.getDisabledFormState=c;r.addTransferItem=s;r.removeTransferItem=h;r.resetCrossBorder=l;r.verifyProjectAdminCompliance=a;r.searchSelectAllSettings={enableSearch:!0,showSelectAll:!0,keyboardControls:!0,displayProp:"name",scrollable:!0}}angular.module("tyndp").component("administrativeTransmissionSection",{templateUrl:"/app/tyndp/submission/components/submission/edit/sections/administrative/transmission/administrativeTransmissionSection.html",bindings:{type:"@",project:"=",plateformDisabled:"=",changeLogActive:"=",countriesList:"=",projectAdminCompliance:"=",projectAdminComplianceList:"=",projectUpgradeTypeList:"=",statusList:"=",tsoList:"=",unbundlingProjectPromotersList:"="},controller:n,controllerAs:"administrativeTransmissionSection"});n.$inject=["config","alertService","submissionService"]}(),function(){function n(n,t){function r(){return t.getDisabledFormState("backlog",i.changeLogActive,i.plateformDisabled,i.project)}var i=this;i.config=n;i.getDisabledFormState=r}angular.module("tyndp").component("backlogSection",{templateUrl:"/app/tyndp/submission/components/submission/edit/sections/backlog/backlogSection.html",bindings:{type:"@",project:"=",plateformDisabled:"=",changeLogActive:"="},controller:n,controllerAs:"backlogSection"});n.$inject=["config","submissionService"]}(),function(){function n(n,t,i,r,u){function o(){t.getAllIndicatorType().then(function(n){f.IndicatorType=n},function(n){console.log(n)});t.getAllQualitativeAssessmentType().then(function(n){f.QualitativeAssessmentType=n},function(n){console.log(n)});t.getAllComputeScenarioType().then(function(n){f.ComputeScenarioType=n},function(n){console.log(n)});t.getAllPliValidationStatus().then(function(n){f.PliValidationStatusType=n},function(n){console.log(n)})}function s(n){switch(n.alias){case"B7":case"B10":return"Meuro/year";case"B8-FF":return"MWh/year";case"B8-BS-AS":return"Meuro/year";case"B8-BS":return n.data.unit;default:return"..."}}function h(n){return n.data.unit}function c(n,t){t.stopPropagation();t.preventDefault();n.data?i.confirm("Are you sure you want to remove this benefit? After saving the project, all benefit-related data will be lost!").then(function(){n.data=null}):(r.info("Please expand added benefit and fill in the form."),n.data={benefitId:n.id})}function l(n){return n.data?"Remove benefit":"Add this benefit"}function a(n){n.data.isIndicatorSubmitted=!n.data.isIndicatorSubmitted;n.data.isIndicatorSubmitted&&r.info("Indicator has been marked for submission, please <b>Save<\/b> the form when you are finished with other edits.")}function v(n){return n.data.isIndicatorSubmitted?f.config.isAdmin?"Unsubmit":"Submitted":"Submit this indicator"}function y(n,t,i){return["0","","+","++"][t?e(n,"score1",t)&(e(n,"score2",i)||3):1]}function e(n,t,i){return(_.find(f.config.types.flexibility[n][t],{value:i})||{}).weight}function p(){return u.getDisabledFormState("benefits",f.changeLogActive,f.plateformDisabled,f.project)}var f=this;f.config=n;f.getAssessedLabel=s;f.getQuantifiedLabel=h;f.toggleBenefit=c;f.getToggleLabel=l;f.onBenefitSubmit=a;f.getSubmitLabel=v;f.getSystemFlexibilityScore=y;f.getDisabledFormState=p;f.$onInit=o}angular.module("tyndp").component("benefitsSection",{templateUrl:"/app/tyndp/submission/components/submission/edit/sections/benefits/benefitsSection.html",bindings:{type:"@",project:"=",projectId:"@",plateformDisabled:"=",changeLogActive:"=",benefitsList:"="},controller:n,controllerAs:"benefitsSection"});n.$inject=["config","globalService","alertService","toastService","submissionService"]}(),function(){function n(n,t,i,r){function f(){t.getAllElementType().then(function(n){u.ElementType=n},function(n){console.log(n)});t.getAllPerimeterOfBenefitsComputationType().then(function(n){u.PerimeterOfBenefitsComputationType=n},function(n){console.log(n)});l()}function e(){u.selectedElementType=u.ElementType.find(function(n){return n.id===u.selectedInvestment.typeOfElement})}function o(){}function s(){u.selectedInvestment.typeOfElement=(u.selectedElementType||{id:null}).id}function h(){_.isArray(u.project.transferCapacityIncrease)||(u.project.transferCapacityIncrease=[]);u.project.transferCapacityIncrease.push({})}function c(n){i.confirm("Are you sure you want to remove this item?").then(function(){var t=u.project.transferCapacityIncrease.indexOf(n);t!==-1&&u.project.transferCapacityIncrease.splice(t,1)})}function l(){angular.isArray(u.project.cbaIndicators)&&u.project.cbaIndicators.length>0&&(u.cbaMatrix=_.values(_.groupBy(_.orderBy(u.project.cbaIndicators,["indicator.name","scenarioId"],"asc","asc"),"scenarioId")),u.cbaMatrixHeader=u.cbaMatrix[0])}function a(){return r.getDisabledFormState("cba",u.changeLogActive,u.plateformDisabled,u.project)}var u=this;u.config=n;u.cbaMatrix=[];u.cbaMatrixHeader=[];u.optionsValidate={size:{max:"2MB"},width:{min:1,max:1e4},height:{min:1,max:1e4}};u.$onInit=f;u.onInvestmentChange=e;u.onInvestmentChangeCosts=o;u.onElementTypeChange=s;u.addTransferItem=h;u.removeTransferItem=c;u.getDisabledFormState=a}angular.module("tyndp").component("cbaSection",{templateUrl:"/app/tyndp/submission/components/submission/edit/sections/cba/cbaSection.html",bindings:{type:"@",projectId:"@",plateformDisabled:"=",project:"=",changeLogActive:"=",projectInvestments:"=",projectImpactModel:"=",sensitivityEnvironmentList:"=",sensitivitySocialList:"="},controller:n,controllerAs:"cbaSection"});n.$inject=["config","globalService","alertService","submissionService"]}(),function(){function n(n,t){function r(){i.savedInvestments=i.projectInvestments.filter(function(n){return Number.isFinite(n.id)})}function u(n){return n=n||i.selectedInvestment,n.status?n.status.name:"No status"}function f(){var n=null;i.projectImpactModel=i.projectImpactModel||[];n=i.projectImpactModel.find(function(n){return n.investmentId==i.selectedInvestment.id});n||(n={investmentId:i.selectedInvestment.id,impact:[]},i.projectImpactModel.push(n));i.selectedImpactModel=n}function e(){return i.selectedInvestment.status&&[1,2].indexOf(i.selectedInvestment.status.id)>=0}function o(n){return n.typeOfSensitivity==7}function s(){_.isArray(i.selectedImpactModel.impact)||(i.selectedImpactModel.impact=[]);i.selectedImpactModel.impact.push({})}function h(n){t.confirm("Are you sure you want to remove this item?").then(function(){var t=i.selectedImpactModel.impact.indexOf(n);t!==-1&&i.selectedImpactModel.impact.splice(t,1)})}var i=this;i.config=n;i.$onInit=r;i.getStatus=u;i.onInvestmentChange=f;i.isDisclaimerVisible=e;i.isSensitivityTypeOtherVisible=o;i.addTransferItem=s;i.removeTransferItem=h;i.selectedInvestment=null;i.selectedImpactModel=null}angular.module("tyndp").component("cbaImpact",{templateUrl:"/app/tyndp/submission/components/submission/edit/sections/cba/impact/cbaImpact.html",bindings:{type:"@",title:"@",disclaimer:"@",projectInvestments:"=",projectImpactModel:"=",sensitivityList:"=",additionalInformation:"="},controller:n,controllerAs:"cbaImpact"});n.$inject=["config","alertService"]}(),function(){function n(n,t){function r(){return t.getDisabledFormState("contact",i.changeLogActive,i.plateformDisabled,i.project)}var i=this;i.config=n;i.getDisabledFormState=r}angular.module("tyndp").component("contactSection",{templateUrl:"/app/tyndp/submission/components/submission/edit/sections/contact/contactSection.html",bindings:{type:"@",project:"=",plateformDisabled:"=",changeLogActive:"="},controller:n,controllerAs:"contactSection"});n.$inject=["config","submissionService"]}(),function(){function n(n){var t=this;t.config=n}angular.module("tyndp").component("contactPmiSection",{templateUrl:"/app/tyndp/submission/components/submission/edit/sections/contact/pmi/contactPmiSection.html",bindings:{type:"@",project:"=",plateformDisabled:"=",changeLogActive:"="},controller:n,controllerAs:"contactPmiSection"});n.$inject=["config","submissionService"]}(),function(){function n(n){function i(){return t.plateformDisabled||t.changeLogActive}var t=this;t.config=n;t.getDisabledFormState=i}angular.module("tyndp").component("interconnectionSection",{templateUrl:"/app/tyndp/submission/components/submission/edit/sections/interconnection/interconnectionSection.html",bindings:{type:"@",project:"=",plateformDisabled:"=",changeLogActive:"="},controller:n,controllerAs:"interconnectionSection"});n.$inject=["config"]}(),function(){function n(n,t,i,r){function f(){i.getAllElementTypeAcer().then(function(n){u.ElementType=n},function(n){console.log(n)})}function e(n,i){i.stopPropagation();i.preventDefault();t.confirm("Are you sure you want to delete this investment ? This operation cannot be undone").then(function(){var t=u.projectInvestments.indexOf(n);t!==-1&&u.projectInvestments.splice(t,1)})}function o(){u.projectInvestments.push({name:"New investment"})}function s(){var n=5;u.projectInvestments.forEach(function(t){t.statusId<n&&(n=t.statusId)});u.project.statusId=n}function h(){return r.getDisabledFormState("investments",u.changeLogActive,u.plateformDisabled,u.project)}function c(){return u.project.commissioningYear<=2034}var u=this;u.removeInvestment=e;u.addInvestment=o;u.setProjectStatus=s;u.getDisabledFormState=h;u.getMandatoryFieldsCondition=c;u.config=n;u.$onInit=f}angular.module("tyndp").component("investmentsSection",{templateUrl:"/app/tyndp/submission/components/submission/edit/sections/investments/investmentsSection.html",bindings:{type:"@",projectId:"@",plateformDisabled:"=",changeLogActive:"=",projectInvestments:"=",tsoList:"=",typeStatusList:"=",typeHvdcTypesList:"=",project:"="},controller:n,controllerAs:"investmentsSection"});n.$inject=["config","alertService","globalService","submissionService"]}(),function(){function n(n,t,i){function u(){i.getAllElementTypeAcer().then(function(n){r.ElementType=n},function(n){console.log(n)})}function f(n,i){i.stopPropagation();i.preventDefault();t.confirm("Are you sure you want to delete this investment ? This operation cannot be undone").then(function(){var t=r.projectInvestments.indexOf(n);t!==-1&&r.projectInvestments.splice(t,1)})}function e(){r.projectInvestments.push({name:"New investment"})}function o(){var n=5;r.projectInvestments.forEach(function(t){t.statusId<n&&(n=t.statusId)});r.project.statusId=n}function s(){return r.project.commissioningYear<=2034}var r=this;r.removeInvestment=f;r.addInvestment=e;r.setProjectStatus=o;r.getMandatoryFieldsCondition=s;r.config=n;r.$onInit=u}angular.module("tyndp").component("investmentsPmiSection",{templateUrl:"/app/tyndp/submission/components/submission/edit/sections/investments/pmi/investmentsPmiSection.html",bindings:{type:"@",projectId:"@",plateformDisabled:"=",changeLogActive:"=",projectInvestments:"=",tsoList:"=",typeStatusList:"=",typeHvdcTypesList:"=",project:"="},controller:n,controllerAs:"investmentsPmiSection"});n.$inject=["config","alertService","globalService","submissionService"]}(),function(){function n(n,t,i){function f(n){n.add=!n.add;u()}function e(n){return n.add?"Unselect this need":"Select this need"}function u(){var n=$.grep(r.projectNeedList||[],function(n){return n.add===!0}),t=$.grep(r.project.projectNeeds||[],function(n){return n.add===!0}),i=t.length,u=n.length;r.addPermission=i+u<4}function o(){_.isArray(r.project.systemNeedsStudy2030)||(r.project.systemNeedsStudy2030=[]);r.project.systemNeedsStudy2030.push({})}function s(n){i.confirm("Are you sure you want to remove this item?").then(function(){var t=r.project.systemNeedsStudy2030.indexOf(n);t!==-1&&r.project.systemNeedsStudy2030.splice(t,1)})}function h(){_.isArray(r.project.systemNeedsStudy2040)||(r.project.systemNeedsStudy2040=[]);r.project.systemNeedsStudy2040.push({})}function c(n){i.confirm("Are you sure you want to remove this item?").then(function(){var t=r.project.systemNeedsStudy2040.indexOf(n);t!==-1&&r.project.systemNeedsStudy2040.splice(t,1)})}function l(){return t.getDisabledFormState("needs",r.changeLogActive,r.plateformDisabled,r.project)}var r=this;r.newNeed={};r.config=n;r.checkNeedsCount=u;r.toggleNeed=f;r.getToggleLabel=e;r.$onChanges=u;r.addSystemNeedsStudy2030=o;r.removeSystemNeedsStudy2030=s;r.addSystemNeedsStudy2040=h;r.removeSystemNeedsStudy2040=c;r.getDisabledFormState=l}angular.module("tyndp").component("needsSection",{templateUrl:"/app/tyndp/submission/components/submission/edit/sections/needs/needsSection.html",bindings:{type:"@",project:"=",projectId:"@",plateformDisabled:"=",changeLogActive:"=",projectNeedList:"="},controller:n,controllerAs:"needsSection"});n.$inject=["config","submissionService","alertService"]}(),function(){function n(n,t,i,r,u,f,e,o,s){function v(){t.$on("/submission/list/refresh",function(){c()});h.type==="transmission"&&y();c()}function c(){f.getAllProjects(h.type).then(function(n){h.projectList=n;h.filteredList=n;h.loading=!1},function(n){h.loading=!1;console.log(n)})}function y(){i.$on("calculateProjectStatus",function(n,t){var i;$(t.investments).each(function(n,t){if(t.status===null)return i=-1,!1;var r=parseInt(t.status);i=i===undefined||r<i?r:i});i!==-1&&(t.statusname=l(i))});i.$on("InitInvestment",function(n,t){t.statusname=l(parseInt(t.status))});i.status=[{name:"Under consideration",value:"0"},{name:"Planned but not yet permitting",value:"10"},{name:"In permitting",value:"20"},{name:"Under construction",value:"30"},]}function l(n){var t="";return i.status.forEach(function(i){if(n===parseInt(i.value)){t=i.name;return}}),t}function a(n){var t=r.open({animation:!0,ariaLabelledBy:"modal-title",ariaDescribedBy:"modal-body",component:"submissionEdit",size:"xl modal-dialog-scrollable",backdrop:"static",resolve:{data:{type:h.type,id:n.id}}});t.rendered.then(function(){u.getTop().value.modalDomEl.attr("id","submission-edit-modal")});t.result.then(function(n){c();e.success("The project "+n.name+" has been edited successfully","Save project")},function(){console.log("modal dismissed")})}function p(){a({id:null})}function w(){return h.type==="transmission"?"Transmission project submission":"Storage project submission"}function b(n,t){return"/project/"+(n==="transmission"?"transmissionpreview":"storagepreview")+"/"+t}function k(n){h.filteredList=n.filteredList;o(s[0].body,{duration:200,easing:"easeInQuad"})}function d(){h.doReset^=!0}function g(n){h.editProject(n)}function nt(n){return n.isNoLongerRelevant?"item_no_relevant":n.isSubmitted?"item_submitted":n.isRejected?"item_rejected":void 0}var h=this;h.config=n;h.loading=!0;h.displaySubmittedProject=!0;h.projectList=[];h.showFilters=!1;h.dirtyFilters=!1;h.doReset=!1;h.filter={};h.projectList=[];h.filteredList=[];h.onFilter=k;h.onFiltersReset=d;h.onQuickJump=g;h.editProject=a;h.addNewProject=p;h.globalCriteria=[];h.IsTransmission=h.type==="transmission";h.getTitle=w;h.getPublicUrl=b;h.getItemClass=nt;h.$onInit=v;h.filters=[{title:"Domain",type:"checkbox",property:"tsos",query:"tsos.domain",filter:"array"}]}angular.module("tyndp").component("submissionList",{templateUrl:"/app/tyndp/submission/components/submission/list/submissionList.html",bindings:{type:"@"},controllerAs:"submissionList",controller:n});n.$inject=["config","$scope","$rootScope","$uibModal","$uibModalStack","submissionService","toastService","smoothScroll","$document"]}(),function(){function n(n){var t=this;t.config=n}angular.module("tyndp").component("homeContainer",{templateUrl:"/app/tyndp/submission/containers/home/homeContainer.html",controller:n,controllerAs:"homeContainer"});n.$inject=["config"]}()