[Bugfix] Cannot read properties of null (.split())

This commit is contained in:
Matej Glasnák committed 2024-09-18 17:59:56 +02:00
1 parent 2ffa3e24c8
commit e1e46a5c0b
87 files changed
+186 -78

No files matched your search

+2
View File
@@ -0,0 +1,2 @@
"use strict";(self["webpackChunkjandl"]=self["webpackChunkjandl"]||[]).push([[8138],{63124:function(e,t,s){s.r(t),s.d(t,{default:function(){return S}});var a=s(73396);const i={ref:"page"};function n(e,t,s,n,r,l){const o=(0,a.up)("A-team-filter"),d=(0,a.up)("Z-timeline");return(0,a.wg)(),(0,a.iD)("div",i,[e.$store.getters["tm/isInitialized"]?((0,a.wg)(),(0,a.j4)(o,{key:0,"split-days":e.calendarData?e.splitDays:null,onFilterChanged:l.onFilterChanged},null,8,["split-days","onFilterChanged"])):(0,a.kq)("",!0),e.calendarData&&!r.hideCal?((0,a.wg)(),(0,a.j4)(d,{key:1,"cal-data":e.calendarData,"cal-config":r.calendarConfig,splits:e.splitDays},null,8,["cal-data","cal-config","splits"])):(0,a.kq)("",!0)],512)}var r=s(60988),l=s(67312),o=s(16824),d=s(45869);const h={class:"d-flex date-wrapper"},u=["src"],c=["src"];function m(e,t,i,n,m,f){return(0,a.wg)(),(0,a.j4)(o.o,{class:"px-10 py-8 subheader"},{default:(0,a.w5)((()=>[(0,a.Wm)(r.f,{"custom-filter":e.customFilter,"match-any":!0,modelValue:m.selectedTeam,"onUpdate:modelValue":t[0]||(t[0]=e=>m.selectedTeam=e),class:"subheader-input",items:e.teams,"item-title":"name","item-value":"id",label:"Tím",variant:"outlined"},null,8,["custom-filter","modelValue","items"]),(0,a._)("div",h,[(0,a.Wm)(l.T,{class:"subheader-icon-button prev",variant:"outlined",onClick:t[1]||(t[1]=e=>f.prevDay())},{default:(0,a.w5)((()=>[(0,a._)("img",{src:s(38351),alt:""},null,8,u)])),_:1}),(0,a.Wm)(d.hw,{class:"subheader-input disabled",label:"Dátum",modelValue:m.selectedDate,"onUpdate:modelValue":t[2]||(t[2]=e=>m.selectedDate=e),variant:"outlined","append-inner-icon":"mdi-calendar-blank-outline"},null,8,["modelValue"]),(0,a.Wm)(l.T,{class:"subheader-icon-button next",variant:"outlined",onClick:t[3]||(t[3]=e=>f.nextDay())},{default:(0,a.w5)((()=>[(0,a._)("img",{src:s(35902),alt:""},null,8,c)])),_:1})]),(0,a.Wm)(d.hw,{class:"subheader-input disabled",label:"Nenaplánované hodiny",modelValue:m.time,"onUpdate:modelValue":t[4]||(t[4]=e=>m.time=e),variant:"outlined",disabled:!0},null,8,["modelValue"])])),_:1})}var f=s(11271),p=s(85174),_=s(83299),k=s(20065),g={mixins:[_.Z],emits:["filter-changed"],props:{splitDays:{type:[Array,null],default:()=>null}},data(){return{date:new Date,selectedTeam:null,selectedDate:null,time:null,filter:{start:null,end:null,team:null}}},computed:{...(0,k.Se)("auth",["user"]),...(0,k.Se)("tm",["teams"])},mounted(){const e=localStorage.getItem("selectedTeam");this.selectedTeam=e?JSON.parse(e):this.teams[0]?.id,this.$nextTick((()=>this._updateFilters()))},methods:{prevDay(){this.date=(0,f.Z)(this.date,1),this._updateFilters()},nextDay(){this.date=(0,p.Z)(this.date,1),this._updateFilters()},_updateFilters(){this.filter.start=this.date,this.filter.end=this.date,this.selectedDate=String(this.filter.start?.toLocaleDateString("sk-SK")),this._emitFilterChanged()},_emitFilterChanged(){this.filter.start&&this.filter.end&&this.filter.team&&(this.$emit("filter-changed",this.filter),localStorage.setItem("selectedTeam",this.filter.team.id))}},watch:{selectedTeam(e){this.filter.team=this.teams.find((t=>t.id==e)),this._emitFilterChanged()},splitDays(){this.time=this.splitDays.map((e=>parseFloat(e.unscheduledTime))).reduce(((e,t)=>e+t),0)}}},b=s(40089);const D=(0,b.Z)(g,[["render",m],["__scopeId","data-v-35b7352e"]]);var y=D,w=s(69204),C=s(36797),v=s.n(C),T=(s(57658),s(2750)),F={computed:{calendarData(){if(!this.subtasks||!this.blockers)return;const e=this._generateBlockers();return{tasks:[...this._generateNonWorking(),...this._generateTasks(),...e.filter((e=>"home_office"!=e.type))],homeoffices:[...e.filter((e=>"home_office"==e.type))]}},splitDays(){const e=[],t={};v()();return this.filter.team.employees.forEach(((s,a)=>{const i=v()(this.filter.start),n=this._getRemainingWorkCapacityMinutes(s);let r=0;this.calendarData.tasks.forEach((e=>{e.subtask?.employee_id!=s.id&&e.blocker?.employee?.id!=s.id||"non-working-hours"==e.type||e.subtask?.is_finished||e.blocker?.is_finished||i.isBefore(v()(),"days")||i.isSame(v()(),"days")||(r+=T.Z._getDifferenceInMinutes(e._real_end,e._real_start))})),this.calendarData.homeoffices.forEach((e=>{e.blocker.employee?.id==s.id&&(t[e.split]=!0)}));const l=n-r;e.push({id:a+1,name:s.name,employee_id:s.id,date:this.filter.start,fullname:`${s.name} ${s.surname}`,initials:s.name.charAt(0).toUpperCase()+s.surname.charAt(0).toUpperCase(),unscheduledTime:l>0?(l/60).toFixed(1):0,isHomeoffice:!!t[a+1]})})),e}},methods:{_generateNonWorking(){const e=[],t=new Date(this.filter.start);let s=null;this.calendarConfig.date=t;const{start:a,end:i}=this._getDayStartEnd();return this.filter.team.employees.forEach(((t,n)=>{(!s||t.work_start<s)&&(s=t.work_start),e.push({title:"Non working hours",start:a,end:this._setMinutesToDate(60*(t.work_start+.1)),split:n+1,type:"non-working-hours",draggable:!1}),e.push({title:"Non working hours",start:this._setMinutesToDate(60*(t.work_end+.1)),end:i,split:n+1,type:"non-working-hours",draggable:!1})})),this.calendarConfig.scrollHour=s-1,e},_generaLine truncated
//# sourceMappingURL=8138.8372c355.js.map