From 54d752ec943e8c122464ded7035a059e4e920a56 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 27 Apr 2024 10:22:07 +0000 Subject: [PATCH] Rebuild pages at d2b7dcc3c0b158a9e0dfd236365fe4b93ae459a6 --- archive.zip | Bin 21617750 -> 21617746 bytes js/index.js | 116 +- js/src_views_c-widget_vue.js | 2 +- reposense-logs/reposense.log.0 | 2358 ++++++++++++++++---------------- summary.json | 2 +- 5 files changed, 1255 insertions(+), 1223 deletions(-) diff --git a/archive.zip b/archive.zip index f8eaf78d2a88c7b290ecfa38f5c0e4704e59bc66..366ff8381c3c6bba69992423f6df4efffded7b8b 100644 GIT binary patch delta 8377 zcmYLOdmvQX7w&jhV@4&RkPOpx#`dx!#mTa^vXaShWC=z_Py!4Gj6m1xMn0X6-NI~41dPg6M@k*tk>|wPk)jxTeTEAfSF|ZzbrgNvfdfzm zaM5uGUcfeKJOR?l;H7Q)FG`oP3f-kV3NRWl26ZW`j&+wt(Pu)h;a6LvJ6m5VGU?M;l9ZZ>2Zi@X#UwML!rU?2<9)-P~bZsThARUG?xaaO!jiR?0>H+uw zeYC~U;N8X{XN?=+OdpRlK*u8mgUV800W%(S4x@4x*E!UIBS%+W6aXdzrU0g*%8S#` zS!|AboH0s-P)rMU5@m|go>n+)2rxnlho>*lWD7uh) z4B3m|kt=F$tQ|vFv`z;Y17@I#)|to+j1UYLTQlN|#|V?;NNLgX2TcI8ko-YYt?xLG zG|n%`(?s6eXFIRQ8fh1-N!q2qWH#MjVg{Il`b*3OBUwL@h2>nXXyBX;2YJ6R&-7(| zY0v={083GOcq@#I@P&CiJ${ZIAjiHZ19qf5) z;faoA>;a2WEaPBI$vlu`GwHX6`Ug=r9L_AnIbbSa?m^CYx~A0u;D~Bkm%Ltz^Kj## zrzTGO4Db_fHW55Y`y|56iH>kviXz;WRhvs=2$+et@sL?wra~#B__$?(Mba4hj5g#z z@4Gq4(XKAb0V@D20jrR!i}P=v*nmtB7;2)87A^s&*|0?8itg1Zj-tnvxd2uJ)}V1^ zt_$W3ImX<9_d`Nz?Q8O8q?@s(MW@)W1*}6U_HM_busvC7x*<;;ZT;PC{X?ulOXxG- za2a^IFt#S6C^>pWv^!uuU;|(y8WFuIL1O)8vw%rU$0f8c_84^pN|5$v^g(l{#1;=>Kr1AydW^rWRS)G-xjaFMv1lGT0*f8drxj{@K1QTkP-?X?%F% zN)``utF5%T)iz{qwLNV&&WE9*$JE?|ZbZ7bx6`X|47}v<=@q za|J{#Izes^zz?t&CCK?#Z)KfC&A0q{qGNH>Iq0sBKgW8=k$!*6AFvOwAHBa7@CToD zVeVz&IMj;(zw<-pOa_Qt#`Xo&k+FtOQlKAt9RM5z96}Gh4tL+c1wi}pQMFuP;TrrD z`$w+6s75Z3%Xor2kA`I)a0GA^5QJ*ngS$i7xFVj+F-cW(n}WaSv!M-`quF?#7|9$1 zgdiiCPl?tl^qHQ0~`m0qp0kN@wnMY4>K`2c(k{> zpIEm5Ymz|=8kuFPbY#K_z)2LDK%eTy2Dqa|Z~3QrvDO^qEIhR(9#qoR26Qw3G$0ai z1~v1~PN=~Scx6b)#X&54&Q5-YB|OrxB-zME)3=MG0MP&;AO_toj#VAb`Z5oR^Wf9i z`I}j1qH&q-yvcA3IB6IMI0rb7P8!Dhj+T1znP<=%Y@5uoiSMwL`b%=OX|K?Dzy;(L zDpHasd4UN6#wd@R08WVFy+M=i9n(N$t4p_wXuAC(;1Z(SFI)Y$bl5xuE8H-0HCF`N zaEYWnv8+Y=nOy~3Lw;rn6LDLk*uVsNm!S}J;j;t)1GtU~pWP56><_KSXEGn*_gDer zn}Z4?5^czm1C1!j(WY%n5&=noWWY^iTapr?iVMCmZw4hmU+Yrt&c%=Z<(8B{1dklL zS|t^53stM6{gH?R!EhCb26(qQqL!C!9P}eQ?c;i^;}@WR@@@m}pr5?-{WPcutOJ$} zWpi57X-?~1#A&_v><*}sxQtaHZb*&TjN|*TNTL&wL)XY=0{yLL7Odku&jauyv;zdi97AVzOb6wSR$>Wp_<%UQ)Ijt-SCnm4PMBl0x6 z%A@5niUB1^E~7Ny9^atbkcQAQiQC`Se_esfNeI_V?E z|4E|-i3qcbX40PkDiD)i8UJ*s;0>jC0O3~UpaX}V_V1M1^BJ6@%@n~(4QJ>NPXSec zXMpD@@52jABQ}ocnpZVBjBt?|ui6%mTQZMn&;d1om*|?;E7jX12cO5P%kZ2L7T{s~ zgY(+X8FHl431?|ZR`?)~*L0A_?ow7&t+2zUc{i<TW15-=n+8+#44cDjsS6th`{wB z2P>?R!^>#8p!OGF05F(eP)mhSLzU(%qbOef-g@fb0pbXi7Ak`Vi40C;DY5c0Im-CB z)I*<%fn$KCIJjDl8bg*Uvfg7+a!M68=*d%%DBwhq5;y26QRneVOmbjaTn&vRPKSB9 zEe}M=HY&8}QKBFjj*}5M8A*vPdN`EpKSPcK#IdGRnYxR^3h`)zghz=(=BrSbN&Uz? znFt3Io*4IHIytA|HARR;NJisi3{F%j@kEocR3=&R$vD~j62I4|=&{u0O*krfFD!C} zEuCX2NYrpLjuN+Ys#BjLWpX7uz4+@P4QieMKayt0k6fV#qd`HUiIee^*n^os31p=% zd~tf>1nQr;QWrjB^%~}|u&rqV1&J0VZfnw}KKwOg{jElaa$7!RjURcELzM_d1V<>+ znMgsRONm7~lc;&Cu_bw>jNfsuz>NS;tR66lI=TkukoUqlTEhCuNfab{l(@cO z76Ol4AwIf5GKCU%=S`(NO-L}jXol3`hL7!-N;#fng9(@>P|4;eC!Dlz8U=|VPK5<@zVX%MqWL#UC)t4HCcN}NV7FPZz3V^)V6bcYy=+#j6& zs8;hV|I#1U`+k{PTJ~={*z^3(k7aYK>kkYp-c-BjVXu92rQ_dI{#D)9cluD%yNt_+ z`YbZkmOVBtcWE}eWPG{#uuD%#&bTc}p5`M;Hhrc;{JZL|4t(3L_daC!Zk?~0g_-}X zPDjfIcKup!JmGQW&rR2C&Ub7*`Y!SDg^r*58gu*mR;BE4?H!)_*NpC@P5WP48i@kC zd{@~ti_ZA8Yt}V?E}i4I#yY^S$Nv4`*Lh~oQ?!*8m@}XJj}Csi5u|zcJ-tf3x^&>% z!{9MxzdUPvn?rJTH|Yt^-0OIrQaJri^_c_T4-6KqeYrb(YhTXfI&R+4EB^#_zFT{y zr_{UuUA~D#zd1y6KnBmwSy(50RD5E~OhS z$vTn4+iT42daunr8^e{?=R1!Yy?OZQg%JzQ?S5{yxiH4-rLEnDknLQ4S>koI#EE5z zS!$CYy&h3<&4>PN^u9couPcjm&+QC4wMdU%YVciGO}ZZOXPVk2xQFh|9kjuIo7b&lhFI zHxP&Ank??n(=vJ>bXm7VQ8Dg**Nd>^fEmdvPOtWlJh31+WC=gg#gJnj zWNMKVu15k_$I}ygibvfwKC>e@VBwwn z=T&{Dq&;(X?mVA<+4nu=BVV8TAchPuFA|Xt00-i?%|oGix-Uu zbJW$C5}{wd!(a}enfc6FefN~9?V-i5 zsH$XHdnd)Itx-i!$5)=8Q!>>r{YtR9Rez>$@8-_V(#uOPhKC17E=(#nC_S4}R#aSk z1RfT-YIJf|%+~k*%i6H2e}-9?w@zxDo^0j>jfy`jhUNDTKd_5YDG2Euz7>88dslIE zWOzDp$~tzb%VamcF&zd!Zf{JBM%3Rf5K?WyXAQf&GXr&|Ro^*~nh#0S z-pp)C)Y5~WhD5D8)%>~Urio+E=g(EIdwDx(gxT_$_sz>aKdRQvbyu)-zcAO`-qL-I z$=RaH8FBihO4m3pts%i2^Dgf#fjYAHEOzLmF1cdglCzWVbj9AmNq1xAW(j|O7{gTL~k=Giy z+ygns3mdp6qjs!G_B1N5Ff8{pIuY=S3cD#A=cp)mfoqz7Uu%M)iQ~S?im1l?pu(rl znJy-kDO>FPb~_$;HGjkfuJfgU7%#_FS5-f@v@|YO{Upmf)41lr9d-oyUd$MMN!`#S zYv~rR^olZzsE`ZAnnqQo?)JNKB0uI$n9%96aE)Ton1=^DoYp)apQ{?a^``n+qw*P# zTAqi7&(Ry%%rQHhJ*&W{*ReQz#ndao&VP3%y(x~~sB+(Teno@4Zb!r}g^~4!WA158 z+i>n)-07nDrTjZvCI#rbB(Cr0w>(%e34V4&xyI|3?O8Xm@nnd6$)0td@3;pQx;(cx zau3>fd9IznZEtBgLv>VGwZ+6nH^qo~9iazq zs&l57d%8_g@OGN%keaHpZiVip1iQoY7LEPn{W`_a>57TP?%Q!(B}1*4r4|$ap3Yqp zJR+>a#le-aYxq~S1FZ?!#i$qbo`x}~4r8!2Zp_~4b7SG>?@LQ>pHe%z`qbyO{AblR zdf&e{RNc9q{weTdly%P916ju^s@0-Syww@j-hX%8ec6!wJ(0D%Id5VFJN;C9f`kv# zo*I{%cpOPedGo2a?yGjs57)wX4IaZPMccLXQ0{J2*o=ZZf1>yTA<9!$(NC5t z;XsH@Gpks^ojy@SK!{fltE^0sD))epIxD40-(o8e;#CA>1OB+shD&xgOag%rrJhwx z(xgfZ5MtB8Dvod)PLyOI#7pLmRM`lGDEX|S2KUiK2>?R8s#(Pdu9}H*3J9_J#47XQ z+L$N|kaf6*eL(QH2;-U|^~wT5Y#&Y&OC@C{gl&5Je46xWsEO5aRV52(g(A*ObKOBoLx}U=tl|RqibTl*LTos2Sx6KgAVeu=6}?ANIiWd-~6tT*9 zxaJ^AAP{2nJFA$$l?G9wfDoGwR{0{*r>txzhoQ&k&HuD z5!6VP2q47kJrLqG55C`tauLV|{1MYj6dy-buK zAjIYktIV#ID(8R@n{TYL6ux1Jk_v=)$-~zsQ9OYVH_>V{OdN}G@hC5n1)qKTGC$}4TinsQpy zSXwEO$d*=>(xv)x>$>XqoMT@7{`j2vyr1(t=Q;1$=e$p@UQlWPa2L7Aax{i0Dk=`i zlowMsXB#p$C!8p5p{3DIE8J49541 zJtd$a2cQTT3Q$7n4Z|u;vEObxb0Nb$=|qh}7v;D~vq)KtgMd*2jVE52qoGRgapVG& z0X($Fksr238c@iLJq5AE2OS-_Xlgz`Y31*LUCJtSm$E8A4WN#?lr@HXNdpSRi*hu0 zViC2Bi{=Juyqzr#Dr9!y@|f-nCyFnw@rvNkAvqd=;V2|$#O9Z5STrYs=0cywI6A&QF^_A5&Z5YpMlF^mAlfbl5%_#X`k zI2ZRgQw^?~;sS9F2i*~vd|wP113gZ11_H~5o6xf16Oe4Use>l#iGq_&Ron;7#qh|J zHhheyixOSkZVE61Ohnb~lL|e-6v1Gzw^k$z0HA2nLve3h&#Fs=`LN!BF>MJFVUD zG|)<7c;wOc!|eex0ke?(@Y#|JkdI*eIN}K@9W+7wIdl+zE(+p1e6qr&L0bq=jH3g8 z89dQRj00dEN@5(%C^nl}kcn$VopwAh2Wwy?WL!bxk^%9g-I0FM?u4GSJJ-&~`MA+g zrMXKe8Nj%)#PGypHfOoyZ4Tb!h~nznys*Q58ID5(lOsF-0ANXO8`sJ_liILW(-;l@59VmIJ&2 zE0EH`m1zUU&A!64TxcCU6}YHl-YV5dC`8&*kLRu8(eP#fA7obU>oW@S5cFv*nc8HT zW4ytgELx*!KSMu&Kk_pSkgdaYA@eji4;zpL>->)ZXR_Rp*TES&18a_z&1%}pW(~5k zS(~*9d%{o{Cw|nomOtRAm%WxI6AdpX26T1bT0kJG?ps&Ciwz|9saP+K^EPt*Qb(*q z9HIDOfTT$C~xA%+vgXMC>X(f`wX(+WHa$>1|!W)wiJX%Qy~uo)1H zM4XVe)q|dGnIU}fu4Gd#%3UAAwH=LIGRQi_Eas2CNH{UFbwED+alB6w*}@gRjo8xRTD z0oaLZyrQ~e*q~y*%&viY7Pm%y6tHm(8J!|{X?l#zE4H;4xuK>Y>@{g1If zUJ{u9z(^BK?@2IvNUDlgO04miU9eX3afRjRoU%l~L4XKw2<4O|sSO=0LIq*-ntEJ? zUzJHSeFqD|Ins4-zezH^-{dgh2-i-GJEyMp|gH-O*3>QpW*}kJoD0hhmNb zj-h}UvAi5Hh)5GM##hM^V6XV7KWNfZ!`copy|&{xAO)@MIN|+!{dfuHnut@ADqMq$ zAX5lyJlevaYW1Oq}S{>jhgieJ{g=c2DgS#Jh+CPuepa75{-WYan-7m#&tbU{DR57wUblQ+NuKz82EIimwB107}rW z;+r&Cm&p9dU3BX`KIt$?%celX<}bR%We!1K^XbODw*V5=+EgOoU7=nv-7!C`X+9imVpwNCvbq`dq)q}Ry?h`Vx)yRzVofT6ryQ1b=#rd!fcvN<=RtVoV4Qx)(?VOfSN5%w z+8Z!f7A?U08i1*RrPO7!2H!U?rsQ}%w z^keG(>h?*?FkmiJ;i0B1`QI5|tl`~~$pj7l{cwWRm>8W&lmh*8Y!9Fp@DJcS`Z@N8 z=_+iFHxx1d;}7Y)MVn%N>{v(2!6Obb0RIB|5dY(U^cvO$-CWdvHIB6t!xK*oM-DZ* zq`n{U6Y%RsNj()!VH;=^17<=s4F4O!&!}x%i65?~DQG&P@e3#l5*eJxQj+ltIF#BR zsUMsI!A4UO^_WAcFTo-i99SfKth%UioE!y-JWdoSN#i(0>c}W;h|g5asmBmif)~8d zt00oGV#uU}swG<5qewwA6emhJ8AeH#_He1`{|vhSiwz|;oyt@$4lcq&4H7;jiJqxK zoglR&3(HtIc=9Fq&t1+Y?2YG%2#b)Y;Y1xL8kA(L`EaUWIW{4Ke`76vJJo~3sS_)) zNZt;MJkiU};S?kza59pTyzCrBy^F^-xX+lFC%6Uh79&vzA5D!DN}~?sz^TQND<|5* zjHV#b#EBLq*}`a3>ax-z44CIogqGx9hBnnYP3k=$^5M^en&@MzHU)_eCHdGohHCr9 z`bqw-(WN}`v?g!K;72|=n~6<6{@{wlx??Fw^eBl~SD%_eI*q*RA~?TkN`{B&Q@fU8 zZ}P5K92h&I<_G!|B;zPa^8*9wZWW1uPYxxW0*VXEz2wzV0d?t5&<7^4=sILTVn|7@ zcM7SrWb6T`75WCBi1DT#il85MeSU_c2N_JE^d^HS!uug4mXsuE*;GpSUTSEN z)&#?P;0P)CVQWRr!wVtV$VKZitSCsPQId5T*3`Q;$dD}FJ)Ige2N#Iz1BneK3Ar$0W4Cp+&N5`W(vOGIl0i5)YzuwPPMa1SL^- z*Bt1cuDLjIz{x!5s4hn;Faw+zuVg1`Z1juGEtV>~Uaay}jA$&dYRGrK^rF?^8OL#B z#TtjOnW{#G&5FS$vy&Ba=KlOA$^2%qlV$1l7s~^_96tW|-kUEs#`QnCcwoU5qlN`v z<}IGO`bw|EO7jF;g^th^L0ianNsyh!r;O?rzpTm&$2B~n?)rNCHY??J2WlZKJ=!d>@n9-F4gv z84HS5_Z$&#P-wmRXoqd@-=B8&cL&-=R;CtbZmPJ{l=D@xqUzVjhoAHMg)O@`-DoOa zl6!1!e{|-JZCl>AecfrI7q@47|Dgqr^j+0UT@QWZ!i`=w2^|TBxW&Z2gCYsX%%n$Ml zjWYSF56wp;_UI*e-pxplQ{0y@*MF!lcl3chywUsj26zm6;4vb3<^%(EPse>%4kfJC z8~t?FKK%>Ux2@~-se7fw-^TQk~nVwJ~k&wU4GFInYsHzBqn+UQ5ysaUI!iQ2~F z|N5R*U$*;f=Z!66jdi$A&ZXN8c|3u@s`ZrBsN^F@x)y0`J3B{SbqSf6?mBeVP-7kK z4tMYEydL8b`z{|@^g3|5)l;`w2hV)=adg|6a;B&3V8i=qUb-ED4{R3tfU#rct?3HM zPs$G23e@fxj{rZ_KNdz8PJG#&^dW(FP}^4fTrJK#_T$K?PItdF*ZqZM%k{?zsKd$K zj!p$4{Cx%yQ`5v7*AvMY(ytlTbX`cUD z-3brkrdc&!2)6LrXg=S`nX9dxgC7EpmQ{DpaW}W@IujA0oA{`&@!tNo_lKCwled{> zUYZv*tEpMY$&Z>9-PSCelOM&Ypi3+0@Cv$SU7h_gOXbpabunT~<%04nMqOu0BXsXn z^%-q!yH`0m3ov(XM80**u3(bB?$>vu<-G}@%OyY9TI z*(OcB33~$sXE>uGvIopy1U8+ulzDk)w#Z+x&`dO*v**x1;q)#FEB+v0z(@csp# zZ?^H`e-<~Eh?3`CR?@B=zjDsS0@d7O^|kARb#mXq&qkeGYV6^%*v4hChl^fHm_77O_!DaPIoSt! z8x<4|%s=UE9_rs~y2|X5M(2_FCB`W=%a^;QgdN&*F7}8}=d6btM|j7|D!kWs?~l?7 zzimrD>$|BjZ(V! zaY(rSv!E#B?1+kEet|2E_uW0_XXM#^zO*d$wcKVUt&*nED=qrYzHAb{b2j zbI(+9%I2Awg~Mh|P|us2(T+pWNDb z^SDOkVYgeN3+&<7t2lN=?Dm2UZMLR3~isKIAdo8e(FdskA&bKjO*{ z&E=`Cmx_3bI~%Ak)z)J>Jr%tEj6Yp=Zq$io@uv&VjWVcnSIoJf;_9kblBTcpt#F~$H@<(}ufppm7s}6D@n(O-y_fF~-rBwMx$ifJ4)-R@zU};j zAHG&@?QNG_+F)%J%B)NnInwOcjlQFk5>Z;ufB*egWw*#hL2>z6XFY9&Awz7}3>mV> zg_6-2!hSVk@=}~A5B#x65xyMZn+j$%5Kl}>fp}vw20r)@B?1Uhp0SEKe8eHjAt1!& z6RSAErxv1|1ww3O;A06uIAVj&#DthomfGE*Gh)pxASizk?Q4RwkHeXm}{&}gA z4TRL0b3ytRzCegq2@v9?3Age@*$RXxb*y5VB~=oD5S#a`G8b;qiINV4c>QD*Pq-c@ z3IalG)N-UsFc6|tv5GNVTN5P?2=RK&Dl_t=N-7ZY7Ck^nU%2HfvNuVHXcOl(#I zAvWc#q77HOM2P@GZ0cBL;w5Q02Y`@rI)D(H*>EvSywZV?8ukGpHlA?(N|eh$h@u9! zoWyG*5aRU!2(d9JmfGwALX_vMG97L!iE<1GDd&Hz;tH2cM9Bq0Y!t6al{G+!QpPH} z*QH7%5aQLyDwA(Wl_VgK zy&6&W10go=S!GtKR7nRyZ2DNm6E3%iav2EmQiE$KqHF>}lqyy+tiTE!u;YMuV)BAj zX21;-QH}#4HodH}7%sAjk`IK~DBYDRfk22-!76%it3#BXK!{f}5Dy&7;y&(EAW1-o zO(zgy;|y0WL^%h9D6(*KLX?$2h*H8TBjNIcC|iLLn;KRzeJEA-10go=S!LEEsge$a zc=fT0CtNlVR2& diff --git a/js/index.js b/js/index.js index d62f7dda..08a6d841 100644 --- a/js/index.js +++ b/js/index.js @@ -104,7 +104,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js */ \"./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js\");\n/* harmony import */ var _home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_toArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/toArray.js */ \"./node_modules/@babel/runtime/helpers/esm/toArray.js\");\n/* harmony import */ var _home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js */ \"./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\");\n/* harmony import */ var _home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/objectSpread2.js */ \"./node_modules/@babel/runtime/helpers/esm/objectSpread2.js\");\n/* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.number.constructor.js */ \"./node_modules/core-js/modules/es.number.constructor.js\");\n/* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var core_js_modules_es_array_for_each_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.array.for-each.js */ \"./node_modules/core-js/modules/es.array.for-each.js\");\n/* harmony import */ var core_js_modules_es_array_for_each_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_for_each_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/es.object.to-string.js */ \"./node_modules/core-js/modules/es.object.to-string.js\");\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ \"./node_modules/core-js/modules/web.dom-collections.for-each.js\");\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! core-js/modules/es.array.filter.js */ \"./node_modules/core-js/modules/es.array.filter.js\");\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! core-js/modules/es.object.keys.js */ \"./node_modules/core-js/modules/es.object.keys.js\");\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! core-js/modules/es.array.includes.js */ \"./node_modules/core-js/modules/es.array.includes.js\");\n/* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_10__);\n/* harmony import */ var core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! core-js/modules/es.string.includes.js */ \"./node_modules/core-js/modules/es.string.includes.js\");\n/* harmony import */ var core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_11__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_12__);\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! core-js/modules/es.array.concat.js */ \"./node_modules/core-js/modules/es.array.concat.js\");\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_13__);\n/* harmony import */ var core_js_modules_es_array_reduce_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! core-js/modules/es.array.reduce.js */ \"./node_modules/core-js/modules/es.array.reduce.js\");\n/* harmony import */ var core_js_modules_es_array_reduce_js__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_reduce_js__WEBPACK_IMPORTED_MODULE_14__);\n/* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! core-js/modules/es.function.name.js */ \"./node_modules/core-js/modules/es.function.name.js\");\n/* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_15__);\n/* harmony import */ var core_js_modules_es_date_to_string_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! core-js/modules/es.date.to-string.js */ \"./node_modules/core-js/modules/es.date.to-string.js\");\n/* harmony import */ var core_js_modules_es_date_to_string_js__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_date_to_string_js__WEBPACK_IMPORTED_MODULE_16__);\n/* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! core-js/modules/es.array.map.js */ \"./node_modules/core-js/modules/es.array.map.js\");\n/* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_17__);\n/* harmony import */ var core_js_modules_es_json_stringify_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! core-js/modules/es.json.stringify.js */ \"./node_modules/core-js/modules/es.json.stringify.js\");\n/* harmony import */ var core_js_modules_es_json_stringify_js__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_json_stringify_js__WEBPACK_IMPORTED_MODULE_18__);\n/* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! core-js/modules/es.array.slice.js */ \"./node_modules/core-js/modules/es.array.slice.js\");\n/* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_19___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_19__);\n/* harmony import */ var core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! core-js/modules/es.array.join.js */ \"./node_modules/core-js/modules/es.array.join.js\");\n/* harmony import */ var core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_20___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_20__);\n/* harmony import */ var core_js_modules_web_timers_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! core-js/modules/web.timers.js */ \"./node_modules/core-js/modules/web.timers.js\");\n/* harmony import */ var core_js_modules_web_timers_js__WEBPACK_IMPORTED_MODULE_21___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_timers_js__WEBPACK_IMPORTED_MODULE_21__);\n/* harmony import */ var core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! core-js/modules/es.regexp.exec.js */ \"./node_modules/core-js/modules/es.regexp.exec.js\");\n/* harmony import */ var core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_22___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_22__);\n/* harmony import */ var core_js_modules_es_string_replace_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! core-js/modules/es.string.replace.js */ \"./node_modules/core-js/modules/es.string.replace.js\");\n/* harmony import */ var core_js_modules_es_string_replace_js__WEBPACK_IMPORTED_MODULE_23___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_replace_js__WEBPACK_IMPORTED_MODULE_23__);\n/* harmony import */ var core_js_modules_es_array_sort_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! core-js/modules/es.array.sort.js */ \"./node_modules/core-js/modules/es.array.sort.js\");\n/* harmony import */ var core_js_modules_es_array_sort_js__WEBPACK_IMPORTED_MODULE_24___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_sort_js__WEBPACK_IMPORTED_MODULE_24__);\n/* harmony import */ var core_js_modules_es_number_to_fixed_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! core-js/modules/es.number.to-fixed.js */ \"./node_modules/core-js/modules/es.number.to-fixed.js\");\n/* harmony import */ var core_js_modules_es_number_to_fixed_js__WEBPACK_IMPORTED_MODULE_25___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_number_to_fixed_js__WEBPACK_IMPORTED_MODULE_25__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.runtime.esm-bundler.js\");\n/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm-bundler.js\");\n/* harmony import */ var _mixin_brokenLinkMixin__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ../mixin/brokenLinkMixin */ \"./src/mixin/brokenLinkMixin.ts\");\n/* harmony import */ var _mixin_dynamicTooltipMixin__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ../mixin/dynamicTooltipMixin */ \"./src/mixin/dynamicTooltipMixin.ts\");\n/* harmony import */ var _c_ramp_vue__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./c-ramp.vue */ \"./src/components/c-ramp.vue\");\n/* harmony import */ var _c_stacked_bar_chart_vue__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./c-stacked-bar-chart.vue */ \"./src/components/c-stacked-bar-chart.vue\");\n/* harmony import */ var _types_summary__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ../types/summary */ \"./src/types/summary.ts\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,vue__WEBPACK_IMPORTED_MODULE_26__.defineComponent)({\n name: 'c-summary-charts',\n components: {\n cRamp: _c_ramp_vue__WEBPACK_IMPORTED_MODULE_29__[\"default\"],\n cStackedBarChart: _c_stacked_bar_chart_vue__WEBPACK_IMPORTED_MODULE_30__[\"default\"]\n },\n mixins: [_mixin_brokenLinkMixin__WEBPACK_IMPORTED_MODULE_27__[\"default\"], _mixin_dynamicTooltipMixin__WEBPACK_IMPORTED_MODULE_28__[\"default\"]],\n props: {\n checkedFileTypes: {\n type: Array,\n required: true\n },\n filtered: {\n type: Array,\n required: true\n },\n avgContributionSize: {\n type: Number,\n required: true\n },\n filterBreakdown: {\n type: Boolean,\n \"default\": false\n },\n filterGroupSelection: {\n type: String,\n \"default\": _types_summary__WEBPACK_IMPORTED_MODULE_31__.FilterGroupSelection.GroupByRepos\n },\n filterTimeFrame: {\n type: String,\n \"default\": _types_summary__WEBPACK_IMPORTED_MODULE_31__.FilterTimeFrame.Commit\n },\n filterSinceDate: {\n type: String,\n required: true\n },\n filterUntilDate: {\n type: String,\n required: true\n },\n isMergeGroup: {\n type: Boolean,\n \"default\": false\n },\n minDate: {\n type: String,\n required: true\n },\n maxDate: {\n type: String,\n required: true\n },\n filterSearch: {\n type: String,\n \"default\": ''\n },\n sortGroupSelection: {\n type: String,\n \"default\": _types_summary__WEBPACK_IMPORTED_MODULE_31__.SortGroupSelection.GroupTitle\n },\n chartGroupIndex: {\n type: Number,\n \"default\": undefined\n },\n chartIndex: {\n type: Number,\n \"default\": undefined\n }\n },\n data: function data() {\n return {\n drags: [],\n activeRepo: null,\n activeUser: null,\n activeTabType: null,\n isTabOnMergedGroup: false\n };\n },\n computed: (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])({\n avgCommitSize: function avgCommitSize() {\n var totalCommits = 0;\n var totalCount = 0;\n this.filteredRepos.forEach(function (repo) {\n repo.forEach(function (user) {\n var _user$commits;\n (_user$commits = user.commits) === null || _user$commits === void 0 ? void 0 : _user$commits.forEach(function (slice) {\n if (slice.insertions > 0) {\n totalCount += 1;\n totalCommits += slice.insertions;\n }\n });\n });\n });\n return totalCommits / totalCount;\n },\n filteredRepos: function filteredRepos() {\n var repos = this.filtered.filter(function (repo) {\n return repo.length > 0;\n });\n if (this.isChartGroupWidgetMode && this.chartGroupIndex < repos.length) {\n return [repos[this.chartGroupIndex]];\n }\n return repos;\n },\n isChartGroupWidgetMode: function isChartGroupWidgetMode() {\n return this.chartGroupIndex !== undefined && this.chartGroupIndex >= 0;\n },\n isChartWidgetMode: function isChartWidgetMode() {\n return this.chartIndex !== undefined && this.chartIndex >= 0 && this.isChartGroupWidgetMode;\n }\n }, (0,vuex__WEBPACK_IMPORTED_MODULE_32__.mapState)({\n mergedGroups: function mergedGroups(state) {\n return state.mergedGroups;\n },\n fileTypeColors: function fileTypeColors(state) {\n return state.fileTypeColors;\n }\n })),\n watch: {\n '$store.state.isTabActive': function $storeStateIsTabActive() {\n if (!this.$store.state.isTabActive) {\n this.removeSelectedTab();\n }\n },\n // watching so highlighted only when summary charts are rendered\n filteredRepos: function filteredRepos() {\n var _this = this;\n this.$nextTick(function () {\n if (_this.activeRepo !== null && _this.activeUser !== null) {\n _this.scrollToActiveRepo();\n }\n });\n }\n },\n created: function created() {\n this.retrieveSelectedTabHash();\n },\n methods: {\n getFileTypeContributionBars: function getFileTypeContributionBars(fileTypeContribution, checkedFileTypeContribution) {\n var _this2 = this;\n var currentBarWidth = 0;\n var fullBarWidth = 100;\n var contributionPerFullBar = this.avgContributionSize * 2;\n var allFileTypesContributionBars = [];\n if (contributionPerFullBar === 0) {\n return allFileTypesContributionBars;\n }\n Object.keys(fileTypeContribution).filter(function (fileType) {\n return _this2.checkedFileTypes.includes(fileType);\n }).forEach(function (fileType) {\n var contribution = fileTypeContribution[fileType];\n var barWidth = contribution / contributionPerFullBar * fullBarWidth;\n var contributionBars = [];\n // if contribution bar for file type is able to fit on the current line\n if (currentBarWidth + barWidth < fullBarWidth) {\n contributionBars.push(barWidth);\n currentBarWidth += barWidth;\n } else {\n // take up all the space left on the current line\n contributionBars.push(fullBarWidth - currentBarWidth);\n barWidth -= fullBarWidth - currentBarWidth;\n // additional bar width will start on a new line\n var numOfFullBars = Math.floor(barWidth / fullBarWidth);\n for (var i = 0; i < numOfFullBars; i += 1) {\n contributionBars.push(fullBarWidth);\n }\n var remainingBarWidth = barWidth % fullBarWidth;\n if (remainingBarWidth > 0) {\n contributionBars.push(remainingBarWidth);\n }\n currentBarWidth = remainingBarWidth;\n }\n contributionBars.forEach(function (width) {\n allFileTypesContributionBars.push({\n width: width,\n color: _this2.fileTypeColors[fileType],\n tooltipText: \"\".concat(fileType, \": \").concat(fileTypeContribution[fileType], \" lines, total: \").concat(checkedFileTypeContribution, \" lines (contribution from \").concat(_this2.minDate, \" to\\n \").concat(_this2.maxDate, \")\")\n });\n });\n });\n return allFileTypesContributionBars;\n },\n getFileTypes: function getFileTypes(repo) {\n var _this3 = this;\n var fileTypes = [];\n repo.forEach(function (user) {\n Object.keys(user.fileTypeContribution).forEach(function (fileType) {\n if (_this3.checkedFileTypes.includes(fileType) && !fileTypes.includes(fileType)) {\n fileTypes.push(fileType);\n }\n });\n });\n return fileTypes;\n },\n getGroupTotalContribution: function getGroupTotalContribution(group) {\n return group.reduce(function (acc, ele) {\n var _ele$checkedFileTypeC;\n return acc + ((_ele$checkedFileTypeC = ele.checkedFileTypeContribution) !== null && _ele$checkedFileTypeC !== void 0 ? _ele$checkedFileTypeC : 0);\n }, 0);\n },\n getContributionBars: function getContributionBars(totalContribution) {\n var res = [];\n var contributionLimit = this.avgContributionSize * 2;\n if (contributionLimit === 0) {\n return res;\n }\n var cnt = Math.floor(totalContribution / contributionLimit);\n for (var cntId = 0; cntId < cnt; cntId += 1) {\n res.push({\n width: 100\n });\n }\n var last = totalContribution % contributionLimit / contributionLimit;\n if (last !== 0) {\n res.push({\n width: last * 100\n });\n }\n return res;\n },\n getAuthorProfileLink: function getAuthorProfileLink(repo, userName) {\n return window.getAuthorLink(repo.repoId, userName);\n },\n getGroupRepoLinkMessage: function getGroupRepoLinkMessage(repo) {\n return this.getLinkMessage(this.getRepoLink(repo), 'Click to view group\\'s repo');\n },\n getAuthorProfileLinkMessage: function getAuthorProfileLinkMessage(repo) {\n return this.getLinkMessage(this.getAuthorProfileLink(repo, repo.name), 'Click to view author\\'s profile');\n },\n getRepoLinkMessage: function getRepoLinkMessage(repo) {\n return this.getLinkMessage(this.getRepoLink(repo), 'Click to view repo');\n },\n getRepoLink: function getRepoLink(repo) {\n var _window = window,\n REPOS = _window.REPOS;\n var _REPOS$repo$repoId = REPOS[repo.repoId],\n location = _REPOS$repo$repoId.location,\n branch = _REPOS$repo$repoId.branch;\n if (Object.prototype.hasOwnProperty.call(location, 'organization')) {\n return window.getBranchLink(repo.repoId, branch);\n }\n this.removeSelectedTab();\n return repo.location;\n },\n getRepoIcon: function getRepoIcon(repo) {\n var domainName = window.REPOS[repo.repoId].location.domainName;\n switch (domainName) {\n case 'github':\n return ['fab', 'github'];\n case 'gitlab':\n return ['fab', 'gitlab'];\n case 'bitbucket':\n return ['fab', 'bitbucket'];\n default:\n return ['fas', 'database'];\n }\n },\n // triggering opening of tabs //\n openTabAuthorship: function openTabAuthorship(user, repo, index, isMerged) {\n var minDate = this.minDate,\n maxDate = this.maxDate,\n checkedFileTypes = this.checkedFileTypes;\n var info = {\n minDate: minDate,\n maxDate: maxDate,\n checkedFileTypes: checkedFileTypes,\n author: user.name,\n repo: user.repoName,\n name: user.displayName,\n isMergeGroup: isMerged,\n location: this.getRepoLink(repo[index]),\n files: []\n };\n this.addSelectedTab(user.name, user.repoName, 'authorship', isMerged);\n this.$store.commit('updateTabAuthorshipInfo', info);\n },\n openTabZoomSubrange: function openTabZoomSubrange(user, evt, isMerged) {\n var isKeyPressed = window.isMacintosh ? evt.metaKey : evt.ctrlKey;\n if (isKeyPressed) {\n if (this.drags.length === 0) {\n this.dragViewDown(evt);\n } else {\n this.dragViewUp(evt);\n }\n }\n // skip if accidentally clicked on ramp chart\n if (this.drags.length === 2 && this.drags[1] - this.drags[0]) {\n // additional day was added to include the date represented by filterUntilDate\n var tdiff = new Date(this.filterUntilDate).valueOf() - new Date(this.filterSinceDate).valueOf() + window.DAY_IN_MS;\n var idxs = this.drags.map(function (x) {\n return x * tdiff / 100;\n });\n var tsince = window.getDateStr(new Date(this.filterSinceDate).getTime() + idxs[0]);\n var tuntil = window.getDateStr(new Date(this.filterSinceDate).getTime() + idxs[1]);\n this.drags = [];\n this.openTabZoom(user, tsince, tuntil, isMerged);\n }\n },\n openTabZoom: function openTabZoom(user, since, until, isMerged) {\n var avgCommitSize = this.avgCommitSize,\n filterGroupSelection = this.filterGroupSelection,\n filterTimeFrame = this.filterTimeFrame,\n filterSearch = this.filterSearch;\n // Deep copy to ensure changes in zoom (e.g. toggle state) won't affect summary, and vice versa\n var clonedUser = JSON.parse(JSON.stringify(user));\n var info = {\n zRepo: user.repoName,\n zAuthor: user.name,\n zFilterGroup: filterGroupSelection,\n zTimeFrame: filterTimeFrame,\n zAvgCommitSize: avgCommitSize,\n zUser: clonedUser,\n zLocation: this.getRepoLink(user),\n zSince: since,\n zUntil: until,\n zIsMerged: isMerged,\n zFileTypeColors: this.fileTypeColors,\n zFromRamp: false,\n zFilterSearch: filterSearch,\n zAvgContributionSize: this.getAvgContributionSize()\n };\n this.addSelectedTab(user.name, user.repoName, 'zoom', isMerged);\n this.$store.commit('updateTabZoomInfo', info);\n },\n getEmbeddedIframe: function getEmbeddedIframe(chartGroupIndex) {\n var _arguments = arguments,\n _this4 = this;\n return (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])( /*#__PURE__*/(0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])().mark(function _callee() {\n var chartIndex, isChartIndexProvided, totalChartHeight, margins, iframeStart, iframeEnd, _window$location$href, _window$location$href2, baseUrl, params, groupIndexParam, url, iframe, textarea, tooltipId;\n return (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n chartIndex = _arguments.length > 1 && _arguments[1] !== undefined ? _arguments[1] : -1;\n isChartIndexProvided = chartIndex !== -1; // Set height of iframe according to number of charts to avoid scrolling\n totalChartHeight = 0;\n if (!isChartIndexProvided) {\n totalChartHeight += _this4.$refs[\"summary-charts-\".concat(chartGroupIndex)][0].clientHeight;\n } else {\n totalChartHeight += _this4.$refs[\"summary-chart-\".concat(chartIndex)][0].clientHeight;\n totalChartHeight += _this4.filterGroupSelection === 'groupByNone' ? 0 : _this4.$refs[\"summary-charts-title-\".concat(chartGroupIndex)][0].clientHeight;\n }\n margins = 30;\n iframeStart = '\");\n _window$location$href = window.location.href.split('?'), _window$location$href2 = (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_toArray_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_window$location$href), baseUrl = _window$location$href2[0], params = _window$location$href2.slice(1);\n groupIndexParam = isChartIndexProvided ? \"&chartIndex=\".concat(chartIndex) : '';\n url = \"\".concat(baseUrl, \"#/widget/?\").concat(params.join('?'), \"&chartGroupIndex=\").concat(chartGroupIndex).concat(groupIndexParam);\n iframe = iframeStart + url + iframeEnd;\n if (navigator.clipboard) {\n navigator.clipboard.writeText(iframe);\n } else {\n // Clipboard API is not supported (non-secure origin of neither HTTPS nor localhost)\n textarea = document.createElement('textarea');\n textarea.value = iframe;\n textarea.setAttribute('readonly', '');\n textarea.style.position = 'absolute';\n textarea.style.left = '-9999px';\n document.body.appendChild(textarea);\n textarea.select();\n document.execCommand('copy');\n document.body.removeChild(textarea);\n }\n tooltipId = \"tooltip-\".concat(chartGroupIndex).concat(isChartIndexProvided ? \"-\".concat(chartIndex) : '');\n _this4.updateCopyTooltip(tooltipId, 'Copied iframe');\n case 14:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n }))();\n },\n updateCopyTooltip: function updateCopyTooltip(tooltipId, text) {\n var tooltipElement = document.getElementById(tooltipId);\n if (tooltipElement && tooltipElement.querySelector('.tooltip-text')) {\n var tooltipTextElement = tooltipElement.querySelector('.tooltip-text');\n var originalText = tooltipTextElement.textContent;\n tooltipElement.querySelector('.tooltip-text').textContent = text;\n setTimeout(function () {\n tooltipTextElement.textContent = originalText;\n }, 2000);\n }\n },\n getReportLink: function getReportLink() {\n var url = window.location.href;\n var regexToRemoveWidget = /([?&])((chartIndex|chartGroupIndex)=\\d+)/g;\n return url.replace(regexToRemoveWidget, '');\n },\n getRepo: function getRepo(repo) {\n if (this.isChartGroupWidgetMode && this.isChartWidgetMode) {\n return [repo[this.chartIndex]];\n }\n return repo;\n },\n getBaseTarget: function getBaseTarget(target) {\n if (!target) {\n // Should never reach here - function assumes that target is a child of the div with class 'summary-chart__ramp'\n // eslint-disable-next-line no-console\n console.error('Error: The getBaseTarget function in c-summary-charts.vue has been called on an element that is ' + 'not a child of the div with class summary-chart__ramp. This might affect the drag view functionality.');\n return null;\n }\n return target.className === 'summary-chart__ramp' ? target : this.getBaseTarget(target.parentElement);\n },\n dragViewDown: function dragViewDown(evt) {\n window.deactivateAllOverlays();\n var pos = evt.clientX;\n var ramp = this.getBaseTarget(evt.target);\n if (!ramp || !ramp.parentElement) {\n return;\n }\n this.drags = [pos];\n var base = ramp.offsetWidth;\n var offset = ramp.parentElement.offsetLeft;\n var overlay = ramp.getElementsByClassName('overlay')[0];\n overlay.style.marginLeft = '0';\n overlay.style.width = \"\".concat((pos - offset) * 100 / base, \"%\");\n overlay.className += ' edge';\n },\n dragViewUp: function dragViewUp(evt) {\n window.deactivateAllOverlays();\n var ramp = this.getBaseTarget(evt.target);\n if (!ramp || !ramp.parentElement) {\n return;\n }\n var base = ramp.offsetWidth;\n this.drags.push(evt.clientX);\n this.drags.sort(function (a, b) {\n return a - b;\n });\n var offset = ramp.parentElement.offsetLeft;\n this.drags = this.drags.map(function (x) {\n return (x - offset) * 100 / base;\n });\n var overlay = ramp.getElementsByClassName('overlay')[0];\n overlay.style.marginLeft = \"\".concat(this.drags[0], \"%\");\n overlay.style.width = \"\".concat(this.drags[1] - this.drags[0], \"%\");\n overlay.className += ' show';\n },\n getPercentile: function getPercentile(index) {\n if (this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_31__.FilterGroupSelection.GroupByNone) {\n return (Math.round((index + 1) * 1000 / this.filtered[0].length) / 10).toFixed(1);\n }\n return (Math.round((index + 1) * 1000 / this.filtered.length) / 10).toFixed(1);\n },\n getGroupName: function getGroupName(group) {\n return window.getGroupName(group, this.filterGroupSelection);\n },\n isGroupMerged: function isGroupMerged(groupName) {\n return this.mergedGroups.includes(groupName);\n },\n handleMergeGroup: function handleMergeGroup(groupName) {\n var info = this.mergedGroups;\n info.push(groupName);\n this.$store.commit('updateMergedGroup', info);\n },\n handleExpandGroup: function handleExpandGroup(groupName) {\n var info = this.mergedGroups.filter(function (x) {\n return x !== groupName;\n });\n this.$store.commit('updateMergedGroup', info);\n },\n getAuthorDisplayName: function getAuthorDisplayName(repo) {\n return window.getAuthorDisplayName(repo);\n },\n retrieveSelectedTabHash: function retrieveSelectedTabHash() {\n var hash = window.hashParams;\n if (hash.tabAuthor) {\n this.activeUser = hash.tabAuthor;\n } else if (hash.zA) {\n this.activeUser = hash.zA;\n }\n if (hash.tabRepo) {\n this.activeRepo = hash.tabRepo;\n } else if (hash.zR) {\n this.activeRepo = hash.zR;\n }\n if (hash.isTabOnMergedGroup) {\n if (this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_31__.FilterGroupSelection.GroupByAuthors) {\n this.activeRepo = null;\n } else if (this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_31__.FilterGroupSelection.GroupByRepos) {\n this.activeUser = null;\n }\n this.isTabOnMergedGroup = true;\n }\n if (hash.tabType) {\n this.activeTabType = hash.tabType;\n }\n },\n addSelectedTab: function addSelectedTab(userName, repo, tabType, isMerged) {\n var _this5 = this;\n if (!isMerged || this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_31__.FilterGroupSelection.GroupByAuthors) {\n this.activeUser = userName;\n } else {\n this.activeUser = null;\n }\n if (isMerged && this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_31__.FilterGroupSelection.GroupByAuthors) {\n this.activeRepo = null;\n } else {\n this.activeRepo = repo;\n }\n if (isMerged) {\n window.addHash('isTabOnMergedGroup', 'true');\n this.isTabOnMergedGroup = true;\n } else {\n window.removeHash('isTabOnMergedGroup');\n this.isTabOnMergedGroup = false;\n }\n this.activeTabType = tabType;\n window.encodeHash();\n this.$nextTick(function () {\n return _this5.scrollToActiveRepo();\n });\n },\n removeSelectedTab: function removeSelectedTab() {\n this.activeUser = null;\n this.activeRepo = null;\n this.activeTabType = null;\n window.removeHash('isTabOnMergedGroup');\n window.encodeHash();\n },\n isSelectedTab: function isSelectedTab(userName, repo, tabType, isMerged) {\n if (!isMerged) {\n return this.activeUser === userName && this.activeRepo === repo && this.activeTabType === tabType;\n }\n if (this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_31__.FilterGroupSelection.GroupByAuthors) {\n return this.isTabOnMergedGroup && this.activeUser === userName && this.activeTabType === tabType;\n }\n return this.isTabOnMergedGroup && this.activeRepo === repo && this.activeTabType === tabType;\n },\n isSelectedGroup: function isSelectedGroup(userName, repo) {\n return this.isTabOnMergedGroup && (this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_31__.FilterGroupSelection.GroupByRepos && this.activeRepo === repo || this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_31__.FilterGroupSelection.GroupByAuthors && this.activeUser === userName);\n },\n getPercentileExplanation: function getPercentileExplanation(j) {\n var explanation = \"Based on the current sorting order, this item is in the top \".concat(this.getPercentile(j), \"%\");\n return explanation;\n },\n getAvgContributionSize: function getAvgContributionSize() {\n var totalContribution = 0;\n var totalCommits = 0;\n this.filteredRepos.forEach(function (repo) {\n repo.forEach(function (user) {\n var _user$commits2;\n (_user$commits2 = user.commits) === null || _user$commits2 === void 0 ? void 0 : _user$commits2.forEach(function (commit) {\n totalCommits += 1;\n totalContribution += commit.insertions + commit.deletions;\n });\n });\n });\n return totalContribution / totalCommits;\n },\n scrollToActiveRepo: function scrollToActiveRepo() {\n var chart = document.getElementById('selectedChart');\n if (chart) {\n chart.scrollIntoView({\n block: 'nearest'\n });\n }\n }\n }\n}));\n\n//# sourceURL=webpack://reposense/./src/components/c-summary-charts.vue?./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use%5B1%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js */ \"./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\");\n/* harmony import */ var _home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js */ \"./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js\");\n/* harmony import */ var _home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_toArray_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/toArray.js */ \"./node_modules/@babel/runtime/helpers/esm/toArray.js\");\n/* harmony import */ var _home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js */ \"./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\");\n/* harmony import */ var _home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/objectSpread2.js */ \"./node_modules/@babel/runtime/helpers/esm/objectSpread2.js\");\n/* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.number.constructor.js */ \"./node_modules/core-js/modules/es.number.constructor.js\");\n/* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var core_js_modules_es_array_for_each_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/es.array.for-each.js */ \"./node_modules/core-js/modules/es.array.for-each.js\");\n/* harmony import */ var core_js_modules_es_array_for_each_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_for_each_js__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! core-js/modules/es.object.to-string.js */ \"./node_modules/core-js/modules/es.object.to-string.js\");\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ \"./node_modules/core-js/modules/web.dom-collections.for-each.js\");\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! core-js/modules/es.array.filter.js */ \"./node_modules/core-js/modules/es.array.filter.js\");\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! core-js/modules/es.object.keys.js */ \"./node_modules/core-js/modules/es.object.keys.js\");\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_10__);\n/* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! core-js/modules/es.array.includes.js */ \"./node_modules/core-js/modules/es.array.includes.js\");\n/* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_11__);\n/* harmony import */ var core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! core-js/modules/es.string.includes.js */ \"./node_modules/core-js/modules/es.string.includes.js\");\n/* harmony import */ var core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_12__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_13__);\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! core-js/modules/es.array.concat.js */ \"./node_modules/core-js/modules/es.array.concat.js\");\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_14__);\n/* harmony import */ var core_js_modules_es_array_reduce_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! core-js/modules/es.array.reduce.js */ \"./node_modules/core-js/modules/es.array.reduce.js\");\n/* harmony import */ var core_js_modules_es_array_reduce_js__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_reduce_js__WEBPACK_IMPORTED_MODULE_15__);\n/* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! core-js/modules/es.function.name.js */ \"./node_modules/core-js/modules/es.function.name.js\");\n/* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_16__);\n/* harmony import */ var core_js_modules_es_date_to_string_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! core-js/modules/es.date.to-string.js */ \"./node_modules/core-js/modules/es.date.to-string.js\");\n/* harmony import */ var core_js_modules_es_date_to_string_js__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_date_to_string_js__WEBPACK_IMPORTED_MODULE_17__);\n/* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! core-js/modules/es.array.map.js */ \"./node_modules/core-js/modules/es.array.map.js\");\n/* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_18__);\n/* harmony import */ var core_js_modules_es_json_stringify_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! core-js/modules/es.json.stringify.js */ \"./node_modules/core-js/modules/es.json.stringify.js\");\n/* harmony import */ var core_js_modules_es_json_stringify_js__WEBPACK_IMPORTED_MODULE_19___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_json_stringify_js__WEBPACK_IMPORTED_MODULE_19__);\n/* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! core-js/modules/es.array.slice.js */ \"./node_modules/core-js/modules/es.array.slice.js\");\n/* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_20___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_20__);\n/* harmony import */ var core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! core-js/modules/es.array.join.js */ \"./node_modules/core-js/modules/es.array.join.js\");\n/* harmony import */ var core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_21___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_21__);\n/* harmony import */ var core_js_modules_web_timers_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! core-js/modules/web.timers.js */ \"./node_modules/core-js/modules/web.timers.js\");\n/* harmony import */ var core_js_modules_web_timers_js__WEBPACK_IMPORTED_MODULE_22___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_timers_js__WEBPACK_IMPORTED_MODULE_22__);\n/* harmony import */ var core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! core-js/modules/es.regexp.exec.js */ \"./node_modules/core-js/modules/es.regexp.exec.js\");\n/* harmony import */ var core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_23___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_23__);\n/* harmony import */ var core_js_modules_es_string_replace_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! core-js/modules/es.string.replace.js */ \"./node_modules/core-js/modules/es.string.replace.js\");\n/* harmony import */ var core_js_modules_es_string_replace_js__WEBPACK_IMPORTED_MODULE_24___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_replace_js__WEBPACK_IMPORTED_MODULE_24__);\n/* harmony import */ var core_js_modules_es_array_sort_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! core-js/modules/es.array.sort.js */ \"./node_modules/core-js/modules/es.array.sort.js\");\n/* harmony import */ var core_js_modules_es_array_sort_js__WEBPACK_IMPORTED_MODULE_25___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_sort_js__WEBPACK_IMPORTED_MODULE_25__);\n/* harmony import */ var core_js_modules_es_number_to_fixed_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! core-js/modules/es.number.to-fixed.js */ \"./node_modules/core-js/modules/es.number.to-fixed.js\");\n/* harmony import */ var core_js_modules_es_number_to_fixed_js__WEBPACK_IMPORTED_MODULE_26___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_number_to_fixed_js__WEBPACK_IMPORTED_MODULE_26__);\n/* harmony import */ var core_js_modules_es_set_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! core-js/modules/es.set.js */ \"./node_modules/core-js/modules/es.set.js\");\n/* harmony import */ var core_js_modules_es_set_js__WEBPACK_IMPORTED_MODULE_27___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_set_js__WEBPACK_IMPORTED_MODULE_27__);\n/* harmony import */ var core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! core-js/modules/es.string.iterator.js */ \"./node_modules/core-js/modules/es.string.iterator.js\");\n/* harmony import */ var core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_28___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_28__);\n/* harmony import */ var core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! core-js/modules/web.dom-collections.iterator.js */ \"./node_modules/core-js/modules/web.dom-collections.iterator.js\");\n/* harmony import */ var core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_29___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_29__);\n/* harmony import */ var core_js_modules_es_array_flat_map_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! core-js/modules/es.array.flat-map.js */ \"./node_modules/core-js/modules/es.array.flat-map.js\");\n/* harmony import */ var core_js_modules_es_array_flat_map_js__WEBPACK_IMPORTED_MODULE_30___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_flat_map_js__WEBPACK_IMPORTED_MODULE_30__);\n/* harmony import */ var core_js_modules_es_array_unscopables_flat_map_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! core-js/modules/es.array.unscopables.flat-map.js */ \"./node_modules/core-js/modules/es.array.unscopables.flat-map.js\");\n/* harmony import */ var core_js_modules_es_array_unscopables_flat_map_js__WEBPACK_IMPORTED_MODULE_31___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_unscopables_flat_map_js__WEBPACK_IMPORTED_MODULE_31__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.runtime.esm-bundler.js\");\n/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm-bundler.js\");\n/* harmony import */ var _mixin_brokenLinkMixin__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ../mixin/brokenLinkMixin */ \"./src/mixin/brokenLinkMixin.ts\");\n/* harmony import */ var _mixin_dynamicTooltipMixin__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! ../mixin/dynamicTooltipMixin */ \"./src/mixin/dynamicTooltipMixin.ts\");\n/* harmony import */ var _c_ramp_vue__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! ./c-ramp.vue */ \"./src/components/c-ramp.vue\");\n/* harmony import */ var _c_stacked_bar_chart_vue__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(/*! ./c-stacked-bar-chart.vue */ \"./src/components/c-stacked-bar-chart.vue\");\n/* harmony import */ var _types_summary__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! ../types/summary */ \"./src/types/summary.ts\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,vue__WEBPACK_IMPORTED_MODULE_32__.defineComponent)({\n name: 'c-summary-charts',\n components: {\n cRamp: _c_ramp_vue__WEBPACK_IMPORTED_MODULE_35__[\"default\"],\n cStackedBarChart: _c_stacked_bar_chart_vue__WEBPACK_IMPORTED_MODULE_36__[\"default\"]\n },\n mixins: [_mixin_brokenLinkMixin__WEBPACK_IMPORTED_MODULE_33__[\"default\"], _mixin_dynamicTooltipMixin__WEBPACK_IMPORTED_MODULE_34__[\"default\"]],\n props: {\n checkedFileTypes: {\n type: Array,\n required: true\n },\n filtered: {\n type: Array,\n required: true\n },\n avgContributionSize: {\n type: Number,\n required: true\n },\n filterBreakdown: {\n type: Boolean,\n \"default\": false\n },\n filterGroupSelection: {\n type: String,\n \"default\": _types_summary__WEBPACK_IMPORTED_MODULE_37__.FilterGroupSelection.GroupByRepos\n },\n filterTimeFrame: {\n type: String,\n \"default\": _types_summary__WEBPACK_IMPORTED_MODULE_37__.FilterTimeFrame.Commit\n },\n filterSinceDate: {\n type: String,\n required: true\n },\n filterUntilDate: {\n type: String,\n required: true\n },\n isMergeGroup: {\n type: Boolean,\n \"default\": false\n },\n minDate: {\n type: String,\n required: true\n },\n maxDate: {\n type: String,\n required: true\n },\n filterSearch: {\n type: String,\n \"default\": ''\n },\n sortGroupSelection: {\n type: String,\n \"default\": _types_summary__WEBPACK_IMPORTED_MODULE_37__.SortGroupSelection.GroupTitle\n },\n chartGroupIndex: {\n type: Number,\n \"default\": undefined\n },\n chartIndex: {\n type: Number,\n \"default\": undefined\n },\n viewRepoTags: {\n type: Boolean,\n \"default\": false\n }\n },\n data: function data() {\n return {\n drags: [],\n activeRepo: null,\n activeUser: null,\n activeTabType: null,\n isTabOnMergedGroup: false\n };\n },\n computed: (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])({\n avgCommitSize: function avgCommitSize() {\n var totalCommits = 0;\n var totalCount = 0;\n this.filteredRepos.forEach(function (repo) {\n repo.forEach(function (user) {\n var _user$commits;\n (_user$commits = user.commits) === null || _user$commits === void 0 ? void 0 : _user$commits.forEach(function (slice) {\n if (slice.insertions > 0) {\n totalCount += 1;\n totalCommits += slice.insertions;\n }\n });\n });\n });\n return totalCommits / totalCount;\n },\n filteredRepos: function filteredRepos() {\n var repos = this.filtered.filter(function (repo) {\n return repo.length > 0;\n });\n if (this.isChartGroupWidgetMode && this.chartGroupIndex < repos.length) {\n return [repos[this.chartGroupIndex]];\n }\n return repos;\n },\n isChartGroupWidgetMode: function isChartGroupWidgetMode() {\n return this.chartGroupIndex !== undefined && this.chartGroupIndex >= 0;\n },\n isChartWidgetMode: function isChartWidgetMode() {\n return this.chartIndex !== undefined && this.chartIndex >= 0 && this.isChartGroupWidgetMode;\n },\n isViewingTagsByRepo: function isViewingTagsByRepo() {\n return this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_37__.FilterGroupSelection.GroupByRepos && this.viewRepoTags;\n },\n isViewingTagsByAuthor: function isViewingTagsByAuthor() {\n return (this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_37__.FilterGroupSelection.GroupByAuthors || this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_37__.FilterGroupSelection.GroupByNone) && this.viewRepoTags;\n }\n }, (0,vuex__WEBPACK_IMPORTED_MODULE_38__.mapState)({\n mergedGroups: function mergedGroups(state) {\n return state.mergedGroups;\n },\n fileTypeColors: function fileTypeColors(state) {\n return state.fileTypeColors;\n }\n })),\n watch: {\n '$store.state.isTabActive': function $storeStateIsTabActive() {\n if (!this.$store.state.isTabActive) {\n this.removeSelectedTab();\n }\n },\n // watching so highlighted only when summary charts are rendered\n filteredRepos: function filteredRepos() {\n var _this = this;\n this.$nextTick(function () {\n if (_this.activeRepo !== null && _this.activeUser !== null) {\n _this.scrollToActiveRepo();\n }\n });\n }\n },\n created: function created() {\n this.retrieveSelectedTabHash();\n },\n methods: {\n getFileTypeContributionBars: function getFileTypeContributionBars(fileTypeContribution, checkedFileTypeContribution) {\n var _this2 = this;\n var currentBarWidth = 0;\n var fullBarWidth = 100;\n var contributionPerFullBar = this.avgContributionSize * 2;\n var allFileTypesContributionBars = [];\n if (contributionPerFullBar === 0) {\n return allFileTypesContributionBars;\n }\n Object.keys(fileTypeContribution).filter(function (fileType) {\n return _this2.checkedFileTypes.includes(fileType);\n }).forEach(function (fileType) {\n var contribution = fileTypeContribution[fileType];\n var barWidth = contribution / contributionPerFullBar * fullBarWidth;\n var contributionBars = [];\n // if contribution bar for file type is able to fit on the current line\n if (currentBarWidth + barWidth < fullBarWidth) {\n contributionBars.push(barWidth);\n currentBarWidth += barWidth;\n } else {\n // take up all the space left on the current line\n contributionBars.push(fullBarWidth - currentBarWidth);\n barWidth -= fullBarWidth - currentBarWidth;\n // additional bar width will start on a new line\n var numOfFullBars = Math.floor(barWidth / fullBarWidth);\n for (var i = 0; i < numOfFullBars; i += 1) {\n contributionBars.push(fullBarWidth);\n }\n var remainingBarWidth = barWidth % fullBarWidth;\n if (remainingBarWidth > 0) {\n contributionBars.push(remainingBarWidth);\n }\n currentBarWidth = remainingBarWidth;\n }\n contributionBars.forEach(function (width) {\n allFileTypesContributionBars.push({\n width: width,\n color: _this2.fileTypeColors[fileType],\n tooltipText: \"\".concat(fileType, \": \").concat(fileTypeContribution[fileType], \" lines, total: \").concat(checkedFileTypeContribution, \" lines (contribution from \").concat(_this2.minDate, \" to\\n \").concat(_this2.maxDate, \")\")\n });\n });\n });\n return allFileTypesContributionBars;\n },\n getFileTypes: function getFileTypes(repo) {\n var _this3 = this;\n var fileTypes = [];\n repo.forEach(function (user) {\n Object.keys(user.fileTypeContribution).forEach(function (fileType) {\n if (_this3.checkedFileTypes.includes(fileType) && !fileTypes.includes(fileType)) {\n fileTypes.push(fileType);\n }\n });\n });\n return fileTypes;\n },\n getGroupTotalContribution: function getGroupTotalContribution(group) {\n return group.reduce(function (acc, ele) {\n var _ele$checkedFileTypeC;\n return acc + ((_ele$checkedFileTypeC = ele.checkedFileTypeContribution) !== null && _ele$checkedFileTypeC !== void 0 ? _ele$checkedFileTypeC : 0);\n }, 0);\n },\n getContributionBars: function getContributionBars(totalContribution) {\n var res = [];\n var contributionLimit = this.avgContributionSize * 2;\n if (contributionLimit === 0) {\n return res;\n }\n var cnt = Math.floor(totalContribution / contributionLimit);\n for (var cntId = 0; cntId < cnt; cntId += 1) {\n res.push({\n width: 100\n });\n }\n var last = totalContribution % contributionLimit / contributionLimit;\n if (last !== 0) {\n res.push({\n width: last * 100\n });\n }\n return res;\n },\n getAuthorProfileLink: function getAuthorProfileLink(repo, userName) {\n return window.getAuthorLink(repo.repoId, userName);\n },\n getGroupRepoLinkMessage: function getGroupRepoLinkMessage(repo) {\n return this.getLinkMessage(this.getRepoLink(repo), 'Click to view group\\'s repo');\n },\n getAuthorProfileLinkMessage: function getAuthorProfileLinkMessage(repo) {\n return this.getLinkMessage(this.getAuthorProfileLink(repo, repo.name), 'Click to view author\\'s profile');\n },\n getRepoLinkMessage: function getRepoLinkMessage(repo) {\n return this.getLinkMessage(this.getRepoLink(repo), 'Click to view repo');\n },\n getRepoLink: function getRepoLink(repo) {\n var _window = window,\n REPOS = _window.REPOS;\n var _REPOS$repo$repoId = REPOS[repo.repoId],\n location = _REPOS$repo$repoId.location,\n branch = _REPOS$repo$repoId.branch;\n if (Object.prototype.hasOwnProperty.call(location, 'organization')) {\n return window.getBranchLink(repo.repoId, branch);\n }\n this.removeSelectedTab();\n return repo.location;\n },\n getRepoIcon: function getRepoIcon(repo) {\n var domainName = window.REPOS[repo.repoId].location.domainName;\n switch (domainName) {\n case 'github':\n return ['fab', 'github'];\n case 'gitlab':\n return ['fab', 'gitlab'];\n case 'bitbucket':\n return ['fab', 'bitbucket'];\n default:\n return ['fas', 'database'];\n }\n },\n getTagLink: function getTagLink(repo, tag) {\n return window.filterUnsupported(\"\".concat(window.getRepoLinkUnfiltered(repo.repoId), \"releases/tag/\").concat(tag));\n },\n // triggering opening of tabs //\n openTabAuthorship: function openTabAuthorship(user, repo, index, isMerged) {\n var minDate = this.minDate,\n maxDate = this.maxDate,\n checkedFileTypes = this.checkedFileTypes;\n var info = {\n minDate: minDate,\n maxDate: maxDate,\n checkedFileTypes: checkedFileTypes,\n author: user.name,\n repo: user.repoName,\n name: user.displayName,\n isMergeGroup: isMerged,\n location: this.getRepoLink(repo[index]),\n files: []\n };\n this.addSelectedTab(user.name, user.repoName, 'authorship', isMerged);\n this.$store.commit('updateTabAuthorshipInfo', info);\n },\n openTabZoomSubrange: function openTabZoomSubrange(user, evt, isMerged) {\n var isKeyPressed = window.isMacintosh ? evt.metaKey : evt.ctrlKey;\n if (isKeyPressed) {\n if (this.drags.length === 0) {\n this.dragViewDown(evt);\n } else {\n this.dragViewUp(evt);\n }\n }\n // skip if accidentally clicked on ramp chart\n if (this.drags.length === 2 && this.drags[1] - this.drags[0]) {\n // additional day was added to include the date represented by filterUntilDate\n var tdiff = new Date(this.filterUntilDate).valueOf() - new Date(this.filterSinceDate).valueOf() + window.DAY_IN_MS;\n var idxs = this.drags.map(function (x) {\n return x * tdiff / 100;\n });\n var tsince = window.getDateStr(new Date(this.filterSinceDate).getTime() + idxs[0]);\n var tuntil = window.getDateStr(new Date(this.filterSinceDate).getTime() + idxs[1]);\n this.drags = [];\n this.openTabZoom(user, tsince, tuntil, isMerged);\n }\n },\n openTabZoom: function openTabZoom(user, since, until, isMerged) {\n var avgCommitSize = this.avgCommitSize,\n filterGroupSelection = this.filterGroupSelection,\n filterTimeFrame = this.filterTimeFrame,\n filterSearch = this.filterSearch;\n // Deep copy to ensure changes in zoom (e.g. toggle state) won't affect summary, and vice versa\n var clonedUser = JSON.parse(JSON.stringify(user));\n var info = {\n zRepo: user.repoName,\n zAuthor: user.name,\n zFilterGroup: filterGroupSelection,\n zTimeFrame: filterTimeFrame,\n zAvgCommitSize: avgCommitSize,\n zUser: clonedUser,\n zLocation: this.getRepoLink(user),\n zSince: since,\n zUntil: until,\n zIsMerged: isMerged,\n zFileTypeColors: this.fileTypeColors,\n zFromRamp: false,\n zFilterSearch: filterSearch,\n zAvgContributionSize: this.getAvgContributionSize()\n };\n this.addSelectedTab(user.name, user.repoName, 'zoom', isMerged);\n this.$store.commit('updateTabZoomInfo', info);\n },\n getEmbeddedIframe: function getEmbeddedIframe(chartGroupIndex) {\n var _arguments = arguments,\n _this4 = this;\n return (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])( /*#__PURE__*/(0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])().mark(function _callee() {\n var chartIndex, isChartIndexProvided, totalChartHeight, margins, iframeStart, iframeEnd, _window$location$href, _window$location$href2, baseUrl, params, groupIndexParam, url, iframe, textarea, tooltipId;\n return (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n chartIndex = _arguments.length > 1 && _arguments[1] !== undefined ? _arguments[1] : -1;\n isChartIndexProvided = chartIndex !== -1; // Set height of iframe according to number of charts to avoid scrolling\n totalChartHeight = 0;\n if (!isChartIndexProvided) {\n totalChartHeight += _this4.$refs[\"summary-charts-\".concat(chartGroupIndex)][0].clientHeight;\n } else {\n totalChartHeight += _this4.$refs[\"summary-chart-\".concat(chartIndex)][0].clientHeight;\n totalChartHeight += _this4.filterGroupSelection === 'groupByNone' ? 0 : _this4.$refs[\"summary-charts-title-\".concat(chartGroupIndex)][0].clientHeight;\n }\n margins = 30;\n iframeStart = '\");\n _window$location$href = window.location.href.split('?'), _window$location$href2 = (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_toArray_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_window$location$href), baseUrl = _window$location$href2[0], params = _window$location$href2.slice(1);\n groupIndexParam = isChartIndexProvided ? \"&chartIndex=\".concat(chartIndex) : '';\n url = \"\".concat(baseUrl, \"#/widget/?\").concat(params.join('?'), \"&chartGroupIndex=\").concat(chartGroupIndex).concat(groupIndexParam);\n iframe = iframeStart + url + iframeEnd;\n if (navigator.clipboard) {\n navigator.clipboard.writeText(iframe);\n } else {\n // Clipboard API is not supported (non-secure origin of neither HTTPS nor localhost)\n textarea = document.createElement('textarea');\n textarea.value = iframe;\n textarea.setAttribute('readonly', '');\n textarea.style.position = 'absolute';\n textarea.style.left = '-9999px';\n document.body.appendChild(textarea);\n textarea.select();\n document.execCommand('copy');\n document.body.removeChild(textarea);\n }\n tooltipId = \"tooltip-\".concat(chartGroupIndex).concat(isChartIndexProvided ? \"-\".concat(chartIndex) : '');\n _this4.updateCopyTooltip(tooltipId, 'Copied iframe');\n case 14:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n }))();\n },\n updateCopyTooltip: function updateCopyTooltip(tooltipId, text) {\n var tooltipElement = document.getElementById(tooltipId);\n if (tooltipElement && tooltipElement.querySelector('.tooltip-text')) {\n var tooltipTextElement = tooltipElement.querySelector('.tooltip-text');\n var originalText = tooltipTextElement.textContent;\n tooltipElement.querySelector('.tooltip-text').textContent = text;\n setTimeout(function () {\n tooltipTextElement.textContent = originalText;\n }, 2000);\n }\n },\n getReportLink: function getReportLink() {\n var url = window.location.href;\n var regexToRemoveWidget = /([?&])((chartIndex|chartGroupIndex)=\\d+)/g;\n return url.replace(regexToRemoveWidget, '');\n },\n getRepo: function getRepo(repo) {\n if (this.isChartGroupWidgetMode && this.isChartWidgetMode) {\n return [repo[this.chartIndex]];\n }\n return repo;\n },\n getBaseTarget: function getBaseTarget(target) {\n if (!target) {\n // Should never reach here - function assumes that target is a child of the div with class 'summary-chart__ramp'\n // eslint-disable-next-line no-console\n console.error('Error: The getBaseTarget function in c-summary-charts.vue has been called on an element that is ' + 'not a child of the div with class summary-chart__ramp. This might affect the drag view functionality.');\n return null;\n }\n return target.className === 'summary-chart__ramp' ? target : this.getBaseTarget(target.parentElement);\n },\n dragViewDown: function dragViewDown(evt) {\n window.deactivateAllOverlays();\n var pos = evt.clientX;\n var ramp = this.getBaseTarget(evt.target);\n if (!ramp || !ramp.parentElement) {\n return;\n }\n this.drags = [pos];\n var base = ramp.offsetWidth;\n var offset = ramp.parentElement.offsetLeft;\n var overlay = ramp.getElementsByClassName('overlay')[0];\n overlay.style.marginLeft = '0';\n overlay.style.width = \"\".concat((pos - offset) * 100 / base, \"%\");\n overlay.className += ' edge';\n },\n dragViewUp: function dragViewUp(evt) {\n window.deactivateAllOverlays();\n var ramp = this.getBaseTarget(evt.target);\n if (!ramp || !ramp.parentElement) {\n return;\n }\n var base = ramp.offsetWidth;\n this.drags.push(evt.clientX);\n this.drags.sort(function (a, b) {\n return a - b;\n });\n var offset = ramp.parentElement.offsetLeft;\n this.drags = this.drags.map(function (x) {\n return (x - offset) * 100 / base;\n });\n var overlay = ramp.getElementsByClassName('overlay')[0];\n overlay.style.marginLeft = \"\".concat(this.drags[0], \"%\");\n overlay.style.width = \"\".concat(this.drags[1] - this.drags[0], \"%\");\n overlay.className += ' show';\n },\n getPercentile: function getPercentile(index) {\n if (this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_37__.FilterGroupSelection.GroupByNone) {\n return (Math.round((index + 1) * 1000 / this.filtered[0].length) / 10).toFixed(1);\n }\n return (Math.round((index + 1) * 1000 / this.filtered.length) / 10).toFixed(1);\n },\n getGroupName: function getGroupName(group) {\n return window.getGroupName(group, this.filterGroupSelection);\n },\n isGroupMerged: function isGroupMerged(groupName) {\n return this.mergedGroups.includes(groupName);\n },\n handleMergeGroup: function handleMergeGroup(groupName) {\n var info = this.mergedGroups;\n info.push(groupName);\n this.$store.commit('updateMergedGroup', info);\n },\n handleExpandGroup: function handleExpandGroup(groupName) {\n var info = this.mergedGroups.filter(function (x) {\n return x !== groupName;\n });\n this.$store.commit('updateMergedGroup', info);\n },\n getAuthorDisplayName: function getAuthorDisplayName(repo) {\n return window.getAuthorDisplayName(repo);\n },\n retrieveSelectedTabHash: function retrieveSelectedTabHash() {\n var hash = window.hashParams;\n if (hash.tabAuthor) {\n this.activeUser = hash.tabAuthor;\n } else if (hash.zA) {\n this.activeUser = hash.zA;\n }\n if (hash.tabRepo) {\n this.activeRepo = hash.tabRepo;\n } else if (hash.zR) {\n this.activeRepo = hash.zR;\n }\n if (hash.isTabOnMergedGroup) {\n if (this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_37__.FilterGroupSelection.GroupByAuthors) {\n this.activeRepo = null;\n } else if (this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_37__.FilterGroupSelection.GroupByRepos) {\n this.activeUser = null;\n }\n this.isTabOnMergedGroup = true;\n }\n if (hash.tabType) {\n this.activeTabType = hash.tabType;\n }\n },\n addSelectedTab: function addSelectedTab(userName, repo, tabType, isMerged) {\n var _this5 = this;\n if (!isMerged || this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_37__.FilterGroupSelection.GroupByAuthors) {\n this.activeUser = userName;\n } else {\n this.activeUser = null;\n }\n if (isMerged && this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_37__.FilterGroupSelection.GroupByAuthors) {\n this.activeRepo = null;\n } else {\n this.activeRepo = repo;\n }\n if (isMerged) {\n window.addHash('isTabOnMergedGroup', 'true');\n this.isTabOnMergedGroup = true;\n } else {\n window.removeHash('isTabOnMergedGroup');\n this.isTabOnMergedGroup = false;\n }\n this.activeTabType = tabType;\n window.encodeHash();\n this.$nextTick(function () {\n return _this5.scrollToActiveRepo();\n });\n },\n removeSelectedTab: function removeSelectedTab() {\n this.activeUser = null;\n this.activeRepo = null;\n this.activeTabType = null;\n window.removeHash('isTabOnMergedGroup');\n window.encodeHash();\n },\n isSelectedTab: function isSelectedTab(userName, repo, tabType, isMerged) {\n if (!isMerged) {\n return this.activeUser === userName && this.activeRepo === repo && this.activeTabType === tabType;\n }\n if (this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_37__.FilterGroupSelection.GroupByAuthors) {\n return this.isTabOnMergedGroup && this.activeUser === userName && this.activeTabType === tabType;\n }\n return this.isTabOnMergedGroup && this.activeRepo === repo && this.activeTabType === tabType;\n },\n isSelectedGroup: function isSelectedGroup(userName, repo) {\n return this.isTabOnMergedGroup && (this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_37__.FilterGroupSelection.GroupByRepos && this.activeRepo === repo || this.filterGroupSelection === _types_summary__WEBPACK_IMPORTED_MODULE_37__.FilterGroupSelection.GroupByAuthors && this.activeUser === userName);\n },\n getPercentileExplanation: function getPercentileExplanation(j) {\n var explanation = \"Based on the current sorting order, this item is in the top \".concat(this.getPercentile(j), \"%\");\n return explanation;\n },\n getAvgContributionSize: function getAvgContributionSize() {\n var totalContribution = 0;\n var totalCommits = 0;\n this.filteredRepos.forEach(function (repo) {\n repo.forEach(function (user) {\n var _user$commits2;\n (_user$commits2 = user.commits) === null || _user$commits2 === void 0 ? void 0 : _user$commits2.forEach(function (commit) {\n totalCommits += 1;\n totalContribution += commit.insertions + commit.deletions;\n });\n });\n });\n return totalContribution / totalCommits;\n },\n scrollToActiveRepo: function scrollToActiveRepo() {\n var chart = document.getElementById('selectedChart');\n if (chart) {\n chart.scrollIntoView({\n block: 'nearest'\n });\n }\n },\n getTags: function getTags(repo, user) {\n if (user) repo = repo.filter(function (r) {\n return r.name === user.name;\n });\n return (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(new Set(repo.flatMap(function (r) {\n return r.commits;\n }).flatMap(function (c) {\n return c.commitResults;\n }).flatMap(function (r) {\n return r.tags;\n }))).filter(Boolean);\n }\n }\n}));\n\n//# sourceURL=webpack://reposense/./src/components/c-summary-charts.vue?./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use%5B1%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -159,7 +159,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n/* harmony import */ var _home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js */ \"./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js\");\n/* harmony import */ var _home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js */ \"./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\");\n/* harmony import */ var _home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/objectSpread2.js */ \"./node_modules/@babel/runtime/helpers/esm/objectSpread2.js\");\n/* harmony import */ var core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.regexp.exec.js */ \"./node_modules/core-js/modules/es.regexp.exec.js\");\n/* harmony import */ var core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var core_js_modules_es_regexp_test_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.regexp.test.js */ \"./node_modules/core-js/modules/es.regexp.test.js\");\n/* harmony import */ var core_js_modules_es_regexp_test_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_regexp_test_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var core_js_modules_es_array_for_each_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/es.array.for-each.js */ \"./node_modules/core-js/modules/es.array.for-each.js\");\n/* harmony import */ var core_js_modules_es_array_for_each_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_for_each_js__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! core-js/modules/es.object.to-string.js */ \"./node_modules/core-js/modules/es.object.to-string.js\");\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ \"./node_modules/core-js/modules/web.dom-collections.for-each.js\");\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var core_js_modules_web_timers_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! core-js/modules/web.timers.js */ \"./node_modules/core-js/modules/web.timers.js\");\n/* harmony import */ var core_js_modules_web_timers_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_timers_js__WEBPACK_IMPORTED_MODULE_10__);\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! core-js/modules/es.array.concat.js */ \"./node_modules/core-js/modules/es.array.concat.js\");\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_11__);\n/* harmony import */ var core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! core-js/modules/es.array.join.js */ \"./node_modules/core-js/modules/es.array.join.js\");\n/* harmony import */ var core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_12__);\n/* harmony import */ var core_js_modules_es_string_search_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! core-js/modules/es.string.search.js */ \"./node_modules/core-js/modules/es.string.search.js\");\n/* harmony import */ var core_js_modules_es_string_search_js__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_search_js__WEBPACK_IMPORTED_MODULE_13__);\n/* harmony import */ var core_js_modules_es_array_sort_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! core-js/modules/es.array.sort.js */ \"./node_modules/core-js/modules/es.array.sort.js\");\n/* harmony import */ var core_js_modules_es_array_sort_js__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_sort_js__WEBPACK_IMPORTED_MODULE_14__);\n/* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! core-js/modules/es.array.includes.js */ \"./node_modules/core-js/modules/es.array.includes.js\");\n/* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_15__);\n/* harmony import */ var core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! core-js/modules/es.string.includes.js */ \"./node_modules/core-js/modules/es.string.includes.js\");\n/* harmony import */ var core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_16__);\n/* harmony import */ var core_js_modules_es_object_values_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! core-js/modules/es.object.values.js */ \"./node_modules/core-js/modules/es.object.values.js\");\n/* harmony import */ var core_js_modules_es_object_values_js__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_values_js__WEBPACK_IMPORTED_MODULE_17__);\n/* harmony import */ var core_js_modules_es_string_split_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! core-js/modules/es.string.split.js */ \"./node_modules/core-js/modules/es.string.split.js\");\n/* harmony import */ var core_js_modules_es_string_split_js__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_split_js__WEBPACK_IMPORTED_MODULE_18__);\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! core-js/modules/es.array.filter.js */ \"./node_modules/core-js/modules/es.array.filter.js\");\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_19___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_19__);\n/* harmony import */ var core_js_modules_es_parse_int_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! core-js/modules/es.parse-int.js */ \"./node_modules/core-js/modules/es.parse-int.js\");\n/* harmony import */ var core_js_modules_es_parse_int_js__WEBPACK_IMPORTED_MODULE_20___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_parse_int_js__WEBPACK_IMPORTED_MODULE_20__);\n/* harmony import */ var core_js_modules_es_array_some_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! core-js/modules/es.array.some.js */ \"./node_modules/core-js/modules/es.array.some.js\");\n/* harmony import */ var core_js_modules_es_array_some_js__WEBPACK_IMPORTED_MODULE_21___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_some_js__WEBPACK_IMPORTED_MODULE_21__);\n/* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! core-js/modules/es.array.slice.js */ \"./node_modules/core-js/modules/es.array.slice.js\");\n/* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_22___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_22__);\n/* harmony import */ var core_js_modules_es_json_stringify_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! core-js/modules/es.json.stringify.js */ \"./node_modules/core-js/modules/es.json.stringify.js\");\n/* harmony import */ var core_js_modules_es_json_stringify_js__WEBPACK_IMPORTED_MODULE_23___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_json_stringify_js__WEBPACK_IMPORTED_MODULE_23__);\n/* harmony import */ var core_js_modules_es_string_starts_with_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! core-js/modules/es.string.starts-with.js */ \"./node_modules/core-js/modules/es.string.starts-with.js\");\n/* harmony import */ var core_js_modules_es_string_starts_with_js__WEBPACK_IMPORTED_MODULE_24___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_starts_with_js__WEBPACK_IMPORTED_MODULE_24__);\n/* harmony import */ var core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! core-js/modules/es.object.entries.js */ \"./node_modules/core-js/modules/es.object.entries.js\");\n/* harmony import */ var core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_25___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_25__);\n/* harmony import */ var core_js_modules_es_array_flat_map_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! core-js/modules/es.array.flat-map.js */ \"./node_modules/core-js/modules/es.array.flat-map.js\");\n/* harmony import */ var core_js_modules_es_array_flat_map_js__WEBPACK_IMPORTED_MODULE_26___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_flat_map_js__WEBPACK_IMPORTED_MODULE_26__);\n/* harmony import */ var core_js_modules_es_array_unscopables_flat_map_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! core-js/modules/es.array.unscopables.flat-map.js */ \"./node_modules/core-js/modules/es.array.unscopables.flat-map.js\");\n/* harmony import */ var core_js_modules_es_array_unscopables_flat_map_js__WEBPACK_IMPORTED_MODULE_27___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_unscopables_flat_map_js__WEBPACK_IMPORTED_MODULE_27__);\n/* harmony import */ var core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! core-js/modules/es.array.find.js */ \"./node_modules/core-js/modules/es.array.find.js\");\n/* harmony import */ var core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_28___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_28__);\n/* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! core-js/modules/es.function.name.js */ \"./node_modules/core-js/modules/es.function.name.js\");\n/* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_29___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_29__);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! core-js/modules/es.object.keys.js */ \"./node_modules/core-js/modules/es.object.keys.js\");\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_30___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_30__);\n/* harmony import */ var core_js_modules_es_date_to_string_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! core-js/modules/es.date.to-string.js */ \"./node_modules/core-js/modules/es.date.to-string.js\");\n/* harmony import */ var core_js_modules_es_date_to_string_js__WEBPACK_IMPORTED_MODULE_31___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_date_to_string_js__WEBPACK_IMPORTED_MODULE_31__);\n/* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! core-js/modules/es.array.map.js */ \"./node_modules/core-js/modules/es.array.map.js\");\n/* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_32___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_32__);\n/* harmony import */ var core_js_modules_es_array_reduce_js__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! core-js/modules/es.array.reduce.js */ \"./node_modules/core-js/modules/es.array.reduce.js\");\n/* harmony import */ var core_js_modules_es_array_reduce_js__WEBPACK_IMPORTED_MODULE_33___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_reduce_js__WEBPACK_IMPORTED_MODULE_33__);\n/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm-bundler.js\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.runtime.esm-bundler.js\");\n/* harmony import */ var _components_c_summary_charts_vue__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! ../components/c-summary-charts.vue */ \"./src/components/c-summary-charts.vue\");\n/* harmony import */ var _components_c_file_type_checkboxes_vue__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(/*! ../components/c-file-type-checkboxes.vue */ \"./src/components/c-file-type-checkboxes.vue\");\n/* harmony import */ var _utils_random_color_generator__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! ../utils/random-color-generator */ \"./src/utils/random-color-generator.ts\");\n/* harmony import */ var _utils_repo_sorter__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(/*! ../utils/repo-sorter */ \"./src/utils/repo-sorter.ts\");\n/* harmony import */ var _types_types__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(/*! ../types/types */ \"./src/types/types.ts\");\n/* harmony import */ var _types_summary__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(/*! ../types/summary */ \"./src/types/summary.ts\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar dateFormatRegex = /([12]\\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01]))$/;\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,vue__WEBPACK_IMPORTED_MODULE_34__.defineComponent)({\n name: 'c-summary',\n components: {\n cSummaryCharts: _components_c_summary_charts_vue__WEBPACK_IMPORTED_MODULE_35__[\"default\"],\n cFileTypeCheckboxes: _components_c_file_type_checkboxes_vue__WEBPACK_IMPORTED_MODULE_36__[\"default\"]\n },\n props: {\n repos: {\n type: Array,\n required: true\n },\n errorMessages: {\n type: Object,\n \"default\": function _default() {\n return {};\n }\n },\n isWidgetMode: {\n type: Boolean,\n \"default\": false\n }\n },\n data: function data() {\n return {\n checkedFileTypes: [],\n fileTypes: [],\n filtered: [],\n filterSearch: '',\n filterGroupSelection: _types_summary__WEBPACK_IMPORTED_MODULE_40__.FilterGroupSelection.GroupByRepos,\n sortGroupSelection: _types_summary__WEBPACK_IMPORTED_MODULE_40__.SortGroupSelection.GroupTitleDsc,\n sortWithinGroupSelection: _types_summary__WEBPACK_IMPORTED_MODULE_40__.SortWithinGroupSelection.Title,\n sortingOption: '',\n isSortingDsc: '',\n sortingWithinOption: '',\n isSortingWithinDsc: '',\n filterTimeFrame: _types_summary__WEBPACK_IMPORTED_MODULE_40__.FilterTimeFrame.Commit,\n filterBreakdown: false,\n tmpFilterSinceDate: '',\n tmpFilterUntilDate: '',\n hasModifiedSinceDate: window.isSinceDateProvided,\n hasModifiedUntilDate: window.isUntilDateProvided,\n filterHash: '',\n minDate: window.sinceDate,\n maxDate: window.untilDate,\n fileTypeColors: {},\n isSafariBrowser: /.*Version.*Safari.*/.test(navigator.userAgent),\n filterGroupSelectionWatcherFlag: false,\n chartGroupIndex: undefined,\n chartIndex: undefined,\n errorIsShowingMore: false,\n numberOfErrorMessagesToShow: 4\n };\n },\n computed: (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])({\n avgContributionSize: function avgContributionSize() {\n var _this = this;\n var totalLines = 0;\n var totalCount = 0;\n this.repos.forEach(function (repo) {\n var _repo$users;\n (_repo$users = repo.users) === null || _repo$users === void 0 ? void 0 : _repo$users.forEach(function (user) {\n if (user.checkedFileTypeContribution === undefined || user.checkedFileTypeContribution === 0) {\n _this.updateCheckedFileTypeContribution(user);\n }\n if (user.checkedFileTypeContribution && user.checkedFileTypeContribution > 0) {\n totalCount += 1;\n totalLines += user.checkedFileTypeContribution;\n }\n });\n });\n if (totalCount === 0) {\n return 0;\n }\n return totalLines / totalCount;\n },\n allGroupsMerged: {\n get: function get() {\n if (this.mergedGroups.length === 0) {\n return false;\n }\n return this.mergedGroups.length === this.filtered.length;\n },\n set: function set(value) {\n var _this2 = this;\n if (value) {\n var mergedGroups = [];\n this.filtered.forEach(function (group) {\n mergedGroups.push(_this2.getGroupName(group));\n });\n this.filtered = [];\n this.$store.commit('updateMergedGroup', mergedGroups);\n } else {\n this.$store.commit('updateMergedGroup', []);\n }\n }\n },\n filterSinceDate: function filterSinceDate() {\n if (this.tmpFilterSinceDate && this.tmpFilterSinceDate >= this.minDate) {\n return this.tmpFilterSinceDate;\n }\n // If user clears the since date field\n return this.minDate;\n },\n filterUntilDate: function filterUntilDate() {\n if (this.tmpFilterUntilDate && this.tmpFilterUntilDate <= this.maxDate) {\n return this.tmpFilterUntilDate;\n }\n return this.maxDate;\n }\n }, (0,vuex__WEBPACK_IMPORTED_MODULE_41__.mapState)(['mergedGroups'])),\n watch: {\n filterGroupSelection: function filterGroupSelection() {\n var _this3 = this;\n // Deactivates watcher\n if (!this.filterGroupSelectionWatcherFlag) {\n return;\n }\n var allGroupsMerged = this.allGroupsMerged;\n this.$store.dispatch('incrementLoadingOverlayCountForceReload', 1).then(function () {\n _this3.getFilteredRepos();\n _this3.updateMergedGroup(allGroupsMerged);\n }).then( /*#__PURE__*/(0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])( /*#__PURE__*/(0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])().mark(function _callee() {\n return (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return _this3.$store.dispatch('incrementLoadingOverlayCountForceReload', -1);\n case 2:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n })));\n },\n '$store.state.summaryDates': function $storeStateSummaryDates() {\n this.hasModifiedSinceDate = true;\n this.hasModifiedUntilDate = true;\n this.tmpFilterSinceDate = this.$store.state.summaryDates.since;\n this.tmpFilterUntilDate = this.$store.state.summaryDates.until;\n window.deactivateAllOverlays();\n this.getFiltered();\n },\n mergedGroups: {\n deep: true,\n handler: function handler() {\n this.getFiltered();\n }\n }\n },\n created: function created() {\n this.processFileTypes();\n this.renderFilterHash();\n this.getFiltered();\n if (this.$store.state.tabZoomInfo.isRefreshing) {\n var zoomInfo = Object.assign({}, this.$store.state.tabZoomInfo);\n this.restoreZoomFiltered(zoomInfo);\n }\n },\n mounted: function mounted() {\n var _this4 = this;\n // Delay execution of filterGroupSelection watcher\n // to prevent clearing of merged groups\n setTimeout(function () {\n _this4.filterGroupSelectionWatcherFlag = true;\n }, 0);\n },\n methods: {\n dismissTab: function dismissTab(event) {\n if (event.target instanceof Element && event.target.parentNode instanceof HTMLElement) {\n event.target.parentNode.style.display = 'none';\n }\n },\n // view functions //\n getReportIssueGitHubLink: function getReportIssueGitHubLink(stackTrace) {\n return \"\".concat(window.REPOSENSE_REPO_URL, \"/issues/new?title=\").concat(this.getReportIssueTitle(), \"&body=\").concat(this.getReportIssueMessage(stackTrace));\n },\n getReportIssueEmailAddress: function getReportIssueEmailAddress() {\n return 'seer@comp.nus.edu.sg';\n },\n getReportIssueEmailLink: function getReportIssueEmailLink(stackTrace) {\n return \"mailto:\".concat(this.getReportIssueEmailAddress(), \"?subject=\").concat(this.getReportIssueTitle(), \"&body=\").concat(this.getReportIssueMessage(stackTrace));\n },\n getReportIssueTitle: function getReportIssueTitle() {\n return \"\".concat(encodeURI('Unexpected error with RepoSense version ')).concat(window.repoSenseVersion);\n },\n getReportIssueMessage: function getReportIssueMessage(message) {\n return encodeURI(message);\n },\n // model functions //\n resetFilterSearch: function resetFilterSearch() {\n this.filterSearch = '';\n this.getFiltered();\n },\n updateFilterSearch: function updateFilterSearch(evt) {\n // Only called from an input onchange event, target guaranteed to be input element\n this.filterSearch = evt.target.value;\n this.getFiltered();\n },\n setSummaryHash: function setSummaryHash() {\n var _window = window,\n addHash = _window.addHash,\n encodeHash = _window.encodeHash;\n addHash('search', this.filterSearch);\n addHash('sort', this.sortGroupSelection);\n addHash('sortWithin', this.sortWithinGroupSelection);\n if (this.hasModifiedSinceDate) {\n addHash('since', this.filterSinceDate);\n }\n if (this.hasModifiedUntilDate) {\n addHash('until', this.filterUntilDate);\n }\n addHash('timeframe', this.filterTimeFrame);\n var mergedGroupsHash = this.mergedGroups.join(window.HASH_DELIMITER);\n if (mergedGroupsHash.length === 0) {\n mergedGroupsHash = '';\n }\n addHash('mergegroup', mergedGroupsHash);\n addHash('groupSelect', this.filterGroupSelection);\n addHash('breakdown', this.filterBreakdown);\n if (this.filterBreakdown) {\n var checkedFileTypesHash = this.checkedFileTypes.length > 0 ? this.checkedFileTypes.join(window.HASH_DELIMITER) : '';\n addHash('checkedFileTypes', checkedFileTypesHash);\n } else {\n window.removeHash('checkedFileTypes');\n }\n encodeHash();\n },\n renderFilterHash: function renderFilterHash() {\n var _this5 = this;\n var convertBool = function convertBool(txt) {\n return txt === 'true';\n };\n var hash = Object.assign({}, window.hashParams);\n if (hash.search) {\n this.filterSearch = hash.search;\n }\n if (hash.sort && Object.values(_types_summary__WEBPACK_IMPORTED_MODULE_40__.SortGroupSelection).includes(hash.sort)) {\n this.sortGroupSelection = hash.sort;\n }\n if (hash.sortWithin && Object.values(_types_summary__WEBPACK_IMPORTED_MODULE_40__.SortWithinGroupSelection).includes(hash.sortWithin)) {\n this.sortWithinGroupSelection = hash.sortWithin;\n }\n if (hash.timeframe && Object.values(_types_summary__WEBPACK_IMPORTED_MODULE_40__.FilterTimeFrame).includes(hash.timeframe)) {\n this.filterTimeFrame = hash.timeframe;\n }\n if (hash.mergegroup) {\n this.$store.commit('updateMergedGroup', hash.mergegroup.split(window.HASH_DELIMITER));\n }\n if (hash.since && dateFormatRegex.test(hash.since)) {\n this.tmpFilterSinceDate = hash.since;\n }\n if (hash.until && dateFormatRegex.test(hash.until)) {\n this.tmpFilterUntilDate = hash.until;\n }\n if (hash.groupSelect && Object.values(_types_summary__WEBPACK_IMPORTED_MODULE_40__.FilterGroupSelection).includes(hash.groupSelect)) {\n this.filterGroupSelection = hash.groupSelect;\n }\n if (hash.breakdown) {\n this.filterBreakdown = convertBool(hash.breakdown);\n }\n if (hash.checkedFileTypes || hash.checkedFileTypes === '') {\n var parsedFileTypes = hash.checkedFileTypes.split(window.HASH_DELIMITER);\n this.checkedFileTypes = parsedFileTypes.filter(function (type) {\n return _this5.fileTypes.includes(type);\n });\n }\n if (hash.chartGroupIndex) {\n this.chartGroupIndex = parseInt(hash.chartGroupIndex, 10);\n }\n if (hash.chartIndex) {\n this.chartIndex = parseInt(hash.chartIndex, 10);\n }\n },\n getGroupName: function getGroupName(group) {\n return window.getGroupName(group, this.filterGroupSelection);\n },\n isMatchSearchedUser: function isMatchSearchedUser(filterSearch, user) {\n return !filterSearch || filterSearch.toLowerCase().split(' ').filter(Boolean).some(function (param) {\n return user.searchPath.includes(param);\n });\n },\n isMatchSearchedTag: function isMatchSearchedTag(filterSearch, tag) {\n return !filterSearch || filterSearch.toLowerCase().split(' ').filter(Boolean).some(function (param) {\n return tag.includes(param);\n });\n },\n toggleBreakdown: function toggleBreakdown() {\n // Reset the file type filter\n if (this.checkedFileTypes.length !== this.fileTypes.length) {\n this.checkedFileTypes = this.fileTypes.slice();\n }\n this.getFiltered();\n },\n getFiltered: function getFiltered() {\n var _this6 = this;\n return (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])( /*#__PURE__*/(0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])().mark(function _callee2() {\n return (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n _this6.setSummaryHash();\n window.deactivateAllOverlays();\n _context2.next = 4;\n return _this6.$store.dispatch('incrementLoadingOverlayCountForceReload', 1);\n case 4:\n _this6.getFilteredRepos();\n _this6.getMergedRepos();\n _context2.next = 8;\n return _this6.$store.dispatch('incrementLoadingOverlayCountForceReload', -1);\n case 8:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2);\n }))();\n },\n getFilteredRepos: function getFilteredRepos() {\n var _this7 = this;\n // array of array, sorted by repo\n var full = [];\n var tagSearchPrefix = 'tag:';\n // create deep clone of this.repos to not modify the original content of this.repos\n // when merging groups\n var groups = this.hasMergedGroups() ? JSON.parse(JSON.stringify(this.repos)) : this.repos;\n if (this.filterSearch.startsWith(tagSearchPrefix)) {\n var searchedTags = this.filterSearch.split(tagSearchPrefix)[1];\n groups.forEach(function (repo) {\n var commits = repo.commits;\n if (!commits) return;\n var res = [];\n Object.entries(commits.authorDailyContributionsMap).forEach(function (_ref2) {\n var _ref3 = (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_ref2, 2),\n author = _ref3[0],\n contributions = _ref3[1];\n contributions = contributions;\n var tags = contributions.flatMap(function (c) {\n return c.commitResults;\n }).flatMap(function (r) {\n return r.tags;\n });\n if (tags.some(function (tag) {\n return tag && _this7.isMatchSearchedTag(searchedTags, tag);\n })) {\n var _repo$users2;\n var user = (_repo$users2 = repo.users) === null || _repo$users2 === void 0 ? void 0 : _repo$users2.find(function (u) {\n return u.name === author;\n });\n if (user) {\n _this7.updateCheckedFileTypeContribution(user);\n res.push(user);\n }\n }\n });\n if (res.length) {\n full.push(res);\n }\n });\n } else {\n groups.forEach(function (repo) {\n var _repo$users3;\n var res = [];\n // filtering\n (_repo$users3 = repo.users) === null || _repo$users3 === void 0 ? void 0 : _repo$users3.forEach(function (user) {\n if (_this7.isMatchSearchedUser(_this7.filterSearch, user)) {\n _this7.getUserCommits(user, _this7.filterSinceDate, _this7.filterUntilDate);\n if (_this7.filterTimeFrame === 'week') {\n _this7.splitCommitsWeek(user, _this7.filterSinceDate, _this7.filterUntilDate);\n }\n _this7.updateCheckedFileTypeContribution(user);\n res.push(user);\n }\n });\n if (res.length) {\n full.push(res);\n }\n });\n }\n this.filtered = full;\n this.getOptionWithOrder();\n var filterControl = {\n filterGroupSelection: this.filterGroupSelection,\n sortingOption: this.sortingOption,\n sortingWithinOption: this.sortingWithinOption,\n isSortingDsc: this.isSortingDsc,\n isSortingWithinDsc: this.isSortingWithinDsc\n };\n this.getOptionWithOrder();\n this.filtered = (0,_utils_repo_sorter__WEBPACK_IMPORTED_MODULE_38__[\"default\"])(this.filtered, filterControl);\n },\n updateMergedGroup: function updateMergedGroup(allGroupsMerged) {\n var _this8 = this;\n // merge group is not allowed when group by none\n // also reset merged groups\n if (this.filterGroupSelection === 'groupByNone' || !allGroupsMerged) {\n this.$store.commit('updateMergedGroup', []);\n } else {\n var mergedGroups = [];\n this.filtered.forEach(function (group) {\n mergedGroups.push(_this8.getGroupName(group));\n });\n this.$store.commit('updateMergedGroup', mergedGroups);\n }\n },\n getMergedRepos: function getMergedRepos() {\n var _this9 = this;\n this.filtered.forEach(function (group, groupIndex) {\n if (_this9.mergedGroups.includes(_this9.getGroupName(group))) {\n _this9.mergeGroupByIndex(_this9.filtered, groupIndex);\n }\n });\n },\n mergeGroupByIndex: function mergeGroupByIndex(filtered, groupIndex) {\n var _this10 = this;\n var dateToIndexMap = {};\n var dailyIndexMap = {};\n var mergedCommits = [];\n var mergedDailyCommits = [];\n var mergedFileTypeContribution = {};\n var mergedVariance = 0;\n var totalMergedCheckedFileTypeCommits = 0;\n filtered[groupIndex].forEach(function (user) {\n var _user$commits;\n (_user$commits = user.commits) === null || _user$commits === void 0 ? void 0 : _user$commits.forEach(function (commit) {\n _this10.mergeCommits(commit, user, dateToIndexMap, mergedCommits);\n });\n user.dailyCommits.forEach(function (commit) {\n _this10.mergeCommits(commit, user, dailyIndexMap, mergedDailyCommits);\n });\n _this10.mergeFileTypeContribution(user, mergedFileTypeContribution);\n totalMergedCheckedFileTypeCommits += user.checkedFileTypeContribution || 0;\n mergedVariance += user.variance;\n });\n mergedCommits.sort(window.comparator(function (ele) {\n return ele.date;\n }));\n filtered[groupIndex][0].commits = mergedCommits;\n filtered[groupIndex][0].dailyCommits = mergedDailyCommits;\n filtered[groupIndex][0].fileTypeContribution = mergedFileTypeContribution;\n filtered[groupIndex][0].variance = mergedVariance;\n filtered[groupIndex][0].checkedFileTypeContribution = totalMergedCheckedFileTypeCommits;\n // only take the merged group\n filtered[groupIndex] = filtered[groupIndex].slice(0, 1);\n },\n hasMergedGroups: function hasMergedGroups() {\n return this.mergedGroups.length > 0;\n },\n mergeCommits: function mergeCommits(commit, user, dateToIndexMap, merged) {\n var commitResults = commit.commitResults,\n date = commit.date;\n // bind repoId to each commit\n commitResults.forEach(function (commitResult) {\n commitResult.repoId = user.repoId;\n });\n if (Object.prototype.hasOwnProperty.call(dateToIndexMap, date)) {\n var commitWithSameDate = merged[dateToIndexMap[date]];\n commitResults.forEach(function (commitResult) {\n commitWithSameDate.commitResults.push(commitResult);\n });\n if ((0,_types_types__WEBPACK_IMPORTED_MODULE_39__.isCommit)(commit) && (0,_types_types__WEBPACK_IMPORTED_MODULE_39__.isCommit)(commitWithSameDate)) {\n var insertions = commit.insertions,\n deletions = commit.deletions;\n commitWithSameDate.insertions += insertions;\n commitWithSameDate.deletions += deletions;\n }\n } else {\n dateToIndexMap[date] = Object.keys(dateToIndexMap).length;\n merged.push(JSON.parse(JSON.stringify(commit)));\n }\n },\n mergeFileTypeContribution: function mergeFileTypeContribution(user, merged) {\n Object.entries(user.fileTypeContribution).forEach(function (fileType) {\n var key = fileType[0];\n var value = fileType[1];\n if (!Object.prototype.hasOwnProperty.call(merged, key)) {\n merged[key] = 0;\n }\n merged[key] += value;\n });\n },\n processFileTypes: function processFileTypes() {\n var _this11 = this;\n var selectedColors = ['#ffe119', '#4363d8', '#3cb44b', '#f58231', '#911eb4', '#46f0f0', '#f032e6', '#bcf60c', '#fabebe', '#008080', '#e6beff', '#9a6324', '#fffac8', '#800000', '#aaffc3', '#808000', '#ffd8b1', '#000075', '#808080'];\n var fileTypeColors = {};\n var i = 0;\n this.repos.forEach(function (repo) {\n var _repo$users4;\n (_repo$users4 = repo.users) === null || _repo$users4 === void 0 ? void 0 : _repo$users4.forEach(function (user) {\n Object.keys(user.fileTypeContribution).forEach(function (fileType) {\n if (!Object.prototype.hasOwnProperty.call(fileTypeColors, fileType)) {\n if (i < selectedColors.length) {\n fileTypeColors[fileType] = selectedColors[i];\n i += 1;\n } else {\n fileTypeColors[fileType] = (0,_utils_random_color_generator__WEBPACK_IMPORTED_MODULE_37__[\"default\"])(Object.values(fileTypeColors));\n }\n }\n if (!_this11.fileTypes.includes(fileType)) {\n _this11.fileTypes.push(fileType);\n }\n });\n });\n _this11.fileTypeColors = fileTypeColors;\n });\n this.checkedFileTypes = this.fileTypes.slice();\n this.$store.commit('updateFileTypeColors', this.fileTypeColors);\n },\n splitCommitsWeek: function splitCommitsWeek(user, sinceDate, untilDate) {\n var commits = user.commits;\n if (commits === undefined) {\n return;\n }\n var res = [];\n var nextMondayDate = this.dateRounding(sinceDate, 0); // round up for the next monday\n var nextMondayMs = new Date(nextMondayDate).getTime();\n var sinceMs = new Date(sinceDate).getTime();\n var untilMs = new Date(untilDate).getTime();\n if (nextMondayDate <= untilDate) {\n this.pushCommitsWeek(sinceMs, nextMondayMs - 1, res, commits);\n this.pushCommitsWeek(nextMondayMs, untilMs, res, commits);\n } else {\n this.pushCommitsWeek(sinceMs, untilMs, res, commits);\n }\n user.commits = res;\n },\n pushCommitsWeek: function pushCommitsWeek(sinceMs, untilMs, res, commits) {\n var diff = Math.round(Math.abs((untilMs - sinceMs) / window.DAY_IN_MS));\n var weekInMS = window.DAY_IN_MS * 7;\n for (var weekId = 0; weekId < diff / 7; weekId += 1) {\n var startOfWeekMs = sinceMs + weekId * weekInMS;\n var endOfWeekMs = startOfWeekMs + weekInMS - window.DAY_IN_MS;\n var endOfWeekMsWithinUntilMs = endOfWeekMs <= untilMs ? endOfWeekMs : untilMs;\n var week = {\n insertions: 0,\n deletions: 0,\n date: window.getDateStr(startOfWeekMs),\n endDate: window.getDateStr(endOfWeekMsWithinUntilMs),\n commitResults: []\n };\n this.addLineContributionWeek(endOfWeekMsWithinUntilMs, week, commits);\n if (week.commitResults.length > 0) {\n res.push(week);\n }\n }\n },\n addLineContributionWeek: function addLineContributionWeek(endOfWeekMs, week, commits) {\n // commits are not contiguous, meaning there are gaps of days without\n // commits, so we are going to check each commit's date and make sure\n // it is within the duration of a week\n while (commits.length > 0 && new Date(commits[0].date).getTime() <= endOfWeekMs) {\n var commit = commits.shift();\n // shift() never returns undefined here because we check for commits.length > 0,\n // but TypeScript is unable to infer this\n if (commit === undefined) {\n break;\n }\n week.insertions += commit.insertions;\n week.deletions += commit.deletions;\n commit.commitResults.forEach(function (commitResult) {\n return week.commitResults.push(commitResult);\n });\n }\n },\n getUserCommits: function getUserCommits(user, sinceDate, untilDate) {\n var _this12 = this;\n user.commits = [];\n var userFirst = user.dailyCommits[0];\n var userLast = user.dailyCommits[user.dailyCommits.length - 1];\n if (!userFirst) {\n return null;\n }\n if (!sinceDate || sinceDate === 'undefined') {\n sinceDate = userFirst.date;\n }\n if (!untilDate) {\n untilDate = userLast.date;\n }\n user.dailyCommits.forEach(function (commit) {\n var date = commit.date;\n if (date >= sinceDate && date <= untilDate) {\n var filteredCommit = JSON.parse(JSON.stringify(commit));\n _this12.filterCommitByCheckedFileTypes(filteredCommit);\n if (filteredCommit.commitResults.length > 0) {\n var _user$commits2;\n filteredCommit.commitResults.forEach(function (commitResult) {\n if (commitResult.messageBody !== '') {\n commitResult.isOpen = true;\n }\n });\n // The typecast is safe here as we add the insertions and deletions fields\n // in the filterCommitByCheckedFileTypes method above\n (_user$commits2 = user.commits) === null || _user$commits2 === void 0 ? void 0 : _user$commits2.push(filteredCommit);\n }\n }\n });\n return null;\n },\n filterCommitByCheckedFileTypes: function filterCommitByCheckedFileTypes(commit) {\n var _this13 = this;\n var commitResults = commit.commitResults.map(function (result) {\n var filteredFileTypes = _this13.getFilteredFileTypes(result);\n _this13.updateCommitResultWithFileTypes(result, filteredFileTypes);\n return result;\n });\n if (!this.isAllFileTypesChecked()) {\n commitResults = commitResults.filter(function (result) {\n return Object.values(result.fileTypesAndContributionMap).length > 0;\n });\n }\n // Typecast from DailyCommit to Commit as we add insertions and deletions fields\n commit.insertions = commitResults.reduce(function (acc, result) {\n return acc + result.insertions;\n }, 0);\n commit.deletions = commitResults.reduce(function (acc, result) {\n return acc + result.deletions;\n }, 0);\n commit.commitResults = commitResults;\n },\n getFilteredFileTypes: function getFilteredFileTypes(commitResult) {\n return Object.keys(commitResult.fileTypesAndContributionMap).filter(this.isFileTypeChecked).reduce(function (obj, fileType) {\n obj[fileType] = commitResult.fileTypesAndContributionMap[fileType];\n return obj;\n }, {});\n },\n isFileTypeChecked: function isFileTypeChecked(fileType) {\n if (this.filterBreakdown) {\n return this.checkedFileTypes.includes(fileType);\n }\n return true;\n },\n updateCommitResultWithFileTypes: function updateCommitResultWithFileTypes(commitResult, filteredFileTypes) {\n commitResult.insertions = Object.values(filteredFileTypes).reduce(function (acc, fileType) {\n return acc + fileType.insertions;\n }, 0);\n commitResult.deletions = Object.values(filteredFileTypes).reduce(function (acc, fileType) {\n return acc + fileType.deletions;\n }, 0);\n commitResult.fileTypesAndContributionMap = filteredFileTypes;\n },\n getOptionWithOrder: function getOptionWithOrder() {\n var _this$sortGroupSelect = this.sortGroupSelection.split(' ');\n var _this$sortGroupSelect2 = (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_this$sortGroupSelect, 2);\n this.sortingOption = _this$sortGroupSelect2[0];\n this.isSortingDsc = _this$sortGroupSelect2[1];\n var _this$sortWithinGroup = this.sortWithinGroupSelection.split(' ');\n var _this$sortWithinGroup2 = (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_this$sortWithinGroup, 2);\n this.sortingWithinOption = _this$sortWithinGroup2[0];\n this.isSortingWithinDsc = _this$sortWithinGroup2[1];\n },\n // updating filters programically //\n resetDateRange: function resetDateRange() {\n this.hasModifiedSinceDate = false;\n this.hasModifiedUntilDate = false;\n this.tmpFilterSinceDate = '';\n this.tmpFilterUntilDate = '';\n window.removeHash('since');\n window.removeHash('until');\n this.getFiltered();\n },\n updateTmpFilterSinceDate: function updateTmpFilterSinceDate(event) {\n // Only called from an input onchange event, target guaranteed to be input element\n var since = event.target.value;\n this.hasModifiedSinceDate = true;\n if (!this.isSafariBrowser) {\n this.tmpFilterSinceDate = since;\n event.target.value = this.filterSinceDate;\n this.getFiltered();\n } else if (dateFormatRegex.test(since) && since >= this.minDate) {\n this.tmpFilterSinceDate = since;\n event.currentTarget.style.removeProperty('border-bottom-color');\n this.getFiltered();\n } else {\n // invalid since date detected\n event.currentTarget.style.borderBottomColor = 'red';\n }\n },\n updateTmpFilterUntilDate: function updateTmpFilterUntilDate(event) {\n // Only called from an input onchange event, target guaranteed to be input element\n var until = event.target.value;\n this.hasModifiedUntilDate = true;\n if (!this.isSafariBrowser) {\n this.tmpFilterUntilDate = until;\n event.target.value = this.filterUntilDate;\n this.getFiltered();\n } else if (dateFormatRegex.test(until) && until <= this.maxDate) {\n this.tmpFilterUntilDate = until;\n event.currentTarget.style.removeProperty('border-bottom-color');\n this.getFiltered();\n } else {\n // invalid until date detected\n event.currentTarget.style.borderBottomColor = 'red';\n }\n },\n updateCheckedFileTypeContribution: function updateCheckedFileTypeContribution(ele) {\n var _this14 = this;\n var validCommits = 0;\n Object.keys(ele.fileTypeContribution).forEach(function (fileType) {\n if (!_this14.filterBreakdown) {\n validCommits += ele.fileTypeContribution[fileType];\n } else if (_this14.checkedFileTypes.includes(fileType)) {\n validCommits += ele.fileTypeContribution[fileType];\n }\n });\n ele.checkedFileTypeContribution = validCommits;\n },\n restoreZoomFiltered: function restoreZoomFiltered(info) {\n var _this15 = this;\n var zSince = info.zSince,\n zUntil = info.zUntil,\n zTimeFrame = info.zTimeFrame,\n zIsMerged = info.zIsMerged,\n zFilterSearch = info.zFilterSearch;\n var filtered = [];\n var groups = JSON.parse(JSON.stringify(this.repos));\n var res = [];\n groups.forEach(function (repo) {\n var _repo$users5;\n (_repo$users5 = repo.users) === null || _repo$users5 === void 0 ? void 0 : _repo$users5.forEach(function (user) {\n // only filter users that match with zoom user and previous searched user\n if (_this15.matchZoomUser(info, user) && _this15.isMatchSearchedUser(zFilterSearch, user)) {\n _this15.getUserCommits(user, zSince, zUntil);\n if (zTimeFrame === 'week') {\n _this15.splitCommitsWeek(user, zSince, zUntil);\n }\n _this15.updateCheckedFileTypeContribution(user);\n res.push(user);\n }\n });\n });\n if (res.length) {\n filtered.push(res);\n }\n if (zIsMerged) {\n this.mergeGroupByIndex(filtered, 0);\n }\n if (filtered.length) {\n var _filtered$ = (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(filtered[0], 1);\n info.zUser = _filtered$[0];\n }\n info.zFileTypeColors = this.fileTypeColors;\n info.isRefreshing = false;\n this.$store.commit('updateTabZoomInfo', info);\n },\n matchZoomUser: function matchZoomUser(info, user) {\n var zIsMerged = info.zIsMerged,\n zFilterGroup = info.zFilterGroup,\n zRepo = info.zRepo,\n zAuthor = info.zAuthor;\n if (zIsMerged) {\n return zFilterGroup === 'groupByRepos' ? user.repoName === zRepo : user.name === zAuthor;\n }\n return user.repoName === zRepo && user.name === zAuthor;\n },\n dateRounding: function dateRounding(datestr, roundDown) {\n // rounding up to nearest monday\n var date = new Date(datestr);\n var day = date.getUTCDay();\n var datems = date.getTime();\n if (roundDown) {\n datems -= (day + 6) % 7 * window.DAY_IN_MS;\n } else {\n datems += (8 - day) % 7 * window.DAY_IN_MS;\n }\n return window.getDateStr(datems);\n },\n toggleErrorShowMore: function toggleErrorShowMore() {\n this.errorIsShowingMore = !this.errorIsShowingMore;\n },\n isAllFileTypesChecked: function isAllFileTypesChecked() {\n return this.checkedFileTypes.length === this.fileTypes.length;\n }\n }\n}));\n\n//# sourceURL=webpack://reposense/./src/views/c-summary.vue?./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use%5B1%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n/* harmony import */ var _home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js */ \"./node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js\");\n/* harmony import */ var _home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js */ \"./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\");\n/* harmony import */ var _home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/objectSpread2.js */ \"./node_modules/@babel/runtime/helpers/esm/objectSpread2.js\");\n/* harmony import */ var core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.regexp.exec.js */ \"./node_modules/core-js/modules/es.regexp.exec.js\");\n/* harmony import */ var core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var core_js_modules_es_regexp_test_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.regexp.test.js */ \"./node_modules/core-js/modules/es.regexp.test.js\");\n/* harmony import */ var core_js_modules_es_regexp_test_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_regexp_test_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var core_js_modules_es_array_for_each_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/es.array.for-each.js */ \"./node_modules/core-js/modules/es.array.for-each.js\");\n/* harmony import */ var core_js_modules_es_array_for_each_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_for_each_js__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! core-js/modules/es.object.to-string.js */ \"./node_modules/core-js/modules/es.object.to-string.js\");\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ \"./node_modules/core-js/modules/web.dom-collections.for-each.js\");\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var core_js_modules_web_timers_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! core-js/modules/web.timers.js */ \"./node_modules/core-js/modules/web.timers.js\");\n/* harmony import */ var core_js_modules_web_timers_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_timers_js__WEBPACK_IMPORTED_MODULE_10__);\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! core-js/modules/es.array.concat.js */ \"./node_modules/core-js/modules/es.array.concat.js\");\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_11__);\n/* harmony import */ var core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! core-js/modules/es.array.join.js */ \"./node_modules/core-js/modules/es.array.join.js\");\n/* harmony import */ var core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_12__);\n/* harmony import */ var core_js_modules_es_string_search_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! core-js/modules/es.string.search.js */ \"./node_modules/core-js/modules/es.string.search.js\");\n/* harmony import */ var core_js_modules_es_string_search_js__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_search_js__WEBPACK_IMPORTED_MODULE_13__);\n/* harmony import */ var core_js_modules_es_array_sort_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! core-js/modules/es.array.sort.js */ \"./node_modules/core-js/modules/es.array.sort.js\");\n/* harmony import */ var core_js_modules_es_array_sort_js__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_sort_js__WEBPACK_IMPORTED_MODULE_14__);\n/* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! core-js/modules/es.array.includes.js */ \"./node_modules/core-js/modules/es.array.includes.js\");\n/* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_15__);\n/* harmony import */ var core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! core-js/modules/es.string.includes.js */ \"./node_modules/core-js/modules/es.string.includes.js\");\n/* harmony import */ var core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_16__);\n/* harmony import */ var core_js_modules_es_object_values_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! core-js/modules/es.object.values.js */ \"./node_modules/core-js/modules/es.object.values.js\");\n/* harmony import */ var core_js_modules_es_object_values_js__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_values_js__WEBPACK_IMPORTED_MODULE_17__);\n/* harmony import */ var core_js_modules_es_string_split_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! core-js/modules/es.string.split.js */ \"./node_modules/core-js/modules/es.string.split.js\");\n/* harmony import */ var core_js_modules_es_string_split_js__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_split_js__WEBPACK_IMPORTED_MODULE_18__);\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! core-js/modules/es.array.filter.js */ \"./node_modules/core-js/modules/es.array.filter.js\");\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_19___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_19__);\n/* harmony import */ var core_js_modules_es_parse_int_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! core-js/modules/es.parse-int.js */ \"./node_modules/core-js/modules/es.parse-int.js\");\n/* harmony import */ var core_js_modules_es_parse_int_js__WEBPACK_IMPORTED_MODULE_20___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_parse_int_js__WEBPACK_IMPORTED_MODULE_20__);\n/* harmony import */ var core_js_modules_es_array_some_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! core-js/modules/es.array.some.js */ \"./node_modules/core-js/modules/es.array.some.js\");\n/* harmony import */ var core_js_modules_es_array_some_js__WEBPACK_IMPORTED_MODULE_21___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_some_js__WEBPACK_IMPORTED_MODULE_21__);\n/* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! core-js/modules/es.array.slice.js */ \"./node_modules/core-js/modules/es.array.slice.js\");\n/* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_22___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_22__);\n/* harmony import */ var core_js_modules_es_json_stringify_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! core-js/modules/es.json.stringify.js */ \"./node_modules/core-js/modules/es.json.stringify.js\");\n/* harmony import */ var core_js_modules_es_json_stringify_js__WEBPACK_IMPORTED_MODULE_23___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_json_stringify_js__WEBPACK_IMPORTED_MODULE_23__);\n/* harmony import */ var core_js_modules_es_string_starts_with_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! core-js/modules/es.string.starts-with.js */ \"./node_modules/core-js/modules/es.string.starts-with.js\");\n/* harmony import */ var core_js_modules_es_string_starts_with_js__WEBPACK_IMPORTED_MODULE_24___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_starts_with_js__WEBPACK_IMPORTED_MODULE_24__);\n/* harmony import */ var core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! core-js/modules/es.object.entries.js */ \"./node_modules/core-js/modules/es.object.entries.js\");\n/* harmony import */ var core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_25___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_25__);\n/* harmony import */ var core_js_modules_es_array_flat_map_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! core-js/modules/es.array.flat-map.js */ \"./node_modules/core-js/modules/es.array.flat-map.js\");\n/* harmony import */ var core_js_modules_es_array_flat_map_js__WEBPACK_IMPORTED_MODULE_26___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_flat_map_js__WEBPACK_IMPORTED_MODULE_26__);\n/* harmony import */ var core_js_modules_es_array_unscopables_flat_map_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! core-js/modules/es.array.unscopables.flat-map.js */ \"./node_modules/core-js/modules/es.array.unscopables.flat-map.js\");\n/* harmony import */ var core_js_modules_es_array_unscopables_flat_map_js__WEBPACK_IMPORTED_MODULE_27___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_unscopables_flat_map_js__WEBPACK_IMPORTED_MODULE_27__);\n/* harmony import */ var core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! core-js/modules/es.array.find.js */ \"./node_modules/core-js/modules/es.array.find.js\");\n/* harmony import */ var core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_28___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_28__);\n/* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! core-js/modules/es.function.name.js */ \"./node_modules/core-js/modules/es.function.name.js\");\n/* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_29___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_29__);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! core-js/modules/es.object.keys.js */ \"./node_modules/core-js/modules/es.object.keys.js\");\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_30___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_30__);\n/* harmony import */ var core_js_modules_es_date_to_string_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! core-js/modules/es.date.to-string.js */ \"./node_modules/core-js/modules/es.date.to-string.js\");\n/* harmony import */ var core_js_modules_es_date_to_string_js__WEBPACK_IMPORTED_MODULE_31___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_date_to_string_js__WEBPACK_IMPORTED_MODULE_31__);\n/* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! core-js/modules/es.array.map.js */ \"./node_modules/core-js/modules/es.array.map.js\");\n/* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_32___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_32__);\n/* harmony import */ var core_js_modules_es_array_reduce_js__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! core-js/modules/es.array.reduce.js */ \"./node_modules/core-js/modules/es.array.reduce.js\");\n/* harmony import */ var core_js_modules_es_array_reduce_js__WEBPACK_IMPORTED_MODULE_33___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_reduce_js__WEBPACK_IMPORTED_MODULE_33__);\n/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm-bundler.js\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.runtime.esm-bundler.js\");\n/* harmony import */ var _components_c_summary_charts_vue__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! ../components/c-summary-charts.vue */ \"./src/components/c-summary-charts.vue\");\n/* harmony import */ var _components_c_file_type_checkboxes_vue__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(/*! ../components/c-file-type-checkboxes.vue */ \"./src/components/c-file-type-checkboxes.vue\");\n/* harmony import */ var _utils_random_color_generator__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! ../utils/random-color-generator */ \"./src/utils/random-color-generator.ts\");\n/* harmony import */ var _utils_repo_sorter__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(/*! ../utils/repo-sorter */ \"./src/utils/repo-sorter.ts\");\n/* harmony import */ var _types_types__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(/*! ../types/types */ \"./src/types/types.ts\");\n/* harmony import */ var _types_summary__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(/*! ../types/summary */ \"./src/types/summary.ts\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar dateFormatRegex = /([12]\\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01]))$/;\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,vue__WEBPACK_IMPORTED_MODULE_34__.defineComponent)({\n name: 'c-summary',\n components: {\n cSummaryCharts: _components_c_summary_charts_vue__WEBPACK_IMPORTED_MODULE_35__[\"default\"],\n cFileTypeCheckboxes: _components_c_file_type_checkboxes_vue__WEBPACK_IMPORTED_MODULE_36__[\"default\"]\n },\n props: {\n repos: {\n type: Array,\n required: true\n },\n errorMessages: {\n type: Object,\n \"default\": function _default() {\n return {};\n }\n },\n isWidgetMode: {\n type: Boolean,\n \"default\": false\n }\n },\n data: function data() {\n return {\n checkedFileTypes: [],\n fileTypes: [],\n filtered: [],\n filterSearch: '',\n filterGroupSelection: _types_summary__WEBPACK_IMPORTED_MODULE_40__.FilterGroupSelection.GroupByRepos,\n sortGroupSelection: _types_summary__WEBPACK_IMPORTED_MODULE_40__.SortGroupSelection.GroupTitleDsc,\n sortWithinGroupSelection: _types_summary__WEBPACK_IMPORTED_MODULE_40__.SortWithinGroupSelection.Title,\n sortingOption: '',\n isSortingDsc: '',\n sortingWithinOption: '',\n isSortingWithinDsc: '',\n filterTimeFrame: _types_summary__WEBPACK_IMPORTED_MODULE_40__.FilterTimeFrame.Commit,\n filterBreakdown: false,\n tmpFilterSinceDate: '',\n tmpFilterUntilDate: '',\n hasModifiedSinceDate: window.isSinceDateProvided,\n hasModifiedUntilDate: window.isUntilDateProvided,\n filterHash: '',\n minDate: window.sinceDate,\n maxDate: window.untilDate,\n fileTypeColors: {},\n isSafariBrowser: /.*Version.*Safari.*/.test(navigator.userAgent),\n filterGroupSelectionWatcherFlag: false,\n chartGroupIndex: undefined,\n chartIndex: undefined,\n errorIsShowingMore: false,\n numberOfErrorMessagesToShow: 4,\n viewRepoTags: false\n };\n },\n computed: (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])({\n avgContributionSize: function avgContributionSize() {\n var _this = this;\n var totalLines = 0;\n var totalCount = 0;\n this.repos.forEach(function (repo) {\n var _repo$users;\n (_repo$users = repo.users) === null || _repo$users === void 0 ? void 0 : _repo$users.forEach(function (user) {\n if (user.checkedFileTypeContribution === undefined || user.checkedFileTypeContribution === 0) {\n _this.updateCheckedFileTypeContribution(user);\n }\n if (user.checkedFileTypeContribution && user.checkedFileTypeContribution > 0) {\n totalCount += 1;\n totalLines += user.checkedFileTypeContribution;\n }\n });\n });\n if (totalCount === 0) {\n return 0;\n }\n return totalLines / totalCount;\n },\n allGroupsMerged: {\n get: function get() {\n if (this.mergedGroups.length === 0) {\n return false;\n }\n return this.mergedGroups.length === this.filtered.length;\n },\n set: function set(value) {\n var _this2 = this;\n if (value) {\n var mergedGroups = [];\n this.filtered.forEach(function (group) {\n mergedGroups.push(_this2.getGroupName(group));\n });\n this.filtered = [];\n this.$store.commit('updateMergedGroup', mergedGroups);\n } else {\n this.$store.commit('updateMergedGroup', []);\n }\n }\n },\n filterSinceDate: function filterSinceDate() {\n if (this.tmpFilterSinceDate && this.tmpFilterSinceDate >= this.minDate) {\n return this.tmpFilterSinceDate;\n }\n // If user clears the since date field\n return this.minDate;\n },\n filterUntilDate: function filterUntilDate() {\n if (this.tmpFilterUntilDate && this.tmpFilterUntilDate <= this.maxDate) {\n return this.tmpFilterUntilDate;\n }\n return this.maxDate;\n }\n }, (0,vuex__WEBPACK_IMPORTED_MODULE_41__.mapState)(['mergedGroups'])),\n watch: {\n filterGroupSelection: function filterGroupSelection() {\n var _this3 = this;\n // Deactivates watcher\n if (!this.filterGroupSelectionWatcherFlag) {\n return;\n }\n var allGroupsMerged = this.allGroupsMerged;\n this.$store.dispatch('incrementLoadingOverlayCountForceReload', 1).then(function () {\n _this3.getFilteredRepos();\n _this3.updateMergedGroup(allGroupsMerged);\n }).then( /*#__PURE__*/(0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])( /*#__PURE__*/(0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])().mark(function _callee() {\n return (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return _this3.$store.dispatch('incrementLoadingOverlayCountForceReload', -1);\n case 2:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n })));\n },\n '$store.state.summaryDates': function $storeStateSummaryDates() {\n this.hasModifiedSinceDate = true;\n this.hasModifiedUntilDate = true;\n this.tmpFilterSinceDate = this.$store.state.summaryDates.since;\n this.tmpFilterUntilDate = this.$store.state.summaryDates.until;\n window.deactivateAllOverlays();\n this.getFiltered();\n },\n mergedGroups: {\n deep: true,\n handler: function handler() {\n this.getFiltered();\n }\n }\n },\n created: function created() {\n this.processFileTypes();\n this.renderFilterHash();\n this.getFiltered();\n if (this.$store.state.tabZoomInfo.isRefreshing) {\n var zoomInfo = Object.assign({}, this.$store.state.tabZoomInfo);\n this.restoreZoomFiltered(zoomInfo);\n }\n },\n mounted: function mounted() {\n var _this4 = this;\n // Delay execution of filterGroupSelection watcher\n // to prevent clearing of merged groups\n setTimeout(function () {\n _this4.filterGroupSelectionWatcherFlag = true;\n }, 0);\n },\n methods: {\n dismissTab: function dismissTab(event) {\n if (event.target instanceof Element && event.target.parentNode instanceof HTMLElement) {\n event.target.parentNode.style.display = 'none';\n }\n },\n // view functions //\n getReportIssueGitHubLink: function getReportIssueGitHubLink(stackTrace) {\n return \"\".concat(window.REPOSENSE_REPO_URL, \"/issues/new?title=\").concat(this.getReportIssueTitle(), \"&body=\").concat(this.getReportIssueMessage(stackTrace));\n },\n getReportIssueEmailAddress: function getReportIssueEmailAddress() {\n return 'seer@comp.nus.edu.sg';\n },\n getReportIssueEmailLink: function getReportIssueEmailLink(stackTrace) {\n return \"mailto:\".concat(this.getReportIssueEmailAddress(), \"?subject=\").concat(this.getReportIssueTitle(), \"&body=\").concat(this.getReportIssueMessage(stackTrace));\n },\n getReportIssueTitle: function getReportIssueTitle() {\n return \"\".concat(encodeURI('Unexpected error with RepoSense version ')).concat(window.repoSenseVersion);\n },\n getReportIssueMessage: function getReportIssueMessage(message) {\n return encodeURI(message);\n },\n // model functions //\n resetFilterSearch: function resetFilterSearch() {\n this.filterSearch = '';\n this.getFiltered();\n },\n updateFilterSearch: function updateFilterSearch(evt) {\n // Only called from an input onchange event, target guaranteed to be input element\n this.filterSearch = evt.target.value;\n this.getFiltered();\n },\n setSummaryHash: function setSummaryHash() {\n var _window = window,\n addHash = _window.addHash,\n encodeHash = _window.encodeHash,\n removeHash = _window.removeHash;\n addHash('search', this.filterSearch);\n addHash('sort', this.sortGroupSelection);\n addHash('sortWithin', this.sortWithinGroupSelection);\n if (this.hasModifiedSinceDate) {\n addHash('since', this.filterSinceDate);\n }\n if (this.hasModifiedUntilDate) {\n addHash('until', this.filterUntilDate);\n }\n addHash('timeframe', this.filterTimeFrame);\n var mergedGroupsHash = this.mergedGroups.join(window.HASH_DELIMITER);\n if (mergedGroupsHash.length === 0) {\n mergedGroupsHash = '';\n }\n addHash('mergegroup', mergedGroupsHash);\n addHash('groupSelect', this.filterGroupSelection);\n addHash('breakdown', this.filterBreakdown);\n if (this.filterBreakdown) {\n var checkedFileTypesHash = this.checkedFileTypes.length > 0 ? this.checkedFileTypes.join(window.HASH_DELIMITER) : '';\n addHash('checkedFileTypes', checkedFileTypesHash);\n } else {\n removeHash('checkedFileTypes');\n }\n if (this.viewRepoTags) {\n addHash('viewRepoTags', 'true');\n } else {\n removeHash('viewRepoTags');\n }\n encodeHash();\n },\n renderFilterHash: function renderFilterHash() {\n var _this5 = this;\n var convertBool = function convertBool(txt) {\n return txt === 'true';\n };\n var hash = Object.assign({}, window.hashParams);\n if (hash.search) {\n this.filterSearch = hash.search;\n }\n if (hash.sort && Object.values(_types_summary__WEBPACK_IMPORTED_MODULE_40__.SortGroupSelection).includes(hash.sort)) {\n this.sortGroupSelection = hash.sort;\n }\n if (hash.sortWithin && Object.values(_types_summary__WEBPACK_IMPORTED_MODULE_40__.SortWithinGroupSelection).includes(hash.sortWithin)) {\n this.sortWithinGroupSelection = hash.sortWithin;\n }\n if (hash.timeframe && Object.values(_types_summary__WEBPACK_IMPORTED_MODULE_40__.FilterTimeFrame).includes(hash.timeframe)) {\n this.filterTimeFrame = hash.timeframe;\n }\n if (hash.mergegroup) {\n this.$store.commit('updateMergedGroup', hash.mergegroup.split(window.HASH_DELIMITER));\n }\n if (hash.since && dateFormatRegex.test(hash.since)) {\n this.tmpFilterSinceDate = hash.since;\n }\n if (hash.until && dateFormatRegex.test(hash.until)) {\n this.tmpFilterUntilDate = hash.until;\n }\n if (hash.groupSelect && Object.values(_types_summary__WEBPACK_IMPORTED_MODULE_40__.FilterGroupSelection).includes(hash.groupSelect)) {\n this.filterGroupSelection = hash.groupSelect;\n }\n if (hash.breakdown) {\n this.filterBreakdown = convertBool(hash.breakdown);\n }\n if (hash.checkedFileTypes || hash.checkedFileTypes === '') {\n var parsedFileTypes = hash.checkedFileTypes.split(window.HASH_DELIMITER);\n this.checkedFileTypes = parsedFileTypes.filter(function (type) {\n return _this5.fileTypes.includes(type);\n });\n }\n if (hash.chartGroupIndex) {\n this.chartGroupIndex = parseInt(hash.chartGroupIndex, 10);\n }\n if (hash.chartIndex) {\n this.chartIndex = parseInt(hash.chartIndex, 10);\n }\n if (hash.viewRepoTags) {\n this.viewRepoTags = convertBool(hash.viewRepoTags);\n }\n },\n getGroupName: function getGroupName(group) {\n return window.getGroupName(group, this.filterGroupSelection);\n },\n isMatchSearchedUser: function isMatchSearchedUser(filterSearch, user) {\n return !filterSearch || filterSearch.toLowerCase().split(' ').filter(Boolean).some(function (param) {\n return user.searchPath.includes(param);\n });\n },\n isMatchSearchedTag: function isMatchSearchedTag(filterSearch, tag) {\n return !filterSearch || filterSearch.toLowerCase().split(' ').filter(Boolean).some(function (param) {\n return tag.includes(param);\n });\n },\n toggleBreakdown: function toggleBreakdown() {\n // Reset the file type filter\n if (this.checkedFileTypes.length !== this.fileTypes.length) {\n this.checkedFileTypes = this.fileTypes.slice();\n }\n this.getFiltered();\n },\n getFiltered: function getFiltered() {\n var _this6 = this;\n return (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])( /*#__PURE__*/(0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])().mark(function _callee2() {\n return (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n _this6.setSummaryHash();\n window.deactivateAllOverlays();\n _context2.next = 4;\n return _this6.$store.dispatch('incrementLoadingOverlayCountForceReload', 1);\n case 4:\n _this6.getFilteredRepos();\n _this6.getMergedRepos();\n _context2.next = 8;\n return _this6.$store.dispatch('incrementLoadingOverlayCountForceReload', -1);\n case 8:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2);\n }))();\n },\n getFilteredRepos: function getFilteredRepos() {\n var _this7 = this;\n // array of array, sorted by repo\n var full = [];\n var tagSearchPrefix = 'tag:';\n // create deep clone of this.repos to not modify the original content of this.repos\n // when merging groups\n var groups = this.hasMergedGroups() ? JSON.parse(JSON.stringify(this.repos)) : this.repos;\n if (this.filterSearch.startsWith(tagSearchPrefix)) {\n var searchedTags = this.filterSearch.split(tagSearchPrefix)[1];\n groups.forEach(function (repo) {\n var commits = repo.commits;\n if (!commits) return;\n var res = [];\n Object.entries(commits.authorDailyContributionsMap).forEach(function (_ref2) {\n var _ref3 = (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_ref2, 2),\n author = _ref3[0],\n contributions = _ref3[1];\n contributions = contributions;\n var tags = contributions.flatMap(function (c) {\n return c.commitResults;\n }).flatMap(function (r) {\n return r.tags;\n });\n if (tags.some(function (tag) {\n return tag && _this7.isMatchSearchedTag(searchedTags, tag);\n })) {\n var _repo$users2;\n var user = (_repo$users2 = repo.users) === null || _repo$users2 === void 0 ? void 0 : _repo$users2.find(function (u) {\n return u.name === author;\n });\n if (user) {\n _this7.updateCheckedFileTypeContribution(user);\n res.push(user);\n }\n }\n });\n if (res.length) {\n full.push(res);\n }\n });\n } else {\n groups.forEach(function (repo) {\n var _repo$users3;\n var res = [];\n // filtering\n (_repo$users3 = repo.users) === null || _repo$users3 === void 0 ? void 0 : _repo$users3.forEach(function (user) {\n if (_this7.isMatchSearchedUser(_this7.filterSearch, user)) {\n _this7.getUserCommits(user, _this7.filterSinceDate, _this7.filterUntilDate);\n if (_this7.filterTimeFrame === 'week') {\n _this7.splitCommitsWeek(user, _this7.filterSinceDate, _this7.filterUntilDate);\n }\n _this7.updateCheckedFileTypeContribution(user);\n res.push(user);\n }\n });\n if (res.length) {\n full.push(res);\n }\n });\n }\n this.filtered = full;\n this.getOptionWithOrder();\n var filterControl = {\n filterGroupSelection: this.filterGroupSelection,\n sortingOption: this.sortingOption,\n sortingWithinOption: this.sortingWithinOption,\n isSortingDsc: this.isSortingDsc,\n isSortingWithinDsc: this.isSortingWithinDsc\n };\n this.getOptionWithOrder();\n this.filtered = (0,_utils_repo_sorter__WEBPACK_IMPORTED_MODULE_38__[\"default\"])(this.filtered, filterControl);\n },\n updateMergedGroup: function updateMergedGroup(allGroupsMerged) {\n var _this8 = this;\n // merge group is not allowed when group by none\n // also reset merged groups\n if (this.filterGroupSelection === 'groupByNone' || !allGroupsMerged) {\n this.$store.commit('updateMergedGroup', []);\n } else {\n var mergedGroups = [];\n this.filtered.forEach(function (group) {\n mergedGroups.push(_this8.getGroupName(group));\n });\n this.$store.commit('updateMergedGroup', mergedGroups);\n }\n },\n getMergedRepos: function getMergedRepos() {\n var _this9 = this;\n this.filtered.forEach(function (group, groupIndex) {\n if (_this9.mergedGroups.includes(_this9.getGroupName(group))) {\n _this9.mergeGroupByIndex(_this9.filtered, groupIndex);\n }\n });\n },\n mergeGroupByIndex: function mergeGroupByIndex(filtered, groupIndex) {\n var _this10 = this;\n var dateToIndexMap = {};\n var dailyIndexMap = {};\n var mergedCommits = [];\n var mergedDailyCommits = [];\n var mergedFileTypeContribution = {};\n var mergedVariance = 0;\n var totalMergedCheckedFileTypeCommits = 0;\n filtered[groupIndex].forEach(function (user) {\n var _user$commits;\n (_user$commits = user.commits) === null || _user$commits === void 0 ? void 0 : _user$commits.forEach(function (commit) {\n _this10.mergeCommits(commit, user, dateToIndexMap, mergedCommits);\n });\n user.dailyCommits.forEach(function (commit) {\n _this10.mergeCommits(commit, user, dailyIndexMap, mergedDailyCommits);\n });\n _this10.mergeFileTypeContribution(user, mergedFileTypeContribution);\n totalMergedCheckedFileTypeCommits += user.checkedFileTypeContribution || 0;\n mergedVariance += user.variance;\n });\n mergedCommits.sort(window.comparator(function (ele) {\n return ele.date;\n }));\n filtered[groupIndex][0].commits = mergedCommits;\n filtered[groupIndex][0].dailyCommits = mergedDailyCommits;\n filtered[groupIndex][0].fileTypeContribution = mergedFileTypeContribution;\n filtered[groupIndex][0].variance = mergedVariance;\n filtered[groupIndex][0].checkedFileTypeContribution = totalMergedCheckedFileTypeCommits;\n // only take the merged group\n filtered[groupIndex] = filtered[groupIndex].slice(0, 1);\n },\n hasMergedGroups: function hasMergedGroups() {\n return this.mergedGroups.length > 0;\n },\n mergeCommits: function mergeCommits(commit, user, dateToIndexMap, merged) {\n var commitResults = commit.commitResults,\n date = commit.date;\n // bind repoId to each commit\n commitResults.forEach(function (commitResult) {\n commitResult.repoId = user.repoId;\n });\n if (Object.prototype.hasOwnProperty.call(dateToIndexMap, date)) {\n var commitWithSameDate = merged[dateToIndexMap[date]];\n commitResults.forEach(function (commitResult) {\n commitWithSameDate.commitResults.push(commitResult);\n });\n if ((0,_types_types__WEBPACK_IMPORTED_MODULE_39__.isCommit)(commit) && (0,_types_types__WEBPACK_IMPORTED_MODULE_39__.isCommit)(commitWithSameDate)) {\n var insertions = commit.insertions,\n deletions = commit.deletions;\n commitWithSameDate.insertions += insertions;\n commitWithSameDate.deletions += deletions;\n }\n } else {\n dateToIndexMap[date] = Object.keys(dateToIndexMap).length;\n merged.push(JSON.parse(JSON.stringify(commit)));\n }\n },\n mergeFileTypeContribution: function mergeFileTypeContribution(user, merged) {\n Object.entries(user.fileTypeContribution).forEach(function (fileType) {\n var key = fileType[0];\n var value = fileType[1];\n if (!Object.prototype.hasOwnProperty.call(merged, key)) {\n merged[key] = 0;\n }\n merged[key] += value;\n });\n },\n processFileTypes: function processFileTypes() {\n var _this11 = this;\n var selectedColors = ['#ffe119', '#4363d8', '#3cb44b', '#f58231', '#911eb4', '#46f0f0', '#f032e6', '#bcf60c', '#fabebe', '#008080', '#e6beff', '#9a6324', '#fffac8', '#800000', '#aaffc3', '#808000', '#ffd8b1', '#000075', '#808080'];\n var fileTypeColors = {};\n var i = 0;\n this.repos.forEach(function (repo) {\n var _repo$users4;\n (_repo$users4 = repo.users) === null || _repo$users4 === void 0 ? void 0 : _repo$users4.forEach(function (user) {\n Object.keys(user.fileTypeContribution).forEach(function (fileType) {\n if (!Object.prototype.hasOwnProperty.call(fileTypeColors, fileType)) {\n if (i < selectedColors.length) {\n fileTypeColors[fileType] = selectedColors[i];\n i += 1;\n } else {\n fileTypeColors[fileType] = (0,_utils_random_color_generator__WEBPACK_IMPORTED_MODULE_37__[\"default\"])(Object.values(fileTypeColors));\n }\n }\n if (!_this11.fileTypes.includes(fileType)) {\n _this11.fileTypes.push(fileType);\n }\n });\n });\n _this11.fileTypeColors = fileTypeColors;\n });\n this.checkedFileTypes = this.fileTypes.slice();\n this.$store.commit('updateFileTypeColors', this.fileTypeColors);\n },\n splitCommitsWeek: function splitCommitsWeek(user, sinceDate, untilDate) {\n var commits = user.commits;\n if (commits === undefined) {\n return;\n }\n var res = [];\n var nextMondayDate = this.dateRounding(sinceDate, 0); // round up for the next monday\n var nextMondayMs = new Date(nextMondayDate).getTime();\n var sinceMs = new Date(sinceDate).getTime();\n var untilMs = new Date(untilDate).getTime();\n if (nextMondayDate <= untilDate) {\n this.pushCommitsWeek(sinceMs, nextMondayMs - 1, res, commits);\n this.pushCommitsWeek(nextMondayMs, untilMs, res, commits);\n } else {\n this.pushCommitsWeek(sinceMs, untilMs, res, commits);\n }\n user.commits = res;\n },\n pushCommitsWeek: function pushCommitsWeek(sinceMs, untilMs, res, commits) {\n var diff = Math.round(Math.abs((untilMs - sinceMs) / window.DAY_IN_MS));\n var weekInMS = window.DAY_IN_MS * 7;\n for (var weekId = 0; weekId < diff / 7; weekId += 1) {\n var startOfWeekMs = sinceMs + weekId * weekInMS;\n var endOfWeekMs = startOfWeekMs + weekInMS - window.DAY_IN_MS;\n var endOfWeekMsWithinUntilMs = endOfWeekMs <= untilMs ? endOfWeekMs : untilMs;\n var week = {\n insertions: 0,\n deletions: 0,\n date: window.getDateStr(startOfWeekMs),\n endDate: window.getDateStr(endOfWeekMsWithinUntilMs),\n commitResults: []\n };\n this.addLineContributionWeek(endOfWeekMsWithinUntilMs, week, commits);\n if (week.commitResults.length > 0) {\n res.push(week);\n }\n }\n },\n addLineContributionWeek: function addLineContributionWeek(endOfWeekMs, week, commits) {\n // commits are not contiguous, meaning there are gaps of days without\n // commits, so we are going to check each commit's date and make sure\n // it is within the duration of a week\n while (commits.length > 0 && new Date(commits[0].date).getTime() <= endOfWeekMs) {\n var commit = commits.shift();\n // shift() never returns undefined here because we check for commits.length > 0,\n // but TypeScript is unable to infer this\n if (commit === undefined) {\n break;\n }\n week.insertions += commit.insertions;\n week.deletions += commit.deletions;\n commit.commitResults.forEach(function (commitResult) {\n return week.commitResults.push(commitResult);\n });\n }\n },\n getUserCommits: function getUserCommits(user, sinceDate, untilDate) {\n var _this12 = this;\n user.commits = [];\n var userFirst = user.dailyCommits[0];\n var userLast = user.dailyCommits[user.dailyCommits.length - 1];\n if (!userFirst) {\n return null;\n }\n if (!sinceDate || sinceDate === 'undefined') {\n sinceDate = userFirst.date;\n }\n if (!untilDate) {\n untilDate = userLast.date;\n }\n user.dailyCommits.forEach(function (commit) {\n var date = commit.date;\n if (date >= sinceDate && date <= untilDate) {\n var filteredCommit = JSON.parse(JSON.stringify(commit));\n _this12.filterCommitByCheckedFileTypes(filteredCommit);\n if (filteredCommit.commitResults.length > 0) {\n var _user$commits2;\n filteredCommit.commitResults.forEach(function (commitResult) {\n if (commitResult.messageBody !== '') {\n commitResult.isOpen = true;\n }\n });\n // The typecast is safe here as we add the insertions and deletions fields\n // in the filterCommitByCheckedFileTypes method above\n (_user$commits2 = user.commits) === null || _user$commits2 === void 0 ? void 0 : _user$commits2.push(filteredCommit);\n }\n }\n });\n return null;\n },\n filterCommitByCheckedFileTypes: function filterCommitByCheckedFileTypes(commit) {\n var _this13 = this;\n var commitResults = commit.commitResults.map(function (result) {\n var filteredFileTypes = _this13.getFilteredFileTypes(result);\n _this13.updateCommitResultWithFileTypes(result, filteredFileTypes);\n return result;\n });\n if (!this.isAllFileTypesChecked()) {\n commitResults = commitResults.filter(function (result) {\n return Object.values(result.fileTypesAndContributionMap).length > 0;\n });\n }\n // Typecast from DailyCommit to Commit as we add insertions and deletions fields\n commit.insertions = commitResults.reduce(function (acc, result) {\n return acc + result.insertions;\n }, 0);\n commit.deletions = commitResults.reduce(function (acc, result) {\n return acc + result.deletions;\n }, 0);\n commit.commitResults = commitResults;\n },\n getFilteredFileTypes: function getFilteredFileTypes(commitResult) {\n return Object.keys(commitResult.fileTypesAndContributionMap).filter(this.isFileTypeChecked).reduce(function (obj, fileType) {\n obj[fileType] = commitResult.fileTypesAndContributionMap[fileType];\n return obj;\n }, {});\n },\n isFileTypeChecked: function isFileTypeChecked(fileType) {\n if (this.filterBreakdown) {\n return this.checkedFileTypes.includes(fileType);\n }\n return true;\n },\n updateCommitResultWithFileTypes: function updateCommitResultWithFileTypes(commitResult, filteredFileTypes) {\n commitResult.insertions = Object.values(filteredFileTypes).reduce(function (acc, fileType) {\n return acc + fileType.insertions;\n }, 0);\n commitResult.deletions = Object.values(filteredFileTypes).reduce(function (acc, fileType) {\n return acc + fileType.deletions;\n }, 0);\n commitResult.fileTypesAndContributionMap = filteredFileTypes;\n },\n getOptionWithOrder: function getOptionWithOrder() {\n var _this$sortGroupSelect = this.sortGroupSelection.split(' ');\n var _this$sortGroupSelect2 = (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_this$sortGroupSelect, 2);\n this.sortingOption = _this$sortGroupSelect2[0];\n this.isSortingDsc = _this$sortGroupSelect2[1];\n var _this$sortWithinGroup = this.sortWithinGroupSelection.split(' ');\n var _this$sortWithinGroup2 = (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_this$sortWithinGroup, 2);\n this.sortingWithinOption = _this$sortWithinGroup2[0];\n this.isSortingWithinDsc = _this$sortWithinGroup2[1];\n },\n // updating filters programically //\n resetDateRange: function resetDateRange() {\n this.hasModifiedSinceDate = false;\n this.hasModifiedUntilDate = false;\n this.tmpFilterSinceDate = '';\n this.tmpFilterUntilDate = '';\n window.removeHash('since');\n window.removeHash('until');\n this.getFiltered();\n },\n updateTmpFilterSinceDate: function updateTmpFilterSinceDate(event) {\n // Only called from an input onchange event, target guaranteed to be input element\n var since = event.target.value;\n this.hasModifiedSinceDate = true;\n if (!this.isSafariBrowser) {\n this.tmpFilterSinceDate = since;\n event.target.value = this.filterSinceDate;\n this.getFiltered();\n } else if (dateFormatRegex.test(since) && since >= this.minDate) {\n this.tmpFilterSinceDate = since;\n event.currentTarget.style.removeProperty('border-bottom-color');\n this.getFiltered();\n } else {\n // invalid since date detected\n event.currentTarget.style.borderBottomColor = 'red';\n }\n },\n updateTmpFilterUntilDate: function updateTmpFilterUntilDate(event) {\n // Only called from an input onchange event, target guaranteed to be input element\n var until = event.target.value;\n this.hasModifiedUntilDate = true;\n if (!this.isSafariBrowser) {\n this.tmpFilterUntilDate = until;\n event.target.value = this.filterUntilDate;\n this.getFiltered();\n } else if (dateFormatRegex.test(until) && until <= this.maxDate) {\n this.tmpFilterUntilDate = until;\n event.currentTarget.style.removeProperty('border-bottom-color');\n this.getFiltered();\n } else {\n // invalid until date detected\n event.currentTarget.style.borderBottomColor = 'red';\n }\n },\n updateCheckedFileTypeContribution: function updateCheckedFileTypeContribution(ele) {\n var _this14 = this;\n var validCommits = 0;\n Object.keys(ele.fileTypeContribution).forEach(function (fileType) {\n if (!_this14.filterBreakdown) {\n validCommits += ele.fileTypeContribution[fileType];\n } else if (_this14.checkedFileTypes.includes(fileType)) {\n validCommits += ele.fileTypeContribution[fileType];\n }\n });\n ele.checkedFileTypeContribution = validCommits;\n },\n restoreZoomFiltered: function restoreZoomFiltered(info) {\n var _this15 = this;\n var zSince = info.zSince,\n zUntil = info.zUntil,\n zTimeFrame = info.zTimeFrame,\n zIsMerged = info.zIsMerged,\n zFilterSearch = info.zFilterSearch;\n var filtered = [];\n var groups = JSON.parse(JSON.stringify(this.repos));\n var res = [];\n groups.forEach(function (repo) {\n var _repo$users5;\n (_repo$users5 = repo.users) === null || _repo$users5 === void 0 ? void 0 : _repo$users5.forEach(function (user) {\n // only filter users that match with zoom user and previous searched user\n if (_this15.matchZoomUser(info, user) && _this15.isMatchSearchedUser(zFilterSearch, user)) {\n _this15.getUserCommits(user, zSince, zUntil);\n if (zTimeFrame === 'week') {\n _this15.splitCommitsWeek(user, zSince, zUntil);\n }\n _this15.updateCheckedFileTypeContribution(user);\n res.push(user);\n }\n });\n });\n if (res.length) {\n filtered.push(res);\n }\n if (zIsMerged) {\n this.mergeGroupByIndex(filtered, 0);\n }\n if (filtered.length) {\n var _filtered$ = (0,_home_runner_work_tp_dashboard_tp_dashboard_RepoSense_frontend_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(filtered[0], 1);\n info.zUser = _filtered$[0];\n }\n info.zFileTypeColors = this.fileTypeColors;\n info.isRefreshing = false;\n this.$store.commit('updateTabZoomInfo', info);\n },\n matchZoomUser: function matchZoomUser(info, user) {\n var zIsMerged = info.zIsMerged,\n zFilterGroup = info.zFilterGroup,\n zRepo = info.zRepo,\n zAuthor = info.zAuthor;\n if (zIsMerged) {\n return zFilterGroup === 'groupByRepos' ? user.repoName === zRepo : user.name === zAuthor;\n }\n return user.repoName === zRepo && user.name === zAuthor;\n },\n dateRounding: function dateRounding(datestr, roundDown) {\n // rounding up to nearest monday\n var date = new Date(datestr);\n var day = date.getUTCDay();\n var datems = date.getTime();\n if (roundDown) {\n datems -= (day + 6) % 7 * window.DAY_IN_MS;\n } else {\n datems += (8 - day) % 7 * window.DAY_IN_MS;\n }\n return window.getDateStr(datems);\n },\n toggleErrorShowMore: function toggleErrorShowMore() {\n this.errorIsShowingMore = !this.errorIsShowingMore;\n },\n isAllFileTypesChecked: function isAllFileTypesChecked() {\n return this.checkedFileTypes.length === this.fileTypes.length;\n }\n }\n}));\n\n//# sourceURL=webpack://reposense/./src/views/c-summary.vue?./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use%5B1%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -240,14 +240,14 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ }), -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-segment.vue?vue&type=template&id=02b52b69&scoped=true&ts=true&lang=pug": -/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-segment.vue?vue&type=template&id=02b52b69&scoped=true&ts=true&lang=pug ***! - \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ +/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-segment.vue?vue&type=template&id=02b52b69&ts=true&lang=pug": +/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-segment.vue?vue&type=template&id=02b52b69&ts=true&lang=pug ***! + \*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": () => (/* binding */ render)\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.concat.js */ \"./node_modules/core-js/modules/es.array.concat.js\");\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.runtime.esm-bundler.js\");\n\n\nvar _withScopeId = function _withScopeId(n) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_1__.pushScopeId)(\"data-v-02b52b69\"), n = n(), (0,vue__WEBPACK_IMPORTED_MODULE_1__.popScopeId)(), n;\n};\nvar _hoisted_1 = [\"title\"];\nvar _hoisted_2 = {\n key: 1\n};\nvar _hoisted_3 = {\n \"class\": \"line-number\"\n};\nvar _hoisted_4 = {\n \"class\": \"line-content\"\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n var _component_font_awesome_icon = (0,vue__WEBPACK_IMPORTED_MODULE_1__.resolveComponent)(\"font-awesome-icon\");\n var _directive_hljs = (0,vue__WEBPACK_IMPORTED_MODULE_1__.resolveDirective)(\"hljs\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(\"div\", {\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_1__.normalizeClass)([\"segment\", {\n untouched: !_ctx.segment.knownAuthor,\n active: _ctx.isOpen\n }]),\n style: (0,vue__WEBPACK_IMPORTED_MODULE_1__.normalizeStyle)({\n 'border-left': \"0.25rem solid \".concat(_ctx.authorColors[_ctx.segment.knownAuthor])\n }),\n title: \"Author: \".concat(_ctx.segment.knownAuthor || \"Unknown\")\n }, [_ctx.canOpen ? ((0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(\"div\", {\n key: 0,\n \"class\": \"closer\",\n onClick: _cache[0] || (_cache[0] =\n //@ts-ignore\n function () {\n return _ctx.toggleCode && _ctx.toggleCode.apply(_ctx, arguments);\n }),\n ref: \"topButton\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon\",\n icon: \"plus-circle\",\n title: 'Click to open code'\n }, null, 512 /* NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_1__.vShow, !_ctx.isOpen]]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon\",\n icon: \"chevron-circle-down\",\n title: 'Click to hide code'\n }, null, 512 /* NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_1__.vShow, _ctx.isOpen]])], 512 /* NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_1__.createCommentVNode)(\"v-if\", true), _ctx.isOpen ? (0,vue__WEBPACK_IMPORTED_MODULE_1__.withDirectives)(((0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(\"div\", _hoisted_2, [((0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_1__.renderList)(_ctx.segment.lines, function (line, index) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(\"div\", {\n \"class\": \"code\",\n key: index,\n style: (0,vue__WEBPACK_IMPORTED_MODULE_1__.normalizeStyle)({\n 'background-color': \"\".concat(_ctx.authorColors[_ctx.segment.knownAuthor]).concat(_ctx.transparencyValue)\n })\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_3, (0,vue__WEBPACK_IMPORTED_MODULE_1__.toDisplayString)(\"\".concat(_ctx.segment.lineNumbers[index], \"\\n\")), 1 /* TEXT */), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_4, (0,vue__WEBPACK_IMPORTED_MODULE_1__.toDisplayString)(\"\".concat(line, \"\\n\")), 1 /* TEXT */)], 4 /* STYLE */);\n }), 128 /* KEYED_FRAGMENT */))])), [[_directive_hljs, _ctx.path]]) : (0,vue__WEBPACK_IMPORTED_MODULE_1__.createCommentVNode)(\"v-if\", true), _ctx.canOpen ? ((0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(\"div\", {\n key: 2,\n \"class\": \"closer bottom\",\n onClick: _cache[1] || (_cache[1] =\n //@ts-ignore\n function () {\n return _ctx.toggleCode && _ctx.toggleCode.apply(_ctx, arguments);\n })\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon\",\n icon: \"chevron-circle-up\",\n title: 'Click to hide code'\n }, null, 512 /* NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_1__.vShow, _ctx.isOpen]])])) : (0,vue__WEBPACK_IMPORTED_MODULE_1__.createCommentVNode)(\"v-if\", true)], 14 /* CLASS, STYLE, PROPS */, _hoisted_1);\n}\n\n//# sourceURL=webpack://reposense/./src/components/c-segment.vue?./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use%5B1%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B4%5D!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": () => (/* binding */ render)\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.concat.js */ \"./node_modules/core-js/modules/es.array.concat.js\");\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.runtime.esm-bundler.js\");\n\n\nvar _hoisted_1 = [\"title\"];\nvar _hoisted_2 = {\n key: 1\n};\nvar _hoisted_3 = {\n \"class\": \"line-number\"\n};\nvar _hoisted_4 = {\n \"class\": \"line-content\"\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n var _component_font_awesome_icon = (0,vue__WEBPACK_IMPORTED_MODULE_1__.resolveComponent)(\"font-awesome-icon\");\n var _directive_hljs = (0,vue__WEBPACK_IMPORTED_MODULE_1__.resolveDirective)(\"hljs\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(\"div\", {\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_1__.normalizeClass)([\"segment\", {\n untouched: !_ctx.segment.knownAuthor,\n active: _ctx.isOpen\n }]),\n style: (0,vue__WEBPACK_IMPORTED_MODULE_1__.normalizeStyle)({\n 'border-left': \"0.25rem solid \".concat(_ctx.authorColors[_ctx.segment.knownAuthor])\n }),\n title: \"Author: \".concat(_ctx.segment.knownAuthor || \"Unknown\")\n }, [_ctx.canOpen ? ((0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(\"div\", {\n key: 0,\n \"class\": \"closer\",\n onClick: _cache[0] || (_cache[0] =\n //@ts-ignore\n function () {\n return _ctx.toggleCode && _ctx.toggleCode.apply(_ctx, arguments);\n }),\n ref: \"topButton\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon\",\n icon: \"plus-circle\",\n title: 'Click to open code'\n }, null, 512 /* NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_1__.vShow, !_ctx.isOpen]]), (0,vue__WEBPACK_IMPORTED_MODULE_1__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon\",\n icon: \"chevron-circle-down\",\n title: 'Click to hide code'\n }, null, 512 /* NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_1__.vShow, _ctx.isOpen]])], 512 /* NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_1__.createCommentVNode)(\"v-if\", true), _ctx.isOpen ? (0,vue__WEBPACK_IMPORTED_MODULE_1__.withDirectives)(((0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(\"div\", _hoisted_2, [((0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_1__.renderList)(_ctx.segment.lines, function (line, index) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(\"div\", {\n \"class\": \"code\",\n key: index,\n style: (0,vue__WEBPACK_IMPORTED_MODULE_1__.normalizeStyle)({\n 'background-color': \"\".concat(_ctx.authorColors[_ctx.segment.knownAuthor]).concat(_ctx.transparencyValue)\n })\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_3, (0,vue__WEBPACK_IMPORTED_MODULE_1__.toDisplayString)(\"\".concat(_ctx.segment.lineNumbers[index], \"\\n\")), 1 /* TEXT */), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode)(\"div\", _hoisted_4, (0,vue__WEBPACK_IMPORTED_MODULE_1__.toDisplayString)(\"\".concat(line, \"\\n\")), 1 /* TEXT */)], 4 /* STYLE */);\n }), 128 /* KEYED_FRAGMENT */))])), [[_directive_hljs, _ctx.path]]) : (0,vue__WEBPACK_IMPORTED_MODULE_1__.createCommentVNode)(\"v-if\", true), _ctx.canOpen ? ((0,vue__WEBPACK_IMPORTED_MODULE_1__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createElementBlock)(\"div\", {\n key: 2,\n \"class\": \"closer bottom\",\n onClick: _cache[1] || (_cache[1] =\n //@ts-ignore\n function () {\n return _ctx.toggleCode && _ctx.toggleCode.apply(_ctx, arguments);\n })\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon\",\n icon: \"chevron-circle-up\",\n title: 'Click to hide code'\n }, null, 512 /* NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_1__.vShow, _ctx.isOpen]])])) : (0,vue__WEBPACK_IMPORTED_MODULE_1__.createCommentVNode)(\"v-if\", true)], 14 /* CLASS, STYLE, PROPS */, _hoisted_1);\n}\n\n//# sourceURL=webpack://reposense/./src/components/c-segment.vue?./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use%5B1%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B4%5D!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -262,14 +262,14 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ }), -/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-summary-charts.vue?vue&type=template&id=10337c16&ts=true&lang=pug": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-summary-charts.vue?vue&type=template&id=10337c16&ts=true&lang=pug ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ +/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-summary-charts.vue?vue&type=template&id=10337c16&scoped=true&ts=true&lang=pug": +/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-summary-charts.vue?vue&type=template&id=10337c16&scoped=true&ts=true&lang=pug ***! + \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": () => (/* binding */ render)\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.function.name.js */ \"./node_modules/core-js/modules/es.function.name.js\");\n/* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.array.includes.js */ \"./node_modules/core-js/modules/es.array.includes.js\");\n/* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.string.includes.js */ \"./node_modules/core-js/modules/es.string.includes.js\");\n/* harmony import */ var core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.array.concat.js */ \"./node_modules/core-js/modules/es.array.concat.js\");\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.runtime.esm-bundler.js\");\n\n\n\n\n\nvar _hoisted_1 = {\n id: \"summary-charts\"\n};\nvar _hoisted_2 = {\n key: 0,\n \"class\": \"summary-charts__title--index\"\n};\nvar _hoisted_3 = {\n \"class\": \"summary-charts__title--contribution\"\n};\nvar _hoisted_4 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_5 = [\"onClick\"];\nvar _hoisted_6 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_7 = [\"onClick\"];\nvar _hoisted_8 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_9 = [\"href\"];\nvar _hoisted_10 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_11 = [\"href\"];\nvar _hoisted_12 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_13 = [\"onClick\"];\nvar _hoisted_14 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_15 = [\"onClick\"];\nvar _hoisted_16 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_17 = [\"href\"];\nvar _hoisted_18 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_19 = [\"onClick\"];\nvar _hoisted_20 = [\"id\", \"onMouseover\", \"onMouseout\"];\nvar _hoisted_21 = {\n key: 8,\n \"class\": \"tooltip summary-chart__title--percentile\"\n};\nvar _hoisted_22 = {\n \"class\": \"tooltip-text right-aligned\"\n};\nvar _hoisted_23 = {\n key: 1,\n \"class\": \"summary-charts__fileType--breakdown\"\n};\nvar _hoisted_24 = [\"id\"];\nvar _hoisted_25 = {\n key: 0,\n \"class\": \"summary-chart__title--index\"\n};\nvar _hoisted_26 = {\n key: 1,\n \"class\": \"summary-chart__title--repo\"\n};\nvar _hoisted_27 = {\n key: 2,\n \"class\": \"summary-chart__title--author-repo\"\n};\nvar _hoisted_28 = {\n \"class\": \"summary-chart__title--contribution mini-font\"\n};\nvar _hoisted_29 = [\"href\"];\nvar _hoisted_30 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_31 = [\"href\"];\nvar _hoisted_32 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_33 = [\"onClick\"];\nvar _hoisted_34 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_35 = [\"onClick\"];\nvar _hoisted_36 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_37 = [\"href\"];\nvar _hoisted_38 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_39 = [\"onClick\"];\nvar _hoisted_40 = [\"id\", \"onMouseover\", \"onMouseout\"];\nvar _hoisted_41 = {\n key: 10,\n \"class\": \"tooltip summary-chart__title--percentile\"\n};\nvar _hoisted_42 = {\n \"class\": \"tooltip-text right-aligned\"\n};\nvar _hoisted_43 = [\"onClick\"];\nvar _hoisted_44 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"overlay\"\n}, null, -1 /* HOISTED */);\nvar _hoisted_45 = {\n \"class\": \"summary-chart__contribution\"\n};\nvar _hoisted_46 = {\n key: 0,\n \"class\": \"summary-chart__contrib\"\n};\nvar _hoisted_47 = [\"title\"];\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n var _component_font_awesome_icon = (0,vue__WEBPACK_IMPORTED_MODULE_4__.resolveComponent)(\"font-awesome-icon\");\n var _component_c_ramp = (0,vue__WEBPACK_IMPORTED_MODULE_4__.resolveComponent)(\"c-ramp\");\n var _component_c_stacked_bar_chart = (0,vue__WEBPACK_IMPORTED_MODULE_4__.resolveComponent)(\"c-stacked-bar-chart\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_1, [((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_4__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_4__.renderList)(_ctx.filteredRepos, function (repo, i) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", {\n \"class\": \"summary-charts\",\n ref_for: true,\n ref: 'summary-charts-' + i,\n style: (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeStyle)(_ctx.isChartGroupWidgetMode ? {\n 'marginBottom': 0\n } : {})\n }, [_ctx.filterGroupSelection !== 'groupByNone' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", {\n key: 0,\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)([\"summary-charts__title\", {\n 'active-background': _ctx.isSelectedGroup(repo[0].name, repo[0].repoName) && !_ctx.isChartGroupWidgetMode\n }]),\n ref_for: true,\n ref: 'summary-charts-title-' + i\n }, [!_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_2, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(i + 1), 1 /* TEXT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"summary-charts__title--groupname\",\n style: (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeStyle)(_ctx.isChartGroupWidgetMode ? {\n 'paddingLeft': 0\n } : {})\n }, [_ctx.filterGroupSelection === 'groupByRepos' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_4__.Fragment, {\n key: 0\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(repo[0].repoName), 1 /* TEXT */)], 64 /* STABLE_FRAGMENT */)) : _ctx.filterGroupSelection === 'groupByAuthors' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_4__.Fragment, {\n key: 1\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getAuthorDisplayName(repo)) + \" (\" + (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(repo[0].name) + \")\", 1 /* TEXT */)], 64 /* STABLE_FRAGMENT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 4 /* STYLE */), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", _hoisted_3, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-total-contribution\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-total-contribution\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createTextVNode)(\"[\" + (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getGroupTotalContribution(repo)) + \" lines]\", 1 /* TEXT */), _ctx.filterGroupSelection === 'groupByRepos' && !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"span\", {\n key: 0,\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-total-contribution\")\n }, \"Total contribution of group\", 512 /* NEED_PATCH */)) : _ctx.filterGroupSelection === 'groupByAuthors' && !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"span\", {\n key: 1,\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-total-contribution\")\n }, \"Total contribution of author\", 512 /* NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_4)]), !_ctx.isGroupMerged(_ctx.getGroupName(repo)) && !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 1,\n onClick: function onClick($event) {\n return _ctx.handleMergeGroup(_ctx.getGroupName(repo));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-merge-group\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-merge-group\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: ['fas', 'chevron-up']\n }), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", {\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-merge-group\")\n }, \"Click to merge group\", 512 /* NEED_PATCH */)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_6)], 8 /* PROPS */, _hoisted_5)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.isGroupMerged(_ctx.getGroupName(repo)) && !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 2,\n onClick: function onClick($event) {\n return _ctx.handleExpandGroup(_ctx.getGroupName(repo));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-expand-group\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-expand-group\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: ['fas', 'chevron-down']\n }), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", {\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-expand-group\")\n }, \"Click to expand group\", 512 /* NEED_PATCH */)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_8)], 8 /* PROPS */, _hoisted_7)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.filterGroupSelection === 'groupByRepos' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 3,\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)(!_ctx.isBrokenLink(_ctx.getRepoLink(repo[0])) ? '' : 'broken-link'),\n href: _ctx.getRepoLink(repo[0]),\n target: \"_blank\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-repo-link\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-repo-link\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: _ctx.getRepoIcon(repo[0])\n }, null, 8 /* PROPS */, [\"icon\"]), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"span\", {\n key: 0,\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-repo-link\")\n }, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getGroupRepoLinkMessage(repo[0])), 513 /* TEXT, NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_10)], 10 /* CLASS, PROPS */, _hoisted_9)) : _ctx.filterGroupSelection === 'groupByAuthors' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 4,\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)(!_ctx.isBrokenLink(_ctx.getAuthorProfileLink(repo[0], repo[0].name)) ? '' : 'broken-link'),\n href: _ctx.getAuthorProfileLink(repo[0], repo[0].name),\n target: \"_blank\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-author-link\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-author-link\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: \"user\"\n }), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"span\", {\n key: 0,\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-author-link\")\n }, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getAuthorProfileLinkMessage(repo[0])), 513 /* TEXT, NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_12)], 10 /* CLASS, PROPS */, _hoisted_11)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.isGroupMerged(_ctx.getGroupName(repo)) ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_4__.Fragment, {\n key: 5\n }, [_ctx.filterGroupSelection !== 'groupByAuthors' && !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 0,\n onclick: \"deactivateAllOverlays()\",\n onClick: function onClick($event) {\n return _ctx.openTabAuthorship(repo[0], repo, 0, _ctx.isGroupMerged(_ctx.getGroupName(repo)));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-group-code\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-group-code\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)([\"icon-button\", {\n 'active-icon': _ctx.isSelectedTab(repo[0].name, repo[0].repoName, 'authorship', true)\n }]),\n icon: \"code\"\n }, null, 8 /* PROPS */, [\"class\"]), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", {\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-group-code\")\n }, \"Click to view group's code\", 512 /* NEED_PATCH */)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_14)], 8 /* PROPS */, _hoisted_13)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 1,\n onclick: \"deactivateAllOverlays()\",\n onClick: function onClick($event) {\n return _ctx.openTabZoom(repo[0], _ctx.filterSinceDate, _ctx.filterUntilDate, _ctx.isGroupMerged(_ctx.getGroupName(repo)));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-commit-breakdown\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-commit-breakdown\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)([\"icon-button\", {\n 'active-icon': _ctx.isSelectedTab(repo[0].name, repo[0].repoName, 'zoom', true)\n }]),\n icon: \"list-ul\"\n }, null, 8 /* PROPS */, [\"class\"]), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", {\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-commit-breakdown\")\n }, \"Click to view breakdown of commits\", 512 /* NEED_PATCH */)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_16)], 8 /* PROPS */, _hoisted_15)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 64 /* STABLE_FRAGMENT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.isChartGroupWidgetMode && !_ctx.isChartWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 6,\n href: _ctx.getReportLink(),\n target: \"_blank\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-commit-breakdown-group-widget\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-commit-breakdown-group-widget\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: \"arrow-up-right-from-square\"\n }), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"span\", {\n key: 0,\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-commit-breakdown-group-widget\")\n }, \"Click to view breakdown of commits on RepoSense\", 512 /* NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_18)], 8 /* PROPS */, _hoisted_17)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 7,\n onClick: function onClick($event) {\n return _ctx.getEmbeddedIframe(i);\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n id: 'tooltip-' + i,\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-copy-iframe\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-copy-iframe\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: \"clipboard\"\n }), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", {\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-copy-iframe\")\n }, \"Click to copy iframe link for group\", 512 /* NEED_PATCH */)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_20)], 8 /* PROPS */, _hoisted_19)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.sortGroupSelection.includes('totalCommits') ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_21, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getPercentile(i)) + \" % \", 1 /* TEXT */), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", _hoisted_22, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getPercentileExplanation(i)), 1 /* TEXT */)])) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 2 /* CLASS */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.filterBreakdown ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_23, [_ctx.filterGroupSelection !== 'groupByNone' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_4__.Fragment, {\n key: 0\n }, (0,vue__WEBPACK_IMPORTED_MODULE_4__.renderList)(_ctx.getFileTypes(repo), function (fileType) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", {\n \"class\": \"summary-charts__fileType--breakdown__legend\",\n key: fileType\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n icon: \"circle\",\n style: (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeStyle)({\n 'color': _ctx.fileTypeColors[fileType]\n })\n }, null, 8 /* PROPS */, [\"style\"]), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", null, \"  \" + (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(fileType) + \"  \", 1 /* TEXT */)]);\n }), 128 /* KEYED_FRAGMENT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)])) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_4__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_4__.renderList)(_ctx.getRepo(repo), function (user, j) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", {\n \"class\": \"summary-chart\",\n style: (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeStyle)(_ctx.isChartGroupWidgetMode && j === _ctx.getRepo(repo).length - 1 ? {\n 'marginBottom': 0\n } : {}),\n ref_for: true,\n ref: 'summary-chart-' + j,\n id: user.name === _ctx.activeUser && user.repoName === _ctx.activeRepo ? 'selectedChart' : null\n }, [!_ctx.isGroupMerged(_ctx.getGroupName(repo)) ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", {\n key: 0,\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)([\"summary-chart__title\", {\n 'active-background': user.name === _ctx.activeUser && user.repoName === _ctx.activeRepo && !_ctx.isChartGroupWidgetMode\n }])\n }, [!_ctx.isChartWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_25, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(j + 1), 1 /* TEXT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.filterGroupSelection === 'groupByNone' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_26, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(user.repoName), 1 /* TEXT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.filterGroupSelection === 'groupByAuthors' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_27, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(user.repoName), 1 /* TEXT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.filterGroupSelection !== 'groupByAuthors' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", {\n key: 3,\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)([\"summary-chart__title--name\", {\n warn: user.name === '-'\n }])\n }, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(user.displayName) + \" (\" + (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(user.name) + \")\", 3 /* TEXT, CLASS */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", _hoisted_28, \"[\" + (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(user.checkedFileTypeContribution) + \" lines]\", 1 /* TEXT */), _ctx.filterGroupSelection !== 'groupByRepos' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 4,\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)(!_ctx.isBrokenLink(_ctx.getRepoLink(user)) ? '' : 'broken-link'),\n href: _ctx.getRepoLink(user),\n target: \"_blank\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"repo-\".concat(i, \"-author-\").concat(j, \"-repo-link\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"repo-\".concat(i, \"-author-\").concat(j, \"-repo-link\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: _ctx.getRepoIcon(repo[0])\n }, null, 8 /* PROPS */, [\"icon\"]), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"span\", {\n key: 0,\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"repo-\".concat(i, \"-author-\").concat(j, \"-repo-link\")\n }, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getRepoLinkMessage(user)), 513 /* TEXT, NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_30)], 10 /* CLASS, PROPS */, _hoisted_29)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.filterGroupSelection !== 'groupByAuthors' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 5,\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)(!_ctx.isBrokenLink(_ctx.getAuthorProfileLink(user, user.name)) ? '' : 'broken-link'),\n href: _ctx.getAuthorProfileLink(user, user.name),\n target: \"_blank\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"repo-\".concat(i, \"-author-\").concat(j, \"-author-link\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"repo-\".concat(i, \"-author-\").concat(j, \"-author-link\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: \"user\"\n }), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"span\", {\n key: 0,\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"repo-\".concat(i, \"-author-\").concat(j, \"-author-link\")\n }, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getAuthorProfileLinkMessage(user)), 513 /* TEXT, NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_32)], 10 /* CLASS, PROPS */, _hoisted_31)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 6,\n onclick: \"deactivateAllOverlays()\",\n onClick: function onClick($event) {\n return _ctx.openTabAuthorship(user, repo, j, _ctx.isGroupMerged(_ctx.getGroupName(repo)));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"repo-\".concat(i, \"-author-\").concat(j, \"-author-contribution\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"repo-\".concat(i, \"-author-\").concat(j, \"-author-contribution\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)([\"icon-button\", {\n 'active-icon': _ctx.isSelectedTab(user.name, user.repoName, 'authorship', false)\n }]),\n icon: \"code\"\n }, null, 8 /* PROPS */, [\"class\"]), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", {\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"repo-\".concat(i, \"-author-\").concat(j, \"-author-contribution\")\n }, \"Click to view author's contribution.\", 512 /* NEED_PATCH */)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_34)], 8 /* PROPS */, _hoisted_33)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 7,\n onclick: \"deactivateAllOverlays()\",\n onClick: function onClick($event) {\n return _ctx.openTabZoom(user, _ctx.filterSinceDate, _ctx.filterUntilDate, _ctx.isGroupMerged(_ctx.getGroupName(repo)));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"repo-\".concat(i, \"-author-\").concat(j, \"-commit-breakdown\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"repo-\".concat(i, \"-author-\").concat(j, \"-commit-breakdown\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)([\"icon-button\", {\n 'active-icon': _ctx.isSelectedTab(user.name, user.repoName, 'zoom', false)\n }]),\n icon: \"list-ul\"\n }, null, 8 /* PROPS */, [\"class\"]), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", {\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"repo-\".concat(i, \"-author-\").concat(j, \"-commit-breakdown\")\n }, \"Click to view breakdown of commits\", 512 /* NEED_PATCH */)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_36)], 8 /* PROPS */, _hoisted_35)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 8,\n href: _ctx.getReportLink(),\n target: \"_blank\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"repo-\".concat(i, \"-author-\").concat(j, \"-commit-breakdown-group-widget\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"repo-\".concat(i, \"-author-\").concat(j, \"-commit-breakdown-group-widget\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: \"arrow-up-right-from-square\"\n }), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"span\", {\n key: 0,\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"repo-\".concat(i, \"-author-\").concat(j, \"-commit-breakdown-group-widget\")\n }, \"Click to view breakdown of commits on RepoSense\", 512 /* NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_38)], 8 /* PROPS */, _hoisted_37)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 9,\n onClick: function onClick($event) {\n return _ctx.getEmbeddedIframe(i, j);\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n id: 'tooltip-' + i + '-' + j,\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"repo-\".concat(i, \"-author-\").concat(j, \"-iframe-link\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"repo-\".concat(i, \"-author-\").concat(j, \"-iframe-link\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: \"clipboard\"\n }), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", {\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"repo-\".concat(i, \"-author-\").concat(j, \"-iframe-link\")\n }, \"Click to copy iframe link\", 512 /* NEED_PATCH */)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_40)], 8 /* PROPS */, _hoisted_39)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.filterGroupSelection === 'groupByNone' && _ctx.sortGroupSelection.includes('totalCommits') ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_41, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getPercentile(j)) + \" % \", 1 /* TEXT */), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", _hoisted_42, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getPercentileExplanation(j)), 1 /* TEXT */)])) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 2 /* CLASS */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"summary-chart__ramp\",\n onClick: function onClick($event) {\n return _ctx.openTabZoomSubrange(user, $event, _ctx.isGroupMerged(_ctx.getGroupName(repo)));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_c_ramp, {\n groupby: _ctx.filterGroupSelection,\n user: user,\n tframe: _ctx.filterTimeFrame,\n sdate: _ctx.filterSinceDate,\n udate: _ctx.filterUntilDate,\n avgsize: _ctx.avgCommitSize,\n mergegroup: _ctx.isGroupMerged(_ctx.getGroupName(repo)),\n filtersearch: _ctx.filterSearch,\n \"is-widget-mode\": _ctx.isChartGroupWidgetMode\n }, null, 8 /* PROPS */, [\"groupby\", \"user\", \"tframe\", \"sdate\", \"udate\", \"avgsize\", \"mergegroup\", \"filtersearch\", \"is-widget-mode\"]), _hoisted_44], 8 /* PROPS */, _hoisted_43), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", _hoisted_45, [_ctx.filterBreakdown ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_46, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_c_stacked_bar_chart, {\n bars: _ctx.getFileTypeContributionBars(user.fileTypeContribution, user.checkedFileTypeContribution)\n }, null, 8 /* PROPS */, [\"bars\"])])) : ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", {\n key: 1,\n \"class\": \"summary-chart__contrib\",\n title: \"Total contribution from \".concat(_ctx.minDate, \" to \").concat(_ctx.maxDate, \": \").concat(user.checkedFileTypeContribution, \" lines\")\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_c_stacked_bar_chart, {\n bars: _ctx.getContributionBars(user.checkedFileTypeContribution)\n }, null, 8 /* PROPS */, [\"bars\"])], 8 /* PROPS */, _hoisted_47))])], 12 /* STYLE, PROPS */, _hoisted_24);\n }), 256 /* UNKEYED_FRAGMENT */))], 4 /* STYLE */);\n }), 256 /* UNKEYED_FRAGMENT */))]);\n}\n\n//# sourceURL=webpack://reposense/./src/components/c-summary-charts.vue?./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use%5B1%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B4%5D!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": () => (/* binding */ render)\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.function.name.js */ \"./node_modules/core-js/modules/es.function.name.js\");\n/* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.array.includes.js */ \"./node_modules/core-js/modules/es.array.includes.js\");\n/* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.string.includes.js */ \"./node_modules/core-js/modules/es.string.includes.js\");\n/* harmony import */ var core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.array.concat.js */ \"./node_modules/core-js/modules/es.array.concat.js\");\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.runtime.esm-bundler.js\");\n\n\n\n\n\nvar _withScopeId = function _withScopeId(n) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_4__.pushScopeId)(\"data-v-10337c16\"), n = n(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.popScopeId)(), n;\n};\nvar _hoisted_1 = {\n id: \"summary-charts\"\n};\nvar _hoisted_2 = {\n key: 0,\n \"class\": \"summary-charts__title--index\"\n};\nvar _hoisted_3 = {\n \"class\": \"summary-charts__title--contribution\"\n};\nvar _hoisted_4 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_5 = [\"onClick\"];\nvar _hoisted_6 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_7 = [\"onClick\"];\nvar _hoisted_8 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_9 = [\"href\"];\nvar _hoisted_10 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_11 = [\"href\"];\nvar _hoisted_12 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_13 = [\"onClick\"];\nvar _hoisted_14 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_15 = [\"onClick\"];\nvar _hoisted_16 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_17 = [\"href\"];\nvar _hoisted_18 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_19 = [\"onClick\"];\nvar _hoisted_20 = [\"id\", \"onMouseover\", \"onMouseout\"];\nvar _hoisted_21 = {\n key: 8,\n \"class\": \"tooltip summary-chart__title--percentile\"\n};\nvar _hoisted_22 = {\n \"class\": \"tooltip-text right-aligned\"\n};\nvar _hoisted_23 = {\n key: 9,\n \"class\": \"summary-charts__title--tags\"\n};\nvar _hoisted_24 = [\"href\"];\nvar _hoisted_25 = {\n key: 1,\n \"class\": \"summary-charts__fileType--breakdown\"\n};\nvar _hoisted_26 = [\"id\"];\nvar _hoisted_27 = {\n key: 0,\n \"class\": \"summary-chart__title--index\"\n};\nvar _hoisted_28 = {\n key: 1,\n \"class\": \"summary-chart__title--repo\"\n};\nvar _hoisted_29 = {\n key: 2,\n \"class\": \"summary-chart__title--author-repo\"\n};\nvar _hoisted_30 = {\n \"class\": \"summary-chart__title--contribution mini-font\"\n};\nvar _hoisted_31 = [\"href\"];\nvar _hoisted_32 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_33 = [\"href\"];\nvar _hoisted_34 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_35 = [\"onClick\"];\nvar _hoisted_36 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_37 = [\"onClick\"];\nvar _hoisted_38 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_39 = [\"href\"];\nvar _hoisted_40 = [\"onMouseover\", \"onMouseout\"];\nvar _hoisted_41 = [\"onClick\"];\nvar _hoisted_42 = [\"id\", \"onMouseover\", \"onMouseout\"];\nvar _hoisted_43 = {\n key: 10,\n \"class\": \"tooltip summary-chart__title--percentile\"\n};\nvar _hoisted_44 = {\n \"class\": \"tooltip-text right-aligned\"\n};\nvar _hoisted_45 = {\n key: 11,\n \"class\": \"summary-chart__title--tags\"\n};\nvar _hoisted_46 = [\"href\"];\nvar _hoisted_47 = [\"onClick\"];\nvar _hoisted_48 = /*#__PURE__*/_withScopeId(function () {\n return /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"overlay\"\n }, null, -1 /* HOISTED */);\n});\nvar _hoisted_49 = {\n \"class\": \"summary-chart__contribution\"\n};\nvar _hoisted_50 = {\n key: 0,\n \"class\": \"summary-chart__contrib\"\n};\nvar _hoisted_51 = [\"title\"];\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n var _component_font_awesome_icon = (0,vue__WEBPACK_IMPORTED_MODULE_4__.resolveComponent)(\"font-awesome-icon\");\n var _component_c_ramp = (0,vue__WEBPACK_IMPORTED_MODULE_4__.resolveComponent)(\"c-ramp\");\n var _component_c_stacked_bar_chart = (0,vue__WEBPACK_IMPORTED_MODULE_4__.resolveComponent)(\"c-stacked-bar-chart\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_1, [((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_4__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_4__.renderList)(_ctx.filteredRepos, function (repo, i) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", {\n \"class\": \"summary-charts\",\n ref_for: true,\n ref: 'summary-charts-' + i,\n style: (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeStyle)(_ctx.isChartGroupWidgetMode ? {\n 'marginBottom': 0\n } : {})\n }, [_ctx.filterGroupSelection !== 'groupByNone' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", {\n key: 0,\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)([\"summary-charts__title\", {\n 'active-background': _ctx.isSelectedGroup(repo[0].name, repo[0].repoName) && !_ctx.isChartGroupWidgetMode\n }]),\n ref_for: true,\n ref: 'summary-charts-title-' + i\n }, [!_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_2, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(i + 1), 1 /* TEXT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"summary-charts__title--groupname\",\n style: (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeStyle)(_ctx.isChartGroupWidgetMode ? {\n 'paddingLeft': 0\n } : {})\n }, [_ctx.filterGroupSelection === 'groupByRepos' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_4__.Fragment, {\n key: 0\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(repo[0].repoName), 1 /* TEXT */)], 64 /* STABLE_FRAGMENT */)) : _ctx.filterGroupSelection === 'groupByAuthors' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_4__.Fragment, {\n key: 1\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getAuthorDisplayName(repo)) + \" (\" + (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(repo[0].name) + \")\", 1 /* TEXT */)], 64 /* STABLE_FRAGMENT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 4 /* STYLE */), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", _hoisted_3, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-total-contribution\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-total-contribution\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createTextVNode)(\"[\" + (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getGroupTotalContribution(repo)) + \" lines]\", 1 /* TEXT */), _ctx.filterGroupSelection === 'groupByRepos' && !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"span\", {\n key: 0,\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-total-contribution\")\n }, \"Total contribution of group\", 512 /* NEED_PATCH */)) : _ctx.filterGroupSelection === 'groupByAuthors' && !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"span\", {\n key: 1,\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-total-contribution\")\n }, \"Total contribution of author\", 512 /* NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_4)]), !_ctx.isGroupMerged(_ctx.getGroupName(repo)) && !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 1,\n onClick: function onClick($event) {\n return _ctx.handleMergeGroup(_ctx.getGroupName(repo));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-merge-group\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-merge-group\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: ['fas', 'chevron-up']\n }), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", {\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-merge-group\")\n }, \"Click to merge group\", 512 /* NEED_PATCH */)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_6)], 8 /* PROPS */, _hoisted_5)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.isGroupMerged(_ctx.getGroupName(repo)) && !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 2,\n onClick: function onClick($event) {\n return _ctx.handleExpandGroup(_ctx.getGroupName(repo));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-expand-group\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-expand-group\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: ['fas', 'chevron-down']\n }), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", {\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-expand-group\")\n }, \"Click to expand group\", 512 /* NEED_PATCH */)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_8)], 8 /* PROPS */, _hoisted_7)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.filterGroupSelection === 'groupByRepos' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 3,\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)(!_ctx.isBrokenLink(_ctx.getRepoLink(repo[0])) ? '' : 'broken-link'),\n href: _ctx.getRepoLink(repo[0]),\n target: \"_blank\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-repo-link\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-repo-link\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: _ctx.getRepoIcon(repo[0])\n }, null, 8 /* PROPS */, [\"icon\"]), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"span\", {\n key: 0,\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-repo-link\")\n }, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getGroupRepoLinkMessage(repo[0])), 513 /* TEXT, NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_10)], 10 /* CLASS, PROPS */, _hoisted_9)) : _ctx.filterGroupSelection === 'groupByAuthors' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 4,\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)(!_ctx.isBrokenLink(_ctx.getAuthorProfileLink(repo[0], repo[0].name)) ? '' : 'broken-link'),\n href: _ctx.getAuthorProfileLink(repo[0], repo[0].name),\n target: \"_blank\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-author-link\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-author-link\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: \"user\"\n }), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"span\", {\n key: 0,\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-author-link\")\n }, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getAuthorProfileLinkMessage(repo[0])), 513 /* TEXT, NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_12)], 10 /* CLASS, PROPS */, _hoisted_11)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.isGroupMerged(_ctx.getGroupName(repo)) ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_4__.Fragment, {\n key: 5\n }, [_ctx.filterGroupSelection !== 'groupByAuthors' && !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 0,\n onclick: \"deactivateAllOverlays()\",\n onClick: function onClick($event) {\n return _ctx.openTabAuthorship(repo[0], repo, 0, _ctx.isGroupMerged(_ctx.getGroupName(repo)));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-group-code\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-group-code\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)([\"icon-button\", {\n 'active-icon': _ctx.isSelectedTab(repo[0].name, repo[0].repoName, 'authorship', true)\n }]),\n icon: \"code\"\n }, null, 8 /* PROPS */, [\"class\"]), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", {\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-group-code\")\n }, \"Click to view group's code\", 512 /* NEED_PATCH */)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_14)], 8 /* PROPS */, _hoisted_13)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 1,\n onclick: \"deactivateAllOverlays()\",\n onClick: function onClick($event) {\n return _ctx.openTabZoom(repo[0], _ctx.filterSinceDate, _ctx.filterUntilDate, _ctx.isGroupMerged(_ctx.getGroupName(repo)));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-commit-breakdown\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-commit-breakdown\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)([\"icon-button\", {\n 'active-icon': _ctx.isSelectedTab(repo[0].name, repo[0].repoName, 'zoom', true)\n }]),\n icon: \"list-ul\"\n }, null, 8 /* PROPS */, [\"class\"]), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", {\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-commit-breakdown\")\n }, \"Click to view breakdown of commits\", 512 /* NEED_PATCH */)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_16)], 8 /* PROPS */, _hoisted_15)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 64 /* STABLE_FRAGMENT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.isChartGroupWidgetMode && !_ctx.isChartWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 6,\n href: _ctx.getReportLink(),\n target: \"_blank\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-commit-breakdown-group-widget\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-commit-breakdown-group-widget\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: \"arrow-up-right-from-square\"\n }), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"span\", {\n key: 0,\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-commit-breakdown-group-widget\")\n }, \"Click to view breakdown of commits on RepoSense\", 512 /* NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_18)], 8 /* PROPS */, _hoisted_17)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 7,\n onClick: function onClick($event) {\n return _ctx.getEmbeddedIframe(i);\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n id: 'tooltip-' + i,\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"summary-charts-\".concat(i, \"-copy-iframe\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"summary-charts-\".concat(i, \"-copy-iframe\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: \"clipboard\"\n }), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", {\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"summary-charts-\".concat(i, \"-copy-iframe\")\n }, \"Click to copy iframe link for group\", 512 /* NEED_PATCH */)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_20)], 8 /* PROPS */, _hoisted_19)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.sortGroupSelection.includes('totalCommits') ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_21, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getPercentile(i)) + \" % \", 1 /* TEXT */), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", _hoisted_22, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getPercentileExplanation(i)), 1 /* TEXT */)])) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.isViewingTagsByRepo ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_23, [((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_4__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_4__.renderList)(_ctx.getTags(repo), function (tag) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n \"class\": \"tag\",\n href: _ctx.getTagLink(repo[0], tag),\n target: \"_blank\",\n \"vbind:key\": \"tag\",\n tabindex: \"-1\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n icon: \"tags\"\n }), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", null, \" \" + (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(tag), 1 /* TEXT */)], 8 /* PROPS */, _hoisted_24);\n }), 256 /* UNKEYED_FRAGMENT */))])) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 2 /* CLASS */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.filterBreakdown ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_25, [_ctx.filterGroupSelection !== 'groupByNone' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_4__.Fragment, {\n key: 0\n }, (0,vue__WEBPACK_IMPORTED_MODULE_4__.renderList)(_ctx.getFileTypes(repo), function (fileType) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", {\n \"class\": \"summary-charts__fileType--breakdown__legend\",\n key: fileType\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n icon: \"circle\",\n style: (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeStyle)({\n 'color': _ctx.fileTypeColors[fileType]\n })\n }, null, 8 /* PROPS */, [\"style\"]), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", null, \"  \" + (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(fileType) + \"  \", 1 /* TEXT */)]);\n }), 128 /* KEYED_FRAGMENT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)])) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_4__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_4__.renderList)(_ctx.getRepo(repo), function (user, j) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", {\n \"class\": \"summary-chart\",\n style: (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeStyle)(_ctx.isChartGroupWidgetMode && j === _ctx.getRepo(repo).length - 1 ? {\n 'marginBottom': 0\n } : {}),\n ref_for: true,\n ref: 'summary-chart-' + j,\n id: user.name === _ctx.activeUser && user.repoName === _ctx.activeRepo ? 'selectedChart' : null\n }, [!_ctx.isGroupMerged(_ctx.getGroupName(repo)) ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", {\n key: 0,\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)([\"summary-chart__title\", {\n 'active-background': user.name === _ctx.activeUser && user.repoName === _ctx.activeRepo && !_ctx.isChartGroupWidgetMode\n }])\n }, [!_ctx.isChartWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_27, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(j + 1), 1 /* TEXT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.filterGroupSelection === 'groupByNone' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_28, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(user.repoName), 1 /* TEXT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.filterGroupSelection === 'groupByAuthors' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_29, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(user.repoName), 1 /* TEXT */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.filterGroupSelection !== 'groupByAuthors' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", {\n key: 3,\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)([\"summary-chart__title--name\", {\n warn: user.name === '-'\n }])\n }, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(user.displayName) + \" (\" + (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(user.name) + \")\", 3 /* TEXT, CLASS */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", _hoisted_30, \"[\" + (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(user.checkedFileTypeContribution) + \" lines]\", 1 /* TEXT */), _ctx.filterGroupSelection !== 'groupByRepos' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 4,\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)(!_ctx.isBrokenLink(_ctx.getRepoLink(user)) ? '' : 'broken-link'),\n href: _ctx.getRepoLink(user),\n target: \"_blank\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"repo-\".concat(i, \"-author-\").concat(j, \"-repo-link\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"repo-\".concat(i, \"-author-\").concat(j, \"-repo-link\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: _ctx.getRepoIcon(repo[0])\n }, null, 8 /* PROPS */, [\"icon\"]), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"span\", {\n key: 0,\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"repo-\".concat(i, \"-author-\").concat(j, \"-repo-link\")\n }, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getRepoLinkMessage(user)), 513 /* TEXT, NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_32)], 10 /* CLASS, PROPS */, _hoisted_31)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.filterGroupSelection !== 'groupByAuthors' ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 5,\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)(!_ctx.isBrokenLink(_ctx.getAuthorProfileLink(user, user.name)) ? '' : 'broken-link'),\n href: _ctx.getAuthorProfileLink(user, user.name),\n target: \"_blank\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"repo-\".concat(i, \"-author-\").concat(j, \"-author-link\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"repo-\".concat(i, \"-author-\").concat(j, \"-author-link\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: \"user\"\n }), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"span\", {\n key: 0,\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"repo-\".concat(i, \"-author-\").concat(j, \"-author-link\")\n }, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getAuthorProfileLinkMessage(user)), 513 /* TEXT, NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_34)], 10 /* CLASS, PROPS */, _hoisted_33)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 6,\n onclick: \"deactivateAllOverlays()\",\n onClick: function onClick($event) {\n return _ctx.openTabAuthorship(user, repo, j, _ctx.isGroupMerged(_ctx.getGroupName(repo)));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"repo-\".concat(i, \"-author-\").concat(j, \"-author-contribution\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"repo-\".concat(i, \"-author-\").concat(j, \"-author-contribution\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)([\"icon-button\", {\n 'active-icon': _ctx.isSelectedTab(user.name, user.repoName, 'authorship', false)\n }]),\n icon: \"code\"\n }, null, 8 /* PROPS */, [\"class\"]), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", {\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"repo-\".concat(i, \"-author-\").concat(j, \"-author-contribution\")\n }, \"Click to view author's contribution.\", 512 /* NEED_PATCH */)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_36)], 8 /* PROPS */, _hoisted_35)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 7,\n onclick: \"deactivateAllOverlays()\",\n onClick: function onClick($event) {\n return _ctx.openTabZoom(user, _ctx.filterSinceDate, _ctx.filterUntilDate, _ctx.isGroupMerged(_ctx.getGroupName(repo)));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"repo-\".concat(i, \"-author-\").concat(j, \"-commit-breakdown\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"repo-\".concat(i, \"-author-\").concat(j, \"-commit-breakdown\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": (0,vue__WEBPACK_IMPORTED_MODULE_4__.normalizeClass)([\"icon-button\", {\n 'active-icon': _ctx.isSelectedTab(user.name, user.repoName, 'zoom', false)\n }]),\n icon: \"list-ul\"\n }, null, 8 /* PROPS */, [\"class\"]), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", {\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"repo-\".concat(i, \"-author-\").concat(j, \"-commit-breakdown\")\n }, \"Click to view breakdown of commits\", 512 /* NEED_PATCH */)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_38)], 8 /* PROPS */, _hoisted_37)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 8,\n href: _ctx.getReportLink(),\n target: \"_blank\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"repo-\".concat(i, \"-author-\").concat(j, \"-commit-breakdown-group-widget\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"repo-\".concat(i, \"-author-\").concat(j, \"-commit-breakdown-group-widget\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: \"arrow-up-right-from-square\"\n }), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"span\", {\n key: 0,\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"repo-\".concat(i, \"-author-\").concat(j, \"-commit-breakdown-group-widget\")\n }, \"Click to view breakdown of commits on RepoSense\", 512 /* NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_40)], 8 /* PROPS */, _hoisted_39)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), !_ctx.isChartGroupWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n key: 9,\n onClick: function onClick($event) {\n return _ctx.getEmbeddedIframe(i, j);\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"tooltip\",\n id: 'tooltip-' + i + '-' + j,\n onMouseover: function onMouseover($event) {\n return _ctx.onTooltipHover(\"repo-\".concat(i, \"-author-\").concat(j, \"-iframe-link\"));\n },\n onMouseout: function onMouseout($event) {\n return _ctx.resetTooltip(\"repo-\".concat(i, \"-author-\").concat(j, \"-iframe-link\"));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n \"class\": \"icon-button\",\n icon: \"clipboard\"\n }), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", {\n \"class\": \"tooltip-text\",\n ref_for: true,\n ref: \"repo-\".concat(i, \"-author-\").concat(j, \"-iframe-link\")\n }, \"Click to copy iframe link\", 512 /* NEED_PATCH */)], 40 /* PROPS, NEED_HYDRATION */, _hoisted_42)], 8 /* PROPS */, _hoisted_41)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.filterGroupSelection === 'groupByNone' && _ctx.sortGroupSelection.includes('totalCommits') ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_43, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createTextVNode)((0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getPercentile(j)) + \" % \", 1 /* TEXT */), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", _hoisted_44, (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(_ctx.getPercentileExplanation(j)), 1 /* TEXT */)])) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), _ctx.isViewingTagsByAuthor ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_45, [((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_4__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_4__.renderList)(_ctx.getTags(repo, user), function (tag) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"a\", {\n \"class\": \"tag\",\n href: _ctx.getTagLink(user, tag),\n target: \"_blank\",\n \"vbind:key\": \"tag\",\n tabindex: \"-1\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_font_awesome_icon, {\n icon: \"tags\"\n }), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"span\", null, \" \" + (0,vue__WEBPACK_IMPORTED_MODULE_4__.toDisplayString)(tag), 1 /* TEXT */)], 8 /* PROPS */, _hoisted_46);\n }), 256 /* UNKEYED_FRAGMENT */))])) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true)], 2 /* CLASS */)) : (0,vue__WEBPACK_IMPORTED_MODULE_4__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", {\n \"class\": \"summary-chart__ramp\",\n onClick: function onClick($event) {\n return _ctx.openTabZoomSubrange(user, $event, _ctx.isGroupMerged(_ctx.getGroupName(repo)));\n }\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_c_ramp, {\n groupby: _ctx.filterGroupSelection,\n user: user,\n tframe: _ctx.filterTimeFrame,\n sdate: _ctx.filterSinceDate,\n udate: _ctx.filterUntilDate,\n avgsize: _ctx.avgCommitSize,\n mergegroup: _ctx.isGroupMerged(_ctx.getGroupName(repo)),\n filtersearch: _ctx.filterSearch,\n \"is-widget-mode\": _ctx.isChartGroupWidgetMode\n }, null, 8 /* PROPS */, [\"groupby\", \"user\", \"tframe\", \"sdate\", \"udate\", \"avgsize\", \"mergegroup\", \"filtersearch\", \"is-widget-mode\"]), _hoisted_48], 8 /* PROPS */, _hoisted_47), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementVNode)(\"div\", _hoisted_49, [_ctx.filterBreakdown ? ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", _hoisted_50, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_c_stacked_bar_chart, {\n bars: _ctx.getFileTypeContributionBars(user.fileTypeContribution, user.checkedFileTypeContribution)\n }, null, 8 /* PROPS */, [\"bars\"])])) : ((0,vue__WEBPACK_IMPORTED_MODULE_4__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_4__.createElementBlock)(\"div\", {\n key: 1,\n \"class\": \"summary-chart__contrib\",\n title: \"Total contribution from \".concat(_ctx.minDate, \" to \").concat(_ctx.maxDate, \": \").concat(user.checkedFileTypeContribution, \" lines\")\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_4__.createVNode)(_component_c_stacked_bar_chart, {\n bars: _ctx.getContributionBars(user.checkedFileTypeContribution)\n }, null, 8 /* PROPS */, [\"bars\"])], 8 /* PROPS */, _hoisted_51))])], 12 /* STYLE, PROPS */, _hoisted_26);\n }), 256 /* UNKEYED_FRAGMENT */))], 4 /* STYLE */);\n }), 256 /* UNKEYED_FRAGMENT */))]);\n}\n\n//# sourceURL=webpack://reposense/./src/components/c-summary-charts.vue?./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use%5B1%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B4%5D!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -324,7 +324,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": () => (/* binding */ render)\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.concat.js */ \"./node_modules/core-js/modules/es.array.concat.js\");\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.object.entries.js */ \"./node_modules/core-js/modules/es.object.entries.js\");\n/* harmony import */ var core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.array.slice.js */ \"./node_modules/core-js/modules/es.array.slice.js\");\n/* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es_object_values_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.object.values.js */ \"./node_modules/core-js/modules/es.object.values.js\");\n/* harmony import */ var core_js_modules_es_object_values_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_values_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var core_js_modules_es_string_starts_with_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.string.starts-with.js */ \"./node_modules/core-js/modules/es.string.starts-with.js\");\n/* harmony import */ var core_js_modules_es_string_starts_with_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_starts_with_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.object.keys.js */ \"./node_modules/core-js/modules/es.object.keys.js\");\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.runtime.esm-bundler.js\");\n\n\n\n\n\n\n\nvar _hoisted_1 = {\n id: \"summary\"\n};\nvar _hoisted_2 = {\n key: 0,\n \"class\": \"summary-picker mui-form--inline\",\n onsubmit: \"return false;\"\n};\nvar _hoisted_3 = {\n \"class\": \"summary-picker__section\"\n};\nvar _hoisted_4 = {\n \"class\": \"mui-textfield search_box\"\n};\nvar _hoisted_5 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", null, \"search\", -1 /* HOISTED */);\nvar _hoisted_6 = {\n \"class\": \"mui-select grouping\"\n};\nvar _hoisted_7 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"option\", {\n value: \"groupByNone\"\n}, \"None\", -1 /* HOISTED */);\nvar _hoisted_8 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"option\", {\n value: \"groupByRepos\"\n}, \"Repo/Branch\", -1 /* HOISTED */);\nvar _hoisted_9 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"option\", {\n value: \"groupByAuthors\"\n}, \"Author\", -1 /* HOISTED */);\nvar _hoisted_10 = [_hoisted_7, _hoisted_8, _hoisted_9];\nvar _hoisted_11 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", null, \"group by\", -1 /* HOISTED */);\nvar _hoisted_12 = {\n \"class\": \"mui-select sort-group\"\n};\nvar _hoisted_13 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createStaticVNode)(\"\", 6);\nvar _hoisted_19 = [_hoisted_13];\nvar _hoisted_20 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", null, \"sort groups by\", -1 /* HOISTED */);\nvar _hoisted_21 = {\n \"class\": \"mui-select sort-within-group\"\n};\nvar _hoisted_22 = [\"disabled\"];\nvar _hoisted_23 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createStaticVNode)(\"\", 6);\nvar _hoisted_29 = [_hoisted_23];\nvar _hoisted_30 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", null, \"sort within groups by\", -1 /* HOISTED */);\nvar _hoisted_31 = {\n \"class\": \"mui-select granularity\"\n};\nvar _hoisted_32 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"option\", {\n value: \"commit\"\n}, \"Commit\", -1 /* HOISTED */);\nvar _hoisted_33 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"option\", {\n value: \"day\"\n}, \"Day\", -1 /* HOISTED */);\nvar _hoisted_34 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"option\", {\n value: \"week\"\n}, \"Week\", -1 /* HOISTED */);\nvar _hoisted_35 = [_hoisted_32, _hoisted_33, _hoisted_34];\nvar _hoisted_36 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", null, \"granularity\", -1 /* HOISTED */);\nvar _hoisted_37 = {\n \"class\": \"mui-textfield\"\n};\nvar _hoisted_38 = [\"value\"];\nvar _hoisted_39 = [\"value\", \"min\", \"max\"];\nvar _hoisted_40 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", null, \"since\", -1 /* HOISTED */);\nvar _hoisted_41 = {\n \"class\": \"mui-textfield\"\n};\nvar _hoisted_42 = [\"value\"];\nvar _hoisted_43 = [\"value\", \"min\", \"max\"];\nvar _hoisted_44 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", null, \"until\", -1 /* HOISTED */);\nvar _hoisted_45 = {\n \"class\": \"mui-textfield\"\n};\nvar _hoisted_46 = {\n \"class\": \"summary-picker__checkboxes summary-picker__section\"\n};\nvar _hoisted_47 = {\n \"class\": \"filter-breakdown\"\n};\nvar _hoisted_48 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"span\", null, \"breakdown by file type\", -1 /* HOISTED */);\nvar _hoisted_49 = [\"disabled\"];\nvar _hoisted_50 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"span\", null, \"merge all groups\", -1 /* HOISTED */);\nvar _hoisted_51 = {\n key: 1,\n \"class\": \"error-message-box\"\n};\nvar _hoisted_52 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", {\n \"class\": \"error-message-box__message\"\n}, \"The following issues occurred when analyzing the following repositories:\", -1 /* HOISTED */);\nvar _hoisted_53 = {\n \"class\": \"error-message-box__failed-repo\"\n};\nvar _hoisted_54 = {\n \"class\": \"error-message-box__failed-repo--name\"\n};\nvar _hoisted_55 = {\n key: 0,\n \"class\": \"error-message-box__failed-repo--reason\"\n};\nvar _hoisted_56 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"span\", null, \"Oops, an unexpected error occurred. If this is due to a problem in RepoSense, please report in \", -1 /* HOISTED */);\nvar _hoisted_57 = [\"href\"];\nvar _hoisted_58 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"strong\", null, \"our issue tracker \", -1 /* HOISTED */);\nvar _hoisted_59 = [_hoisted_58];\nvar _hoisted_60 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"span\", null, \"or email us at \", -1 /* HOISTED */);\nvar _hoisted_61 = [\"href\"];\nvar _hoisted_62 = {\n key: 1,\n \"class\": \"error-message-box__failed-repo--reason\"\n};\nvar _hoisted_63 = {\n key: 0,\n \"class\": \"error-message-box__show-more-container\"\n};\nvar _hoisted_64 = {\n key: 0\n};\nvar _hoisted_65 = {\n key: 2,\n \"class\": \"fileTypes\"\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n var _component_font_awesome_icon = (0,vue__WEBPACK_IMPORTED_MODULE_6__.resolveComponent)(\"font-awesome-icon\");\n var _component_c_file_type_checkboxes = (0,vue__WEBPACK_IMPORTED_MODULE_6__.resolveComponent)(\"c-file-type-checkboxes\");\n var _component_c_summary_charts = (0,vue__WEBPACK_IMPORTED_MODULE_6__.resolveComponent)(\"c-summary-charts\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"div\", _hoisted_1, [!_ctx.isWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"form\", _hoisted_2, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_3, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_4, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"input\", {\n type: \"text\",\n onChange: _cache[0] || (_cache[0] =\n //@ts-ignore\n function () {\n return _ctx.updateFilterSearch && _ctx.updateFilterSearch.apply(_ctx, arguments);\n }),\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = function ($event) {\n return _ctx.filterSearch = $event;\n })\n }, null, 544 /* NEED_HYDRATION, NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_6__.vModelText, _ctx.filterSearch]]), _hoisted_5, (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"button\", {\n \"class\": \"mui-btn mui-btn--raised\",\n type: \"button\",\n onClick: _cache[2] || (_cache[2] = (0,vue__WEBPACK_IMPORTED_MODULE_6__.withModifiers)(\n //@ts-ignore\n function () {\n return _ctx.resetFilterSearch && _ctx.resetFilterSearch.apply(_ctx, arguments);\n }, [\"prevent\"]))\n }, \"x\")]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_6, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"select\", {\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = function ($event) {\n return _ctx.filterGroupSelection = $event;\n })\n }, [].concat(_hoisted_10), 512 /* NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_6__.vModelSelect, _ctx.filterGroupSelection]]), _hoisted_11]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_12, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"select\", {\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = function ($event) {\n return _ctx.sortGroupSelection = $event;\n }),\n onChange: _cache[5] || (_cache[5] =\n //@ts-ignore\n function () {\n return _ctx.getFiltered && _ctx.getFiltered.apply(_ctx, arguments);\n })\n }, [].concat(_hoisted_19), 544 /* NEED_HYDRATION, NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_6__.vModelSelect, _ctx.sortGroupSelection]]), _hoisted_20]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_21, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"select\", {\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = function ($event) {\n return _ctx.sortWithinGroupSelection = $event;\n }),\n disabled: _ctx.filterGroupSelection === 'groupByNone' || _ctx.allGroupsMerged,\n onChange: _cache[7] || (_cache[7] =\n //@ts-ignore\n function () {\n return _ctx.getFiltered && _ctx.getFiltered.apply(_ctx, arguments);\n })\n }, [].concat(_hoisted_29), 40 /* PROPS, NEED_HYDRATION */, _hoisted_22), [[vue__WEBPACK_IMPORTED_MODULE_6__.vModelSelect, _ctx.sortWithinGroupSelection]]), _hoisted_30]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_31, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"select\", {\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = function ($event) {\n return _ctx.filterTimeFrame = $event;\n }),\n onChange: _cache[9] || (_cache[9] =\n //@ts-ignore\n function () {\n return _ctx.getFiltered && _ctx.getFiltered.apply(_ctx, arguments);\n })\n }, [].concat(_hoisted_35), 544 /* NEED_HYDRATION, NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_6__.vModelSelect, _ctx.filterTimeFrame]]), _hoisted_36]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_37, [_ctx.isSafariBrowser ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"input\", {\n key: 0,\n type: \"text\",\n placeholder: \"yyyy-mm-dd\",\n value: _ctx.filterSinceDate,\n onKeyup: _cache[10] || (_cache[10] = (0,vue__WEBPACK_IMPORTED_MODULE_6__.withKeys)(\n //@ts-ignore\n function () {\n return _ctx.updateTmpFilterSinceDate && _ctx.updateTmpFilterSinceDate.apply(_ctx, arguments);\n }, [\"enter\"])),\n onkeydown: \"formatInputDateOnKeyDown(event)\",\n oninput: \"appendDashInputDate(event)\",\n maxlength: \"10\"\n }, null, 40 /* PROPS, NEED_HYDRATION */, _hoisted_38)) : ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"input\", {\n key: 1,\n type: \"date\",\n name: \"since\",\n value: _ctx.filterSinceDate,\n onInput: _cache[11] || (_cache[11] =\n //@ts-ignore\n function () {\n return _ctx.updateTmpFilterSinceDate && _ctx.updateTmpFilterSinceDate.apply(_ctx, arguments);\n }),\n min: _ctx.minDate,\n max: _ctx.filterUntilDate\n }, null, 40 /* PROPS, NEED_HYDRATION */, _hoisted_39)), _hoisted_40]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_41, [_ctx.isSafariBrowser ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"input\", {\n key: 0,\n type: \"text\",\n placeholder: \"yyyy-mm-dd\",\n value: _ctx.filterUntilDate,\n onKeyup: _cache[12] || (_cache[12] = (0,vue__WEBPACK_IMPORTED_MODULE_6__.withKeys)(\n //@ts-ignore\n function () {\n return _ctx.updateTmpFilterUntilDate && _ctx.updateTmpFilterUntilDate.apply(_ctx, arguments);\n }, [\"enter\"])),\n onkeydown: \"formatInputDateOnKeyDown(event)\",\n oninput: \"appendDashInputDate(event)\",\n maxlength: \"10\"\n }, null, 40 /* PROPS, NEED_HYDRATION */, _hoisted_42)) : ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"input\", {\n key: 1,\n type: \"date\",\n name: \"until\",\n value: _ctx.filterUntilDate,\n onInput: _cache[13] || (_cache[13] =\n //@ts-ignore\n function () {\n return _ctx.updateTmpFilterUntilDate && _ctx.updateTmpFilterUntilDate.apply(_ctx, arguments);\n }),\n min: _ctx.filterSinceDate,\n max: _ctx.maxDate\n }, null, 40 /* PROPS, NEED_HYDRATION */, _hoisted_43)), _hoisted_44]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_45, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"a\", {\n onClick: _cache[14] || (_cache[14] =\n //@ts-ignore\n function () {\n return _ctx.resetDateRange && _ctx.resetDateRange.apply(_ctx, arguments);\n })\n }, \"Reset date range\")]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_46, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", _hoisted_47, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"input\", {\n \"class\": \"mui-checkbox\",\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = function ($event) {\n return _ctx.filterBreakdown = $event;\n }),\n onChange: _cache[16] || (_cache[16] =\n //@ts-ignore\n function () {\n return _ctx.toggleBreakdown && _ctx.toggleBreakdown.apply(_ctx, arguments);\n })\n }, null, 544 /* NEED_HYDRATION, NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_6__.vModelCheckbox, _ctx.filterBreakdown]]), _hoisted_48]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", {\n \"class\": \"merge-group\",\n style: (0,vue__WEBPACK_IMPORTED_MODULE_6__.normalizeStyle)(_ctx.filterGroupSelection === 'groupByNone' ? {\n opacity: 0.5\n } : {\n opacity: 1.0\n })\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"input\", {\n \"class\": \"mui-checkbox\",\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[17] || (_cache[17] = function ($event) {\n return _ctx.allGroupsMerged = $event;\n }),\n disabled: _ctx.filterGroupSelection === 'groupByNone'\n }, null, 8 /* PROPS */, _hoisted_49), [[vue__WEBPACK_IMPORTED_MODULE_6__.vModelCheckbox, _ctx.allGroupsMerged]]), _hoisted_50], 4 /* STYLE */)])])])) : (0,vue__WEBPACK_IMPORTED_MODULE_6__.createCommentVNode)(\"v-if\", true), Object.entries(_ctx.errorMessages).length && !_ctx.isWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"div\", _hoisted_51, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", {\n \"class\": \"error-message-box__close-button\",\n onClick: _cache[18] || (_cache[18] = function ($event) {\n return _ctx.dismissTab($event);\n })\n }, \"×\"), _hoisted_52, ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_6__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_6__.renderList)(_ctx.errorIsShowingMore ? _ctx.errorMessages : Object.values(_ctx.errorMessages).slice(0, _ctx.numberOfErrorMessagesToShow), function (errorBlock) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"div\", _hoisted_53, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.createVNode)(_component_font_awesome_icon, {\n icon: \"exclamation\"\n }), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"span\", _hoisted_54, (0,vue__WEBPACK_IMPORTED_MODULE_6__.toDisplayString)(errorBlock.repoName), 1 /* TEXT */), errorBlock.errorMessage.startsWith('Unexpected error stack trace') ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"div\", _hoisted_55, [_hoisted_56, (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"a\", {\n href: _ctx.getReportIssueGitHubLink(errorBlock.errorMessage),\n target: \"_blank\"\n }, [].concat(_hoisted_59), 8 /* PROPS */, _hoisted_57), _hoisted_60, (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"a\", {\n href: _ctx.getReportIssueEmailLink(errorBlock.errorMessage)\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"span\", null, (0,vue__WEBPACK_IMPORTED_MODULE_6__.toDisplayString)(_ctx.getReportIssueEmailAddress()), 1 /* TEXT */)], 8 /* PROPS */, _hoisted_61)])) : ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"div\", _hoisted_62, (0,vue__WEBPACK_IMPORTED_MODULE_6__.toDisplayString)(errorBlock.errorMessage) + \"\\\\\", 1 /* TEXT */))]);\n }), 256 /* UNKEYED_FRAGMENT */)), Object.keys(_ctx.errorMessages).length > _ctx.numberOfErrorMessagesToShow ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"div\", _hoisted_63, [!_ctx.errorIsShowingMore ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"span\", _hoisted_64, \"Remaining error messages omitted to save space. \")) : (0,vue__WEBPACK_IMPORTED_MODULE_6__.createCommentVNode)(\"v-if\", true), !_ctx.errorIsShowingMore ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"a\", {\n key: 1,\n onClick: _cache[19] || (_cache[19] = function ($event) {\n return _ctx.toggleErrorShowMore();\n })\n }, \"SHOW ALL...\")) : ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"a\", {\n key: 2,\n onClick: _cache[20] || (_cache[20] = function ($event) {\n return _ctx.toggleErrorShowMore();\n })\n }, \"SHOW LESS...\"))])) : (0,vue__WEBPACK_IMPORTED_MODULE_6__.createCommentVNode)(\"v-if\", true)])) : (0,vue__WEBPACK_IMPORTED_MODULE_6__.createCommentVNode)(\"v-if\", true), _ctx.filterBreakdown && !_ctx.isWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"div\", _hoisted_65, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.createVNode)(_component_c_file_type_checkboxes, {\n \"file-types\": _ctx.fileTypes,\n \"file-type-colors\": _ctx.fileTypeColors,\n \"selected-file-types\": _ctx.checkedFileTypes,\n \"onUpdate:selectedFileTypes\": [_cache[21] || (_cache[21] = function ($event) {\n return _ctx.checkedFileTypes = $event;\n }), _ctx.getFiltered]\n }, null, 8 /* PROPS */, [\"file-types\", \"file-type-colors\", \"selected-file-types\", \"onUpdate:selectedFileTypes\"])])) : (0,vue__WEBPACK_IMPORTED_MODULE_6__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createVNode)(_component_c_summary_charts, {\n filtered: _ctx.filtered,\n \"checked-file-types\": _ctx.checkedFileTypes,\n \"avg-contribution-size\": _ctx.avgContributionSize,\n \"filter-group-selection\": _ctx.filterGroupSelection,\n \"filter-breakdown\": _ctx.filterBreakdown,\n \"filter-time-frame\": _ctx.filterTimeFrame,\n \"filter-since-date\": _ctx.filterSinceDate,\n \"filter-until-date\": _ctx.filterUntilDate,\n \"filter-search\": _ctx.filterSearch,\n \"min-date\": _ctx.minDate,\n \"max-date\": _ctx.maxDate,\n \"sort-group-selection\": _ctx.sortGroupSelection,\n \"chart-group-index\": _ctx.chartGroupIndex,\n \"chart-index\": _ctx.chartIndex\n }, null, 8 /* PROPS */, [\"filtered\", \"checked-file-types\", \"avg-contribution-size\", \"filter-group-selection\", \"filter-breakdown\", \"filter-time-frame\", \"filter-since-date\", \"filter-until-date\", \"filter-search\", \"min-date\", \"max-date\", \"sort-group-selection\", \"chart-group-index\", \"chart-index\"])]);\n}\n\n//# sourceURL=webpack://reposense/./src/views/c-summary.vue?./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use%5B1%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B4%5D!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": () => (/* binding */ render)\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.concat.js */ \"./node_modules/core-js/modules/es.array.concat.js\");\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.object.entries.js */ \"./node_modules/core-js/modules/es.object.entries.js\");\n/* harmony import */ var core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.array.slice.js */ \"./node_modules/core-js/modules/es.array.slice.js\");\n/* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es_object_values_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.object.values.js */ \"./node_modules/core-js/modules/es.object.values.js\");\n/* harmony import */ var core_js_modules_es_object_values_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_values_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var core_js_modules_es_string_starts_with_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.string.starts-with.js */ \"./node_modules/core-js/modules/es.string.starts-with.js\");\n/* harmony import */ var core_js_modules_es_string_starts_with_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_starts_with_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.object.keys.js */ \"./node_modules/core-js/modules/es.object.keys.js\");\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.runtime.esm-bundler.js\");\n\n\n\n\n\n\n\nvar _hoisted_1 = {\n id: \"summary\"\n};\nvar _hoisted_2 = {\n key: 0,\n \"class\": \"summary-picker mui-form--inline\",\n onsubmit: \"return false;\"\n};\nvar _hoisted_3 = {\n \"class\": \"summary-picker__section\"\n};\nvar _hoisted_4 = {\n \"class\": \"mui-textfield search_box\"\n};\nvar _hoisted_5 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", null, \"search\", -1 /* HOISTED */);\nvar _hoisted_6 = {\n \"class\": \"mui-select grouping\"\n};\nvar _hoisted_7 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"option\", {\n value: \"groupByNone\"\n}, \"None\", -1 /* HOISTED */);\nvar _hoisted_8 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"option\", {\n value: \"groupByRepos\"\n}, \"Repo/Branch\", -1 /* HOISTED */);\nvar _hoisted_9 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"option\", {\n value: \"groupByAuthors\"\n}, \"Author\", -1 /* HOISTED */);\nvar _hoisted_10 = [_hoisted_7, _hoisted_8, _hoisted_9];\nvar _hoisted_11 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", null, \"group by\", -1 /* HOISTED */);\nvar _hoisted_12 = {\n \"class\": \"mui-select sort-group\"\n};\nvar _hoisted_13 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createStaticVNode)(\"\", 6);\nvar _hoisted_19 = [_hoisted_13];\nvar _hoisted_20 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", null, \"sort groups by\", -1 /* HOISTED */);\nvar _hoisted_21 = {\n \"class\": \"mui-select sort-within-group\"\n};\nvar _hoisted_22 = [\"disabled\"];\nvar _hoisted_23 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createStaticVNode)(\"\", 6);\nvar _hoisted_29 = [_hoisted_23];\nvar _hoisted_30 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", null, \"sort within groups by\", -1 /* HOISTED */);\nvar _hoisted_31 = {\n \"class\": \"mui-select granularity\"\n};\nvar _hoisted_32 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"option\", {\n value: \"commit\"\n}, \"Commit\", -1 /* HOISTED */);\nvar _hoisted_33 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"option\", {\n value: \"day\"\n}, \"Day\", -1 /* HOISTED */);\nvar _hoisted_34 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"option\", {\n value: \"week\"\n}, \"Week\", -1 /* HOISTED */);\nvar _hoisted_35 = [_hoisted_32, _hoisted_33, _hoisted_34];\nvar _hoisted_36 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", null, \"granularity\", -1 /* HOISTED */);\nvar _hoisted_37 = {\n \"class\": \"mui-textfield\"\n};\nvar _hoisted_38 = [\"value\"];\nvar _hoisted_39 = [\"value\", \"min\", \"max\"];\nvar _hoisted_40 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", null, \"since\", -1 /* HOISTED */);\nvar _hoisted_41 = {\n \"class\": \"mui-textfield\"\n};\nvar _hoisted_42 = [\"value\"];\nvar _hoisted_43 = [\"value\", \"min\", \"max\"];\nvar _hoisted_44 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", null, \"until\", -1 /* HOISTED */);\nvar _hoisted_45 = {\n \"class\": \"mui-textfield\"\n};\nvar _hoisted_46 = {\n \"class\": \"summary-picker__checkboxes summary-picker__section\"\n};\nvar _hoisted_47 = {\n \"class\": \"filter-breakdown\"\n};\nvar _hoisted_48 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"span\", null, \"breakdown by file type\", -1 /* HOISTED */);\nvar _hoisted_49 = [\"disabled\"];\nvar _hoisted_50 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"span\", null, \"merge all groups\", -1 /* HOISTED */);\nvar _hoisted_51 = {\n \"class\": \"show-tags\"\n};\nvar _hoisted_52 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"span\", null, \"show tags\", -1 /* HOISTED */);\nvar _hoisted_53 = {\n key: 1,\n \"class\": \"error-message-box\"\n};\nvar _hoisted_54 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", {\n \"class\": \"error-message-box__message\"\n}, \"The following issues occurred when analyzing the following repositories:\", -1 /* HOISTED */);\nvar _hoisted_55 = {\n \"class\": \"error-message-box__failed-repo\"\n};\nvar _hoisted_56 = {\n \"class\": \"error-message-box__failed-repo--name\"\n};\nvar _hoisted_57 = {\n key: 0,\n \"class\": \"error-message-box__failed-repo--reason\"\n};\nvar _hoisted_58 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"span\", null, \"Oops, an unexpected error occurred. If this is due to a problem in RepoSense, please report in \", -1 /* HOISTED */);\nvar _hoisted_59 = [\"href\"];\nvar _hoisted_60 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"strong\", null, \"our issue tracker \", -1 /* HOISTED */);\nvar _hoisted_61 = [_hoisted_60];\nvar _hoisted_62 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"span\", null, \"or email us at \", -1 /* HOISTED */);\nvar _hoisted_63 = [\"href\"];\nvar _hoisted_64 = {\n key: 1,\n \"class\": \"error-message-box__failed-repo--reason\"\n};\nvar _hoisted_65 = {\n key: 0,\n \"class\": \"error-message-box__show-more-container\"\n};\nvar _hoisted_66 = {\n key: 0\n};\nvar _hoisted_67 = {\n key: 2,\n \"class\": \"fileTypes\"\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n var _component_font_awesome_icon = (0,vue__WEBPACK_IMPORTED_MODULE_6__.resolveComponent)(\"font-awesome-icon\");\n var _component_c_file_type_checkboxes = (0,vue__WEBPACK_IMPORTED_MODULE_6__.resolveComponent)(\"c-file-type-checkboxes\");\n var _component_c_summary_charts = (0,vue__WEBPACK_IMPORTED_MODULE_6__.resolveComponent)(\"c-summary-charts\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"div\", _hoisted_1, [!_ctx.isWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"form\", _hoisted_2, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_3, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_4, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"input\", {\n type: \"text\",\n onChange: _cache[0] || (_cache[0] =\n //@ts-ignore\n function () {\n return _ctx.updateFilterSearch && _ctx.updateFilterSearch.apply(_ctx, arguments);\n }),\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = function ($event) {\n return _ctx.filterSearch = $event;\n })\n }, null, 544 /* NEED_HYDRATION, NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_6__.vModelText, _ctx.filterSearch]]), _hoisted_5, (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"button\", {\n \"class\": \"mui-btn mui-btn--raised\",\n type: \"button\",\n onClick: _cache[2] || (_cache[2] = (0,vue__WEBPACK_IMPORTED_MODULE_6__.withModifiers)(\n //@ts-ignore\n function () {\n return _ctx.resetFilterSearch && _ctx.resetFilterSearch.apply(_ctx, arguments);\n }, [\"prevent\"]))\n }, \"x\")]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_6, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"select\", {\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = function ($event) {\n return _ctx.filterGroupSelection = $event;\n })\n }, [].concat(_hoisted_10), 512 /* NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_6__.vModelSelect, _ctx.filterGroupSelection]]), _hoisted_11]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_12, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"select\", {\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = function ($event) {\n return _ctx.sortGroupSelection = $event;\n }),\n onChange: _cache[5] || (_cache[5] =\n //@ts-ignore\n function () {\n return _ctx.getFiltered && _ctx.getFiltered.apply(_ctx, arguments);\n })\n }, [].concat(_hoisted_19), 544 /* NEED_HYDRATION, NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_6__.vModelSelect, _ctx.sortGroupSelection]]), _hoisted_20]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_21, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"select\", {\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = function ($event) {\n return _ctx.sortWithinGroupSelection = $event;\n }),\n disabled: _ctx.filterGroupSelection === 'groupByNone' || _ctx.allGroupsMerged,\n onChange: _cache[7] || (_cache[7] =\n //@ts-ignore\n function () {\n return _ctx.getFiltered && _ctx.getFiltered.apply(_ctx, arguments);\n })\n }, [].concat(_hoisted_29), 40 /* PROPS, NEED_HYDRATION */, _hoisted_22), [[vue__WEBPACK_IMPORTED_MODULE_6__.vModelSelect, _ctx.sortWithinGroupSelection]]), _hoisted_30]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_31, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"select\", {\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = function ($event) {\n return _ctx.filterTimeFrame = $event;\n }),\n onChange: _cache[9] || (_cache[9] =\n //@ts-ignore\n function () {\n return _ctx.getFiltered && _ctx.getFiltered.apply(_ctx, arguments);\n })\n }, [].concat(_hoisted_35), 544 /* NEED_HYDRATION, NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_6__.vModelSelect, _ctx.filterTimeFrame]]), _hoisted_36]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_37, [_ctx.isSafariBrowser ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"input\", {\n key: 0,\n type: \"text\",\n placeholder: \"yyyy-mm-dd\",\n value: _ctx.filterSinceDate,\n onKeyup: _cache[10] || (_cache[10] = (0,vue__WEBPACK_IMPORTED_MODULE_6__.withKeys)(\n //@ts-ignore\n function () {\n return _ctx.updateTmpFilterSinceDate && _ctx.updateTmpFilterSinceDate.apply(_ctx, arguments);\n }, [\"enter\"])),\n onkeydown: \"formatInputDateOnKeyDown(event)\",\n oninput: \"appendDashInputDate(event)\",\n maxlength: \"10\"\n }, null, 40 /* PROPS, NEED_HYDRATION */, _hoisted_38)) : ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"input\", {\n key: 1,\n type: \"date\",\n name: \"since\",\n value: _ctx.filterSinceDate,\n onInput: _cache[11] || (_cache[11] =\n //@ts-ignore\n function () {\n return _ctx.updateTmpFilterSinceDate && _ctx.updateTmpFilterSinceDate.apply(_ctx, arguments);\n }),\n min: _ctx.minDate,\n max: _ctx.filterUntilDate\n }, null, 40 /* PROPS, NEED_HYDRATION */, _hoisted_39)), _hoisted_40]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_41, [_ctx.isSafariBrowser ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"input\", {\n key: 0,\n type: \"text\",\n placeholder: \"yyyy-mm-dd\",\n value: _ctx.filterUntilDate,\n onKeyup: _cache[12] || (_cache[12] = (0,vue__WEBPACK_IMPORTED_MODULE_6__.withKeys)(\n //@ts-ignore\n function () {\n return _ctx.updateTmpFilterUntilDate && _ctx.updateTmpFilterUntilDate.apply(_ctx, arguments);\n }, [\"enter\"])),\n onkeydown: \"formatInputDateOnKeyDown(event)\",\n oninput: \"appendDashInputDate(event)\",\n maxlength: \"10\"\n }, null, 40 /* PROPS, NEED_HYDRATION */, _hoisted_42)) : ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"input\", {\n key: 1,\n type: \"date\",\n name: \"until\",\n value: _ctx.filterUntilDate,\n onInput: _cache[13] || (_cache[13] =\n //@ts-ignore\n function () {\n return _ctx.updateTmpFilterUntilDate && _ctx.updateTmpFilterUntilDate.apply(_ctx, arguments);\n }),\n min: _ctx.filterSinceDate,\n max: _ctx.maxDate\n }, null, 40 /* PROPS, NEED_HYDRATION */, _hoisted_43)), _hoisted_44]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_45, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"a\", {\n onClick: _cache[14] || (_cache[14] =\n //@ts-ignore\n function () {\n return _ctx.resetDateRange && _ctx.resetDateRange.apply(_ctx, arguments);\n })\n }, \"Reset date range\")]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", _hoisted_46, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", _hoisted_47, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"input\", {\n \"class\": \"mui-checkbox\",\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = function ($event) {\n return _ctx.filterBreakdown = $event;\n }),\n onChange: _cache[16] || (_cache[16] =\n //@ts-ignore\n function () {\n return _ctx.toggleBreakdown && _ctx.toggleBreakdown.apply(_ctx, arguments);\n })\n }, null, 544 /* NEED_HYDRATION, NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_6__.vModelCheckbox, _ctx.filterBreakdown]]), _hoisted_48]), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", {\n \"class\": \"merge-group\",\n style: (0,vue__WEBPACK_IMPORTED_MODULE_6__.normalizeStyle)(_ctx.filterGroupSelection === 'groupByNone' ? {\n opacity: 0.5\n } : {\n opacity: 1.0\n })\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"input\", {\n \"class\": \"mui-checkbox\",\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[17] || (_cache[17] = function ($event) {\n return _ctx.allGroupsMerged = $event;\n }),\n disabled: _ctx.filterGroupSelection === 'groupByNone'\n }, null, 8 /* PROPS */, _hoisted_49), [[vue__WEBPACK_IMPORTED_MODULE_6__.vModelCheckbox, _ctx.allGroupsMerged]]), _hoisted_50], 4 /* STYLE */), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"label\", _hoisted_51, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"input\", {\n \"class\": \"mui-checkbox\",\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[18] || (_cache[18] = function ($event) {\n return _ctx.viewRepoTags = $event;\n }),\n onChange: _cache[19] || (_cache[19] =\n //@ts-ignore\n function () {\n return _ctx.getFiltered && _ctx.getFiltered.apply(_ctx, arguments);\n })\n }, null, 544 /* NEED_HYDRATION, NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_6__.vModelCheckbox, _ctx.viewRepoTags]]), _hoisted_52])])])])) : (0,vue__WEBPACK_IMPORTED_MODULE_6__.createCommentVNode)(\"v-if\", true), Object.entries(_ctx.errorMessages).length && !_ctx.isWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"div\", _hoisted_53, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"div\", {\n \"class\": \"error-message-box__close-button\",\n onClick: _cache[20] || (_cache[20] = function ($event) {\n return _ctx.dismissTab($event);\n })\n }, \"×\"), _hoisted_54, ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_6__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_6__.renderList)(_ctx.errorIsShowingMore ? _ctx.errorMessages : Object.values(_ctx.errorMessages).slice(0, _ctx.numberOfErrorMessagesToShow), function (errorBlock) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"div\", _hoisted_55, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.createVNode)(_component_font_awesome_icon, {\n icon: \"exclamation\"\n }), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"span\", _hoisted_56, (0,vue__WEBPACK_IMPORTED_MODULE_6__.toDisplayString)(errorBlock.repoName), 1 /* TEXT */), errorBlock.errorMessage.startsWith('Unexpected error stack trace') ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"div\", _hoisted_57, [_hoisted_58, (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"a\", {\n href: _ctx.getReportIssueGitHubLink(errorBlock.errorMessage),\n target: \"_blank\"\n }, [].concat(_hoisted_61), 8 /* PROPS */, _hoisted_59), _hoisted_62, (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"a\", {\n href: _ctx.getReportIssueEmailLink(errorBlock.errorMessage)\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementVNode)(\"span\", null, (0,vue__WEBPACK_IMPORTED_MODULE_6__.toDisplayString)(_ctx.getReportIssueEmailAddress()), 1 /* TEXT */)], 8 /* PROPS */, _hoisted_63)])) : ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"div\", _hoisted_64, (0,vue__WEBPACK_IMPORTED_MODULE_6__.toDisplayString)(errorBlock.errorMessage) + \"\\\\\", 1 /* TEXT */))]);\n }), 256 /* UNKEYED_FRAGMENT */)), Object.keys(_ctx.errorMessages).length > _ctx.numberOfErrorMessagesToShow ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"div\", _hoisted_65, [!_ctx.errorIsShowingMore ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"span\", _hoisted_66, \"Remaining error messages omitted to save space. \")) : (0,vue__WEBPACK_IMPORTED_MODULE_6__.createCommentVNode)(\"v-if\", true), !_ctx.errorIsShowingMore ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"a\", {\n key: 1,\n onClick: _cache[21] || (_cache[21] = function ($event) {\n return _ctx.toggleErrorShowMore();\n })\n }, \"SHOW ALL...\")) : ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"a\", {\n key: 2,\n onClick: _cache[22] || (_cache[22] = function ($event) {\n return _ctx.toggleErrorShowMore();\n })\n }, \"SHOW LESS...\"))])) : (0,vue__WEBPACK_IMPORTED_MODULE_6__.createCommentVNode)(\"v-if\", true)])) : (0,vue__WEBPACK_IMPORTED_MODULE_6__.createCommentVNode)(\"v-if\", true), _ctx.filterBreakdown && !_ctx.isWidgetMode ? ((0,vue__WEBPACK_IMPORTED_MODULE_6__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createElementBlock)(\"div\", _hoisted_67, [(0,vue__WEBPACK_IMPORTED_MODULE_6__.createVNode)(_component_c_file_type_checkboxes, {\n \"file-types\": _ctx.fileTypes,\n \"file-type-colors\": _ctx.fileTypeColors,\n \"selected-file-types\": _ctx.checkedFileTypes,\n \"onUpdate:selectedFileTypes\": [_cache[23] || (_cache[23] = function ($event) {\n return _ctx.checkedFileTypes = $event;\n }), _ctx.getFiltered]\n }, null, 8 /* PROPS */, [\"file-types\", \"file-type-colors\", \"selected-file-types\", \"onUpdate:selectedFileTypes\"])])) : (0,vue__WEBPACK_IMPORTED_MODULE_6__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_6__.createVNode)(_component_c_summary_charts, {\n filtered: _ctx.filtered,\n \"checked-file-types\": _ctx.checkedFileTypes,\n \"avg-contribution-size\": _ctx.avgContributionSize,\n \"filter-group-selection\": _ctx.filterGroupSelection,\n \"filter-breakdown\": _ctx.filterBreakdown,\n \"filter-time-frame\": _ctx.filterTimeFrame,\n \"filter-since-date\": _ctx.filterSinceDate,\n \"filter-until-date\": _ctx.filterUntilDate,\n \"filter-search\": _ctx.filterSearch,\n \"min-date\": _ctx.minDate,\n \"max-date\": _ctx.maxDate,\n \"sort-group-selection\": _ctx.sortGroupSelection,\n \"chart-group-index\": _ctx.chartGroupIndex,\n \"chart-index\": _ctx.chartIndex,\n \"view-repo-tags\": _ctx.viewRepoTags\n }, null, 8 /* PROPS */, [\"filtered\", \"checked-file-types\", \"avg-contribution-size\", \"filter-group-selection\", \"filter-breakdown\", \"filter-time-frame\", \"filter-since-date\", \"filter-until-date\", \"filter-search\", \"min-date\", \"max-date\", \"sort-group-selection\", \"chart-group-index\", \"chart-index\", \"view-repo-tags\"])]);\n}\n\n//# sourceURL=webpack://reposense/./src/views/c-summary.vue?./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use%5B1%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B4%5D!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -570,14 +570,14 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ }), -/***/ "./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-segment.vue?vue&type=style&index=0&id=02b52b69&lang=scss&scoped=true": -/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-segment.vue?vue&type=style&index=0&id=02b52b69&lang=scss&scoped=true ***! - \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ +/***/ "./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-segment.vue?vue&type=style&index=0&id=02b52b69&lang=scss": +/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-segment.vue?vue&type=style&index=0&id=02b52b69&lang=scss ***! + \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ /***/ ((module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_styles_hightlight_js_style_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! -!../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!../../node_modules/vue-loader/dist/stylePostLoader.js!../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!../styles/hightlight-js-style.css */ \"./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./src/styles/hightlight-js-style.css\");\n// Imports\n\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n___CSS_LOADER_EXPORT___.i(_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_styles_hightlight_js_style_css__WEBPACK_IMPORTED_MODULE_2__[\"default\"]);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"/**\\n * MUI Colors module\\n */\\n.segment[data-v-02b52b69] {\\n border-left: 0.25rem solid #4CAF50;\\n}\\n.segment .code[data-v-02b52b69] {\\n background-color: #E6FFED;\\n padding-left: 1rem;\\n}\\n.segment .line-number[data-v-02b52b69] {\\n color: #9E9E9E;\\n float: left;\\n -webkit-touch-callout: none;\\n /* iOS Safari */\\n -webkit-user-select: none;\\n /* Safari */\\n /* Konqueror HTML */\\n -moz-user-select: none;\\n /* Firefox */\\n /* Internet Explorer/Edge */\\n user-select: none;\\n /* Non-prefixed version, currently supported by Chrome and Opera */\\n width: 2rem;\\n}\\n.segment .line-number [class^=hljs][data-v-02b52b69] {\\n color: #9E9E9E;\\n}\\n.segment .line-content[data-v-02b52b69] {\\n padding-left: 2rem;\\n word-break: break-word;\\n}\\n.segment.untouched[data-v-02b52b69] {\\n border-left: 0.25rem solid #BDBDBD;\\n height: 20px;\\n /* height of a single line of code */\\n position: relative;\\n}\\n.segment.untouched.active[data-v-02b52b69] {\\n height: auto;\\n}\\n.segment.untouched.active .code[data-v-02b52b69] {\\n background-color: #FFF;\\n}\\n.segment.untouched .closer[data-v-02b52b69] {\\n cursor: pointer;\\n margin: 0.2rem 0 0 -0.45rem;\\n position: absolute;\\n}\\n.segment.untouched .closer.bottom[data-v-02b52b69] {\\n margin: -1.05rem 0 0 -0.45rem;\\n}\\n.segment.untouched .closer .icon[data-v-02b52b69] {\\n background-color: #FFF;\\n color: #9E9E9E;\\n width: 0.75em;\\n}\", \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://reposense/./src/components/c-segment.vue?./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use%5B1%5D!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use%5B2%5D!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_styles_hightlight_js_style_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! -!../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!../../node_modules/vue-loader/dist/stylePostLoader.js!../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!../styles/hightlight-js-style.css */ \"./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./src/styles/hightlight-js-style.css\");\n// Imports\n\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n___CSS_LOADER_EXPORT___.i(_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_styles_hightlight_js_style_css__WEBPACK_IMPORTED_MODULE_2__[\"default\"]);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"/**\\n * MUI Colors module\\n */\\n.segment {\\n border-left: 0.25rem solid #4CAF50;\\n}\\n.segment .code {\\n background-color: #E6FFED;\\n padding-left: 1rem;\\n}\\n.segment .line-number {\\n color: #9E9E9E;\\n float: left;\\n -webkit-touch-callout: none;\\n /* iOS Safari */\\n -webkit-user-select: none;\\n /* Safari */\\n /* Konqueror HTML */\\n -moz-user-select: none;\\n /* Firefox */\\n /* Internet Explorer/Edge */\\n user-select: none;\\n /* Non-prefixed version, currently supported by Chrome and Opera */\\n width: 2rem;\\n}\\n.segment .line-number [class^=hljs] {\\n color: #9E9E9E;\\n}\\n.segment .line-content {\\n padding-left: 2rem;\\n word-break: break-word;\\n}\\n.segment.untouched {\\n border-left: 0.25rem solid #BDBDBD;\\n height: 20px;\\n /* height of a single line of code */\\n position: relative;\\n}\\n.segment.untouched.active {\\n height: auto;\\n}\\n.segment.untouched.active .code {\\n background-color: #FFF;\\n}\\n.segment.untouched .closer {\\n cursor: pointer;\\n margin: 0.2rem 0 0 -0.45rem;\\n position: absolute;\\n}\\n.segment.untouched .closer.bottom {\\n margin: -1.05rem 0 0 -0.45rem;\\n}\\n.segment.untouched .closer .icon {\\n background-color: #FFF;\\n color: #9E9E9E;\\n width: 0.75em;\\n}\", \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://reposense/./src/components/c-segment.vue?./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use%5B1%5D!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use%5B2%5D!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -592,6 +592,17 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ }), +/***/ "./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-summary-charts.vue?vue&type=style&index=0&id=10337c16&lang=scss&scoped=true": +/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-summary-charts.vue?vue&type=style&index=0&id=10337c16&lang=scss&scoped=true ***! + \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ +/***/ ((module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"/**\\n * MUI Colors module\\n */\\n/* Tags in commits */\\n.tag[data-v-10337c16] {\\n font-size: 0.65rem;\\n font-weight: normal;\\n background: #757575;\\n border-radius: 5px;\\n color: #FFF;\\n display: inline-block;\\n margin: 0.2rem 0.2rem 0.2rem 0;\\n padding: 0 3px 0 3px;\\n}\\n.tag .fa-tags[data-v-10337c16] {\\n width: 0.65rem;\\n}\", \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://reposense/./src/components/c-summary-charts.vue?./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use%5B1%5D!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use%5B2%5D!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); + +/***/ }), + /***/ "./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-title.vue?vue&type=style&index=0&id=3880c38e&lang=scss&scoped=true": /*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-title.vue?vue&type=style&index=0&id=3880c38e&lang=scss&scoped=true ***! @@ -632,7 +643,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"/**\\n * MUI Colors module\\n */\\n/**\\n * MUI Colors module\\n */\\n/* Summary */\\n#summary .summary-status {\\n text-align: center;\\n}\\n#summary .icon-button {\\n color: #9E9E9E;\\n padding: 0 1.2px 0 1.2px;\\n text-decoration: none;\\n cursor: pointer;\\n}\\n#summary .broken-link .icon-button {\\n cursor: default;\\n}\\n#summary .summary-picker {\\n align-items: center;\\n display: flex;\\n flex-flow: row wrap;\\n justify-content: center;\\n margin-bottom: 2rem;\\n}\\n#summary .summary-picker__section {\\n align-items: inherit;\\n display: flex;\\n flex: 0 1 auto;\\n flex-flow: inherit;\\n justify-content: inherit;\\n}\\n#summary .summary-picker__checkboxes label {\\n margin-left: 0.5rem;\\n}\\n#summary .summary-picker__checkboxes span {\\n margin-left: 0.25rem;\\n}\\n#summary .summary-picker .mui-textfield,\\n#summary .summary-picker .mui-select {\\n font-size: 0.8rem;\\n font-weight: normal;\\n margin: 0.5rem;\\n padding-right: 10px;\\n}\\n#summary .summary-picker .mui-btn {\\n font-size: 0.8rem;\\n font-weight: normal;\\n background: transparent;\\n box-shadow: none;\\n color: #9E9E9E;\\n font-weight: bold;\\n left: -8px;\\n margin: 0;\\n padding: 0;\\n vertical-align: middle;\\n}\\n#summary .summary-picker .search_box {\\n align-items: center;\\n display: flex;\\n}\\n#summary .summary-picker input {\\n font-size: 0.8rem;\\n font-weight: normal;\\n padding-right: 10px;\\n}\\n#summary .summary-picker label {\\n font-size: 0.8rem;\\n font-weight: normal;\\n overflow-y: hidden;\\n text-align: left;\\n width: -moz-fit-content;\\n width: fit-content;\\n}\\n#summary .summary-picker input,\\n#summary .summary-picker select {\\n font-size: 0.8rem;\\n font-weight: normal;\\n}\\n#summary .summary-charts {\\n margin-bottom: 1.4rem;\\n}\\n#summary .summary-charts__title {\\n align-items: center;\\n display: flex;\\n font-weight: bold;\\n text-align: left;\\n}\\n#summary .summary-charts__title > * {\\n padding-right: 0.5rem;\\n}\\n#summary .summary-charts__title--index {\\n background: #000;\\n color: #FFF;\\n font-size: 0.9rem;\\n font-weight: normal;\\n overflow: hidden;\\n padding: 0.1em 0.25em;\\n vertical-align: middle;\\n}\\n#summary .summary-charts__title--groupname {\\n font-size: 0.9rem;\\n font-weight: normal;\\n padding: 0.5rem;\\n}\\n#summary .summary-charts__title--percentile {\\n font-size: 0.65rem;\\n font-weight: normal;\\n color: #9E9E9E;\\n margin-left: auto;\\n}\\n#summary .summary-charts__title--contribution {\\n font-size: 0.65rem;\\n font-weight: normal;\\n display: inline;\\n}\\n#summary .summary-charts__fileType--breakdown {\\n overflow-y: hidden;\\n}\\n#summary .summary-charts__fileType--breakdown__legend {\\n font-size: 0.8rem;\\n font-weight: normal;\\n display: inline;\\n float: left;\\n}\\n#summary .summary-chart {\\n display: inline-block;\\n margin-bottom: 1rem;\\n position: relative;\\n text-align: left;\\n width: 100%;\\n}\\n#summary .summary-chart__title {\\n align-items: center;\\n clear: left;\\n display: flex;\\n}\\n#summary .summary-chart__title > * {\\n padding-right: 0.5rem;\\n}\\n#summary .summary-chart__title--index {\\n margin-left: 3px;\\n}\\n#summary .summary-chart__title--repo {\\n font-weight: bold;\\n}\\n#summary .summary-chart__title--index::after {\\n content: \\\".\\\";\\n}\\n#summary .summary-chart__title--repo {\\n padding-right: 0.25rem;\\n}\\n#summary .summary-chart__title--contribution {\\n font-size: 0.65rem;\\n font-weight: normal;\\n}\\n#summary .summary-chart__title--percentile {\\n font-size: 0.65rem;\\n font-weight: normal;\\n color: #9E9E9E;\\n margin-left: auto;\\n padding-right: 0;\\n}\\n#summary .summary-chart__ramp {\\n position: relative;\\n}\\n#summary .summary-chart__ramp .overlay {\\n height: 100%;\\n position: absolute;\\n top: 0;\\n}\\n#summary .summary-chart__ramp .overlay.show {\\n background-color: rgba(255, 255, 255, 0.5);\\n border: 1px dashed #000;\\n}\\n#summary .summary-chart__ramp .overlay.edge {\\n border-right: 1px dashed #000;\\n}\\n#summary .active-icon {\\n background-color: #4CAF50;\\n border-radius: 2px;\\n color: #FFF;\\n}\\n#summary .active-background {\\n background-color: #FFF59D;\\n}\\n.error-message-box__show-more-container {\\n display: flex;\\n justify-content: flex-end;\\n margin-top: 0.3rem;\\n}\", \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://reposense/./src/views/c-summary.vue?./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use%5B1%5D!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use%5B2%5D!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"/**\\n * MUI Colors module\\n */\\n/**\\n * MUI Colors module\\n */\\n/* Summary */\\n#summary .summary-status {\\n text-align: center;\\n}\\n#summary .icon-button {\\n color: #9E9E9E;\\n padding: 0 1.2px 0 1.2px;\\n text-decoration: none;\\n cursor: pointer;\\n}\\n#summary .broken-link .icon-button {\\n cursor: default;\\n}\\n#summary .summary-picker {\\n align-items: center;\\n display: flex;\\n flex-flow: row wrap;\\n justify-content: center;\\n margin-bottom: 2rem;\\n}\\n#summary .summary-picker__section {\\n align-items: inherit;\\n display: flex;\\n flex: 0 1 auto;\\n flex-flow: inherit;\\n justify-content: inherit;\\n}\\n#summary .summary-picker__checkboxes label {\\n margin-left: 0.5rem;\\n}\\n#summary .summary-picker__checkboxes span {\\n margin-left: 0.25rem;\\n}\\n#summary .summary-picker .mui-textfield,\\n#summary .summary-picker .mui-select {\\n font-size: 0.8rem;\\n font-weight: normal;\\n margin: 0.5rem;\\n padding-right: 10px;\\n}\\n#summary .summary-picker .mui-btn {\\n font-size: 0.8rem;\\n font-weight: normal;\\n background: transparent;\\n box-shadow: none;\\n color: #9E9E9E;\\n font-weight: bold;\\n left: -8px;\\n margin: 0;\\n padding: 0;\\n vertical-align: middle;\\n}\\n#summary .summary-picker .search_box {\\n align-items: center;\\n display: flex;\\n}\\n#summary .summary-picker input {\\n font-size: 0.8rem;\\n font-weight: normal;\\n padding-right: 10px;\\n}\\n#summary .summary-picker label {\\n font-size: 0.8rem;\\n font-weight: normal;\\n overflow-y: hidden;\\n text-align: left;\\n width: -moz-fit-content;\\n width: fit-content;\\n}\\n#summary .summary-picker input,\\n#summary .summary-picker select {\\n font-size: 0.8rem;\\n font-weight: normal;\\n}\\n#summary .summary-charts {\\n margin-bottom: 1.4rem;\\n}\\n#summary .summary-charts__title {\\n align-items: center;\\n display: flex;\\n flex-wrap: wrap;\\n font-weight: bold;\\n text-align: left;\\n}\\n#summary .summary-charts__title > * {\\n padding-right: 0.5rem;\\n}\\n#summary .summary-charts__title--index {\\n background: #000;\\n color: #FFF;\\n font-size: 0.9rem;\\n font-weight: normal;\\n overflow: hidden;\\n padding: 0.1em 0.25em;\\n vertical-align: middle;\\n}\\n#summary .summary-charts__title--groupname {\\n font-size: 0.9rem;\\n font-weight: normal;\\n padding: 0.5rem;\\n}\\n#summary .summary-charts__title--percentile {\\n font-size: 0.65rem;\\n font-weight: normal;\\n color: #9E9E9E;\\n margin-left: auto;\\n}\\n#summary .summary-charts__title--contribution {\\n font-size: 0.65rem;\\n font-weight: normal;\\n display: inline;\\n}\\n#summary .summary-charts__title--tags {\\n margin: 0.25rem 0;\\n}\\n#summary .summary-charts__fileType--breakdown {\\n overflow-y: hidden;\\n}\\n#summary .summary-charts__fileType--breakdown__legend {\\n font-size: 0.8rem;\\n font-weight: normal;\\n display: inline;\\n float: left;\\n}\\n#summary .summary-chart {\\n display: inline-block;\\n margin-bottom: 1rem;\\n position: relative;\\n text-align: left;\\n width: 100%;\\n}\\n#summary .summary-chart__title {\\n align-items: center;\\n clear: left;\\n display: flex;\\n}\\n#summary .summary-chart__title > * {\\n padding-right: 0.5rem;\\n}\\n#summary .summary-chart__title--index {\\n margin-left: 3px;\\n}\\n#summary .summary-chart__title--repo {\\n font-weight: bold;\\n}\\n#summary .summary-chart__title--index::after {\\n content: \\\".\\\";\\n}\\n#summary .summary-chart__title--repo {\\n padding-right: 0.25rem;\\n}\\n#summary .summary-chart__title--contribution {\\n font-size: 0.65rem;\\n font-weight: normal;\\n}\\n#summary .summary-chart__title--percentile {\\n font-size: 0.65rem;\\n font-weight: normal;\\n color: #9E9E9E;\\n margin-left: auto;\\n padding-right: 0;\\n}\\n#summary .summary-chart__ramp {\\n position: relative;\\n}\\n#summary .summary-chart__ramp .overlay {\\n height: 100%;\\n position: absolute;\\n top: 0;\\n}\\n#summary .summary-chart__ramp .overlay.show {\\n background-color: rgba(255, 255, 255, 0.5);\\n border: 1px dashed #000;\\n}\\n#summary .summary-chart__ramp .overlay.edge {\\n border-right: 1px dashed #000;\\n}\\n#summary .active-icon {\\n background-color: #4CAF50;\\n border-radius: 2px;\\n color: #FFF;\\n}\\n#summary .active-background {\\n background-color: #FFF59D;\\n}\\n.error-message-box__show-more-container {\\n display: flex;\\n justify-content: flex-end;\\n margin-top: 0.3rem;\\n}\", \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://reposense/./src/views/c-summary.vue?./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use%5B1%5D!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use%5B2%5D!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -643,7 +654,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"/**\\n * MUI Colors module\\n */\\n#tab-zoom .zoom__title--granularity[data-v-639b7b17] {\\n font-size: 0.65rem;\\n font-weight: normal;\\n margin-top: 0.5rem;\\n}\\n#tab-zoom .zoom__title--tags[data-v-639b7b17] {\\n margin: 0.25rem 0 0.25rem 0;\\n}\\n#tab-zoom .zoom__title--tags .tag[data-v-639b7b17] {\\n cursor: pointer;\\n}\\n#tab-zoom .zoom__toggle-commit-message-body[data-v-639b7b17] {\\n padding-top: 10px;\\n}\\n#tab-zoom .zoom__day[data-v-639b7b17], #tab-zoom .zoom__title[data-v-639b7b17] {\\n font-size: 0.8rem;\\n font-weight: normal;\\n /* Tags in commits */\\n}\\n#tab-zoom .zoom__day h3[data-v-639b7b17], #tab-zoom .zoom__title h3[data-v-639b7b17] {\\n font-size: 1.2rem;\\n font-weight: bold;\\n}\\n#tab-zoom .zoom__day .tag[data-v-639b7b17], #tab-zoom .zoom__title .tag[data-v-639b7b17] {\\n font-size: 0.65rem;\\n font-weight: normal;\\n background: #757575;\\n border-radius: 5px;\\n color: #FFF;\\n display: inline-block;\\n margin: 0.2rem 0.2rem 0.2rem 0;\\n padding: 0 3px 0 3px;\\n}\\n#tab-zoom .zoom__day .tag .fa-tags[data-v-639b7b17], #tab-zoom .zoom__title .tag .fa-tags[data-v-639b7b17] {\\n width: 0.65rem;\\n}\", \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://reposense/./src/views/c-zoom.vue?./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use%5B1%5D!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use%5B2%5D!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"/**\\n * MUI Colors module\\n */\\n/**\\n * MUI Colors module\\n */\\n/* Tags in commits */\\n.tag[data-v-639b7b17] {\\n font-size: 0.65rem;\\n font-weight: normal;\\n background: #757575;\\n border-radius: 5px;\\n color: #FFF;\\n display: inline-block;\\n margin: 0.2rem 0.2rem 0.2rem 0;\\n padding: 0 3px 0 3px;\\n}\\n.tag .fa-tags[data-v-639b7b17] {\\n width: 0.65rem;\\n}\\n#tab-zoom .zoom__title--granularity[data-v-639b7b17] {\\n font-size: 0.65rem;\\n font-weight: normal;\\n margin-top: 0.5rem;\\n}\\n#tab-zoom .zoom__title--tags[data-v-639b7b17] {\\n margin: 0.25rem 0 0.25rem 0;\\n}\\n#tab-zoom .zoom__title--tags .tag[data-v-639b7b17] {\\n cursor: pointer;\\n}\\n#tab-zoom .zoom__toggle-commit-message-body[data-v-639b7b17] {\\n padding-top: 10px;\\n}\\n#tab-zoom .zoom__day[data-v-639b7b17], #tab-zoom .zoom__title[data-v-639b7b17] {\\n font-size: 0.8rem;\\n font-weight: normal;\\n}\\n#tab-zoom .zoom__day h3[data-v-639b7b17], #tab-zoom .zoom__title h3[data-v-639b7b17] {\\n font-size: 1.2rem;\\n font-weight: bold;\\n}\", \"\"]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://reposense/./src/views/c-zoom.vue?./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use%5B1%5D!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use%5B2%5D!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D"); /***/ }), @@ -731,7 +742,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _c_segment_vue_vue_type_template_id_02b52b69_scoped_true_ts_true_lang_pug__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./c-segment.vue?vue&type=template&id=02b52b69&scoped=true&ts=true&lang=pug */ \"./src/components/c-segment.vue?vue&type=template&id=02b52b69&scoped=true&ts=true&lang=pug\");\n/* harmony import */ var _c_segment_vue_vue_type_script_lang_ts__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./c-segment.vue?vue&type=script&lang=ts */ \"./src/components/c-segment.vue?vue&type=script&lang=ts\");\n/* harmony import */ var _c_segment_vue_vue_type_style_index_0_id_02b52b69_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./c-segment.vue?vue&type=style&index=0&id=02b52b69&lang=scss&scoped=true */ \"./src/components/c-segment.vue?vue&type=style&index=0&id=02b52b69&lang=scss&scoped=true\");\n/* harmony import */ var _node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../node_modules/vue-loader/dist/exportHelper.js */ \"./node_modules/vue-loader/dist/exportHelper.js\");\n\n\n\n\n;\n\n\nconst __exports__ = /*#__PURE__*/(0,_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_c_segment_vue_vue_type_script_lang_ts__WEBPACK_IMPORTED_MODULE_1__[\"default\"], [['render',_c_segment_vue_vue_type_template_id_02b52b69_scoped_true_ts_true_lang_pug__WEBPACK_IMPORTED_MODULE_0__.render],['__scopeId',\"data-v-02b52b69\"],['__file',\"src/components/c-segment.vue\"]])\n/* hot reload */\nif (false) {}\n\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (__exports__);\n\n//# sourceURL=webpack://reposense/./src/components/c-segment.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _c_segment_vue_vue_type_template_id_02b52b69_ts_true_lang_pug__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./c-segment.vue?vue&type=template&id=02b52b69&ts=true&lang=pug */ \"./src/components/c-segment.vue?vue&type=template&id=02b52b69&ts=true&lang=pug\");\n/* harmony import */ var _c_segment_vue_vue_type_script_lang_ts__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./c-segment.vue?vue&type=script&lang=ts */ \"./src/components/c-segment.vue?vue&type=script&lang=ts\");\n/* harmony import */ var _c_segment_vue_vue_type_style_index_0_id_02b52b69_lang_scss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./c-segment.vue?vue&type=style&index=0&id=02b52b69&lang=scss */ \"./src/components/c-segment.vue?vue&type=style&index=0&id=02b52b69&lang=scss\");\n/* harmony import */ var _node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../node_modules/vue-loader/dist/exportHelper.js */ \"./node_modules/vue-loader/dist/exportHelper.js\");\n\n\n\n\n;\n\n\nconst __exports__ = /*#__PURE__*/(0,_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_c_segment_vue_vue_type_script_lang_ts__WEBPACK_IMPORTED_MODULE_1__[\"default\"], [['render',_c_segment_vue_vue_type_template_id_02b52b69_ts_true_lang_pug__WEBPACK_IMPORTED_MODULE_0__.render],['__file',\"src/components/c-segment.vue\"]])\n/* hot reload */\nif (false) {}\n\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (__exports__);\n\n//# sourceURL=webpack://reposense/./src/components/c-segment.vue?"); /***/ }), @@ -753,7 +764,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _c_summary_charts_vue_vue_type_template_id_10337c16_ts_true_lang_pug__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./c-summary-charts.vue?vue&type=template&id=10337c16&ts=true&lang=pug */ \"./src/components/c-summary-charts.vue?vue&type=template&id=10337c16&ts=true&lang=pug\");\n/* harmony import */ var _c_summary_charts_vue_vue_type_script_lang_ts__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./c-summary-charts.vue?vue&type=script&lang=ts */ \"./src/components/c-summary-charts.vue?vue&type=script&lang=ts\");\n/* harmony import */ var _node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../node_modules/vue-loader/dist/exportHelper.js */ \"./node_modules/vue-loader/dist/exportHelper.js\");\n\n\n\n\n;\nconst __exports__ = /*#__PURE__*/(0,_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_c_summary_charts_vue_vue_type_script_lang_ts__WEBPACK_IMPORTED_MODULE_1__[\"default\"], [['render',_c_summary_charts_vue_vue_type_template_id_10337c16_ts_true_lang_pug__WEBPACK_IMPORTED_MODULE_0__.render],['__file',\"src/components/c-summary-charts.vue\"]])\n/* hot reload */\nif (false) {}\n\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (__exports__);\n\n//# sourceURL=webpack://reposense/./src/components/c-summary-charts.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _c_summary_charts_vue_vue_type_template_id_10337c16_scoped_true_ts_true_lang_pug__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./c-summary-charts.vue?vue&type=template&id=10337c16&scoped=true&ts=true&lang=pug */ \"./src/components/c-summary-charts.vue?vue&type=template&id=10337c16&scoped=true&ts=true&lang=pug\");\n/* harmony import */ var _c_summary_charts_vue_vue_type_script_lang_ts__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./c-summary-charts.vue?vue&type=script&lang=ts */ \"./src/components/c-summary-charts.vue?vue&type=script&lang=ts\");\n/* harmony import */ var _c_summary_charts_vue_vue_type_style_index_0_id_10337c16_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./c-summary-charts.vue?vue&type=style&index=0&id=10337c16&lang=scss&scoped=true */ \"./src/components/c-summary-charts.vue?vue&type=style&index=0&id=10337c16&lang=scss&scoped=true\");\n/* harmony import */ var _node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../node_modules/vue-loader/dist/exportHelper.js */ \"./node_modules/vue-loader/dist/exportHelper.js\");\n\n\n\n\n;\n\n\nconst __exports__ = /*#__PURE__*/(0,_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_c_summary_charts_vue_vue_type_script_lang_ts__WEBPACK_IMPORTED_MODULE_1__[\"default\"], [['render',_c_summary_charts_vue_vue_type_template_id_10337c16_scoped_true_ts_true_lang_pug__WEBPACK_IMPORTED_MODULE_0__.render],['__scopeId',\"data-v-10337c16\"],['__file',\"src/components/c-summary-charts.vue\"]])\n/* hot reload */\nif (false) {}\n\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (__exports__);\n\n//# sourceURL=webpack://reposense/./src/components/c-summary-charts.vue?"); /***/ }), @@ -1054,14 +1065,14 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ }), -/***/ "./src/components/c-segment.vue?vue&type=template&id=02b52b69&scoped=true&ts=true&lang=pug": -/*!*************************************************************************************************!*\ - !*** ./src/components/c-segment.vue?vue&type=template&id=02b52b69&scoped=true&ts=true&lang=pug ***! - \*************************************************************************************************/ +/***/ "./src/components/c-segment.vue?vue&type=template&id=02b52b69&ts=true&lang=pug": +/*!*************************************************************************************!*\ + !*** ./src/components/c-segment.vue?vue&type=template&id=02b52b69&ts=true&lang=pug ***! + \*************************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": () => (/* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_41_use_1_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_4_node_modules_pug_plain_loader_index_js_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_segment_vue_vue_type_template_id_02b52b69_scoped_true_ts_true_lang_pug__WEBPACK_IMPORTED_MODULE_0__.render)\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_41_use_1_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_4_node_modules_pug_plain_loader_index_js_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_segment_vue_vue_type_template_id_02b52b69_scoped_true_ts_true_lang_pug__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[1]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!../../node_modules/pug-plain-loader/index.js!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./c-segment.vue?vue&type=template&id=02b52b69&scoped=true&ts=true&lang=pug */ \"./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-segment.vue?vue&type=template&id=02b52b69&scoped=true&ts=true&lang=pug\");\n\n\n//# sourceURL=webpack://reposense/./src/components/c-segment.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": () => (/* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_41_use_1_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_4_node_modules_pug_plain_loader_index_js_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_segment_vue_vue_type_template_id_02b52b69_ts_true_lang_pug__WEBPACK_IMPORTED_MODULE_0__.render)\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_41_use_1_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_4_node_modules_pug_plain_loader_index_js_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_segment_vue_vue_type_template_id_02b52b69_ts_true_lang_pug__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[1]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!../../node_modules/pug-plain-loader/index.js!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./c-segment.vue?vue&type=template&id=02b52b69&ts=true&lang=pug */ \"./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-segment.vue?vue&type=template&id=02b52b69&ts=true&lang=pug\");\n\n\n//# sourceURL=webpack://reposense/./src/components/c-segment.vue?"); /***/ }), @@ -1076,14 +1087,14 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ }), -/***/ "./src/components/c-summary-charts.vue?vue&type=template&id=10337c16&ts=true&lang=pug": -/*!********************************************************************************************!*\ - !*** ./src/components/c-summary-charts.vue?vue&type=template&id=10337c16&ts=true&lang=pug ***! - \********************************************************************************************/ +/***/ "./src/components/c-summary-charts.vue?vue&type=template&id=10337c16&scoped=true&ts=true&lang=pug": +/*!********************************************************************************************************!*\ + !*** ./src/components/c-summary-charts.vue?vue&type=template&id=10337c16&scoped=true&ts=true&lang=pug ***! + \********************************************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": () => (/* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_41_use_1_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_4_node_modules_pug_plain_loader_index_js_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_summary_charts_vue_vue_type_template_id_10337c16_ts_true_lang_pug__WEBPACK_IMPORTED_MODULE_0__.render)\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_41_use_1_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_4_node_modules_pug_plain_loader_index_js_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_summary_charts_vue_vue_type_template_id_10337c16_ts_true_lang_pug__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[1]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!../../node_modules/pug-plain-loader/index.js!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./c-summary-charts.vue?vue&type=template&id=10337c16&ts=true&lang=pug */ \"./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-summary-charts.vue?vue&type=template&id=10337c16&ts=true&lang=pug\");\n\n\n//# sourceURL=webpack://reposense/./src/components/c-summary-charts.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"render\": () => (/* reexport safe */ _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_41_use_1_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_4_node_modules_pug_plain_loader_index_js_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_summary_charts_vue_vue_type_template_id_10337c16_scoped_true_ts_true_lang_pug__WEBPACK_IMPORTED_MODULE_0__.render)\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_clonedRuleSet_41_use_1_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_4_node_modules_pug_plain_loader_index_js_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_summary_charts_vue_vue_type_template_id_10337c16_scoped_true_ts_true_lang_pug__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[1]!../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!../../node_modules/pug-plain-loader/index.js!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./c-summary-charts.vue?vue&type=template&id=10337c16&scoped=true&ts=true&lang=pug */ \"./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/pug-plain-loader/index.js!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-summary-charts.vue?vue&type=template&id=10337c16&scoped=true&ts=true&lang=pug\");\n\n\n//# sourceURL=webpack://reposense/./src/components/c-summary-charts.vue?"); /***/ }), @@ -1197,14 +1208,14 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _nod /***/ }), -/***/ "./src/components/c-segment.vue?vue&type=style&index=0&id=02b52b69&lang=scss&scoped=true": -/*!***********************************************************************************************!*\ - !*** ./src/components/c-segment.vue?vue&type=style&index=0&id=02b52b69&lang=scss&scoped=true ***! - \***********************************************************************************************/ +/***/ "./src/components/c-segment.vue?vue&type=style&index=0&id=02b52b69&lang=scss": +/*!***********************************************************************************!*\ + !*** ./src/components/c-segment.vue?vue&type=style&index=0&id=02b52b69&lang=scss ***! + \***********************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_segment_vue_vue_type_style_index_0_id_02b52b69_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!../../node_modules/vue-loader/dist/stylePostLoader.js!../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./c-segment.vue?vue&type=style&index=0&id=02b52b69&lang=scss&scoped=true */ \"./node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-segment.vue?vue&type=style&index=0&id=02b52b69&lang=scss&scoped=true\");\n/* harmony import */ var _node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_segment_vue_vue_type_style_index_0_id_02b52b69_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_segment_vue_vue_type_style_index_0_id_02b52b69_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};\n/* harmony reexport (unknown) */ for(const __WEBPACK_IMPORT_KEY__ in _node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_segment_vue_vue_type_style_index_0_id_02b52b69_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== \"default\") __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = () => _node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_segment_vue_vue_type_style_index_0_id_02b52b69_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__[__WEBPACK_IMPORT_KEY__]\n/* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);\n\n\n//# sourceURL=webpack://reposense/./src/components/c-segment.vue?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_segment_vue_vue_type_style_index_0_id_02b52b69_lang_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!../../node_modules/vue-loader/dist/stylePostLoader.js!../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./c-segment.vue?vue&type=style&index=0&id=02b52b69&lang=scss */ \"./node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-segment.vue?vue&type=style&index=0&id=02b52b69&lang=scss\");\n/* harmony import */ var _node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_segment_vue_vue_type_style_index_0_id_02b52b69_lang_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_segment_vue_vue_type_style_index_0_id_02b52b69_lang_scss__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};\n/* harmony reexport (unknown) */ for(const __WEBPACK_IMPORT_KEY__ in _node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_segment_vue_vue_type_style_index_0_id_02b52b69_lang_scss__WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== \"default\") __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = () => _node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_segment_vue_vue_type_style_index_0_id_02b52b69_lang_scss__WEBPACK_IMPORTED_MODULE_0__[__WEBPACK_IMPORT_KEY__]\n/* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);\n\n\n//# sourceURL=webpack://reposense/./src/components/c-segment.vue?"); /***/ }), @@ -1219,6 +1230,17 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _nod /***/ }), +/***/ "./src/components/c-summary-charts.vue?vue&type=style&index=0&id=10337c16&lang=scss&scoped=true": +/*!******************************************************************************************************!*\ + !*** ./src/components/c-summary-charts.vue?vue&type=style&index=0&id=10337c16&lang=scss&scoped=true ***! + \******************************************************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_summary_charts_vue_vue_type_style_index_0_id_10337c16_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!../../node_modules/vue-loader/dist/stylePostLoader.js!../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./c-summary-charts.vue?vue&type=style&index=0&id=10337c16&lang=scss&scoped=true */ \"./node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/c-summary-charts.vue?vue&type=style&index=0&id=10337c16&lang=scss&scoped=true\");\n/* harmony import */ var _node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_summary_charts_vue_vue_type_style_index_0_id_10337c16_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_summary_charts_vue_vue_type_style_index_0_id_10337c16_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};\n/* harmony reexport (unknown) */ for(const __WEBPACK_IMPORT_KEY__ in _node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_summary_charts_vue_vue_type_style_index_0_id_10337c16_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== \"default\") __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = () => _node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_c_summary_charts_vue_vue_type_style_index_0_id_10337c16_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__[__WEBPACK_IMPORT_KEY__]\n/* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);\n\n\n//# sourceURL=webpack://reposense/./src/components/c-summary-charts.vue?"); + +/***/ }), + /***/ "./src/components/c-title.vue?vue&type=style&index=0&id=3880c38e&lang=scss&scoped=true": /*!*********************************************************************************************!*\ !*** ./src/components/c-title.vue?vue&type=style&index=0&id=3880c38e&lang=scss&scoped=true ***! @@ -1314,13 +1336,13 @@ eval("// style-loader: Adds some css to the DOM by adding a